From 5ebc6955461899807fc36e27231427648bd32292 Mon Sep 17 00:00:00 2001 From: odino Date: Fri, 15 Apr 2022 13:45:13 +0400 Subject: [PATCH] updated docs --- docs/src/.vuepress/dist/404.html | 6 +- docs/src/.vuepress/dist/abs.wasm | Bin 5516556 -> 5525290 bytes ...les.af163b1b.css => 0.styles.05bbccd7.css} | 2 +- .../js/{10.00091426.js => 10.cc70ae4f.js} | 2 +- .../.vuepress/dist/assets/js/100.b26fa278.js | 1 + .../js/{100.2e8512a4.js => 101.1648642d.js} | 2 +- .../js/{101.f57cdfdd.js => 102.d423c75b.js} | 2 +- .../js/{102.dea937d2.js => 103.d4195020.js} | 2 +- .../js/{103.dd653b9b.js => 104.9860de76.js} | 2 +- .../js/{104.e7fceeb6.js => 105.e620df2f.js} | 2 +- .../js/{105.bd27587a.js => 106.95350ada.js} | 2 +- .../.vuepress/dist/assets/js/13.36679573.js | 1 - .../.vuepress/dist/assets/js/13.bd56ae9e.js | 1 + .../.vuepress/dist/assets/js/18.32643cf1.js | 1 + .../.vuepress/dist/assets/js/18.c77c84c2.js | 1 - .../.vuepress/dist/assets/js/20.762823c2.js | 1 - .../.vuepress/dist/assets/js/20.a6bbf53c.js | 1 + .../.vuepress/dist/assets/js/21.b7195a62.js | 1 - .../.vuepress/dist/assets/js/21.fe78dd19.js | 1 + .../.vuepress/dist/assets/js/26.c43cdf9f.js | 1 + .../js/{26.73e719f0.js => 27.c2abeff0.js} | 2 +- .../.vuepress/dist/assets/js/28.84a9a64c.js | 1 - .../js/{27.67e1572b.js => 28.a2d4d54f.js} | 2 +- .../.vuepress/dist/assets/js/29.53f637db.js | 1 + .../js/{3.6f89387f.js => 3.f3eb5b80.js} | 2 +- .../js/{29.f6a4e822.js => 30.01e2071b.js} | 2 +- .../js/{30.9bb98cd5.js => 31.5ad90f2b.js} | 2 +- .../js/{31.6bcaa134.js => 32.05eec4c5.js} | 2 +- .../.vuepress/dist/assets/js/33.227bf7d4.js | 1 - .../js/{32.13dbfef4.js => 33.da24515a.js} | 2 +- .../.vuepress/dist/assets/js/34.1c8ddfde.js | 1 + .../js/{34.25bd9c03.js => 35.b6d66435.js} | 2 +- .../js/{35.ad55ea84.js => 36.1c5d25fb.js} | 2 +- .../js/{36.70888b6c.js => 37.e2bc0515.js} | 2 +- .../js/{37.47473244.js => 38.3762cc6b.js} | 2 +- .../.vuepress/dist/assets/js/38.be2fc22a.js | 1 - .../.vuepress/dist/assets/js/39.972809d0.js | 1 + .../js/{39.90a73f07.js => 40.624e2309.js} | 2 +- .../js/{40.8adf4179.js => 41.1bafbf2f.js} | 2 +- .../js/{41.877b1d87.js => 42.32bcbdf0.js} | 2 +- .../js/{42.4a01b487.js => 43.d234e5b4.js} | 2 +- .../js/{43.485b553f.js => 44.851d54d6.js} | 2 +- .../js/{44.bee8c0ac.js => 45.489bbb74.js} | 2 +- .../js/{45.5a96c426.js => 46.8d20f0df.js} | 2 +- .../js/{46.3f95d133.js => 47.5b9c6a01.js} | 2 +- .../js/{47.0cdb1e5d.js => 48.55905f59.js} | 2 +- .../js/{48.03e739e7.js => 49.74e156a3.js} | 2 +- .../js/{5.502fc703.js => 5.a310200e.js} | 2 +- .../js/{49.2d752ee1.js => 50.f34e624c.js} | 2 +- .../js/{50.23d71ab6.js => 51.5be133f8.js} | 2 +- .../js/{51.c3e699e7.js => 52.371b43e0.js} | 2 +- .../js/{52.03a3e296.js => 53.e305cbde.js} | 2 +- .../js/{53.645ee022.js => 54.3d618e11.js} | 2 +- .../js/{54.dbf6d0eb.js => 55.2555359d.js} | 2 +- .../js/{55.517ded52.js => 56.4fd62374.js} | 2 +- .../js/{56.260ce17c.js => 57.6a92da6f.js} | 2 +- .../js/{57.697d63a8.js => 58.e9795bf7.js} | 2 +- .../js/{58.71546e18.js => 59.4ee743e7.js} | 2 +- .../js/{6.1eaa0db0.js => 6.9b5d321d.js} | 2 +- .../js/{59.448f9f74.js => 60.e6d06864.js} | 2 +- .../js/{60.cc91f4bf.js => 61.09466a50.js} | 2 +- .../js/{61.4715a5c4.js => 62.51975b6b.js} | 2 +- .../js/{62.27066fd7.js => 63.0a5e1022.js} | 2 +- .../js/{63.d80fb30d.js => 64.1f6ce620.js} | 2 +- .../js/{64.f3fdcd50.js => 65.36e6c3b3.js} | 2 +- .../js/{65.ae7396ad.js => 66.a83c3c1e.js} | 2 +- .../js/{66.47bd296d.js => 67.b32ba88c.js} | 2 +- .../js/{67.65377661.js => 68.a33b0caf.js} | 2 +- .../js/{68.a52d49a3.js => 69.ed11a426.js} | 2 +- .../js/{7.0f6ae038.js => 7.71b7ebd7.js} | 2 +- .../js/{69.ebe70287.js => 70.e8bb95ac.js} | 2 +- .../js/{70.f4761b67.js => 71.7638a77d.js} | 2 +- .../js/{71.b1a5ed72.js => 72.e93eb3c0.js} | 2 +- .../js/{72.6374e4b7.js => 73.6397c164.js} | 2 +- .../js/{73.ab425ef3.js => 74.c914b2f2.js} | 2 +- .../js/{74.9d4a5b8b.js => 75.16cfc054.js} | 2 +- .../js/{75.5d3a139b.js => 76.6a920f4c.js} | 2 +- .../js/{76.c3a1d352.js => 77.27937e13.js} | 2 +- .../js/{77.1e20cc10.js => 78.737ec13d.js} | 2 +- .../js/{78.b3375bbd.js => 79.388a8446.js} | 2 +- .../js/{79.e30ee574.js => 80.1dec84f2.js} | 2 +- .../js/{80.c9b2bc6f.js => 81.b62a70e6.js} | 2 +- .../js/{81.41eac1be.js => 82.ba6bfbcb.js} | 2 +- .../js/{82.2044b434.js => 83.fdf32268.js} | 2 +- .../js/{83.e9eb873f.js => 84.5aa11083.js} | 2 +- .../js/{84.b501de85.js => 85.ed836419.js} | 2 +- .../js/{85.c4e6052b.js => 86.6e6c9232.js} | 2 +- .../js/{86.738980af.js => 87.bfe73996.js} | 2 +- .../js/{87.cb11fecb.js => 88.32bc25e1.js} | 2 +- .../js/{88.91b8b30b.js => 89.9280160b.js} | 2 +- .../js/{89.b277329c.js => 90.d6e97ecf.js} | 2 +- .../js/{90.82770f13.js => 91.a90d8bb7.js} | 2 +- .../js/{91.d2bf60c2.js => 92.906efbb2.js} | 2 +- .../js/{92.9ff04b54.js => 93.c87070cc.js} | 2 +- .../js/{93.168a3f48.js => 94.e7eb9f7b.js} | 2 +- .../js/{94.62090088.js => 95.c27f97f4.js} | 2 +- .../js/{95.7669b444.js => 96.d6fda379.js} | 2 +- .../js/{96.10318e4a.js => 97.0e9f507e.js} | 2 +- .../js/{97.4ac3ee32.js => 98.812087ee.js} | 2 +- .../.vuepress/dist/assets/js/99.11b04e35.js | 1 - .../js/{98.4982871f.js => 99.cb09c45e.js} | 2 +- .../js/{app.99498f70.js => app.707cd6e6.js} | 4 +- docs/src/.vuepress/dist/docs/index.html | 8 +- docs/src/.vuepress/dist/index.html | 6 +- .../how-to-run-abs-code/index.html | 6 +- .../why-another-scripting-language/index.html | 8 +- docs/src/.vuepress/dist/misc/3pl/index.html | 16 ++-- .../dist/misc/configuring-the-repl/index.html | 8 +- .../.vuepress/dist/misc/credits/index.html | 8 +- docs/src/.vuepress/dist/misc/error/index.html | 8 +- .../.vuepress/dist/misc/runtime/index.html | 8 +- .../dist/misc/technical-details/index.html | 18 ++-- .../misc/upgrade-from-abs-1-to-2/index.html | 8 +- docs/src/.vuepress/dist/playground/index.html | 6 +- docs/src/.vuepress/dist/quickstart.html | 6 +- docs/src/.vuepress/dist/stdlib/cli/index.html | 10 +-- .../.vuepress/dist/stdlib/intro/index.html | 10 +-- .../.vuepress/dist/stdlib/runtime/index.html | 8 +- .../src/.vuepress/dist/stdlib/util/index.html | 8 +- .../dist/syntax/assignments/index.html | 8 +- .../.vuepress/dist/syntax/comments/index.html | 12 +-- .../.vuepress/dist/syntax/defer/index.html | 80 ++++++++++++++++++ docs/src/.vuepress/dist/syntax/for/index.html | 12 +-- docs/src/.vuepress/dist/syntax/if/index.html | 8 +- .../dist/syntax/operators/index.html | 22 ++--- .../.vuepress/dist/syntax/return/index.html | 8 +- .../dist/syntax/system-commands/index.html | 8 +- .../.vuepress/dist/syntax/while/index.html | 8 +- .../src/.vuepress/dist/types/array/index.html | 14 +-- .../dist/types/builtin-function/index.html | 10 +-- .../.vuepress/dist/types/decorator/index.html | 8 +- .../.vuepress/dist/types/function/index.html | 8 +- docs/src/.vuepress/dist/types/hash/index.html | 8 +- .../.vuepress/dist/types/number/index.html | 8 +- .../.vuepress/dist/types/string/index.html | 20 ++--- docs/src/.vuepress/public/abs.wasm | Bin 5525919 -> 5525290 bytes evaluator/stdlib.go | 6 +- 137 files changed, 335 insertions(+), 254 deletions(-) rename docs/src/.vuepress/dist/assets/css/{0.styles.af163b1b.css => 0.styles.05bbccd7.css} (99%) rename docs/src/.vuepress/dist/assets/js/{10.00091426.js => 10.cc70ae4f.js} (98%) create mode 100644 docs/src/.vuepress/dist/assets/js/100.b26fa278.js rename docs/src/.vuepress/dist/assets/js/{100.2e8512a4.js => 101.1648642d.js} (96%) rename docs/src/.vuepress/dist/assets/js/{101.f57cdfdd.js => 102.d423c75b.js} (98%) rename docs/src/.vuepress/dist/assets/js/{102.dea937d2.js => 103.d4195020.js} (99%) rename docs/src/.vuepress/dist/assets/js/{103.dd653b9b.js => 104.9860de76.js} (99%) rename docs/src/.vuepress/dist/assets/js/{104.e7fceeb6.js => 105.e620df2f.js} (99%) rename docs/src/.vuepress/dist/assets/js/{105.bd27587a.js => 106.95350ada.js} (99%) delete mode 100644 docs/src/.vuepress/dist/assets/js/13.36679573.js create mode 100644 docs/src/.vuepress/dist/assets/js/13.bd56ae9e.js create mode 100644 docs/src/.vuepress/dist/assets/js/18.32643cf1.js delete mode 100644 docs/src/.vuepress/dist/assets/js/18.c77c84c2.js delete mode 100644 docs/src/.vuepress/dist/assets/js/20.762823c2.js create mode 100644 docs/src/.vuepress/dist/assets/js/20.a6bbf53c.js delete mode 100644 docs/src/.vuepress/dist/assets/js/21.b7195a62.js create mode 100644 docs/src/.vuepress/dist/assets/js/21.fe78dd19.js create mode 100644 docs/src/.vuepress/dist/assets/js/26.c43cdf9f.js rename docs/src/.vuepress/dist/assets/js/{26.73e719f0.js => 27.c2abeff0.js} (70%) delete mode 100644 docs/src/.vuepress/dist/assets/js/28.84a9a64c.js rename docs/src/.vuepress/dist/assets/js/{27.67e1572b.js => 28.a2d4d54f.js} (98%) create mode 100644 docs/src/.vuepress/dist/assets/js/29.53f637db.js rename docs/src/.vuepress/dist/assets/js/{3.6f89387f.js => 3.f3eb5b80.js} (68%) rename docs/src/.vuepress/dist/assets/js/{29.f6a4e822.js => 30.01e2071b.js} (97%) rename docs/src/.vuepress/dist/assets/js/{30.9bb98cd5.js => 31.5ad90f2b.js} (99%) rename docs/src/.vuepress/dist/assets/js/{31.6bcaa134.js => 32.05eec4c5.js} (96%) delete mode 100644 docs/src/.vuepress/dist/assets/js/33.227bf7d4.js rename docs/src/.vuepress/dist/assets/js/{32.13dbfef4.js => 33.da24515a.js} (78%) create mode 100644 docs/src/.vuepress/dist/assets/js/34.1c8ddfde.js rename docs/src/.vuepress/dist/assets/js/{34.25bd9c03.js => 35.b6d66435.js} (99%) rename docs/src/.vuepress/dist/assets/js/{35.ad55ea84.js => 36.1c5d25fb.js} (99%) rename docs/src/.vuepress/dist/assets/js/{36.70888b6c.js => 37.e2bc0515.js} (99%) rename docs/src/.vuepress/dist/assets/js/{37.47473244.js => 38.3762cc6b.js} (99%) delete mode 100644 docs/src/.vuepress/dist/assets/js/38.be2fc22a.js create mode 100644 docs/src/.vuepress/dist/assets/js/39.972809d0.js rename docs/src/.vuepress/dist/assets/js/{39.90a73f07.js => 40.624e2309.js} (98%) rename docs/src/.vuepress/dist/assets/js/{40.8adf4179.js => 41.1bafbf2f.js} (72%) rename docs/src/.vuepress/dist/assets/js/{41.877b1d87.js => 42.32bcbdf0.js} (98%) rename docs/src/.vuepress/dist/assets/js/{42.4a01b487.js => 43.d234e5b4.js} (81%) rename docs/src/.vuepress/dist/assets/js/{43.485b553f.js => 44.851d54d6.js} (98%) rename docs/src/.vuepress/dist/assets/js/{44.bee8c0ac.js => 45.489bbb74.js} (98%) rename docs/src/.vuepress/dist/assets/js/{45.5a96c426.js => 46.8d20f0df.js} (98%) rename docs/src/.vuepress/dist/assets/js/{46.3f95d133.js => 47.5b9c6a01.js} (92%) rename docs/src/.vuepress/dist/assets/js/{47.0cdb1e5d.js => 48.55905f59.js} (96%) rename docs/src/.vuepress/dist/assets/js/{48.03e739e7.js => 49.74e156a3.js} (96%) rename docs/src/.vuepress/dist/assets/js/{5.502fc703.js => 5.a310200e.js} (87%) rename docs/src/.vuepress/dist/assets/js/{49.2d752ee1.js => 50.f34e624c.js} (99%) rename docs/src/.vuepress/dist/assets/js/{50.23d71ab6.js => 51.5be133f8.js} (98%) rename docs/src/.vuepress/dist/assets/js/{51.c3e699e7.js => 52.371b43e0.js} (98%) rename docs/src/.vuepress/dist/assets/js/{52.03a3e296.js => 53.e305cbde.js} (95%) rename docs/src/.vuepress/dist/assets/js/{53.645ee022.js => 54.3d618e11.js} (98%) rename docs/src/.vuepress/dist/assets/js/{54.dbf6d0eb.js => 55.2555359d.js} (96%) rename docs/src/.vuepress/dist/assets/js/{55.517ded52.js => 56.4fd62374.js} (97%) rename docs/src/.vuepress/dist/assets/js/{56.260ce17c.js => 57.6a92da6f.js} (97%) rename docs/src/.vuepress/dist/assets/js/{57.697d63a8.js => 58.e9795bf7.js} (97%) rename docs/src/.vuepress/dist/assets/js/{58.71546e18.js => 59.4ee743e7.js} (98%) rename docs/src/.vuepress/dist/assets/js/{6.1eaa0db0.js => 6.9b5d321d.js} (67%) rename docs/src/.vuepress/dist/assets/js/{59.448f9f74.js => 60.e6d06864.js} (98%) rename docs/src/.vuepress/dist/assets/js/{60.cc91f4bf.js => 61.09466a50.js} (94%) rename docs/src/.vuepress/dist/assets/js/{61.4715a5c4.js => 62.51975b6b.js} (97%) rename docs/src/.vuepress/dist/assets/js/{62.27066fd7.js => 63.0a5e1022.js} (98%) rename docs/src/.vuepress/dist/assets/js/{63.d80fb30d.js => 64.1f6ce620.js} (98%) rename docs/src/.vuepress/dist/assets/js/{64.f3fdcd50.js => 65.36e6c3b3.js} (96%) rename docs/src/.vuepress/dist/assets/js/{65.ae7396ad.js => 66.a83c3c1e.js} (98%) rename docs/src/.vuepress/dist/assets/js/{66.47bd296d.js => 67.b32ba88c.js} (97%) rename docs/src/.vuepress/dist/assets/js/{67.65377661.js => 68.a33b0caf.js} (98%) rename docs/src/.vuepress/dist/assets/js/{68.a52d49a3.js => 69.ed11a426.js} (99%) rename docs/src/.vuepress/dist/assets/js/{7.0f6ae038.js => 7.71b7ebd7.js} (89%) rename docs/src/.vuepress/dist/assets/js/{69.ebe70287.js => 70.e8bb95ac.js} (97%) rename docs/src/.vuepress/dist/assets/js/{70.f4761b67.js => 71.7638a77d.js} (97%) rename docs/src/.vuepress/dist/assets/js/{71.b1a5ed72.js => 72.e93eb3c0.js} (96%) rename docs/src/.vuepress/dist/assets/js/{72.6374e4b7.js => 73.6397c164.js} (99%) rename docs/src/.vuepress/dist/assets/js/{73.ab425ef3.js => 74.c914b2f2.js} (99%) rename docs/src/.vuepress/dist/assets/js/{74.9d4a5b8b.js => 75.16cfc054.js} (99%) rename docs/src/.vuepress/dist/assets/js/{75.5d3a139b.js => 76.6a920f4c.js} (99%) rename docs/src/.vuepress/dist/assets/js/{76.c3a1d352.js => 77.27937e13.js} (99%) rename docs/src/.vuepress/dist/assets/js/{77.1e20cc10.js => 78.737ec13d.js} (98%) rename docs/src/.vuepress/dist/assets/js/{78.b3375bbd.js => 79.388a8446.js} (98%) rename docs/src/.vuepress/dist/assets/js/{79.e30ee574.js => 80.1dec84f2.js} (98%) rename docs/src/.vuepress/dist/assets/js/{80.c9b2bc6f.js => 81.b62a70e6.js} (97%) rename docs/src/.vuepress/dist/assets/js/{81.41eac1be.js => 82.ba6bfbcb.js} (99%) rename docs/src/.vuepress/dist/assets/js/{82.2044b434.js => 83.fdf32268.js} (98%) rename docs/src/.vuepress/dist/assets/js/{83.e9eb873f.js => 84.5aa11083.js} (99%) rename docs/src/.vuepress/dist/assets/js/{84.b501de85.js => 85.ed836419.js} (98%) rename docs/src/.vuepress/dist/assets/js/{85.c4e6052b.js => 86.6e6c9232.js} (99%) rename docs/src/.vuepress/dist/assets/js/{86.738980af.js => 87.bfe73996.js} (98%) rename docs/src/.vuepress/dist/assets/js/{87.cb11fecb.js => 88.32bc25e1.js} (96%) rename docs/src/.vuepress/dist/assets/js/{88.91b8b30b.js => 89.9280160b.js} (96%) rename docs/src/.vuepress/dist/assets/js/{89.b277329c.js => 90.d6e97ecf.js} (99%) rename docs/src/.vuepress/dist/assets/js/{90.82770f13.js => 91.a90d8bb7.js} (97%) rename docs/src/.vuepress/dist/assets/js/{91.d2bf60c2.js => 92.906efbb2.js} (99%) rename docs/src/.vuepress/dist/assets/js/{92.9ff04b54.js => 93.c87070cc.js} (97%) rename docs/src/.vuepress/dist/assets/js/{93.168a3f48.js => 94.e7eb9f7b.js} (99%) rename docs/src/.vuepress/dist/assets/js/{94.62090088.js => 95.c27f97f4.js} (99%) rename docs/src/.vuepress/dist/assets/js/{95.7669b444.js => 96.d6fda379.js} (98%) rename docs/src/.vuepress/dist/assets/js/{96.10318e4a.js => 97.0e9f507e.js} (98%) rename docs/src/.vuepress/dist/assets/js/{97.4ac3ee32.js => 98.812087ee.js} (98%) delete mode 100644 docs/src/.vuepress/dist/assets/js/99.11b04e35.js rename docs/src/.vuepress/dist/assets/js/{98.4982871f.js => 99.cb09c45e.js} (98%) rename docs/src/.vuepress/dist/assets/js/{app.99498f70.js => app.707cd6e6.js} (72%) create mode 100644 docs/src/.vuepress/dist/syntax/defer/index.html diff --git a/docs/src/.vuepress/dist/404.html b/docs/src/.vuepress/dist/404.html index 97061f84..9e97ffd1 100644 --- a/docs/src/.vuepress/dist/404.html +++ b/docs/src/.vuepress/dist/404.html @@ -13,13 +13,13 @@ - - + +

404

Looks like we've got some broken links.
Take me home.
- + diff --git a/docs/src/.vuepress/dist/abs.wasm b/docs/src/.vuepress/dist/abs.wasm index eb2673308e2bc66d53644180cd0edf6909e89e11..745b6efcf6f0ede63f9dfcb1b515a4a36eb705ed 100644 GIT binary patch delta 1275780 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

8`6J{;r_)l${@tk&1a;Z&LiQg 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

  • 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�}zgMkcQv;pNt-j>%q%nu!7r$`w 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

    bK9r)>TG+`Zd5iyDnXkwdh(fUYlpPo;36 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�^F-@ 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

      l&9Yr801=2!1C@4{KNH40ZkRR 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 KY}>tk`urcX|FFaW diff --git a/docs/src/.vuepress/dist/assets/css/0.styles.af163b1b.css b/docs/src/.vuepress/dist/assets/css/0.styles.05bbccd7.css similarity index 99% rename from docs/src/.vuepress/dist/assets/css/0.styles.af163b1b.css rename to docs/src/.vuepress/dist/assets/css/0.styles.05bbccd7.css index c389d837..1b5dbe01 100644 --- a/docs/src/.vuepress/dist/assets/css/0.styles.af163b1b.css +++ b/docs/src/.vuepress/dist/assets/css/0.styles.05bbccd7.css @@ -1 +1 @@ -code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.block-comment,.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#999}.token.punctuation{color:#ccc}.token.attr-name,.token.deleted,.token.namespace,.token.tag{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.function,.token.number{color:#f08d49}.token.class-name,.token.constant,.token.property,.token.symbol{color:#f8c555}.token.atrule,.token.builtin,.token.important,.token.keyword,.token.selector{color:#cc99cd}.token.attr-value,.token.char,.token.regex,.token.string,.token.variable{color:#7ec699}.token.entity,.token.operator,.token.url{color:#67cdcc}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}.theme-default-content code{color:#476582;padding:.25rem .5rem;margin:0;font-size:.85em;background-color:rgba(27,31,35,.05);border-radius:3px}.theme-default-content code .token.deleted,.theme-default-content code .token.inserted{color:#ec5975}.theme-default-content pre,.theme-default-content pre[class*=language-]{line-height:1.4;padding:1.25rem 1.5rem;margin:.85rem 0;background-color:#282c34;border-radius:6px;overflow:auto}.theme-default-content pre[class*=language-] code,.theme-default-content pre code{color:#fff;padding:0;background-color:transparent;border-radius:0}div[class*=language-]{position:relative;background-color:#282c34;border-radius:6px}div[class*=language-] .highlight-lines{-webkit-user-select:none;user-select:none;padding-top:1.3rem;position:absolute;top:0;left:0;width:100%;line-height:1.4}div[class*=language-] .highlight-lines .highlighted{background-color:rgba(0,0,0,.66)}div[class*=language-] pre,div[class*=language-] pre[class*=language-]{background:transparent;position:relative;z-index:1}div[class*=language-]:before{position:absolute;z-index:3;top:.8em;right:1em;font-size:.75rem;color:hsla(0,0%,100%,.4)}div[class*=language-]:not(.line-numbers-mode) .line-numbers-wrapper{display:none}div[class*=language-].line-numbers-mode .highlight-lines .highlighted{position:relative}div[class*=language-].line-numbers-mode .highlight-lines .highlighted:before{content:" ";position:absolute;z-index:3;left:0;top:0;display:block;width:3.5rem;height:100%;background-color:rgba(0,0,0,.66)}div[class*=language-].line-numbers-mode pre{padding-left:4.5rem;vertical-align:middle}div[class*=language-].line-numbers-mode .line-numbers-wrapper{position:absolute;top:0;width:3.5rem;text-align:center;color:hsla(0,0%,100%,.3);padding:1.25rem 0;line-height:1.4}div[class*=language-].line-numbers-mode .line-numbers-wrapper br{-webkit-user-select:none;user-select:none}div[class*=language-].line-numbers-mode .line-numbers-wrapper .line-number{position:relative;z-index:4;-webkit-user-select:none;user-select:none;font-size:.85em}div[class*=language-].line-numbers-mode:after{content:"";position:absolute;z-index:2;top:0;left:0;width:3.5rem;height:100%;border-radius:6px 0 0 6px;border-right:1px solid rgba(0,0,0,.66);background-color:#282c34}div[class~=language-js]:before{content:"js"}div[class~=language-ts]:before{content:"ts"}div[class~=language-html]:before{content:"html"}div[class~=language-md]:before{content:"md"}div[class~=language-vue]:before{content:"vue"}div[class~=language-css]:before{content:"css"}div[class~=language-sass]:before{content:"sass"}div[class~=language-scss]:before{content:"scss"}div[class~=language-less]:before{content:"less"}div[class~=language-stylus]:before{content:"stylus"}div[class~=language-go]:before{content:"go"}div[class~=language-java]:before{content:"java"}div[class~=language-c]:before{content:"c"}div[class~=language-sh]:before{content:"sh"}div[class~=language-yaml]:before{content:"yaml"}div[class~=language-py]:before{content:"py"}div[class~=language-docker]:before{content:"docker"}div[class~=language-dockerfile]:before{content:"dockerfile"}div[class~=language-makefile]:before{content:"makefile"}div[class~=language-javascript]:before{content:"js"}div[class~=language-typescript]:before{content:"ts"}div[class~=language-markup]:before{content:"html"}div[class~=language-markdown]:before{content:"md"}div[class~=language-json]:before{content:"json"}div[class~=language-ruby]:before{content:"rb"}div[class~=language-python]:before{content:"py"}div[class~=language-bash]:before{content:"sh"}div[class~=language-php]:before{content:"php"}.custom-block .custom-block-title{font-weight:600;margin-bottom:-.4rem}.custom-block.danger,.custom-block.tip,.custom-block.warning{padding:.1rem 1.5rem;border-left-width:.5rem;border-left-style:solid;margin:1rem 0}.custom-block.tip{background-color:#f3f5f7;border-color:#42b983}.custom-block.warning{background-color:rgba(255,229,100,.3);border-color:#e7c000;color:#6b5900}.custom-block.warning .custom-block-title{color:#b29400}.custom-block.warning a{color:#2c3e50}.custom-block.danger{background-color:#ffe6e6;border-color:#c00;color:#4d0000}.custom-block.danger .custom-block-title{color:#900}.custom-block.danger a{color:#2c3e50}.custom-block.details{display:block;position:relative;border-radius:2px;margin:1.6em 0;padding:1.6em;background-color:#eee}.custom-block.details h4{margin-top:0}.custom-block.details figure:last-child,.custom-block.details p:last-child{margin-bottom:0;padding-bottom:0}.custom-block.details summary{outline:none;cursor:pointer}.arrow{display:inline-block;width:0;height:0}.arrow.up{border-bottom:6px solid #ccc}.arrow.down,.arrow.up{border-left:4px solid transparent;border-right:4px solid transparent}.arrow.down{border-top:6px solid #ccc}.arrow.right{border-left:6px solid #ccc}.arrow.left,.arrow.right{border-top:4px solid transparent;border-bottom:4px solid transparent}.arrow.left{border-right:6px solid #ccc}.theme-default-content:not(.custom){max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.theme-default-content:not(.custom){padding:2rem}}@media (max-width:419px){.theme-default-content:not(.custom){padding:1.5rem}}.table-of-contents .badge{vertical-align:middle}body,html{padding:0;margin:0;background-color:#fff}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;color:#2c3e50}.page{padding-left:20rem}.navbar{z-index:20;right:0;height:3.6rem;background-color:#fff;box-sizing:border-box;border-bottom:1px solid #eaecef}.navbar,.sidebar-mask{position:fixed;top:0;left:0}.sidebar-mask{z-index:9;width:100vw;height:100vh;display:none}.sidebar{font-size:16px;background-color:#fff;width:20rem;position:fixed;z-index:10;margin:0;top:3.6rem;left:0;bottom:0;box-sizing:border-box;border-right:1px solid #eaecef;overflow-y:auto}.theme-default-content:not(.custom)>:first-child{margin-top:3.6rem}.theme-default-content:not(.custom) a:hover{text-decoration:underline}.theme-default-content:not(.custom) p.demo{padding:1rem 1.5rem;border:1px solid #ddd;border-radius:4px}.theme-default-content:not(.custom) img{max-width:100%}.theme-default-content.custom{padding:0;margin:0}.theme-default-content.custom img{max-width:100%}a{font-weight:500;text-decoration:none}a,p a code{color:#ec5975}p a code{font-weight:400}kbd{background:#eee;border:.15rem solid #ddd;border-bottom:.25rem solid #ddd;border-radius:.15rem;padding:0 .15em}blockquote{font-size:1rem;color:#999;border-left:.2rem solid #dfe2e5;margin:1rem 0;padding:.25rem 0 .25rem 1rem}blockquote>p{margin:0}ol,ul{padding-left:1.2em}strong{font-weight:600}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25}.theme-default-content:not(.custom)>h1,.theme-default-content:not(.custom)>h2,.theme-default-content:not(.custom)>h3,.theme-default-content:not(.custom)>h4,.theme-default-content:not(.custom)>h5,.theme-default-content:not(.custom)>h6{margin-top:-3.1rem;padding-top:4.6rem;margin-bottom:0}.theme-default-content:not(.custom)>h1:first-child,.theme-default-content:not(.custom)>h2:first-child,.theme-default-content:not(.custom)>h3:first-child,.theme-default-content:not(.custom)>h4:first-child,.theme-default-content:not(.custom)>h5:first-child,.theme-default-content:not(.custom)>h6:first-child{margin-top:-1.5rem;margin-bottom:1rem}.theme-default-content:not(.custom)>h1:first-child+.custom-block,.theme-default-content:not(.custom)>h1:first-child+p,.theme-default-content:not(.custom)>h1:first-child+pre,.theme-default-content:not(.custom)>h2:first-child+.custom-block,.theme-default-content:not(.custom)>h2:first-child+p,.theme-default-content:not(.custom)>h2:first-child+pre,.theme-default-content:not(.custom)>h3:first-child+.custom-block,.theme-default-content:not(.custom)>h3:first-child+p,.theme-default-content:not(.custom)>h3:first-child+pre,.theme-default-content:not(.custom)>h4:first-child+.custom-block,.theme-default-content:not(.custom)>h4:first-child+p,.theme-default-content:not(.custom)>h4:first-child+pre,.theme-default-content:not(.custom)>h5:first-child+.custom-block,.theme-default-content:not(.custom)>h5:first-child+p,.theme-default-content:not(.custom)>h5:first-child+pre,.theme-default-content:not(.custom)>h6:first-child+.custom-block,.theme-default-content:not(.custom)>h6:first-child+p,.theme-default-content:not(.custom)>h6:first-child+pre{margin-top:2rem}h1:focus .header-anchor,h1:hover .header-anchor,h2:focus .header-anchor,h2:hover .header-anchor,h3:focus .header-anchor,h3:hover .header-anchor,h4:focus .header-anchor,h4:hover .header-anchor,h5:focus .header-anchor,h5:hover .header-anchor,h6:focus .header-anchor,h6:hover .header-anchor{opacity:1}h1{font-size:2.2rem}h2{font-size:1.65rem;padding-bottom:.3rem;border-bottom:1px solid #eaecef}h3{font-size:1.35rem}a.header-anchor{font-size:.85em;float:left;margin-left:-.87em;padding-right:.23em;margin-top:.125em;opacity:0}a.header-anchor:focus,a.header-anchor:hover{text-decoration:none}.line-number,code,kbd{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}ol,p,ul{line-height:1.7}hr{border:0;border-top:1px solid #eaecef}table{border-collapse:collapse;margin:1rem 0;display:block;overflow-x:auto}tr{border-top:1px solid #dfe2e5}tr:nth-child(2n){background-color:#f6f8fa}td,th{border:1px solid #dfe2e5;padding:.6em 1em}.theme-container.sidebar-open .sidebar-mask{display:block}.theme-container.no-navbar .theme-default-content:not(.custom)>h1,.theme-container.no-navbar h2,.theme-container.no-navbar h3,.theme-container.no-navbar h4,.theme-container.no-navbar h5,.theme-container.no-navbar h6{margin-top:1.5rem;padding-top:0}.theme-container.no-navbar .sidebar{top:0}@media (min-width:720px){.theme-container.no-sidebar .sidebar{display:none}.theme-container.no-sidebar .page{padding-left:0}}@media (max-width:959px){.sidebar{font-size:15px;width:16.4rem}.page{padding-left:16.4rem}}@media (max-width:719px){.sidebar{top:0;padding-top:3.6rem;transform:translateX(-100%);transition:transform .2s ease}.page{padding-left:0}.theme-container.sidebar-open .sidebar{transform:translateX(0)}.theme-container.no-navbar .sidebar{padding-top:0}}@media (max-width:419px){h1{font-size:1.9rem}.theme-default-content div[class*=language-]{margin:.85rem -1.5rem;border-radius:0}}body{font-family:Inter,sans-serif;font-weight:500}.home .hero img{max-width:100%}@media (max-width:719px){.home .hero img{display:none!important}}.feature pre code,.output-shell,.theme-default-content code,.view-lines{font-family:Source Code Pro,sans-serif;font-size:.9em}#nprogress{pointer-events:none}#nprogress .bar{background:#ec5975;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;box-shadow:0 0 10px #ec5975,0 0 5px #ec5975;opacity:1;transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;box-sizing:border-box;border-color:#ec5975 transparent transparent #ec5975;border-style:solid;border-width:2px;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes nprogress-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes nprogress-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.icon.outbound{color:#aaa;display:inline-block;vertical-align:middle;position:relative;top:-1px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.home[data-v-60105dea]{padding:3.6rem 2rem 0;max-width:960px;margin:0 auto;display:block}.home .hero[data-v-60105dea]{text-align:center}.home .hero img[data-v-60105dea]{max-width:100%;max-height:280px;display:block;margin:3rem auto 1.5rem}.home .hero h1[data-v-60105dea]{font-size:3rem}.home .hero .action[data-v-60105dea],.home .hero .description[data-v-60105dea],.home .hero h1[data-v-60105dea]{margin:1.8rem auto}.home .hero .description[data-v-60105dea]{max-width:35rem;font-size:1.6rem;line-height:1.3;color:#6a8bad}.home .hero .action-button[data-v-60105dea]{display:inline-block;font-size:1.2rem;color:#fff;background-color:#ec5975;padding:.8rem 1.6rem;border-radius:4px;transition:background-color .1s ease;box-sizing:border-box;border-bottom:1px solid #e93c5d}.home .hero .action-button[data-v-60105dea]:hover{background-color:#ee6a83}.home .features[data-v-60105dea]{border-top:1px solid #eaecef;padding:1.2rem 0;margin-top:2.5rem;display:flex;flex-wrap:wrap;align-items:flex-start;align-content:stretch;justify-content:space-between}.home .feature[data-v-60105dea]{flex-grow:1;flex-basis:30%;max-width:30%}.home .feature h2[data-v-60105dea]{font-size:1.4rem;font-weight:500;border-bottom:none;padding-bottom:0;color:#3a5169}.home .feature p[data-v-60105dea]{color:#4e6e8e}.home .footer[data-v-60105dea]{padding:2.5rem;border-top:1px solid #eaecef;text-align:center;color:#4e6e8e}@media (max-width:719px){.home .features[data-v-60105dea]{flex-direction:column}.home .feature[data-v-60105dea]{max-width:100%;padding:0 2.5rem}}@media (max-width:419px){.home[data-v-60105dea]{padding-left:1.5rem;padding-right:1.5rem}.home .hero img[data-v-60105dea]{max-height:210px;margin:2rem auto 1.2rem}.home .hero h1[data-v-60105dea]{font-size:2rem}.home .hero .action[data-v-60105dea],.home .hero .description[data-v-60105dea],.home .hero h1[data-v-60105dea]{margin:1.2rem auto}.home .hero .description[data-v-60105dea]{font-size:1.2rem}.home .hero .action-button[data-v-60105dea]{font-size:1rem;padding:.6rem 1.2rem}.home .feature h2[data-v-60105dea]{font-size:1.25rem}}.search-box{display:inline-block;position:relative;margin-right:1rem}.search-box input{cursor:text;width:10rem;height:2rem;color:#4e6e8e;display:inline-block;border:1px solid #cfd4db;border-radius:2rem;font-size:.9rem;line-height:2rem;padding:0 .5rem 0 2rem;outline:none;transition:all .2s ease;background:#fff url(/assets/img/search.83621669.svg) .6rem .5rem no-repeat;background-size:1rem}.search-box input:focus{cursor:auto;border-color:#ec5975}.search-box .suggestions{background:#fff;width:20rem;position:absolute;top:2rem;border:1px solid #cfd4db;border-radius:6px;padding:.4rem;list-style-type:none}.search-box .suggestions.align-right{right:0}.search-box .suggestion{line-height:1.4;padding:.4rem .6rem;border-radius:4px;cursor:pointer}.search-box .suggestion a{white-space:normal;color:#5d82a6}.search-box .suggestion a .page-title{font-weight:600}.search-box .suggestion a .header{font-size:.9em;margin-left:.25em}.search-box .suggestion.focused{background-color:#f3f4f5}.search-box .suggestion.focused a{color:#ec5975}@media (max-width:959px){.search-box input{cursor:pointer;width:0;border-color:transparent;position:relative}.search-box input:focus{cursor:text;left:0;width:10rem}}@media (-ms-high-contrast:none){.search-box input{height:2rem}}@media (max-width:959px) and (min-width:719px){.search-box .suggestions{left:0}}@media (max-width:719px){.search-box{margin-right:0}.search-box input{left:1rem}.search-box .suggestions{right:0}}@media (max-width:419px){.search-box .suggestions{width:calc(100vw - 4rem)}.search-box input:focus{width:8rem}}.sidebar-button{cursor:pointer;display:none;width:1.25rem;height:1.25rem;position:absolute;padding:.6rem;top:.6rem;left:1rem}.sidebar-button .icon{display:block;width:1.25rem;height:1.25rem}@media (max-width:719px){.sidebar-button{display:block}}.dropdown-enter,.dropdown-leave-to{height:0!important}.dropdown-wrapper{cursor:pointer}.dropdown-wrapper .dropdown-title,.dropdown-wrapper .mobile-dropdown-title{display:block;font-size:.9rem;font-family:inherit;cursor:inherit;padding:inherit;line-height:1.4rem;background:transparent;border:none;font-weight:500;color:#2c3e50}.dropdown-wrapper .dropdown-title:hover,.dropdown-wrapper .mobile-dropdown-title:hover{border-color:transparent}.dropdown-wrapper .dropdown-title .arrow,.dropdown-wrapper .mobile-dropdown-title .arrow{vertical-align:middle;margin-top:-1px;margin-left:.4rem}.dropdown-wrapper .mobile-dropdown-title{display:none;font-weight:600}.dropdown-wrapper .mobile-dropdown-title font-size inherit:hover{color:#ec5975}.dropdown-wrapper .nav-dropdown .dropdown-item{color:inherit;line-height:1.7rem}.dropdown-wrapper .nav-dropdown .dropdown-item h4{margin:.45rem 0 0;border-top:1px solid #eee;padding:1rem 1.5rem .45rem 1.25rem}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem-wrapper{padding:0;list-style:none}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem-wrapper .dropdown-subitem{font-size:.9em}.dropdown-wrapper .nav-dropdown .dropdown-item a{display:block;line-height:1.7rem;position:relative;border-bottom:none;font-weight:400;margin-bottom:0;padding:0 1.5rem 0 1.25rem}.dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active,.dropdown-wrapper .nav-dropdown .dropdown-item a:hover{color:#ec5975}.dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active:after{content:"";width:0;height:0;border-left:5px solid #ec5975;border-top:3px solid transparent;border-bottom:3px solid transparent;position:absolute;top:calc(50% - 2px);left:9px}.dropdown-wrapper .nav-dropdown .dropdown-item:first-child h4{margin-top:0;padding-top:0;border-top:0}@media (max-width:719px){.dropdown-wrapper.open .dropdown-title{margin-bottom:.5rem}.dropdown-wrapper .dropdown-title{display:none}.dropdown-wrapper .mobile-dropdown-title{display:block}.dropdown-wrapper .nav-dropdown{transition:height .1s ease-out;overflow:hidden}.dropdown-wrapper .nav-dropdown .dropdown-item h4{border-top:0;margin-top:0;padding-top:0}.dropdown-wrapper .nav-dropdown .dropdown-item>a,.dropdown-wrapper .nav-dropdown .dropdown-item h4{font-size:15px;line-height:2rem}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem{font-size:14px;padding-left:1rem}}@media (min-width:719px){.dropdown-wrapper{height:1.8rem}.dropdown-wrapper.open .nav-dropdown,.dropdown-wrapper:hover .nav-dropdown{display:block!important}.dropdown-wrapper.open:blur{display:none}.dropdown-wrapper .nav-dropdown{display:none;height:auto!important;box-sizing:border-box;max-height:calc(100vh - 2.7rem);overflow-y:auto;position:absolute;top:100%;right:0;background-color:#fff;padding:.6rem 0;border:1px solid;border-color:#ddd #ddd #ccc;text-align:left;border-radius:.25rem;white-space:nowrap;margin:0}}.nav-links{display:inline-block}.nav-links a{line-height:1.4rem;color:inherit}.nav-links a.router-link-active,.nav-links a:hover{color:#ec5975}.nav-links .nav-item{position:relative;display:inline-block;margin-left:1.5rem;line-height:2rem}.nav-links .nav-item:first-child{margin-left:0}.nav-links .repo-link{margin-left:1.5rem}@media (max-width:719px){.nav-links .nav-item,.nav-links .repo-link{margin-left:0}}@media (min-width:719px){.nav-links a.router-link-active,.nav-links a:hover{color:#2c3e50}.nav-item>a:not(.external).router-link-active,.nav-item>a:not(.external):hover{margin-bottom:-2px;border-bottom:2px solid #ee6680}}.navbar{padding:.7rem 1.5rem;line-height:2.2rem}.navbar a,.navbar img,.navbar span{display:inline-block}.navbar .logo{height:2.2rem;min-width:2.2rem;margin-right:.8rem;vertical-align:top}.navbar .site-name{font-size:1.3rem;font-weight:600;color:#2c3e50;position:relative}.navbar .links{padding-left:1.5rem;box-sizing:border-box;background-color:#fff;white-space:nowrap;font-size:.9rem;position:absolute;right:1.5rem;top:.7rem;display:flex}.navbar .links .search-box{flex:0 0 auto;vertical-align:top}@media (max-width:719px){.navbar{padding-left:4rem}.navbar .can-hide{display:none}.navbar .links{padding-left:1.5rem}.navbar .site-name{width:calc(100vw - 9.4rem);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}}.page-edit{max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.page-edit{padding:2rem}}@media (max-width:419px){.page-edit{padding:1.5rem}}.page-edit{padding-top:1rem;padding-bottom:1rem;overflow:auto}.page-edit .edit-link{display:inline-block}.page-edit .edit-link a{color:#4e6e8e;margin-right:.25rem}.page-edit .last-updated{float:right;font-size:.9em}.page-edit .last-updated .prefix{font-weight:500;color:#4e6e8e}.page-edit .last-updated .time{font-weight:400;color:#767676}@media (max-width:719px){.page-edit .edit-link{margin-bottom:.5rem}.page-edit .last-updated{font-size:.8em;float:none;text-align:left}}.page-nav{max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.page-nav{padding:2rem}}@media (max-width:419px){.page-nav{padding:1.5rem}}.page-nav{padding-top:1rem;padding-bottom:0}.page-nav .inner{min-height:2rem;margin-top:0;border-top:1px solid #eaecef;padding-top:1rem;overflow:auto}.page-nav .next{float:right}.page{padding-bottom:2rem;display:block}.sidebar-group .sidebar-group{padding-left:.5em}.sidebar-group:not(.collapsable) .sidebar-heading:not(.clickable){cursor:auto;color:inherit}.sidebar-group.is-sub-group{padding-left:0}.sidebar-group.is-sub-group>.sidebar-heading{font-size:.95em;line-height:1.4;font-weight:400;padding-left:2rem}.sidebar-group.is-sub-group>.sidebar-heading:not(.clickable){opacity:.5}.sidebar-group.is-sub-group>.sidebar-group-items{padding-left:1rem}.sidebar-group.is-sub-group>.sidebar-group-items>li>.sidebar-link{font-size:.95em;border-left:none}.sidebar-group.depth-2>.sidebar-heading{border-left:none}.sidebar-heading{color:#2c3e50;transition:color .15s ease;cursor:pointer;font-size:1.1em;font-weight:700;padding:.35rem 1.5rem .35rem 1.25rem;width:100%;box-sizing:border-box;margin:0;border-left:.25rem solid transparent}.sidebar-heading.open,.sidebar-heading:hover{color:inherit}.sidebar-heading .arrow{position:relative;top:-.12em;left:.5em}.sidebar-heading.clickable.active{font-weight:600;color:#ec5975;border-left-color:#ec5975}.sidebar-heading.clickable:hover{color:#ec5975}.sidebar-group-items{transition:height .1s ease-out;font-size:.95em;overflow:hidden}.sidebar .sidebar-sub-headers{padding-left:1rem;font-size:.95em}a.sidebar-link{font-size:1em;font-weight:400;display:inline-block;color:#2c3e50;border-left:.25rem solid transparent;padding:.35rem 1rem .35rem 1.25rem;line-height:1.4;width:100%;box-sizing:border-box}a.sidebar-link:hover{color:#ec5975}a.sidebar-link.active{font-weight:600;color:#ec5975;border-left-color:#ec5975}.sidebar-group a.sidebar-link{padding-left:2rem}.sidebar-sub-headers a.sidebar-link{padding-top:.25rem;padding-bottom:.25rem;border-left:none}.sidebar-sub-headers a.sidebar-link.active{font-weight:500}.sidebar ul{padding:0;margin:0;list-style-type:none}.sidebar a{display:inline-block}.sidebar .nav-links{display:none;border-bottom:1px solid #eaecef;padding:.5rem 0 .75rem}.sidebar .nav-links a{font-weight:600}.sidebar .nav-links .nav-item,.sidebar .nav-links .repo-link{display:block;line-height:1.25rem;font-size:1.1em;padding:.5rem 0 .5rem 1.5rem}.sidebar>.sidebar-links{padding:1.5rem 0}.sidebar>.sidebar-links>li>a.sidebar-link{font-size:1.1em;line-height:1.7;font-weight:700}.sidebar>.sidebar-links>li:not(:first-child){margin-top:.75rem}@media (max-width:719px){.sidebar .nav-links{display:block}.sidebar .nav-links .dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active:after{top:calc(1rem - 2px)}.sidebar>.sidebar-links{padding:1rem 0}}.monaco-editor{font-family:-apple-system,BlinkMacSystemFont,Segoe WPC,Segoe UI,HelveticaNeue-Light,Ubuntu,Droid Sans,sans-serif}.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-editor-hover p{margin:0}.monaco-editor.hc-black{-ms-high-contrast-adjust:none}@media screen and (-ms-high-contrast:active){.monaco-editor.vs-dark .view-overlays .current-line,.monaco-editor.vs .view-overlays .current-line{border-color:windowtext!important;border-left:0;border-right:0}.monaco-editor.vs-dark .cursor,.monaco-editor.vs .cursor{background-color:windowtext!important}.monaco-editor.vs-dark .dnd-target,.monaco-editor.vs .dnd-target{border-color:windowtext!important}.monaco-editor.vs-dark .selected-text,.monaco-editor.vs .selected-text{background-color:highlight!important}.monaco-editor.vs-dark .view-line,.monaco-editor.vs .view-line{-ms-high-contrast-adjust:none}.monaco-editor.vs-dark .view-line span,.monaco-editor.vs .view-line span{color:windowtext!important}.monaco-editor.vs-dark .view-line span.inline-selected-text,.monaco-editor.vs .view-line span.inline-selected-text{color:highlighttext!important}.monaco-editor.vs-dark .view-overlays,.monaco-editor.vs .view-overlays{-ms-high-contrast-adjust:none}.monaco-editor.vs-dark .reference-decoration,.monaco-editor.vs-dark .selectionHighlight,.monaco-editor.vs-dark .wordHighlight,.monaco-editor.vs-dark .wordHighlightStrong,.monaco-editor.vs .reference-decoration,.monaco-editor.vs .selectionHighlight,.monaco-editor.vs .wordHighlight,.monaco-editor.vs .wordHighlightStrong{border:2px dotted highlight!important;background:transparent!important;box-sizing:border-box}.monaco-editor.vs-dark .rangeHighlight,.monaco-editor.vs .rangeHighlight{background:transparent!important;border:1px dotted activeborder!important;box-sizing:border-box}.monaco-editor.vs-dark .bracket-match,.monaco-editor.vs .bracket-match{border-color:windowtext!important;background:transparent!important}.monaco-editor.vs-dark .currentFindMatch,.monaco-editor.vs-dark .findMatch,.monaco-editor.vs .currentFindMatch,.monaco-editor.vs .findMatch{border:2px dotted activeborder!important;background:transparent!important;box-sizing:border-box}.monaco-editor.vs-dark .find-widget,.monaco-editor.vs .find-widget{border:1px solid windowtext}.monaco-editor.vs-dark .monaco-list .monaco-list-row,.monaco-editor.vs .monaco-list .monaco-list-row{-ms-high-contrast-adjust:none;color:windowtext!important}.monaco-editor.vs-dark .monaco-list .monaco-list-row.focused,.monaco-editor.vs .monaco-list .monaco-list-row.focused{color:highlighttext!important;background-color:highlight!important}.monaco-editor.vs-dark .monaco-list .monaco-list-row:hover,.monaco-editor.vs .monaco-list .monaco-list-row:hover{background:transparent!important;border:1px solid highlight;box-sizing:border-box}.monaco-editor.vs-dark .monaco-tree .monaco-tree-row,.monaco-editor.vs .monaco-tree .monaco-tree-row{-ms-high-contrast-adjust:none;color:windowtext!important}.monaco-editor.vs-dark .monaco-tree .monaco-tree-row.focused,.monaco-editor.vs-dark .monaco-tree .monaco-tree-row.selected,.monaco-editor.vs .monaco-tree .monaco-tree-row.focused,.monaco-editor.vs .monaco-tree .monaco-tree-row.selected{color:highlighttext!important;background-color:highlight!important}.monaco-editor.vs-dark .monaco-tree .monaco-tree-row:hover,.monaco-editor.vs .monaco-tree .monaco-tree-row:hover{background:transparent!important;border:1px solid highlight;box-sizing:border-box}.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar,.monaco-editor.vs .monaco-scrollable-element>.scrollbar{-ms-high-contrast-adjust:none;background:background!important;border:1px solid windowtext;box-sizing:border-box}.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar>.slider,.monaco-editor.vs .monaco-scrollable-element>.scrollbar>.slider{background:windowtext!important}.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar>.slider.active,.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar>.slider:hover,.monaco-editor.vs .monaco-scrollable-element>.scrollbar>.slider.active,.monaco-editor.vs .monaco-scrollable-element>.scrollbar>.slider:hover{background:highlight!important}.monaco-editor.vs-dark .decorationsOverviewRuler,.monaco-editor.vs .decorationsOverviewRuler{opacity:0}.monaco-editor.vs-dark .minimap,.monaco-editor.vs .minimap{display:none}.monaco-editor.vs-dark .squiggly-d-error,.monaco-editor.vs .squiggly-d-error{background:transparent!important;border-bottom:4px double #e47777}.monaco-editor.vs-dark .squiggly-b-info,.monaco-editor.vs-dark .squiggly-c-warning,.monaco-editor.vs .squiggly-b-info,.monaco-editor.vs .squiggly-c-warning{border-bottom:4px double #71b771}.monaco-editor.vs-dark .squiggly-a-hint,.monaco-editor.vs .squiggly-a-hint{border-bottom:4px double #6c6c6c}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.vs .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label{-ms-high-contrast-adjust:none;color:highlighttext!important;background-color:highlight!important}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:hover .action-label,.monaco-editor.vs .monaco-menu .monaco-action-bar.vertical .action-menu-item:hover .action-label{-ms-high-contrast-adjust:none;background:transparent!important;border:1px solid highlight;box-sizing:border-box}.monaco-diff-editor.vs-dark .diffOverviewRuler,.monaco-diff-editor.vs .diffOverviewRuler{display:none}.monaco-editor.vs-dark .line-delete,.monaco-editor.vs-dark .line-insert,.monaco-editor.vs .line-delete,.monaco-editor.vs .line-insert{background:transparent!important;border:1px solid highlight!important;box-sizing:border-box}.monaco-editor.vs-dark .char-delete,.monaco-editor.vs-dark .char-insert,.monaco-editor.vs .char-delete,.monaco-editor.vs .char-insert{background:transparent!important}}.monaco-aria-container{position:absolute;left:-999em}::-ms-clear{display:none}.monaco-editor .editor-widget input{color:inherit}.monaco-editor{position:relative;overflow:visible;-webkit-text-size-adjust:100%}.monaco-editor .overflow-guard{position:relative;overflow:hidden}.monaco-editor .view-overlays{position:absolute;top:0}.monaco-editor .inputarea{min-width:0;min-height:0;margin:0;padding:0;position:absolute;outline:none!important;resize:none;border:none;overflow:hidden;color:transparent;background-color:transparent}.monaco-editor .inputarea.ime-input{z-index:10}.monaco-editor .margin-view-overlays .line-numbers{position:absolute;text-align:right;display:inline-block;vertical-align:middle;box-sizing:border-box;cursor:default;height:100%}.monaco-editor .relative-current-line-number{text-align:left;display:inline-block;width:100%}.monaco-editor .margin-view-overlays .line-numbers.lh-odd{margin-top:1px}.monaco-editor .margin-view-overlays .current-line,.monaco-editor .view-overlays .current-line{display:block;position:absolute;left:0;top:0;box-sizing:border-box}.monaco-editor .margin-view-overlays .current-line.current-line-margin.current-line-margin-both{border-right:0}.monaco-editor .lines-content .cdr{position:absolute}.monaco-scrollable-element>.scrollbar>.up-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTEgMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTkuNDggOC45NjFsMS4yNi0xLjI2LTUuMDQtNS4wNC01LjQ2IDUuMDQgMS4yNiAxLjI2IDQuMi0zLjc4IDMuNzggMy43OHoiIGZpbGw9IiM0MjQyNDIiLz48L3N2Zz4=");cursor:pointer}.monaco-scrollable-element>.scrollbar>.down-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMSAxMSI+PHBhdGggZmlsbD0iIzQyNDI0MiIgZD0iTTEuNSAyLjY2MkwuMjQgMy45MjJsNS4wNCA1LjA0IDUuNDYtNS4wNC0xLjI2LTEuMjYtNC4yIDMuNzgtMy43OC0zLjc4eiIvPjwvc3ZnPg==");cursor:pointer}.monaco-scrollable-element>.scrollbar>.left-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMSAxMSI+PHBhdGggZmlsbD0iIzQyNDI0MiIgZD0iTTguNjQgMS40NDFMNy4zOC4xODFsLTUuMDQgNS4wNCA1LjA0IDUuNDYgMS4yNi0xLjI2LTMuNzgtNC4yIDMuNzgtMy43OHoiLz48L3N2Zz4=");cursor:pointer}.monaco-scrollable-element>.scrollbar>.right-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTEgMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iIzQyNDI0MiIgZD0iTTIuNDY3IDkuNTQ4bDEuMjYgMS4yNiA1LjA0LTUuMDQtNS4wNC01LjQ2LTEuMjYgMS4yNiAzLjc4IDQuMi0zLjc4IDMuNzh6Ii8+PC9zdmc+");cursor:pointer}.hc-black .monaco-scrollable-element>.scrollbar>.up-arrow,.vs-dark .monaco-scrollable-element>.scrollbar>.up-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTEgMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTkuNDggOC45NjFsMS4yNi0xLjI2LTUuMDQtNS4wNC01LjQ2IDUuMDQgMS4yNiAxLjI2IDQuMi0zLjc4IDMuNzggMy43OHoiIGZpbGw9IiNFOEU4RTgiLz48L3N2Zz4=")}.hc-black .monaco-scrollable-element>.scrollbar>.down-arrow,.vs-dark .monaco-scrollable-element>.scrollbar>.down-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMSAxMSI+PHBhdGggZmlsbD0iI0U4RThFOCIgZD0iTTEuNSAyLjY2MkwuMjQgMy45MjJsNS4wNCA1LjA0IDUuNDYtNS4wNC0xLjI2LTEuMjYtNC4yIDMuNzgtMy43OC0zLjc4eiIvPjwvc3ZnPg==")}.hc-black .monaco-scrollable-element>.scrollbar>.left-arrow,.vs-dark .monaco-scrollable-element>.scrollbar>.left-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMSAxMSI+PHBhdGggZmlsbD0iI0U4RThFOCIgZD0iTTguNjQgMS40NDFMNy4zOC4xODFsLTUuMDQgNS4wNCA1LjA0IDUuNDYgMS4yNi0xLjI2LTMuNzgtNC4yIDMuNzgtMy43OHoiLz48L3N2Zz4=")}.hc-black .monaco-scrollable-element>.scrollbar>.right-arrow,.vs-dark .monaco-scrollable-element>.scrollbar>.right-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTEgMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iI0U4RThFOCIgZD0iTTIuNDY3IDkuNTQ4bDEuMjYgMS4yNiA1LjA0LTUuMDQtNS4wNC01LjQ2LTEuMjYgMS4yNiAzLjc4IDQuMi0zLjc4IDMuNzh6Ii8+PC9zdmc+")}.monaco-scrollable-element>.visible{opacity:1;background:transparent;transition:opacity .1s linear}.monaco-scrollable-element>.invisible{opacity:0;pointer-events:none}.monaco-scrollable-element>.invisible.fade{transition:opacity .8s linear}.monaco-scrollable-element>.shadow{position:absolute;display:none}.monaco-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:inset 0 6px 6px -6px #ddd}.monaco-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:inset 6px 0 6px -6px #ddd}.monaco-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.monaco-scrollable-element>.shadow.top.left{box-shadow:inset 6px 6px 6px -6px #ddd}.vs .monaco-scrollable-element>.scrollbar>.slider{background:hsla(0,0%,39.2%,.4)}.vs-dark .monaco-scrollable-element>.scrollbar>.slider{background:hsla(0,0%,47.5%,.4)}.hc-black .monaco-scrollable-element>.scrollbar>.slider{background:rgba(111,195,223,.6)}.monaco-scrollable-element>.scrollbar>.slider:hover{background:hsla(0,0%,39.2%,.7)}.hc-black .monaco-scrollable-element>.scrollbar>.slider:hover{background:rgba(111,195,223,.8)}.monaco-scrollable-element>.scrollbar>.slider.active{background:rgba(0,0,0,.6)}.vs-dark .monaco-scrollable-element>.scrollbar>.slider.active{background:hsla(0,0%,74.9%,.4)}.hc-black .monaco-scrollable-element>.scrollbar>.slider.active{background:#6fc3df}.vs-dark .monaco-scrollable-element .shadow.top{box-shadow:none}.vs-dark .monaco-scrollable-element .shadow.left{box-shadow:inset 6px 0 6px -6px #000}.vs-dark .monaco-scrollable-element .shadow.top.left{box-shadow:inset 6px 6px 6px -6px #000}.hc-black .monaco-scrollable-element .shadow.left,.hc-black .monaco-scrollable-element .shadow.top,.hc-black .monaco-scrollable-element .shadow.top.left{box-shadow:none}.monaco-editor .glyph-margin{position:absolute;top:0}.monaco-editor .margin-view-overlays .cgmr{position:absolute;display:flex;align-items:center;justify-content:center}.monaco-editor .lines-content .cigr,.monaco-editor .lines-content .cigra{position:absolute}.monaco-editor.no-user-select .lines-content,.monaco-editor.no-user-select .view-line,.monaco-editor.no-user-select .view-lines{-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-editor .view-lines{cursor:text;white-space:nowrap}.monaco-editor.hc-black.mac .view-lines,.monaco-editor.vs-dark.mac .view-lines{cursor:-webkit-image-set(url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAAL0lEQVQoz2NgCD3x//9/BhBYBWdhgFVAiVW4JBFKGIa4AqD0//9D3pt4I4tAdAMAHTQ/j5Zom30AAAAASUVORK5CYII=) 1x,url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAQAAADZc7J/AAAAz0lEQVRIx2NgYGBY/R8I/vx5eelX3n82IJ9FxGf6tksvf/8FiTMQAcAGQMDvSwu09abffY8QYSAScNk45G198eX//yev73/4///701eh//kZSARckrNBRvz//+8+6ZohwCzjGNjdgQxkAg7B9WADeBjIBqtJCbhRA0YNoIkBSNmaPEMoNmA0FkYNoFKhapJ6FGyAH3nauaSmPfwI0v/3OukVi0CIZ+F25KrtYcx/CTIy0e+rC7R1Z4KMICVTQQ14feVXIbR695u14+Ir4gwAAD49E54wc1kWAAAAAElFTkSuQmCC) 2x) 5 8,text}.monaco-editor .view-line{position:absolute;width:100%}.monaco-editor .lines-decorations{position:absolute;top:0;background:#fff}.monaco-editor .margin-view-overlays .cldr{position:absolute;height:100%}.monaco-editor .margin-view-overlays .cmdr{position:absolute;left:0;width:100%;height:100%}.monaco-editor .minimap.slider-mouseover .minimap-slider{opacity:0;transition:opacity .1s linear}.monaco-editor .minimap.slider-mouseover .minimap-slider.active,.monaco-editor .minimap.slider-mouseover:hover .minimap-slider{opacity:1}.monaco-editor .minimap-shadow-hidden{position:absolute;width:0}.monaco-editor .minimap-shadow-visible{position:absolute;left:-6px;width:6px}.monaco-editor .overlayWidgets{position:absolute;top:0;left:0}.monaco-editor .view-ruler{position:absolute;top:0}.monaco-editor .scroll-decoration{position:absolute;top:0;left:0;height:6px}.monaco-editor .lines-content .cslr{position:absolute}.monaco-editor .top-left-radius{border-top-left-radius:3px}.monaco-editor .bottom-left-radius{border-bottom-left-radius:3px}.monaco-editor .top-right-radius{border-top-right-radius:3px}.monaco-editor .bottom-right-radius{border-bottom-right-radius:3px}.monaco-editor.hc-black .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-black .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-black .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-black .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor .cursors-layer{position:absolute;top:0}.monaco-editor .cursors-layer>.cursor{position:absolute;cursor:text;overflow:hidden}.monaco-editor .cursors-layer.cursor-smooth-caret-animation>.cursor{transition:all 80ms}.monaco-editor .cursors-layer.cursor-block-outline-style>.cursor{box-sizing:border-box;background:transparent!important;border-style:solid;border-width:1px}.monaco-editor .cursors-layer.cursor-underline-style>.cursor{border-bottom-width:2px;border-bottom-style:solid;background:transparent!important;box-sizing:border-box}.monaco-editor .cursors-layer.cursor-underline-thin-style>.cursor{border-bottom-width:1px;border-bottom-style:solid;background:transparent!important;box-sizing:border-box}@-webkit-keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@-webkit-keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@-webkit-keyframes monaco-cursor-expand{0%,20%{transform:scaleY(1)}80%,to{transform:scaleY(0)}}@keyframes monaco-cursor-expand{0%,20%{transform:scaleY(1)}80%,to{transform:scaleY(0)}}.cursor-smooth{-webkit-animation:monaco-cursor-smooth .5s ease-in-out 0s 20 alternate;animation:monaco-cursor-smooth .5s ease-in-out 0s 20 alternate}.cursor-phase{-webkit-animation:monaco-cursor-phase .5s ease-in-out 0s 20 alternate;animation:monaco-cursor-phase .5s ease-in-out 0s 20 alternate}.cursor-expand>.cursor{-webkit-animation:monaco-cursor-expand .5s ease-in-out 0s 20 alternate;animation:monaco-cursor-expand .5s ease-in-out 0s 20 alternate}.monaco-diff-editor .diffOverview{z-index:9}.monaco-diff-editor.vs .diffOverview{background:rgba(0,0,0,.03)}.monaco-diff-editor.vs-dark .diffOverview{background:hsla(0,0%,100%,.01)}.monaco-diff-editor .diffViewport{box-shadow:inset 0 0 1px 0 #b9b9b9;background:rgba(0,0,0,.1)}.monaco-diff-editor.hc-black .diffViewport,.monaco-diff-editor.vs-dark .diffViewport{background:hsla(0,0%,100%,.1)}.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.vs .scrollbar{background:transparent}.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black .scrollbar{background:none}.monaco-scrollable-element.modified-in-monaco-diff-editor .slider{z-index:10}.modified-in-monaco-diff-editor .slider.active{background:hsla(0,0%,67.1%,.4)}.modified-in-monaco-diff-editor.hc-black .slider.active{background:none}.monaco-diff-editor .delete-sign,.monaco-diff-editor .insert-sign,.monaco-editor .delete-sign,.monaco-editor .insert-sign{font-size:11px!important;opacity:.7!important;display:flex!important;align-items:center}.monaco-diff-editor.hc-black .delete-sign,.monaco-diff-editor.hc-black .insert-sign,.monaco-editor.hc-black .delete-sign,.monaco-editor.hc-black .insert-sign{opacity:1}.monaco-editor .inline-added-margin-view-zone,.monaco-editor .inline-deleted-margin-view-zone{text-align:right}.monaco-editor .diagonal-fill{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAChJREFUKFNjOH/+fAMDDgCSu3Dhwn9c8gwwBTgNGR4KQP4HhQOhsAIAZCBTkhtqePcAAAAASUVORK5CYII=")}.monaco-editor.vs-dark .diagonal-fill{opacity:.2}.monaco-editor.hc-black .diagonal-fill{background:none}.monaco-editor .view-zones .view-lines .view-line span{display:inline-block}.monaco-editor .margin-view-zones .lightbulb-glyph:hover{cursor:pointer}.monaco-sash{position:absolute;z-index:35;touch-action:none}.monaco-sash.disabled{pointer-events:none}.monaco-sash.vertical{cursor:ew-resize;top:0;width:4px;height:100%}.monaco-sash.mac.vertical{cursor:col-resize}.monaco-sash.vertical.minimum{cursor:e-resize}.monaco-sash.vertical.maximum{cursor:w-resize}.monaco-sash.horizontal{cursor:ns-resize;left:0;width:100%;height:4px}.monaco-sash.mac.horizontal{cursor:row-resize}.monaco-sash.horizontal.minimum{cursor:s-resize}.monaco-sash.horizontal.maximum{cursor:n-resize}.monaco-sash:not(.disabled).orthogonal-end:after,.monaco-sash:not(.disabled).orthogonal-start:before{content:" ";height:8px;width:8px;z-index:100;display:block;cursor:all-scroll;position:absolute}.monaco-sash.orthogonal-start.vertical:before{left:-2px;top:-4px}.monaco-sash.orthogonal-end.vertical:after{left:-2px;bottom:-4px}.monaco-sash.orthogonal-start.horizontal:before{top:-2px;left:-4px}.monaco-sash.orthogonal-end.horizontal:after{top:-2px;right:-4px}.monaco-sash.disabled{cursor:default!important;pointer-events:none!important}.monaco-sash.touch.vertical{width:20px}.monaco-sash.touch.horizontal{height:20px}.monaco-sash.debug{background:#0ff}.monaco-sash.debug.disabled{background:rgba(0,255,255,.2)}.monaco-sash.debug:not(.disabled).orthogonal-end:after,.monaco-sash.debug:not(.disabled).orthogonal-start:before{background:red}.monaco-diff-editor .diff-review-line-number{text-align:right;display:inline-block}.monaco-diff-editor .diff-review{position:absolute;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-diff-editor .diff-review-summary{padding-left:10px}.monaco-diff-editor .diff-review-shadow{position:absolute}.monaco-diff-editor .diff-review-row{white-space:pre}.monaco-diff-editor .diff-review-table{display:table;min-width:100%}.monaco-diff-editor .diff-review-row{display:table-row;width:100%}.monaco-diff-editor .diff-review-cell{display:table-cell}.monaco-diff-editor .diff-review-spacer{display:inline-block;width:10px}.monaco-diff-editor .diff-review-actions{display:inline-block;position:absolute;right:10px;top:2px}.monaco-diff-editor .diff-review-actions .action-label{width:16px;height:16px;margin:2px 0}.monaco-action-bar{text-align:right;overflow:hidden;white-space:nowrap}.monaco-action-bar .actions-container{display:flex;margin:0 auto;padding:0;width:100%;justify-content:flex-end}.monaco-action-bar.vertical .actions-container{display:inline-block}.monaco-action-bar.reverse .actions-container{flex-direction:row-reverse}.monaco-action-bar .action-item{cursor:pointer;display:inline-block;transition:transform 50ms ease;position:relative}.monaco-action-bar .action-item.disabled{cursor:default}.monaco-action-bar.animated .action-item.active{transform:scale(1.272019649)}.monaco-action-bar .action-item .codicon,.monaco-action-bar .action-item .icon{display:inline-block}.monaco-action-bar .action-label{font-size:11px;margin-right:4px}.monaco-action-bar .action-item.disabled .action-label,.monaco-action-bar .action-item.disabled .action-label:hover{opacity:.4}.monaco-action-bar.vertical{text-align:left}.monaco-action-bar.vertical .action-item{display:block}.monaco-action-bar.vertical .action-label.separator{display:block;border-bottom:1px solid #bbb;padding-top:1px;margin-left:.8em;margin-right:.8em}.monaco-action-bar.animated.vertical .action-item.active{transform:translate(5px)}.secondary-actions .monaco-action-bar .action-label{margin-left:6px}.monaco-action-bar .action-item.select-container{overflow:hidden;flex:1;max-width:170px;min-width:60px;display:flex;align-items:center;justify-content:center;margin-right:10px}.context-view .monaco-menu{min-width:130px}.context-view-block{position:fixed;left:0;top:0;z-index:-1;width:100%;height:100%}.monaco-menu .monaco-action-bar.vertical{margin-left:0;overflow:visible}.monaco-menu .monaco-action-bar.vertical .actions-container{display:block}.monaco-menu .monaco-action-bar.vertical .action-item{padding:0;transform:none;display:flex}.monaco-menu .monaco-action-bar.vertical .action-item.active{transform:none}.monaco-menu .monaco-action-bar.vertical .action-menu-item{flex:1 1 auto;display:flex;height:2em;align-items:center;position:relative}.monaco-menu .monaco-action-bar.vertical .action-label{flex:1 1 auto;text-decoration:none;padding:0 1em;background:none;font-size:12px;line-height:1}.monaco-menu .monaco-action-bar.vertical .keybinding,.monaco-menu .monaco-action-bar.vertical .submenu-indicator{display:inline-block;flex:2 1 auto;padding:0 1em;text-align:right;font-size:12px;line-height:1}.monaco-menu .monaco-action-bar.vertical .submenu-indicator{height:100%}.monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon{font-size:16px!important;display:flex;align-items:center}.monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon:before{margin-left:auto;margin-right:-20px}.monaco-menu .monaco-action-bar.vertical .action-item.disabled .keybinding,.monaco-menu .monaco-action-bar.vertical .action-item.disabled .submenu-indicator{opacity:.4}.monaco-menu .monaco-action-bar.vertical .action-label:not(.separator){display:inline-block;box-sizing:border-box;margin:0}.monaco-menu .monaco-action-bar.vertical .action-item{position:static;overflow:visible}.monaco-menu .monaco-action-bar.vertical .action-item .monaco-submenu{position:absolute}.monaco-menu .monaco-action-bar.vertical .action-label.separator{padding:.5em 0 0;margin-bottom:.5em;width:100%}.monaco-menu .monaco-action-bar.vertical .action-label.separator.text{padding:.7em 1em .1em;font-weight:700;opacity:1}.monaco-menu .monaco-action-bar.vertical .action-label:hover{color:inherit}.monaco-menu .monaco-action-bar.vertical .menu-item-check{position:absolute;visibility:hidden;width:1em;height:100%}.monaco-menu .monaco-action-bar.vertical .action-menu-item.checked .menu-item-check{visibility:visible;display:flex;align-items:center;justify-content:center}.context-view.monaco-menu-container{outline:0;border:none;-webkit-animation:fadeIn 83ms linear;animation:fadeIn 83ms linear}.context-view.monaco-menu-container .monaco-action-bar.vertical:focus,.context-view.monaco-menu-container .monaco-action-bar.vertical :focus,.context-view.monaco-menu-container :focus{outline:0}.monaco-menu .monaco-action-bar.vertical .action-item{border:thin solid transparent}.hc-black .context-view.monaco-menu-container{box-shadow:none}.hc-black .monaco-menu .monaco-action-bar.vertical .action-item.focused{background:none}.menubar{display:flex;flex-shrink:1;box-sizing:border-box;height:30px;overflow:hidden;flex-wrap:wrap}.fullscreen .menubar:not(.compact){margin:0;padding:0 5px}.menubar>.menubar-menu-button{align-items:center;box-sizing:border-box;padding:0 8px;cursor:default;-webkit-app-region:no-drag;zoom:1;white-space:nowrap;outline:0}.menubar.compact{flex-shrink:0}.menubar.compact>.menubar-menu-button{width:100%;height:100%;padding:0}.menubar .menubar-menu-items-holder{position:absolute;left:0;opacity:1;z-index:2000}.menubar .menubar-menu-items-holder.monaco-menu-container{outline:0;border:none}.menubar .menubar-menu-items-holder.monaco-menu-container :focus{outline:0}.menubar .toolbar-toggle-more{width:20px;height:100%}.menubar.compact .toolbar-toggle-more{position:absolute;left:0;top:0;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:center}.menubar .toolbar-toggle-more{padding:0;vertical-align:sub}.menubar.compact .toolbar-toggle-more:before{content:"\eb94"!important}.context-view{position:absolute;z-index:2500}.monaco-list{position:relative;height:100%;width:100%;white-space:nowrap}.monaco-list.mouse-support{-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-list>.monaco-scrollable-element{height:100%}.monaco-list-rows{position:relative;width:100%;height:100%}.monaco-list.horizontal-scrolling .monaco-list-rows{width:auto;min-width:100%}.monaco-list-row{position:absolute;box-sizing:border-box;overflow:hidden;width:100%}.monaco-list.mouse-support .monaco-list-row{cursor:pointer;touch-action:none}.monaco-list-row.scrolling{display:none!important}.monaco-list.element-focused,.monaco-list.selection-multiple,.monaco-list.selection-single{outline:0!important}.monaco-list:focus .monaco-list-row.selected .codicon{color:inherit}.monaco-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute}.monaco-list-type-filter{display:flex;align-items:center;position:absolute;border-radius:2px;padding:0 3px;max-width:calc(100% - 10px);text-overflow:ellipsis;overflow:hidden;text-align:right;box-sizing:border-box;cursor:all-scroll;font-size:13px;line-height:18px;height:20px;z-index:1;top:4px}.monaco-list-type-filter.dragging{transition:top .2s,left .2s}.monaco-list-type-filter.ne{right:4px}.monaco-list-type-filter.nw{left:4px}.monaco-list-type-filter>.controls{display:flex;align-items:center;box-sizing:border-box;transition:width .2s;width:0}.monaco-list-type-filter.dragging>.controls,.monaco-list-type-filter:hover>.controls{width:36px}.monaco-list-type-filter>.controls>*{border:none;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;background:none;width:16px;height:16px;flex-shrink:0;margin:0;padding:0;display:flex;align-items:center;justify-content:center;cursor:pointer}.monaco-list-type-filter>.controls>.filter:checked:before{content:"\eb83"!important}.monaco-list-type-filter>.controls>.filter{margin-left:4px}.monaco-list-type-filter-message{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;padding:40px 1em 1em;text-align:center;white-space:normal;opacity:.7;pointer-events:none}.monaco-list-type-filter-message:empty{display:none}.monaco-list-type-filter{cursor:-webkit-grab;cursor:grab}.monaco-list-type-filter.dragging{cursor:-webkit-grabbing;cursor:grabbing}.monaco-tl-row{display:flex;height:100%;align-items:center;position:relative}.monaco-tl-indent{height:100%;position:absolute;top:0;left:16px;pointer-events:none}.hide-arrows .monaco-tl-indent{left:12px}.monaco-tl-indent>.indent-guide{display:inline-block;box-sizing:border-box;height:100%;border-left:1px solid transparent;transition:border-color .1s linear}.monaco-tl-contents,.monaco-tl-twistie{height:100%}.monaco-tl-twistie{font-size:10px;text-align:right;padding-right:6px;flex-shrink:0;width:16px;display:flex!important;align-items:center;justify-content:center;color:inherit!important;transform:translateX(3px)}.monaco-tl-contents{flex:1;overflow:hidden}.monaco-tl-twistie.collapsed:before{transform:rotate(-90deg)}.monaco-tl-twistie.codicon-loading:before{-webkit-animation:codicon-spin 1.25s linear infinite;animation:codicon-spin 1.25s linear infinite}.monaco-editor .bracket-match{box-sizing:border-box}.monaco-menu .monaco-action-bar.vertical .action-label.hover{background-color:#eee}.monaco-editor .monaco-editor-overlaymessage{padding-bottom:8px}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.monaco-editor .monaco-editor-overlaymessage.fadeIn{-webkit-animation:fadeIn .15s ease-out;animation:fadeIn .15s ease-out}@-webkit-keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.monaco-editor .monaco-editor-overlaymessage.fadeOut{-webkit-animation:fadeOut .1s ease-out;animation:fadeOut .1s ease-out}.monaco-editor .monaco-editor-overlaymessage .message{padding:1px 4px}.monaco-editor .monaco-editor-overlaymessage .anchor{width:0!important;height:0!important;z-index:1000;border:8px solid transparent;position:absolute}.monaco-editor .codicon-lightbulb,.monaco-editor .lightbulb-glyph{display:flex;align-items:center;justify-content:center;height:16px;width:20px;padding-left:2px}.monaco-editor .codicon-lightbulb:hover,.monaco-editor .lightbulb-glyph:hover{cursor:pointer}.monaco-editor .codelens-decoration{overflow:hidden;display:inline-block;text-overflow:ellipsis}.monaco-editor .codelens-decoration>a,.monaco-editor .codelens-decoration>span{-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none;white-space:nowrap;vertical-align:sub}.monaco-editor .codelens-decoration>a{text-decoration:none}.monaco-editor .codelens-decoration>a:hover{cursor:pointer}.monaco-editor .codelens-decoration .codicon{vertical-align:middle;color:currentColor!important}.monaco-editor .codelens-decoration>a:hover .codicon:before{cursor:pointer}@-webkit-keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}@keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}.monaco-editor .codelens-decoration.fadein{-webkit-animation:fadein .1s linear;animation:fadein .1s linear}.monaco-editor.vs .dnd-target{border-right:2px dotted #000;color:#fff}.monaco-editor.vs-dark .dnd-target{border-right:2px dotted #aeafad;color:#51504f}.monaco-editor.hc-black .dnd-target{border-right:2px dotted #fff;color:#000}.monaco-editor.hc-black.mac.mouse-default .view-lines,.monaco-editor.mouse-default .view-lines,.monaco-editor.vs-dark.mac.mouse-default .view-lines{cursor:default}.monaco-editor.hc-black.mac.mouse-copy .view-lines,.monaco-editor.mouse-copy .view-lines,.monaco-editor.vs-dark.mac.mouse-copy .view-lines{cursor:copy}.monaco-custom-checkbox{margin-left:2px;float:left;cursor:pointer;overflow:hidden;opacity:.7;width:20px;height:20px;border:1px solid transparent;padding:1px;box-sizing:border-box;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-custom-checkbox.checked,.monaco-custom-checkbox:hover{opacity:1}.hc-black .monaco-custom-checkbox,.hc-black .monaco-custom-checkbox:hover{background:none}.monaco-custom-checkbox.monaco-simple-checkbox{height:18px;width:18px;border:1px solid transparent;border-radius:3px;margin-right:9px;margin-left:0;padding:0;opacity:1;background-size:16px!important}.monaco-custom-checkbox.monaco-simple-checkbox.unchecked:not(.checked):before{visibility:hidden}.monaco-editor .find-widget{position:absolute;z-index:10;height:33px;overflow:hidden;line-height:19px;transition:transform .2s linear;padding:0 4px;box-sizing:border-box;transform:translateY(calc(-100% - 10px))}.monaco-editor .find-widget textarea{margin:0}.monaco-editor .find-widget.hiddenEditor{display:none}.monaco-editor .find-widget.replaceToggled>.replace-part{display:flex}.monaco-editor .find-widget.visible{transform:translateY(0)}.monaco-editor .find-widget .monaco-inputbox.synthetic-focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-editor .find-widget .monaco-inputbox .input{background-color:transparent;min-height:0}.monaco-editor .find-widget .monaco-findInput .input{font-size:13px}.monaco-editor .find-widget>.find-part,.monaco-editor .find-widget>.replace-part{margin:4px 0 0 17px;font-size:12px;display:flex}.monaco-editor .find-widget>.find-part .monaco-inputbox,.monaco-editor .find-widget>.replace-part .monaco-inputbox{min-height:25px}.monaco-editor .find-widget>.replace-part .monaco-inputbox>.wrapper>.mirror{padding-right:22px}.monaco-editor .find-widget>.find-part .monaco-inputbox>.wrapper>.input,.monaco-editor .find-widget>.find-part .monaco-inputbox>.wrapper>.mirror,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.wrapper>.input,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.wrapper>.mirror{padding-top:2px;padding-bottom:2px}.monaco-editor .find-widget>.find-part .find-actions,.monaco-editor .find-widget>.replace-part .replace-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget .monaco-findInput{vertical-align:middle;display:flex;flex:1}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element{width:100%}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical{opacity:0}.monaco-editor .find-widget .matchesCount{display:flex;flex:initial;margin:0 0 0 3px;padding:2px 0 0 2px;height:25px;vertical-align:middle;box-sizing:border-box;text-align:center;line-height:23px}.monaco-editor .find-widget .button{width:20px;height:20px;flex:initial;margin-left:3px;background-position:50%;background-repeat:no-repeat;cursor:pointer;display:flex;align-items:center;justify-content:center}.monaco-editor .find-widget .button:not(.disabled):hover{background-color:rgba(0,0,0,.1)}.monaco-editor .find-widget .button.left{margin-left:0;margin-right:3px}.monaco-editor .find-widget .button.wide{width:auto;padding:1px 6px;top:-1px}.monaco-editor .find-widget .button.toggle{position:absolute;top:0;left:3px;width:18px;height:100%;box-sizing:border-box}.monaco-editor .find-widget .button.toggle.disabled{display:none}.monaco-editor .find-widget .disabled{opacity:.3;cursor:default}.monaco-editor .find-widget>.replace-part{display:none}.monaco-editor .find-widget>.replace-part>.monaco-findInput{position:relative;display:flex;vertical-align:middle;flex:auto;flex-grow:0;flex-shrink:0}.monaco-editor .find-widget>.replace-part>.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.monaco-editor .find-widget.reduced-find-widget .matchesCount{display:none}.monaco-editor .find-widget.narrow-find-widget{max-width:257px!important}.monaco-editor .find-widget.collapsed-find-widget{max-width:170px!important}.monaco-editor .find-widget.collapsed-find-widget .button.next,.monaco-editor .find-widget.collapsed-find-widget .button.previous,.monaco-editor .find-widget.collapsed-find-widget .button.replace,.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,.monaco-editor .find-widget.collapsed-find-widget>.find-part .monaco-findInput .controls{display:none}.monaco-editor .findMatch{-webkit-animation-duration:0;animation-duration:0;-webkit-animation-name:inherit!important;animation-name:inherit!important}.monaco-editor .find-widget .monaco-sash{width:2px!important;margin-left:-4px}.monaco-editor.hc-black .find-widget .button:not(.disabled):hover,.monaco-editor.vs-dark .find-widget .button:not(.disabled):hover{background-color:hsla(0,0%,100%,.1)}.monaco-editor.hc-black .find-widget .button:before{position:relative;top:1px;left:2px}.monaco-findInput{position:relative}.monaco-findInput .monaco-inputbox{font-size:13px;width:100%}.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.vs .monaco-findInput.disabled{background-color:#e1e1e1}.vs-dark .monaco-findInput.disabled{background-color:#333}.monaco-findInput.highlight-0 .controls{-webkit-animation:monaco-findInput-highlight-0 .1s linear 0s;animation:monaco-findInput-highlight-0 .1s linear 0s}.monaco-findInput.highlight-1 .controls{-webkit-animation:monaco-findInput-highlight-1 .1s linear 0s;animation:monaco-findInput-highlight-1 .1s linear 0s}.hc-black .monaco-findInput.highlight-0 .controls,.vs-dark .monaco-findInput.highlight-0 .controls{-webkit-animation:monaco-findInput-highlight-dark-0 .1s linear 0s;animation:monaco-findInput-highlight-dark-0 .1s linear 0s}.hc-black .monaco-findInput.highlight-1 .controls,.vs-dark .monaco-findInput.highlight-1 .controls{-webkit-animation:monaco-findInput-highlight-dark-1 .1s linear 0s;animation:monaco-findInput-highlight-dark-1 .1s linear 0s}@-webkit-keyframes monaco-findInput-highlight-0{0%{background:rgba(253,255,0,.8)}to{background:transparent}}@keyframes monaco-findInput-highlight-0{0%{background:rgba(253,255,0,.8)}to{background:transparent}}@-webkit-keyframes monaco-findInput-highlight-1{0%{background:rgba(253,255,0,.8)}99%{background:transparent}}@keyframes monaco-findInput-highlight-1{0%{background:rgba(253,255,0,.8)}99%{background:transparent}}@-webkit-keyframes monaco-findInput-highlight-dark-0{0%{background:hsla(0,0%,100%,.44)}to{background:transparent}}@keyframes monaco-findInput-highlight-dark-0{0%{background:hsla(0,0%,100%,.44)}to{background:transparent}}@-webkit-keyframes monaco-findInput-highlight-dark-1{0%{background:hsla(0,0%,100%,.44)}99%{background:transparent}}@keyframes monaco-findInput-highlight-dark-1{0%{background:hsla(0,0%,100%,.44)}99%{background:transparent}}.monaco-inputbox{position:relative;display:block;padding:0;box-sizing:border-box;font-size:inherit}.monaco-inputbox.idle{border:1px solid transparent}.monaco-inputbox>.wrapper>.input,.monaco-inputbox>.wrapper>.mirror{padding:4px}.monaco-inputbox>.wrapper{position:relative;width:100%;height:100%}.monaco-inputbox>.wrapper>.input{display:inline-block;box-sizing:border-box;width:100%;height:100%;line-height:inherit;border:none;font-family:inherit;font-size:inherit;resize:none;color:inherit}.monaco-inputbox>.wrapper>input{text-overflow:ellipsis}.monaco-inputbox>.wrapper>textarea.input{display:block;-ms-overflow-style:none;scrollbar-width:none;outline:none}.monaco-inputbox>.wrapper>textarea.input::-webkit-scrollbar{display:none}.monaco-inputbox>.wrapper>textarea.input.empty{white-space:nowrap}.monaco-inputbox>.wrapper>.mirror{position:absolute;display:inline-block;width:100%;top:0;left:0;box-sizing:border-box;white-space:pre-wrap;visibility:hidden;word-wrap:break-word}.monaco-inputbox-container{text-align:right}.monaco-inputbox-container .monaco-inputbox-message{display:inline-block;overflow:hidden;text-align:left;width:100%;box-sizing:border-box;padding:.4em;font-size:12px;line-height:17px;min-height:34px;margin-top:-1px;word-wrap:break-word}.monaco-inputbox .monaco-action-bar{position:absolute;right:2px;top:4px}.monaco-inputbox .monaco-action-bar .action-item{margin-left:2px}.monaco-inputbox .monaco-action-bar .action-item .codicon{background-repeat:no-repeat;width:16px;height:16px}.monaco-editor .margin-view-overlays .codicon-chevron-down,.monaco-editor .margin-view-overlays .codicon-chevron-right{cursor:pointer;opacity:0;transition:opacity .5s;display:flex;align-items:center;justify-content:center;font-size:140%;margin-left:2px}.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons,.monaco-editor .margin-view-overlays .codicon.codicon-chevron-right,.monaco-editor .margin-view-overlays:hover .codicon{opacity:1}.monaco-editor .inline-folded:after{color:grey;margin:.1em .2em 0;content:"⋯";display:inline;line-height:1em;cursor:pointer}.monaco-editor .peekview-widget .head{box-sizing:border-box;display:flex}.monaco-editor .peekview-widget .head .peekview-title{display:flex;align-items:center;font-size:13px;margin-left:20px;cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty){font-size:.9em;margin-left:.5em}.monaco-editor .peekview-widget .head .peekview-title .meta{white-space:nowrap}.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty):before{content:"-";padding:0 .3em}.monaco-editor .peekview-widget .head .peekview-actions{flex:1;text-align:right;padding-right:2px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar{display:inline-block}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar,.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar>.actions-container{height:100%}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar .action-item{margin-left:4px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar .action-label{width:16px;height:100%;margin:0;line-height:inherit;background-repeat:no-repeat;background-position:50%}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar .action-label.codicon{margin:0}.monaco-editor .peekview-widget>.body{border-top:1px solid;position:relative}.monaco-editor .peekview-widget .head .peekview-title .codicon{margin-right:4px}.monaco-editor .zone-widget{position:absolute;z-index:10}.monaco-editor .zone-widget .zone-widget-container{border-top-style:solid;border-bottom-style:solid;border-top-width:0;border-bottom-width:0;position:relative}.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget{border-top-width:1px;border-bottom-width:1px}.monaco-editor .reference-zone-widget .inline{display:inline-block;vertical-align:top}.monaco-editor .reference-zone-widget .messages{height:100%;width:100%;text-align:center;padding:3em 0}.monaco-editor .reference-zone-widget .ref-tree{line-height:23px}.monaco-editor .reference-zone-widget .ref-tree .reference{text-overflow:ellipsis;overflow:hidden}.monaco-editor .reference-zone-widget .ref-tree .reference-file{display:inline-flex;width:100%;height:100%}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file{color:inherit!important}.monaco-editor .reference-zone-widget .ref-tree .reference-file .count{margin-right:12px;margin-left:auto}.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file{font-weight:700}.monaco-icon-label{display:flex;overflow:hidden;text-overflow:ellipsis}.monaco-icon-label:before{background-size:16px;background-position:0;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;line-height:inherit!important;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:top;flex-shrink:0}.monaco-icon-label>.monaco-icon-label-container{min-width:0;overflow:hidden;text-overflow:ellipsis;flex:1}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{color:inherit;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name>.label-separator{margin:0 2px;opacity:.5}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.7;margin-left:.5em;font-size:.9em;white-space:pre}.monaco-icon-label.italic>.monaco-icon-description-container>.label-description,.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{font-style:italic}.monaco-icon-label:after{opacity:.75;font-size:90%;font-weight:600;padding:0 16px 0 5px;text-align:center}.monaco-list:focus .selected .monaco-icon-label,.monaco-list:focus .selected .monaco-icon-label:after,.monaco-tree.focused .selected .monaco-icon-label,.monaco-tree.focused .selected .monaco-icon-label:after{color:inherit!important}.monaco-list-row.focused.selected .label-description,.monaco-list-row.selected .label-description,.monaco-tree-row.focused.selected .label-description,.monaco-tree-row.selected .label-description{opacity:.8}.monaco-count-badge{padding:3px 5px;border-radius:11px;font-size:11px;min-width:18px;min-height:18px;line-height:11px;font-weight:400;text-align:center;display:inline-block;box-sizing:border-box}.monaco-split-view2{position:relative;width:100%;height:100%}.monaco-split-view2>.sash-container{position:absolute;width:100%;height:100%;pointer-events:none}.monaco-split-view2>.sash-container>.monaco-sash{pointer-events:auto}.monaco-split-view2>.split-view-container{width:100%;height:100%;white-space:nowrap;position:relative}.monaco-split-view2>.split-view-container>.split-view-view{white-space:normal;position:absolute}.monaco-split-view2>.split-view-container>.split-view-view:not(.visible){display:none}.monaco-split-view2.vertical>.split-view-container>.split-view-view{width:100%}.monaco-split-view2.horizontal>.split-view-container>.split-view-view{height:100%}.monaco-split-view2.separator-border>.split-view-container>.split-view-view:not(:first-child):before{content:" ";position:absolute;top:0;left:0;z-index:5;pointer-events:none;background-color:var(--separator-border)}.monaco-split-view2.separator-border.horizontal>.split-view-container>.split-view-view:not(:first-child):before{height:100%;width:1px}.monaco-split-view2.separator-border.vertical>.split-view-container>.split-view-view:not(:first-child):before{height:1px;width:100%}.monaco-editor .goto-definition-link{text-decoration:underline;cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .severity-icon{display:inline-block;vertical-align:text-top;margin-right:4px}.monaco-editor .marker-widget{text-overflow:ellipsis;white-space:nowrap}.monaco-editor .marker-widget>.stale{opacity:.6;font-style:italic}.monaco-editor .marker-widget .title{display:inline-block;padding-right:5px}.monaco-editor .marker-widget .descriptioncontainer{position:absolute;white-space:pre;-moz-user-select:text;user-select:text;-webkit-user-select:text;-ms-user-select:text;padding:8px 12px 0 20px}.monaco-editor .marker-widget .descriptioncontainer .message{display:flex;flex-direction:column}.monaco-editor .marker-widget .descriptioncontainer .message .details{padding-left:6px}.monaco-editor .marker-widget .descriptioncontainer .message .source,.monaco-editor .marker-widget .descriptioncontainer .message span.code{opacity:.6}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link{opacity:.6;color:inherit}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before{content:"("}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after{content:")"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under}.monaco-editor .marker-widget .descriptioncontainer .filename{cursor:pointer}.monaco-editor-hover{cursor:default;position:absolute;overflow:hidden;z-index:50;-moz-user-select:text;user-select:text;-webkit-user-select:text;-ms-user-select:text;box-sizing:initial;-webkit-animation:fadein .1s linear;animation:fadein .1s linear;line-height:1.5em}.monaco-editor-hover.hidden{display:none}.monaco-editor-hover .hover-contents{padding:4px 8px}.monaco-editor-hover .markdown-hover>.hover-contents:not(.code-hover-contents){max-width:500px;word-wrap:break-word}.monaco-editor-hover .markdown-hover>.hover-contents:not(.code-hover-contents) hr{min-width:100vw}.monaco-editor-hover p,.monaco-editor-hover ul{margin:8px 0}.monaco-editor-hover code{font-family:var(--monaco-monospace-font)}.monaco-editor-hover hr{margin:4px -10px -6px;height:1px}.monaco-editor-hover p:first-child,.monaco-editor-hover ul:first-child{margin-top:0}.monaco-editor-hover p:last-child,.monaco-editor-hover ul:last-child{margin-bottom:0}.monaco-editor-hover ol,.monaco-editor-hover ul{padding-left:20px}.monaco-editor-hover li>p{margin-bottom:0}.monaco-editor-hover li>ul{margin-top:0}.monaco-editor-hover code{border-radius:3px;padding:0 .4em}.monaco-editor-hover .monaco-tokenized-source{white-space:pre-wrap;word-break:break-all}.monaco-editor-hover .hover-row.status-bar{font-size:12px;line-height:22px}.monaco-editor-hover .hover-row.status-bar .actions{display:flex;padding:0 8px}.monaco-editor-hover .hover-row.status-bar .actions .action-container{margin-right:16px;cursor:pointer}.monaco-editor-hover .hover-row.status-bar .actions .action-container .action .icon{padding-right:4px}.monaco-editor-hover .markdown-hover .hover-contents .codicon{color:inherit;font-size:inherit;vertical-align:middle}.monaco-editor-hover .hover-contents a.code-link:before{content:"("}.monaco-editor-hover .hover-contents a.code-link:after{content:")"}.monaco-editor-hover .hover-contents a.code-link{color:inherit}.monaco-editor-hover .hover-contents a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under}.colorpicker-widget{height:190px;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-editor .colorpicker-hover:focus{outline:none}.colorpicker-header{display:flex;height:24px;position:relative;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=");background-size:9px 9px;-ms-interpolation-mode:nearest-neighbor;image-rendering:-moz-crisp-edges;image-rendering:pixelated}.colorpicker-header .picked-color{width:216px;line-height:24px;cursor:pointer;color:#fff;flex:1;text-align:center}.colorpicker-header .picked-color.light{color:#000}.colorpicker-header .original-color{width:74px;z-index:inherit;cursor:pointer}.colorpicker-body{display:flex;padding:8px;position:relative}.colorpicker-body .saturation-wrap{overflow:hidden;height:150px;position:relative;min-width:220px;flex:1}.colorpicker-body .saturation-box{height:150px;position:absolute}.colorpicker-body .saturation-selection{width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid #fff;border-radius:100%;box-shadow:0 0 2px rgba(0,0,0,.8);position:absolute}.colorpicker-body .strip{width:25px;height:150px}.colorpicker-body .hue-strip{background:linear-gradient(180deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.colorpicker-body .hue-strip,.colorpicker-body .opacity-strip{position:relative;margin-left:8px;cursor:-webkit-grab;cursor:grab}.colorpicker-body .opacity-strip{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=");background-size:9px 9px;-ms-interpolation-mode:nearest-neighbor;image-rendering:-moz-crisp-edges;image-rendering:pixelated}.colorpicker-body .strip.grabbing{cursor:-webkit-grabbing;cursor:grabbing}.colorpicker-body .slider{position:absolute;top:0;left:-2px;width:calc(100% + 4px);height:4px;box-sizing:border-box;border:1px solid hsla(0,0%,100%,.71);box-shadow:0 0 1px rgba(0,0,0,.85)}.colorpicker-body .strip .overlay{height:150px;pointer-events:none}.monaco-editor .detected-link,.monaco-editor .detected-link-active{text-decoration:underline;text-underline-position:under}.monaco-editor .detected-link-active{cursor:pointer}.monaco-editor .parameter-hints-widget{z-index:10;display:flex;flex-direction:column;line-height:1.5em}.monaco-editor .parameter-hints-widget>.wrapper{max-width:440px;display:flex;flex-direction:row}.monaco-editor .parameter-hints-widget.multiple{min-height:3.3em;padding:0}.monaco-editor .parameter-hints-widget.visible{transition:left .05s ease-in-out}.monaco-editor .parameter-hints-widget p,.monaco-editor .parameter-hints-widget ul{margin:8px 0}.monaco-editor .parameter-hints-widget .body,.monaco-editor .parameter-hints-widget .monaco-scrollable-element{display:flex;flex-direction:column;min-height:100%}.monaco-editor .parameter-hints-widget .signature{padding:4px 5px}.monaco-editor .parameter-hints-widget .docs{padding:0 10px 0 5px;white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs.empty{display:none}.monaco-editor .parameter-hints-widget .docs .markdown-docs{white-space:normal}.monaco-editor .parameter-hints-widget .docs .markdown-docs code{font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .docs .code{white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs code{border-radius:3px;padding:0 .4em}.monaco-editor .parameter-hints-widget .controls{display:none;flex-direction:column;align-items:center;min-width:22px;justify-content:flex-end}.monaco-editor .parameter-hints-widget.multiple .controls{display:flex;padding:0 2px}.monaco-editor .parameter-hints-widget.multiple .button{width:16px;height:16px;background-repeat:no-repeat;cursor:pointer}.monaco-editor .parameter-hints-widget .button.previous{bottom:24px}.monaco-editor .parameter-hints-widget .overloads{text-align:center;height:12px;line-height:12px;opacity:.5;font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .signature .parameter.active{font-weight:700;text-decoration:underline}.monaco-editor .parameter-hints-widget .documentation-parameter>.parameter{font-weight:700;margin-right:.5em}.monaco-editor .rename-box{z-index:100;color:inherit}.monaco-editor .rename-box.preview{padding:3px 3px 0}.monaco-editor .rename-box .rename-input{padding:3px;width:calc(100% - 6px)}.monaco-editor .rename-box .rename-label{display:none;opacity:.8}.monaco-editor .rename-box.preview .rename-label{display:inherit}.monaco-editor .snippet-placeholder{min-width:2px}.monaco-editor .finish-snippet-placeholder,.monaco-editor .snippet-placeholder{outline-style:solid;outline-width:1px}.monaco-editor .suggest-widget{z-index:40;width:430px}.monaco-editor .suggest-widget>.details,.monaco-editor .suggest-widget>.message,.monaco-editor .suggest-widget>.tree{width:100%;border-style:solid;border-width:1px;box-sizing:border-box}.monaco-editor.hc-black .suggest-widget>.details,.monaco-editor.hc-black .suggest-widget>.message,.monaco-editor.hc-black .suggest-widget>.tree{border-width:2px}.monaco-editor .suggest-widget.docs-side{width:660px}.monaco-editor .suggest-widget.docs-side>.details,.monaco-editor .suggest-widget.docs-side>.tree{width:50%;float:left}.monaco-editor .suggest-widget.docs-side.list-right>.details,.monaco-editor .suggest-widget.docs-side.list-right>.tree{float:right}.monaco-editor .suggest-widget>.details ol,.monaco-editor .suggest-widget>.details ul{padding-left:20px}.monaco-editor .suggest-widget>.details p code{font-family:var(--monaco-monospace-font)}.monaco-editor .suggest-widget>.message{padding-left:22px}.monaco-editor .suggest-widget>.tree{height:100%}.monaco-editor .suggest-widget .monaco-list{-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row{display:flex;-mox-box-sizing:border-box;box-sizing:border-box;padding-right:10px;background-repeat:no-repeat;background-position:2px 2px;white-space:nowrap;cursor:pointer;touch-action:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents{flex:1;height:100%;overflow:hidden;padding-left:2px}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main{display:flex;overflow:hidden;text-overflow:ellipsis;white-space:pre;justify-content:space-between}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{display:flex}.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight{font-weight:700}.monaco-editor .suggest-widget>.suggest-status-bar{visibility:hidden;position:absolute;left:0;box-sizing:border-box;display:flex;flex-flow:row nowrap;justify-content:space-between;width:100%;font-size:80%;border-left-width:1px;border-left-style:solid;border-right-width:1px;border-right-style:solid;border-bottom-width:1px;border-bottom-style:solid;padding:1px 8px 1px 4px;box-shadow:0 -.5px 3px #ddd}.monaco-editor .suggest-widget>.suggest-status-bar span{opacity:.7}.monaco-editor .suggest-widget.list-right.docs-side>.suggest-status-bar{left:auto;right:0}.monaco-editor .suggest-widget.docs-side>.suggest-status-bar{width:50%}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.header>.codicon-close,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:before{color:inherit;opacity:1;font-size:14px;cursor:pointer}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.header>.codicon-close{position:absolute;top:2px;right:2px}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.header>.codicon-close:hover,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:hover{opacity:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.signature-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{opacity:.7}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label{margin-left:4px;opacity:.4;font-size:90%;text-overflow:ellipsis;overflow:hidden;line-height:17px;align-self:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{margin-left:.8em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label>.monaco-tokenized-source{display:inline}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{display:none}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused>.contents>.main>.right.always-show-details>.details-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right.always-show-details>.details-label{display:inline}.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:calc(100% - 26px)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left{flex-shrink:1;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.monaco-icon-label{flex-shrink:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{overflow:hidden;flex-shrink:0;max-width:45%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:inline-block;position:absolute;right:10px;width:18px;height:18px;visibility:hidden}.monaco-editor .suggest-widget.docs-below .monaco-list .monaco-list-row>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none!important}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right:not(.always-show-details)>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main>.right:not(.always-show-details)>.readMore{display:inline-block}.monaco-editor .suggest-widget.docs-below .monaco-list .monaco-list-row>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:hover>.contents>.main>.right>.readMore{visibility:visible}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated{opacity:.66;text-decoration:unset}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated>.monaco-icon-label-container>.monaco-icon-name-container{text-decoration:line-through}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label:before{height:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon{display:block;height:16px;width:16px;margin-left:2px;background-repeat:no-repeat;background-size:80%;background-position:50%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon{display:flex;align-items:center;margin-right:4px}.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon:before{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan{margin:0 0 0 .3em;border:.1em solid #000;width:.7em;height:.7em;display:inline-block}.monaco-editor .suggest-widget .details{display:flex;flex-direction:column;cursor:default}.monaco-editor .suggest-widget .details.no-docs{display:none}.monaco-editor .suggest-widget.docs-below .details{border-top-width:0}.monaco-editor .suggest-widget .details>.monaco-scrollable-element{flex:1}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body{position:absolute;box-sizing:border-box;height:100%;width:100%}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.header>.type{flex:2;overflow:hidden;text-overflow:ellipsis;opacity:.7;word-break:break-all;margin:0 24px 0 0;padding:4px 0 12px 5px}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs{margin:0;padding:4px 5px;white-space:pre-wrap}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs{padding:0;white-space:normal;min-height:calc(1rem + 8px)}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs>div,.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs>span:not(:empty){padding:4px 5px}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:first-child{margin-top:0}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:last-child{margin-bottom:0}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs .code{white-space:pre-wrap;word-wrap:break-word}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>p:empty{display:none}.monaco-editor .suggest-widget .details code{border-radius:3px;padding:0 .4em}.monaco-editor .suggest-insert-unexpected{font-style:italic}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar{visibility:visible}.monaco-editor .suggest-widget.with-status-bar>.tree{margin-bottom:18px}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar span{min-height:18px}.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused>.contents>.main>.right:not(.always-show-details)>.readMore,.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:100%}@font-face{font-family:codicon;src:url(/assets/fonts/codicon.a609dc0f.ttf) format("truetype")}.codicon[class*=codicon-]{font:normal normal normal 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.codicon-add:before,.codicon-gist-new:before,.codicon-plus:before,.codicon-repo-create:before{content:"\ea60"}.codicon-light-bulb:before,.codicon-lightbulb:before{content:"\ea61"}.codicon-repo-delete:before,.codicon-repo:before{content:"\ea62"}.codicon-gist-fork:before,.codicon-repo-forked:before{content:"\ea63"}.codicon-git-pull-request-abandoned:before,.codicon-git-pull-request:before{content:"\ea64"}.codicon-keyboard:before,.codicon-record-keys:before{content:"\ea65"}.codicon-tag-add:before,.codicon-tag-remove:before,.codicon-tag:before{content:"\ea66"}.codicon-person-add:before,.codicon-person-filled:before,.codicon-person-follow:before,.codicon-person-outline:before,.codicon-person:before{content:"\ea67"}.codicon-git-branch-create:before,.codicon-git-branch-delete:before,.codicon-git-branch:before,.codicon-source-control:before{content:"\ea68"}.codicon-mirror-public:before,.codicon-mirror:before{content:"\ea69"}.codicon-star-add:before,.codicon-star-delete:before,.codicon-star-empty:before,.codicon-star:before{content:"\ea6a"}.codicon-comment-add:before,.codicon-comment:before{content:"\ea6b"}.codicon-alert:before,.codicon-warning:before{content:"\ea6c"}.codicon-search-save:before,.codicon-search:before{content:"\ea6d"}.codicon-log-out:before,.codicon-sign-out:before{content:"\ea6e"}.codicon-log-in:before,.codicon-sign-in:before{content:"\ea6f"}.codicon-eye-unwatch:before,.codicon-eye-watch:before,.codicon-eye:before{content:"\ea70"}.codicon-circle-filled:before,.codicon-close-dirty:before,.codicon-debug-breakpoint-disabled:before,.codicon-debug-breakpoint:before,.codicon-debug-hint:before,.codicon-primitive-dot:before{content:"\ea71"}.codicon-primitive-square:before{content:"\ea72"}.codicon-edit:before,.codicon-pencil:before{content:"\ea73"}.codicon-info:before,.codicon-issue-opened:before{content:"\ea74"}.codicon-gist-private:before,.codicon-git-fork-private:before,.codicon-lock:before,.codicon-mirror-private:before{content:"\ea75"}.codicon-close:before,.codicon-remove-close:before,.codicon-x:before{content:"\ea76"}.codicon-repo-sync:before,.codicon-sync:before{content:"\ea77"}.codicon-clone:before,.codicon-desktop-download:before{content:"\ea78"}.codicon-beaker:before,.codicon-microscope:before{content:"\ea79"}.codicon-device-desktop:before,.codicon-vm:before{content:"\ea7a"}.codicon-file-text:before,.codicon-file:before{content:"\ea7b"}.codicon-ellipsis:before,.codicon-kebab-horizontal:before,.codicon-more:before{content:"\ea7c"}.codicon-mail-reply:before,.codicon-reply:before{content:"\ea7d"}.codicon-organization-filled:before,.codicon-organization-outline:before,.codicon-organization:before{content:"\ea7e"}.codicon-file-add:before,.codicon-new-file:before{content:"\ea7f"}.codicon-file-directory-create:before,.codicon-new-folder:before{content:"\ea80"}.codicon-trash:before,.codicon-trashcan:before{content:"\ea81"}.codicon-clock:before,.codicon-history:before{content:"\ea82"}.codicon-file-directory:before,.codicon-folder:before,.codicon-symbol-folder:before{content:"\ea83"}.codicon-github:before,.codicon-logo-github:before,.codicon-mark-github:before{content:"\ea84"}.codicon-console:before,.codicon-repl:before,.codicon-terminal:before{content:"\ea85"}.codicon-symbol-event:before,.codicon-zap:before{content:"\ea86"}.codicon-error:before,.codicon-stop:before{content:"\ea87"}.codicon-symbol-variable:before,.codicon-variable:before{content:"\ea88"}.codicon-array:before,.codicon-symbol-array:before{content:"\ea8a"}.codicon-symbol-module:before,.codicon-symbol-namespace:before,.codicon-symbol-object:before,.codicon-symbol-package:before{content:"\ea8b"}.codicon-symbol-constructor:before,.codicon-symbol-function:before,.codicon-symbol-method:before{content:"\ea8c"}.codicon-symbol-boolean:before,.codicon-symbol-null:before{content:"\ea8f"}.codicon-symbol-number:before,.codicon-symbol-numeric:before{content:"\ea90"}.codicon-symbol-struct:before,.codicon-symbol-structure:before{content:"\ea91"}.codicon-symbol-parameter:before,.codicon-symbol-type-parameter:before{content:"\ea92"}.codicon-symbol-key:before,.codicon-symbol-text:before{content:"\ea93"}.codicon-go-to-file:before,.codicon-symbol-reference:before{content:"\ea94"}.codicon-symbol-enum:before,.codicon-symbol-value:before{content:"\ea95"}.codicon-symbol-ruler:before,.codicon-symbol-unit:before{content:"\ea96"}.codicon-activate-breakpoints:before{content:"\ea97"}.codicon-archive:before{content:"\ea98"}.codicon-arrow-both:before{content:"\ea99"}.codicon-arrow-down:before{content:"\ea9a"}.codicon-arrow-left:before{content:"\ea9b"}.codicon-arrow-right:before{content:"\ea9c"}.codicon-arrow-small-down:before{content:"\ea9d"}.codicon-arrow-small-left:before{content:"\ea9e"}.codicon-arrow-small-right:before{content:"\ea9f"}.codicon-arrow-small-up:before{content:"\eaa0"}.codicon-arrow-up:before{content:"\eaa1"}.codicon-bell:before{content:"\eaa2"}.codicon-bold:before{content:"\eaa3"}.codicon-book:before{content:"\eaa4"}.codicon-bookmark:before{content:"\eaa5"}.codicon-debug-breakpoint-conditional-unverified:before{content:"\eaa6"}.codicon-debug-breakpoint-conditional-disabled:before,.codicon-debug-breakpoint-conditional:before{content:"\eaa7"}.codicon-debug-breakpoint-data-unverified:before{content:"\eaa8"}.codicon-debug-breakpoint-data-disabled:before,.codicon-debug-breakpoint-data:before{content:"\eaa9"}.codicon-debug-breakpoint-log-unverified:before{content:"\eaaa"}.codicon-debug-breakpoint-log-disabled:before,.codicon-debug-breakpoint-log:before{content:"\eaab"}.codicon-briefcase:before{content:"\eaac"}.codicon-broadcast:before{content:"\eaad"}.codicon-browser:before{content:"\eaae"}.codicon-bug:before{content:"\eaaf"}.codicon-calendar:before{content:"\eab0"}.codicon-case-sensitive:before{content:"\eab1"}.codicon-check:before{content:"\eab2"}.codicon-checklist:before{content:"\eab3"}.codicon-chevron-down:before{content:"\eab4"}.codicon-chevron-left:before{content:"\eab5"}.codicon-chevron-right:before{content:"\eab6"}.codicon-chevron-up:before{content:"\eab7"}.codicon-chrome-close:before{content:"\eab8"}.codicon-chrome-maximize:before{content:"\eab9"}.codicon-chrome-minimize:before{content:"\eaba"}.codicon-chrome-restore:before{content:"\eabb"}.codicon-circle-outline:before,.codicon-debug-breakpoint-unverified:before{content:"\eabc"}.codicon-circle-slash:before{content:"\eabd"}.codicon-circuit-board:before{content:"\eabe"}.codicon-clear-all:before{content:"\eabf"}.codicon-clippy:before{content:"\eac0"}.codicon-close-all:before{content:"\eac1"}.codicon-cloud-download:before{content:"\eac2"}.codicon-cloud-upload:before{content:"\eac3"}.codicon-code:before{content:"\eac4"}.codicon-collapse-all:before{content:"\eac5"}.codicon-color-mode:before{content:"\eac6"}.codicon-comment-discussion:before{content:"\eac7"}.codicon-compare-changes:before{content:"\eac8"}.codicon-credit-card:before{content:"\eac9"}.codicon-dash:before{content:"\eacc"}.codicon-dashboard:before{content:"\eacd"}.codicon-database:before{content:"\eace"}.codicon-debug-continue:before{content:"\eacf"}.codicon-debug-disconnect:before{content:"\ead0"}.codicon-debug-pause:before{content:"\ead1"}.codicon-debug-restart:before{content:"\ead2"}.codicon-debug-start:before{content:"\ead3"}.codicon-debug-step-into:before{content:"\ead4"}.codicon-debug-step-out:before{content:"\ead5"}.codicon-debug-step-over:before{content:"\ead6"}.codicon-debug-stop:before{content:"\ead7"}.codicon-debug:before{content:"\ead8"}.codicon-device-camera-video:before{content:"\ead9"}.codicon-device-camera:before{content:"\eada"}.codicon-device-mobile:before{content:"\eadb"}.codicon-diff-added:before{content:"\eadc"}.codicon-diff-ignored:before{content:"\eadd"}.codicon-diff-modified:before{content:"\eade"}.codicon-diff-removed:before{content:"\eadf"}.codicon-diff-renamed:before{content:"\eae0"}.codicon-diff:before{content:"\eae1"}.codicon-discard:before{content:"\eae2"}.codicon-editor-layout:before{content:"\eae3"}.codicon-empty-window:before{content:"\eae4"}.codicon-exclude:before{content:"\eae5"}.codicon-extensions:before{content:"\eae6"}.codicon-eye-closed:before{content:"\eae7"}.codicon-file-binary:before{content:"\eae8"}.codicon-file-code:before{content:"\eae9"}.codicon-file-media:before{content:"\eaea"}.codicon-file-pdf:before{content:"\eaeb"}.codicon-file-submodule:before{content:"\eaec"}.codicon-file-symlink-directory:before{content:"\eaed"}.codicon-file-symlink-file:before{content:"\eaee"}.codicon-file-zip:before{content:"\eaef"}.codicon-files:before{content:"\eaf0"}.codicon-filter:before{content:"\eaf1"}.codicon-flame:before{content:"\eaf2"}.codicon-fold-down:before{content:"\eaf3"}.codicon-fold-up:before{content:"\eaf4"}.codicon-fold:before{content:"\eaf5"}.codicon-folder-active:before{content:"\eaf6"}.codicon-folder-opened:before{content:"\eaf7"}.codicon-gear:before{content:"\eaf8"}.codicon-gift:before{content:"\eaf9"}.codicon-gist-secret:before{content:"\eafa"}.codicon-gist:before{content:"\eafb"}.codicon-git-commit:before{content:"\eafc"}.codicon-git-compare:before{content:"\eafd"}.codicon-git-merge:before{content:"\eafe"}.codicon-github-action:before{content:"\eaff"}.codicon-github-alt:before{content:"\eb00"}.codicon-globe:before{content:"\eb01"}.codicon-grabber:before{content:"\eb02"}.codicon-graph:before{content:"\eb03"}.codicon-gripper:before{content:"\eb04"}.codicon-heart:before{content:"\eb05"}.codicon-home:before{content:"\eb06"}.codicon-horizontal-rule:before{content:"\eb07"}.codicon-hubot:before{content:"\eb08"}.codicon-inbox:before{content:"\eb09"}.codicon-issue-closed:before{content:"\eb0a"}.codicon-issue-reopened:before{content:"\eb0b"}.codicon-issues:before{content:"\eb0c"}.codicon-italic:before{content:"\eb0d"}.codicon-jersey:before{content:"\eb0e"}.codicon-json:before{content:"\eb0f"}.codicon-kebab-vertical:before{content:"\eb10"}.codicon-key:before{content:"\eb11"}.codicon-law:before{content:"\eb12"}.codicon-lightbulb-autofix:before{content:"\eb13"}.codicon-link-external:before{content:"\eb14"}.codicon-link:before{content:"\eb15"}.codicon-list-ordered:before{content:"\eb16"}.codicon-list-unordered:before{content:"\eb17"}.codicon-live-share:before{content:"\eb18"}.codicon-loading:before{content:"\eb19"}.codicon-location:before{content:"\eb1a"}.codicon-mail-read:before{content:"\eb1b"}.codicon-mail:before{content:"\eb1c"}.codicon-markdown:before{content:"\eb1d"}.codicon-megaphone:before{content:"\eb1e"}.codicon-mention:before{content:"\eb1f"}.codicon-milestone:before{content:"\eb20"}.codicon-mortar-board:before{content:"\eb21"}.codicon-move:before{content:"\eb22"}.codicon-multiple-windows:before{content:"\eb23"}.codicon-mute:before{content:"\eb24"}.codicon-no-newline:before{content:"\eb25"}.codicon-note:before{content:"\eb26"}.codicon-octoface:before{content:"\eb27"}.codicon-open-preview:before{content:"\eb28"}.codicon-package:before{content:"\eb29"}.codicon-paintcan:before{content:"\eb2a"}.codicon-pin:before{content:"\eb2b"}.codicon-play:before{content:"\eb2c"}.codicon-plug:before{content:"\eb2d"}.codicon-preserve-case:before{content:"\eb2e"}.codicon-preview:before{content:"\eb2f"}.codicon-project:before{content:"\eb30"}.codicon-pulse:before{content:"\eb31"}.codicon-question:before{content:"\eb32"}.codicon-quote:before{content:"\eb33"}.codicon-radio-tower:before{content:"\eb34"}.codicon-reactions:before{content:"\eb35"}.codicon-references:before{content:"\eb36"}.codicon-refresh:before{content:"\eb37"}.codicon-regex:before{content:"\eb38"}.codicon-remote-explorer:before{content:"\eb39"}.codicon-remote:before{content:"\eb3a"}.codicon-remove:before{content:"\eb3b"}.codicon-replace-all:before{content:"\eb3c"}.codicon-replace:before{content:"\eb3d"}.codicon-repo-clone:before{content:"\eb3e"}.codicon-repo-force-push:before{content:"\eb3f"}.codicon-repo-pull:before{content:"\eb40"}.codicon-repo-push:before{content:"\eb41"}.codicon-report:before{content:"\eb42"}.codicon-request-changes:before{content:"\eb43"}.codicon-rocket:before{content:"\eb44"}.codicon-root-folder-opened:before{content:"\eb45"}.codicon-root-folder:before{content:"\eb46"}.codicon-rss:before{content:"\eb47"}.codicon-ruby:before{content:"\eb48"}.codicon-save-all:before{content:"\eb49"}.codicon-save-as:before{content:"\eb4a"}.codicon-save:before{content:"\eb4b"}.codicon-screen-full:before{content:"\eb4c"}.codicon-screen-normal:before{content:"\eb4d"}.codicon-search-stop:before{content:"\eb4e"}.codicon-server:before{content:"\eb50"}.codicon-settings-gear:before{content:"\eb51"}.codicon-settings:before{content:"\eb52"}.codicon-shield:before{content:"\eb53"}.codicon-smiley:before{content:"\eb54"}.codicon-sort-precedence:before{content:"\eb55"}.codicon-split-horizontal:before{content:"\eb56"}.codicon-split-vertical:before{content:"\eb57"}.codicon-squirrel:before{content:"\eb58"}.codicon-star-full:before{content:"\eb59"}.codicon-star-half:before{content:"\eb5a"}.codicon-symbol-class:before{content:"\eb5b"}.codicon-symbol-color:before{content:"\eb5c"}.codicon-symbol-constant:before{content:"\eb5d"}.codicon-symbol-enum-member:before{content:"\eb5e"}.codicon-symbol-field:before{content:"\eb5f"}.codicon-symbol-file:before{content:"\eb60"}.codicon-symbol-interface:before{content:"\eb61"}.codicon-symbol-keyword:before{content:"\eb62"}.codicon-symbol-misc:before{content:"\eb63"}.codicon-symbol-operator:before{content:"\eb64"}.codicon-symbol-property:before{content:"\eb65"}.codicon-symbol-snippet:before{content:"\eb66"}.codicon-tasklist:before{content:"\eb67"}.codicon-telescope:before{content:"\eb68"}.codicon-text-size:before{content:"\eb69"}.codicon-three-bars:before{content:"\eb6a"}.codicon-thumbsdown:before{content:"\eb6b"}.codicon-thumbsup:before{content:"\eb6c"}.codicon-tools:before{content:"\eb6d"}.codicon-triangle-down:before{content:"\eb6e"}.codicon-triangle-left:before{content:"\eb6f"}.codicon-triangle-right:before{content:"\eb70"}.codicon-triangle-up:before{content:"\eb71"}.codicon-twitter:before{content:"\eb72"}.codicon-unfold:before{content:"\eb73"}.codicon-unlock:before{content:"\eb74"}.codicon-unmute:before{content:"\eb75"}.codicon-unverified:before{content:"\eb76"}.codicon-verified:before{content:"\eb77"}.codicon-versions:before{content:"\eb78"}.codicon-vm-active:before{content:"\eb79"}.codicon-vm-outline:before{content:"\eb7a"}.codicon-vm-running:before{content:"\eb7b"}.codicon-watch:before{content:"\eb7c"}.codicon-whitespace:before{content:"\eb7d"}.codicon-whole-word:before{content:"\eb7e"}.codicon-window:before{content:"\eb7f"}.codicon-word-wrap:before{content:"\eb80"}.codicon-zoom-in:before{content:"\eb81"}.codicon-zoom-out:before{content:"\eb82"}.codicon-list-filter:before{content:"\eb83"}.codicon-list-flat:before{content:"\eb84"}.codicon-list-selection:before,.codicon-selection:before{content:"\eb85"}.codicon-list-tree:before{content:"\eb86"}.codicon-debug-breakpoint-function-unverified:before{content:"\eb87"}.codicon-debug-breakpoint-function-disabled:before,.codicon-debug-breakpoint-function:before{content:"\eb88"}.codicon-debug-stackframe-active:before{content:"\eb89"}.codicon-debug-stackframe-dot:before{content:"\eb8a"}.codicon-debug-stackframe-focused:before,.codicon-debug-stackframe:before{content:"\eb8b"}.codicon-debug-breakpoint-unsupported:before{content:"\eb8c"}.codicon-symbol-string:before{content:"\eb8d"}.codicon-debug-reverse-continue:before{content:"\eb8e"}.codicon-debug-step-back:before{content:"\eb8f"}.codicon-debug-restart-frame:before{content:"\eb90"}.codicon-debug-alternate:before{content:"\eb91"}.codicon-call-incoming:before{content:"\eb92"}.codicon-call-outgoing:before{content:"\eb93"}.codicon-menu:before{content:"\eb94"}.codicon-expand-all:before{content:"\eb95"}.codicon-feedback:before{content:"\eb96"}.codicon-group-by-ref-type:before{content:"\eb97"}.codicon-ungroup-by-ref-type:before{content:"\eb98"}.codicon-debug-alt:before{content:"\f101"}@-webkit-keyframes codicon-spin{to{transform:rotate(1turn)}}@keyframes codicon-spin{to{transform:rotate(1turn)}}.codicon-animation-spin{-webkit-animation:codicon-spin 1.5s linear infinite;animation:codicon-spin 1.5s linear infinite}.monaco-list .monaco-list-row.focused.selected .outline-element-decoration,.monaco-list .monaco-list-row.focused.selected .outline-element .monaco-highlighted-label{color:inherit!important}.monaco-list .outline-element{display:flex;flex:1;flex-flow:row nowrap;align-items:center}.monaco-list .outline-element .monaco-highlighted-label{color:var(--outline-element-color)}.monaco-tree .monaco-tree-row.focused .outline-element .outline-element-detail{visibility:inherit}.monaco-list .outline-element .outline-element-decoration{opacity:.75;font-size:90%;font-weight:600;padding:0 12px 0 5px;margin-left:auto;text-align:center;color:var(--outline-element-color)}.monaco-list .outline-element .outline-element-decoration.bubble{font-family:codicon;font-size:14px;opacity:.4}.monaco-list .outline-element .outline-element-icon{margin-right:4px}.monaco-icon-label.deprecated{text-decoration:line-through;opacity:.66}.monaco-editor .accessibilityHelpWidget{padding:10px;vertical-align:middle;overflow:scroll}.monaco-editor .iPadShowKeyboard{width:58px;min-width:0;height:36px;min-height:0;margin:0;padding:0;position:absolute;resize:none;overflow:hidden;background:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00OC4wMzYgNC4wMUg0LjAwOFYzMi4wM2g0NC4wMjhWNC4wMXpNNC4wMDguMDA4QTQuMDAzIDQuMDAzIDAgMDAuMDA1IDQuMDFWMzIuMDNhNC4wMDMgNC4wMDMgMCAwMDQuMDAzIDQuMDAyaDQ0LjAyOGE0LjAwMyA0LjAwMyAwIDAwNC4wMDMtNC4wMDJWNC4wMUE0LjAwMyA0LjAwMyAwIDAwNDguMDM2LjAwOEg0LjAwOHpNOC4wMSA4LjAxM2g0LjAwM3Y0LjAwM0g4LjAxVjguMDEzem0xMi4wMDggMGgtNC4wMDJ2NC4wMDNoNC4wMDJWOC4wMTN6bTQuMDAzIDBoNC4wMDJ2NC4wMDNoLTQuMDAyVjguMDEzem0xMi4wMDggMGgtNC4wMDN2NC4wMDNoNC4wMDNWOC4wMTN6bTQuMDAyIDBoNC4wMDN2NC4wMDNINDAuMDNWOC4wMTN6bS0yNC4wMTUgOC4wMDVIOC4wMXY0LjAwM2g4LjAwNnYtNC4wMDN6bTQuMDAyIDBoNC4wMDN2NC4wMDNoLTQuMDAzdi00LjAwM3ptMTIuMDA4IDBoLTQuMDAzdjQuMDAzaDQuMDAzdi00LjAwM3ptMTIuMDA4IDB2NC4wMDNoLTguMDA1di00LjAwM2g4LjAwNXptLTMyLjAyMSA4LjAwNUg4LjAxdjQuMDAzaDQuMDAzdi00LjAwM3ptNC4wMDMgMGgyMC4wMTN2NC4wMDNIMTYuMDE2di00LjAwM3ptMjguMDE4IDBINDAuMDN2NC4wMDNoNC4wMDN2LTQuMDAzeiIgZmlsbD0iIzQyNDI0MiIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImNsaXAwIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUzdjM2SDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+") 50% no-repeat;border:4px solid #f6f6f6;border-radius:4px}.monaco-editor.vs-dark .iPadShowKeyboard{background:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00OC4wMzYgNC4wMUg0LjAwOFYzMi4wM2g0NC4wMjhWNC4wMXpNNC4wMDguMDA4QTQuMDAzIDQuMDAzIDAgMDAuMDA1IDQuMDFWMzIuMDNhNC4wMDMgNC4wMDMgMCAwMDQuMDAzIDQuMDAyaDQ0LjAyOGE0LjAwMyA0LjAwMyAwIDAwNC4wMDMtNC4wMDJWNC4wMUE0LjAwMyA0LjAwMyAwIDAwNDguMDM2LjAwOEg0LjAwOHpNOC4wMSA4LjAxM2g0LjAwM3Y0LjAwM0g4LjAxVjguMDEzem0xMi4wMDggMGgtNC4wMDJ2NC4wMDNoNC4wMDJWOC4wMTN6bTQuMDAzIDBoNC4wMDJ2NC4wMDNoLTQuMDAyVjguMDEzem0xMi4wMDggMGgtNC4wMDN2NC4wMDNoNC4wMDNWOC4wMTN6bTQuMDAyIDBoNC4wMDN2NC4wMDNINDAuMDNWOC4wMTN6bS0yNC4wMTUgOC4wMDVIOC4wMXY0LjAwM2g4LjAwNnYtNC4wMDN6bTQuMDAyIDBoNC4wMDN2NC4wMDNoLTQuMDAzdi00LjAwM3ptMTIuMDA4IDBoLTQuMDAzdjQuMDAzaDQuMDAzdi00LjAwM3ptMTIuMDA4IDB2NC4wMDNoLTguMDA1di00LjAwM2g4LjAwNXptLTMyLjAyMSA4LjAwNUg4LjAxdjQuMDAzaDQuMDAzdi00LjAwM3ptNC4wMDMgMGgyMC4wMTN2NC4wMDNIMTYuMDE2di00LjAwM3ptMjguMDE4IDBINDAuMDN2NC4wMDNoNC4wMDN2LTQuMDAzeiIgZmlsbD0iI0M1QzVDNSIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImNsaXAwIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUzdjM2SDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+") 50% no-repeat;border:4px solid #252526}.monaco-editor .tokens-inspect-widget{z-index:50;-moz-user-select:text;user-select:text;-webkit-user-select:text;-ms-user-select:text;padding:10px}.tokens-inspect-separator{height:1px;border:0}.monaco-editor .tokens-inspect-widget .tm-token{font-family:monospace}.monaco-editor .tokens-inspect-widget .tm-token-length{font-weight:400;font-size:60%;float:right}.monaco-editor .tokens-inspect-widget .tm-metadata-table{width:100%}.monaco-editor .tokens-inspect-widget .tm-metadata-value{font-family:monospace;text-align:right}.monaco-editor .tokens-inspect-widget .tm-token-type{font-family:monospace}.monaco-keybinding{display:flex;align-items:center;line-height:10px}.monaco-keybinding>.monaco-keybinding-key{display:inline-block;border:1px solid hsla(0,0%,80%,.4);border-bottom-color:hsla(0,0%,73.3%,.4);border-radius:3px;box-shadow:inset 0 -1px 0 hsla(0,0%,73.3%,.4);background-color:hsla(0,0%,86.7%,.4);vertical-align:middle;color:#555;font-size:11px;padding:3px 5px;margin:0 2px}.monaco-keybinding>.monaco-keybinding-key:first-child{margin-left:0}.monaco-keybinding>.monaco-keybinding-key:last-child{margin-right:0}.hc-black .monaco-keybinding>.monaco-keybinding-key,.vs-dark .monaco-keybinding>.monaco-keybinding-key{background-color:hsla(0,0%,50.2%,.17);color:#ccc;border:1px solid rgba(51,51,51,.6);border-bottom-color:rgba(68,68,68,.6);box-shadow:inset 0 -1px 0 rgba(68,68,68,.6)}.monaco-keybinding>.monaco-keybinding-key-separator{display:inline-block}.monaco-keybinding>.monaco-keybinding-key-chord-separator{width:6px}.monaco-quick-open-widget .monaco-list .monaco-list-row .monaco-highlighted-label .highlight,.monaco-quick-open-widget .monaco-tree .monaco-tree-row .monaco-highlighted-label .highlight{color:#0066bf}.vs-dark .monaco-quick-open-widget .monaco-list .monaco-list-row .monaco-highlighted-label .highlight,.vs-dark .monaco-quick-open-widget .monaco-tree .monaco-tree-row .monaco-highlighted-label .highlight{color:#0097fb}.hc-black .monaco-quick-open-widget .monaco-list .monaco-list-row .monaco-highlighted-label .highlight,.hc-black .monaco-quick-open-widget .monaco-tree .monaco-tree-row .monaco-highlighted-label .highlight{color:#f38518}.monaco-quick-open-widget{position:absolute;width:600px;z-index:2000;padding-bottom:6px;left:50%;margin-left:-300px}.monaco-quick-open-widget .monaco-progress-container{position:absolute;left:0;top:38px;z-index:1;height:2px}.monaco-quick-open-widget .monaco-progress-container .progress-bit{height:2px}.monaco-quick-open-widget .quick-open-input{width:588px;border:none;margin:6px}.monaco-quick-open-widget .quick-open-input .monaco-inputbox{width:100%;height:25px}.monaco-quick-open-widget .quick-open-result-count{position:absolute;left:-10000px}.monaco-quick-open-widget .quick-open-tree{line-height:22px}.monaco-quick-open-widget .quick-open-tree .monaco-tree-row>.content>.sub-content{overflow:hidden}.monaco-quick-open-widget.content-changing .quick-open-tree .monaco-scrollable-element .slider{display:none}.monaco-quick-open-widget .quick-open-tree .quick-open-entry{overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;height:100%}.monaco-quick-open-widget .quick-open-tree .quick-open-entry>.quick-open-row{display:flex;align-items:center}.monaco-quick-open-widget .quick-open-tree .quick-open-entry .quick-open-entry-icon{overflow:hidden;width:16px;height:16px;margin-right:4px;display:flex;align-items:center;vertical-align:middle;flex-shrink:0}.monaco-quick-open-widget .quick-open-tree .monaco-icon-label,.monaco-quick-open-widget .quick-open-tree .monaco-icon-label .monaco-icon-label-container>.monaco-icon-name-container{flex:1}.monaco-quick-open-widget .quick-open-tree .quick-open-entry .monaco-highlighted-label span{opacity:1}.monaco-quick-open-widget .quick-open-tree .quick-open-entry .monaco-highlighted-label .codicon{vertical-align:sub}.monaco-quick-open-widget .quick-open-tree .quick-open-entry-meta{opacity:.7;line-height:normal}.monaco-quick-open-widget .quick-open-tree .content.has-group-label .quick-open-entry-keybinding{margin-right:8px}.monaco-quick-open-widget .quick-open-tree .quick-open-entry-keybinding .monaco-keybinding-key{vertical-align:text-bottom}.monaco-quick-open-widget .quick-open-tree .results-group{margin-right:18px}.monaco-quick-open-widget .quick-open-tree .focused .monaco-tree-row.focused>.content.has-actions>.results-group,.monaco-quick-open-widget .quick-open-tree .monaco-tree-row.focused>.content.has-actions>.results-group,.monaco-quick-open-widget .quick-open-tree .monaco-tree-row:hover:not(.highlighted)>.content.has-actions>.results-group{margin-right:0}.monaco-quick-open-widget .quick-open-tree .results-group-separator{border-top-width:1px;border-top-style:solid;box-sizing:border-box;margin-left:-11px;padding-left:11px}.monaco-tree .monaco-tree-row>.content.actions{position:relative;display:flex}.monaco-tree .monaco-tree-row>.content.actions>.sub-content{flex:1}.monaco-tree .monaco-tree-row>.content.actions .action-item{margin:0}.monaco-tree .monaco-tree-row>.content.actions>.primary-action-bar{line-height:22px;display:none;padding:0 .8em 0 .4em}.monaco-tree .monaco-tree-row.focused>.content.has-actions>.primary-action-bar{width:0;display:block}.monaco-tree.focused .monaco-tree-row.focused>.content.has-actions>.primary-action-bar,.monaco-tree .monaco-tree-row:hover:not(.highlighted)>.content.has-actions>.primary-action-bar,.monaco-tree .monaco-tree-row>.content.has-actions.more>.primary-action-bar{width:inherit;display:block}.monaco-tree .monaco-tree-row>.content.actions>.primary-action-bar .action-label{margin-right:.4em;margin-top:4px;background-repeat:no-repeat;width:16px;height:16px}.monaco-quick-open-widget .quick-open-tree .monaco-highlighted-label .highlight{font-weight:700}.monaco-tree{height:100%;width:100%;white-space:nowrap;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none;position:relative}.monaco-tree>.monaco-scrollable-element{height:100%}.monaco-tree>.monaco-scrollable-element>.monaco-tree-wrapper{height:100%;width:100%;position:relative}.monaco-tree .monaco-tree-rows{position:absolute;width:100%;height:100%}.monaco-tree .monaco-tree-rows>.monaco-tree-row{box-sizing:border-box;cursor:pointer;overflow:hidden;width:100%;touch-action:none}.monaco-tree .monaco-tree-rows>.monaco-tree-row>.content{position:relative;height:100%}.monaco-tree-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute}.monaco-tree .monaco-tree-rows>.monaco-tree-row.scrolling{display:none}.monaco-tree.highlighted .monaco-tree-rows>.monaco-tree-row:not(.highlighted){opacity:.3}.monaco-progress-container{width:100%;height:5px;overflow:hidden}.monaco-progress-container .progress-bit{width:2%;height:5px;position:absolute;left:0;display:none}.monaco-progress-container.active .progress-bit{display:inherit}.monaco-progress-container.discrete .progress-bit{left:0;transition:width .1s linear}.monaco-progress-container.discrete.done .progress-bit{width:100%}.monaco-progress-container.infinite .progress-bit{-webkit-animation-name:progress;animation-name:progress;-webkit-animation-duration:4s;animation-duration:4s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-timing-function:linear;animation-timing-function:linear;transform:translateZ(0)}@-webkit-keyframes progress{0%{transform:translateX(0) scaleX(1)}50%{transform:translateX(2500%) scaleX(3)}to{transform:translateX(4950%) scaleX(1)}}@keyframes progress{0%{transform:translateX(0) scaleX(1)}50%{transform:translateX(2500%) scaleX(3)}to{transform:translateX(4950%) scaleX(1)}}.monaco-quick-open-widget{font-size:13px}.red[data-v-390b0b18]{color:#ee6680}.wrapper[data-v-390b0b18]{display:grid;grid-template-columns:1fr}.editor-wrapper[data-v-390b0b18]{margin-top:40px;border:2px solid #eee;display:grid;grid-template-columns:1.5fr 1fr;grid-template-rows:1fr 50px;box-shadow:inset 0 0 10px #eee;padding:3px}.button-wrapper[data-v-390b0b18]{border-top:2px solid #eee;padding:15px;grid-row:2;grid-column:1/3;justify-content:center;align-items:center}.run-button[data-v-390b0b18]{background-color:#ee6680;color:#fff;border:1px solid #ee6680;padding:5px 15px;cursor:pointer;font-weight:700}.output-shell[data-v-390b0b18]{padding:20px;background:#333;color:rgb(253 255 0/80%);border-radius:5px;overflow-y:scroll;margin-right:10px;font-size:12px;height:120px;overflow-x:hidden;overflow-y:hidden}.results[data-v-390b0b18]{display:grid;grid-template-rows:20px 1fr 20px 1fr;row-gap:5px}.results h4[data-v-390b0b18]{margin:0}pre[data-v-390b0b18]{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}.badge[data-v-15b7b770]{display:inline-block;font-size:14px;height:18px;line-height:18px;border-radius:3px;padding:0 6px;color:#fff}.badge.green[data-v-15b7b770],.badge.tip[data-v-15b7b770],.badge[data-v-15b7b770]{background-color:#42b983}.badge.error[data-v-15b7b770]{background-color:#da5961}.badge.warn[data-v-15b7b770],.badge.warning[data-v-15b7b770],.badge.yellow[data-v-15b7b770]{background-color:#e7c000}.badge+.badge[data-v-15b7b770]{margin-left:5px}.theme-code-group__nav[data-v-deefee04]{margin-bottom:-35px;background-color:#282c34;padding-bottom:22px;border-top-left-radius:6px;border-top-right-radius:6px;padding-left:10px;padding-top:10px}.theme-code-group__ul[data-v-deefee04]{margin:auto 0;padding-left:0;display:inline-flex;list-style:none}.theme-code-group__nav-tab[data-v-deefee04]{border:0;padding:5px;cursor:pointer;background-color:transparent;font-size:.85em;line-height:1.4;color:hsla(0,0%,100%,.9);font-weight:600}.theme-code-group__nav-tab-active[data-v-deefee04]{border-bottom:1px solid #42b983}.pre-blank[data-v-deefee04]{color:#42b983}.theme-code-block[data-v-759a7d02]{display:none}.theme-code-block__active[data-v-759a7d02]{display:block}.theme-code-block>pre[data-v-759a7d02]{background-color:orange} \ No newline at end of file +code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.block-comment,.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#999}.token.punctuation{color:#ccc}.token.attr-name,.token.deleted,.token.namespace,.token.tag{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.function,.token.number{color:#f08d49}.token.class-name,.token.constant,.token.property,.token.symbol{color:#f8c555}.token.atrule,.token.builtin,.token.important,.token.keyword,.token.selector{color:#cc99cd}.token.attr-value,.token.char,.token.regex,.token.string,.token.variable{color:#7ec699}.token.entity,.token.operator,.token.url{color:#67cdcc}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}.theme-default-content code{color:#476582;padding:.25rem .5rem;margin:0;font-size:.85em;background-color:rgba(27,31,35,.05);border-radius:3px}.theme-default-content code .token.deleted,.theme-default-content code .token.inserted{color:#ec5975}.theme-default-content pre,.theme-default-content pre[class*=language-]{line-height:1.4;padding:1.25rem 1.5rem;margin:.85rem 0;background-color:#282c34;border-radius:6px;overflow:auto}.theme-default-content pre[class*=language-] code,.theme-default-content pre code{color:#fff;padding:0;background-color:transparent;border-radius:0}div[class*=language-]{position:relative;background-color:#282c34;border-radius:6px}div[class*=language-] .highlight-lines{-webkit-user-select:none;user-select:none;padding-top:1.3rem;position:absolute;top:0;left:0;width:100%;line-height:1.4}div[class*=language-] .highlight-lines .highlighted{background-color:rgba(0,0,0,.66)}div[class*=language-] pre,div[class*=language-] pre[class*=language-]{background:transparent;position:relative;z-index:1}div[class*=language-]:before{position:absolute;z-index:3;top:.8em;right:1em;font-size:.75rem;color:hsla(0,0%,100%,.4)}div[class*=language-]:not(.line-numbers-mode) .line-numbers-wrapper{display:none}div[class*=language-].line-numbers-mode .highlight-lines .highlighted{position:relative}div[class*=language-].line-numbers-mode .highlight-lines .highlighted:before{content:" ";position:absolute;z-index:3;left:0;top:0;display:block;width:3.5rem;height:100%;background-color:rgba(0,0,0,.66)}div[class*=language-].line-numbers-mode pre{padding-left:4.5rem;vertical-align:middle}div[class*=language-].line-numbers-mode .line-numbers-wrapper{position:absolute;top:0;width:3.5rem;text-align:center;color:hsla(0,0%,100%,.3);padding:1.25rem 0;line-height:1.4}div[class*=language-].line-numbers-mode .line-numbers-wrapper br{-webkit-user-select:none;user-select:none}div[class*=language-].line-numbers-mode .line-numbers-wrapper .line-number{position:relative;z-index:4;-webkit-user-select:none;user-select:none;font-size:.85em}div[class*=language-].line-numbers-mode:after{content:"";position:absolute;z-index:2;top:0;left:0;width:3.5rem;height:100%;border-radius:6px 0 0 6px;border-right:1px solid rgba(0,0,0,.66);background-color:#282c34}div[class~=language-js]:before{content:"js"}div[class~=language-ts]:before{content:"ts"}div[class~=language-html]:before{content:"html"}div[class~=language-md]:before{content:"md"}div[class~=language-vue]:before{content:"vue"}div[class~=language-css]:before{content:"css"}div[class~=language-sass]:before{content:"sass"}div[class~=language-scss]:before{content:"scss"}div[class~=language-less]:before{content:"less"}div[class~=language-stylus]:before{content:"stylus"}div[class~=language-go]:before{content:"go"}div[class~=language-java]:before{content:"java"}div[class~=language-c]:before{content:"c"}div[class~=language-sh]:before{content:"sh"}div[class~=language-yaml]:before{content:"yaml"}div[class~=language-py]:before{content:"py"}div[class~=language-docker]:before{content:"docker"}div[class~=language-dockerfile]:before{content:"dockerfile"}div[class~=language-makefile]:before{content:"makefile"}div[class~=language-javascript]:before{content:"js"}div[class~=language-typescript]:before{content:"ts"}div[class~=language-markup]:before{content:"html"}div[class~=language-markdown]:before{content:"md"}div[class~=language-json]:before{content:"json"}div[class~=language-ruby]:before{content:"rb"}div[class~=language-python]:before{content:"py"}div[class~=language-bash]:before{content:"sh"}div[class~=language-php]:before{content:"php"}.custom-block .custom-block-title{font-weight:600;margin-bottom:-.4rem}.custom-block.danger,.custom-block.tip,.custom-block.warning{padding:.1rem 1.5rem;border-left-width:.5rem;border-left-style:solid;margin:1rem 0}.custom-block.tip{background-color:#f3f5f7;border-color:#42b983}.custom-block.warning{background-color:rgba(255,229,100,.3);border-color:#e7c000;color:#6b5900}.custom-block.warning .custom-block-title{color:#b29400}.custom-block.warning a{color:#2c3e50}.custom-block.danger{background-color:#ffe6e6;border-color:#c00;color:#4d0000}.custom-block.danger .custom-block-title{color:#900}.custom-block.danger a{color:#2c3e50}.custom-block.details{display:block;position:relative;border-radius:2px;margin:1.6em 0;padding:1.6em;background-color:#eee}.custom-block.details h4{margin-top:0}.custom-block.details figure:last-child,.custom-block.details p:last-child{margin-bottom:0;padding-bottom:0}.custom-block.details summary{outline:none;cursor:pointer}.arrow{display:inline-block;width:0;height:0}.arrow.up{border-bottom:6px solid #ccc}.arrow.down,.arrow.up{border-left:4px solid transparent;border-right:4px solid transparent}.arrow.down{border-top:6px solid #ccc}.arrow.right{border-left:6px solid #ccc}.arrow.left,.arrow.right{border-top:4px solid transparent;border-bottom:4px solid transparent}.arrow.left{border-right:6px solid #ccc}.theme-default-content:not(.custom){max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.theme-default-content:not(.custom){padding:2rem}}@media (max-width:419px){.theme-default-content:not(.custom){padding:1.5rem}}.table-of-contents .badge{vertical-align:middle}body,html{padding:0;margin:0;background-color:#fff}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;color:#2c3e50}.page{padding-left:20rem}.navbar{z-index:20;right:0;height:3.6rem;background-color:#fff;box-sizing:border-box;border-bottom:1px solid #eaecef}.navbar,.sidebar-mask{position:fixed;top:0;left:0}.sidebar-mask{z-index:9;width:100vw;height:100vh;display:none}.sidebar{font-size:16px;background-color:#fff;width:20rem;position:fixed;z-index:10;margin:0;top:3.6rem;left:0;bottom:0;box-sizing:border-box;border-right:1px solid #eaecef;overflow-y:auto}.theme-default-content:not(.custom)>:first-child{margin-top:3.6rem}.theme-default-content:not(.custom) a:hover{text-decoration:underline}.theme-default-content:not(.custom) p.demo{padding:1rem 1.5rem;border:1px solid #ddd;border-radius:4px}.theme-default-content:not(.custom) img{max-width:100%}.theme-default-content.custom{padding:0;margin:0}.theme-default-content.custom img{max-width:100%}a{font-weight:500;text-decoration:none}a,p a code{color:#ec5975}p a code{font-weight:400}kbd{background:#eee;border:.15rem solid #ddd;border-bottom:.25rem solid #ddd;border-radius:.15rem;padding:0 .15em}blockquote{font-size:1rem;color:#999;border-left:.2rem solid #dfe2e5;margin:1rem 0;padding:.25rem 0 .25rem 1rem}blockquote>p{margin:0}ol,ul{padding-left:1.2em}strong{font-weight:600}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25}.theme-default-content:not(.custom)>h1,.theme-default-content:not(.custom)>h2,.theme-default-content:not(.custom)>h3,.theme-default-content:not(.custom)>h4,.theme-default-content:not(.custom)>h5,.theme-default-content:not(.custom)>h6{margin-top:-3.1rem;padding-top:4.6rem;margin-bottom:0}.theme-default-content:not(.custom)>h1:first-child,.theme-default-content:not(.custom)>h2:first-child,.theme-default-content:not(.custom)>h3:first-child,.theme-default-content:not(.custom)>h4:first-child,.theme-default-content:not(.custom)>h5:first-child,.theme-default-content:not(.custom)>h6:first-child{margin-top:-1.5rem;margin-bottom:1rem}.theme-default-content:not(.custom)>h1:first-child+.custom-block,.theme-default-content:not(.custom)>h1:first-child+p,.theme-default-content:not(.custom)>h1:first-child+pre,.theme-default-content:not(.custom)>h2:first-child+.custom-block,.theme-default-content:not(.custom)>h2:first-child+p,.theme-default-content:not(.custom)>h2:first-child+pre,.theme-default-content:not(.custom)>h3:first-child+.custom-block,.theme-default-content:not(.custom)>h3:first-child+p,.theme-default-content:not(.custom)>h3:first-child+pre,.theme-default-content:not(.custom)>h4:first-child+.custom-block,.theme-default-content:not(.custom)>h4:first-child+p,.theme-default-content:not(.custom)>h4:first-child+pre,.theme-default-content:not(.custom)>h5:first-child+.custom-block,.theme-default-content:not(.custom)>h5:first-child+p,.theme-default-content:not(.custom)>h5:first-child+pre,.theme-default-content:not(.custom)>h6:first-child+.custom-block,.theme-default-content:not(.custom)>h6:first-child+p,.theme-default-content:not(.custom)>h6:first-child+pre{margin-top:2rem}h1:focus .header-anchor,h1:hover .header-anchor,h2:focus .header-anchor,h2:hover .header-anchor,h3:focus .header-anchor,h3:hover .header-anchor,h4:focus .header-anchor,h4:hover .header-anchor,h5:focus .header-anchor,h5:hover .header-anchor,h6:focus .header-anchor,h6:hover .header-anchor{opacity:1}h1{font-size:2.2rem}h2{font-size:1.65rem;padding-bottom:.3rem;border-bottom:1px solid #eaecef}h3{font-size:1.35rem}a.header-anchor{font-size:.85em;float:left;margin-left:-.87em;padding-right:.23em;margin-top:.125em;opacity:0}a.header-anchor:focus,a.header-anchor:hover{text-decoration:none}.line-number,code,kbd{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}ol,p,ul{line-height:1.7}hr{border:0;border-top:1px solid #eaecef}table{border-collapse:collapse;margin:1rem 0;display:block;overflow-x:auto}tr{border-top:1px solid #dfe2e5}tr:nth-child(2n){background-color:#f6f8fa}td,th{border:1px solid #dfe2e5;padding:.6em 1em}.theme-container.sidebar-open .sidebar-mask{display:block}.theme-container.no-navbar .theme-default-content:not(.custom)>h1,.theme-container.no-navbar h2,.theme-container.no-navbar h3,.theme-container.no-navbar h4,.theme-container.no-navbar h5,.theme-container.no-navbar h6{margin-top:1.5rem;padding-top:0}.theme-container.no-navbar .sidebar{top:0}@media (min-width:720px){.theme-container.no-sidebar .sidebar{display:none}.theme-container.no-sidebar .page{padding-left:0}}@media (max-width:959px){.sidebar{font-size:15px;width:16.4rem}.page{padding-left:16.4rem}}@media (max-width:719px){.sidebar{top:0;padding-top:3.6rem;transform:translateX(-100%);transition:transform .2s ease}.page{padding-left:0}.theme-container.sidebar-open .sidebar{transform:translateX(0)}.theme-container.no-navbar .sidebar{padding-top:0}}@media (max-width:419px){h1{font-size:1.9rem}.theme-default-content div[class*=language-]{margin:.85rem -1.5rem;border-radius:0}}body{font-family:Inter,sans-serif;font-weight:500}.home .hero img{max-width:100%}@media (max-width:719px){.home .hero img{display:none!important}}.feature pre code,.output-shell,.theme-default-content code,.view-lines{font-family:Source Code Pro,sans-serif;font-size:.9em}#nprogress{pointer-events:none}#nprogress .bar{background:#ec5975;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;box-shadow:0 0 10px #ec5975,0 0 5px #ec5975;opacity:1;transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;box-sizing:border-box;border-color:#ec5975 transparent transparent #ec5975;border-style:solid;border-width:2px;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes nprogress-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes nprogress-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.icon.outbound{color:#aaa;display:inline-block;vertical-align:middle;position:relative;top:-1px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.home[data-v-60105dea]{padding:3.6rem 2rem 0;max-width:960px;margin:0 auto;display:block}.home .hero[data-v-60105dea]{text-align:center}.home .hero img[data-v-60105dea]{max-width:100%;max-height:280px;display:block;margin:3rem auto 1.5rem}.home .hero h1[data-v-60105dea]{font-size:3rem}.home .hero .action[data-v-60105dea],.home .hero .description[data-v-60105dea],.home .hero h1[data-v-60105dea]{margin:1.8rem auto}.home .hero .description[data-v-60105dea]{max-width:35rem;font-size:1.6rem;line-height:1.3;color:#6a8bad}.home .hero .action-button[data-v-60105dea]{display:inline-block;font-size:1.2rem;color:#fff;background-color:#ec5975;padding:.8rem 1.6rem;border-radius:4px;transition:background-color .1s ease;box-sizing:border-box;border-bottom:1px solid #e93c5d}.home .hero .action-button[data-v-60105dea]:hover{background-color:#ee6a83}.home .features[data-v-60105dea]{border-top:1px solid #eaecef;padding:1.2rem 0;margin-top:2.5rem;display:flex;flex-wrap:wrap;align-items:flex-start;align-content:stretch;justify-content:space-between}.home .feature[data-v-60105dea]{flex-grow:1;flex-basis:30%;max-width:30%}.home .feature h2[data-v-60105dea]{font-size:1.4rem;font-weight:500;border-bottom:none;padding-bottom:0;color:#3a5169}.home .feature p[data-v-60105dea]{color:#4e6e8e}.home .footer[data-v-60105dea]{padding:2.5rem;border-top:1px solid #eaecef;text-align:center;color:#4e6e8e}@media (max-width:719px){.home .features[data-v-60105dea]{flex-direction:column}.home .feature[data-v-60105dea]{max-width:100%;padding:0 2.5rem}}@media (max-width:419px){.home[data-v-60105dea]{padding-left:1.5rem;padding-right:1.5rem}.home .hero img[data-v-60105dea]{max-height:210px;margin:2rem auto 1.2rem}.home .hero h1[data-v-60105dea]{font-size:2rem}.home .hero .action[data-v-60105dea],.home .hero .description[data-v-60105dea],.home .hero h1[data-v-60105dea]{margin:1.2rem auto}.home .hero .description[data-v-60105dea]{font-size:1.2rem}.home .hero .action-button[data-v-60105dea]{font-size:1rem;padding:.6rem 1.2rem}.home .feature h2[data-v-60105dea]{font-size:1.25rem}}.search-box{display:inline-block;position:relative;margin-right:1rem}.search-box input{cursor:text;width:10rem;height:2rem;color:#4e6e8e;display:inline-block;border:1px solid #cfd4db;border-radius:2rem;font-size:.9rem;line-height:2rem;padding:0 .5rem 0 2rem;outline:none;transition:all .2s ease;background:#fff url(/assets/img/search.83621669.svg) .6rem .5rem no-repeat;background-size:1rem}.search-box input:focus{cursor:auto;border-color:#ec5975}.search-box .suggestions{background:#fff;width:20rem;position:absolute;top:2rem;border:1px solid #cfd4db;border-radius:6px;padding:.4rem;list-style-type:none}.search-box .suggestions.align-right{right:0}.search-box .suggestion{line-height:1.4;padding:.4rem .6rem;border-radius:4px;cursor:pointer}.search-box .suggestion a{white-space:normal;color:#5d82a6}.search-box .suggestion a .page-title{font-weight:600}.search-box .suggestion a .header{font-size:.9em;margin-left:.25em}.search-box .suggestion.focused{background-color:#f3f4f5}.search-box .suggestion.focused a{color:#ec5975}@media (max-width:959px){.search-box input{cursor:pointer;width:0;border-color:transparent;position:relative}.search-box input:focus{cursor:text;left:0;width:10rem}}@media (-ms-high-contrast:none){.search-box input{height:2rem}}@media (max-width:959px) and (min-width:719px){.search-box .suggestions{left:0}}@media (max-width:719px){.search-box{margin-right:0}.search-box input{left:1rem}.search-box .suggestions{right:0}}@media (max-width:419px){.search-box .suggestions{width:calc(100vw - 4rem)}.search-box input:focus{width:8rem}}.sidebar-button{cursor:pointer;display:none;width:1.25rem;height:1.25rem;position:absolute;padding:.6rem;top:.6rem;left:1rem}.sidebar-button .icon{display:block;width:1.25rem;height:1.25rem}@media (max-width:719px){.sidebar-button{display:block}}.dropdown-enter,.dropdown-leave-to{height:0!important}.dropdown-wrapper{cursor:pointer}.dropdown-wrapper .dropdown-title,.dropdown-wrapper .mobile-dropdown-title{display:block;font-size:.9rem;font-family:inherit;cursor:inherit;padding:inherit;line-height:1.4rem;background:transparent;border:none;font-weight:500;color:#2c3e50}.dropdown-wrapper .dropdown-title:hover,.dropdown-wrapper .mobile-dropdown-title:hover{border-color:transparent}.dropdown-wrapper .dropdown-title .arrow,.dropdown-wrapper .mobile-dropdown-title .arrow{vertical-align:middle;margin-top:-1px;margin-left:.4rem}.dropdown-wrapper .mobile-dropdown-title{display:none;font-weight:600}.dropdown-wrapper .mobile-dropdown-title font-size inherit:hover{color:#ec5975}.dropdown-wrapper .nav-dropdown .dropdown-item{color:inherit;line-height:1.7rem}.dropdown-wrapper .nav-dropdown .dropdown-item h4{margin:.45rem 0 0;border-top:1px solid #eee;padding:1rem 1.5rem .45rem 1.25rem}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem-wrapper{padding:0;list-style:none}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem-wrapper .dropdown-subitem{font-size:.9em}.dropdown-wrapper .nav-dropdown .dropdown-item a{display:block;line-height:1.7rem;position:relative;border-bottom:none;font-weight:400;margin-bottom:0;padding:0 1.5rem 0 1.25rem}.dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active,.dropdown-wrapper .nav-dropdown .dropdown-item a:hover{color:#ec5975}.dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active:after{content:"";width:0;height:0;border-left:5px solid #ec5975;border-top:3px solid transparent;border-bottom:3px solid transparent;position:absolute;top:calc(50% - 2px);left:9px}.dropdown-wrapper .nav-dropdown .dropdown-item:first-child h4{margin-top:0;padding-top:0;border-top:0}@media (max-width:719px){.dropdown-wrapper.open .dropdown-title{margin-bottom:.5rem}.dropdown-wrapper .dropdown-title{display:none}.dropdown-wrapper .mobile-dropdown-title{display:block}.dropdown-wrapper .nav-dropdown{transition:height .1s ease-out;overflow:hidden}.dropdown-wrapper .nav-dropdown .dropdown-item h4{border-top:0;margin-top:0;padding-top:0}.dropdown-wrapper .nav-dropdown .dropdown-item>a,.dropdown-wrapper .nav-dropdown .dropdown-item h4{font-size:15px;line-height:2rem}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem{font-size:14px;padding-left:1rem}}@media (min-width:719px){.dropdown-wrapper{height:1.8rem}.dropdown-wrapper.open .nav-dropdown,.dropdown-wrapper:hover .nav-dropdown{display:block!important}.dropdown-wrapper.open:blur{display:none}.dropdown-wrapper .nav-dropdown{display:none;height:auto!important;box-sizing:border-box;max-height:calc(100vh - 2.7rem);overflow-y:auto;position:absolute;top:100%;right:0;background-color:#fff;padding:.6rem 0;border:1px solid;border-color:#ddd #ddd #ccc;text-align:left;border-radius:.25rem;white-space:nowrap;margin:0}}.nav-links{display:inline-block}.nav-links a{line-height:1.4rem;color:inherit}.nav-links a.router-link-active,.nav-links a:hover{color:#ec5975}.nav-links .nav-item{position:relative;display:inline-block;margin-left:1.5rem;line-height:2rem}.nav-links .nav-item:first-child{margin-left:0}.nav-links .repo-link{margin-left:1.5rem}@media (max-width:719px){.nav-links .nav-item,.nav-links .repo-link{margin-left:0}}@media (min-width:719px){.nav-links a.router-link-active,.nav-links a:hover{color:#2c3e50}.nav-item>a:not(.external).router-link-active,.nav-item>a:not(.external):hover{margin-bottom:-2px;border-bottom:2px solid #ee6680}}.navbar{padding:.7rem 1.5rem;line-height:2.2rem}.navbar a,.navbar img,.navbar span{display:inline-block}.navbar .logo{height:2.2rem;min-width:2.2rem;margin-right:.8rem;vertical-align:top}.navbar .site-name{font-size:1.3rem;font-weight:600;color:#2c3e50;position:relative}.navbar .links{padding-left:1.5rem;box-sizing:border-box;background-color:#fff;white-space:nowrap;font-size:.9rem;position:absolute;right:1.5rem;top:.7rem;display:flex}.navbar .links .search-box{flex:0 0 auto;vertical-align:top}@media (max-width:719px){.navbar{padding-left:4rem}.navbar .can-hide{display:none}.navbar .links{padding-left:1.5rem}.navbar .site-name{width:calc(100vw - 9.4rem);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}}.page-edit{max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.page-edit{padding:2rem}}@media (max-width:419px){.page-edit{padding:1.5rem}}.page-edit{padding-top:1rem;padding-bottom:1rem;overflow:auto}.page-edit .edit-link{display:inline-block}.page-edit .edit-link a{color:#4e6e8e;margin-right:.25rem}.page-edit .last-updated{float:right;font-size:.9em}.page-edit .last-updated .prefix{font-weight:500;color:#4e6e8e}.page-edit .last-updated .time{font-weight:400;color:#767676}@media (max-width:719px){.page-edit .edit-link{margin-bottom:.5rem}.page-edit .last-updated{font-size:.8em;float:none;text-align:left}}.page-nav{max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.page-nav{padding:2rem}}@media (max-width:419px){.page-nav{padding:1.5rem}}.page-nav{padding-top:1rem;padding-bottom:0}.page-nav .inner{min-height:2rem;margin-top:0;border-top:1px solid #eaecef;padding-top:1rem;overflow:auto}.page-nav .next{float:right}.page{padding-bottom:2rem;display:block}.sidebar-group .sidebar-group{padding-left:.5em}.sidebar-group:not(.collapsable) .sidebar-heading:not(.clickable){cursor:auto;color:inherit}.sidebar-group.is-sub-group{padding-left:0}.sidebar-group.is-sub-group>.sidebar-heading{font-size:.95em;line-height:1.4;font-weight:400;padding-left:2rem}.sidebar-group.is-sub-group>.sidebar-heading:not(.clickable){opacity:.5}.sidebar-group.is-sub-group>.sidebar-group-items{padding-left:1rem}.sidebar-group.is-sub-group>.sidebar-group-items>li>.sidebar-link{font-size:.95em;border-left:none}.sidebar-group.depth-2>.sidebar-heading{border-left:none}.sidebar-heading{color:#2c3e50;transition:color .15s ease;cursor:pointer;font-size:1.1em;font-weight:700;padding:.35rem 1.5rem .35rem 1.25rem;width:100%;box-sizing:border-box;margin:0;border-left:.25rem solid transparent}.sidebar-heading.open,.sidebar-heading:hover{color:inherit}.sidebar-heading .arrow{position:relative;top:-.12em;left:.5em}.sidebar-heading.clickable.active{font-weight:600;color:#ec5975;border-left-color:#ec5975}.sidebar-heading.clickable:hover{color:#ec5975}.sidebar-group-items{transition:height .1s ease-out;font-size:.95em;overflow:hidden}.sidebar .sidebar-sub-headers{padding-left:1rem;font-size:.95em}a.sidebar-link{font-size:1em;font-weight:400;display:inline-block;color:#2c3e50;border-left:.25rem solid transparent;padding:.35rem 1rem .35rem 1.25rem;line-height:1.4;width:100%;box-sizing:border-box}a.sidebar-link:hover{color:#ec5975}a.sidebar-link.active{font-weight:600;color:#ec5975;border-left-color:#ec5975}.sidebar-group a.sidebar-link{padding-left:2rem}.sidebar-sub-headers a.sidebar-link{padding-top:.25rem;padding-bottom:.25rem;border-left:none}.sidebar-sub-headers a.sidebar-link.active{font-weight:500}.sidebar ul{padding:0;margin:0;list-style-type:none}.sidebar a{display:inline-block}.sidebar .nav-links{display:none;border-bottom:1px solid #eaecef;padding:.5rem 0 .75rem}.sidebar .nav-links a{font-weight:600}.sidebar .nav-links .nav-item,.sidebar .nav-links .repo-link{display:block;line-height:1.25rem;font-size:1.1em;padding:.5rem 0 .5rem 1.5rem}.sidebar>.sidebar-links{padding:1.5rem 0}.sidebar>.sidebar-links>li>a.sidebar-link{font-size:1.1em;line-height:1.7;font-weight:700}.sidebar>.sidebar-links>li:not(:first-child){margin-top:.75rem}@media (max-width:719px){.sidebar .nav-links{display:block}.sidebar .nav-links .dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active:after{top:calc(1rem - 2px)}.sidebar>.sidebar-links{padding:1rem 0}}.monaco-editor{font-family:-apple-system,BlinkMacSystemFont,Segoe WPC,Segoe UI,HelveticaNeue-Light,Ubuntu,Droid Sans,sans-serif}.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-editor-hover p{margin:0}.monaco-editor.hc-black{-ms-high-contrast-adjust:none}@media screen and (-ms-high-contrast:active){.monaco-editor.vs-dark .view-overlays .current-line,.monaco-editor.vs .view-overlays .current-line{border-color:windowtext!important;border-left:0;border-right:0}.monaco-editor.vs-dark .cursor,.monaco-editor.vs .cursor{background-color:windowtext!important}.monaco-editor.vs-dark .dnd-target,.monaco-editor.vs .dnd-target{border-color:windowtext!important}.monaco-editor.vs-dark .selected-text,.monaco-editor.vs .selected-text{background-color:highlight!important}.monaco-editor.vs-dark .view-line,.monaco-editor.vs .view-line{-ms-high-contrast-adjust:none}.monaco-editor.vs-dark .view-line span,.monaco-editor.vs .view-line span{color:windowtext!important}.monaco-editor.vs-dark .view-line span.inline-selected-text,.monaco-editor.vs .view-line span.inline-selected-text{color:highlighttext!important}.monaco-editor.vs-dark .view-overlays,.monaco-editor.vs .view-overlays{-ms-high-contrast-adjust:none}.monaco-editor.vs-dark .reference-decoration,.monaco-editor.vs-dark .selectionHighlight,.monaco-editor.vs-dark .wordHighlight,.monaco-editor.vs-dark .wordHighlightStrong,.monaco-editor.vs .reference-decoration,.monaco-editor.vs .selectionHighlight,.monaco-editor.vs .wordHighlight,.monaco-editor.vs .wordHighlightStrong{border:2px dotted highlight!important;background:transparent!important;box-sizing:border-box}.monaco-editor.vs-dark .rangeHighlight,.monaco-editor.vs .rangeHighlight{background:transparent!important;border:1px dotted activeborder!important;box-sizing:border-box}.monaco-editor.vs-dark .bracket-match,.monaco-editor.vs .bracket-match{border-color:windowtext!important;background:transparent!important}.monaco-editor.vs-dark .currentFindMatch,.monaco-editor.vs-dark .findMatch,.monaco-editor.vs .currentFindMatch,.monaco-editor.vs .findMatch{border:2px dotted activeborder!important;background:transparent!important;box-sizing:border-box}.monaco-editor.vs-dark .find-widget,.monaco-editor.vs .find-widget{border:1px solid windowtext}.monaco-editor.vs-dark .monaco-list .monaco-list-row,.monaco-editor.vs .monaco-list .monaco-list-row{-ms-high-contrast-adjust:none;color:windowtext!important}.monaco-editor.vs-dark .monaco-list .monaco-list-row.focused,.monaco-editor.vs .monaco-list .monaco-list-row.focused{color:highlighttext!important;background-color:highlight!important}.monaco-editor.vs-dark .monaco-list .monaco-list-row:hover,.monaco-editor.vs .monaco-list .monaco-list-row:hover{background:transparent!important;border:1px solid highlight;box-sizing:border-box}.monaco-editor.vs-dark .monaco-tree .monaco-tree-row,.monaco-editor.vs .monaco-tree .monaco-tree-row{-ms-high-contrast-adjust:none;color:windowtext!important}.monaco-editor.vs-dark .monaco-tree .monaco-tree-row.focused,.monaco-editor.vs-dark .monaco-tree .monaco-tree-row.selected,.monaco-editor.vs .monaco-tree .monaco-tree-row.focused,.monaco-editor.vs .monaco-tree .monaco-tree-row.selected{color:highlighttext!important;background-color:highlight!important}.monaco-editor.vs-dark .monaco-tree .monaco-tree-row:hover,.monaco-editor.vs .monaco-tree .monaco-tree-row:hover{background:transparent!important;border:1px solid highlight;box-sizing:border-box}.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar,.monaco-editor.vs .monaco-scrollable-element>.scrollbar{-ms-high-contrast-adjust:none;background:background!important;border:1px solid windowtext;box-sizing:border-box}.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar>.slider,.monaco-editor.vs .monaco-scrollable-element>.scrollbar>.slider{background:windowtext!important}.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar>.slider.active,.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar>.slider:hover,.monaco-editor.vs .monaco-scrollable-element>.scrollbar>.slider.active,.monaco-editor.vs .monaco-scrollable-element>.scrollbar>.slider:hover{background:highlight!important}.monaco-editor.vs-dark .decorationsOverviewRuler,.monaco-editor.vs .decorationsOverviewRuler{opacity:0}.monaco-editor.vs-dark .minimap,.monaco-editor.vs .minimap{display:none}.monaco-editor.vs-dark .squiggly-d-error,.monaco-editor.vs .squiggly-d-error{background:transparent!important;border-bottom:4px double #e47777}.monaco-editor.vs-dark .squiggly-b-info,.monaco-editor.vs-dark .squiggly-c-warning,.monaco-editor.vs .squiggly-b-info,.monaco-editor.vs .squiggly-c-warning{border-bottom:4px double #71b771}.monaco-editor.vs-dark .squiggly-a-hint,.monaco-editor.vs .squiggly-a-hint{border-bottom:4px double #6c6c6c}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.vs .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label{-ms-high-contrast-adjust:none;color:highlighttext!important;background-color:highlight!important}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:hover .action-label,.monaco-editor.vs .monaco-menu .monaco-action-bar.vertical .action-menu-item:hover .action-label{-ms-high-contrast-adjust:none;background:transparent!important;border:1px solid highlight;box-sizing:border-box}.monaco-diff-editor.vs-dark .diffOverviewRuler,.monaco-diff-editor.vs .diffOverviewRuler{display:none}.monaco-editor.vs-dark .line-delete,.monaco-editor.vs-dark .line-insert,.monaco-editor.vs .line-delete,.monaco-editor.vs .line-insert{background:transparent!important;border:1px solid highlight!important;box-sizing:border-box}.monaco-editor.vs-dark .char-delete,.monaco-editor.vs-dark .char-insert,.monaco-editor.vs .char-delete,.monaco-editor.vs .char-insert{background:transparent!important}}.monaco-aria-container{position:absolute;left:-999em}::-ms-clear{display:none}.monaco-editor .editor-widget input{color:inherit}.monaco-editor{position:relative;overflow:visible;-webkit-text-size-adjust:100%}.monaco-editor .overflow-guard{position:relative;overflow:hidden}.monaco-editor .view-overlays{position:absolute;top:0}.monaco-editor .inputarea{min-width:0;min-height:0;margin:0;padding:0;position:absolute;outline:none!important;resize:none;border:none;overflow:hidden;color:transparent;background-color:transparent}.monaco-editor .inputarea.ime-input{z-index:10}.monaco-editor .margin-view-overlays .line-numbers{position:absolute;text-align:right;display:inline-block;vertical-align:middle;box-sizing:border-box;cursor:default;height:100%}.monaco-editor .relative-current-line-number{text-align:left;display:inline-block;width:100%}.monaco-editor .margin-view-overlays .line-numbers.lh-odd{margin-top:1px}.monaco-editor .margin-view-overlays .current-line,.monaco-editor .view-overlays .current-line{display:block;position:absolute;left:0;top:0;box-sizing:border-box}.monaco-editor .margin-view-overlays .current-line.current-line-margin.current-line-margin-both{border-right:0}.monaco-editor .lines-content .cdr{position:absolute}.monaco-scrollable-element>.scrollbar>.up-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTEgMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTkuNDggOC45NjFsMS4yNi0xLjI2LTUuMDQtNS4wNC01LjQ2IDUuMDQgMS4yNiAxLjI2IDQuMi0zLjc4IDMuNzggMy43OHoiIGZpbGw9IiM0MjQyNDIiLz48L3N2Zz4=");cursor:pointer}.monaco-scrollable-element>.scrollbar>.down-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMSAxMSI+PHBhdGggZmlsbD0iIzQyNDI0MiIgZD0iTTEuNSAyLjY2MkwuMjQgMy45MjJsNS4wNCA1LjA0IDUuNDYtNS4wNC0xLjI2LTEuMjYtNC4yIDMuNzgtMy43OC0zLjc4eiIvPjwvc3ZnPg==");cursor:pointer}.monaco-scrollable-element>.scrollbar>.left-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMSAxMSI+PHBhdGggZmlsbD0iIzQyNDI0MiIgZD0iTTguNjQgMS40NDFMNy4zOC4xODFsLTUuMDQgNS4wNCA1LjA0IDUuNDYgMS4yNi0xLjI2LTMuNzgtNC4yIDMuNzgtMy43OHoiLz48L3N2Zz4=");cursor:pointer}.monaco-scrollable-element>.scrollbar>.right-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTEgMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iIzQyNDI0MiIgZD0iTTIuNDY3IDkuNTQ4bDEuMjYgMS4yNiA1LjA0LTUuMDQtNS4wNC01LjQ2LTEuMjYgMS4yNiAzLjc4IDQuMi0zLjc4IDMuNzh6Ii8+PC9zdmc+");cursor:pointer}.hc-black .monaco-scrollable-element>.scrollbar>.up-arrow,.vs-dark .monaco-scrollable-element>.scrollbar>.up-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTEgMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTkuNDggOC45NjFsMS4yNi0xLjI2LTUuMDQtNS4wNC01LjQ2IDUuMDQgMS4yNiAxLjI2IDQuMi0zLjc4IDMuNzggMy43OHoiIGZpbGw9IiNFOEU4RTgiLz48L3N2Zz4=")}.hc-black .monaco-scrollable-element>.scrollbar>.down-arrow,.vs-dark .monaco-scrollable-element>.scrollbar>.down-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMSAxMSI+PHBhdGggZmlsbD0iI0U4RThFOCIgZD0iTTEuNSAyLjY2MkwuMjQgMy45MjJsNS4wNCA1LjA0IDUuNDYtNS4wNC0xLjI2LTEuMjYtNC4yIDMuNzgtMy43OC0zLjc4eiIvPjwvc3ZnPg==")}.hc-black .monaco-scrollable-element>.scrollbar>.left-arrow,.vs-dark .monaco-scrollable-element>.scrollbar>.left-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMSAxMSI+PHBhdGggZmlsbD0iI0U4RThFOCIgZD0iTTguNjQgMS40NDFMNy4zOC4xODFsLTUuMDQgNS4wNCA1LjA0IDUuNDYgMS4yNi0xLjI2LTMuNzgtNC4yIDMuNzgtMy43OHoiLz48L3N2Zz4=")}.hc-black .monaco-scrollable-element>.scrollbar>.right-arrow,.vs-dark .monaco-scrollable-element>.scrollbar>.right-arrow{background:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTEgMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iI0U4RThFOCIgZD0iTTIuNDY3IDkuNTQ4bDEuMjYgMS4yNiA1LjA0LTUuMDQtNS4wNC01LjQ2LTEuMjYgMS4yNiAzLjc4IDQuMi0zLjc4IDMuNzh6Ii8+PC9zdmc+")}.monaco-scrollable-element>.visible{opacity:1;background:transparent;transition:opacity .1s linear}.monaco-scrollable-element>.invisible{opacity:0;pointer-events:none}.monaco-scrollable-element>.invisible.fade{transition:opacity .8s linear}.monaco-scrollable-element>.shadow{position:absolute;display:none}.monaco-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:inset 0 6px 6px -6px #ddd}.monaco-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:inset 6px 0 6px -6px #ddd}.monaco-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.monaco-scrollable-element>.shadow.top.left{box-shadow:inset 6px 6px 6px -6px #ddd}.vs .monaco-scrollable-element>.scrollbar>.slider{background:hsla(0,0%,39.2%,.4)}.vs-dark .monaco-scrollable-element>.scrollbar>.slider{background:hsla(0,0%,47.5%,.4)}.hc-black .monaco-scrollable-element>.scrollbar>.slider{background:rgba(111,195,223,.6)}.monaco-scrollable-element>.scrollbar>.slider:hover{background:hsla(0,0%,39.2%,.7)}.hc-black .monaco-scrollable-element>.scrollbar>.slider:hover{background:rgba(111,195,223,.8)}.monaco-scrollable-element>.scrollbar>.slider.active{background:rgba(0,0,0,.6)}.vs-dark .monaco-scrollable-element>.scrollbar>.slider.active{background:hsla(0,0%,74.9%,.4)}.hc-black .monaco-scrollable-element>.scrollbar>.slider.active{background:#6fc3df}.vs-dark .monaco-scrollable-element .shadow.top{box-shadow:none}.vs-dark .monaco-scrollable-element .shadow.left{box-shadow:inset 6px 0 6px -6px #000}.vs-dark .monaco-scrollable-element .shadow.top.left{box-shadow:inset 6px 6px 6px -6px #000}.hc-black .monaco-scrollable-element .shadow.left,.hc-black .monaco-scrollable-element .shadow.top,.hc-black .monaco-scrollable-element .shadow.top.left{box-shadow:none}.monaco-editor .glyph-margin{position:absolute;top:0}.monaco-editor .margin-view-overlays .cgmr{position:absolute;display:flex;align-items:center;justify-content:center}.monaco-editor .lines-content .cigr,.monaco-editor .lines-content .cigra{position:absolute}.monaco-editor.no-user-select .lines-content,.monaco-editor.no-user-select .view-line,.monaco-editor.no-user-select .view-lines{-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-editor .view-lines{cursor:text;white-space:nowrap}.monaco-editor.hc-black.mac .view-lines,.monaco-editor.vs-dark.mac .view-lines{cursor:-webkit-image-set(url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAAL0lEQVQoz2NgCD3x//9/BhBYBWdhgFVAiVW4JBFKGIa4AqD0//9D3pt4I4tAdAMAHTQ/j5Zom30AAAAASUVORK5CYII=) 1x,url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAQAAADZc7J/AAAAz0lEQVRIx2NgYGBY/R8I/vx5eelX3n82IJ9FxGf6tksvf/8FiTMQAcAGQMDvSwu09abffY8QYSAScNk45G198eX//yev73/4///701eh//kZSARckrNBRvz//+8+6ZohwCzjGNjdgQxkAg7B9WADeBjIBqtJCbhRA0YNoIkBSNmaPEMoNmA0FkYNoFKhapJ6FGyAH3nauaSmPfwI0v/3OukVi0CIZ+F25KrtYcx/CTIy0e+rC7R1Z4KMICVTQQ14feVXIbR695u14+Ir4gwAAD49E54wc1kWAAAAAElFTkSuQmCC) 2x) 5 8,text}.monaco-editor .view-line{position:absolute;width:100%}.monaco-editor .lines-decorations{position:absolute;top:0;background:#fff}.monaco-editor .margin-view-overlays .cldr{position:absolute;height:100%}.monaco-editor .margin-view-overlays .cmdr{position:absolute;left:0;width:100%;height:100%}.monaco-editor .minimap.slider-mouseover .minimap-slider{opacity:0;transition:opacity .1s linear}.monaco-editor .minimap.slider-mouseover .minimap-slider.active,.monaco-editor .minimap.slider-mouseover:hover .minimap-slider{opacity:1}.monaco-editor .minimap-shadow-hidden{position:absolute;width:0}.monaco-editor .minimap-shadow-visible{position:absolute;left:-6px;width:6px}.monaco-editor .overlayWidgets{position:absolute;top:0;left:0}.monaco-editor .view-ruler{position:absolute;top:0}.monaco-editor .scroll-decoration{position:absolute;top:0;left:0;height:6px}.monaco-editor .lines-content .cslr{position:absolute}.monaco-editor .top-left-radius{border-top-left-radius:3px}.monaco-editor .bottom-left-radius{border-bottom-left-radius:3px}.monaco-editor .top-right-radius{border-top-right-radius:3px}.monaco-editor .bottom-right-radius{border-bottom-right-radius:3px}.monaco-editor.hc-black .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-black .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-black .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-black .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor .cursors-layer{position:absolute;top:0}.monaco-editor .cursors-layer>.cursor{position:absolute;cursor:text;overflow:hidden}.monaco-editor .cursors-layer.cursor-smooth-caret-animation>.cursor{transition:all 80ms}.monaco-editor .cursors-layer.cursor-block-outline-style>.cursor{box-sizing:border-box;background:transparent!important;border-style:solid;border-width:1px}.monaco-editor .cursors-layer.cursor-underline-style>.cursor{border-bottom-width:2px;border-bottom-style:solid;background:transparent!important;box-sizing:border-box}.monaco-editor .cursors-layer.cursor-underline-thin-style>.cursor{border-bottom-width:1px;border-bottom-style:solid;background:transparent!important;box-sizing:border-box}@-webkit-keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@-webkit-keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@-webkit-keyframes monaco-cursor-expand{0%,20%{transform:scaleY(1)}80%,to{transform:scaleY(0)}}@keyframes monaco-cursor-expand{0%,20%{transform:scaleY(1)}80%,to{transform:scaleY(0)}}.cursor-smooth{-webkit-animation:monaco-cursor-smooth .5s ease-in-out 0s 20 alternate;animation:monaco-cursor-smooth .5s ease-in-out 0s 20 alternate}.cursor-phase{-webkit-animation:monaco-cursor-phase .5s ease-in-out 0s 20 alternate;animation:monaco-cursor-phase .5s ease-in-out 0s 20 alternate}.cursor-expand>.cursor{-webkit-animation:monaco-cursor-expand .5s ease-in-out 0s 20 alternate;animation:monaco-cursor-expand .5s ease-in-out 0s 20 alternate}.monaco-diff-editor .diffOverview{z-index:9}.monaco-diff-editor.vs .diffOverview{background:rgba(0,0,0,.03)}.monaco-diff-editor.vs-dark .diffOverview{background:hsla(0,0%,100%,.01)}.monaco-diff-editor .diffViewport{box-shadow:inset 0 0 1px 0 #b9b9b9;background:rgba(0,0,0,.1)}.monaco-diff-editor.hc-black .diffViewport,.monaco-diff-editor.vs-dark .diffViewport{background:hsla(0,0%,100%,.1)}.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.vs .scrollbar{background:transparent}.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black .scrollbar{background:none}.monaco-scrollable-element.modified-in-monaco-diff-editor .slider{z-index:10}.modified-in-monaco-diff-editor .slider.active{background:hsla(0,0%,67.1%,.4)}.modified-in-monaco-diff-editor.hc-black .slider.active{background:none}.monaco-diff-editor .delete-sign,.monaco-diff-editor .insert-sign,.monaco-editor .delete-sign,.monaco-editor .insert-sign{font-size:11px!important;opacity:.7!important;display:flex!important;align-items:center}.monaco-diff-editor.hc-black .delete-sign,.monaco-diff-editor.hc-black .insert-sign,.monaco-editor.hc-black .delete-sign,.monaco-editor.hc-black .insert-sign{opacity:1}.monaco-editor .inline-added-margin-view-zone,.monaco-editor .inline-deleted-margin-view-zone{text-align:right}.monaco-editor .diagonal-fill{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAChJREFUKFNjOH/+fAMDDgCSu3Dhwn9c8gwwBTgNGR4KQP4HhQOhsAIAZCBTkhtqePcAAAAASUVORK5CYII=")}.monaco-editor.vs-dark .diagonal-fill{opacity:.2}.monaco-editor.hc-black .diagonal-fill{background:none}.monaco-editor .view-zones .view-lines .view-line span{display:inline-block}.monaco-editor .margin-view-zones .lightbulb-glyph:hover{cursor:pointer}.monaco-sash{position:absolute;z-index:35;touch-action:none}.monaco-sash.disabled{pointer-events:none}.monaco-sash.vertical{cursor:ew-resize;top:0;width:4px;height:100%}.monaco-sash.mac.vertical{cursor:col-resize}.monaco-sash.vertical.minimum{cursor:e-resize}.monaco-sash.vertical.maximum{cursor:w-resize}.monaco-sash.horizontal{cursor:ns-resize;left:0;width:100%;height:4px}.monaco-sash.mac.horizontal{cursor:row-resize}.monaco-sash.horizontal.minimum{cursor:s-resize}.monaco-sash.horizontal.maximum{cursor:n-resize}.monaco-sash:not(.disabled).orthogonal-end:after,.monaco-sash:not(.disabled).orthogonal-start:before{content:" ";height:8px;width:8px;z-index:100;display:block;cursor:all-scroll;position:absolute}.monaco-sash.orthogonal-start.vertical:before{left:-2px;top:-4px}.monaco-sash.orthogonal-end.vertical:after{left:-2px;bottom:-4px}.monaco-sash.orthogonal-start.horizontal:before{top:-2px;left:-4px}.monaco-sash.orthogonal-end.horizontal:after{top:-2px;right:-4px}.monaco-sash.disabled{cursor:default!important;pointer-events:none!important}.monaco-sash.touch.vertical{width:20px}.monaco-sash.touch.horizontal{height:20px}.monaco-sash.debug{background:#0ff}.monaco-sash.debug.disabled{background:rgba(0,255,255,.2)}.monaco-sash.debug:not(.disabled).orthogonal-end:after,.monaco-sash.debug:not(.disabled).orthogonal-start:before{background:red}.monaco-diff-editor .diff-review-line-number{text-align:right;display:inline-block}.monaco-diff-editor .diff-review{position:absolute;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-diff-editor .diff-review-summary{padding-left:10px}.monaco-diff-editor .diff-review-shadow{position:absolute}.monaco-diff-editor .diff-review-row{white-space:pre}.monaco-diff-editor .diff-review-table{display:table;min-width:100%}.monaco-diff-editor .diff-review-row{display:table-row;width:100%}.monaco-diff-editor .diff-review-cell{display:table-cell}.monaco-diff-editor .diff-review-spacer{display:inline-block;width:10px}.monaco-diff-editor .diff-review-actions{display:inline-block;position:absolute;right:10px;top:2px}.monaco-diff-editor .diff-review-actions .action-label{width:16px;height:16px;margin:2px 0}.monaco-action-bar{text-align:right;overflow:hidden;white-space:nowrap}.monaco-action-bar .actions-container{display:flex;margin:0 auto;padding:0;width:100%;justify-content:flex-end}.monaco-action-bar.vertical .actions-container{display:inline-block}.monaco-action-bar.reverse .actions-container{flex-direction:row-reverse}.monaco-action-bar .action-item{cursor:pointer;display:inline-block;transition:transform 50ms ease;position:relative}.monaco-action-bar .action-item.disabled{cursor:default}.monaco-action-bar.animated .action-item.active{transform:scale(1.272019649)}.monaco-action-bar .action-item .codicon,.monaco-action-bar .action-item .icon{display:inline-block}.monaco-action-bar .action-label{font-size:11px;margin-right:4px}.monaco-action-bar .action-item.disabled .action-label,.monaco-action-bar .action-item.disabled .action-label:hover{opacity:.4}.monaco-action-bar.vertical{text-align:left}.monaco-action-bar.vertical .action-item{display:block}.monaco-action-bar.vertical .action-label.separator{display:block;border-bottom:1px solid #bbb;padding-top:1px;margin-left:.8em;margin-right:.8em}.monaco-action-bar.animated.vertical .action-item.active{transform:translate(5px)}.secondary-actions .monaco-action-bar .action-label{margin-left:6px}.monaco-action-bar .action-item.select-container{overflow:hidden;flex:1;max-width:170px;min-width:60px;display:flex;align-items:center;justify-content:center;margin-right:10px}.context-view .monaco-menu{min-width:130px}.context-view-block{position:fixed;left:0;top:0;z-index:-1;width:100%;height:100%}.monaco-menu .monaco-action-bar.vertical{margin-left:0;overflow:visible}.monaco-menu .monaco-action-bar.vertical .actions-container{display:block}.monaco-menu .monaco-action-bar.vertical .action-item{padding:0;transform:none;display:flex}.monaco-menu .monaco-action-bar.vertical .action-item.active{transform:none}.monaco-menu .monaco-action-bar.vertical .action-menu-item{flex:1 1 auto;display:flex;height:2em;align-items:center;position:relative}.monaco-menu .monaco-action-bar.vertical .action-label{flex:1 1 auto;text-decoration:none;padding:0 1em;background:none;font-size:12px;line-height:1}.monaco-menu .monaco-action-bar.vertical .keybinding,.monaco-menu .monaco-action-bar.vertical .submenu-indicator{display:inline-block;flex:2 1 auto;padding:0 1em;text-align:right;font-size:12px;line-height:1}.monaco-menu .monaco-action-bar.vertical .submenu-indicator{height:100%}.monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon{font-size:16px!important;display:flex;align-items:center}.monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon:before{margin-left:auto;margin-right:-20px}.monaco-menu .monaco-action-bar.vertical .action-item.disabled .keybinding,.monaco-menu .monaco-action-bar.vertical .action-item.disabled .submenu-indicator{opacity:.4}.monaco-menu .monaco-action-bar.vertical .action-label:not(.separator){display:inline-block;box-sizing:border-box;margin:0}.monaco-menu .monaco-action-bar.vertical .action-item{position:static;overflow:visible}.monaco-menu .monaco-action-bar.vertical .action-item .monaco-submenu{position:absolute}.monaco-menu .monaco-action-bar.vertical .action-label.separator{padding:.5em 0 0;margin-bottom:.5em;width:100%}.monaco-menu .monaco-action-bar.vertical .action-label.separator.text{padding:.7em 1em .1em;font-weight:700;opacity:1}.monaco-menu .monaco-action-bar.vertical .action-label:hover{color:inherit}.monaco-menu .monaco-action-bar.vertical .menu-item-check{position:absolute;visibility:hidden;width:1em;height:100%}.monaco-menu .monaco-action-bar.vertical .action-menu-item.checked .menu-item-check{visibility:visible;display:flex;align-items:center;justify-content:center}.context-view.monaco-menu-container{outline:0;border:none;-webkit-animation:fadeIn 83ms linear;animation:fadeIn 83ms linear}.context-view.monaco-menu-container .monaco-action-bar.vertical:focus,.context-view.monaco-menu-container .monaco-action-bar.vertical :focus,.context-view.monaco-menu-container :focus{outline:0}.monaco-menu .monaco-action-bar.vertical .action-item{border:thin solid transparent}.hc-black .context-view.monaco-menu-container{box-shadow:none}.hc-black .monaco-menu .monaco-action-bar.vertical .action-item.focused{background:none}.menubar{display:flex;flex-shrink:1;box-sizing:border-box;height:30px;overflow:hidden;flex-wrap:wrap}.fullscreen .menubar:not(.compact){margin:0;padding:0 5px}.menubar>.menubar-menu-button{align-items:center;box-sizing:border-box;padding:0 8px;cursor:default;-webkit-app-region:no-drag;zoom:1;white-space:nowrap;outline:0}.menubar.compact{flex-shrink:0}.menubar.compact>.menubar-menu-button{width:100%;height:100%;padding:0}.menubar .menubar-menu-items-holder{position:absolute;left:0;opacity:1;z-index:2000}.menubar .menubar-menu-items-holder.monaco-menu-container{outline:0;border:none}.menubar .menubar-menu-items-holder.monaco-menu-container :focus{outline:0}.menubar .toolbar-toggle-more{width:20px;height:100%}.menubar.compact .toolbar-toggle-more{position:absolute;left:0;top:0;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:center}.menubar .toolbar-toggle-more{padding:0;vertical-align:sub}.menubar.compact .toolbar-toggle-more:before{content:"\eb94"!important}.context-view{position:absolute;z-index:2500}.monaco-list{position:relative;height:100%;width:100%;white-space:nowrap}.monaco-list.mouse-support{-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-list>.monaco-scrollable-element{height:100%}.monaco-list-rows{position:relative;width:100%;height:100%}.monaco-list.horizontal-scrolling .monaco-list-rows{width:auto;min-width:100%}.monaco-list-row{position:absolute;box-sizing:border-box;overflow:hidden;width:100%}.monaco-list.mouse-support .monaco-list-row{cursor:pointer;touch-action:none}.monaco-list-row.scrolling{display:none!important}.monaco-list.element-focused,.monaco-list.selection-multiple,.monaco-list.selection-single{outline:0!important}.monaco-list:focus .monaco-list-row.selected .codicon{color:inherit}.monaco-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute}.monaco-list-type-filter{display:flex;align-items:center;position:absolute;border-radius:2px;padding:0 3px;max-width:calc(100% - 10px);text-overflow:ellipsis;overflow:hidden;text-align:right;box-sizing:border-box;cursor:all-scroll;font-size:13px;line-height:18px;height:20px;z-index:1;top:4px}.monaco-list-type-filter.dragging{transition:top .2s,left .2s}.monaco-list-type-filter.ne{right:4px}.monaco-list-type-filter.nw{left:4px}.monaco-list-type-filter>.controls{display:flex;align-items:center;box-sizing:border-box;transition:width .2s;width:0}.monaco-list-type-filter.dragging>.controls,.monaco-list-type-filter:hover>.controls{width:36px}.monaco-list-type-filter>.controls>*{border:none;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;background:none;width:16px;height:16px;flex-shrink:0;margin:0;padding:0;display:flex;align-items:center;justify-content:center;cursor:pointer}.monaco-list-type-filter>.controls>.filter:checked:before{content:"\eb83"!important}.monaco-list-type-filter>.controls>.filter{margin-left:4px}.monaco-list-type-filter-message{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;padding:40px 1em 1em;text-align:center;white-space:normal;opacity:.7;pointer-events:none}.monaco-list-type-filter-message:empty{display:none}.monaco-list-type-filter{cursor:-webkit-grab;cursor:grab}.monaco-list-type-filter.dragging{cursor:-webkit-grabbing;cursor:grabbing}.monaco-tl-row{display:flex;height:100%;align-items:center;position:relative}.monaco-tl-indent{height:100%;position:absolute;top:0;left:16px;pointer-events:none}.hide-arrows .monaco-tl-indent{left:12px}.monaco-tl-indent>.indent-guide{display:inline-block;box-sizing:border-box;height:100%;border-left:1px solid transparent;transition:border-color .1s linear}.monaco-tl-contents,.monaco-tl-twistie{height:100%}.monaco-tl-twistie{font-size:10px;text-align:right;padding-right:6px;flex-shrink:0;width:16px;display:flex!important;align-items:center;justify-content:center;color:inherit!important;transform:translateX(3px)}.monaco-tl-contents{flex:1;overflow:hidden}.monaco-tl-twistie.collapsed:before{transform:rotate(-90deg)}.monaco-tl-twistie.codicon-loading:before{-webkit-animation:codicon-spin 1.25s linear infinite;animation:codicon-spin 1.25s linear infinite}.monaco-editor .bracket-match{box-sizing:border-box}.monaco-menu .monaco-action-bar.vertical .action-label.hover{background-color:#eee}.monaco-editor .monaco-editor-overlaymessage{padding-bottom:8px}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.monaco-editor .monaco-editor-overlaymessage.fadeIn{-webkit-animation:fadeIn .15s ease-out;animation:fadeIn .15s ease-out}@-webkit-keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.monaco-editor .monaco-editor-overlaymessage.fadeOut{-webkit-animation:fadeOut .1s ease-out;animation:fadeOut .1s ease-out}.monaco-editor .monaco-editor-overlaymessage .message{padding:1px 4px}.monaco-editor .monaco-editor-overlaymessage .anchor{width:0!important;height:0!important;z-index:1000;border:8px solid transparent;position:absolute}.monaco-editor .codicon-lightbulb,.monaco-editor .lightbulb-glyph{display:flex;align-items:center;justify-content:center;height:16px;width:20px;padding-left:2px}.monaco-editor .codicon-lightbulb:hover,.monaco-editor .lightbulb-glyph:hover{cursor:pointer}.monaco-editor .codelens-decoration{overflow:hidden;display:inline-block;text-overflow:ellipsis}.monaco-editor .codelens-decoration>a,.monaco-editor .codelens-decoration>span{-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none;white-space:nowrap;vertical-align:sub}.monaco-editor .codelens-decoration>a{text-decoration:none}.monaco-editor .codelens-decoration>a:hover{cursor:pointer}.monaco-editor .codelens-decoration .codicon{vertical-align:middle;color:currentColor!important}.monaco-editor .codelens-decoration>a:hover .codicon:before{cursor:pointer}@-webkit-keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}@keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}.monaco-editor .codelens-decoration.fadein{-webkit-animation:fadein .1s linear;animation:fadein .1s linear}.monaco-editor.vs .dnd-target{border-right:2px dotted #000;color:#fff}.monaco-editor.vs-dark .dnd-target{border-right:2px dotted #aeafad;color:#51504f}.monaco-editor.hc-black .dnd-target{border-right:2px dotted #fff;color:#000}.monaco-editor.hc-black.mac.mouse-default .view-lines,.monaco-editor.mouse-default .view-lines,.monaco-editor.vs-dark.mac.mouse-default .view-lines{cursor:default}.monaco-editor.hc-black.mac.mouse-copy .view-lines,.monaco-editor.mouse-copy .view-lines,.monaco-editor.vs-dark.mac.mouse-copy .view-lines{cursor:copy}.monaco-custom-checkbox{margin-left:2px;float:left;cursor:pointer;overflow:hidden;opacity:.7;width:20px;height:20px;border:1px solid transparent;padding:1px;box-sizing:border-box;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-custom-checkbox.checked,.monaco-custom-checkbox:hover{opacity:1}.hc-black .monaco-custom-checkbox,.hc-black .monaco-custom-checkbox:hover{background:none}.monaco-custom-checkbox.monaco-simple-checkbox{height:18px;width:18px;border:1px solid transparent;border-radius:3px;margin-right:9px;margin-left:0;padding:0;opacity:1;background-size:16px!important}.monaco-custom-checkbox.monaco-simple-checkbox.unchecked:not(.checked):before{visibility:hidden}.monaco-editor .find-widget{position:absolute;z-index:10;height:33px;overflow:hidden;line-height:19px;transition:transform .2s linear;padding:0 4px;box-sizing:border-box;transform:translateY(calc(-100% - 10px))}.monaco-editor .find-widget textarea{margin:0}.monaco-editor .find-widget.hiddenEditor{display:none}.monaco-editor .find-widget.replaceToggled>.replace-part{display:flex}.monaco-editor .find-widget.visible{transform:translateY(0)}.monaco-editor .find-widget .monaco-inputbox.synthetic-focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-editor .find-widget .monaco-inputbox .input{background-color:transparent;min-height:0}.monaco-editor .find-widget .monaco-findInput .input{font-size:13px}.monaco-editor .find-widget>.find-part,.monaco-editor .find-widget>.replace-part{margin:4px 0 0 17px;font-size:12px;display:flex}.monaco-editor .find-widget>.find-part .monaco-inputbox,.monaco-editor .find-widget>.replace-part .monaco-inputbox{min-height:25px}.monaco-editor .find-widget>.replace-part .monaco-inputbox>.wrapper>.mirror{padding-right:22px}.monaco-editor .find-widget>.find-part .monaco-inputbox>.wrapper>.input,.monaco-editor .find-widget>.find-part .monaco-inputbox>.wrapper>.mirror,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.wrapper>.input,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.wrapper>.mirror{padding-top:2px;padding-bottom:2px}.monaco-editor .find-widget>.find-part .find-actions,.monaco-editor .find-widget>.replace-part .replace-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget .monaco-findInput{vertical-align:middle;display:flex;flex:1}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element{width:100%}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical{opacity:0}.monaco-editor .find-widget .matchesCount{display:flex;flex:initial;margin:0 0 0 3px;padding:2px 0 0 2px;height:25px;vertical-align:middle;box-sizing:border-box;text-align:center;line-height:23px}.monaco-editor .find-widget .button{width:20px;height:20px;flex:initial;margin-left:3px;background-position:50%;background-repeat:no-repeat;cursor:pointer;display:flex;align-items:center;justify-content:center}.monaco-editor .find-widget .button:not(.disabled):hover{background-color:rgba(0,0,0,.1)}.monaco-editor .find-widget .button.left{margin-left:0;margin-right:3px}.monaco-editor .find-widget .button.wide{width:auto;padding:1px 6px;top:-1px}.monaco-editor .find-widget .button.toggle{position:absolute;top:0;left:3px;width:18px;height:100%;box-sizing:border-box}.monaco-editor .find-widget .button.toggle.disabled{display:none}.monaco-editor .find-widget .disabled{opacity:.3;cursor:default}.monaco-editor .find-widget>.replace-part{display:none}.monaco-editor .find-widget>.replace-part>.monaco-findInput{position:relative;display:flex;vertical-align:middle;flex:auto;flex-grow:0;flex-shrink:0}.monaco-editor .find-widget>.replace-part>.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.monaco-editor .find-widget.reduced-find-widget .matchesCount{display:none}.monaco-editor .find-widget.narrow-find-widget{max-width:257px!important}.monaco-editor .find-widget.collapsed-find-widget{max-width:170px!important}.monaco-editor .find-widget.collapsed-find-widget .button.next,.monaco-editor .find-widget.collapsed-find-widget .button.previous,.monaco-editor .find-widget.collapsed-find-widget .button.replace,.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,.monaco-editor .find-widget.collapsed-find-widget>.find-part .monaco-findInput .controls{display:none}.monaco-editor .findMatch{-webkit-animation-duration:0;animation-duration:0;-webkit-animation-name:inherit!important;animation-name:inherit!important}.monaco-editor .find-widget .monaco-sash{width:2px!important;margin-left:-4px}.monaco-editor.hc-black .find-widget .button:not(.disabled):hover,.monaco-editor.vs-dark .find-widget .button:not(.disabled):hover{background-color:hsla(0,0%,100%,.1)}.monaco-editor.hc-black .find-widget .button:before{position:relative;top:1px;left:2px}.monaco-findInput{position:relative}.monaco-findInput .monaco-inputbox{font-size:13px;width:100%}.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.vs .monaco-findInput.disabled{background-color:#e1e1e1}.vs-dark .monaco-findInput.disabled{background-color:#333}.monaco-findInput.highlight-0 .controls{-webkit-animation:monaco-findInput-highlight-0 .1s linear 0s;animation:monaco-findInput-highlight-0 .1s linear 0s}.monaco-findInput.highlight-1 .controls{-webkit-animation:monaco-findInput-highlight-1 .1s linear 0s;animation:monaco-findInput-highlight-1 .1s linear 0s}.hc-black .monaco-findInput.highlight-0 .controls,.vs-dark .monaco-findInput.highlight-0 .controls{-webkit-animation:monaco-findInput-highlight-dark-0 .1s linear 0s;animation:monaco-findInput-highlight-dark-0 .1s linear 0s}.hc-black .monaco-findInput.highlight-1 .controls,.vs-dark .monaco-findInput.highlight-1 .controls{-webkit-animation:monaco-findInput-highlight-dark-1 .1s linear 0s;animation:monaco-findInput-highlight-dark-1 .1s linear 0s}@-webkit-keyframes monaco-findInput-highlight-0{0%{background:rgba(253,255,0,.8)}to{background:transparent}}@keyframes monaco-findInput-highlight-0{0%{background:rgba(253,255,0,.8)}to{background:transparent}}@-webkit-keyframes monaco-findInput-highlight-1{0%{background:rgba(253,255,0,.8)}99%{background:transparent}}@keyframes monaco-findInput-highlight-1{0%{background:rgba(253,255,0,.8)}99%{background:transparent}}@-webkit-keyframes monaco-findInput-highlight-dark-0{0%{background:hsla(0,0%,100%,.44)}to{background:transparent}}@keyframes monaco-findInput-highlight-dark-0{0%{background:hsla(0,0%,100%,.44)}to{background:transparent}}@-webkit-keyframes monaco-findInput-highlight-dark-1{0%{background:hsla(0,0%,100%,.44)}99%{background:transparent}}@keyframes monaco-findInput-highlight-dark-1{0%{background:hsla(0,0%,100%,.44)}99%{background:transparent}}.monaco-inputbox{position:relative;display:block;padding:0;box-sizing:border-box;font-size:inherit}.monaco-inputbox.idle{border:1px solid transparent}.monaco-inputbox>.wrapper>.input,.monaco-inputbox>.wrapper>.mirror{padding:4px}.monaco-inputbox>.wrapper{position:relative;width:100%;height:100%}.monaco-inputbox>.wrapper>.input{display:inline-block;box-sizing:border-box;width:100%;height:100%;line-height:inherit;border:none;font-family:inherit;font-size:inherit;resize:none;color:inherit}.monaco-inputbox>.wrapper>input{text-overflow:ellipsis}.monaco-inputbox>.wrapper>textarea.input{display:block;-ms-overflow-style:none;scrollbar-width:none;outline:none}.monaco-inputbox>.wrapper>textarea.input::-webkit-scrollbar{display:none}.monaco-inputbox>.wrapper>textarea.input.empty{white-space:nowrap}.monaco-inputbox>.wrapper>.mirror{position:absolute;display:inline-block;width:100%;top:0;left:0;box-sizing:border-box;white-space:pre-wrap;visibility:hidden;word-wrap:break-word}.monaco-inputbox-container{text-align:right}.monaco-inputbox-container .monaco-inputbox-message{display:inline-block;overflow:hidden;text-align:left;width:100%;box-sizing:border-box;padding:.4em;font-size:12px;line-height:17px;min-height:34px;margin-top:-1px;word-wrap:break-word}.monaco-inputbox .monaco-action-bar{position:absolute;right:2px;top:4px}.monaco-inputbox .monaco-action-bar .action-item{margin-left:2px}.monaco-inputbox .monaco-action-bar .action-item .codicon{background-repeat:no-repeat;width:16px;height:16px}.monaco-editor .margin-view-overlays .codicon-chevron-down,.monaco-editor .margin-view-overlays .codicon-chevron-right{cursor:pointer;opacity:0;transition:opacity .5s;display:flex;align-items:center;justify-content:center;font-size:140%;margin-left:2px}.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons,.monaco-editor .margin-view-overlays .codicon.codicon-chevron-right,.monaco-editor .margin-view-overlays:hover .codicon{opacity:1}.monaco-editor .inline-folded:after{color:grey;margin:.1em .2em 0;content:"⋯";display:inline;line-height:1em;cursor:pointer}.monaco-editor .peekview-widget .head{box-sizing:border-box;display:flex}.monaco-editor .peekview-widget .head .peekview-title{display:flex;align-items:center;font-size:13px;margin-left:20px;cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty){font-size:.9em;margin-left:.5em}.monaco-editor .peekview-widget .head .peekview-title .meta{white-space:nowrap}.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty):before{content:"-";padding:0 .3em}.monaco-editor .peekview-widget .head .peekview-actions{flex:1;text-align:right;padding-right:2px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar{display:inline-block}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar,.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar>.actions-container{height:100%}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar .action-item{margin-left:4px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar .action-label{width:16px;height:100%;margin:0;line-height:inherit;background-repeat:no-repeat;background-position:50%}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar .action-label.codicon{margin:0}.monaco-editor .peekview-widget>.body{border-top:1px solid;position:relative}.monaco-editor .peekview-widget .head .peekview-title .codicon{margin-right:4px}.monaco-editor .zone-widget{position:absolute;z-index:10}.monaco-editor .zone-widget .zone-widget-container{border-top-style:solid;border-bottom-style:solid;border-top-width:0;border-bottom-width:0;position:relative}.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget{border-top-width:1px;border-bottom-width:1px}.monaco-editor .reference-zone-widget .inline{display:inline-block;vertical-align:top}.monaco-editor .reference-zone-widget .messages{height:100%;width:100%;text-align:center;padding:3em 0}.monaco-editor .reference-zone-widget .ref-tree{line-height:23px}.monaco-editor .reference-zone-widget .ref-tree .reference{text-overflow:ellipsis;overflow:hidden}.monaco-editor .reference-zone-widget .ref-tree .reference-file{display:inline-flex;width:100%;height:100%}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file{color:inherit!important}.monaco-editor .reference-zone-widget .ref-tree .reference-file .count{margin-right:12px;margin-left:auto}.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file{font-weight:700}.monaco-icon-label{display:flex;overflow:hidden;text-overflow:ellipsis}.monaco-icon-label:before{background-size:16px;background-position:0;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;line-height:inherit!important;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:top;flex-shrink:0}.monaco-icon-label>.monaco-icon-label-container{min-width:0;overflow:hidden;text-overflow:ellipsis;flex:1}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{color:inherit;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name>.label-separator{margin:0 2px;opacity:.5}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.7;margin-left:.5em;font-size:.9em;white-space:pre}.monaco-icon-label.italic>.monaco-icon-description-container>.label-description,.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{font-style:italic}.monaco-icon-label:after{opacity:.75;font-size:90%;font-weight:600;padding:0 16px 0 5px;text-align:center}.monaco-list:focus .selected .monaco-icon-label,.monaco-list:focus .selected .monaco-icon-label:after,.monaco-tree.focused .selected .monaco-icon-label,.monaco-tree.focused .selected .monaco-icon-label:after{color:inherit!important}.monaco-list-row.focused.selected .label-description,.monaco-list-row.selected .label-description,.monaco-tree-row.focused.selected .label-description,.monaco-tree-row.selected .label-description{opacity:.8}.monaco-count-badge{padding:3px 5px;border-radius:11px;font-size:11px;min-width:18px;min-height:18px;line-height:11px;font-weight:400;text-align:center;display:inline-block;box-sizing:border-box}.monaco-split-view2{position:relative;width:100%;height:100%}.monaco-split-view2>.sash-container{position:absolute;width:100%;height:100%;pointer-events:none}.monaco-split-view2>.sash-container>.monaco-sash{pointer-events:auto}.monaco-split-view2>.split-view-container{width:100%;height:100%;white-space:nowrap;position:relative}.monaco-split-view2>.split-view-container>.split-view-view{white-space:normal;position:absolute}.monaco-split-view2>.split-view-container>.split-view-view:not(.visible){display:none}.monaco-split-view2.vertical>.split-view-container>.split-view-view{width:100%}.monaco-split-view2.horizontal>.split-view-container>.split-view-view{height:100%}.monaco-split-view2.separator-border>.split-view-container>.split-view-view:not(:first-child):before{content:" ";position:absolute;top:0;left:0;z-index:5;pointer-events:none;background-color:var(--separator-border)}.monaco-split-view2.separator-border.horizontal>.split-view-container>.split-view-view:not(:first-child):before{height:100%;width:1px}.monaco-split-view2.separator-border.vertical>.split-view-container>.split-view-view:not(:first-child):before{height:1px;width:100%}.monaco-editor .goto-definition-link{text-decoration:underline;cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .severity-icon{display:inline-block;vertical-align:text-top;margin-right:4px}.monaco-editor .marker-widget{text-overflow:ellipsis;white-space:nowrap}.monaco-editor .marker-widget>.stale{opacity:.6;font-style:italic}.monaco-editor .marker-widget .title{display:inline-block;padding-right:5px}.monaco-editor .marker-widget .descriptioncontainer{position:absolute;white-space:pre;-moz-user-select:text;user-select:text;-webkit-user-select:text;-ms-user-select:text;padding:8px 12px 0 20px}.monaco-editor .marker-widget .descriptioncontainer .message{display:flex;flex-direction:column}.monaco-editor .marker-widget .descriptioncontainer .message .details{padding-left:6px}.monaco-editor .marker-widget .descriptioncontainer .message .source,.monaco-editor .marker-widget .descriptioncontainer .message span.code{opacity:.6}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link{opacity:.6;color:inherit}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before{content:"("}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after{content:")"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under}.monaco-editor .marker-widget .descriptioncontainer .filename{cursor:pointer}.monaco-editor-hover{cursor:default;position:absolute;overflow:hidden;z-index:50;-moz-user-select:text;user-select:text;-webkit-user-select:text;-ms-user-select:text;box-sizing:initial;-webkit-animation:fadein .1s linear;animation:fadein .1s linear;line-height:1.5em}.monaco-editor-hover.hidden{display:none}.monaco-editor-hover .hover-contents{padding:4px 8px}.monaco-editor-hover .markdown-hover>.hover-contents:not(.code-hover-contents){max-width:500px;word-wrap:break-word}.monaco-editor-hover .markdown-hover>.hover-contents:not(.code-hover-contents) hr{min-width:100vw}.monaco-editor-hover p,.monaco-editor-hover ul{margin:8px 0}.monaco-editor-hover code{font-family:var(--monaco-monospace-font)}.monaco-editor-hover hr{margin:4px -10px -6px;height:1px}.monaco-editor-hover p:first-child,.monaco-editor-hover ul:first-child{margin-top:0}.monaco-editor-hover p:last-child,.monaco-editor-hover ul:last-child{margin-bottom:0}.monaco-editor-hover ol,.monaco-editor-hover ul{padding-left:20px}.monaco-editor-hover li>p{margin-bottom:0}.monaco-editor-hover li>ul{margin-top:0}.monaco-editor-hover code{border-radius:3px;padding:0 .4em}.monaco-editor-hover .monaco-tokenized-source{white-space:pre-wrap;word-break:break-all}.monaco-editor-hover .hover-row.status-bar{font-size:12px;line-height:22px}.monaco-editor-hover .hover-row.status-bar .actions{display:flex;padding:0 8px}.monaco-editor-hover .hover-row.status-bar .actions .action-container{margin-right:16px;cursor:pointer}.monaco-editor-hover .hover-row.status-bar .actions .action-container .action .icon{padding-right:4px}.monaco-editor-hover .markdown-hover .hover-contents .codicon{color:inherit;font-size:inherit;vertical-align:middle}.monaco-editor-hover .hover-contents a.code-link:before{content:"("}.monaco-editor-hover .hover-contents a.code-link:after{content:")"}.monaco-editor-hover .hover-contents a.code-link{color:inherit}.monaco-editor-hover .hover-contents a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under}.colorpicker-widget{height:190px;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-editor .colorpicker-hover:focus{outline:none}.colorpicker-header{display:flex;height:24px;position:relative;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=");background-size:9px 9px;-ms-interpolation-mode:nearest-neighbor;image-rendering:-moz-crisp-edges;image-rendering:pixelated}.colorpicker-header .picked-color{width:216px;line-height:24px;cursor:pointer;color:#fff;flex:1;text-align:center}.colorpicker-header .picked-color.light{color:#000}.colorpicker-header .original-color{width:74px;z-index:inherit;cursor:pointer}.colorpicker-body{display:flex;padding:8px;position:relative}.colorpicker-body .saturation-wrap{overflow:hidden;height:150px;position:relative;min-width:220px;flex:1}.colorpicker-body .saturation-box{height:150px;position:absolute}.colorpicker-body .saturation-selection{width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid #fff;border-radius:100%;box-shadow:0 0 2px rgba(0,0,0,.8);position:absolute}.colorpicker-body .strip{width:25px;height:150px}.colorpicker-body .hue-strip{background:linear-gradient(180deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.colorpicker-body .hue-strip,.colorpicker-body .opacity-strip{position:relative;margin-left:8px;cursor:-webkit-grab;cursor:grab}.colorpicker-body .opacity-strip{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=");background-size:9px 9px;-ms-interpolation-mode:nearest-neighbor;image-rendering:-moz-crisp-edges;image-rendering:pixelated}.colorpicker-body .strip.grabbing{cursor:-webkit-grabbing;cursor:grabbing}.colorpicker-body .slider{position:absolute;top:0;left:-2px;width:calc(100% + 4px);height:4px;box-sizing:border-box;border:1px solid hsla(0,0%,100%,.71);box-shadow:0 0 1px rgba(0,0,0,.85)}.colorpicker-body .strip .overlay{height:150px;pointer-events:none}.monaco-editor .detected-link,.monaco-editor .detected-link-active{text-decoration:underline;text-underline-position:under}.monaco-editor .detected-link-active{cursor:pointer}.monaco-editor .parameter-hints-widget{z-index:10;display:flex;flex-direction:column;line-height:1.5em}.monaco-editor .parameter-hints-widget>.wrapper{max-width:440px;display:flex;flex-direction:row}.monaco-editor .parameter-hints-widget.multiple{min-height:3.3em;padding:0}.monaco-editor .parameter-hints-widget.visible{transition:left .05s ease-in-out}.monaco-editor .parameter-hints-widget p,.monaco-editor .parameter-hints-widget ul{margin:8px 0}.monaco-editor .parameter-hints-widget .body,.monaco-editor .parameter-hints-widget .monaco-scrollable-element{display:flex;flex-direction:column;min-height:100%}.monaco-editor .parameter-hints-widget .signature{padding:4px 5px}.monaco-editor .parameter-hints-widget .docs{padding:0 10px 0 5px;white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs.empty{display:none}.monaco-editor .parameter-hints-widget .docs .markdown-docs{white-space:normal}.monaco-editor .parameter-hints-widget .docs .markdown-docs code{font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .docs .code{white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs code{border-radius:3px;padding:0 .4em}.monaco-editor .parameter-hints-widget .controls{display:none;flex-direction:column;align-items:center;min-width:22px;justify-content:flex-end}.monaco-editor .parameter-hints-widget.multiple .controls{display:flex;padding:0 2px}.monaco-editor .parameter-hints-widget.multiple .button{width:16px;height:16px;background-repeat:no-repeat;cursor:pointer}.monaco-editor .parameter-hints-widget .button.previous{bottom:24px}.monaco-editor .parameter-hints-widget .overloads{text-align:center;height:12px;line-height:12px;opacity:.5;font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .signature .parameter.active{font-weight:700;text-decoration:underline}.monaco-editor .parameter-hints-widget .documentation-parameter>.parameter{font-weight:700;margin-right:.5em}.monaco-editor .rename-box{z-index:100;color:inherit}.monaco-editor .rename-box.preview{padding:3px 3px 0}.monaco-editor .rename-box .rename-input{padding:3px;width:calc(100% - 6px)}.monaco-editor .rename-box .rename-label{display:none;opacity:.8}.monaco-editor .rename-box.preview .rename-label{display:inherit}.monaco-editor .snippet-placeholder{min-width:2px}.monaco-editor .finish-snippet-placeholder,.monaco-editor .snippet-placeholder{outline-style:solid;outline-width:1px}.monaco-editor .suggest-widget{z-index:40;width:430px}.monaco-editor .suggest-widget>.details,.monaco-editor .suggest-widget>.message,.monaco-editor .suggest-widget>.tree{width:100%;border-style:solid;border-width:1px;box-sizing:border-box}.monaco-editor.hc-black .suggest-widget>.details,.monaco-editor.hc-black .suggest-widget>.message,.monaco-editor.hc-black .suggest-widget>.tree{border-width:2px}.monaco-editor .suggest-widget.docs-side{width:660px}.monaco-editor .suggest-widget.docs-side>.details,.monaco-editor .suggest-widget.docs-side>.tree{width:50%;float:left}.monaco-editor .suggest-widget.docs-side.list-right>.details,.monaco-editor .suggest-widget.docs-side.list-right>.tree{float:right}.monaco-editor .suggest-widget>.details ol,.monaco-editor .suggest-widget>.details ul{padding-left:20px}.monaco-editor .suggest-widget>.details p code{font-family:var(--monaco-monospace-font)}.monaco-editor .suggest-widget>.message{padding-left:22px}.monaco-editor .suggest-widget>.tree{height:100%}.monaco-editor .suggest-widget .monaco-list{-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row{display:flex;-mox-box-sizing:border-box;box-sizing:border-box;padding-right:10px;background-repeat:no-repeat;background-position:2px 2px;white-space:nowrap;cursor:pointer;touch-action:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents{flex:1;height:100%;overflow:hidden;padding-left:2px}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main{display:flex;overflow:hidden;text-overflow:ellipsis;white-space:pre;justify-content:space-between}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{display:flex}.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight{font-weight:700}.monaco-editor .suggest-widget>.suggest-status-bar{visibility:hidden;position:absolute;left:0;box-sizing:border-box;display:flex;flex-flow:row nowrap;justify-content:space-between;width:100%;font-size:80%;border-left-width:1px;border-left-style:solid;border-right-width:1px;border-right-style:solid;border-bottom-width:1px;border-bottom-style:solid;padding:1px 8px 1px 4px;box-shadow:0 -.5px 3px #ddd}.monaco-editor .suggest-widget>.suggest-status-bar span{opacity:.7}.monaco-editor .suggest-widget.list-right.docs-side>.suggest-status-bar{left:auto;right:0}.monaco-editor .suggest-widget.docs-side>.suggest-status-bar{width:50%}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.header>.codicon-close,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:before{color:inherit;opacity:1;font-size:14px;cursor:pointer}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.header>.codicon-close{position:absolute;top:2px;right:2px}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.header>.codicon-close:hover,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:hover{opacity:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.signature-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{opacity:.7}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label{margin-left:4px;opacity:.4;font-size:90%;text-overflow:ellipsis;overflow:hidden;line-height:17px;align-self:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{margin-left:.8em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label>.monaco-tokenized-source{display:inline}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{display:none}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused>.contents>.main>.right.always-show-details>.details-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right.always-show-details>.details-label{display:inline}.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:calc(100% - 26px)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left{flex-shrink:1;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.monaco-icon-label{flex-shrink:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{overflow:hidden;flex-shrink:0;max-width:45%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:inline-block;position:absolute;right:10px;width:18px;height:18px;visibility:hidden}.monaco-editor .suggest-widget.docs-below .monaco-list .monaco-list-row>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none!important}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right:not(.always-show-details)>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main>.right:not(.always-show-details)>.readMore{display:inline-block}.monaco-editor .suggest-widget.docs-below .monaco-list .monaco-list-row>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:hover>.contents>.main>.right>.readMore{visibility:visible}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated{opacity:.66;text-decoration:unset}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated>.monaco-icon-label-container>.monaco-icon-name-container{text-decoration:line-through}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label:before{height:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon{display:block;height:16px;width:16px;margin-left:2px;background-repeat:no-repeat;background-size:80%;background-position:50%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon{display:flex;align-items:center;margin-right:4px}.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon:before{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan{margin:0 0 0 .3em;border:.1em solid #000;width:.7em;height:.7em;display:inline-block}.monaco-editor .suggest-widget .details{display:flex;flex-direction:column;cursor:default}.monaco-editor .suggest-widget .details.no-docs{display:none}.monaco-editor .suggest-widget.docs-below .details{border-top-width:0}.monaco-editor .suggest-widget .details>.monaco-scrollable-element{flex:1}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body{position:absolute;box-sizing:border-box;height:100%;width:100%}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.header>.type{flex:2;overflow:hidden;text-overflow:ellipsis;opacity:.7;word-break:break-all;margin:0 24px 0 0;padding:4px 0 12px 5px}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs{margin:0;padding:4px 5px;white-space:pre-wrap}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs{padding:0;white-space:normal;min-height:calc(1rem + 8px)}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs>div,.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs>span:not(:empty){padding:4px 5px}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:first-child{margin-top:0}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:last-child{margin-bottom:0}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>.docs .code{white-space:pre-wrap;word-wrap:break-word}.monaco-editor .suggest-widget .details>.monaco-scrollable-element>.body>p:empty{display:none}.monaco-editor .suggest-widget .details code{border-radius:3px;padding:0 .4em}.monaco-editor .suggest-insert-unexpected{font-style:italic}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar{visibility:visible}.monaco-editor .suggest-widget.with-status-bar>.tree{margin-bottom:18px}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar span{min-height:18px}.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused>.contents>.main>.right:not(.always-show-details)>.readMore,.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:100%}@font-face{font-family:codicon;src:url(/assets/fonts/codicon.a609dc0f.ttf) format("truetype")}.codicon[class*=codicon-]{font:normal normal normal 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none}.codicon-add:before,.codicon-gist-new:before,.codicon-plus:before,.codicon-repo-create:before{content:"\ea60"}.codicon-light-bulb:before,.codicon-lightbulb:before{content:"\ea61"}.codicon-repo-delete:before,.codicon-repo:before{content:"\ea62"}.codicon-gist-fork:before,.codicon-repo-forked:before{content:"\ea63"}.codicon-git-pull-request-abandoned:before,.codicon-git-pull-request:before{content:"\ea64"}.codicon-keyboard:before,.codicon-record-keys:before{content:"\ea65"}.codicon-tag-add:before,.codicon-tag-remove:before,.codicon-tag:before{content:"\ea66"}.codicon-person-add:before,.codicon-person-filled:before,.codicon-person-follow:before,.codicon-person-outline:before,.codicon-person:before{content:"\ea67"}.codicon-git-branch-create:before,.codicon-git-branch-delete:before,.codicon-git-branch:before,.codicon-source-control:before{content:"\ea68"}.codicon-mirror-public:before,.codicon-mirror:before{content:"\ea69"}.codicon-star-add:before,.codicon-star-delete:before,.codicon-star-empty:before,.codicon-star:before{content:"\ea6a"}.codicon-comment-add:before,.codicon-comment:before{content:"\ea6b"}.codicon-alert:before,.codicon-warning:before{content:"\ea6c"}.codicon-search-save:before,.codicon-search:before{content:"\ea6d"}.codicon-log-out:before,.codicon-sign-out:before{content:"\ea6e"}.codicon-log-in:before,.codicon-sign-in:before{content:"\ea6f"}.codicon-eye-unwatch:before,.codicon-eye-watch:before,.codicon-eye:before{content:"\ea70"}.codicon-circle-filled:before,.codicon-close-dirty:before,.codicon-debug-breakpoint-disabled:before,.codicon-debug-breakpoint:before,.codicon-debug-hint:before,.codicon-primitive-dot:before{content:"\ea71"}.codicon-primitive-square:before{content:"\ea72"}.codicon-edit:before,.codicon-pencil:before{content:"\ea73"}.codicon-info:before,.codicon-issue-opened:before{content:"\ea74"}.codicon-gist-private:before,.codicon-git-fork-private:before,.codicon-lock:before,.codicon-mirror-private:before{content:"\ea75"}.codicon-close:before,.codicon-remove-close:before,.codicon-x:before{content:"\ea76"}.codicon-repo-sync:before,.codicon-sync:before{content:"\ea77"}.codicon-clone:before,.codicon-desktop-download:before{content:"\ea78"}.codicon-beaker:before,.codicon-microscope:before{content:"\ea79"}.codicon-device-desktop:before,.codicon-vm:before{content:"\ea7a"}.codicon-file-text:before,.codicon-file:before{content:"\ea7b"}.codicon-ellipsis:before,.codicon-kebab-horizontal:before,.codicon-more:before{content:"\ea7c"}.codicon-mail-reply:before,.codicon-reply:before{content:"\ea7d"}.codicon-organization-filled:before,.codicon-organization-outline:before,.codicon-organization:before{content:"\ea7e"}.codicon-file-add:before,.codicon-new-file:before{content:"\ea7f"}.codicon-file-directory-create:before,.codicon-new-folder:before{content:"\ea80"}.codicon-trash:before,.codicon-trashcan:before{content:"\ea81"}.codicon-clock:before,.codicon-history:before{content:"\ea82"}.codicon-file-directory:before,.codicon-folder:before,.codicon-symbol-folder:before{content:"\ea83"}.codicon-github:before,.codicon-logo-github:before,.codicon-mark-github:before{content:"\ea84"}.codicon-console:before,.codicon-repl:before,.codicon-terminal:before{content:"\ea85"}.codicon-symbol-event:before,.codicon-zap:before{content:"\ea86"}.codicon-error:before,.codicon-stop:before{content:"\ea87"}.codicon-symbol-variable:before,.codicon-variable:before{content:"\ea88"}.codicon-array:before,.codicon-symbol-array:before{content:"\ea8a"}.codicon-symbol-module:before,.codicon-symbol-namespace:before,.codicon-symbol-object:before,.codicon-symbol-package:before{content:"\ea8b"}.codicon-symbol-constructor:before,.codicon-symbol-function:before,.codicon-symbol-method:before{content:"\ea8c"}.codicon-symbol-boolean:before,.codicon-symbol-null:before{content:"\ea8f"}.codicon-symbol-number:before,.codicon-symbol-numeric:before{content:"\ea90"}.codicon-symbol-struct:before,.codicon-symbol-structure:before{content:"\ea91"}.codicon-symbol-parameter:before,.codicon-symbol-type-parameter:before{content:"\ea92"}.codicon-symbol-key:before,.codicon-symbol-text:before{content:"\ea93"}.codicon-go-to-file:before,.codicon-symbol-reference:before{content:"\ea94"}.codicon-symbol-enum:before,.codicon-symbol-value:before{content:"\ea95"}.codicon-symbol-ruler:before,.codicon-symbol-unit:before{content:"\ea96"}.codicon-activate-breakpoints:before{content:"\ea97"}.codicon-archive:before{content:"\ea98"}.codicon-arrow-both:before{content:"\ea99"}.codicon-arrow-down:before{content:"\ea9a"}.codicon-arrow-left:before{content:"\ea9b"}.codicon-arrow-right:before{content:"\ea9c"}.codicon-arrow-small-down:before{content:"\ea9d"}.codicon-arrow-small-left:before{content:"\ea9e"}.codicon-arrow-small-right:before{content:"\ea9f"}.codicon-arrow-small-up:before{content:"\eaa0"}.codicon-arrow-up:before{content:"\eaa1"}.codicon-bell:before{content:"\eaa2"}.codicon-bold:before{content:"\eaa3"}.codicon-book:before{content:"\eaa4"}.codicon-bookmark:before{content:"\eaa5"}.codicon-debug-breakpoint-conditional-unverified:before{content:"\eaa6"}.codicon-debug-breakpoint-conditional-disabled:before,.codicon-debug-breakpoint-conditional:before{content:"\eaa7"}.codicon-debug-breakpoint-data-unverified:before{content:"\eaa8"}.codicon-debug-breakpoint-data-disabled:before,.codicon-debug-breakpoint-data:before{content:"\eaa9"}.codicon-debug-breakpoint-log-unverified:before{content:"\eaaa"}.codicon-debug-breakpoint-log-disabled:before,.codicon-debug-breakpoint-log:before{content:"\eaab"}.codicon-briefcase:before{content:"\eaac"}.codicon-broadcast:before{content:"\eaad"}.codicon-browser:before{content:"\eaae"}.codicon-bug:before{content:"\eaaf"}.codicon-calendar:before{content:"\eab0"}.codicon-case-sensitive:before{content:"\eab1"}.codicon-check:before{content:"\eab2"}.codicon-checklist:before{content:"\eab3"}.codicon-chevron-down:before{content:"\eab4"}.codicon-chevron-left:before{content:"\eab5"}.codicon-chevron-right:before{content:"\eab6"}.codicon-chevron-up:before{content:"\eab7"}.codicon-chrome-close:before{content:"\eab8"}.codicon-chrome-maximize:before{content:"\eab9"}.codicon-chrome-minimize:before{content:"\eaba"}.codicon-chrome-restore:before{content:"\eabb"}.codicon-circle-outline:before,.codicon-debug-breakpoint-unverified:before{content:"\eabc"}.codicon-circle-slash:before{content:"\eabd"}.codicon-circuit-board:before{content:"\eabe"}.codicon-clear-all:before{content:"\eabf"}.codicon-clippy:before{content:"\eac0"}.codicon-close-all:before{content:"\eac1"}.codicon-cloud-download:before{content:"\eac2"}.codicon-cloud-upload:before{content:"\eac3"}.codicon-code:before{content:"\eac4"}.codicon-collapse-all:before{content:"\eac5"}.codicon-color-mode:before{content:"\eac6"}.codicon-comment-discussion:before{content:"\eac7"}.codicon-compare-changes:before{content:"\eac8"}.codicon-credit-card:before{content:"\eac9"}.codicon-dash:before{content:"\eacc"}.codicon-dashboard:before{content:"\eacd"}.codicon-database:before{content:"\eace"}.codicon-debug-continue:before{content:"\eacf"}.codicon-debug-disconnect:before{content:"\ead0"}.codicon-debug-pause:before{content:"\ead1"}.codicon-debug-restart:before{content:"\ead2"}.codicon-debug-start:before{content:"\ead3"}.codicon-debug-step-into:before{content:"\ead4"}.codicon-debug-step-out:before{content:"\ead5"}.codicon-debug-step-over:before{content:"\ead6"}.codicon-debug-stop:before{content:"\ead7"}.codicon-debug:before{content:"\ead8"}.codicon-device-camera-video:before{content:"\ead9"}.codicon-device-camera:before{content:"\eada"}.codicon-device-mobile:before{content:"\eadb"}.codicon-diff-added:before{content:"\eadc"}.codicon-diff-ignored:before{content:"\eadd"}.codicon-diff-modified:before{content:"\eade"}.codicon-diff-removed:before{content:"\eadf"}.codicon-diff-renamed:before{content:"\eae0"}.codicon-diff:before{content:"\eae1"}.codicon-discard:before{content:"\eae2"}.codicon-editor-layout:before{content:"\eae3"}.codicon-empty-window:before{content:"\eae4"}.codicon-exclude:before{content:"\eae5"}.codicon-extensions:before{content:"\eae6"}.codicon-eye-closed:before{content:"\eae7"}.codicon-file-binary:before{content:"\eae8"}.codicon-file-code:before{content:"\eae9"}.codicon-file-media:before{content:"\eaea"}.codicon-file-pdf:before{content:"\eaeb"}.codicon-file-submodule:before{content:"\eaec"}.codicon-file-symlink-directory:before{content:"\eaed"}.codicon-file-symlink-file:before{content:"\eaee"}.codicon-file-zip:before{content:"\eaef"}.codicon-files:before{content:"\eaf0"}.codicon-filter:before{content:"\eaf1"}.codicon-flame:before{content:"\eaf2"}.codicon-fold-down:before{content:"\eaf3"}.codicon-fold-up:before{content:"\eaf4"}.codicon-fold:before{content:"\eaf5"}.codicon-folder-active:before{content:"\eaf6"}.codicon-folder-opened:before{content:"\eaf7"}.codicon-gear:before{content:"\eaf8"}.codicon-gift:before{content:"\eaf9"}.codicon-gist-secret:before{content:"\eafa"}.codicon-gist:before{content:"\eafb"}.codicon-git-commit:before{content:"\eafc"}.codicon-git-compare:before{content:"\eafd"}.codicon-git-merge:before{content:"\eafe"}.codicon-github-action:before{content:"\eaff"}.codicon-github-alt:before{content:"\eb00"}.codicon-globe:before{content:"\eb01"}.codicon-grabber:before{content:"\eb02"}.codicon-graph:before{content:"\eb03"}.codicon-gripper:before{content:"\eb04"}.codicon-heart:before{content:"\eb05"}.codicon-home:before{content:"\eb06"}.codicon-horizontal-rule:before{content:"\eb07"}.codicon-hubot:before{content:"\eb08"}.codicon-inbox:before{content:"\eb09"}.codicon-issue-closed:before{content:"\eb0a"}.codicon-issue-reopened:before{content:"\eb0b"}.codicon-issues:before{content:"\eb0c"}.codicon-italic:before{content:"\eb0d"}.codicon-jersey:before{content:"\eb0e"}.codicon-json:before{content:"\eb0f"}.codicon-kebab-vertical:before{content:"\eb10"}.codicon-key:before{content:"\eb11"}.codicon-law:before{content:"\eb12"}.codicon-lightbulb-autofix:before{content:"\eb13"}.codicon-link-external:before{content:"\eb14"}.codicon-link:before{content:"\eb15"}.codicon-list-ordered:before{content:"\eb16"}.codicon-list-unordered:before{content:"\eb17"}.codicon-live-share:before{content:"\eb18"}.codicon-loading:before{content:"\eb19"}.codicon-location:before{content:"\eb1a"}.codicon-mail-read:before{content:"\eb1b"}.codicon-mail:before{content:"\eb1c"}.codicon-markdown:before{content:"\eb1d"}.codicon-megaphone:before{content:"\eb1e"}.codicon-mention:before{content:"\eb1f"}.codicon-milestone:before{content:"\eb20"}.codicon-mortar-board:before{content:"\eb21"}.codicon-move:before{content:"\eb22"}.codicon-multiple-windows:before{content:"\eb23"}.codicon-mute:before{content:"\eb24"}.codicon-no-newline:before{content:"\eb25"}.codicon-note:before{content:"\eb26"}.codicon-octoface:before{content:"\eb27"}.codicon-open-preview:before{content:"\eb28"}.codicon-package:before{content:"\eb29"}.codicon-paintcan:before{content:"\eb2a"}.codicon-pin:before{content:"\eb2b"}.codicon-play:before{content:"\eb2c"}.codicon-plug:before{content:"\eb2d"}.codicon-preserve-case:before{content:"\eb2e"}.codicon-preview:before{content:"\eb2f"}.codicon-project:before{content:"\eb30"}.codicon-pulse:before{content:"\eb31"}.codicon-question:before{content:"\eb32"}.codicon-quote:before{content:"\eb33"}.codicon-radio-tower:before{content:"\eb34"}.codicon-reactions:before{content:"\eb35"}.codicon-references:before{content:"\eb36"}.codicon-refresh:before{content:"\eb37"}.codicon-regex:before{content:"\eb38"}.codicon-remote-explorer:before{content:"\eb39"}.codicon-remote:before{content:"\eb3a"}.codicon-remove:before{content:"\eb3b"}.codicon-replace-all:before{content:"\eb3c"}.codicon-replace:before{content:"\eb3d"}.codicon-repo-clone:before{content:"\eb3e"}.codicon-repo-force-push:before{content:"\eb3f"}.codicon-repo-pull:before{content:"\eb40"}.codicon-repo-push:before{content:"\eb41"}.codicon-report:before{content:"\eb42"}.codicon-request-changes:before{content:"\eb43"}.codicon-rocket:before{content:"\eb44"}.codicon-root-folder-opened:before{content:"\eb45"}.codicon-root-folder:before{content:"\eb46"}.codicon-rss:before{content:"\eb47"}.codicon-ruby:before{content:"\eb48"}.codicon-save-all:before{content:"\eb49"}.codicon-save-as:before{content:"\eb4a"}.codicon-save:before{content:"\eb4b"}.codicon-screen-full:before{content:"\eb4c"}.codicon-screen-normal:before{content:"\eb4d"}.codicon-search-stop:before{content:"\eb4e"}.codicon-server:before{content:"\eb50"}.codicon-settings-gear:before{content:"\eb51"}.codicon-settings:before{content:"\eb52"}.codicon-shield:before{content:"\eb53"}.codicon-smiley:before{content:"\eb54"}.codicon-sort-precedence:before{content:"\eb55"}.codicon-split-horizontal:before{content:"\eb56"}.codicon-split-vertical:before{content:"\eb57"}.codicon-squirrel:before{content:"\eb58"}.codicon-star-full:before{content:"\eb59"}.codicon-star-half:before{content:"\eb5a"}.codicon-symbol-class:before{content:"\eb5b"}.codicon-symbol-color:before{content:"\eb5c"}.codicon-symbol-constant:before{content:"\eb5d"}.codicon-symbol-enum-member:before{content:"\eb5e"}.codicon-symbol-field:before{content:"\eb5f"}.codicon-symbol-file:before{content:"\eb60"}.codicon-symbol-interface:before{content:"\eb61"}.codicon-symbol-keyword:before{content:"\eb62"}.codicon-symbol-misc:before{content:"\eb63"}.codicon-symbol-operator:before{content:"\eb64"}.codicon-symbol-property:before{content:"\eb65"}.codicon-symbol-snippet:before{content:"\eb66"}.codicon-tasklist:before{content:"\eb67"}.codicon-telescope:before{content:"\eb68"}.codicon-text-size:before{content:"\eb69"}.codicon-three-bars:before{content:"\eb6a"}.codicon-thumbsdown:before{content:"\eb6b"}.codicon-thumbsup:before{content:"\eb6c"}.codicon-tools:before{content:"\eb6d"}.codicon-triangle-down:before{content:"\eb6e"}.codicon-triangle-left:before{content:"\eb6f"}.codicon-triangle-right:before{content:"\eb70"}.codicon-triangle-up:before{content:"\eb71"}.codicon-twitter:before{content:"\eb72"}.codicon-unfold:before{content:"\eb73"}.codicon-unlock:before{content:"\eb74"}.codicon-unmute:before{content:"\eb75"}.codicon-unverified:before{content:"\eb76"}.codicon-verified:before{content:"\eb77"}.codicon-versions:before{content:"\eb78"}.codicon-vm-active:before{content:"\eb79"}.codicon-vm-outline:before{content:"\eb7a"}.codicon-vm-running:before{content:"\eb7b"}.codicon-watch:before{content:"\eb7c"}.codicon-whitespace:before{content:"\eb7d"}.codicon-whole-word:before{content:"\eb7e"}.codicon-window:before{content:"\eb7f"}.codicon-word-wrap:before{content:"\eb80"}.codicon-zoom-in:before{content:"\eb81"}.codicon-zoom-out:before{content:"\eb82"}.codicon-list-filter:before{content:"\eb83"}.codicon-list-flat:before{content:"\eb84"}.codicon-list-selection:before,.codicon-selection:before{content:"\eb85"}.codicon-list-tree:before{content:"\eb86"}.codicon-debug-breakpoint-function-unverified:before{content:"\eb87"}.codicon-debug-breakpoint-function-disabled:before,.codicon-debug-breakpoint-function:before{content:"\eb88"}.codicon-debug-stackframe-active:before{content:"\eb89"}.codicon-debug-stackframe-dot:before{content:"\eb8a"}.codicon-debug-stackframe-focused:before,.codicon-debug-stackframe:before{content:"\eb8b"}.codicon-debug-breakpoint-unsupported:before{content:"\eb8c"}.codicon-symbol-string:before{content:"\eb8d"}.codicon-debug-reverse-continue:before{content:"\eb8e"}.codicon-debug-step-back:before{content:"\eb8f"}.codicon-debug-restart-frame:before{content:"\eb90"}.codicon-debug-alternate:before{content:"\eb91"}.codicon-call-incoming:before{content:"\eb92"}.codicon-call-outgoing:before{content:"\eb93"}.codicon-menu:before{content:"\eb94"}.codicon-expand-all:before{content:"\eb95"}.codicon-feedback:before{content:"\eb96"}.codicon-group-by-ref-type:before{content:"\eb97"}.codicon-ungroup-by-ref-type:before{content:"\eb98"}.codicon-debug-alt:before{content:"\f101"}@-webkit-keyframes codicon-spin{to{transform:rotate(1turn)}}@keyframes codicon-spin{to{transform:rotate(1turn)}}.codicon-animation-spin{-webkit-animation:codicon-spin 1.5s linear infinite;animation:codicon-spin 1.5s linear infinite}.monaco-list .monaco-list-row.focused.selected .outline-element-decoration,.monaco-list .monaco-list-row.focused.selected .outline-element .monaco-highlighted-label{color:inherit!important}.monaco-list .outline-element{display:flex;flex:1;flex-flow:row nowrap;align-items:center}.monaco-list .outline-element .monaco-highlighted-label{color:var(--outline-element-color)}.monaco-tree .monaco-tree-row.focused .outline-element .outline-element-detail{visibility:inherit}.monaco-list .outline-element .outline-element-decoration{opacity:.75;font-size:90%;font-weight:600;padding:0 12px 0 5px;margin-left:auto;text-align:center;color:var(--outline-element-color)}.monaco-list .outline-element .outline-element-decoration.bubble{font-family:codicon;font-size:14px;opacity:.4}.monaco-list .outline-element .outline-element-icon{margin-right:4px}.monaco-icon-label.deprecated{text-decoration:line-through;opacity:.66}.monaco-editor .accessibilityHelpWidget{padding:10px;vertical-align:middle;overflow:scroll}.monaco-editor .iPadShowKeyboard{width:58px;min-width:0;height:36px;min-height:0;margin:0;padding:0;position:absolute;resize:none;overflow:hidden;background:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00OC4wMzYgNC4wMUg0LjAwOFYzMi4wM2g0NC4wMjhWNC4wMXpNNC4wMDguMDA4QTQuMDAzIDQuMDAzIDAgMDAuMDA1IDQuMDFWMzIuMDNhNC4wMDMgNC4wMDMgMCAwMDQuMDAzIDQuMDAyaDQ0LjAyOGE0LjAwMyA0LjAwMyAwIDAwNC4wMDMtNC4wMDJWNC4wMUE0LjAwMyA0LjAwMyAwIDAwNDguMDM2LjAwOEg0LjAwOHpNOC4wMSA4LjAxM2g0LjAwM3Y0LjAwM0g4LjAxVjguMDEzem0xMi4wMDggMGgtNC4wMDJ2NC4wMDNoNC4wMDJWOC4wMTN6bTQuMDAzIDBoNC4wMDJ2NC4wMDNoLTQuMDAyVjguMDEzem0xMi4wMDggMGgtNC4wMDN2NC4wMDNoNC4wMDNWOC4wMTN6bTQuMDAyIDBoNC4wMDN2NC4wMDNINDAuMDNWOC4wMTN6bS0yNC4wMTUgOC4wMDVIOC4wMXY0LjAwM2g4LjAwNnYtNC4wMDN6bTQuMDAyIDBoNC4wMDN2NC4wMDNoLTQuMDAzdi00LjAwM3ptMTIuMDA4IDBoLTQuMDAzdjQuMDAzaDQuMDAzdi00LjAwM3ptMTIuMDA4IDB2NC4wMDNoLTguMDA1di00LjAwM2g4LjAwNXptLTMyLjAyMSA4LjAwNUg4LjAxdjQuMDAzaDQuMDAzdi00LjAwM3ptNC4wMDMgMGgyMC4wMTN2NC4wMDNIMTYuMDE2di00LjAwM3ptMjguMDE4IDBINDAuMDN2NC4wMDNoNC4wMDN2LTQuMDAzeiIgZmlsbD0iIzQyNDI0MiIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImNsaXAwIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUzdjM2SDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+") 50% no-repeat;border:4px solid #f6f6f6;border-radius:4px}.monaco-editor.vs-dark .iPadShowKeyboard{background:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00OC4wMzYgNC4wMUg0LjAwOFYzMi4wM2g0NC4wMjhWNC4wMXpNNC4wMDguMDA4QTQuMDAzIDQuMDAzIDAgMDAuMDA1IDQuMDFWMzIuMDNhNC4wMDMgNC4wMDMgMCAwMDQuMDAzIDQuMDAyaDQ0LjAyOGE0LjAwMyA0LjAwMyAwIDAwNC4wMDMtNC4wMDJWNC4wMUE0LjAwMyA0LjAwMyAwIDAwNDguMDM2LjAwOEg0LjAwOHpNOC4wMSA4LjAxM2g0LjAwM3Y0LjAwM0g4LjAxVjguMDEzem0xMi4wMDggMGgtNC4wMDJ2NC4wMDNoNC4wMDJWOC4wMTN6bTQuMDAzIDBoNC4wMDJ2NC4wMDNoLTQuMDAyVjguMDEzem0xMi4wMDggMGgtNC4wMDN2NC4wMDNoNC4wMDNWOC4wMTN6bTQuMDAyIDBoNC4wMDN2NC4wMDNINDAuMDNWOC4wMTN6bS0yNC4wMTUgOC4wMDVIOC4wMXY0LjAwM2g4LjAwNnYtNC4wMDN6bTQuMDAyIDBoNC4wMDN2NC4wMDNoLTQuMDAzdi00LjAwM3ptMTIuMDA4IDBoLTQuMDAzdjQuMDAzaDQuMDAzdi00LjAwM3ptMTIuMDA4IDB2NC4wMDNoLTguMDA1di00LjAwM2g4LjAwNXptLTMyLjAyMSA4LjAwNUg4LjAxdjQuMDAzaDQuMDAzdi00LjAwM3ptNC4wMDMgMGgyMC4wMTN2NC4wMDNIMTYuMDE2di00LjAwM3ptMjguMDE4IDBINDAuMDN2NC4wMDNoNC4wMDN2LTQuMDAzeiIgZmlsbD0iI0M1QzVDNSIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImNsaXAwIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUzdjM2SDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+") 50% no-repeat;border:4px solid #252526}.monaco-editor .tokens-inspect-widget{z-index:50;-moz-user-select:text;user-select:text;-webkit-user-select:text;-ms-user-select:text;padding:10px}.tokens-inspect-separator{height:1px;border:0}.monaco-editor .tokens-inspect-widget .tm-token{font-family:monospace}.monaco-editor .tokens-inspect-widget .tm-token-length{font-weight:400;font-size:60%;float:right}.monaco-editor .tokens-inspect-widget .tm-metadata-table{width:100%}.monaco-editor .tokens-inspect-widget .tm-metadata-value{font-family:monospace;text-align:right}.monaco-editor .tokens-inspect-widget .tm-token-type{font-family:monospace}.monaco-keybinding{display:flex;align-items:center;line-height:10px}.monaco-keybinding>.monaco-keybinding-key{display:inline-block;border:1px solid hsla(0,0%,80%,.4);border-bottom-color:hsla(0,0%,73.3%,.4);border-radius:3px;box-shadow:inset 0 -1px 0 hsla(0,0%,73.3%,.4);background-color:hsla(0,0%,86.7%,.4);vertical-align:middle;color:#555;font-size:11px;padding:3px 5px;margin:0 2px}.monaco-keybinding>.monaco-keybinding-key:first-child{margin-left:0}.monaco-keybinding>.monaco-keybinding-key:last-child{margin-right:0}.hc-black .monaco-keybinding>.monaco-keybinding-key,.vs-dark .monaco-keybinding>.monaco-keybinding-key{background-color:hsla(0,0%,50.2%,.17);color:#ccc;border:1px solid rgba(51,51,51,.6);border-bottom-color:rgba(68,68,68,.6);box-shadow:inset 0 -1px 0 rgba(68,68,68,.6)}.monaco-keybinding>.monaco-keybinding-key-separator{display:inline-block}.monaco-keybinding>.monaco-keybinding-key-chord-separator{width:6px}.monaco-quick-open-widget .monaco-list .monaco-list-row .monaco-highlighted-label .highlight,.monaco-quick-open-widget .monaco-tree .monaco-tree-row .monaco-highlighted-label .highlight{color:#0066bf}.vs-dark .monaco-quick-open-widget .monaco-list .monaco-list-row .monaco-highlighted-label .highlight,.vs-dark .monaco-quick-open-widget .monaco-tree .monaco-tree-row .monaco-highlighted-label .highlight{color:#0097fb}.hc-black .monaco-quick-open-widget .monaco-list .monaco-list-row .monaco-highlighted-label .highlight,.hc-black .monaco-quick-open-widget .monaco-tree .monaco-tree-row .monaco-highlighted-label .highlight{color:#f38518}.monaco-quick-open-widget{position:absolute;width:600px;z-index:2000;padding-bottom:6px;left:50%;margin-left:-300px}.monaco-quick-open-widget .monaco-progress-container{position:absolute;left:0;top:38px;z-index:1;height:2px}.monaco-quick-open-widget .monaco-progress-container .progress-bit{height:2px}.monaco-quick-open-widget .quick-open-input{width:588px;border:none;margin:6px}.monaco-quick-open-widget .quick-open-input .monaco-inputbox{width:100%;height:25px}.monaco-quick-open-widget .quick-open-result-count{position:absolute;left:-10000px}.monaco-quick-open-widget .quick-open-tree{line-height:22px}.monaco-quick-open-widget .quick-open-tree .monaco-tree-row>.content>.sub-content{overflow:hidden}.monaco-quick-open-widget.content-changing .quick-open-tree .monaco-scrollable-element .slider{display:none}.monaco-quick-open-widget .quick-open-tree .quick-open-entry{overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;height:100%}.monaco-quick-open-widget .quick-open-tree .quick-open-entry>.quick-open-row{display:flex;align-items:center}.monaco-quick-open-widget .quick-open-tree .quick-open-entry .quick-open-entry-icon{overflow:hidden;width:16px;height:16px;margin-right:4px;display:flex;align-items:center;vertical-align:middle;flex-shrink:0}.monaco-quick-open-widget .quick-open-tree .monaco-icon-label,.monaco-quick-open-widget .quick-open-tree .monaco-icon-label .monaco-icon-label-container>.monaco-icon-name-container{flex:1}.monaco-quick-open-widget .quick-open-tree .quick-open-entry .monaco-highlighted-label span{opacity:1}.monaco-quick-open-widget .quick-open-tree .quick-open-entry .monaco-highlighted-label .codicon{vertical-align:sub}.monaco-quick-open-widget .quick-open-tree .quick-open-entry-meta{opacity:.7;line-height:normal}.monaco-quick-open-widget .quick-open-tree .content.has-group-label .quick-open-entry-keybinding{margin-right:8px}.monaco-quick-open-widget .quick-open-tree .quick-open-entry-keybinding .monaco-keybinding-key{vertical-align:text-bottom}.monaco-quick-open-widget .quick-open-tree .results-group{margin-right:18px}.monaco-quick-open-widget .quick-open-tree .focused .monaco-tree-row.focused>.content.has-actions>.results-group,.monaco-quick-open-widget .quick-open-tree .monaco-tree-row.focused>.content.has-actions>.results-group,.monaco-quick-open-widget .quick-open-tree .monaco-tree-row:hover:not(.highlighted)>.content.has-actions>.results-group{margin-right:0}.monaco-quick-open-widget .quick-open-tree .results-group-separator{border-top-width:1px;border-top-style:solid;box-sizing:border-box;margin-left:-11px;padding-left:11px}.monaco-tree .monaco-tree-row>.content.actions{position:relative;display:flex}.monaco-tree .monaco-tree-row>.content.actions>.sub-content{flex:1}.monaco-tree .monaco-tree-row>.content.actions .action-item{margin:0}.monaco-tree .monaco-tree-row>.content.actions>.primary-action-bar{line-height:22px;display:none;padding:0 .8em 0 .4em}.monaco-tree .monaco-tree-row.focused>.content.has-actions>.primary-action-bar{width:0;display:block}.monaco-tree.focused .monaco-tree-row.focused>.content.has-actions>.primary-action-bar,.monaco-tree .monaco-tree-row:hover:not(.highlighted)>.content.has-actions>.primary-action-bar,.monaco-tree .monaco-tree-row>.content.has-actions.more>.primary-action-bar{width:inherit;display:block}.monaco-tree .monaco-tree-row>.content.actions>.primary-action-bar .action-label{margin-right:.4em;margin-top:4px;background-repeat:no-repeat;width:16px;height:16px}.monaco-quick-open-widget .quick-open-tree .monaco-highlighted-label .highlight{font-weight:700}.monaco-tree{height:100%;width:100%;white-space:nowrap;-moz-user-select:none;user-select:none;-webkit-user-select:none;-ms-user-select:none;position:relative}.monaco-tree>.monaco-scrollable-element{height:100%}.monaco-tree>.monaco-scrollable-element>.monaco-tree-wrapper{height:100%;width:100%;position:relative}.monaco-tree .monaco-tree-rows{position:absolute;width:100%;height:100%}.monaco-tree .monaco-tree-rows>.monaco-tree-row{box-sizing:border-box;cursor:pointer;overflow:hidden;width:100%;touch-action:none}.monaco-tree .monaco-tree-rows>.monaco-tree-row>.content{position:relative;height:100%}.monaco-tree-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute}.monaco-tree .monaco-tree-rows>.monaco-tree-row.scrolling{display:none}.monaco-tree.highlighted .monaco-tree-rows>.monaco-tree-row:not(.highlighted){opacity:.3}.monaco-progress-container{width:100%;height:5px;overflow:hidden}.monaco-progress-container .progress-bit{width:2%;height:5px;position:absolute;left:0;display:none}.monaco-progress-container.active .progress-bit{display:inherit}.monaco-progress-container.discrete .progress-bit{left:0;transition:width .1s linear}.monaco-progress-container.discrete.done .progress-bit{width:100%}.monaco-progress-container.infinite .progress-bit{-webkit-animation-name:progress;animation-name:progress;-webkit-animation-duration:4s;animation-duration:4s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-timing-function:linear;animation-timing-function:linear;transform:translateZ(0)}@-webkit-keyframes progress{0%{transform:translateX(0) scaleX(1)}50%{transform:translateX(2500%) scaleX(3)}to{transform:translateX(4950%) scaleX(1)}}@keyframes progress{0%{transform:translateX(0) scaleX(1)}50%{transform:translateX(2500%) scaleX(3)}to{transform:translateX(4950%) scaleX(1)}}.monaco-quick-open-widget{font-size:13px}.red[data-v-390b0b18]{color:#ee6680}.wrapper[data-v-390b0b18]{display:grid;grid-template-columns:1fr}.editor-wrapper[data-v-390b0b18]{margin-top:40px;border:2px solid #eee;display:grid;grid-template-columns:1.5fr 1fr;grid-template-rows:1fr 50px;box-shadow:inset 0 0 10px #eee;padding:3px}.button-wrapper[data-v-390b0b18]{border-top:2px solid #eee;padding:15px;grid-row:2;grid-column:1/3;justify-content:center;align-items:center}.run-button[data-v-390b0b18]{background-color:#ee6680;color:#fff;border:1px solid #ee6680;padding:5px 15px;cursor:pointer;font-weight:700}.output-shell[data-v-390b0b18]{padding:20px;background:#333;color:rgb(253 255 0/80%);border-radius:5px;overflow-y:scroll;margin-right:10px;font-size:12px;height:120px;overflow-x:hidden;overflow-y:hidden}.results[data-v-390b0b18]{display:grid;grid-template-rows:20px 1fr 20px 1fr;row-gap:5px}.results h4[data-v-390b0b18]{margin:0}pre[data-v-390b0b18]{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}.badge[data-v-15b7b770]{display:inline-block;font-size:14px;height:18px;line-height:18px;border-radius:3px;padding:0 6px;color:#fff}.badge.green[data-v-15b7b770],.badge.tip[data-v-15b7b770],.badge[data-v-15b7b770]{background-color:#42b983}.badge.error[data-v-15b7b770]{background-color:#da5961}.badge.warn[data-v-15b7b770],.badge.warning[data-v-15b7b770],.badge.yellow[data-v-15b7b770]{background-color:#e7c000}.badge+.badge[data-v-15b7b770]{margin-left:5px}.theme-code-block[data-v-759a7d02]{display:none}.theme-code-block__active[data-v-759a7d02]{display:block}.theme-code-block>pre[data-v-759a7d02]{background-color:orange}.theme-code-group__nav[data-v-deefee04]{margin-bottom:-35px;background-color:#282c34;padding-bottom:22px;border-top-left-radius:6px;border-top-right-radius:6px;padding-left:10px;padding-top:10px}.theme-code-group__ul[data-v-deefee04]{margin:auto 0;padding-left:0;display:inline-flex;list-style:none}.theme-code-group__nav-tab[data-v-deefee04]{border:0;padding:5px;cursor:pointer;background-color:transparent;font-size:.85em;line-height:1.4;color:hsla(0,0%,100%,.9);font-weight:600}.theme-code-group__nav-tab-active[data-v-deefee04]{border-bottom:1px solid #42b983}.pre-blank[data-v-deefee04]{color:#42b983} \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/10.00091426.js b/docs/src/.vuepress/dist/assets/js/10.cc70ae4f.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/10.00091426.js rename to docs/src/.vuepress/dist/assets/js/10.cc70ae4f.js index 4ce6f18c..af49b3d1 100644 --- a/docs/src/.vuepress/dist/assets/js/10.00091426.js +++ b/docs/src/.vuepress/dist/assets/js/10.cc70ae4f.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[10,98],{335:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return i})),t.d(n,"language",(function(){return r}));var o="undefined"==typeof monaco?self.monaco:monaco,i={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],onEnterRules:[{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,afterText:/^\s*\*\/$/,action:{indentAction:o.languages.IndentAction.IndentOutdent,appendText:" * "}},{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,action:{indentAction:o.languages.IndentAction.None,appendText:" * "}},{beforeText:/^(\t|(\ \ ))*\ \*(\ ([^\*]|\*(?!\/))*)?$/,action:{indentAction:o.languages.IndentAction.None,appendText:"* "}},{beforeText:/^(\t|(\ \ ))*\ \*\/\s*$/,action:{indentAction:o.languages.IndentAction.None,removeText:1}}],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"`",close:"`",notIn:["string","comment"]},{open:"/**",close:" */",notIn:["string"]}],folding:{markers:{start:new RegExp("^\\s*//\\s*#?region\\b"),end:new RegExp("^\\s*//\\s*#?endregion\\b")}}},r={defaultToken:"invalid",tokenPostfix:".ts",keywords:["abstract","as","break","case","catch","class","continue","const","constructor","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","implements","import","in","infer","instanceof","interface","is","keyof","let","module","namespace","never","new","null","package","private","protected","public","readonly","require","global","return","set","static","super","switch","symbol","this","throw","true","try","type","typeof","unique","var","void","while","with","yield","async","await","of"],typeKeywords:["any","boolean","number","object","string","undefined"],operators:["<=",">=","==","!=","===","!==","=>","+","-","**","*","/","%","++","--","<<",">",">>>","&","|","^","!","~","&&","||","??","?",":","=","+=","-=","*=","**=","/=","%=","<<=",">>=",">>>=","&=","|=","^=","@"],symbols:/[=>](?!@symbols)/,"@brackets"],[/!(?=([^=]|$))/,"delimiter"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/(@digits)[eE]([\-+]?(@digits))?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?/,"number.float"],[/0[xX](@hexdigits)n?/,"number.hex"],[/0[oO]?(@octaldigits)n?/,"number.octal"],[/0[bB](@binarydigits)n?/,"number.binary"],[/(@digits)n?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string_double"],[/'/,"string","@string_single"],[/`/,"string","@string_backtick"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@jsdoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],jsdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,["regexp.escape.control","regexp.escape.control","regexp.escape.control"]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,["regexp.escape.control",{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?:|\?=|\?!)/,["regexp.escape.control","regexp.escape.control"]],[/[()]/,"regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/[^\\\/]/,"regexp"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],[/(\/)([gimsuy]*)/,[{token:"regexp",bracket:"@close",next:"@pop"},"keyword.other"]]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,{token:"regexp.escape.control",next:"@pop",bracket:"@close"}]],string_double:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],string_single:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,"string","@pop"]],string_backtick:[[/\$\{/,{token:"delimiter.bracket",next:"@bracketCounting"}],[/[^\\`$]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/`/,"string","@pop"]],bracketCounting:[[/\{/,"delimiter.bracket","@bracketCounting"],[/\}/,"delimiter.bracket","@pop"],{include:"common"}]}}},463:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return i})),t.d(n,"language",(function(){return r}));var o=t(335),i=("undefined"==typeof monaco?self.monaco:monaco,o.conf),r={defaultToken:"invalid",tokenPostfix:".js",keywords:["break","case","catch","class","continue","const","constructor","debugger","default","delete","do","else","export","extends","false","finally","for","from","function","get","if","import","in","instanceof","let","new","null","return","set","super","switch","symbol","this","throw","true","try","typeof","undefined","var","void","while","with","yield","async","await","of"],typeKeywords:[],operators:o.language.operators,symbols:o.language.symbols,escapes:o.language.escapes,digits:o.language.digits,octaldigits:o.language.octaldigits,binarydigits:o.language.binarydigits,hexdigits:o.language.hexdigits,regexpctl:o.language.regexpctl,regexpesc:o.language.regexpesc,tokenizer:o.language.tokenizer}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[10,99],{335:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return i})),t.d(n,"language",(function(){return r}));var o="undefined"==typeof monaco?self.monaco:monaco,i={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],onEnterRules:[{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,afterText:/^\s*\*\/$/,action:{indentAction:o.languages.IndentAction.IndentOutdent,appendText:" * "}},{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,action:{indentAction:o.languages.IndentAction.None,appendText:" * "}},{beforeText:/^(\t|(\ \ ))*\ \*(\ ([^\*]|\*(?!\/))*)?$/,action:{indentAction:o.languages.IndentAction.None,appendText:"* "}},{beforeText:/^(\t|(\ \ ))*\ \*\/\s*$/,action:{indentAction:o.languages.IndentAction.None,removeText:1}}],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"`",close:"`",notIn:["string","comment"]},{open:"/**",close:" */",notIn:["string"]}],folding:{markers:{start:new RegExp("^\\s*//\\s*#?region\\b"),end:new RegExp("^\\s*//\\s*#?endregion\\b")}}},r={defaultToken:"invalid",tokenPostfix:".ts",keywords:["abstract","as","break","case","catch","class","continue","const","constructor","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","implements","import","in","infer","instanceof","interface","is","keyof","let","module","namespace","never","new","null","package","private","protected","public","readonly","require","global","return","set","static","super","switch","symbol","this","throw","true","try","type","typeof","unique","var","void","while","with","yield","async","await","of"],typeKeywords:["any","boolean","number","object","string","undefined"],operators:["<=",">=","==","!=","===","!==","=>","+","-","**","*","/","%","++","--","<<",">",">>>","&","|","^","!","~","&&","||","??","?",":","=","+=","-=","*=","**=","/=","%=","<<=",">>=",">>>=","&=","|=","^=","@"],symbols:/[=>](?!@symbols)/,"@brackets"],[/!(?=([^=]|$))/,"delimiter"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/(@digits)[eE]([\-+]?(@digits))?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?/,"number.float"],[/0[xX](@hexdigits)n?/,"number.hex"],[/0[oO]?(@octaldigits)n?/,"number.octal"],[/0[bB](@binarydigits)n?/,"number.binary"],[/(@digits)n?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string_double"],[/'/,"string","@string_single"],[/`/,"string","@string_backtick"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@jsdoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],jsdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,["regexp.escape.control","regexp.escape.control","regexp.escape.control"]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,["regexp.escape.control",{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?:|\?=|\?!)/,["regexp.escape.control","regexp.escape.control"]],[/[()]/,"regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/[^\\\/]/,"regexp"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],[/(\/)([gimsuy]*)/,[{token:"regexp",bracket:"@close",next:"@pop"},"keyword.other"]]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,{token:"regexp.escape.control",next:"@pop",bracket:"@close"}]],string_double:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],string_single:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,"string","@pop"]],string_backtick:[[/\$\{/,{token:"delimiter.bracket",next:"@bracketCounting"}],[/[^\\`$]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/`/,"string","@pop"]],bracketCounting:[[/\{/,"delimiter.bracket","@bracketCounting"],[/\}/,"delimiter.bracket","@pop"],{include:"common"}]}}},463:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return i})),t.d(n,"language",(function(){return r}));var o=t(335),i=("undefined"==typeof monaco?self.monaco:monaco,o.conf),r={defaultToken:"invalid",tokenPostfix:".js",keywords:["break","case","catch","class","continue","const","constructor","debugger","default","delete","do","else","export","extends","false","finally","for","from","function","get","if","import","in","instanceof","let","new","null","return","set","super","switch","symbol","this","throw","true","try","typeof","undefined","var","void","while","with","yield","async","await","of"],typeKeywords:[],operators:o.language.operators,symbols:o.language.symbols,escapes:o.language.escapes,digits:o.language.digits,octaldigits:o.language.octaldigits,binarydigits:o.language.binarydigits,hexdigits:o.language.hexdigits,regexpctl:o.language.regexpctl,regexpesc:o.language.regexpesc,tokenizer:o.language.tokenizer}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/100.b26fa278.js b/docs/src/.vuepress/dist/assets/js/100.b26fa278.js new file mode 100644 index 00000000..19e4df98 --- /dev/null +++ b/docs/src/.vuepress/dist/assets/js/100.b26fa278.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[100],{500:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return o})),t.d(n,"language",(function(){return r}));var o={comments:{lineComment:"'",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"],["addhandler","end addhandler"],["class","end class"],["enum","end enum"],["event","end event"],["function","end function"],["get","end get"],["if","end if"],["interface","end interface"],["module","end module"],["namespace","end namespace"],["operator","end operator"],["property","end property"],["raiseevent","end raiseevent"],["removehandler","end removehandler"],["select","end select"],["set","end set"],["structure","end structure"],["sub","end sub"],["synclock","end synclock"],["try","end try"],["while","end while"],["with","end with"],["using","end using"],["do","loop"],["for","next"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"<",close:">",notIn:["string","comment"]}],folding:{markers:{start:new RegExp("^\\s*#Region\\b"),end:new RegExp("^\\s*#End Region\\b")}}},r={defaultToken:"",tokenPostfix:".vb",ignoreCase:!0,brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.angle",open:"<",close:">"},{token:"keyword.tag-addhandler",open:"addhandler",close:"end addhandler"},{token:"keyword.tag-class",open:"class",close:"end class"},{token:"keyword.tag-enum",open:"enum",close:"end enum"},{token:"keyword.tag-event",open:"event",close:"end event"},{token:"keyword.tag-function",open:"function",close:"end function"},{token:"keyword.tag-get",open:"get",close:"end get"},{token:"keyword.tag-if",open:"if",close:"end if"},{token:"keyword.tag-interface",open:"interface",close:"end interface"},{token:"keyword.tag-module",open:"module",close:"end module"},{token:"keyword.tag-namespace",open:"namespace",close:"end namespace"},{token:"keyword.tag-operator",open:"operator",close:"end operator"},{token:"keyword.tag-property",open:"property",close:"end property"},{token:"keyword.tag-raiseevent",open:"raiseevent",close:"end raiseevent"},{token:"keyword.tag-removehandler",open:"removehandler",close:"end removehandler"},{token:"keyword.tag-select",open:"select",close:"end select"},{token:"keyword.tag-set",open:"set",close:"end set"},{token:"keyword.tag-structure",open:"structure",close:"end structure"},{token:"keyword.tag-sub",open:"sub",close:"end sub"},{token:"keyword.tag-synclock",open:"synclock",close:"end synclock"},{token:"keyword.tag-try",open:"try",close:"end try"},{token:"keyword.tag-while",open:"while",close:"end while"},{token:"keyword.tag-with",open:"with",close:"end with"},{token:"keyword.tag-using",open:"using",close:"end using"},{token:"keyword.tag-do",open:"do",close:"loop"},{token:"keyword.tag-for",open:"for",close:"next"}],keywords:["AddHandler","AddressOf","Alias","And","AndAlso","As","Async","Boolean","ByRef","Byte","ByVal","Call","Case","Catch","CBool","CByte","CChar","CDate","CDbl","CDec","Char","CInt","Class","CLng","CObj","Const","Continue","CSByte","CShort","CSng","CStr","CType","CUInt","CULng","CUShort","Date","Decimal","Declare","Default","Delegate","Dim","DirectCast","Do","Double","Each","Else","ElseIf","End","EndIf","Enum","Erase","Error","Event","Exit","False","Finally","For","Friend","Function","Get","GetType","GetXMLNamespace","Global","GoSub","GoTo","Handles","If","Implements","Imports","In","Inherits","Integer","Interface","Is","IsNot","Let","Lib","Like","Long","Loop","Me","Mod","Module","MustInherit","MustOverride","MyBase","MyClass","NameOf","Namespace","Narrowing","New","Next","Not","Nothing","NotInheritable","NotOverridable","Object","Of","On","Operator","Option","Optional","Or","OrElse","Out","Overloads","Overridable","Overrides","ParamArray","Partial","Private","Property","Protected","Public","RaiseEvent","ReadOnly","ReDim","RemoveHandler","Resume","Return","SByte","Select","Set","Shadows","Shared","Short","Single","Static","Step","Stop","String","Structure","Sub","SyncLock","Then","Throw","To","True","Try","TryCast","TypeOf","UInteger","ULong","UShort","Using","Variant","Wend","When","While","Widening","With","WithEvents","WriteOnly","Xor"],tagwords:["If","Sub","Select","Try","Class","Enum","Function","Get","Interface","Module","Namespace","Operator","Set","Structure","Using","While","With","Do","Loop","For","Next","Property","Continue","AddHandler","RemoveHandler","Event","RaiseEvent","SyncLock"],symbols:/[=>"]],autoClosingPairs:[{open:"<",close:">"},{open:"'",close:"'"},{open:'"',close:'"'}],surroundingPairs:[{open:"<",close:">"},{open:"'",close:"'"},{open:'"',close:'"'}]},o={defaultToken:"",tokenPostfix:".xml",ignoreCase:!0,qualifiedName:/(?:[\w\.\-]+:)?[\w\.\-]+/,tokenizer:{root:[[/[^<&]+/,""],{include:"@whitespace"},[/(<)(@qualifiedName)/,[{token:"delimiter"},{token:"tag",next:"@tag"}]],[/(<\/)(@qualifiedName)(\s*)(>)/,[{token:"delimiter"},{token:"tag"},"",{token:"delimiter"}]],[/(<\?)(@qualifiedName)/,[{token:"delimiter"},{token:"metatag",next:"@tag"}]],[/(<\!)(@qualifiedName)/,[{token:"delimiter"},{token:"metatag",next:"@tag"}]],[/<\!\[CDATA\[/,{token:"delimiter.cdata",next:"@cdata"}],[/&\w+;/,"string.escape"]],cdata:[[/[^\]]+/,""],[/\]\]>/,{token:"delimiter.cdata",next:"@pop"}],[/\]/,""]],tag:[[/[ \t\r\n]+/,""],[/(@qualifiedName)(\s*=\s*)("[^"]*"|'[^']*')/,["attribute.name","","attribute.value"]],[/(@qualifiedName)(\s*=\s*)("[^">?\/]*|'[^'>?\/]*)(?=[\?\/]\>)/,["attribute.name","","attribute.value"]],[/(@qualifiedName)(\s*=\s*)("[^">]*|'[^'>]*)/,["attribute.name","","attribute.value"]],[/@qualifiedName/,"attribute.name"],[/\?>/,{token:"delimiter",next:"@pop"}],[/(\/)(>)/,[{token:"tag"},{token:"delimiter",next:"@pop"}]],[/>/,{token:"delimiter",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,""],[//,{token:"comment",next:"@pop"}],[//,{token:"comment",next:"@pop"}],[/|<\/?script\s*\/?>?/i);if(0===m.length)return l.goToEnd(),p(n,ie.Script);if("\x3c!--"===m)1===d&&(d=2);else if("--\x3e"===m)d=1;else if("/"!==m[1])2===d&&(d=3);else{if(3!==d){l.goBack(m.length);break}d=2}}return c=re.WithinContent,n0))return a;r=a-1}}return-(i+1)}(xe,e.toLowerCase(),(function(e,t){return e.localeCompare(t)}))>=0}!function(){function e(e,t,n,i){this.start=e,this.end=t,this.children=n,this.parent=i,this.closed=!1}Object.defineProperty(e.prototype,"attributeNames",{get:function(){return this.attributes?Object.keys(this.attributes):[]},enumerable:!0,configurable:!0}),e.prototype.isSameTag=function(e){return this.tag&&e&&this.tag.length===e.length&&this.tag.toLowerCase()===e},Object.defineProperty(e.prototype,"firstChild",{get:function(){return this.children[0]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"lastChild",{get:function(){return this.children.length?this.children[this.children.length-1]:void 0},enumerable:!0,configurable:!0}),e.prototype.findNodeBefore=function(e){var t=Se(this.children,(function(t){return e<=t.start}))-1;if(t>=0){var n=this.children[t];if(e>n.start){if(e=0){var n=this.children[t];if(e>n.start&&e<=n.end)return n.findNodeAt(e)}return this}}();var Le={"Aacute;":"Á",Aacute:"Á","aacute;":"á",aacute:"á","Abreve;":"Ă","abreve;":"ă","ac;":"∾","acd;":"∿","acE;":"∾̳","Acirc;":"Â",Acirc:"Â","acirc;":"â",acirc:"â","acute;":"´",acute:"´","Acy;":"А","acy;":"а","AElig;":"Æ",AElig:"Æ","aelig;":"æ",aelig:"æ","af;":"⁡","Afr;":"𝔄","afr;":"𝔞","Agrave;":"À",Agrave:"À","agrave;":"à",agrave:"à","alefsym;":"ℵ","aleph;":"ℵ","Alpha;":"Α","alpha;":"α","Amacr;":"Ā","amacr;":"ā","amalg;":"⨿","AMP;":"&",AMP:"&","amp;":"&",amp:"&","And;":"⩓","and;":"∧","andand;":"⩕","andd;":"⩜","andslope;":"⩘","andv;":"⩚","ang;":"∠","ange;":"⦤","angle;":"∠","angmsd;":"∡","angmsdaa;":"⦨","angmsdab;":"⦩","angmsdac;":"⦪","angmsdad;":"⦫","angmsdae;":"⦬","angmsdaf;":"⦭","angmsdag;":"⦮","angmsdah;":"⦯","angrt;":"∟","angrtvb;":"⊾","angrtvbd;":"⦝","angsph;":"∢","angst;":"Å","angzarr;":"⍼","Aogon;":"Ą","aogon;":"ą","Aopf;":"𝔸","aopf;":"𝕒","ap;":"≈","apacir;":"⩯","apE;":"⩰","ape;":"≊","apid;":"≋","apos;":"'","ApplyFunction;":"⁡","approx;":"≈","approxeq;":"≊","Aring;":"Å",Aring:"Å","aring;":"å",aring:"å","Ascr;":"𝒜","ascr;":"𝒶","Assign;":"≔","ast;":"*","asymp;":"≈","asympeq;":"≍","Atilde;":"Ã",Atilde:"Ã","atilde;":"ã",atilde:"ã","Auml;":"Ä",Auml:"Ä","auml;":"ä",auml:"ä","awconint;":"∳","awint;":"⨑","backcong;":"≌","backepsilon;":"϶","backprime;":"‵","backsim;":"∽","backsimeq;":"⋍","Backslash;":"∖","Barv;":"⫧","barvee;":"⊽","Barwed;":"⌆","barwed;":"⌅","barwedge;":"⌅","bbrk;":"⎵","bbrktbrk;":"⎶","bcong;":"≌","Bcy;":"Б","bcy;":"б","bdquo;":"„","becaus;":"∵","Because;":"∵","because;":"∵","bemptyv;":"⦰","bepsi;":"϶","bernou;":"ℬ","Bernoullis;":"ℬ","Beta;":"Β","beta;":"β","beth;":"ℶ","between;":"≬","Bfr;":"𝔅","bfr;":"𝔟","bigcap;":"⋂","bigcirc;":"◯","bigcup;":"⋃","bigodot;":"⨀","bigoplus;":"⨁","bigotimes;":"⨂","bigsqcup;":"⨆","bigstar;":"★","bigtriangledown;":"▽","bigtriangleup;":"△","biguplus;":"⨄","bigvee;":"⋁","bigwedge;":"⋀","bkarow;":"⤍","blacklozenge;":"⧫","blacksquare;":"▪","blacktriangle;":"▴","blacktriangledown;":"▾","blacktriangleleft;":"◂","blacktriangleright;":"▸","blank;":"␣","blk12;":"▒","blk14;":"░","blk34;":"▓","block;":"█","bne;":"=⃥","bnequiv;":"≡⃥","bNot;":"⫭","bnot;":"⌐","Bopf;":"𝔹","bopf;":"𝕓","bot;":"⊥","bottom;":"⊥","bowtie;":"⋈","boxbox;":"⧉","boxDL;":"╗","boxDl;":"╖","boxdL;":"╕","boxdl;":"┐","boxDR;":"╔","boxDr;":"╓","boxdR;":"╒","boxdr;":"┌","boxH;":"═","boxh;":"─","boxHD;":"╦","boxHd;":"╤","boxhD;":"╥","boxhd;":"┬","boxHU;":"╩","boxHu;":"╧","boxhU;":"╨","boxhu;":"┴","boxminus;":"⊟","boxplus;":"⊞","boxtimes;":"⊠","boxUL;":"╝","boxUl;":"╜","boxuL;":"╛","boxul;":"┘","boxUR;":"╚","boxUr;":"╙","boxuR;":"╘","boxur;":"└","boxV;":"║","boxv;":"│","boxVH;":"╬","boxVh;":"╫","boxvH;":"╪","boxvh;":"┼","boxVL;":"╣","boxVl;":"╢","boxvL;":"╡","boxvl;":"┤","boxVR;":"╠","boxVr;":"╟","boxvR;":"╞","boxvr;":"├","bprime;":"‵","Breve;":"˘","breve;":"˘","brvbar;":"¦",brvbar:"¦","Bscr;":"ℬ","bscr;":"𝒷","bsemi;":"⁏","bsim;":"∽","bsime;":"⋍","bsol;":"\\","bsolb;":"⧅","bsolhsub;":"⟈","bull;":"•","bullet;":"•","bump;":"≎","bumpE;":"⪮","bumpe;":"≏","Bumpeq;":"≎","bumpeq;":"≏","Cacute;":"Ć","cacute;":"ć","Cap;":"⋒","cap;":"∩","capand;":"⩄","capbrcup;":"⩉","capcap;":"⩋","capcup;":"⩇","capdot;":"⩀","CapitalDifferentialD;":"ⅅ","caps;":"∩︀","caret;":"⁁","caron;":"ˇ","Cayleys;":"ℭ","ccaps;":"⩍","Ccaron;":"Č","ccaron;":"č","Ccedil;":"Ç",Ccedil:"Ç","ccedil;":"ç",ccedil:"ç","Ccirc;":"Ĉ","ccirc;":"ĉ","Cconint;":"∰","ccups;":"⩌","ccupssm;":"⩐","Cdot;":"Ċ","cdot;":"ċ","cedil;":"¸",cedil:"¸","Cedilla;":"¸","cemptyv;":"⦲","cent;":"¢",cent:"¢","CenterDot;":"·","centerdot;":"·","Cfr;":"ℭ","cfr;":"𝔠","CHcy;":"Ч","chcy;":"ч","check;":"✓","checkmark;":"✓","Chi;":"Χ","chi;":"χ","cir;":"○","circ;":"ˆ","circeq;":"≗","circlearrowleft;":"↺","circlearrowright;":"↻","circledast;":"⊛","circledcirc;":"⊚","circleddash;":"⊝","CircleDot;":"⊙","circledR;":"®","circledS;":"Ⓢ","CircleMinus;":"⊖","CirclePlus;":"⊕","CircleTimes;":"⊗","cirE;":"⧃","cire;":"≗","cirfnint;":"⨐","cirmid;":"⫯","cirscir;":"⧂","ClockwiseContourIntegral;":"∲","CloseCurlyDoubleQuote;":"”","CloseCurlyQuote;":"’","clubs;":"♣","clubsuit;":"♣","Colon;":"∷","colon;":":","Colone;":"⩴","colone;":"≔","coloneq;":"≔","comma;":",","commat;":"@","comp;":"∁","compfn;":"∘","complement;":"∁","complexes;":"ℂ","cong;":"≅","congdot;":"⩭","Congruent;":"≡","Conint;":"∯","conint;":"∮","ContourIntegral;":"∮","Copf;":"ℂ","copf;":"𝕔","coprod;":"∐","Coproduct;":"∐","COPY;":"©",COPY:"©","copy;":"©",copy:"©","copysr;":"℗","CounterClockwiseContourIntegral;":"∳","crarr;":"↵","Cross;":"⨯","cross;":"✗","Cscr;":"𝒞","cscr;":"𝒸","csub;":"⫏","csube;":"⫑","csup;":"⫐","csupe;":"⫒","ctdot;":"⋯","cudarrl;":"⤸","cudarrr;":"⤵","cuepr;":"⋞","cuesc;":"⋟","cularr;":"↶","cularrp;":"⤽","Cup;":"⋓","cup;":"∪","cupbrcap;":"⩈","CupCap;":"≍","cupcap;":"⩆","cupcup;":"⩊","cupdot;":"⊍","cupor;":"⩅","cups;":"∪︀","curarr;":"↷","curarrm;":"⤼","curlyeqprec;":"⋞","curlyeqsucc;":"⋟","curlyvee;":"⋎","curlywedge;":"⋏","curren;":"¤",curren:"¤","curvearrowleft;":"↶","curvearrowright;":"↷","cuvee;":"⋎","cuwed;":"⋏","cwconint;":"∲","cwint;":"∱","cylcty;":"⌭","Dagger;":"‡","dagger;":"†","daleth;":"ℸ","Darr;":"↡","dArr;":"⇓","darr;":"↓","dash;":"‐","Dashv;":"⫤","dashv;":"⊣","dbkarow;":"⤏","dblac;":"˝","Dcaron;":"Ď","dcaron;":"ď","Dcy;":"Д","dcy;":"д","DD;":"ⅅ","dd;":"ⅆ","ddagger;":"‡","ddarr;":"⇊","DDotrahd;":"⤑","ddotseq;":"⩷","deg;":"°",deg:"°","Del;":"∇","Delta;":"Δ","delta;":"δ","demptyv;":"⦱","dfisht;":"⥿","Dfr;":"𝔇","dfr;":"𝔡","dHar;":"⥥","dharl;":"⇃","dharr;":"⇂","DiacriticalAcute;":"´","DiacriticalDot;":"˙","DiacriticalDoubleAcute;":"˝","DiacriticalGrave;":"`","DiacriticalTilde;":"˜","diam;":"⋄","Diamond;":"⋄","diamond;":"⋄","diamondsuit;":"♦","diams;":"♦","die;":"¨","DifferentialD;":"ⅆ","digamma;":"ϝ","disin;":"⋲","div;":"÷","divide;":"÷",divide:"÷","divideontimes;":"⋇","divonx;":"⋇","DJcy;":"Ђ","djcy;":"ђ","dlcorn;":"⌞","dlcrop;":"⌍","dollar;":"$","Dopf;":"𝔻","dopf;":"𝕕","Dot;":"¨","dot;":"˙","DotDot;":"⃜","doteq;":"≐","doteqdot;":"≑","DotEqual;":"≐","dotminus;":"∸","dotplus;":"∔","dotsquare;":"⊡","doublebarwedge;":"⌆","DoubleContourIntegral;":"∯","DoubleDot;":"¨","DoubleDownArrow;":"⇓","DoubleLeftArrow;":"⇐","DoubleLeftRightArrow;":"⇔","DoubleLeftTee;":"⫤","DoubleLongLeftArrow;":"⟸","DoubleLongLeftRightArrow;":"⟺","DoubleLongRightArrow;":"⟹","DoubleRightArrow;":"⇒","DoubleRightTee;":"⊨","DoubleUpArrow;":"⇑","DoubleUpDownArrow;":"⇕","DoubleVerticalBar;":"∥","DownArrow;":"↓","Downarrow;":"⇓","downarrow;":"↓","DownArrowBar;":"⤓","DownArrowUpArrow;":"⇵","DownBreve;":"̑","downdownarrows;":"⇊","downharpoonleft;":"⇃","downharpoonright;":"⇂","DownLeftRightVector;":"⥐","DownLeftTeeVector;":"⥞","DownLeftVector;":"↽","DownLeftVectorBar;":"⥖","DownRightTeeVector;":"⥟","DownRightVector;":"⇁","DownRightVectorBar;":"⥗","DownTee;":"⊤","DownTeeArrow;":"↧","drbkarow;":"⤐","drcorn;":"⌟","drcrop;":"⌌","Dscr;":"𝒟","dscr;":"𝒹","DScy;":"Ѕ","dscy;":"ѕ","dsol;":"⧶","Dstrok;":"Đ","dstrok;":"đ","dtdot;":"⋱","dtri;":"▿","dtrif;":"▾","duarr;":"⇵","duhar;":"⥯","dwangle;":"⦦","DZcy;":"Џ","dzcy;":"џ","dzigrarr;":"⟿","Eacute;":"É",Eacute:"É","eacute;":"é",eacute:"é","easter;":"⩮","Ecaron;":"Ě","ecaron;":"ě","ecir;":"≖","Ecirc;":"Ê",Ecirc:"Ê","ecirc;":"ê",ecirc:"ê","ecolon;":"≕","Ecy;":"Э","ecy;":"э","eDDot;":"⩷","Edot;":"Ė","eDot;":"≑","edot;":"ė","ee;":"ⅇ","efDot;":"≒","Efr;":"𝔈","efr;":"𝔢","eg;":"⪚","Egrave;":"È",Egrave:"È","egrave;":"è",egrave:"è","egs;":"⪖","egsdot;":"⪘","el;":"⪙","Element;":"∈","elinters;":"⏧","ell;":"ℓ","els;":"⪕","elsdot;":"⪗","Emacr;":"Ē","emacr;":"ē","empty;":"∅","emptyset;":"∅","EmptySmallSquare;":"◻","emptyv;":"∅","EmptyVerySmallSquare;":"▫","emsp;":" ","emsp13;":" ","emsp14;":" ","ENG;":"Ŋ","eng;":"ŋ","ensp;":" ","Eogon;":"Ę","eogon;":"ę","Eopf;":"𝔼","eopf;":"𝕖","epar;":"⋕","eparsl;":"⧣","eplus;":"⩱","epsi;":"ε","Epsilon;":"Ε","epsilon;":"ε","epsiv;":"ϵ","eqcirc;":"≖","eqcolon;":"≕","eqsim;":"≂","eqslantgtr;":"⪖","eqslantless;":"⪕","Equal;":"⩵","equals;":"=","EqualTilde;":"≂","equest;":"≟","Equilibrium;":"⇌","equiv;":"≡","equivDD;":"⩸","eqvparsl;":"⧥","erarr;":"⥱","erDot;":"≓","Escr;":"ℰ","escr;":"ℯ","esdot;":"≐","Esim;":"⩳","esim;":"≂","Eta;":"Η","eta;":"η","ETH;":"Ð",ETH:"Ð","eth;":"ð",eth:"ð","Euml;":"Ë",Euml:"Ë","euml;":"ë",euml:"ë","euro;":"€","excl;":"!","exist;":"∃","Exists;":"∃","expectation;":"ℰ","ExponentialE;":"ⅇ","exponentiale;":"ⅇ","fallingdotseq;":"≒","Fcy;":"Ф","fcy;":"ф","female;":"♀","ffilig;":"ffi","fflig;":"ff","ffllig;":"ffl","Ffr;":"𝔉","ffr;":"𝔣","filig;":"fi","FilledSmallSquare;":"◼","FilledVerySmallSquare;":"▪","fjlig;":"fj","flat;":"♭","fllig;":"fl","fltns;":"▱","fnof;":"ƒ","Fopf;":"𝔽","fopf;":"𝕗","ForAll;":"∀","forall;":"∀","fork;":"⋔","forkv;":"⫙","Fouriertrf;":"ℱ","fpartint;":"⨍","frac12;":"½",frac12:"½","frac13;":"⅓","frac14;":"¼",frac14:"¼","frac15;":"⅕","frac16;":"⅙","frac18;":"⅛","frac23;":"⅔","frac25;":"⅖","frac34;":"¾",frac34:"¾","frac35;":"⅗","frac38;":"⅜","frac45;":"⅘","frac56;":"⅚","frac58;":"⅝","frac78;":"⅞","frasl;":"⁄","frown;":"⌢","Fscr;":"ℱ","fscr;":"𝒻","gacute;":"ǵ","Gamma;":"Γ","gamma;":"γ","Gammad;":"Ϝ","gammad;":"ϝ","gap;":"⪆","Gbreve;":"Ğ","gbreve;":"ğ","Gcedil;":"Ģ","Gcirc;":"Ĝ","gcirc;":"ĝ","Gcy;":"Г","gcy;":"г","Gdot;":"Ġ","gdot;":"ġ","gE;":"≧","ge;":"≥","gEl;":"⪌","gel;":"⋛","geq;":"≥","geqq;":"≧","geqslant;":"⩾","ges;":"⩾","gescc;":"⪩","gesdot;":"⪀","gesdoto;":"⪂","gesdotol;":"⪄","gesl;":"⋛︀","gesles;":"⪔","Gfr;":"𝔊","gfr;":"𝔤","Gg;":"⋙","gg;":"≫","ggg;":"⋙","gimel;":"ℷ","GJcy;":"Ѓ","gjcy;":"ѓ","gl;":"≷","gla;":"⪥","glE;":"⪒","glj;":"⪤","gnap;":"⪊","gnapprox;":"⪊","gnE;":"≩","gne;":"⪈","gneq;":"⪈","gneqq;":"≩","gnsim;":"⋧","Gopf;":"𝔾","gopf;":"𝕘","grave;":"`","GreaterEqual;":"≥","GreaterEqualLess;":"⋛","GreaterFullEqual;":"≧","GreaterGreater;":"⪢","GreaterLess;":"≷","GreaterSlantEqual;":"⩾","GreaterTilde;":"≳","Gscr;":"𝒢","gscr;":"ℊ","gsim;":"≳","gsime;":"⪎","gsiml;":"⪐","GT;":">",GT:">","Gt;":"≫","gt;":">",gt:">","gtcc;":"⪧","gtcir;":"⩺","gtdot;":"⋗","gtlPar;":"⦕","gtquest;":"⩼","gtrapprox;":"⪆","gtrarr;":"⥸","gtrdot;":"⋗","gtreqless;":"⋛","gtreqqless;":"⪌","gtrless;":"≷","gtrsim;":"≳","gvertneqq;":"≩︀","gvnE;":"≩︀","Hacek;":"ˇ","hairsp;":" ","half;":"½","hamilt;":"ℋ","HARDcy;":"Ъ","hardcy;":"ъ","hArr;":"⇔","harr;":"↔","harrcir;":"⥈","harrw;":"↭","Hat;":"^","hbar;":"ℏ","Hcirc;":"Ĥ","hcirc;":"ĥ","hearts;":"♥","heartsuit;":"♥","hellip;":"…","hercon;":"⊹","Hfr;":"ℌ","hfr;":"𝔥","HilbertSpace;":"ℋ","hksearow;":"⤥","hkswarow;":"⤦","hoarr;":"⇿","homtht;":"∻","hookleftarrow;":"↩","hookrightarrow;":"↪","Hopf;":"ℍ","hopf;":"𝕙","horbar;":"―","HorizontalLine;":"─","Hscr;":"ℋ","hscr;":"𝒽","hslash;":"ℏ","Hstrok;":"Ħ","hstrok;":"ħ","HumpDownHump;":"≎","HumpEqual;":"≏","hybull;":"⁃","hyphen;":"‐","Iacute;":"Í",Iacute:"Í","iacute;":"í",iacute:"í","ic;":"⁣","Icirc;":"Î",Icirc:"Î","icirc;":"î",icirc:"î","Icy;":"И","icy;":"и","Idot;":"İ","IEcy;":"Е","iecy;":"е","iexcl;":"¡",iexcl:"¡","iff;":"⇔","Ifr;":"ℑ","ifr;":"𝔦","Igrave;":"Ì",Igrave:"Ì","igrave;":"ì",igrave:"ì","ii;":"ⅈ","iiiint;":"⨌","iiint;":"∭","iinfin;":"⧜","iiota;":"℩","IJlig;":"IJ","ijlig;":"ij","Im;":"ℑ","Imacr;":"Ī","imacr;":"ī","image;":"ℑ","ImaginaryI;":"ⅈ","imagline;":"ℐ","imagpart;":"ℑ","imath;":"ı","imof;":"⊷","imped;":"Ƶ","Implies;":"⇒","in;":"∈","incare;":"℅","infin;":"∞","infintie;":"⧝","inodot;":"ı","Int;":"∬","int;":"∫","intcal;":"⊺","integers;":"ℤ","Integral;":"∫","intercal;":"⊺","Intersection;":"⋂","intlarhk;":"⨗","intprod;":"⨼","InvisibleComma;":"⁣","InvisibleTimes;":"⁢","IOcy;":"Ё","iocy;":"ё","Iogon;":"Į","iogon;":"į","Iopf;":"𝕀","iopf;":"𝕚","Iota;":"Ι","iota;":"ι","iprod;":"⨼","iquest;":"¿",iquest:"¿","Iscr;":"ℐ","iscr;":"𝒾","isin;":"∈","isindot;":"⋵","isinE;":"⋹","isins;":"⋴","isinsv;":"⋳","isinv;":"∈","it;":"⁢","Itilde;":"Ĩ","itilde;":"ĩ","Iukcy;":"І","iukcy;":"і","Iuml;":"Ï",Iuml:"Ï","iuml;":"ï",iuml:"ï","Jcirc;":"Ĵ","jcirc;":"ĵ","Jcy;":"Й","jcy;":"й","Jfr;":"𝔍","jfr;":"𝔧","jmath;":"ȷ","Jopf;":"𝕁","jopf;":"𝕛","Jscr;":"𝒥","jscr;":"𝒿","Jsercy;":"Ј","jsercy;":"ј","Jukcy;":"Є","jukcy;":"є","Kappa;":"Κ","kappa;":"κ","kappav;":"ϰ","Kcedil;":"Ķ","kcedil;":"ķ","Kcy;":"К","kcy;":"к","Kfr;":"𝔎","kfr;":"𝔨","kgreen;":"ĸ","KHcy;":"Х","khcy;":"х","KJcy;":"Ќ","kjcy;":"ќ","Kopf;":"𝕂","kopf;":"𝕜","Kscr;":"𝒦","kscr;":"𝓀","lAarr;":"⇚","Lacute;":"Ĺ","lacute;":"ĺ","laemptyv;":"⦴","lagran;":"ℒ","Lambda;":"Λ","lambda;":"λ","Lang;":"⟪","lang;":"⟨","langd;":"⦑","langle;":"⟨","lap;":"⪅","Laplacetrf;":"ℒ","laquo;":"«",laquo:"«","Larr;":"↞","lArr;":"⇐","larr;":"←","larrb;":"⇤","larrbfs;":"⤟","larrfs;":"⤝","larrhk;":"↩","larrlp;":"↫","larrpl;":"⤹","larrsim;":"⥳","larrtl;":"↢","lat;":"⪫","lAtail;":"⤛","latail;":"⤙","late;":"⪭","lates;":"⪭︀","lBarr;":"⤎","lbarr;":"⤌","lbbrk;":"❲","lbrace;":"{","lbrack;":"[","lbrke;":"⦋","lbrksld;":"⦏","lbrkslu;":"⦍","Lcaron;":"Ľ","lcaron;":"ľ","Lcedil;":"Ļ","lcedil;":"ļ","lceil;":"⌈","lcub;":"{","Lcy;":"Л","lcy;":"л","ldca;":"⤶","ldquo;":"“","ldquor;":"„","ldrdhar;":"⥧","ldrushar;":"⥋","ldsh;":"↲","lE;":"≦","le;":"≤","LeftAngleBracket;":"⟨","LeftArrow;":"←","Leftarrow;":"⇐","leftarrow;":"←","LeftArrowBar;":"⇤","LeftArrowRightArrow;":"⇆","leftarrowtail;":"↢","LeftCeiling;":"⌈","LeftDoubleBracket;":"⟦","LeftDownTeeVector;":"⥡","LeftDownVector;":"⇃","LeftDownVectorBar;":"⥙","LeftFloor;":"⌊","leftharpoondown;":"↽","leftharpoonup;":"↼","leftleftarrows;":"⇇","LeftRightArrow;":"↔","Leftrightarrow;":"⇔","leftrightarrow;":"↔","leftrightarrows;":"⇆","leftrightharpoons;":"⇋","leftrightsquigarrow;":"↭","LeftRightVector;":"⥎","LeftTee;":"⊣","LeftTeeArrow;":"↤","LeftTeeVector;":"⥚","leftthreetimes;":"⋋","LeftTriangle;":"⊲","LeftTriangleBar;":"⧏","LeftTriangleEqual;":"⊴","LeftUpDownVector;":"⥑","LeftUpTeeVector;":"⥠","LeftUpVector;":"↿","LeftUpVectorBar;":"⥘","LeftVector;":"↼","LeftVectorBar;":"⥒","lEg;":"⪋","leg;":"⋚","leq;":"≤","leqq;":"≦","leqslant;":"⩽","les;":"⩽","lescc;":"⪨","lesdot;":"⩿","lesdoto;":"⪁","lesdotor;":"⪃","lesg;":"⋚︀","lesges;":"⪓","lessapprox;":"⪅","lessdot;":"⋖","lesseqgtr;":"⋚","lesseqqgtr;":"⪋","LessEqualGreater;":"⋚","LessFullEqual;":"≦","LessGreater;":"≶","lessgtr;":"≶","LessLess;":"⪡","lesssim;":"≲","LessSlantEqual;":"⩽","LessTilde;":"≲","lfisht;":"⥼","lfloor;":"⌊","Lfr;":"𝔏","lfr;":"𝔩","lg;":"≶","lgE;":"⪑","lHar;":"⥢","lhard;":"↽","lharu;":"↼","lharul;":"⥪","lhblk;":"▄","LJcy;":"Љ","ljcy;":"љ","Ll;":"⋘","ll;":"≪","llarr;":"⇇","llcorner;":"⌞","Lleftarrow;":"⇚","llhard;":"⥫","lltri;":"◺","Lmidot;":"Ŀ","lmidot;":"ŀ","lmoust;":"⎰","lmoustache;":"⎰","lnap;":"⪉","lnapprox;":"⪉","lnE;":"≨","lne;":"⪇","lneq;":"⪇","lneqq;":"≨","lnsim;":"⋦","loang;":"⟬","loarr;":"⇽","lobrk;":"⟦","LongLeftArrow;":"⟵","Longleftarrow;":"⟸","longleftarrow;":"⟵","LongLeftRightArrow;":"⟷","Longleftrightarrow;":"⟺","longleftrightarrow;":"⟷","longmapsto;":"⟼","LongRightArrow;":"⟶","Longrightarrow;":"⟹","longrightarrow;":"⟶","looparrowleft;":"↫","looparrowright;":"↬","lopar;":"⦅","Lopf;":"𝕃","lopf;":"𝕝","loplus;":"⨭","lotimes;":"⨴","lowast;":"∗","lowbar;":"_","LowerLeftArrow;":"↙","LowerRightArrow;":"↘","loz;":"◊","lozenge;":"◊","lozf;":"⧫","lpar;":"(","lparlt;":"⦓","lrarr;":"⇆","lrcorner;":"⌟","lrhar;":"⇋","lrhard;":"⥭","lrm;":"‎","lrtri;":"⊿","lsaquo;":"‹","Lscr;":"ℒ","lscr;":"𝓁","Lsh;":"↰","lsh;":"↰","lsim;":"≲","lsime;":"⪍","lsimg;":"⪏","lsqb;":"[","lsquo;":"‘","lsquor;":"‚","Lstrok;":"Ł","lstrok;":"ł","LT;":"<",LT:"<","Lt;":"≪","lt;":"<",lt:"<","ltcc;":"⪦","ltcir;":"⩹","ltdot;":"⋖","lthree;":"⋋","ltimes;":"⋉","ltlarr;":"⥶","ltquest;":"⩻","ltri;":"◃","ltrie;":"⊴","ltrif;":"◂","ltrPar;":"⦖","lurdshar;":"⥊","luruhar;":"⥦","lvertneqq;":"≨︀","lvnE;":"≨︀","macr;":"¯",macr:"¯","male;":"♂","malt;":"✠","maltese;":"✠","Map;":"⤅","map;":"↦","mapsto;":"↦","mapstodown;":"↧","mapstoleft;":"↤","mapstoup;":"↥","marker;":"▮","mcomma;":"⨩","Mcy;":"М","mcy;":"м","mdash;":"—","mDDot;":"∺","measuredangle;":"∡","MediumSpace;":" ","Mellintrf;":"ℳ","Mfr;":"𝔐","mfr;":"𝔪","mho;":"℧","micro;":"µ",micro:"µ","mid;":"∣","midast;":"*","midcir;":"⫰","middot;":"·",middot:"·","minus;":"−","minusb;":"⊟","minusd;":"∸","minusdu;":"⨪","MinusPlus;":"∓","mlcp;":"⫛","mldr;":"…","mnplus;":"∓","models;":"⊧","Mopf;":"𝕄","mopf;":"𝕞","mp;":"∓","Mscr;":"ℳ","mscr;":"𝓂","mstpos;":"∾","Mu;":"Μ","mu;":"μ","multimap;":"⊸","mumap;":"⊸","nabla;":"∇","Nacute;":"Ń","nacute;":"ń","nang;":"∠⃒","nap;":"≉","napE;":"⩰̸","napid;":"≋̸","napos;":"ʼn","napprox;":"≉","natur;":"♮","natural;":"♮","naturals;":"ℕ","nbsp;":" ",nbsp:" ","nbump;":"≎̸","nbumpe;":"≏̸","ncap;":"⩃","Ncaron;":"Ň","ncaron;":"ň","Ncedil;":"Ņ","ncedil;":"ņ","ncong;":"≇","ncongdot;":"⩭̸","ncup;":"⩂","Ncy;":"Н","ncy;":"н","ndash;":"–","ne;":"≠","nearhk;":"⤤","neArr;":"⇗","nearr;":"↗","nearrow;":"↗","nedot;":"≐̸","NegativeMediumSpace;":"​","NegativeThickSpace;":"​","NegativeThinSpace;":"​","NegativeVeryThinSpace;":"​","nequiv;":"≢","nesear;":"⤨","nesim;":"≂̸","NestedGreaterGreater;":"≫","NestedLessLess;":"≪","NewLine;":"\n","nexist;":"∄","nexists;":"∄","Nfr;":"𝔑","nfr;":"𝔫","ngE;":"≧̸","nge;":"≱","ngeq;":"≱","ngeqq;":"≧̸","ngeqslant;":"⩾̸","nges;":"⩾̸","nGg;":"⋙̸","ngsim;":"≵","nGt;":"≫⃒","ngt;":"≯","ngtr;":"≯","nGtv;":"≫̸","nhArr;":"⇎","nharr;":"↮","nhpar;":"⫲","ni;":"∋","nis;":"⋼","nisd;":"⋺","niv;":"∋","NJcy;":"Њ","njcy;":"њ","nlArr;":"⇍","nlarr;":"↚","nldr;":"‥","nlE;":"≦̸","nle;":"≰","nLeftarrow;":"⇍","nleftarrow;":"↚","nLeftrightarrow;":"⇎","nleftrightarrow;":"↮","nleq;":"≰","nleqq;":"≦̸","nleqslant;":"⩽̸","nles;":"⩽̸","nless;":"≮","nLl;":"⋘̸","nlsim;":"≴","nLt;":"≪⃒","nlt;":"≮","nltri;":"⋪","nltrie;":"⋬","nLtv;":"≪̸","nmid;":"∤","NoBreak;":"⁠","NonBreakingSpace;":" ","Nopf;":"ℕ","nopf;":"𝕟","Not;":"⫬","not;":"¬",not:"¬","NotCongruent;":"≢","NotCupCap;":"≭","NotDoubleVerticalBar;":"∦","NotElement;":"∉","NotEqual;":"≠","NotEqualTilde;":"≂̸","NotExists;":"∄","NotGreater;":"≯","NotGreaterEqual;":"≱","NotGreaterFullEqual;":"≧̸","NotGreaterGreater;":"≫̸","NotGreaterLess;":"≹","NotGreaterSlantEqual;":"⩾̸","NotGreaterTilde;":"≵","NotHumpDownHump;":"≎̸","NotHumpEqual;":"≏̸","notin;":"∉","notindot;":"⋵̸","notinE;":"⋹̸","notinva;":"∉","notinvb;":"⋷","notinvc;":"⋶","NotLeftTriangle;":"⋪","NotLeftTriangleBar;":"⧏̸","NotLeftTriangleEqual;":"⋬","NotLess;":"≮","NotLessEqual;":"≰","NotLessGreater;":"≸","NotLessLess;":"≪̸","NotLessSlantEqual;":"⩽̸","NotLessTilde;":"≴","NotNestedGreaterGreater;":"⪢̸","NotNestedLessLess;":"⪡̸","notni;":"∌","notniva;":"∌","notnivb;":"⋾","notnivc;":"⋽","NotPrecedes;":"⊀","NotPrecedesEqual;":"⪯̸","NotPrecedesSlantEqual;":"⋠","NotReverseElement;":"∌","NotRightTriangle;":"⋫","NotRightTriangleBar;":"⧐̸","NotRightTriangleEqual;":"⋭","NotSquareSubset;":"⊏̸","NotSquareSubsetEqual;":"⋢","NotSquareSuperset;":"⊐̸","NotSquareSupersetEqual;":"⋣","NotSubset;":"⊂⃒","NotSubsetEqual;":"⊈","NotSucceeds;":"⊁","NotSucceedsEqual;":"⪰̸","NotSucceedsSlantEqual;":"⋡","NotSucceedsTilde;":"≿̸","NotSuperset;":"⊃⃒","NotSupersetEqual;":"⊉","NotTilde;":"≁","NotTildeEqual;":"≄","NotTildeFullEqual;":"≇","NotTildeTilde;":"≉","NotVerticalBar;":"∤","npar;":"∦","nparallel;":"∦","nparsl;":"⫽⃥","npart;":"∂̸","npolint;":"⨔","npr;":"⊀","nprcue;":"⋠","npre;":"⪯̸","nprec;":"⊀","npreceq;":"⪯̸","nrArr;":"⇏","nrarr;":"↛","nrarrc;":"⤳̸","nrarrw;":"↝̸","nRightarrow;":"⇏","nrightarrow;":"↛","nrtri;":"⋫","nrtrie;":"⋭","nsc;":"⊁","nsccue;":"⋡","nsce;":"⪰̸","Nscr;":"𝒩","nscr;":"𝓃","nshortmid;":"∤","nshortparallel;":"∦","nsim;":"≁","nsime;":"≄","nsimeq;":"≄","nsmid;":"∤","nspar;":"∦","nsqsube;":"⋢","nsqsupe;":"⋣","nsub;":"⊄","nsubE;":"⫅̸","nsube;":"⊈","nsubset;":"⊂⃒","nsubseteq;":"⊈","nsubseteqq;":"⫅̸","nsucc;":"⊁","nsucceq;":"⪰̸","nsup;":"⊅","nsupE;":"⫆̸","nsupe;":"⊉","nsupset;":"⊃⃒","nsupseteq;":"⊉","nsupseteqq;":"⫆̸","ntgl;":"≹","Ntilde;":"Ñ",Ntilde:"Ñ","ntilde;":"ñ",ntilde:"ñ","ntlg;":"≸","ntriangleleft;":"⋪","ntrianglelefteq;":"⋬","ntriangleright;":"⋫","ntrianglerighteq;":"⋭","Nu;":"Ν","nu;":"ν","num;":"#","numero;":"№","numsp;":" ","nvap;":"≍⃒","nVDash;":"⊯","nVdash;":"⊮","nvDash;":"⊭","nvdash;":"⊬","nvge;":"≥⃒","nvgt;":">⃒","nvHarr;":"⤄","nvinfin;":"⧞","nvlArr;":"⤂","nvle;":"≤⃒","nvlt;":"<⃒","nvltrie;":"⊴⃒","nvrArr;":"⤃","nvrtrie;":"⊵⃒","nvsim;":"∼⃒","nwarhk;":"⤣","nwArr;":"⇖","nwarr;":"↖","nwarrow;":"↖","nwnear;":"⤧","Oacute;":"Ó",Oacute:"Ó","oacute;":"ó",oacute:"ó","oast;":"⊛","ocir;":"⊚","Ocirc;":"Ô",Ocirc:"Ô","ocirc;":"ô",ocirc:"ô","Ocy;":"О","ocy;":"о","odash;":"⊝","Odblac;":"Ő","odblac;":"ő","odiv;":"⨸","odot;":"⊙","odsold;":"⦼","OElig;":"Œ","oelig;":"œ","ofcir;":"⦿","Ofr;":"𝔒","ofr;":"𝔬","ogon;":"˛","Ograve;":"Ò",Ograve:"Ò","ograve;":"ò",ograve:"ò","ogt;":"⧁","ohbar;":"⦵","ohm;":"Ω","oint;":"∮","olarr;":"↺","olcir;":"⦾","olcross;":"⦻","oline;":"‾","olt;":"⧀","Omacr;":"Ō","omacr;":"ō","Omega;":"Ω","omega;":"ω","Omicron;":"Ο","omicron;":"ο","omid;":"⦶","ominus;":"⊖","Oopf;":"𝕆","oopf;":"𝕠","opar;":"⦷","OpenCurlyDoubleQuote;":"“","OpenCurlyQuote;":"‘","operp;":"⦹","oplus;":"⊕","Or;":"⩔","or;":"∨","orarr;":"↻","ord;":"⩝","order;":"ℴ","orderof;":"ℴ","ordf;":"ª",ordf:"ª","ordm;":"º",ordm:"º","origof;":"⊶","oror;":"⩖","orslope;":"⩗","orv;":"⩛","oS;":"Ⓢ","Oscr;":"𝒪","oscr;":"ℴ","Oslash;":"Ø",Oslash:"Ø","oslash;":"ø",oslash:"ø","osol;":"⊘","Otilde;":"Õ",Otilde:"Õ","otilde;":"õ",otilde:"õ","Otimes;":"⨷","otimes;":"⊗","otimesas;":"⨶","Ouml;":"Ö",Ouml:"Ö","ouml;":"ö",ouml:"ö","ovbar;":"⌽","OverBar;":"‾","OverBrace;":"⏞","OverBracket;":"⎴","OverParenthesis;":"⏜","par;":"∥","para;":"¶",para:"¶","parallel;":"∥","parsim;":"⫳","parsl;":"⫽","part;":"∂","PartialD;":"∂","Pcy;":"П","pcy;":"п","percnt;":"%","period;":".","permil;":"‰","perp;":"⊥","pertenk;":"‱","Pfr;":"𝔓","pfr;":"𝔭","Phi;":"Φ","phi;":"φ","phiv;":"ϕ","phmmat;":"ℳ","phone;":"☎","Pi;":"Π","pi;":"π","pitchfork;":"⋔","piv;":"ϖ","planck;":"ℏ","planckh;":"ℎ","plankv;":"ℏ","plus;":"+","plusacir;":"⨣","plusb;":"⊞","pluscir;":"⨢","plusdo;":"∔","plusdu;":"⨥","pluse;":"⩲","PlusMinus;":"±","plusmn;":"±",plusmn:"±","plussim;":"⨦","plustwo;":"⨧","pm;":"±","Poincareplane;":"ℌ","pointint;":"⨕","Popf;":"ℙ","popf;":"𝕡","pound;":"£",pound:"£","Pr;":"⪻","pr;":"≺","prap;":"⪷","prcue;":"≼","prE;":"⪳","pre;":"⪯","prec;":"≺","precapprox;":"⪷","preccurlyeq;":"≼","Precedes;":"≺","PrecedesEqual;":"⪯","PrecedesSlantEqual;":"≼","PrecedesTilde;":"≾","preceq;":"⪯","precnapprox;":"⪹","precneqq;":"⪵","precnsim;":"⋨","precsim;":"≾","Prime;":"″","prime;":"′","primes;":"ℙ","prnap;":"⪹","prnE;":"⪵","prnsim;":"⋨","prod;":"∏","Product;":"∏","profalar;":"⌮","profline;":"⌒","profsurf;":"⌓","prop;":"∝","Proportion;":"∷","Proportional;":"∝","propto;":"∝","prsim;":"≾","prurel;":"⊰","Pscr;":"𝒫","pscr;":"𝓅","Psi;":"Ψ","psi;":"ψ","puncsp;":" ","Qfr;":"𝔔","qfr;":"𝔮","qint;":"⨌","Qopf;":"ℚ","qopf;":"𝕢","qprime;":"⁗","Qscr;":"𝒬","qscr;":"𝓆","quaternions;":"ℍ","quatint;":"⨖","quest;":"?","questeq;":"≟","QUOT;":'"',QUOT:'"',"quot;":'"',quot:'"',"rAarr;":"⇛","race;":"∽̱","Racute;":"Ŕ","racute;":"ŕ","radic;":"√","raemptyv;":"⦳","Rang;":"⟫","rang;":"⟩","rangd;":"⦒","range;":"⦥","rangle;":"⟩","raquo;":"»",raquo:"»","Rarr;":"↠","rArr;":"⇒","rarr;":"→","rarrap;":"⥵","rarrb;":"⇥","rarrbfs;":"⤠","rarrc;":"⤳","rarrfs;":"⤞","rarrhk;":"↪","rarrlp;":"↬","rarrpl;":"⥅","rarrsim;":"⥴","Rarrtl;":"⤖","rarrtl;":"↣","rarrw;":"↝","rAtail;":"⤜","ratail;":"⤚","ratio;":"∶","rationals;":"ℚ","RBarr;":"⤐","rBarr;":"⤏","rbarr;":"⤍","rbbrk;":"❳","rbrace;":"}","rbrack;":"]","rbrke;":"⦌","rbrksld;":"⦎","rbrkslu;":"⦐","Rcaron;":"Ř","rcaron;":"ř","Rcedil;":"Ŗ","rcedil;":"ŗ","rceil;":"⌉","rcub;":"}","Rcy;":"Р","rcy;":"р","rdca;":"⤷","rdldhar;":"⥩","rdquo;":"”","rdquor;":"”","rdsh;":"↳","Re;":"ℜ","real;":"ℜ","realine;":"ℛ","realpart;":"ℜ","reals;":"ℝ","rect;":"▭","REG;":"®",REG:"®","reg;":"®",reg:"®","ReverseElement;":"∋","ReverseEquilibrium;":"⇋","ReverseUpEquilibrium;":"⥯","rfisht;":"⥽","rfloor;":"⌋","Rfr;":"ℜ","rfr;":"𝔯","rHar;":"⥤","rhard;":"⇁","rharu;":"⇀","rharul;":"⥬","Rho;":"Ρ","rho;":"ρ","rhov;":"ϱ","RightAngleBracket;":"⟩","RightArrow;":"→","Rightarrow;":"⇒","rightarrow;":"→","RightArrowBar;":"⇥","RightArrowLeftArrow;":"⇄","rightarrowtail;":"↣","RightCeiling;":"⌉","RightDoubleBracket;":"⟧","RightDownTeeVector;":"⥝","RightDownVector;":"⇂","RightDownVectorBar;":"⥕","RightFloor;":"⌋","rightharpoondown;":"⇁","rightharpoonup;":"⇀","rightleftarrows;":"⇄","rightleftharpoons;":"⇌","rightrightarrows;":"⇉","rightsquigarrow;":"↝","RightTee;":"⊢","RightTeeArrow;":"↦","RightTeeVector;":"⥛","rightthreetimes;":"⋌","RightTriangle;":"⊳","RightTriangleBar;":"⧐","RightTriangleEqual;":"⊵","RightUpDownVector;":"⥏","RightUpTeeVector;":"⥜","RightUpVector;":"↾","RightUpVectorBar;":"⥔","RightVector;":"⇀","RightVectorBar;":"⥓","ring;":"˚","risingdotseq;":"≓","rlarr;":"⇄","rlhar;":"⇌","rlm;":"‏","rmoust;":"⎱","rmoustache;":"⎱","rnmid;":"⫮","roang;":"⟭","roarr;":"⇾","robrk;":"⟧","ropar;":"⦆","Ropf;":"ℝ","ropf;":"𝕣","roplus;":"⨮","rotimes;":"⨵","RoundImplies;":"⥰","rpar;":")","rpargt;":"⦔","rppolint;":"⨒","rrarr;":"⇉","Rrightarrow;":"⇛","rsaquo;":"›","Rscr;":"ℛ","rscr;":"𝓇","Rsh;":"↱","rsh;":"↱","rsqb;":"]","rsquo;":"’","rsquor;":"’","rthree;":"⋌","rtimes;":"⋊","rtri;":"▹","rtrie;":"⊵","rtrif;":"▸","rtriltri;":"⧎","RuleDelayed;":"⧴","ruluhar;":"⥨","rx;":"℞","Sacute;":"Ś","sacute;":"ś","sbquo;":"‚","Sc;":"⪼","sc;":"≻","scap;":"⪸","Scaron;":"Š","scaron;":"š","sccue;":"≽","scE;":"⪴","sce;":"⪰","Scedil;":"Ş","scedil;":"ş","Scirc;":"Ŝ","scirc;":"ŝ","scnap;":"⪺","scnE;":"⪶","scnsim;":"⋩","scpolint;":"⨓","scsim;":"≿","Scy;":"С","scy;":"с","sdot;":"⋅","sdotb;":"⊡","sdote;":"⩦","searhk;":"⤥","seArr;":"⇘","searr;":"↘","searrow;":"↘","sect;":"§",sect:"§","semi;":";","seswar;":"⤩","setminus;":"∖","setmn;":"∖","sext;":"✶","Sfr;":"𝔖","sfr;":"𝔰","sfrown;":"⌢","sharp;":"♯","SHCHcy;":"Щ","shchcy;":"щ","SHcy;":"Ш","shcy;":"ш","ShortDownArrow;":"↓","ShortLeftArrow;":"←","shortmid;":"∣","shortparallel;":"∥","ShortRightArrow;":"→","ShortUpArrow;":"↑","shy;":"­",shy:"­","Sigma;":"Σ","sigma;":"σ","sigmaf;":"ς","sigmav;":"ς","sim;":"∼","simdot;":"⩪","sime;":"≃","simeq;":"≃","simg;":"⪞","simgE;":"⪠","siml;":"⪝","simlE;":"⪟","simne;":"≆","simplus;":"⨤","simrarr;":"⥲","slarr;":"←","SmallCircle;":"∘","smallsetminus;":"∖","smashp;":"⨳","smeparsl;":"⧤","smid;":"∣","smile;":"⌣","smt;":"⪪","smte;":"⪬","smtes;":"⪬︀","SOFTcy;":"Ь","softcy;":"ь","sol;":"/","solb;":"⧄","solbar;":"⌿","Sopf;":"𝕊","sopf;":"𝕤","spades;":"♠","spadesuit;":"♠","spar;":"∥","sqcap;":"⊓","sqcaps;":"⊓︀","sqcup;":"⊔","sqcups;":"⊔︀","Sqrt;":"√","sqsub;":"⊏","sqsube;":"⊑","sqsubset;":"⊏","sqsubseteq;":"⊑","sqsup;":"⊐","sqsupe;":"⊒","sqsupset;":"⊐","sqsupseteq;":"⊒","squ;":"□","Square;":"□","square;":"□","SquareIntersection;":"⊓","SquareSubset;":"⊏","SquareSubsetEqual;":"⊑","SquareSuperset;":"⊐","SquareSupersetEqual;":"⊒","SquareUnion;":"⊔","squarf;":"▪","squf;":"▪","srarr;":"→","Sscr;":"𝒮","sscr;":"𝓈","ssetmn;":"∖","ssmile;":"⌣","sstarf;":"⋆","Star;":"⋆","star;":"☆","starf;":"★","straightepsilon;":"ϵ","straightphi;":"ϕ","strns;":"¯","Sub;":"⋐","sub;":"⊂","subdot;":"⪽","subE;":"⫅","sube;":"⊆","subedot;":"⫃","submult;":"⫁","subnE;":"⫋","subne;":"⊊","subplus;":"⪿","subrarr;":"⥹","Subset;":"⋐","subset;":"⊂","subseteq;":"⊆","subseteqq;":"⫅","SubsetEqual;":"⊆","subsetneq;":"⊊","subsetneqq;":"⫋","subsim;":"⫇","subsub;":"⫕","subsup;":"⫓","succ;":"≻","succapprox;":"⪸","succcurlyeq;":"≽","Succeeds;":"≻","SucceedsEqual;":"⪰","SucceedsSlantEqual;":"≽","SucceedsTilde;":"≿","succeq;":"⪰","succnapprox;":"⪺","succneqq;":"⪶","succnsim;":"⋩","succsim;":"≿","SuchThat;":"∋","Sum;":"∑","sum;":"∑","sung;":"♪","Sup;":"⋑","sup;":"⊃","sup1;":"¹",sup1:"¹","sup2;":"²",sup2:"²","sup3;":"³",sup3:"³","supdot;":"⪾","supdsub;":"⫘","supE;":"⫆","supe;":"⊇","supedot;":"⫄","Superset;":"⊃","SupersetEqual;":"⊇","suphsol;":"⟉","suphsub;":"⫗","suplarr;":"⥻","supmult;":"⫂","supnE;":"⫌","supne;":"⊋","supplus;":"⫀","Supset;":"⋑","supset;":"⊃","supseteq;":"⊇","supseteqq;":"⫆","supsetneq;":"⊋","supsetneqq;":"⫌","supsim;":"⫈","supsub;":"⫔","supsup;":"⫖","swarhk;":"⤦","swArr;":"⇙","swarr;":"↙","swarrow;":"↙","swnwar;":"⤪","szlig;":"ß",szlig:"ß","Tab;":"\t","target;":"⌖","Tau;":"Τ","tau;":"τ","tbrk;":"⎴","Tcaron;":"Ť","tcaron;":"ť","Tcedil;":"Ţ","tcedil;":"ţ","Tcy;":"Т","tcy;":"т","tdot;":"⃛","telrec;":"⌕","Tfr;":"𝔗","tfr;":"𝔱","there4;":"∴","Therefore;":"∴","therefore;":"∴","Theta;":"Θ","theta;":"θ","thetasym;":"ϑ","thetav;":"ϑ","thickapprox;":"≈","thicksim;":"∼","ThickSpace;":"  ","thinsp;":" ","ThinSpace;":" ","thkap;":"≈","thksim;":"∼","THORN;":"Þ",THORN:"Þ","thorn;":"þ",thorn:"þ","Tilde;":"∼","tilde;":"˜","TildeEqual;":"≃","TildeFullEqual;":"≅","TildeTilde;":"≈","times;":"×",times:"×","timesb;":"⊠","timesbar;":"⨱","timesd;":"⨰","tint;":"∭","toea;":"⤨","top;":"⊤","topbot;":"⌶","topcir;":"⫱","Topf;":"𝕋","topf;":"𝕥","topfork;":"⫚","tosa;":"⤩","tprime;":"‴","TRADE;":"™","trade;":"™","triangle;":"▵","triangledown;":"▿","triangleleft;":"◃","trianglelefteq;":"⊴","triangleq;":"≜","triangleright;":"▹","trianglerighteq;":"⊵","tridot;":"◬","trie;":"≜","triminus;":"⨺","TripleDot;":"⃛","triplus;":"⨹","trisb;":"⧍","tritime;":"⨻","trpezium;":"⏢","Tscr;":"𝒯","tscr;":"𝓉","TScy;":"Ц","tscy;":"ц","TSHcy;":"Ћ","tshcy;":"ћ","Tstrok;":"Ŧ","tstrok;":"ŧ","twixt;":"≬","twoheadleftarrow;":"↞","twoheadrightarrow;":"↠","Uacute;":"Ú",Uacute:"Ú","uacute;":"ú",uacute:"ú","Uarr;":"↟","uArr;":"⇑","uarr;":"↑","Uarrocir;":"⥉","Ubrcy;":"Ў","ubrcy;":"ў","Ubreve;":"Ŭ","ubreve;":"ŭ","Ucirc;":"Û",Ucirc:"Û","ucirc;":"û",ucirc:"û","Ucy;":"У","ucy;":"у","udarr;":"⇅","Udblac;":"Ű","udblac;":"ű","udhar;":"⥮","ufisht;":"⥾","Ufr;":"𝔘","ufr;":"𝔲","Ugrave;":"Ù",Ugrave:"Ù","ugrave;":"ù",ugrave:"ù","uHar;":"⥣","uharl;":"↿","uharr;":"↾","uhblk;":"▀","ulcorn;":"⌜","ulcorner;":"⌜","ulcrop;":"⌏","ultri;":"◸","Umacr;":"Ū","umacr;":"ū","uml;":"¨",uml:"¨","UnderBar;":"_","UnderBrace;":"⏟","UnderBracket;":"⎵","UnderParenthesis;":"⏝","Union;":"⋃","UnionPlus;":"⊎","Uogon;":"Ų","uogon;":"ų","Uopf;":"𝕌","uopf;":"𝕦","UpArrow;":"↑","Uparrow;":"⇑","uparrow;":"↑","UpArrowBar;":"⤒","UpArrowDownArrow;":"⇅","UpDownArrow;":"↕","Updownarrow;":"⇕","updownarrow;":"↕","UpEquilibrium;":"⥮","upharpoonleft;":"↿","upharpoonright;":"↾","uplus;":"⊎","UpperLeftArrow;":"↖","UpperRightArrow;":"↗","Upsi;":"ϒ","upsi;":"υ","upsih;":"ϒ","Upsilon;":"Υ","upsilon;":"υ","UpTee;":"⊥","UpTeeArrow;":"↥","upuparrows;":"⇈","urcorn;":"⌝","urcorner;":"⌝","urcrop;":"⌎","Uring;":"Ů","uring;":"ů","urtri;":"◹","Uscr;":"𝒰","uscr;":"𝓊","utdot;":"⋰","Utilde;":"Ũ","utilde;":"ũ","utri;":"▵","utrif;":"▴","uuarr;":"⇈","Uuml;":"Ü",Uuml:"Ü","uuml;":"ü",uuml:"ü","uwangle;":"⦧","vangrt;":"⦜","varepsilon;":"ϵ","varkappa;":"ϰ","varnothing;":"∅","varphi;":"ϕ","varpi;":"ϖ","varpropto;":"∝","vArr;":"⇕","varr;":"↕","varrho;":"ϱ","varsigma;":"ς","varsubsetneq;":"⊊︀","varsubsetneqq;":"⫋︀","varsupsetneq;":"⊋︀","varsupsetneqq;":"⫌︀","vartheta;":"ϑ","vartriangleleft;":"⊲","vartriangleright;":"⊳","Vbar;":"⫫","vBar;":"⫨","vBarv;":"⫩","Vcy;":"В","vcy;":"в","VDash;":"⊫","Vdash;":"⊩","vDash;":"⊨","vdash;":"⊢","Vdashl;":"⫦","Vee;":"⋁","vee;":"∨","veebar;":"⊻","veeeq;":"≚","vellip;":"⋮","Verbar;":"‖","verbar;":"|","Vert;":"‖","vert;":"|","VerticalBar;":"∣","VerticalLine;":"|","VerticalSeparator;":"❘","VerticalTilde;":"≀","VeryThinSpace;":" ","Vfr;":"𝔙","vfr;":"𝔳","vltri;":"⊲","vnsub;":"⊂⃒","vnsup;":"⊃⃒","Vopf;":"𝕍","vopf;":"𝕧","vprop;":"∝","vrtri;":"⊳","Vscr;":"𝒱","vscr;":"𝓋","vsubnE;":"⫋︀","vsubne;":"⊊︀","vsupnE;":"⫌︀","vsupne;":"⊋︀","Vvdash;":"⊪","vzigzag;":"⦚","Wcirc;":"Ŵ","wcirc;":"ŵ","wedbar;":"⩟","Wedge;":"⋀","wedge;":"∧","wedgeq;":"≙","weierp;":"℘","Wfr;":"𝔚","wfr;":"𝔴","Wopf;":"𝕎","wopf;":"𝕨","wp;":"℘","wr;":"≀","wreath;":"≀","Wscr;":"𝒲","wscr;":"𝓌","xcap;":"⋂","xcirc;":"◯","xcup;":"⋃","xdtri;":"▽","Xfr;":"𝔛","xfr;":"𝔵","xhArr;":"⟺","xharr;":"⟷","Xi;":"Ξ","xi;":"ξ","xlArr;":"⟸","xlarr;":"⟵","xmap;":"⟼","xnis;":"⋻","xodot;":"⨀","Xopf;":"𝕏","xopf;":"𝕩","xoplus;":"⨁","xotime;":"⨂","xrArr;":"⟹","xrarr;":"⟶","Xscr;":"𝒳","xscr;":"𝓍","xsqcup;":"⨆","xuplus;":"⨄","xutri;":"△","xvee;":"⋁","xwedge;":"⋀","Yacute;":"Ý",Yacute:"Ý","yacute;":"ý",yacute:"ý","YAcy;":"Я","yacy;":"я","Ycirc;":"Ŷ","ycirc;":"ŷ","Ycy;":"Ы","ycy;":"ы","yen;":"¥",yen:"¥","Yfr;":"𝔜","yfr;":"𝔶","YIcy;":"Ї","yicy;":"ї","Yopf;":"𝕐","yopf;":"𝕪","Yscr;":"𝒴","yscr;":"𝓎","YUcy;":"Ю","yucy;":"ю","Yuml;":"Ÿ","yuml;":"ÿ",yuml:"ÿ","Zacute;":"Ź","zacute;":"ź","Zcaron;":"Ž","zcaron;":"ž","Zcy;":"З","zcy;":"з","Zdot;":"Ż","zdot;":"ż","zeetrf;":"ℨ","ZeroWidthSpace;":"​","Zeta;":"Ζ","zeta;":"ζ","Zfr;":"ℨ","zfr;":"𝔷","ZHcy;":"Ж","zhcy;":"ж","zigrarr;":"⇝","Zopf;":"ℤ","zopf;":"𝕫","Zscr;":"𝒵","zscr;":"𝓏","zwj;":"‍","zwnj;":"‌"};function Ee(e,t){if(e.length0&&(n.value+="\n\n",n.value+=t?e.references.map((function(e){return"["+e.name+"]("+e.url+")"})).join(" | "):e.references.map((function(e){return e.name+": "+e.url})).join("\n")),n}var qe=[new We("html5",{version:1.1,tags:[{name:"html",description:{kind:"markdown",value:"The html element represents the root of an HTML document."},attributes:[{name:"manifest",description:{kind:"markdown",value:"Specifies the URI of a resource manifest indicating resources that should be cached locally. See [Using the application cache](https://developer.mozilla.org/en-US/docs/Web/HTML/Using_the_application_cache) for details."}},{name:"version",description:'Specifies the version of the HTML [Document Type Definition](https://developer.mozilla.org/en-US/docs/Glossary/DTD "Document Type Definition: In HTML, the doctype is the required "" preamble found at the top of all documents. Its sole purpose is to prevent a browser from switching into so-called “quirks mode” when rendering a document; that is, the "" doctype ensures that the browser makes a best-effort attempt at following the relevant specifications, rather than using a different rendering mode that is incompatible with some specifications.") that governs the current document. This attribute is not needed, because it is redundant with the version information in the document type declaration.'},{name:"xmlns",description:'Specifies the XML Namespace of the document. Default value is `"http://www.w3.org/1999/xhtml"`. This is required in documents parsed with XML parsers, and optional in text/html documents.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/html"}]},{name:"head",description:{kind:"markdown",value:"The head element represents a collection of metadata for the Document."},attributes:[{name:"profile",description:"The URIs of one or more metadata profiles, separated by white space."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/head"}]},{name:"title",description:{kind:"markdown",value:"The title element represents the document's title or name. Authors should use titles that identify their documents even when they are used out of context, for example in a user's history or bookmarks, or in search results. The document's title is often different from its first heading, since the first heading does not have to stand alone when taken out of context."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/title"}]},{name:"base",description:{kind:"markdown",value:"The base element allows authors to specify the document base URL for the purposes of resolving relative URLs, and the name of the default browsing context for the purposes of following hyperlinks. The element does not represent any content beyond this information."},attributes:[{name:"href",description:{kind:"markdown",value:"The base URL to be used throughout the document for relative URL addresses. If this attribute is specified, this element must come before any other elements with attributes whose values are URLs. Absolute and relative URLs are allowed."}},{name:"target",description:{kind:"markdown",value:"A name or keyword indicating the default location to display the result when hyperlinks or forms cause navigation, for elements that do not have an explicit target reference. It is a name of, or keyword for, a _browsing context_ (for example: tab, window, or inline frame). The following keywords have special meanings:\n\n* `_self`: Load the result into the same browsing context as the current one. This value is the default if the attribute is not specified.\n* `_blank`: Load the result into a new unnamed browsing context.\n* `_parent`: Load the result into the parent browsing context of the current one. If there is no parent, this option behaves the same way as `_self`.\n* `_top`: Load the result into the top-level browsing context (that is, the browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this option behaves the same way as `_self`.\n\nIf this attribute is specified, this element must come before any other elements with attributes whose values are URLs."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/base"}]},{name:"link",description:{kind:"markdown",value:"The link element allows authors to link their document to other resources."},attributes:[{name:"href",description:{kind:"markdown",value:'This attribute specifies the [URL](https://developer.mozilla.org/en-US/docs/Glossary/URL "URL: Uniform Resource Locator (URL) is a text string specifying where a resource can be found on the Internet.") of the linked resource. A URL can be absolute or relative.'}},{name:"crossorigin",valueSet:"xo",description:{kind:"markdown",value:'This enumerated attribute indicates whether [CORS](https://developer.mozilla.org/en-US/docs/Glossary/CORS "CORS: CORS (Cross-Origin Resource Sharing) is a system, consisting of transmitting HTTP headers, that determines whether browsers block frontend JavaScript code from accessing responses for cross-origin requests.") must be used when fetching the resource. [CORS-enabled images](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_Enabled_Image) can be reused in the [``](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas "Use the HTML element with either the canvas scripting API or the WebGL API to draw graphics and animations.") element without being _tainted_. The allowed values are:\n\n`anonymous`\n\nA cross-origin request (i.e. with an [`Origin`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Origin "The Origin request header indicates where a fetch originates from. It doesn\'t include any path information, but only the server name. It is sent with CORS requests, as well as with POST requests. It is similar to the Referer header, but, unlike this header, it doesn\'t disclose the whole path.") HTTP header) is performed, but no credential is sent (i.e. no cookie, X.509 certificate, or HTTP Basic authentication). If the server does not give credentials to the origin site (by not setting the [`Access-Control-Allow-Origin`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin "The Access-Control-Allow-Origin response header indicates whether the response can be shared with requesting code from the given origin.") HTTP header) the image will be tainted and its usage restricted.\n\n`use-credentials`\n\nA cross-origin request (i.e. with an `Origin` HTTP header) is performed along with a credential sent (i.e. a cookie, certificate, and/or HTTP Basic authentication is performed). If the server does not give credentials to the origin site (through [`Access-Control-Allow-Credentials`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Credentials "The Access-Control-Allow-Credentials response header tells browsers whether to expose the response to frontend JavaScript code when the request\'s credentials mode (Request.credentials) is "include".") HTTP header), the resource will be _tainted_ and its usage restricted.\n\nIf the attribute is not present, the resource is fetched without a [CORS](https://developer.mozilla.org/en-US/docs/Glossary/CORS "CORS: CORS (Cross-Origin Resource Sharing) is a system, consisting of transmitting HTTP headers, that determines whether browsers block frontend JavaScript code from accessing responses for cross-origin requests.") request (i.e. without sending the `Origin` HTTP header), preventing its non-tainted usage. If invalid, it is handled as if the enumerated keyword **anonymous** was used. See [CORS settings attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes) for additional information.'}},{name:"rel",description:{kind:"markdown",value:"This attribute names a relationship of the linked document to the current document. The attribute must be a space-separated list of the [link types values](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types)."}},{name:"media",description:{kind:"markdown",value:"This attribute specifies the media that the linked resource applies to. Its value must be a media type / [media query](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_queries). This attribute is mainly useful when linking to external stylesheets — it allows the user agent to pick the best adapted one for the device it runs on.\n\n**Notes:**\n\n* In HTML 4, this can only be a simple white-space-separated list of media description literals, i.e., [media types and groups](https://developer.mozilla.org/en-US/docs/Web/CSS/@media), where defined and allowed as values for this attribute, such as `print`, `screen`, `aural`, `braille`. HTML5 extended this to any kind of [media queries](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_queries), which are a superset of the allowed values of HTML 4.\n* Browsers not supporting [CSS3 Media Queries](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_queries) won't necessarily recognize the adequate link; do not forget to set fallback links, the restricted set of media queries defined in HTML 4."}},{name:"hreflang",description:{kind:"markdown",value:"This attribute indicates the language of the linked resource. It is purely advisory. Allowed values are determined by [BCP47](https://www.ietf.org/rfc/bcp/bcp47.txt). Use this attribute only if the [`href`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href) attribute is present."}},{name:"type",description:{kind:"markdown",value:'This attribute is used to define the type of the content linked to. The value of the attribute should be a MIME type such as **text/html**, **text/css**, and so on. The common use of this attribute is to define the type of stylesheet being referenced (such as **text/css**), but given that CSS is the only stylesheet language used on the web, not only is it possible to omit the `type` attribute, but is actually now recommended practice. It is also used on `rel="preload"` link types, to make sure the browser only downloads file types that it supports.'}},{name:"sizes",description:{kind:"markdown",value:"This attribute defines the sizes of the icons for visual media contained in the resource. It must be present only if the [`rel`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/link#attr-rel) contains a value of `icon` or a non-standard type such as Apple's `apple-touch-icon`. It may have the following values:\n\n* `any`, meaning that the icon can be scaled to any size as it is in a vector format, like `image/svg+xml`.\n* a white-space separated list of sizes, each in the format `__x__` or `__X__`. Each of these sizes must be contained in the resource.\n\n**Note:** Most icon formats are only able to store one single icon; therefore most of the time the [`sizes`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes#attr-sizes) contains only one entry. MS's ICO format does, as well as Apple's ICNS. ICO is more ubiquitous; you should definitely use it."}},{name:"as",description:'This attribute is only used when `rel="preload"` or `rel="prefetch"` has been set on the `` element. It specifies the type of content being loaded by the ``, which is necessary for content prioritization, request matching, application of correct [content security policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP), and setting of correct [`Accept`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept "The Accept request HTTP header advertises which content types, expressed as MIME types, the client is able to understand. Using content negotiation, the server then selects one of the proposals, uses it and informs the client of its choice with the Content-Type response header. Browsers set adequate values for this header depending on the context where the request is done: when fetching a CSS stylesheet a different value is set for the request than when fetching an image, video or a script.") request header.'},{name:"importance",description:"Indicates the relative importance of the resource. Priority hints are delegated using the values:"},{name:"importance",description:'**`auto`**: Indicates **no preference**. The browser may use its own heuristics to decide the priority of the resource.\n\n**`high`**: Indicates to the browser that the resource is of **high** priority.\n\n**`low`**: Indicates to the browser that the resource is of **low** priority.\n\n**Note:** The `importance` attribute may only be used for the `` element if `rel="preload"` or `rel="prefetch"` is present.'},{name:"integrity",description:"Contains inline metadata — a base64-encoded cryptographic hash of the resource (file) you’re telling the browser to fetch. The browser can use this to verify that the fetched resource has been delivered free of unexpected manipulation. See [Subresource Integrity](https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity)."},{name:"referrerpolicy",description:'A string indicating which referrer to use when fetching the resource:\n\n* `no-referrer` means that the [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent.\n* `no-referrer-when-downgrade` means that no [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will be sent when navigating to an origin without TLS (HTTPS). This is a user agent’s default behavior, if no policy is otherwise specified.\n* `origin` means that the referrer will be the origin of the page, which is roughly the scheme, the host, and the port.\n* `origin-when-cross-origin` means that navigating to other origins will be limited to the scheme, the host, and the port, while navigating on the same origin will include the referrer\'s path.\n* `unsafe-url` means that the referrer will include the origin and the path (but not the fragment, password, or username). This case is unsafe because it can leak origins and paths from TLS-protected resources to insecure origins.'},{name:"title",description:'The `title` attribute has special semantics on the `` element. When used on a `` it defines a [preferred or an alternate stylesheet](https://developer.mozilla.org/en-US/docs/Web/CSS/Alternative_style_sheets). Incorrectly using it may [cause the stylesheet to be ignored](https://developer.mozilla.org/en-US/docs/Correctly_Using_Titles_With_External_Stylesheets).'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/link"}]},{name:"meta",description:{kind:"markdown",value:"The meta element represents various kinds of metadata that cannot be expressed using the title, base, link, style, and script elements."},attributes:[{name:"name",description:{kind:"markdown",value:'This attribute defines the name of a piece of document-level metadata. It should not be set if one of the attributes [`itemprop`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes#attr-itemprop), [`http-equiv`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-http-equiv) or [`charset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset) is also set.\n\nThis metadata name is associated with the value contained by the [`content`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-content) attribute. The possible values for the name attribute are:\n\n* `application-name` which defines the name of the application running in the web page.\n \n **Note:**\n \n * Browsers may use this to identify the application. It is different from the [``](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/title "The HTML Title element (<title>) defines the document\'s title that is shown in a browser\'s title bar or a page\'s tab.") element, which usually contain the application name, but may also contain information like the document name or a status.\n * Simple web pages shouldn\'t define an application-name.\n \n* `author` which defines the name of the document\'s author.\n* `description` which contains a short and accurate summary of the content of the page. Several browsers, like Firefox and Opera, use this as the default description of bookmarked pages.\n* `generator` which contains the identifier of the software that generated the page.\n* `keywords` which contains words relevant to the page\'s content separated by commas.\n* `referrer` which controls the [`Referer` HTTP header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer) attached to requests sent from the document:\n \n Values for the `content` attribute of `<meta name="referrer">`\n \n `no-referrer`\n \n Do not send a HTTP `Referrer` header.\n \n `origin`\n \n Send the [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the document.\n \n `no-referrer-when-downgrade`\n \n Send the [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) as a referrer to URLs as secure as the current page, (https→https), but does not send a referrer to less secure URLs (https→http). This is the default behaviour.\n \n `origin-when-cross-origin`\n \n Send the full URL (stripped of parameters) for same-origin requests, but only send the [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) for other cases.\n \n `same-origin`\n \n A referrer will be sent for [same-site origins](https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy), but cross-origin requests will contain no referrer information.\n \n `strict-origin`\n \n Only send the origin of the document as the referrer to a-priori as-much-secure destination (HTTPS->HTTPS), but don\'t send it to a less secure destination (HTTPS->HTTP).\n \n `strict-origin-when-cross-origin`\n \n Send a full URL when performing a same-origin request, only send the origin of the document to a-priori as-much-secure destination (HTTPS->HTTPS), and send no header to a less secure destination (HTTPS->HTTP).\n \n `unsafe-URL`\n \n Send the full URL (stripped of parameters) for same-origin or cross-origin requests.\n \n **Notes:**\n \n * Some browsers support the deprecated values of `always`, `default`, and `never` for referrer.\n * Dynamically inserting `<meta name="referrer">` (with [`document.write`](https://developer.mozilla.org/en-US/docs/Web/API/Document/write) or [`appendChild`](https://developer.mozilla.org/en-US/docs/Web/API/Node/appendChild)) makes the referrer behaviour unpredictable.\n * When several conflicting policies are defined, the no-referrer policy is applied.\n \n\nThis attribute may also have a value taken from the extended list defined on [WHATWG Wiki MetaExtensions page](https://wiki.whatwg.org/wiki/MetaExtensions). Although none have been formally accepted yet, a few commonly used names are:\n\n* `creator` which defines the name of the creator of the document, such as an organization or institution. If there are more than one, several [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") elements should be used.\n* `googlebot`, a synonym of `robots`, is only followed by Googlebot (the indexing crawler for Google).\n* `publisher` which defines the name of the document\'s publisher.\n* `robots` which defines the behaviour that cooperative crawlers, or "robots", should use with the page. It is a comma-separated list of the values below:\n \n Values for the content of `<meta name="robots">`\n \n Value\n \n Description\n \n Used by\n \n `index`\n \n Allows the robot to index the page (default).\n \n All\n \n `noindex`\n \n Requests the robot to not index the page.\n \n All\n \n `follow`\n \n Allows the robot to follow the links on the page (default).\n \n All\n \n `nofollow`\n \n Requests the robot to not follow the links on the page.\n \n All\n \n `none`\n \n Equivalent to `noindex, nofollow`\n \n [Google](https://support.google.com/webmasters/answer/79812)\n \n `noodp`\n \n Prevents using the [Open Directory Project](https://www.dmoz.org/) description, if any, as the page description in search engine results.\n \n [Google](https://support.google.com/webmasters/answer/35624#nodmoz), [Yahoo](https://help.yahoo.com/kb/search-for-desktop/meta-tags-robotstxt-yahoo-search-sln2213.html#cont5), [Bing](https://www.bing.com/webmaster/help/which-robots-metatags-does-bing-support-5198d240)\n \n `noarchive`\n \n Requests the search engine not to cache the page content.\n \n [Google](https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag#valid-indexing--serving-directives), [Yahoo](https://help.yahoo.com/kb/search-for-desktop/SLN2213.html), [Bing](https://www.bing.com/webmaster/help/which-robots-metatags-does-bing-support-5198d240)\n \n `nosnippet`\n \n Prevents displaying any description of the page in search engine results.\n \n [Google](https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag#valid-indexing--serving-directives), [Bing](https://www.bing.com/webmaster/help/which-robots-metatags-does-bing-support-5198d240)\n \n `noimageindex`\n \n Requests this page not to appear as the referring page of an indexed image.\n \n [Google](https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag#valid-indexing--serving-directives)\n \n `nocache`\n \n Synonym of `noarchive`.\n \n [Bing](https://www.bing.com/webmaster/help/which-robots-metatags-does-bing-support-5198d240)\n \n **Notes:**\n \n * Only cooperative robots follow these rules. Do not expect to prevent e-mail harvesters with them.\n * The robot still needs to access the page in order to read these rules. To prevent bandwidth consumption, use a _[robots.txt](https://developer.mozilla.org/en-US/docs/Glossary/robots.txt "robots.txt: Robots.txt is a file which is usually placed in the root of any website. It decides whether crawlers are permitted or forbidden access to the web site.")_ file.\n * If you want to remove a page, `noindex` will work, but only after the robot visits the page again. Ensure that the `robots.txt` file is not preventing revisits.\n * Some values are mutually exclusive, like `index` and `noindex`, or `follow` and `nofollow`. In these cases the robot\'s behaviour is undefined and may vary between them.\n * Some crawler robots, like Google, Yahoo and Bing, support the same values for the HTTP header `X-Robots-Tag`; this allows non-HTML documents like images to use these rules.\n \n* `slurp`, is a synonym of `robots`, but only for Slurp - the crawler for Yahoo Search.\n* `viewport`, which gives hints about the size of the initial size of the [viewport](https://developer.mozilla.org/en-US/docs/Glossary/viewport "viewport: A viewport represents a polygonal (normally rectangular) area in computer graphics that is currently being viewed. In web browser terms, it refers to the part of the document you\'re viewing which is currently visible in its window (or the screen, if the document is being viewed in full screen mode). Content outside the viewport is not visible onscreen until scrolled into view."). Used by mobile devices only.\n \n Values for the content of `<meta name="viewport">`\n \n Value\n \n Possible subvalues\n \n Description\n \n `width`\n \n A positive integer number, or the text `device-width`\n \n Defines the pixel width of the viewport that you want the web site to be rendered at.\n \n `height`\n \n A positive integer, or the text `device-height`\n \n Defines the height of the viewport. Not used by any browser.\n \n `initial-scale`\n \n A positive number between `0.0` and `10.0`\n \n Defines the ratio between the device width (`device-width` in portrait mode or `device-height` in landscape mode) and the viewport size.\n \n `maximum-scale`\n \n A positive number between `0.0` and `10.0`\n \n Defines the maximum amount to zoom in. It must be greater or equal to the `minimum-scale` or the behaviour is undefined. Browser settings can ignore this rule and iOS10+ ignores it by default.\n \n `minimum-scale`\n \n A positive number between `0.0` and `10.0`\n \n Defines the minimum zoom level. It must be smaller or equal to the `maximum-scale` or the behaviour is undefined. Browser settings can ignore this rule and iOS10+ ignores it by default.\n \n `user-scalable`\n \n `yes` or `no`\n \n If set to `no`, the user is not able to zoom in the webpage. The default is `yes`. Browser settings can ignore this rule, and iOS10+ ignores it by default.\n \n Specification\n \n Status\n \n Comment\n \n [CSS Device Adaptation \n The definition of \'<meta name="viewport">\' in that specification.](https://drafts.csswg.org/css-device-adapt/#viewport-meta)\n \n Working Draft\n \n Non-normatively describes the Viewport META element\n \n See also: [`@viewport`](https://developer.mozilla.org/en-US/docs/Web/CSS/@viewport "The @viewport CSS at-rule lets you configure the viewport through which the document is viewed. It\'s primarily used for mobile devices, but is also used by desktop browsers that support features like "snap to edge" (such as Microsoft Edge).")\n \n **Notes:**\n \n * Though unstandardized, this declaration is respected by most mobile browsers due to de-facto dominance.\n * The default values may vary between devices and browsers.\n * To learn about this declaration in Firefox for Mobile, see [this article](https://developer.mozilla.org/en-US/docs/Mobile/Viewport_meta_tag "Mobile/Viewport meta tag").'}},{name:"http-equiv",description:{kind:"markdown",value:'Defines a pragma directive. The attribute is named `**http-equiv**(alent)` because all the allowed values are names of particular HTTP headers:\n\n* `"content-language"` \n Defines the default language of the page. It can be overridden by the [lang](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/lang) attribute on any element.\n \n **Warning:** Do not use this value, as it is obsolete. Prefer the `lang` attribute on the [`<html>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/html "The HTML <html> element represents the root (top-level element) of an HTML document, so it is also referred to as the root element. All other elements must be descendants of this element.") element.\n \n* `"content-security-policy"` \n Allows page authors to define a [content policy](https://developer.mozilla.org/en-US/docs/Web/Security/CSP/CSP_policy_directives) for the current page. Content policies mostly specify allowed server origins and script endpoints which help guard against cross-site scripting attacks.\n* `"content-type"` \n Defines the [MIME type](https://developer.mozilla.org/en-US/docs/Glossary/MIME_type) of the document, followed by its character encoding. It follows the same syntax as the HTTP `content-type` entity-header field, but as it is inside a HTML page, most values other than `text/html` are impossible. Therefore the valid syntax for its `content` is the string \'`text/html`\' followed by a character set with the following syntax: \'`; charset=_IANAcharset_`\', where `IANAcharset` is the _preferred MIME name_ for a character set as [defined by the IANA.](https://www.iana.org/assignments/character-sets)\n \n **Warning:** Do not use this value, as it is obsolete. Use the [`charset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset) attribute on the [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") element.\n \n **Note:** As [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") can\'t change documents\' types in XHTML or HTML5\'s XHTML serialization, never set the MIME type to an XHTML MIME type with `<meta>`.\n \n* `"refresh"` \n This instruction specifies:\n * The number of seconds until the page should be reloaded - only if the [`content`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-content) attribute contains a positive integer.\n * The number of seconds until the page should redirect to another - only if the [`content`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-content) attribute contains a positive integer followed by the string \'`;url=`\', and a valid URL.\n* `"set-cookie"` \n Defines a [cookie](https://developer.mozilla.org/en-US/docs/cookie) for the page. Its content must follow the syntax defined in the [IETF HTTP Cookie Specification](https://tools.ietf.org/html/draft-ietf-httpstate-cookie-14).\n \n **Warning:** Do not use this instruction, as it is obsolete. Use the HTTP header [`Set-Cookie`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie) instead.'}},{name:"content",description:{kind:"markdown",value:"This attribute contains the value for the [`http-equiv`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-http-equiv) or [`name`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-name) attribute, depending on which is used."}},{name:"charset",description:{kind:"markdown",value:'This attribute declares the page\'s character encoding. It must contain a [standard IANA MIME name for character encodings](https://www.iana.org/assignments/character-sets). Although the standard doesn\'t request a specific encoding, it suggests:\n\n* Authors are encouraged to use [`UTF-8`](https://developer.mozilla.org/en-US/docs/Glossary/UTF-8).\n* Authors should not use ASCII-incompatible encodings to avoid security risk: browsers not supporting them may interpret harmful content as HTML. This happens with the `JIS_C6226-1983`, `JIS_X0212-1990`, `HZ-GB-2312`, `JOHAB`, the ISO-2022 family and the EBCDIC family.\n\n**Note:** ASCII-incompatible encodings are those that don\'t map the 8-bit code points `0x20` to `0x7E` to the `0x0020` to `0x007E` Unicode code points)\n\n* Authors **must not** use `CESU-8`, `UTF-7`, `BOCU-1` and/or `SCSU` as [cross-site scripting](https://developer.mozilla.org/en-US/docs/Glossary/Cross-site_scripting) attacks with these encodings have been demonstrated.\n* Authors should not use `UTF-32` because not all HTML5 encoding algorithms can distinguish it from `UTF-16`.\n\n**Notes:**\n\n* The declared character encoding must match the one the page was saved with to avoid garbled characters and security holes.\n* The [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") element declaring the encoding must be inside the [`<head>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/head "The HTML <head> element provides general information (metadata) about the document, including its title and links to its scripts and style sheets.") element and **within the first 1024 bytes** of the HTML as some browsers only look at those bytes before choosing an encoding.\n* This [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") element is only one part of the [algorithm to determine a page\'s character set](https://www.whatwg.org/specs/web-apps/current-work/multipage/parsing.html#encoding-sniffing-algorithm "Algorithm charset page"). The [`Content-Type` header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type) and any [Byte-Order Marks](https://developer.mozilla.org/en-US/docs/Glossary/Byte-Order_Mark "The definition of that term (Byte-Order Marks) has not been written yet; please consider contributing it!") override this element.\n* It is strongly recommended to define the character encoding. If a page\'s encoding is undefined, cross-scripting techniques are possible, such as the [`UTF-7` fallback cross-scripting technique](https://code.google.com/p/doctype-mirror/wiki/ArticleUtf7).\n* The [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") element with a `charset` attribute is a synonym for the pre-HTML5 `<meta http-equiv="Content-Type" content="text/html; charset=_IANAcharset_">`, where _`IANAcharset`_ contains the value of the equivalent [`charset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset) attribute. This syntax is still allowed, although no longer recommended.'}},{name:"scheme",description:"This attribute defines the scheme in which metadata is described. A scheme is a context leading to the correct interpretations of the [`content`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-content) value, like a format.\n\n**Warning:** Do not use this value, as it is obsolete. There is no replacement as there was no real usage for it."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/meta"}]},{name:"style",description:{kind:"markdown",value:"The style element allows authors to embed style information in their documents. The style element is one of several inputs to the styling processing model. The element does not represent content for the user."},attributes:[{name:"media",description:{kind:"markdown",value:"This attribute defines which media the style should be applied to. Its value is a [media query](https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Media_queries), which defaults to `all` if the attribute is missing."}},{name:"nonce",description:{kind:"markdown",value:"A cryptographic nonce (number used once) used to whitelist inline styles in a [style-src Content-Security-Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/style-src). The server must generate a unique nonce value each time it transmits a policy. It is critical to provide a nonce that cannot be guessed as bypassing a resource’s policy is otherwise trivial."}},{name:"type",description:{kind:"markdown",value:"This attribute defines the styling language as a MIME type (charset should not be specified). This attribute is optional and defaults to `text/css` if it is not specified — there is very little reason to include this in modern web documents."}},{name:"scoped",valueSet:"v"},{name:"title",description:"This attribute specifies [alternative style sheet](https://developer.mozilla.org/en-US/docs/Web/CSS/Alternative_style_sheets) sets."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/style"}]},{name:"body",description:{kind:"markdown",value:"The body element represents the content of the document."},attributes:[{name:"onafterprint",description:{kind:"markdown",value:"Function to call after the user has printed the document."}},{name:"onbeforeprint",description:{kind:"markdown",value:"Function to call when the user requests printing of the document."}},{name:"onbeforeunload",description:{kind:"markdown",value:"Function to call when the document is about to be unloaded."}},{name:"onhashchange",description:{kind:"markdown",value:"Function to call when the fragment identifier part (starting with the hash (`'#'`) character) of the document's current address has changed."}},{name:"onlanguagechange",description:{kind:"markdown",value:"Function to call when the preferred languages changed."}},{name:"onmessage",description:{kind:"markdown",value:"Function to call when the document has received a message."}},{name:"onoffline",description:{kind:"markdown",value:"Function to call when network communication has failed."}},{name:"ononline",description:{kind:"markdown",value:"Function to call when network communication has been restored."}},{name:"onpagehide"},{name:"onpageshow"},{name:"onpopstate",description:{kind:"markdown",value:"Function to call when the user has navigated session history."}},{name:"onstorage",description:{kind:"markdown",value:"Function to call when the storage area has changed."}},{name:"onunload",description:{kind:"markdown",value:"Function to call when the document is going away."}},{name:"alink",description:'Color of text for hyperlinks when selected. _This method is non-conforming, use CSS [`color`](https://developer.mozilla.org/en-US/docs/Web/CSS/color "The color CSS property sets the foreground color value of an element\'s text and text decorations, and sets the currentcolor value.") property in conjunction with the [`:active`](https://developer.mozilla.org/en-US/docs/Web/CSS/:active "The :active CSS pseudo-class represents an element (such as a button) that is being activated by the user.") pseudo-class instead._'},{name:"background",description:'URI of a image to use as a background. _This method is non-conforming, use CSS [`background`](https://developer.mozilla.org/en-US/docs/Web/CSS/background "The background shorthand CSS property sets all background style properties at once, such as color, image, origin and size, or repeat method.") property on the element instead._'},{name:"bgcolor",description:'Background color for the document. _This method is non-conforming, use CSS [`background-color`](https://developer.mozilla.org/en-US/docs/Web/CSS/background-color "The background-color CSS property sets the background color of an element.") property on the element instead._'},{name:"bottommargin",description:'The margin of the bottom of the body. _This method is non-conforming, use CSS [`margin-bottom`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-bottom "The margin-bottom CSS property sets the margin area on the bottom of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") property on the element instead._'},{name:"leftmargin",description:'The margin of the left of the body. _This method is non-conforming, use CSS [`margin-left`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-left "The margin-left CSS property sets the margin area on the left side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") property on the element instead._'},{name:"link",description:'Color of text for unvisited hypertext links. _This method is non-conforming, use CSS [`color`](https://developer.mozilla.org/en-US/docs/Web/CSS/color "The color CSS property sets the foreground color value of an element\'s text and text decorations, and sets the currentcolor value.") property in conjunction with the [`:link`](https://developer.mozilla.org/en-US/docs/Web/CSS/:link "The :link CSS pseudo-class represents an element that has not yet been visited. It matches every unvisited <a>, <area>, or <link> element that has an href attribute.") pseudo-class instead._'},{name:"onblur",description:"Function to call when the document loses focus."},{name:"onerror",description:"Function to call when the document fails to load properly."},{name:"onfocus",description:"Function to call when the document receives focus."},{name:"onload",description:"Function to call when the document has finished loading."},{name:"onredo",description:"Function to call when the user has moved forward in undo transaction history."},{name:"onresize",description:"Function to call when the document has been resized."},{name:"onundo",description:"Function to call when the user has moved backward in undo transaction history."},{name:"rightmargin",description:'The margin of the right of the body. _This method is non-conforming, use CSS [`margin-right`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-right "The margin-right CSS property sets the margin area on the right side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") property on the element instead._'},{name:"text",description:'Foreground color of text. _This method is non-conforming, use CSS [`color`](https://developer.mozilla.org/en-US/docs/Web/CSS/color "The color CSS property sets the foreground color value of an element\'s text and text decorations, and sets the currentcolor value.") property on the element instead._'},{name:"topmargin",description:'The margin of the top of the body. _This method is non-conforming, use CSS [`margin-top`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-top "The margin-top CSS property sets the margin area on the top of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") property on the element instead._'},{name:"vlink",description:'Color of text for visited hypertext links. _This method is non-conforming, use CSS [`color`](https://developer.mozilla.org/en-US/docs/Web/CSS/color "The color CSS property sets the foreground color value of an element\'s text and text decorations, and sets the currentcolor value.") property in conjunction with the [`:visited`](https://developer.mozilla.org/en-US/docs/Web/CSS/:visited "The :visited CSS pseudo-class represents links that the user has already visited. For privacy reasons, the styles that can be modified using this selector are very limited.") pseudo-class instead._'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/body"}]},{name:"article",description:{kind:"markdown",value:"The article element represents a complete, or self-contained, composition in a document, page, application, or site and that is, in principle, independently distributable or reusable, e.g. in syndication. This could be a forum post, a magazine or newspaper article, a blog entry, a user-submitted comment, an interactive widget or gadget, or any other independent item of content. Each article should be identified, typically by including a heading (h1–h6 element) as a child of the article element."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/article"}]},{name:"section",description:{kind:"markdown",value:"The section element represents a generic section of a document or application. A section, in this context, is a thematic grouping of content. Each section should be identified, typically by including a heading ( h1- h6 element) as a child of the section element."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/section"}]},{name:"nav",description:{kind:"markdown",value:"The nav element represents a section of a page that links to other pages or to parts within the page: a section with navigation links."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/nav"}]},{name:"aside",description:{kind:"markdown",value:"The aside element represents a section of a page that consists of content that is tangentially related to the content around the aside element, and which could be considered separate from that content. Such sections are often represented as sidebars in printed typography."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/aside"}]},{name:"h1",description:{kind:"markdown",value:"The h1 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h2",description:{kind:"markdown",value:"The h2 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h3",description:{kind:"markdown",value:"The h3 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h4",description:{kind:"markdown",value:"The h4 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h5",description:{kind:"markdown",value:"The h5 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h6",description:{kind:"markdown",value:"The h6 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"header",description:{kind:"markdown",value:"The header element represents introductory content for its nearest ancestor sectioning content or sectioning root element. A header typically contains a group of introductory or navigational aids. When the nearest ancestor sectioning content or sectioning root element is the body element, then it applies to the whole page."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/header"}]},{name:"footer",description:{kind:"markdown",value:"The footer element represents a footer for its nearest ancestor sectioning content or sectioning root element. A footer typically contains information about its section such as who wrote it, links to related documents, copyright data, and the like."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/footer"}]},{name:"address",description:{kind:"markdown",value:"The address element represents the contact information for its nearest article or body element ancestor. If that is the body element, then the contact information applies to the document as a whole."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/address"}]},{name:"p",description:{kind:"markdown",value:"The p element represents a paragraph."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/p"}]},{name:"hr",description:{kind:"markdown",value:"The hr element represents a paragraph-level thematic break, e.g. a scene change in a story, or a transition to another topic within a section of a reference book."},attributes:[{name:"align",description:"Sets the alignment of the rule on the page. If no value is specified, the default value is `left`."},{name:"color",description:"Sets the color of the rule through color name or hexadecimal value."},{name:"noshade",description:"Sets the rule to have no shading."},{name:"size",description:"Sets the height, in pixels, of the rule."},{name:"width",description:"Sets the length of the rule on the page through a pixel or percentage value."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/hr"}]},{name:"pre",description:{kind:"markdown",value:"The pre element represents a block of preformatted text, in which structure is represented by typographic conventions rather than by elements."},attributes:[{name:"cols",description:'Contains the _preferred_ count of characters that a line should have. It was a non-standard synonym of [`width`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/pre#attr-width). To achieve such an effect, use CSS [`width`](https://developer.mozilla.org/en-US/docs/Web/CSS/width "The width CSS property sets an element\'s width. By default it sets the width of the content area, but if box-sizing is set to border-box, it sets the width of the border area.") instead.'},{name:"width",description:'Contains the _preferred_ count of characters that a line should have. Though technically still implemented, this attribute has no visual effect; to achieve such an effect, use CSS [`width`](https://developer.mozilla.org/en-US/docs/Web/CSS/width "The width CSS property sets an element\'s width. By default it sets the width of the content area, but if box-sizing is set to border-box, it sets the width of the border area.") instead.'},{name:"wrap",description:'Is a _hint_ indicating how the overflow must happen. In modern browser this hint is ignored and no visual effect results in its present; to achieve such an effect, use CSS [`white-space`](https://developer.mozilla.org/en-US/docs/Web/CSS/white-space "The white-space CSS property sets how white space inside an element is handled.") instead.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/pre"}]},{name:"blockquote",description:{kind:"markdown",value:"The blockquote element represents content that is quoted from another source, optionally with a citation which must be within a footer or cite element, and optionally with in-line changes such as annotations and abbreviations."},attributes:[{name:"cite",description:{kind:"markdown",value:"A URL that designates a source document or message for the information quoted. This attribute is intended to point to information explaining the context or the reference for the quote."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/blockquote"}]},{name:"ol",description:{kind:"markdown",value:"The ol element represents a list of items, where the items have been intentionally ordered, such that changing the order would change the meaning of the document."},attributes:[{name:"reversed",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute specifies that the items of the list are specified in reversed order."}},{name:"start",description:{kind:"markdown",value:'This integer attribute specifies the start value for numbering the individual list items. Although the ordering type of list elements might be Roman numerals, such as XXXI, or letters, the value of start is always represented as a number. To start numbering elements from the letter "C", use `<ol start="3">`.\n\n**Note**: This attribute was deprecated in HTML4, but reintroduced in HTML5.'}},{name:"type",valueSet:"lt",description:{kind:"markdown",value:"Indicates the numbering type:\n\n* `'a'` indicates lowercase letters,\n* `'A'` indicates uppercase letters,\n* `'i'` indicates lowercase Roman numerals,\n* `'I'` indicates uppercase Roman numerals,\n* and `'1'` indicates numbers (default).\n\nThe type set is used for the entire list unless a different [`type`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/li#attr-type) attribute is used within an enclosed [`<li>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/li \"The HTML <li> element is used to represent an item in a list. It must be contained in a parent element: an ordered list (<ol>), an unordered list (<ul>), or a menu (<menu>). In menus and unordered lists, list items are usually displayed using bullet points. In ordered lists, they are usually displayed with an ascending counter on the left, such as a number or letter.\") element.\n\n**Note:** This attribute was deprecated in HTML4, but reintroduced in HTML5.\n\nUnless the value of the list number matters (e.g. in legal or technical documents where items are to be referenced by their number/letter), the CSS [`list-style-type`](https://developer.mozilla.org/en-US/docs/Web/CSS/list-style-type \"The list-style-type CSS property sets the marker (such as a disc, character, or custom counter style) of a list item element.\") property should be used instead."}},{name:"compact",description:'This Boolean attribute hints that the list should be rendered in a compact style. The interpretation of this attribute depends on the user agent and it doesn\'t work in all browsers.\n\n**Warning:** Do not use this attribute, as it has been deprecated: the [`<ol>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol "The HTML <ol> element represents an ordered list of items, typically rendered as a numbered list.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/CSS). To give an effect similar to the `compact` attribute, the [CSS](https://developer.mozilla.org/en-US/docs/CSS) property [`line-height`](https://developer.mozilla.org/en-US/docs/Web/CSS/line-height "The line-height CSS property sets the amount of space used for lines, such as in text. On block-level elements, it specifies the minimum height of line boxes within the element. On non-replaced inline elements, it specifies the height that is used to calculate line box height.") can be used with a value of `80%`.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/ol"}]},{name:"ul",description:{kind:"markdown",value:"The ul element represents a list of items, where the order of the items is not important — that is, where changing the order would not materially change the meaning of the document."},attributes:[{name:"compact",description:'This Boolean attribute hints that the list should be rendered in a compact style. The interpretation of this attribute depends on the user agent and it doesn\'t work in all browsers.\n\n**Usage note: **Do not use this attribute, as it has been deprecated: the [`<ul>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ul "The HTML <ul> element represents an unordered list of items, typically rendered as a bulleted list.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/CSS). To give a similar effect as the `compact` attribute, the [CSS](https://developer.mozilla.org/en-US/docs/CSS) property [line-height](https://developer.mozilla.org/en-US/docs/CSS/line-height) can be used with a value of `80%`.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/ul"}]},{name:"li",description:{kind:"markdown",value:"The li element represents a list item. If its parent element is an ol, ul, or menu element, then the element is an item of the parent element's list, as defined for those elements. Otherwise, the list item has no defined list-related relationship to any other li element."},attributes:[{name:"value",description:{kind:"markdown",value:'This integer attribute indicates the current ordinal value of the list item as defined by the [`<ol>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol "The HTML <ol> element represents an ordered list of items, typically rendered as a numbered list.") element. The only allowed value for this attribute is a number, even if the list is displayed with Roman numerals or letters. List items that follow this one continue numbering from the value set. The **value** attribute has no meaning for unordered lists ([`<ul>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ul "The HTML <ul> element represents an unordered list of items, typically rendered as a bulleted list.")) or for menus ([`<menu>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/menu "The HTML <menu> element represents a group of commands that a user can perform or activate. This includes both list menus, which might appear across the top of a screen, as well as context menus, such as those that might appear underneath a button after it has been clicked.")).\n\n**Note**: This attribute was deprecated in HTML4, but reintroduced in HTML5.\n\n**Note:** Prior to Gecko 9.0, negative values were incorrectly converted to 0. Starting in Gecko 9.0 all integer values are correctly parsed.'}},{name:"type",description:'This character attribute indicates the numbering type:\n\n* `a`: lowercase letters\n* `A`: uppercase letters\n* `i`: lowercase Roman numerals\n* `I`: uppercase Roman numerals\n* `1`: numbers\n\nThis type overrides the one used by its parent [`<ol>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol "The HTML <ol> element represents an ordered list of items, typically rendered as a numbered list.") element, if any.\n\n**Usage note:** This attribute has been deprecated: use the CSS [`list-style-type`](https://developer.mozilla.org/en-US/docs/Web/CSS/list-style-type "The list-style-type CSS property sets the marker (such as a disc, character, or custom counter style) of a list item element.") property instead.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/li"}]},{name:"dl",description:{kind:"markdown",value:"The dl element represents an association list consisting of zero or more name-value groups (a description list). A name-value group consists of one or more names (dt elements) followed by one or more values (dd elements), ignoring any nodes other than dt and dd elements. Within a single dl element, there should not be more than one dt element for each name."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dl"}]},{name:"dt",description:{kind:"markdown",value:"The dt element represents the term, or name, part of a term-description group in a description list (dl element)."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dt"}]},{name:"dd",description:{kind:"markdown",value:"The dd element represents the description, definition, or value, part of a term-description group in a description list (dl element)."},attributes:[{name:"nowrap",description:"If the value of this attribute is set to `yes`, the definition text will not wrap. The default value is `no`."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dd"}]},{name:"figure",description:{kind:"markdown",value:"The figure element represents some flow content, optionally with a caption, that is self-contained (like a complete sentence) and is typically referenced as a single unit from the main flow of the document."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/figure"}]},{name:"figcaption",description:{kind:"markdown",value:"The figcaption element represents a caption or legend for the rest of the contents of the figcaption element's parent figure element, if any."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/figcaption"}]},{name:"main",description:{kind:"markdown",value:"The main element represents the main content of the body of a document or application. The main content area consists of content that is directly related to or expands upon the central topic of a document or central functionality of an application."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/main"}]},{name:"div",description:{kind:"markdown",value:"The div element has no special meaning at all. It represents its children. It can be used with the class, lang, and title attributes to mark up semantics common to a group of consecutive elements."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/div"}]},{name:"a",description:{kind:"markdown",value:"If the a element has an href attribute, then it represents a hyperlink (a hypertext anchor) labeled by its contents."},attributes:[{name:"href",description:{kind:"markdown",value:"Contains a URL or a URL fragment that the hyperlink points to."}},{name:"target",description:{kind:"markdown",value:'Specifies where to display the linked URL. It is a name of, or keyword for, a _browsing context_: a tab, window, or `<iframe>`. The following keywords have special meanings:\n\n* `_self`: Load the URL into the same browsing context as the current one. This is the default behavior.\n* `_blank`: Load the URL into a new browsing context. This is usually a tab, but users can configure browsers to use new windows instead.\n* `_parent`: Load the URL into the parent browsing context of the current one. If there is no parent, this behaves the same way as `_self`.\n* `_top`: Load the URL into the top-level browsing context (that is, the "highest" browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this behaves the same way as `_self`.\n\n**Note:** When using `target`, consider adding `rel="noreferrer"` to avoid exploitation of the `window.opener` API.\n\n**Note:** Linking to another page using `target="_blank"` will run the new page on the same process as your page. If the new page is executing expensive JS, your page\'s performance may suffer. To avoid this use `rel="noopener"`.'}},{name:"download",description:{kind:"markdown",value:"This attribute instructs browsers to download a URL instead of navigating to it, so the user will be prompted to save it as a local file. If the attribute has a value, it is used as the pre-filled file name in the Save prompt (the user can still change the file name if they want). There are no restrictions on allowed values, though `/` and `\\` are converted to underscores. Most file systems limit some punctuation in file names, and browsers will adjust the suggested name accordingly.\n\n**Notes:**\n\n* This attribute only works for [same-origin URLs](https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy).\n* Although HTTP(s) URLs need to be in the same-origin, [`blob:` URLs](https://developer.mozilla.org/en-US/docs/Web/API/URL.createObjectURL) and [`data:` URLs](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs) are allowed so that content generated by JavaScript, such as pictures created in an image-editor Web app, can be downloaded.\n* If the HTTP header [`Content-Disposition:`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition) gives a different filename than this attribute, the HTTP header takes priority over this attribute.\n* If `Content-Disposition:` is set to `inline`, Firefox prioritizes `Content-Disposition`, like the filename case, while Chrome prioritizes the `download` attribute."}},{name:"ping",description:{kind:"markdown",value:'Contains a space-separated list of URLs to which, when the hyperlink is followed, [`POST`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/POST "The HTTP POST method sends data to the server. The type of the body of the request is indicated by the Content-Type header.") requests with the body `PING` will be sent by the browser (in the background). Typically used for tracking.'}},{name:"rel",description:{kind:"markdown",value:"Specifies the relationship of the target object to the link object. The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types)."}},{name:"hreflang",description:{kind:"markdown",value:'This attribute indicates the human language of the linked resource. It is purely advisory, with no built-in functionality. Allowed values are determined by [BCP47](https://www.ietf.org/rfc/bcp/bcp47.txt "Tags for Identifying Languages").'}},{name:"type",description:{kind:"markdown",value:'Specifies the media type in the form of a [MIME type](https://developer.mozilla.org/en-US/docs/Glossary/MIME_type "MIME type: A MIME type (now properly called "media type", but also sometimes "content type") is a string sent along with a file indicating the type of the file (describing the content format, for example, a sound file might be labeled audio/ogg, or an image file image/png).") for the linked URL. It is purely advisory, with no built-in functionality.'}},{name:"referrerpolicy",description:"Indicates which [referrer](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer) to send when fetching the URL:\n\n* `'no-referrer'` means the `Referer:` header will not be sent.\n* `'no-referrer-when-downgrade'` means no `Referer:` header will be sent when navigating to an origin without HTTPS. This is the default behavior.\n* `'origin'` means the referrer will be the [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the page, not including information after the domain.\n* `'origin-when-cross-origin'` meaning that navigations to other origins will be limited to the scheme, the host and the port, while navigations on the same origin will include the referrer's path.\n* `'strict-origin-when-cross-origin'`\n* `'unsafe-url'` means the referrer will include the origin and path, but not the fragment, password, or username. This is unsafe because it can leak data from secure URLs to insecure ones."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/a"}]},{name:"em",description:{kind:"markdown",value:"The em element represents stress emphasis of its contents."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/em"}]},{name:"strong",description:{kind:"markdown",value:"The strong element represents strong importance, seriousness, or urgency for its contents."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/strong"}]},{name:"small",description:{kind:"markdown",value:"The small element represents side comments such as small print."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/small"}]},{name:"s",description:{kind:"markdown",value:"The s element represents contents that are no longer accurate or no longer relevant."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/s"}]},{name:"cite",description:{kind:"markdown",value:"The cite element represents a reference to a creative work. It must include the title of the work or the name of the author(person, people or organization) or an URL reference, or a reference in abbreviated form as per the conventions used for the addition of citation metadata."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/cite"}]},{name:"q",description:{kind:"markdown",value:"The q element represents some phrasing content quoted from another source."},attributes:[{name:"cite",description:{kind:"markdown",value:"The value of this attribute is a URL that designates a source document or message for the information quoted. This attribute is intended to point to information explaining the context or the reference for the quote."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/q"}]},{name:"dfn",description:{kind:"markdown",value:"The dfn element represents the defining instance of a term. The paragraph, description list group, or section that is the nearest ancestor of the dfn element must also contain the definition(s) for the term given by the dfn element."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dfn"}]},{name:"abbr",description:{kind:"markdown",value:"The abbr element represents an abbreviation or acronym, optionally with its expansion. The title attribute may be used to provide an expansion of the abbreviation. The attribute, if specified, must contain an expansion of the abbreviation, and nothing else."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/abbr"}]},{name:"ruby",description:{kind:"markdown",value:"The ruby element allows one or more spans of phrasing content to be marked with ruby annotations. Ruby annotations are short runs of text presented alongside base text, primarily used in East Asian typography as a guide for pronunciation or to include other annotations. In Japanese, this form of typography is also known as furigana. Ruby text can appear on either side, and sometimes both sides, of the base text, and it is possible to control its position using CSS. A more complete introduction to ruby can be found in the Use Cases & Exploratory Approaches for Ruby Markup document as well as in CSS Ruby Module Level 1. [RUBY-UC] [CSSRUBY]"},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/ruby"}]},{name:"rb",description:{kind:"markdown",value:"The rb element marks the base text component of a ruby annotation. When it is the child of a ruby element, it doesn't represent anything itself, but its parent ruby element uses it as part of determining what it represents."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/rb"}]},{name:"rt",description:{kind:"markdown",value:"The rt element marks the ruby text component of a ruby annotation. When it is the child of a ruby element or of an rtc element that is itself the child of a ruby element, it doesn't represent anything itself, but its ancestor ruby element uses it as part of determining what it represents."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/rt"}]},{name:"rp",description:{kind:"markdown",value:"The rp element is used to provide fallback text to be shown by user agents that don't support ruby annotations. One widespread convention is to provide parentheses around the ruby text component of a ruby annotation."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/rp"}]},{name:"time",description:{kind:"markdown",value:"The time element represents its contents, along with a machine-readable form of those contents in the datetime attribute. The kind of content is limited to various kinds of dates, times, time-zone offsets, and durations, as described below."},attributes:[{name:"datetime",description:{kind:"markdown",value:"This attribute indicates the time and/or date of the element and must be in one of the formats described below."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/time"}]},{name:"code",description:{kind:"markdown",value:"The code element represents a fragment of computer code. This could be an XML element name, a file name, a computer program, or any other string that a computer would recognize."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/code"}]},{name:"var",description:{kind:"markdown",value:"The var element represents a variable. This could be an actual variable in a mathematical expression or programming context, an identifier representing a constant, a symbol identifying a physical quantity, a function parameter, or just be a term used as a placeholder in prose."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/var"}]},{name:"samp",description:{kind:"markdown",value:"The samp element represents sample or quoted output from another program or computing system."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/samp"}]},{name:"kbd",description:{kind:"markdown",value:"The kbd element represents user input (typically keyboard input, although it may also be used to represent other input, such as voice commands)."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/kbd"}]},{name:"sub",description:{kind:"markdown",value:"The sub element represents a subscript."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/sub"}]},{name:"sup",description:{kind:"markdown",value:"The sup element represents a superscript."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/sup"}]},{name:"i",description:{kind:"markdown",value:"The i element represents a span of text in an alternate voice or mood, or otherwise offset from the normal prose in a manner indicating a different quality of text, such as a taxonomic designation, a technical term, an idiomatic phrase from another language, transliteration, a thought, or a ship name in Western texts."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/i"}]},{name:"b",description:{kind:"markdown",value:"The b element represents a span of text to which attention is being drawn for utilitarian purposes without conveying any extra importance and with no implication of an alternate voice or mood, such as key words in a document abstract, product names in a review, actionable words in interactive text-driven software, or an article lede."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/b"}]},{name:"u",description:{kind:"markdown",value:"The u element represents a span of text with an unarticulated, though explicitly rendered, non-textual annotation, such as labeling the text as being a proper name in Chinese text (a Chinese proper name mark), or labeling the text as being misspelt."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/u"}]},{name:"mark",description:{kind:"markdown",value:"The mark element represents a run of text in one document marked or highlighted for reference purposes, due to its relevance in another context. When used in a quotation or other block of text referred to from the prose, it indicates a highlight that was not originally present but which has been added to bring the reader's attention to a part of the text that might not have been considered important by the original author when the block was originally written, but which is now under previously unexpected scrutiny. When used in the main prose of a document, it indicates a part of the document that has been highlighted due to its likely relevance to the user's current activity."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/mark"}]},{name:"bdi",description:{kind:"markdown",value:"The bdi element represents a span of text that is to be isolated from its surroundings for the purposes of bidirectional text formatting. [BIDI]"},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/bdi"}]},{name:"bdo",description:{kind:"markdown",value:"The bdo element represents explicit text directionality formatting control for its children. It allows authors to override the Unicode bidirectional algorithm by explicitly specifying a direction override. [BIDI]"},attributes:[{name:"dir",description:"The direction in which text should be rendered in this element's contents. Possible values are:\n\n* `ltr`: Indicates that the text should go in a left-to-right direction.\n* `rtl`: Indicates that the text should go in a right-to-left direction."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/bdo"}]},{name:"span",description:{kind:"markdown",value:"The span element doesn't mean anything on its own, but can be useful when used together with the global attributes, e.g. class, lang, or dir. It represents its children."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/span"}]},{name:"br",description:{kind:"markdown",value:"The br element represents a line break."},attributes:[{name:"clear",description:"Indicates where to begin the next line after the break."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/br"}]},{name:"wbr",description:{kind:"markdown",value:"The wbr element represents a line break opportunity."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/wbr"}]},{name:"ins",description:{kind:"markdown",value:"The ins element represents an addition to the document."},attributes:[{name:"cite",description:"This attribute defines the URI of a resource that explains the change, such as a link to meeting minutes or a ticket in a troubleshooting system."},{name:"datetime",description:'This attribute indicates the time and date of the change and must be a valid date with an optional time string. If the value cannot be parsed as a date with an optional time string, the element does not have an associated time stamp. For the format of the string without a time, see [Format of a valid date string](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#Format_of_a_valid_date_string "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.") in [Date and time formats used in HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article."). The format of the string if it includes both date and time is covered in [Format of a valid local date and time string](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#Format_of_a_valid_local_date_and_time_string "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.") in [Date and time formats used in HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.").'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/ins"}]},{name:"del",description:{kind:"markdown",value:"The del element represents a removal from the document."},attributes:[{name:"cite",description:{kind:"markdown",value:"A URI for a resource that explains the change (for example, meeting minutes)."}},{name:"datetime",description:{kind:"markdown",value:'This attribute indicates the time and date of the change and must be a valid date string with an optional time. If the value cannot be parsed as a date with an optional time string, the element does not have an associated time stamp. For the format of the string without a time, see [Format of a valid date string](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#Format_of_a_valid_date_string "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.") in [Date and time formats used in HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article."). The format of the string if it includes both date and time is covered in [Format of a valid local date and time string](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#Format_of_a_valid_local_date_and_time_string "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.") in [Date and time formats used in HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.").'}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/del"}]},{name:"picture",description:{kind:"markdown",value:"The picture element is a container which provides multiple sources to its contained img element to allow authors to declaratively control or give hints to the user agent about which image resource to use, based on the screen pixel density, viewport size, image format, and other factors. It represents its children."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/picture"}]},{name:"img",description:{kind:"markdown",value:"An img element represents an image."},attributes:[{name:"alt",description:{kind:"markdown",value:'This attribute defines an alternative text description of the image.\n\n**Note:** Browsers do not always display the image referenced by the element. This is the case for non-graphical browsers (including those used by people with visual impairments), if the user chooses not to display images, or if the browser cannot display the image because it is invalid or an [unsupported type](#Supported_image_formats). In these cases, the browser may replace the image with the text defined in this element\'s `alt` attribute. You should, for these reasons and others, provide a useful value for `alt` whenever possible.\n\n**Note:** Omitting this attribute altogether indicates that the image is a key part of the content, and no textual equivalent is available. Setting this attribute to an empty string (`alt=""`) indicates that this image is _not_ a key part of the content (decorative), and that non-visual browsers may omit it from rendering.'}},{name:"src",description:{kind:"markdown",value:"The image URL. This attribute is mandatory for the `<img>` element. On browsers supporting `srcset`, `src` is treated like a candidate image with a pixel density descriptor `1x` unless an image with this pixel density descriptor is already defined in `srcset,` or unless `srcset` contains '`w`' descriptors."}},{name:"srcset",description:{kind:"markdown",value:"A list of one or more strings separated by commas indicating a set of possible image sources for the user agent to use. Each string is composed of:\n\n1. a URL to an image,\n2. optionally, whitespace followed by one of:\n * A width descriptor, or a positive integer directly followed by '`w`'. The width descriptor is divided by the source size given in the `sizes` attribute to calculate the effective pixel density.\n * A pixel density descriptor, which is a positive floating point number directly followed by '`x`'.\n\nIf no descriptor is specified, the source is assigned the default descriptor: `1x`.\n\nIt is incorrect to mix width descriptors and pixel density descriptors in the same `srcset` attribute. Duplicate descriptors (for instance, two sources in the same `srcset` which are both described with '`2x`') are also invalid.\n\nThe user agent selects any one of the available sources at its discretion. This provides them with significant leeway to tailor their selection based on things like user preferences or bandwidth conditions. See our [Responsive images](https://developer.mozilla.org/en-US/docs/Learn/HTML/Multimedia_and_embedding/Responsive_images) tutorial for an example."}},{name:"crossorigin",valueSet:"xo",description:{kind:"markdown",value:'This enumerated attribute indicates if the fetching of the related image must be done using CORS or not. [CORS-enabled images](https://developer.mozilla.org/en-US/docs/CORS_Enabled_Image) can be reused in the [`<canvas>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas "Use the HTML <canvas> element with either the canvas scripting API or the WebGL API to draw graphics and animations.") element without being "[tainted](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_enabled_image#What_is_a_tainted_canvas)." The allowed values are:'}},{name:"usemap",description:{kind:"markdown",value:'The partial URL (starting with \'#\') of an [image map](https://developer.mozilla.org/en-US/docs/HTML/Element/map) associated with the element.\n\n**Note:** You cannot use this attribute if the `<img>` element is a descendant of an [`<a>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a "The HTML <a> element (or anchor element) creates a hyperlink to other web pages, files, locations within the same page, email addresses, or any other URL.") or [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") element.'}},{name:"ismap",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute indicates that the image is part of a server-side map. If so, the precise coordinates of a click are sent to the server.\n\n**Note:** This attribute is allowed only if the `<img>` element is a descendant of an [`<a>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a "The HTML <a> element (or anchor element) creates a hyperlink to other web pages, files, locations within the same page, email addresses, or any other URL.") element with a valid [`href`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href) attribute.'}},{name:"width",description:{kind:"markdown",value:"The intrinsic width of the image in pixels."}},{name:"height",description:{kind:"markdown",value:"The intrinsic height of the image in pixels."}},{name:"decoding",description:"Provides an image decoding hint to the browser. The allowed values are:"},{name:"decoding",description:"`sync`\n\nDecode the image synchronously for atomic presentation with other content.\n\n`async`\n\nDecode the image asynchronously to reduce delay in presenting other content.\n\n`auto`\n\nDefault mode, which indicates no preference for the decoding mode. The browser decides what is best for the user."},{name:"importance",description:"Indicates the relative importance of the resource. Priority hints are delegated using the values:"},{name:"importance",description:"`auto`: Indicates **no preference**. The browser may use its own heuristics to decide the priority of the image.\n\n`high`: Indicates to the browser that the image is of **high** priority.\n\n`low`: Indicates to the browser that the image is of **low** priority."},{name:"intrinsicsize",description:"This attribute tells the browser to ignore the actual intrinsic size of the image and pretend it’s the size specified in the attribute. Specifically, the image would raster at these dimensions and `naturalWidth`/`naturalHeight` on images would return the values specified in this attribute. [Explainer](https://github.com/ojanvafai/intrinsicsize-attribute), [examples](https://googlechrome.github.io/samples/intrinsic-size/index.html)"},{name:"referrerpolicy",description:"A string indicating which referrer to use when fetching the resource:\n\n* `no-referrer:` The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer \"The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.\") header will not be sent.\n* `no-referrer-when-downgrade:` No `Referer` header will be sent when navigating to an origin without TLS (HTTPS). This is a user agent’s default behavior if no policy is otherwise specified.\n* `origin:` The `Referer` header will include the page of origin's scheme, the host, and the port.\n* `origin-when-cross-origin:` Navigating to other origins will limit the included referral data to the scheme, the host and the port, while navigating from the same origin will include the referrer's full path.\n* `unsafe-url:` The `Referer` header will include the origin and the path, but not the fragment, password, or username. This case is unsafe because it can leak origins and paths from TLS-protected resources to insecure origins."},{name:"sizes",description:"A list of one or more strings separated by commas indicating a set of source sizes. Each source size consists of:\n\n1. a media condition. This must be omitted for the last item.\n2. a source size value.\n\nSource size values specify the intended display size of the image. User agents use the current source size to select one of the sources supplied by the `srcset` attribute, when those sources are described using width ('`w`') descriptors. The selected source size affects the intrinsic size of the image (the image’s display size if no CSS styling is applied). If the `srcset` attribute is absent, or contains no values with a width (`w`) descriptor, then the `sizes` attribute has no effect."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/img"}]},{name:"iframe",description:{kind:"markdown",value:"The iframe element represents a nested browsing context."},attributes:[{name:"src",description:{kind:"markdown",value:'The URL of the page to embed. Use a value of `about:blank` to embed an empty page that conforms to the [same-origin policy](https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy#Inherited_origins). Also note that programatically removing an `<iframe>`\'s src attribute (e.g. via [`Element.removeAttribute()`](https://developer.mozilla.org/en-US/docs/Web/API/Element/removeAttribute "The Element method removeAttribute() removes the attribute with the specified name from the element.")) causes `about:blank` to be loaded in the frame in Firefox (from version 65), Chromium-based browsers, and Safari/iOS.'}},{name:"srcdoc",description:{kind:"markdown",value:"Inline HTML to embed, overriding the `src` attribute. If a browser does not support the `srcdoc` attribute, it will fall back to the URL in the `src` attribute."}},{name:"name",description:{kind:"markdown",value:'A targetable name for the embedded browsing context. This can be used in the `target` attribute of the [`<a>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a "The HTML <a> element (or anchor element) creates a hyperlink to other web pages, files, locations within the same page, email addresses, or any other URL."), [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server."), or [`<base>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base "The HTML <base> element specifies the base URL to use for all relative URLs contained within a document. There can be only one <base> element in a document.") elements; the `formtarget` attribute of the [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") or [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") elements; or the `windowName` parameter in the [`window.open()`](https://developer.mozilla.org/en-US/docs/Web/API/Window/open "The Window interface\'s open() method loads the specified resource into the browsing context (window, <iframe> or tab) with the specified name. If the name doesn\'t exist, then a new window is opened and the specified resource is loaded into its browsing context.") method.'}},{name:"sandbox",valueSet:"sb",description:{kind:"markdown",value:'Applies extra restrictions to the content in the frame. The value of the attribute can either be empty to apply all restrictions, or space-separated tokens to lift particular restrictions:\n\n* `allow-forms`: Allows the resource to submit forms. If this keyword is not used, form submission is blocked.\n* `allow-modals`: Lets the resource [open modal windows](https://html.spec.whatwg.org/multipage/origin.html#sandboxed-modals-flag).\n* `allow-orientation-lock`: Lets the resource [lock the screen orientation](https://developer.mozilla.org/en-US/docs/Web/API/Screen/lockOrientation).\n* `allow-pointer-lock`: Lets the resource use the [Pointer Lock API](https://developer.mozilla.org/en-US/docs/WebAPI/Pointer_Lock).\n* `allow-popups`: Allows popups (such as `window.open()`, `target="_blank"`, or `showModalDialog()`). If this keyword is not used, the popup will silently fail to open.\n* `allow-popups-to-escape-sandbox`: Lets the sandboxed document open new windows without those windows inheriting the sandboxing. For example, this can safely sandbox an advertisement without forcing the same restrictions upon the page the ad links to.\n* `allow-presentation`: Lets the resource start a [presentation session](https://developer.mozilla.org/en-US/docs/Web/API/PresentationRequest).\n* `allow-same-origin`: If this token is not used, the resource is treated as being from a special origin that always fails the [same-origin policy](https://developer.mozilla.org/en-US/docs/Glossary/same-origin_policy "same-origin policy: The same-origin policy is a critical security mechanism that restricts how a document or script loaded from one origin can interact with a resource from another origin.").\n* `allow-scripts`: Lets the resource run scripts (but not create popup windows).\n* `allow-storage-access-by-user-activation` : Lets the resource request access to the parent\'s storage capabilities with the [Storage Access API](https://developer.mozilla.org/en-US/docs/Web/API/Storage_Access_API).\n* `allow-top-navigation`: Lets the resource navigate the top-level browsing context (the one named `_top`).\n* `allow-top-navigation-by-user-activation`: Lets the resource navigate the top-level browsing context, but only if initiated by a user gesture.\n\n**Notes about sandboxing:**\n\n* When the embedded document has the same origin as the embedding page, it is **strongly discouraged** to use both `allow-scripts` and `allow-same-origin`, as that lets the embedded document remove the `sandbox` attribute — making it no more secure than not using the `sandbox` attribute at all.\n* Sandboxing is useless if the attacker can display content outside a sandboxed `iframe` — such as if the viewer opens the frame in a new tab. Such content should be also served from a _separate origin_ to limit potential damage.\n* The `sandbox` attribute is unsupported in Internet Explorer 9 and earlier.'}},{name:"seamless",valueSet:"v"},{name:"allowfullscreen",valueSet:"v",description:{kind:"markdown",value:'Set to `true` if the `<iframe>` can activate fullscreen mode by calling the [`requestFullscreen()`](https://developer.mozilla.org/en-US/docs/Web/API/Element/requestFullscreen "The Element.requestFullscreen() method issues an asynchronous request to make the element be displayed in full-screen mode.") method.'}},{name:"width",description:{kind:"markdown",value:"The width of the frame in CSS pixels. Default is `300`."}},{name:"height",description:{kind:"markdown",value:"The height of the frame in CSS pixels. Default is `150`."}},{name:"allow",description:"Specifies a [feature policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Feature_Policy) for the `<iframe>`."},{name:"allowpaymentrequest",description:"Set to `true` if a cross-origin `<iframe>` should be allowed to invoke the [Payment Request API](https://developer.mozilla.org/en-US/docs/Web/API/Payment_Request_API)."},{name:"allowpaymentrequest",description:'This attribute is considered a legacy attribute and redefined as `allow="payment"`.'},{name:"csp",description:'A [Content Security Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP) enforced for the embedded resource. See [`HTMLIFrameElement.csp`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement/csp "The csp property of the HTMLIFrameElement interface specifies the Content Security Policy that an embedded document must agree to enforce upon itself.") for details.'},{name:"importance",description:"The download priority of the resource in the `<iframe>`'s `src` attribute. Allowed values:\n\n`auto` (default)\n\nNo preference. The browser uses its own heuristics to decide the priority of the resource.\n\n`high`\n\nThe resource should be downloaded before other lower-priority page resources.\n\n`low`\n\nThe resource should be downloaded after other higher-priority page resources."},{name:"referrerpolicy",description:'Indicates which [referrer](https://developer.mozilla.org/en-US/docs/Web/API/Document/referrer) to send when fetching the frame\'s resource:\n\n* `no-referrer`: The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent.\n* `no-referrer-when-downgrade` (default): The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent to [origin](https://developer.mozilla.org/en-US/docs/Glossary/origin "origin: Web content\'s origin is defined by the scheme (protocol), host (domain), and port of the URL used to access it. Two objects have the same origin only when the scheme, host, and port all match.")s without [TLS](https://developer.mozilla.org/en-US/docs/Glossary/TLS "TLS: Transport Layer Security (TLS), previously known as Secure Sockets Layer (SSL), is a protocol used by applications to communicate securely across a network, preventing tampering with and eavesdropping on email, web browsing, messaging, and other protocols.") ([HTTPS](https://developer.mozilla.org/en-US/docs/Glossary/HTTPS "HTTPS: HTTPS (HTTP Secure) is an encrypted version of the HTTP protocol. It usually uses SSL or TLS to encrypt all communication between a client and a server. This secure connection allows clients to safely exchange sensitive data with a server, for example for banking activities or online shopping.")).\n* `origin`: The sent referrer will be limited to the origin of the referring page: its [scheme](https://developer.mozilla.org/en-US/docs/Archive/Mozilla/URIScheme), [host](https://developer.mozilla.org/en-US/docs/Glossary/host "host: A host is a device connected to the Internet (or a local network). Some hosts called servers offer additional services like serving webpages or storing files and emails."), and [port](https://developer.mozilla.org/en-US/docs/Glossary/port "port: For a computer connected to a network with an IP address, a port is a communication endpoint. Ports are designated by numbers, and below 1024 each port is associated by default with a specific protocol.").\n* `origin-when-cross-origin`: The referrer sent to other origins will be limited to the scheme, the host, and the port. Navigations on the same origin will still include the path.\n* `same-origin`: A referrer will be sent for [same origin](https://developer.mozilla.org/en-US/docs/Glossary/Same-origin_policy "same origin: The same-origin policy is a critical security mechanism that restricts how a document or script loaded from one origin can interact with a resource from another origin."), but cross-origin requests will contain no referrer information.\n* `strict-origin`: Only send the origin of the document as the referrer when the protocol security level stays the same (HTTPS→HTTPS), but don\'t send it to a less secure destination (HTTPS→HTTP).\n* `strict-origin-when-cross-origin`: Send a full URL when performing a same-origin request, only send the origin when the protocol security level stays the same (HTTPS→HTTPS), and send no header to a less secure destination (HTTPS→HTTP).\n* `unsafe-url`: The referrer will include the origin _and_ the path (but not the [fragment](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/hash), [password](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/password), or [username](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/username)). **This value is unsafe**, because it leaks origins and paths from TLS-protected resources to insecure origins.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/iframe"}]},{name:"embed",description:{kind:"markdown",value:"The embed element provides an integration point for an external (typically non-HTML) application or interactive content."},attributes:[{name:"src",description:{kind:"markdown",value:"The URL of the resource being embedded."}},{name:"type",description:{kind:"markdown",value:"The MIME type to use to select the plug-in to instantiate."}},{name:"width",description:{kind:"markdown",value:"The displayed width of the resource, in [CSS pixels](https://drafts.csswg.org/css-values/#px). This must be an absolute value; percentages are _not_ allowed."}},{name:"height",description:{kind:"markdown",value:"The displayed height of the resource, in [CSS pixels](https://drafts.csswg.org/css-values/#px). This must be an absolute value; percentages are _not_ allowed."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/embed"}]},{name:"object",description:{kind:"markdown",value:"The object element can represent an external resource, which, depending on the type of the resource, will either be treated as an image, as a nested browsing context, or as an external resource to be processed by a plugin."},attributes:[{name:"data",description:{kind:"markdown",value:"The address of the resource as a valid URL. At least one of **data** and **type** must be defined."}},{name:"type",description:{kind:"markdown",value:"The [content type](https://developer.mozilla.org/en-US/docs/Glossary/Content_type) of the resource specified by **data**. At least one of **data** and **type** must be defined."}},{name:"typemustmatch",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates if the **type** attribute and the actual [content type](https://developer.mozilla.org/en-US/docs/Glossary/Content_type) of the resource must match to be used."}},{name:"name",description:{kind:"markdown",value:"The name of valid browsing context (HTML5), or the name of the control (HTML 4)."}},{name:"usemap",description:{kind:"markdown",value:"A hash-name reference to a [`<map>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/map \"The HTML <map> element is used with <area> elements to define an image map (a clickable link area).\") element; that is a '#' followed by the value of a [`name`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/map#attr-name) of a map element."}},{name:"form",description:{kind:"markdown",value:'The form element, if any, that the object element is associated with (its _form owner_). The value of the attribute must be an ID of a [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element in the same document.'}},{name:"width",description:{kind:"markdown",value:"The width of the display resource, in [CSS pixels](https://drafts.csswg.org/css-values/#px). -- (Absolute values only. [NO percentages](https://html.spec.whatwg.org/multipage/embedded-content.html#dimension-attributes))"}},{name:"height",description:{kind:"markdown",value:"The height of the displayed resource, in [CSS pixels](https://drafts.csswg.org/css-values/#px). -- (Absolute values only. [NO percentages](https://html.spec.whatwg.org/multipage/embedded-content.html#dimension-attributes))"}},{name:"archive",description:"A space-separated list of URIs for archives of resources for the object."},{name:"border",description:"The width of a border around the control, in pixels."},{name:"classid",description:"The URI of the object's implementation. It can be used together with, or in place of, the **data** attribute."},{name:"codebase",description:"The base path used to resolve relative URIs specified by **classid**, **data**, or **archive**. If not specified, the default is the base URI of the current document."},{name:"codetype",description:"The content type of the data specified by **classid**."},{name:"declare",description:"The presence of this Boolean attribute makes this element a declaration only. The object must be instantiated by a subsequent `<object>` element. In HTML5, repeat the <object> element completely each that that the resource is reused."},{name:"standby",description:"A message that the browser can show while loading the object's implementation and data."},{name:"tabindex",description:"The position of the element in the tabbing navigation order for the current document."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/object"}]},{name:"param",description:{kind:"markdown",value:"The param element defines parameters for plugins invoked by object elements. It does not represent anything on its own."},attributes:[{name:"name",description:{kind:"markdown",value:"Name of the parameter."}},{name:"value",description:{kind:"markdown",value:"Specifies the value of the parameter."}},{name:"type",description:'Only used if the `valuetype` is set to "ref". Specifies the MIME type of values found at the URI specified by value.'},{name:"valuetype",description:'Specifies the type of the `value` attribute. Possible values are:\n\n* data: Default value. The value is passed to the object\'s implementation as a string.\n* ref: The value is a URI to a resource where run-time values are stored.\n* object: An ID of another [`<object>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/object "The HTML <object> element represents an external resource, which can be treated as an image, a nested browsing context, or a resource to be handled by a plugin.") in the same document.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/param"}]},{name:"video",description:{kind:"markdown",value:"A video element is used for playing videos or movies, and audio files with captions."},attributes:[{name:"src"},{name:"crossorigin",valueSet:"xo"},{name:"poster"},{name:"preload",valueSet:"pl"},{name:"autoplay",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute; if specified, the video automatically begins to play back as soon as it can do so without stopping to finish loading the data."}},{name:"mediagroup"},{name:"loop",valueSet:"v"},{name:"muted",valueSet:"v"},{name:"controls",valueSet:"v"},{name:"width"},{name:"height"}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/video"}]},{name:"audio",description:{kind:"markdown",value:"An audio element represents a sound or audio stream."},attributes:[{name:"src",description:{kind:"markdown",value:'The URL of the audio to embed. This is subject to [HTTP access controls](https://developer.mozilla.org/en-US/docs/HTTP_access_control). This is optional; you may instead use the [`<source>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source "The HTML <source> element specifies multiple media resources for the <picture>, the <audio> element, or the <video> element.") element within the audio block to specify the audio to embed.'}},{name:"crossorigin",valueSet:"xo",description:{kind:"markdown",value:'This enumerated attribute indicates whether to use CORS to fetch the related image. [CORS-enabled resources](https://developer.mozilla.org/en-US/docs/CORS_Enabled_Image) can be reused in the [`<canvas>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas "Use the HTML <canvas> element with either the canvas scripting API or the WebGL API to draw graphics and animations.") element without being _tainted_. The allowed values are:\n\nanonymous\n\nSends a cross-origin request without a credential. In other words, it sends the `Origin:` HTTP header without a cookie, X.509 certificate, or performing HTTP Basic authentication. If the server does not give credentials to the origin site (by not setting the `Access-Control-Allow-Origin:` HTTP header), the image will be _tainted_, and its usage restricted.\n\nuse-credentials\n\nSends a cross-origin request with a credential. In other words, it sends the `Origin:` HTTP header with a cookie, a certificate, or performing HTTP Basic authentication. If the server does not give credentials to the origin site (through `Access-Control-Allow-Credentials:` HTTP header), the image will be _tainted_ and its usage restricted.\n\nWhen not present, the resource is fetched without a CORS request (i.e. without sending the `Origin:` HTTP header), preventing its non-tainted used in [`<canvas>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas "Use the HTML <canvas> element with either the canvas scripting API or the WebGL API to draw graphics and animations.") elements. If invalid, it is handled as if the enumerated keyword **anonymous** was used. See [CORS settings attributes](https://developer.mozilla.org/en-US/docs/HTML/CORS_settings_attributes) for additional information.'}},{name:"preload",valueSet:"pl",description:{kind:"markdown",value:"This enumerated attribute is intended to provide a hint to the browser about what the author thinks will lead to the best user experience. It may have one of the following values:\n\n* `none`: Indicates that the audio should not be preloaded.\n* `metadata`: Indicates that only audio metadata (e.g. length) is fetched.\n* `auto`: Indicates that the whole audio file can be downloaded, even if the user is not expected to use it.\n* _empty string_: A synonym of the `auto` value.\n\nIf not set, `preload`'s default value is browser-defined (i.e. each browser may have its own default value). The spec advises it to be set to `metadata`.\n\n**Usage notes:**\n\n* The `autoplay` attribute has precedence over `preload`. If `autoplay` is specified, the browser would obviously need to start downloading the audio for playback.\n* The browser is not forced by the specification to follow the value of this attribute; it is a mere hint."}},{name:"autoplay",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute: if specified, the audio will automatically begin playback as soon as it can do so, without waiting for the entire audio file to finish downloading.\n\n**Note**: Sites that automatically play audio (or videos with an audio track) can be an unpleasant experience for users, so should be avoided when possible. If you must offer autoplay functionality, you should make it opt-in (requiring a user to specifically enable it). However, this can be useful when creating media elements whose source will be set at a later time, under user control."}},{name:"mediagroup"},{name:"loop",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute: if specified, the audio player will automatically seek back to the start upon reaching the end of the audio."}},{name:"muted",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute that indicates whether the audio will be initially silenced. Its default value is `false`."}},{name:"controls",valueSet:"v",description:{kind:"markdown",value:"If this attribute is present, the browser will offer controls to allow the user to control audio playback, including volume, seeking, and pause/resume playback."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/audio"}]},{name:"source",description:{kind:"markdown",value:"The source element allows authors to specify multiple alternative media resources for media elements. It does not represent anything on its own."},attributes:[{name:"src",description:{kind:"markdown",value:'Required for [`<audio>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio "The HTML <audio> element is used to embed sound content in documents. It may contain one or more audio sources, represented using the src attribute or the <source> element: the browser will choose the most suitable one. It can also be the destination for streamed media, using a MediaStream.") and [`<video>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/video "The HTML Video element (<video>) embeds a media player which supports video playback into the document."), address of the media resource. The value of this attribute is ignored when the `<source>` element is placed inside a [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture "The HTML <picture> element contains zero or more <source> elements and one <img> element to provide versions of an image for different display/device scenarios.") element.'}},{name:"type",description:{kind:"markdown",value:"The MIME-type of the resource, optionally with a `codecs` parameter. See [RFC 4281](https://tools.ietf.org/html/rfc4281) for information about how to specify codecs."}},{name:"sizes",description:'Is a list of source sizes that describes the final rendered width of the image represented by the source. Each source size consists of a comma-separated list of media condition-length pairs. This information is used by the browser to determine, before laying the page out, which image defined in [`srcset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source#attr-srcset) to use. \nThe `sizes` attribute has an effect only when the [`<source>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source "The HTML <source> element specifies multiple media resources for the <picture>, the <audio> element, or the <video> element.") element is the direct child of a [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture "The HTML <picture> element contains zero or more <source> elements and one <img> element to provide versions of an image for different display/device scenarios.") element.'},{name:"srcset",description:"A list of one or more strings separated by commas indicating a set of possible images represented by the source for the browser to use. Each string is composed of:\n\n1. one URL to an image,\n2. a width descriptor, that is a positive integer directly followed by `'w'`. The default value, if missing, is the infinity.\n3. a pixel density descriptor, that is a positive floating number directly followed by `'x'`. The default value, if missing, is `1x`.\n\nEach string in the list must have at least a width descriptor or a pixel density descriptor to be valid. Among the list, there must be only one string containing the same tuple of width descriptor and pixel density descriptor. \nThe browser chooses the most adequate image to display at a given point of time. \nThe `srcset` attribute has an effect only when the [`<source>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source \"The HTML <source> element specifies multiple media resources for the <picture>, the <audio> element, or the <video> element.\") element is the direct child of a [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture \"The HTML <picture> element contains zero or more <source> elements and one <img> element to provide versions of an image for different display/device scenarios.\") element."},{name:"media",description:'[Media query](https://developer.mozilla.org/en-US/docs/CSS/Media_queries) of the resource\'s intended media; this should be used only in a [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture "The HTML <picture> element contains zero or more <source> elements and one <img> element to provide versions of an image for different display/device scenarios.") element.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/source"}]},{name:"track",description:{kind:"markdown",value:"The track element allows authors to specify explicit external timed text tracks for media elements. It does not represent anything on its own."},attributes:[{name:"default",valueSet:"v",description:{kind:"markdown",value:"This attribute indicates that the track should be enabled unless the user's preferences indicate that another track is more appropriate. This may only be used on one `track` element per media element."}},{name:"kind",valueSet:"tk",description:{kind:"markdown",value:"How the text track is meant to be used. If omitted the default kind is `subtitles`. If the attribute is not present, it will use the `subtitles`. If the attribute contains an invalid value, it will use `metadata`. (Versions of Chrome earlier than 52 treated an invalid value as `subtitles`.) The following keywords are allowed:\n\n* `subtitles`\n * Subtitles provide translation of content that cannot be understood by the viewer. For example dialogue or text that is not English in an English language film.\n * Subtitles may contain additional content, usually extra background information. For example the text at the beginning of the Star Wars films, or the date, time, and location of a scene.\n* `captions`\n * Closed captions provide a transcription and possibly a translation of audio.\n * It may include important non-verbal information such as music cues or sound effects. It may indicate the cue's source (e.g. music, text, character).\n * Suitable for users who are deaf or when the sound is muted.\n* `descriptions`\n * Textual description of the video content.\n * Suitable for users who are blind or where the video cannot be seen.\n* `chapters`\n * Chapter titles are intended to be used when the user is navigating the media resource.\n* `metadata`\n * Tracks used by scripts. Not visible to the user."}},{name:"label",description:{kind:"markdown",value:"A user-readable title of the text track which is used by the browser when listing available text tracks."}},{name:"src",description:{kind:"markdown",value:'Address of the track (`.vtt` file). Must be a valid URL. This attribute must be specified and its URL value must have the same origin as the document — unless the [`<audio>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio "The HTML <audio> element is used to embed sound content in documents. It may contain one or more audio sources, represented using the src attribute or the <source> element: the browser will choose the most suitable one. It can also be the destination for streamed media, using a MediaStream.") or [`<video>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/video "The HTML Video element (<video>) embeds a media player which supports video playback into the document.") parent element of the `track` element has a [`crossorigin`](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes) attribute.'}},{name:"srclang",description:{kind:"markdown",value:"Language of the track text data. It must be a valid [BCP 47](https://r12a.github.io/app-subtags/) language tag. If the `kind` attribute is set to `subtitles,` then `srclang` must be defined."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/track"}]},{name:"map",description:{kind:"markdown",value:"The map element, in conjunction with an img element and any area element descendants, defines an image map. The element represents its children."},attributes:[{name:"name",description:{kind:"markdown",value:"The name attribute gives the map a name so that it can be referenced. The attribute must be present and must have a non-empty value with no space characters. The value of the name attribute must not be a compatibility-caseless match for the value of the name attribute of another map element in the same document. If the id attribute is also specified, both attributes must have the same value."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/map"}]},{name:"area",description:{kind:"markdown",value:"The area element represents either a hyperlink with some text and a corresponding area on an image map, or a dead area on an image map."},attributes:[{name:"alt"},{name:"coords"},{name:"shape",valueSet:"sh"},{name:"href"},{name:"target"},{name:"download"},{name:"ping"},{name:"rel"},{name:"hreflang"},{name:"type"},{name:"accesskey",description:"Specifies a keyboard navigation accelerator for the element. Pressing ALT or a similar key in association with the specified character selects the form control correlated with that key sequence. Page designers are forewarned to avoid key sequences already bound to browsers. This attribute is global since HTML5."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/area"}]},{name:"table",description:{kind:"markdown",value:"The table element represents data with more than one dimension, in the form of a table."},attributes:[{name:"border"},{name:"align",description:'This enumerated attribute indicates how the table must be aligned inside the containing document. It may have the following values:\n\n* left: the table is displayed on the left side of the document;\n* center: the table is displayed in the center of the document;\n* right: the table is displayed on the right side of the document.\n\n**Usage Note**\n\n* **Do not use this attribute**, as it has been deprecated. The [`<table>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/table "The HTML <table> element represents tabular data — that is, information presented in a two-dimensional table comprised of rows and columns of cells containing data.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/CSS). Set [`margin-left`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-left "The margin-left CSS property sets the margin area on the left side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") and [`margin-right`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-right "The margin-right CSS property sets the margin area on the right side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") to `auto` or [`margin`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin "The margin CSS property sets the margin area on all four sides of an element. It is a shorthand for margin-top, margin-right, margin-bottom, and margin-left.") to `0 auto` to achieve an effect that is similar to the align attribute.\n* Prior to Firefox 4, Firefox also supported the `middle`, `absmiddle`, and `abscenter` values as synonyms of `center`, in quirks mode only.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/table"}]},{name:"caption",description:{kind:"markdown",value:"The caption element represents the title of the table that is its parent, if it has a parent and that is a table element."},attributes:[{name:"align",description:'This enumerated attribute indicates how the caption must be aligned with respect to the table. It may have one of the following values:\n\n`left`\n\nThe caption is displayed to the left of the table.\n\n`top`\n\nThe caption is displayed above the table.\n\n`right`\n\nThe caption is displayed to the right of the table.\n\n`bottom`\n\nThe caption is displayed below the table.\n\n**Usage note:** Do not use this attribute, as it has been deprecated. The [`<caption>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/caption "The HTML Table Caption element (<caption>) specifies the caption (or title) of a table, and if used is always the first child of a <table>.") element should be styled using the [CSS](https://developer.mozilla.org/en-US/docs/CSS) properties [`caption-side`](https://developer.mozilla.org/en-US/docs/Web/CSS/caption-side "The caption-side CSS property puts the content of a table\'s <caption> on the specified side. The values are relative to the writing-mode of the table.") and [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.").'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/caption"}]},{name:"colgroup",description:{kind:"markdown",value:"The colgroup element represents a group of one or more columns in the table that is its parent, if it has a parent and that is a table element."},attributes:[{name:"span"},{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each column cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nIf this attribute is not set, the `left` value is assumed. The descendant [`<col>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col "The HTML <col> element defines a column within a table and is used for defining common semantics on all common cells. It is generally found within a <colgroup> element.") elements may override this value using their own [`align`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-align) attribute.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values:\n * Do not try to set the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on a selector giving a [`<colgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup "The HTML <colgroup> element defines a group of columns within a table.") element. Because [`<td>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td "The HTML <td> element defines a cell of a table that contains data. It participates in the table model.") elements are not descendant of the [`<colgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup "The HTML <colgroup> element defines a group of columns within a table.") element, they won\'t inherit it.\n * If the table doesn\'t use a [`colspan`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-colspan) attribute, use one `td:nth-child(an+b)` CSS selector per column, where a is the total number of the columns in the table and b is the ordinal position of this column in the table. Only after this selector the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property can be used.\n * If the table does use a [`colspan`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-colspan) attribute, the effect can be achieved by combining adequate CSS attribute selectors like `[colspan=n]`, though this is not trivial.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/colgroup"}]},{name:"col",description:{kind:"markdown",value:"If a col element has a parent and that is a colgroup element that itself has a parent that is a table element, then the col element represents one or more columns in the column group represented by that colgroup."},attributes:[{name:"span"},{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each column cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nIf this attribute is not set, its value is inherited from the [`align`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup#attr-align) of the [`<colgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup "The HTML <colgroup> element defines a group of columns within a table.") element this `<col>` element belongs too. If there are none, the `left` value is assumed.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values:\n * Do not try to set the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on a selector giving a [`<col>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col "The HTML <col> element defines a column within a table and is used for defining common semantics on all common cells. It is generally found within a <colgroup> element.") element. Because [`<td>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td "The HTML <td> element defines a cell of a table that contains data. It participates in the table model.") elements are not descendant of the [`<col>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col "The HTML <col> element defines a column within a table and is used for defining common semantics on all common cells. It is generally found within a <colgroup> element.") element, they won\'t inherit it.\n * If the table doesn\'t use a [`colspan`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-colspan) attribute, use the `td:nth-child(an+b)` CSS selector. Set `a` to zero and `b` to the position of the column in the table, e.g. `td:nth-child(2) { text-align: right; }` to right-align the second column.\n * If the table does use a [`colspan`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-colspan) attribute, the effect can be achieved by combining adequate CSS attribute selectors like `[colspan=n]`, though this is not trivial.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/col"}]},{name:"tbody",description:{kind:"markdown",value:"The tbody element represents a block of rows that consist of a body of data for the parent table element, if the tbody element has a parent and it is a table."},attributes:[{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-charoff) attributes.\n\nIf this attribute is not set, the `left` value is assumed.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, use the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on it.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/tbody"}]},{name:"thead",description:{kind:"markdown",value:"The thead element represents the block of rows that consist of the column labels (headers) for the parent table element, if the thead element has a parent and it is a table."},attributes:[{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/thead#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/thead#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nIf this attribute is not set, the `left` value is assumed.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, use the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on it.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/thead#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/thead"}]},{name:"tfoot",description:{kind:"markdown",value:"The tfoot element represents the block of rows that consist of the column summaries (footers) for the parent table element, if the tfoot element has a parent and it is a table."},attributes:[{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nIf this attribute is not set, the `left` value is assumed.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, use the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on it.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tfoot#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/tfoot"}]},{name:"tr",description:{kind:"markdown",value:"The tr element represents a row of cells in a table."},attributes:[{name:"align",description:'A [`DOMString`](https://developer.mozilla.org/en-US/docs/Web/API/DOMString "DOMString is a UTF-16 String. As JavaScript already uses such strings, DOMString is mapped directly to a String.") which specifies how the cell\'s context should be aligned horizontally within the cells in the row; this is shorthand for using `align` on every cell in the row individually. Possible values are:\n\n`left`\n\nAlign the content of each cell at its left edge.\n\n`center`\n\nCenter the contents of each cell between their left and right edges.\n\n`right`\n\nAlign the content of each cell at its right edge.\n\n`justify`\n\nWiden whitespaces within the text of each cell so that the text fills the full width of each cell (full justification).\n\n`char`\n\nAlign each cell in the row on a specific character (such that each row in the column that is configured this way will horizontally align its cells on that character). This uses the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tr#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tr#attr-charoff) to establish the alignment character (typically "." or "," when aligning numerical data) and the number of characters that should follow the alignment character. This alignment type was never widely supported.\n\nIf no value is expressly set for `align`, the parent node\'s value is inherited.\n\nInstead of using the obsolete `align` attribute, you should instead use the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property to establish `left`, `center`, `right`, or `justify` alignment for the row\'s cells. To apply character-based alignment, set the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property to the alignment character (such as `"."` or `","`).'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/tr"}]},{name:"td",description:{kind:"markdown",value:"The td element represents a data cell in a table."},attributes:[{name:"colspan"},{name:"rowspan"},{name:"headers"},{name:"abbr",description:"This attribute contains a short abbreviated description of the cell's content. Some user-agents, such as speech readers, may present this description before the content itself.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard. Alternatively, you can put the abbreviated description inside the cell and place the long content in the **title** attribute."},{name:"align",description:'This enumerated attribute specifies how the cell content\'s horizontal alignment will be handled. Possible values are:\n\n* `left`: The content is aligned to the left of the cell.\n* `center`: The content is centered in the cell.\n* `right`: The content is aligned to the right of the cell.\n* `justify` (with text only): The content is stretched out inside the cell so that it covers its entire width.\n* `char` (with text only): The content is aligned to a character inside the `<th>` element with minimal offset. This character is defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nThe default value when this attribute is not specified is `left`.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, apply the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property to the element.\n* To achieve the same effect as the `char` value, give the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property the same value you would use for the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-char). Unimplemented in CSS3.'},{name:"axis",description:"This attribute contains a list of space-separated strings. Each string is the `id` of a group of cells that this header applies to.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard."},{name:"bgcolor",description:'This attribute defines the background color of each cell in a column. It consists of a 6-digit hexadecimal code as defined in [sRGB](https://www.w3.org/Graphics/Color/sRGB) and is prefixed by \'#\'. This attribute may be used with one of sixteen predefined color strings:\n\n \n\n`black` = "#000000"\n\n \n\n`green` = "#008000"\n\n \n\n`silver` = "#C0C0C0"\n\n \n\n`lime` = "#00FF00"\n\n \n\n`gray` = "#808080"\n\n \n\n`olive` = "#808000"\n\n \n\n`white` = "#FFFFFF"\n\n \n\n`yellow` = "#FFFF00"\n\n \n\n`maroon` = "#800000"\n\n \n\n`navy` = "#000080"\n\n \n\n`red` = "#FF0000"\n\n \n\n`blue` = "#0000FF"\n\n \n\n`purple` = "#800080"\n\n \n\n`teal` = "#008080"\n\n \n\n`fuchsia` = "#FF00FF"\n\n \n\n`aqua` = "#00FFFF"\n\n**Note:** Do not use this attribute, as it is non-standard and only implemented in some versions of Microsoft Internet Explorer: The [`<td>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td "The HTML <td> element defines a cell of a table that contains data. It participates in the table model.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/CSS). To create a similar effect use the [`background-color`](https://developer.mozilla.org/en-US/docs/Web/CSS/background-color "The background-color CSS property sets the background color of an element.") property in [CSS](https://developer.mozilla.org/en-US/docs/CSS) instead.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/td"}]},{name:"th",description:{kind:"markdown",value:"The th element represents a header cell in a table."},attributes:[{name:"colspan"},{name:"rowspan"},{name:"headers"},{name:"scope",valueSet:"s"},{name:"sorted"},{name:"abbr",description:{kind:"markdown",value:"This attribute contains a short abbreviated description of the cell's content. Some user-agents, such as speech readers, may present this description before the content itself."}},{name:"align",description:'This enumerated attribute specifies how the cell content\'s horizontal alignment will be handled. Possible values are:\n\n* `left`: The content is aligned to the left of the cell.\n* `center`: The content is centered in the cell.\n* `right`: The content is aligned to the right of the cell.\n* `justify` (with text only): The content is stretched out inside the cell so that it covers its entire width.\n* `char` (with text only): The content is aligned to a character inside the `<th>` element with minimal offset. This character is defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th#attr-charoff) attributes.\n\nThe default value when this attribute is not specified is `left`.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, apply the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property to the element.\n* To achieve the same effect as the `char` value, give the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property the same value you would use for the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th#attr-char). Unimplemented in CSS3.'},{name:"axis",description:"This attribute contains a list of space-separated strings. Each string is the `id` of a group of cells that this header applies to.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard: use the [`scope`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th#attr-scope) attribute instead."},{name:"bgcolor",description:'This attribute defines the background color of each cell in a column. It consists of a 6-digit hexadecimal code as defined in [sRGB](https://www.w3.org/Graphics/Color/sRGB) and is prefixed by \'#\'. This attribute may be used with one of sixteen predefined color strings:\n\n \n\n`black` = "#000000"\n\n \n\n`green` = "#008000"\n\n \n\n`silver` = "#C0C0C0"\n\n \n\n`lime` = "#00FF00"\n\n \n\n`gray` = "#808080"\n\n \n\n`olive` = "#808000"\n\n \n\n`white` = "#FFFFFF"\n\n \n\n`yellow` = "#FFFF00"\n\n \n\n`maroon` = "#800000"\n\n \n\n`navy` = "#000080"\n\n \n\n`red` = "#FF0000"\n\n \n\n`blue` = "#0000FF"\n\n \n\n`purple` = "#800080"\n\n \n\n`teal` = "#008080"\n\n \n\n`fuchsia` = "#FF00FF"\n\n \n\n`aqua` = "#00FFFF"\n\n**Note:** Do not use this attribute, as it is non-standard and only implemented in some versions of Microsoft Internet Explorer: The [`<th>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th "The HTML <th> element defines a cell as header of a group of table cells. The exact nature of this group is defined by the scope and headers attributes.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/Web/CSS). To create a similar effect use the [`background-color`](https://developer.mozilla.org/en-US/docs/Web/CSS/background-color "The background-color CSS property sets the background color of an element.") property in [CSS](https://developer.mozilla.org/en-US/docs/Web/CSS) instead.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/th"}]},{name:"form",description:{kind:"markdown",value:"The form element represents a collection of form-associated elements, some of which can represent editable values that can be submitted to a server for processing."},attributes:[{name:"accept-charset",description:{kind:"markdown",value:'A space- or comma-delimited list of character encodings that the server accepts. The browser uses them in the order in which they are listed. The default value, the reserved string `"UNKNOWN"`, indicates the same encoding as that of the document containing the form element. \nIn previous versions of HTML, the different character encodings could be delimited by spaces or commas. In HTML5, only spaces are allowed as delimiters.'}},{name:"action",description:{kind:"markdown",value:'The URI of a program that processes the form information. This value can be overridden by a [`formaction`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formaction) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'}},{name:"autocomplete",valueSet:"o",description:{kind:"markdown",value:"Indicates whether input elements can by default have their values automatically completed by the browser. This setting can be overridden by an `autocomplete` attribute on an element belonging to the form. Possible values are:\n\n* `off`: The user must explicitly enter a value into each field for every use, or the document provides its own auto-completion method; the browser does not automatically complete entries.\n* `on`: The browser can automatically complete values based on values that the user has previously entered in the form.\n\nFor most modern browsers (including Firefox 38+, Google Chrome 34+, IE 11+) setting the autocomplete attribute will not prevent a browser's password manager from asking the user if they want to store login fields (username and password), if the user permits the storage the browser will autofill the login the next time the user visits the page. See [The autocomplete attribute and login fields](https://developer.mozilla.org/en-US/docs/Web/Security/Securing_your_site/Turning_off_form_autocompletion#The_autocomplete_attribute_and_login_fields)."}},{name:"enctype",valueSet:"et",description:{kind:"markdown",value:'When the value of the `method` attribute is `post`, enctype is the [MIME type](https://en.wikipedia.org/wiki/Mime_type) of content that is used to submit the form to the server. Possible values are:\n\n* `application/x-www-form-urlencoded`: The default value if the attribute is not specified.\n* `multipart/form-data`: The value used for an [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element with the `type` attribute set to "file".\n* `text/plain`: (HTML5)\n\nThis value can be overridden by a [`formenctype`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formenctype) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'}},{name:"method",valueSet:"m",description:{kind:"markdown",value:'The [HTTP](https://developer.mozilla.org/en-US/docs/Web/HTTP) method that the browser uses to submit the form. Possible values are:\n\n* `post`: Corresponds to the HTTP [POST method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.5) ; form data are included in the body of the form and sent to the server.\n* `get`: Corresponds to the HTTP [GET method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.3); form data are appended to the `action` attribute URI with a \'?\' as separator, and the resulting URI is sent to the server. Use this method when the form has no side-effects and contains only ASCII characters.\n* `dialog`: Use when the form is inside a [`<dialog>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog "The HTML <dialog> element represents a dialog box or other interactive component, such as an inspector or window.") element to close the dialog when submitted.\n\nThis value can be overridden by a [`formmethod`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formmethod) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'}},{name:"name",description:{kind:"markdown",value:"The name of the form. In HTML 4, its use is deprecated (`id` should be used instead). It must be unique among the forms in a document and not just an empty string in HTML 5."}},{name:"novalidate",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute indicates that the form is not to be validated when submitted. If this attribute is not specified (and therefore the form is validated), this default setting can be overridden by a [`formnovalidate`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formnovalidate) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element belonging to the form.'}},{name:"target",description:{kind:"markdown",value:'A name or keyword indicating where to display the response that is received after submitting the form. In HTML 4, this is the name/keyword for a frame. In HTML5, it is a name/keyword for a _browsing context_ (for example, tab, window, or inline frame). The following keywords have special meanings:\n\n* `_self`: Load the response into the same HTML 4 frame (or HTML5 browsing context) as the current one. This value is the default if the attribute is not specified.\n* `_blank`: Load the response into a new unnamed HTML 4 window or HTML5 browsing context.\n* `_parent`: Load the response into the HTML 4 frameset parent of the current frame, or HTML5 parent browsing context of the current one. If there is no parent, this option behaves the same way as `_self`.\n* `_top`: HTML 4: Load the response into the full original window, and cancel all other frames. HTML5: Load the response into the top-level browsing context (i.e., the browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this option behaves the same way as `_self`.\n* _iframename_: The response is displayed in a named [`<iframe>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe "The HTML Inline Frame element (<iframe>) represents a nested browsing context, embedding another HTML page into the current one.").\n\nHTML5: This value can be overridden by a [`formtarget`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formtarget) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'}},{name:"accept",description:'A comma-separated list of content types that the server accepts.\n\n**Usage note:** This attribute has been removed in HTML5 and should no longer be used. Instead, use the [`accept`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-accept) attribute of the specific [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'},{name:"autocapitalize",description:"This is a nonstandard attribute used by iOS Safari Mobile which controls whether and how the text value for textual form control descendants should be automatically capitalized as it is entered/edited by the user. If the `autocapitalize` attribute is specified on an individual form control descendant, it trumps the form-wide `autocapitalize` setting. The non-deprecated values are available in iOS 5 and later. The default value is `sentences`. Possible values are:\n\n* `none`: Completely disables automatic capitalization\n* `sentences`: Automatically capitalize the first letter of sentences.\n* `words`: Automatically capitalize the first letter of words.\n* `characters`: Automatically capitalize all characters.\n* `on`: Deprecated since iOS 5.\n* `off`: Deprecated since iOS 5."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/form"}]},{name:"label",description:{kind:"markdown",value:"The label element represents a caption in a user interface. The caption can be associated with a specific form control, known as the label element's labeled control, either using the for attribute, or by putting the form control inside the label element itself."},attributes:[{name:"form",description:{kind:"markdown",value:'The [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element with which the label is associated (its _form owner_). If specified, the value of the attribute is the `id` of a [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element in the same document. This lets you place label elements anywhere within a document, not just as descendants of their form elements.'}},{name:"for",description:{kind:"markdown",value:"The [`id`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes#attr-id) of a [labelable](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Content_categories#Form_labelable) form-related element in the same document as the `<label>` element. The first element in the document with an `id` matching the value of the `for` attribute is the _labeled control_ for this label element, if it is a labelable element. If it is not labelable then the `for` attribute has no effect. If there are other elements which also match the `id` value, later in the document, they are not considered.\n\n**Note**: A `<label>` element can have both a `for` attribute and a contained control element, as long as the `for` attribute points to the contained control element."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/label"}]},{name:"input",description:{kind:"markdown",value:"The input element represents a typed data field, usually with a form control to allow the user to edit the data."},attributes:[{name:"accept"},{name:"alt"},{name:"autocomplete",valueSet:"inputautocomplete"},{name:"autofocus",valueSet:"v"},{name:"checked",valueSet:"v"},{name:"dirname"},{name:"disabled",valueSet:"v"},{name:"form"},{name:"formaction"},{name:"formenctype",valueSet:"et"},{name:"formmethod",valueSet:"fm"},{name:"formnovalidate",valueSet:"v"},{name:"formtarget"},{name:"height"},{name:"inputmode",valueSet:"im"},{name:"list"},{name:"max"},{name:"maxlength"},{name:"min"},{name:"minlength"},{name:"multiple",valueSet:"v"},{name:"name"},{name:"pattern"},{name:"placeholder"},{name:"readonly",valueSet:"v"},{name:"required",valueSet:"v"},{name:"size"},{name:"src"},{name:"step"},{name:"type",valueSet:"t"},{name:"value"},{name:"width"}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/input"}]},{name:"button",description:{kind:"markdown",value:"The button element represents a button labeled by its contents."},attributes:[{name:"autofocus",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute lets you specify that the button should have input focus when the page loads, unless the user overrides it, for example by typing in a different control. Only one form-associated element in a document can have this attribute specified."}},{name:"disabled",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute indicates that the user cannot interact with the button. If this attribute is not specified, the button inherits its setting from the containing element, for example [`<fieldset>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/fieldset "The HTML <fieldset> element is used to group several controls as well as labels (<label>) within a web form."); if there is no containing element with the **disabled** attribute set, then the button is enabled.\n\nFirefox will, unlike other browsers, by default, [persist the dynamic disabled state](https://stackoverflow.com/questions/5985839/bug-with-firefox-disabled-attribute-of-input-not-resetting-when-refreshing) of a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") across page loads. Use the [`autocomplete`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-autocomplete) attribute to control this feature.'}},{name:"form",description:{kind:"markdown",value:'The form element that the button is associated with (its _form owner_). The value of the attribute must be the **id** attribute of a [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element in the same document. If this attribute is not specified, the `<button>` element will be associated to an ancestor [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element, if one exists. This attribute enables you to associate `<button>` elements to [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") elements anywhere within a document, not just as descendants of [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") elements.'}},{name:"formaction",description:{kind:"markdown",value:"The URI of a program that processes the information submitted by the button. If specified, it overrides the [`action`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-action) attribute of the button's form owner."}},{name:"formenctype",valueSet:"et",description:{kind:"markdown",value:'If the button is a submit button, this attribute specifies the type of content that is used to submit the form to the server. Possible values are:\n\n* `application/x-www-form-urlencoded`: The default value if the attribute is not specified.\n* `multipart/form-data`: Use this value if you are using an [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element with the [`type`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-type) attribute set to `file`.\n* `text/plain`\n\nIf this attribute is specified, it overrides the [`enctype`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-enctype) attribute of the button\'s form owner.'}},{name:"formmethod",valueSet:"fm",description:{kind:"markdown",value:"If the button is a submit button, this attribute specifies the HTTP method that the browser uses to submit the form. Possible values are:\n\n* `post`: The data from the form are included in the body of the form and sent to the server.\n* `get`: The data from the form are appended to the **form** attribute URI, with a '?' as a separator, and the resulting URI is sent to the server. Use this method when the form has no side-effects and contains only ASCII characters.\n\nIf specified, this attribute overrides the [`method`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-method) attribute of the button's form owner."}},{name:"formnovalidate",valueSet:"v",description:{kind:"markdown",value:"If the button is a submit button, this Boolean attribute specifies that the form is not to be validated when it is submitted. If this attribute is specified, it overrides the [`novalidate`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-novalidate) attribute of the button's form owner."}},{name:"formtarget",description:{kind:"markdown",value:"If the button is a submit button, this attribute is a name or keyword indicating where to display the response that is received after submitting the form. This is a name of, or keyword for, a _browsing context_ (for example, tab, window, or inline frame). If this attribute is specified, it overrides the [`target`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-target) attribute of the button's form owner. The following keywords have special meanings:\n\n* `_self`: Load the response into the same browsing context as the current one. This value is the default if the attribute is not specified.\n* `_blank`: Load the response into a new unnamed browsing context.\n* `_parent`: Load the response into the parent browsing context of the current one. If there is no parent, this option behaves the same way as `_self`.\n* `_top`: Load the response into the top-level browsing context (that is, the browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this option behaves the same way as `_self`."}},{name:"name",description:{kind:"markdown",value:"The name of the button, which is submitted with the form data."}},{name:"type",valueSet:"bt",description:{kind:"markdown",value:"The type of the button. Possible values are:\n\n* `submit`: The button submits the form data to the server. This is the default if the attribute is not specified, or if the attribute is dynamically changed to an empty or invalid value.\n* `reset`: The button resets all the controls to their initial values.\n* `button`: The button has no default behavior. It can have client-side scripts associated with the element's events, which are triggered when the events occur."}},{name:"value",description:{kind:"markdown",value:"The initial value of the button. It defines the value associated with the button which is submitted with the form data. This value is passed to the server in params when the form is submitted."}},{name:"autocomplete",description:'The use of this attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") is nonstandard and Firefox-specific. By default, unlike other browsers, [Firefox persists the dynamic disabled state](https://stackoverflow.com/questions/5985839/bug-with-firefox-disabled-attribute-of-input-not-resetting-when-refreshing) of a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") across page loads. Setting the value of this attribute to `off` (i.e. `autocomplete="off"`) disables this feature. See [bug 654072](https://bugzilla.mozilla.org/show_bug.cgi?id=654072 "if disabled state is changed with javascript, the normal state doesn\'t return after refreshing the page").'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/button"}]},{name:"select",description:{kind:"markdown",value:"The select element represents a control for selecting amongst a set of options."},attributes:[{name:"autocomplete",valueSet:"inputautocomplete",description:{kind:"markdown",value:'A [`DOMString`](https://developer.mozilla.org/en-US/docs/Web/API/DOMString "DOMString is a UTF-16 String. As JavaScript already uses such strings, DOMString is mapped directly to a String.") providing a hint for a [user agent\'s](https://developer.mozilla.org/en-US/docs/Glossary/user_agent "user agent\'s: A user agent is a computer program representing a person, for example, a browser in a Web context.") autocomplete feature. See [The HTML autocomplete attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for a complete list of values and details on how to use autocomplete.'}},{name:"autofocus",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute lets you specify that a form control should have input focus when the page loads. Only one form element in a document can have the `autofocus` attribute."}},{name:"disabled",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates that the user cannot interact with the control. If this attribute is not specified, the control inherits its setting from the containing element, for example `fieldset`; if there is no containing element with the `disabled` attribute set, then the control is enabled."}},{name:"form",description:{kind:"markdown",value:'This attribute lets you specify the form element to which the select element is associated (that is, its "form owner"). If this attribute is specified, its value must be the same as the `id` of a form element in the same document. This enables you to place select elements anywhere within a document, not just as descendants of their form elements.'}},{name:"multiple",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates that multiple options can be selected in the list. If it is not specified, then only one option can be selected at a time. When `multiple` is specified, most browsers will show a scrolling list box instead of a single line dropdown."}},{name:"name",description:{kind:"markdown",value:"This attribute is used to specify the name of the control."}},{name:"required",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute indicating that an option with a non-empty string value must be selected."}},{name:"size",description:{kind:"markdown",value:"If the control is presented as a scrolling list box (e.g. when `multiple` is specified), this attribute represents the number of rows in the list that should be visible at one time. Browsers are not required to present a select element as a scrolled list box. The default value is 0.\n\n**Note:** According to the HTML5 specification, the default value for size should be 1; however, in practice, this has been found to break some web sites, and no other browser currently does that, so Mozilla has opted to continue to return 0 for the time being with Firefox."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/select"}]},{name:"datalist",description:{kind:"markdown",value:"The datalist element represents a set of option elements that represent predefined options for other controls. In the rendering, the datalist element represents nothing and it, along with its children, should be hidden."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/datalist"}]},{name:"optgroup",description:{kind:"markdown",value:"The optgroup element represents a group of option elements with a common label."},attributes:[{name:"disabled",valueSet:"v",description:{kind:"markdown",value:"If this Boolean attribute is set, none of the items in this option group is selectable. Often browsers grey out such control and it won't receive any browsing events, like mouse clicks or focus-related ones."}},{name:"label",description:{kind:"markdown",value:"The name of the group of options, which the browser can use when labeling the options in the user interface. This attribute is mandatory if this element is used."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/optgroup"}]},{name:"option",description:{kind:"markdown",value:"The option element represents an option in a select element or as part of a list of suggestions in a datalist element."},attributes:[{name:"disabled",valueSet:"v",description:{kind:"markdown",value:'If this Boolean attribute is set, this option is not checkable. Often browsers grey out such control and it won\'t receive any browsing event, like mouse clicks or focus-related ones. If this attribute is not set, the element can still be disabled if one of its ancestors is a disabled [`<optgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/optgroup "The HTML <optgroup> element creates a grouping of options within a <select> element.") element.'}},{name:"label",description:{kind:"markdown",value:"This attribute is text for the label indicating the meaning of the option. If the `label` attribute isn't defined, its value is that of the element text content."}},{name:"selected",valueSet:"v",description:{kind:"markdown",value:'If present, this Boolean attribute indicates that the option is initially selected. If the `<option>` element is the descendant of a [`<select>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select "The HTML <select> element represents a control that provides a menu of options") element whose [`multiple`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select#attr-multiple) attribute is not set, only one single `<option>` of this [`<select>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select "The HTML <select> element represents a control that provides a menu of options") element may have the `selected` attribute.'}},{name:"value",description:{kind:"markdown",value:"The content of this attribute represents the value to be submitted with the form, should this option be selected. If this attribute is omitted, the value is taken from the text content of the option element."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/option"}]},{name:"textarea",description:{kind:"markdown",value:"The textarea element represents a multiline plain text edit control for the element's raw value. The contents of the control represent the control's default value."},attributes:[{name:"autocomplete",valueSet:"inputautocomplete",description:{kind:"markdown",value:'This attribute indicates whether the value of the control can be automatically completed by the browser. Possible values are:\n\n* `off`: The user must explicitly enter a value into this field for every use, or the document provides its own auto-completion method; the browser does not automatically complete the entry.\n* `on`: The browser can automatically complete the value based on values that the user has entered during previous uses.\n\nIf the `autocomplete` attribute is not specified on a `<textarea>` element, then the browser uses the `autocomplete` attribute value of the `<textarea>` element\'s form owner. The form owner is either the [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element that this `<textarea>` element is a descendant of or the form element whose `id` is specified by the `form` attribute of the input element. For more information, see the [`autocomplete`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-autocomplete) attribute in [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.").'}},{name:"autofocus",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute lets you specify that a form control should have input focus when the page loads. Only one form-associated element in a document can have this attribute specified."}},{name:"cols",description:{kind:"markdown",value:"The visible width of the text control, in average character widths. If it is specified, it must be a positive integer. If it is not specified, the default value is `20`."}},{name:"dirname"},{name:"disabled",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute indicates that the user cannot interact with the control. If this attribute is not specified, the control inherits its setting from the containing element, for example [`<fieldset>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/fieldset "The HTML <fieldset> element is used to group several controls as well as labels (<label>) within a web form."); if there is no containing element when the `disabled` attribute is set, the control is enabled.'}},{name:"form",description:{kind:"markdown",value:'The form element that the `<textarea>` element is associated with (its "form owner"). The value of the attribute must be the `id` of a form element in the same document. If this attribute is not specified, the `<textarea>` element must be a descendant of a form element. This attribute enables you to place `<textarea>` elements anywhere within a document, not just as descendants of form elements.'}},{name:"inputmode",valueSet:"im"},{name:"maxlength",description:{kind:"markdown",value:"The maximum number of characters (unicode code points) that the user can enter. If this value isn't specified, the user can enter an unlimited number of characters."}},{name:"minlength",description:{kind:"markdown",value:"The minimum number of characters (unicode code points) required that the user should enter."}},{name:"name",description:{kind:"markdown",value:"The name of the control."}},{name:"placeholder",description:{kind:"markdown",value:'A hint to the user of what can be entered in the control. Carriage returns or line-feeds within the placeholder text must be treated as line breaks when rendering the hint.\n\n**Note:** Placeholders should only be used to show an example of the type of data that should be entered into a form; they are _not_ a substitute for a proper [`<label>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/label "The HTML <label> element represents a caption for an item in a user interface.") element tied to the input. See [Labels and placeholders](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Labels_and_placeholders "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") in [<input>: The Input (Form Input) element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") for a full explanation.'}},{name:"readonly",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates that the user cannot modify the value of the control. Unlike the `disabled` attribute, the `readonly` attribute does not prevent the user from clicking or selecting in the control. The value of a read-only control is still submitted with the form."}},{name:"required",valueSet:"v",description:{kind:"markdown",value:"This attribute specifies that the user must fill in a value before submitting a form."}},{name:"rows",description:{kind:"markdown",value:"The number of visible text lines for the control."}},{name:"wrap",valueSet:"w",description:{kind:"markdown",value:"Indicates how the control wraps text. Possible values are:\n\n* `hard`: The browser automatically inserts line breaks (CR+LF) so that each line has no more than the width of the control; the `cols` attribute must also be specified for this to take effect.\n* `soft`: The browser ensures that all line breaks in the value consist of a CR+LF pair, but does not insert any additional line breaks.\n* `off` : Like `soft` but changes appearance to `white-space: pre` so line segments exceeding `cols` are not wrapped and the `<textarea>` becomes horizontally scrollable.\n\nIf this attribute is not specified, `soft` is its default value."}},{name:"autocapitalize",description:"This is a non-standard attribute supported by WebKit on iOS (therefore nearly all browsers running on iOS, including Safari, Firefox, and Chrome), which controls whether and how the text value should be automatically capitalized as it is entered/edited by the user. The non-deprecated values are available in iOS 5 and later. Possible values are:\n\n* `none`: Completely disables automatic capitalization.\n* `sentences`: Automatically capitalize the first letter of sentences.\n* `words`: Automatically capitalize the first letter of words.\n* `characters`: Automatically capitalize all characters.\n* `on`: Deprecated since iOS 5.\n* `off`: Deprecated since iOS 5."},{name:"spellcheck",description:"Specifies whether the `<textarea>` is subject to spell checking by the underlying browser/OS. the value can be:\n\n* `true`: Indicates that the element needs to have its spelling and grammar checked.\n* `default` : Indicates that the element is to act according to a default behavior, possibly based on the parent element's own `spellcheck` value.\n* `false` : Indicates that the element should not be spell checked."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/textarea"}]},{name:"output",description:{kind:"markdown",value:"The output element represents the result of a calculation performed by the application, or the result of a user action."},attributes:[{name:"for",description:{kind:"markdown",value:"A space-separated list of other elements’ [`id`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/id)s, indicating that those elements contributed input values to (or otherwise affected) the calculation."}},{name:"form",description:{kind:"markdown",value:'The [form element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form) that this element is associated with (its "form owner"). The value of the attribute must be an `id` of a form element in the same document. If this attribute is not specified, the output element must be a descendant of a form element. This attribute enables you to place output elements anywhere within a document, not just as descendants of their form elements.'}},{name:"name",description:{kind:"markdown",value:'The name of the element, exposed in the [`HTMLFormElement`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement "The HTMLFormElement interface represents a <form> element in the DOM; it allows access to and in some cases modification of aspects of the form, as well as access to its component elements.") API.'}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/output"}]},{name:"progress",description:{kind:"markdown",value:"The progress element represents the completion progress of a task. The progress is either indeterminate, indicating that progress is being made but that it is not clear how much more work remains to be done before the task is complete (e.g. because the task is waiting for a remote host to respond), or the progress is a number in the range zero to a maximum, giving the fraction of work that has so far been completed."},attributes:[{name:"value",description:{kind:"markdown",value:"This attribute specifies how much of the task that has been completed. It must be a valid floating point number between 0 and `max`, or between 0 and 1 if `max` is omitted. If there is no `value` attribute, the progress bar is indeterminate; this indicates that an activity is ongoing with no indication of how long it is expected to take."}},{name:"max",description:{kind:"markdown",value:"This attribute describes how much work the task indicated by the `progress` element requires. The `max` attribute, if present, must have a value greater than zero and be a valid floating point number. The default value is 1."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/progress"}]},{name:"meter",description:{kind:"markdown",value:"The meter element represents a scalar measurement within a known range, or a fractional value; for example disk usage, the relevance of a query result, or the fraction of a voting population to have selected a particular candidate."},attributes:[{name:"value",description:{kind:"markdown",value:"The current numeric value. This must be between the minimum and maximum values (`min` attribute and `max` attribute) if they are specified. If unspecified or malformed, the value is 0. If specified, but not within the range given by the `min` attribute and `max` attribute, the value is equal to the nearest end of the range.\n\n**Usage note:** Unless the `value` attribute is between `0` and `1` (inclusive), the `min` and `max` attributes should define the range so that the `value` attribute's value is within it."}},{name:"min",description:{kind:"markdown",value:"The lower numeric bound of the measured range. This must be less than the maximum value (`max` attribute), if specified. If unspecified, the minimum value is 0."}},{name:"max",description:{kind:"markdown",value:"The upper numeric bound of the measured range. This must be greater than the minimum value (`min` attribute), if specified. If unspecified, the maximum value is 1."}},{name:"low",description:{kind:"markdown",value:"The upper numeric bound of the low end of the measured range. This must be greater than the minimum value (`min` attribute), and it also must be less than the high value and maximum value (`high` attribute and `max` attribute, respectively), if any are specified. If unspecified, or if less than the minimum value, the `low` value is equal to the minimum value."}},{name:"high",description:{kind:"markdown",value:"The lower numeric bound of the high end of the measured range. This must be less than the maximum value (`max` attribute), and it also must be greater than the low value and minimum value (`low` attribute and **min** attribute, respectively), if any are specified. If unspecified, or if greater than the maximum value, the `high` value is equal to the maximum value."}},{name:"optimum",description:{kind:"markdown",value:"This attribute indicates the optimal numeric value. It must be within the range (as defined by the `min` attribute and `max` attribute). When used with the `low` attribute and `high` attribute, it gives an indication where along the range is considered preferable. For example, if it is between the `min` attribute and the `low` attribute, then the lower range is considered preferred."}},{name:"form",description:"This attribute associates the element with a `form` element that has ownership of the `meter` element. For example, a `meter` might be displaying a range corresponding to an `input` element of `type` _number_. This attribute is only used if the `meter` element is being used as a form-associated element; even then, it may be omitted if the element appears as a descendant of a `form` element."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/meter"}]},{name:"fieldset",description:{kind:"markdown",value:"The fieldset element represents a set of form controls optionally grouped under a common name."},attributes:[{name:"disabled",valueSet:"v",description:{kind:"markdown",value:"If this Boolean attribute is set, all form controls that are descendants of the `<fieldset>`, are disabled, meaning they are not editable and won't be submitted along with the `<form>`. They won't receive any browsing events, like mouse clicks or focus-related events. By default browsers display such controls grayed out. Note that form elements inside the [`<legend>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/legend \"The HTML <legend> element represents a caption for the content of its parent <fieldset>.\") element won't be disabled."}},{name:"form",description:{kind:"markdown",value:'This attribute takes the value of the `id` attribute of a [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element you want the `<fieldset>` to be part of, even if it is not inside the form.'}},{name:"name",description:{kind:"markdown",value:'The name associated with the group.\n\n**Note**: The caption for the fieldset is given by the first [`<legend>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/legend "The HTML <legend> element represents a caption for the content of its parent <fieldset>.") element nested inside it.'}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/fieldset"}]},{name:"legend",description:{kind:"markdown",value:"The legend element represents a caption for the rest of the contents of the legend element's parent fieldset element, if any."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/legend"}]},{name:"details",description:{kind:"markdown",value:"The details element represents a disclosure widget from which the user can obtain additional information or controls."},attributes:[{name:"open",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates whether or not the details — that is, the contents of the `<details>` element — are currently visible. The default, `false`, means the details are not visible."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/details"}]},{name:"summary",description:{kind:"markdown",value:"The summary element represents a summary, caption, or legend for the rest of the contents of the summary element's parent details element, if any."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/summary"}]},{name:"dialog",description:{kind:"markdown",value:"The dialog element represents a part of an application that a user interacts with to perform a task, for example a dialog box, inspector, or window."},attributes:[{name:"open",description:"Indicates that the dialog is active and available for interaction. When the `open` attribute is not set, the dialog shouldn't be shown to the user."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dialog"}]},{name:"script",description:{kind:"markdown",value:"The script element allows authors to include dynamic script and data blocks in their documents. The element does not represent content for the user."},attributes:[{name:"src",description:{kind:"markdown",value:"This attribute specifies the URI of an external script; this can be used as an alternative to embedding a script directly within a document.\n\nIf a `script` element has a `src` attribute specified, it should not have a script embedded inside its tags."}},{name:"type",description:{kind:"markdown",value:'This attribute indicates the type of script represented. The value of this attribute will be in one of the following categories:\n\n* **Omitted or a JavaScript MIME type:** For HTML5-compliant browsers this indicates the script is JavaScript. HTML5 specification urges authors to omit the attribute rather than provide a redundant MIME type. In earlier browsers, this identified the scripting language of the embedded or imported (via the `src` attribute) code. JavaScript MIME types are [listed in the specification](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types#JavaScript_types).\n* **`module`:** For HTML5-compliant browsers the code is treated as a JavaScript module. The processing of the script contents is not affected by the `charset` and `defer` attributes. For information on using `module`, see [ES6 in Depth: Modules](https://hacks.mozilla.org/2015/08/es6-in-depth-modules/). Code may behave differently when the `module` keyword is used.\n* **Any other value:** The embedded content is treated as a data block which won\'t be processed by the browser. Developers must use a valid MIME type that is not a JavaScript MIME type to denote data blocks. The `src` attribute will be ignored.\n\n**Note:** in Firefox you could specify the version of JavaScript contained in a `<script>` element by including a non-standard `version` parameter inside the `type` attribute — for example `type="text/javascript;version=1.8"`. This has been removed in Firefox 59 (see [bug 1428745](https://bugzilla.mozilla.org/show_bug.cgi?id=1428745 "FIXED: Remove support for version parameter from script loader")).'}},{name:"charset"},{name:"async",valueSet:"v",description:{kind:"markdown",value:'This is a Boolean attribute indicating that the browser should, if possible, load the script asynchronously.\n\nThis attribute must not be used if the `src` attribute is absent (i.e. for inline scripts). If it is included in this case it will have no effect.\n\nBrowsers usually assume the worst case scenario and load scripts synchronously, (i.e. `async="false"`) during HTML parsing.\n\nDynamically inserted scripts (using [`document.createElement()`](https://developer.mozilla.org/en-US/docs/Web/API/Document/createElement "In an HTML document, the document.createElement() method creates the HTML element specified by tagName, or an HTMLUnknownElement if tagName isn\'t recognized.")) load asynchronously by default, so to turn on synchronous loading (i.e. scripts load in the order they were inserted) set `async="false"`.\n\nSee [Browser compatibility](#Browser_compatibility) for notes on browser support. See also [Async scripts for asm.js](https://developer.mozilla.org/en-US/docs/Games/Techniques/Async_scripts).'}},{name:"defer",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute is set to indicate to a browser that the script is meant to be executed after the document has been parsed, but before firing [`DOMContentLoaded`](https://developer.mozilla.org/en-US/docs/Web/Events/DOMContentLoaded "/en-US/docs/Web/Events/DOMContentLoaded").\n\nScripts with the `defer` attribute will prevent the `DOMContentLoaded` event from firing until the script has loaded and finished evaluating.\n\nThis attribute must not be used if the `src` attribute is absent (i.e. for inline scripts), in this case it would have no effect.\n\nTo achieve a similar effect for dynamically inserted scripts use `async="false"` instead. Scripts with the `defer` attribute will execute in the order in which they appear in the document.'}},{name:"crossorigin",valueSet:"xo",description:{kind:"markdown",value:'Normal `script` elements pass minimal information to the [`window.onerror`](https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror "The onerror property of the GlobalEventHandlers mixin is an EventHandler that processes error events.") for scripts which do not pass the standard [CORS](https://developer.mozilla.org/en-US/docs/Glossary/CORS "CORS: CORS (Cross-Origin Resource Sharing) is a system, consisting of transmitting HTTP headers, that determines whether browsers block frontend JavaScript code from accessing responses for cross-origin requests.") checks. To allow error logging for sites which use a separate domain for static media, use this attribute. See [CORS settings attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes) for a more descriptive explanation of its valid arguments.'}},{name:"nonce",description:{kind:"markdown",value:"A cryptographic nonce (number used once) to whitelist inline scripts in a [script-src Content-Security-Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/script-src). The server must generate a unique nonce value each time it transmits a policy. It is critical to provide a nonce that cannot be guessed as bypassing a resource's policy is otherwise trivial."}},{name:"integrity",description:"This attribute contains inline metadata that a user agent can use to verify that a fetched resource has been delivered free of unexpected manipulation. See [Subresource Integrity](https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity)."},{name:"nomodule",description:"This Boolean attribute is set to indicate that the script should not be executed in browsers that support [ES2015 modules](https://hacks.mozilla.org/2015/08/es6-in-depth-modules/) — in effect, this can be used to serve fallback scripts to older browsers that do not support modular JavaScript code."},{name:"referrerpolicy",description:'Indicates which [referrer](https://developer.mozilla.org/en-US/docs/Web/API/Document/referrer) to send when fetching the script, or resources fetched by the script:\n\n* `no-referrer`: The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent.\n* `no-referrer-when-downgrade` (default): The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent to [origin](https://developer.mozilla.org/en-US/docs/Glossary/origin "origin: Web content\'s origin is defined by the scheme (protocol), host (domain), and port of the URL used to access it. Two objects have the same origin only when the scheme, host, and port all match.")s without [TLS](https://developer.mozilla.org/en-US/docs/Glossary/TLS "TLS: Transport Layer Security (TLS), previously known as Secure Sockets Layer (SSL), is a protocol used by applications to communicate securely across a network, preventing tampering with and eavesdropping on email, web browsing, messaging, and other protocols.") ([HTTPS](https://developer.mozilla.org/en-US/docs/Glossary/HTTPS "HTTPS: HTTPS (HTTP Secure) is an encrypted version of the HTTP protocol. It usually uses SSL or TLS to encrypt all communication between a client and a server. This secure connection allows clients to safely exchange sensitive data with a server, for example for banking activities or online shopping.")).\n* `origin`: The sent referrer will be limited to the origin of the referring page: its [scheme](https://developer.mozilla.org/en-US/docs/Archive/Mozilla/URIScheme), [host](https://developer.mozilla.org/en-US/docs/Glossary/host "host: A host is a device connected to the Internet (or a local network). Some hosts called servers offer additional services like serving webpages or storing files and emails."), and [port](https://developer.mozilla.org/en-US/docs/Glossary/port "port: For a computer connected to a network with an IP address, a port is a communication endpoint. Ports are designated by numbers, and below 1024 each port is associated by default with a specific protocol.").\n* `origin-when-cross-origin`: The referrer sent to other origins will be limited to the scheme, the host, and the port. Navigations on the same origin will still include the path.\n* `same-origin`: A referrer will be sent for [same origin](https://developer.mozilla.org/en-US/docs/Glossary/Same-origin_policy "same origin: The same-origin policy is a critical security mechanism that restricts how a document or script loaded from one origin can interact with a resource from another origin."), but cross-origin requests will contain no referrer information.\n* `strict-origin`: Only send the origin of the document as the referrer when the protocol security level stays the same (e.g. HTTPS→HTTPS), but don\'t send it to a less secure destination (e.g. HTTPS→HTTP).\n* `strict-origin-when-cross-origin`: Send a full URL when performing a same-origin request, but only send the origin when the protocol security level stays the same (e.g.HTTPS→HTTPS), and send no header to a less secure destination (e.g. HTTPS→HTTP).\n* `unsafe-url`: The referrer will include the origin _and_ the path (but not the [fragment](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/hash), [password](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/password), or [username](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/username)). **This value is unsafe**, because it leaks origins and paths from TLS-protected resources to insecure origins.\n\n**Note**: An empty string value (`""`) is both the default value, and a fallback value if `referrerpolicy` is not supported. If `referrerpolicy` is not explicitly specified on the `<script>` element, it will adopt a higher-level referrer policy, i.e. one set on the whole document or domain. If a higher-level policy is not available, the empty string is treated as being equivalent to `no-referrer-when-downgrade`.'},{name:"text",description:"Like the `textContent` attribute, this attribute sets the text content of the element. Unlike the `textContent` attribute, however, this attribute is evaluated as executable code after the node is inserted into the DOM."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/script"}]},{name:"noscript",description:{kind:"markdown",value:"The noscript element represents nothing if scripting is enabled, and represents its children if scripting is disabled. It is used to present different markup to user agents that support scripting and those that don't support scripting, by affecting how the document is parsed."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/noscript"}]},{name:"template",description:{kind:"markdown",value:"The template element is used to declare fragments of HTML that can be cloned and inserted in the document by script."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/template"}]},{name:"canvas",description:{kind:"markdown",value:"The canvas element provides scripts with a resolution-dependent bitmap canvas, which can be used for rendering graphs, game graphics, art, or other visual images on the fly."},attributes:[{name:"width",description:{kind:"markdown",value:"The width of the coordinate space in CSS pixels. Defaults to 300."}},{name:"height",description:{kind:"markdown",value:"The height of the coordinate space in CSS pixels. Defaults to 150."}},{name:"moz-opaque",description:"Lets the canvas know whether or not translucency will be a factor. If the canvas knows there's no translucency, painting performance can be optimized. This is only supported by Mozilla-based browsers; use the standardized [`canvas.getContext('2d', { alpha: false })`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement/getContext \"The HTMLCanvasElement.getContext() method returns a drawing context on the canvas, or null if the context identifier is not supported.\") instead."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/canvas"}]}],globalAttributes:[{name:"accesskey",description:{kind:"markdown",value:"Provides a hint for generating a keyboard shortcut for the current element. This attribute consists of a space-separated list of characters. The browser should use the first one that exists on the computer keyboard layout."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/accesskey"}]},{name:"autocapitalize",description:{kind:"markdown",value:"Controls whether and how text input is automatically capitalized as it is entered/edited by the user. It can have the following values:\n\n* `off` or `none`, no autocapitalization is applied (all letters default to lowercase)\n* `on` or `sentences`, the first letter of each sentence defaults to a capital letter; all other letters default to lowercase\n* `words`, the first letter of each word defaults to a capital letter; all other letters default to lowercase\n* `characters`, all letters should default to uppercase"},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/autocapitalize"}]},{name:"class",description:{kind:"markdown",value:'A space-separated list of the classes of the element. Classes allows CSS and JavaScript to select and access specific elements via the [class selectors](/en-US/docs/Web/CSS/Class_selectors) or functions like the method [`Document.getElementsByClassName()`](/en-US/docs/Web/API/Document/getElementsByClassName "returns an array-like object of all child elements which have all of the given class names.").'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/class"}]},{name:"contenteditable",description:{kind:"markdown",value:"An enumerated attribute indicating if the element should be editable by the user. If so, the browser modifies its widget to allow editing. The attribute must take one of the following values:\n\n* `true` or the _empty string_, which indicates that the element must be editable;\n* `false`, which indicates that the element must not be editable."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/contenteditable"}]},{name:"contextmenu",description:{kind:"markdown",value:'The `[**id**](#attr-id)` of a [`<menu>`](/en-US/docs/Web/HTML/Element/menu "The HTML <menu> element represents a group of commands that a user can perform or activate. This includes both list menus, which might appear across the top of a screen, as well as context menus, such as those that might appear underneath a button after it has been clicked.") to use as the contextual menu for this element.'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/contextmenu"}]},{name:"dir",description:{kind:"markdown",value:"An enumerated attribute indicating the directionality of the element's text. It can have the following values:\n\n* `ltr`, which means _left to right_ and is to be used for languages that are written from the left to the right (like English);\n* `rtl`, which means _right to left_ and is to be used for languages that are written from the right to the left (like Arabic);\n* `auto`, which lets the user agent decide. It uses a basic algorithm as it parses the characters inside the element until it finds a character with a strong directionality, then it applies that directionality to the whole element."},valueSet:"d",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/dir"}]},{name:"draggable",description:{kind:"markdown",value:"An enumerated attribute indicating whether the element can be dragged, using the [Drag and Drop API](/en-us/docs/DragDrop/Drag_and_Drop). It can have the following values:\n\n* `true`, which indicates that the element may be dragged\n* `false`, which indicates that the element may not be dragged."},valueSet:"b",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/draggable"}]},{name:"dropzone",description:{kind:"markdown",value:"An enumerated attribute indicating what types of content can be dropped on an element, using the [Drag and Drop API](/en-US/docs/DragDrop/Drag_and_Drop). It can have the following values:\n\n* `copy`, which indicates that dropping will create a copy of the element that was dragged\n* `move`, which indicates that the element that was dragged will be moved to this new location.\n* `link`, will create a link to the dragged data."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/dropzone"}]},{name:"exportparts",description:{kind:"markdown",value:"Used to transitively export shadow parts from a nested shadow tree into a containing light tree."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/exportparts"}]},{name:"hidden",description:{kind:"markdown",value:"A Boolean attribute indicates that the element is not yet, or is no longer, _relevant_. For example, it can be used to hide elements of the page that can't be used until the login process has been completed. The browser won't render such elements. This attribute must not be used to hide content that could legitimately be shown."},valueSet:"v",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/hidden"}]},{name:"id",description:{kind:"markdown",value:"Defines a unique identifier (ID) which must be unique in the whole document. Its purpose is to identify the element when linking (using a fragment identifier), scripting, or styling (with CSS)."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/id"}]},{name:"inputmode",description:{kind:"markdown",value:'Provides a hint to browsers as to the type of virtual keyboard configuration to use when editing this element or its contents. Used primarily on [`<input>`](/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") elements, but is usable on any element while in `[contenteditable](/en-US/docs/Web/HTML/Global_attributes#attr-contenteditable)` mode.'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/inputmode"}]},{name:"is",description:{kind:"markdown",value:"Allows you to specify that a standard HTML element should behave like a registered custom built-in element (see [Using custom elements](/en-US/docs/Web/Web_Components/Using_custom_elements) for more details)."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/is"}]},{name:"itemid",description:{kind:"markdown",value:"The unique, global identifier of an item."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemid"}]},{name:"itemprop",description:{kind:"markdown",value:"Used to add properties to an item. Every HTML element may have an `itemprop` attribute specified, where an `itemprop` consists of a name and value pair."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemprop"}]},{name:"itemref",description:{kind:"markdown",value:"Properties that are not descendants of an element with the `itemscope` attribute can be associated with the item using an `itemref`. It provides a list of element ids (not `itemid`s) with additional properties elsewhere in the document."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemref"}]},{name:"itemscope",description:{kind:"markdown",value:"`itemscope` (usually) works along with `[itemtype](/en-US/docs/Web/HTML/Global_attributes#attr-itemtype)` to specify that the HTML contained in a block is about a particular item. `itemscope` creates the Item and defines the scope of the `itemtype` associated with it. `itemtype` is a valid URL of a vocabulary (such as [schema.org](https://schema.org/)) that describes the item and its properties context."},valueSet:"v",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemscope"}]},{name:"itemtype",description:{kind:"markdown",value:"Specifies the URL of the vocabulary that will be used to define `itemprop`s (item properties) in the data structure. `[itemscope](/en-US/docs/Web/HTML/Global_attributes#attr-itemscope)` is used to set the scope of where in the data structure the vocabulary set by `itemtype` will be active."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemtype"}]},{name:"lang",description:{kind:"markdown",value:"Helps define the language of an element: the language that non-editable elements are in, or the language that editable elements should be written in by the user. The attribute contains one “language tag” (made of hyphen-separated “language subtags”) in the format defined in [_Tags for Identifying Languages (BCP47)_](https://www.ietf.org/rfc/bcp/bcp47.txt). [**xml:lang**](#attr-xml:lang) has priority over it."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/lang"}]},{name:"part",description:{kind:"markdown",value:'A space-separated list of the part names of the element. Part names allows CSS to select and style specific elements in a shadow tree via the [`::part`](/en-US/docs/Web/CSS/::part "The ::part CSS pseudo-element represents any element within a shadow tree that has a matching part attribute.") pseudo-element.'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/part"}]},{name:"role",valueSet:"roles"},{name:"slot",description:{kind:"markdown",value:"Assigns a slot in a [shadow DOM](/en-US/docs/Web/Web_Components/Shadow_DOM) shadow tree to an element: An element with a `slot` attribute is assigned to the slot created by the [`<slot>`](/en-US/docs/Web/HTML/Element/slot \"The HTML <slot> element—part of the Web Components technology suite—is a placeholder inside a web component that you can fill with your own markup, which lets you create separate DOM trees and present them together.\") element whose `[name](/en-US/docs/Web/HTML/Element/slot#attr-name)` attribute's value matches that `slot` attribute's value."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/slot"}]},{name:"spellcheck",description:{kind:"markdown",value:"An enumerated attribute defines whether the element may be checked for spelling errors. It may have the following values:\n\n* `true`, which indicates that the element should be, if possible, checked for spelling errors;\n* `false`, which indicates that the element should not be checked for spelling errors."},valueSet:"b",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/spellcheck"}]},{name:"style",description:{kind:"markdown",value:'Contains [CSS](/en-US/docs/Web/CSS) styling declarations to be applied to the element. Note that it is recommended for styles to be defined in a separate file or files. This attribute and the [`<style>`](/en-US/docs/Web/HTML/Element/style "The HTML <style> element contains style information for a document, or part of a document.") element have mainly the purpose of allowing for quick styling, for example for testing purposes.'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/style"}]},{name:"tabindex",description:{kind:"markdown",value:"An integer attribute indicating if the element can take input focus (is _focusable_), if it should participate to sequential keyboard navigation, and if so, at what position. It can take several values:\n\n* a _negative value_ means that the element should be focusable, but should not be reachable via sequential keyboard navigation;\n* `0` means that the element should be focusable and reachable via sequential keyboard navigation, but its relative order is defined by the platform convention;\n* a _positive value_ means that the element should be focusable and reachable via sequential keyboard navigation; the order in which the elements are focused is the increasing value of the [**tabindex**](#attr-tabindex). If several elements share the same tabindex, their relative order follows their relative positions in the document."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/tabindex"}]},{name:"title",description:{kind:"markdown",value:"Contains a text representing advisory information related to the element it belongs to. Such information can typically, but not necessarily, be presented to the user as a tooltip."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/title"}]},{name:"translate",description:{kind:"markdown",value:"An enumerated attribute that is used to specify whether an element's attribute values and the values of its [`Text`](/en-US/docs/Web/API/Text \"The Text interface represents the textual content of Element or Attr. If an element has no markup within its content, it has a single child implementing Text that contains the element's text. However, if the element contains markup, it is parsed into information items and Text nodes that form its children.\") node children are to be translated when the page is localized, or whether to leave them unchanged. It can have the following values:\n\n* empty string and `yes`, which indicates that the element will be translated.\n* `no`, which indicates that the element will not be translated."},valueSet:"y",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/translate"}]},{name:"onabort",description:{kind:"markdown",value:"The loading of a resource has been aborted."}},{name:"onblur",description:{kind:"markdown",value:"An element has lost focus (does not bubble)."}},{name:"oncanplay",description:{kind:"markdown",value:"The user agent can play the media, but estimates that not enough data has been loaded to play the media up to its end without having to stop for further buffering of content."}},{name:"oncanplaythrough",description:{kind:"markdown",value:"The user agent can play the media up to its end without having to stop for further buffering of content."}},{name:"onchange",description:{kind:"markdown",value:"The change event is fired for <input>, <select>, and <textarea> elements when a change to the element's value is committed by the user."}},{name:"onclick",description:{kind:"markdown",value:"A pointing device button has been pressed and released on an element."}},{name:"oncontextmenu",description:{kind:"markdown",value:"The right button of the mouse is clicked (before the context menu is displayed)."}},{name:"ondblclick",description:{kind:"markdown",value:"A pointing device button is clicked twice on an element."}},{name:"ondrag",description:{kind:"markdown",value:"An element or text selection is being dragged (every 350ms)."}},{name:"ondragend",description:{kind:"markdown",value:"A drag operation is being ended (by releasing a mouse button or hitting the escape key)."}},{name:"ondragenter",description:{kind:"markdown",value:"A dragged element or text selection enters a valid drop target."}},{name:"ondragleave",description:{kind:"markdown",value:"A dragged element or text selection leaves a valid drop target."}},{name:"ondragover",description:{kind:"markdown",value:"An element or text selection is being dragged over a valid drop target (every 350ms)."}},{name:"ondragstart",description:{kind:"markdown",value:"The user starts dragging an element or text selection."}},{name:"ondrop",description:{kind:"markdown",value:"An element is dropped on a valid drop target."}},{name:"ondurationchange",description:{kind:"markdown",value:"The duration attribute has been updated."}},{name:"onemptied",description:{kind:"markdown",value:"The media has become empty; for example, this event is sent if the media has already been loaded (or partially loaded), and the load() method is called to reload it."}},{name:"onended",description:{kind:"markdown",value:"Playback has stopped because the end of the media was reached."}},{name:"onerror",description:{kind:"markdown",value:"A resource failed to load."}},{name:"onfocus",description:{kind:"markdown",value:"An element has received focus (does not bubble)."}},{name:"onformchange"},{name:"onforminput"},{name:"oninput",description:{kind:"markdown",value:"The value of an element changes or the content of an element with the attribute contenteditable is modified."}},{name:"oninvalid",description:{kind:"markdown",value:"A submittable element has been checked and doesn't satisfy its constraints."}},{name:"onkeydown",description:{kind:"markdown",value:"A key is pressed down."}},{name:"onkeypress",description:{kind:"markdown",value:"A key is pressed down and that key normally produces a character value (use input instead)."}},{name:"onkeyup",description:{kind:"markdown",value:"A key is released."}},{name:"onload",description:{kind:"markdown",value:"A resource and its dependent resources have finished loading."}},{name:"onloadeddata",description:{kind:"markdown",value:"The first frame of the media has finished loading."}},{name:"onloadedmetadata",description:{kind:"markdown",value:"The metadata has been loaded."}},{name:"onloadstart",description:{kind:"markdown",value:"Progress has begun."}},{name:"onmousedown",description:{kind:"markdown",value:"A pointing device button (usually a mouse) is pressed on an element."}},{name:"onmousemove",description:{kind:"markdown",value:"A pointing device is moved over an element."}},{name:"onmouseout",description:{kind:"markdown",value:"A pointing device is moved off the element that has the listener attached or off one of its children."}},{name:"onmouseover",description:{kind:"markdown",value:"A pointing device is moved onto the element that has the listener attached or onto one of its children."}},{name:"onmouseup",description:{kind:"markdown",value:"A pointing device button is released over an element."}},{name:"onmousewheel"},{name:"onpause",description:{kind:"markdown",value:"Playback has been paused."}},{name:"onplay",description:{kind:"markdown",value:"Playback has begun."}},{name:"onplaying",description:{kind:"markdown",value:"Playback is ready to start after having been paused or delayed due to lack of data."}},{name:"onprogress",description:{kind:"markdown",value:"In progress."}},{name:"onratechange",description:{kind:"markdown",value:"The playback rate has changed."}},{name:"onreset",description:{kind:"markdown",value:"A form is reset."}},{name:"onresize",description:{kind:"markdown",value:"The document view has been resized."}},{name:"onreadystatechange",description:{kind:"markdown",value:"The readyState attribute of a document has changed."}},{name:"onscroll",description:{kind:"markdown",value:"The document view or an element has been scrolled."}},{name:"onseeked",description:{kind:"markdown",value:"A seek operation completed."}},{name:"onseeking",description:{kind:"markdown",value:"A seek operation began."}},{name:"onselect",description:{kind:"markdown",value:"Some text is being selected."}},{name:"onshow",description:{kind:"markdown",value:"A contextmenu event was fired on/bubbled to an element that has a contextmenu attribute"}},{name:"onstalled",description:{kind:"markdown",value:"The user agent is trying to fetch media data, but data is unexpectedly not forthcoming."}},{name:"onsubmit",description:{kind:"markdown",value:"A form is submitted."}},{name:"onsuspend",description:{kind:"markdown",value:"Media data loading has been suspended."}},{name:"ontimeupdate",description:{kind:"markdown",value:"The time indicated by the currentTime attribute has been updated."}},{name:"onvolumechange",description:{kind:"markdown",value:"The volume has changed."}},{name:"onwaiting",description:{kind:"markdown",value:"Playback has stopped because of a temporary lack of data."}},{name:"aria-activedescendant",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-activedescendant"}],description:{kind:"markdown",value:"Identifies the currently active element when DOM focus is on a [`composite`](https://www.w3.org/TR/wai-aria-1.1/#composite) widget, [`textbox`](https://www.w3.org/TR/wai-aria-1.1/#textbox), [`group`](https://www.w3.org/TR/wai-aria-1.1/#group), or [`application`](https://www.w3.org/TR/wai-aria-1.1/#application)."}},{name:"aria-atomic",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-atomic"}],description:{kind:"markdown",value:"Indicates whether [assistive technologies](https://www.w3.org/TR/wai-aria-1.1/#dfn-assistive-technology) will present all, or only parts of, the changed region based on the change notifications defined by the [`aria-relevant`](https://www.w3.org/TR/wai-aria-1.1/#aria-relevant) attribute."}},{name:"aria-autocomplete",valueSet:"autocomplete",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-autocomplete"}],description:{kind:"markdown",value:"Indicates whether inputting text could trigger display of one or more predictions of the user's intended value for an input and specifies how predictions would be presented if they are made."}},{name:"aria-busy",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-busy"}],description:{kind:"markdown",value:"Indicates an element is being modified and that assistive technologies _MAY_ want to wait until the modifications are complete before exposing them to the user."}},{name:"aria-checked",valueSet:"tristate",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-checked"}],description:{kind:"markdown",value:'Indicates the current "checked" [state](https://www.w3.org/TR/wai-aria-1.1/#dfn-state) of checkboxes, radio buttons, and other [widgets](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget). See related [`aria-pressed`](https://www.w3.org/TR/wai-aria-1.1/#aria-pressed) and [`aria-selected`](https://www.w3.org/TR/wai-aria-1.1/#aria-selected).'}},{name:"aria-colcount",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-colcount"}],description:{kind:"markdown",value:"Defines the total number of columns in a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-colindex`](https://www.w3.org/TR/wai-aria-1.1/#aria-colindex)."}},{name:"aria-colindex",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-colindex"}],description:{kind:"markdown",value:"Defines an [element's](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) column index or position with respect to the total number of columns within a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-colcount`](https://www.w3.org/TR/wai-aria-1.1/#aria-colcount) and [`aria-colspan`](https://www.w3.org/TR/wai-aria-1.1/#aria-colspan)."}},{name:"aria-colspan",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-colspan"}],description:{kind:"markdown",value:"Defines the number of columns spanned by a cell or gridcell within a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-colindex`](https://www.w3.org/TR/wai-aria-1.1/#aria-colindex) and [`aria-rowspan`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowspan)."}},{name:"aria-controls",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-controls"}],description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) whose contents or presence are controlled by the current element. See related [`aria-owns`](https://www.w3.org/TR/wai-aria-1.1/#aria-owns)."}},{name:"aria-current",valueSet:"current",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-current"}],description:{kind:"markdown",value:"Indicates the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) that represents the current item within a container or set of related elements."}},{name:"aria-describedat",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-describedat"}]},{name:"aria-describedby",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-describedby"}],description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) that describes the [object](https://www.w3.org/TR/wai-aria-1.1/#dfn-object). See related [`aria-labelledby`](https://www.w3.org/TR/wai-aria-1.1/#aria-labelledby)."}},{name:"aria-disabled",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-disabled"}],description:{kind:"markdown",value:"Indicates that the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) is [perceivable](https://www.w3.org/TR/wai-aria-1.1/#dfn-perceivable) but disabled, so it is not editable or otherwise [operable](https://www.w3.org/TR/wai-aria-1.1/#dfn-operable). See related [`aria-hidden`](https://www.w3.org/TR/wai-aria-1.1/#aria-hidden) and [`aria-readonly`](https://www.w3.org/TR/wai-aria-1.1/#aria-readonly)."}},{name:"aria-dropeffect",valueSet:"dropeffect",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-dropeffect"}],description:{kind:"markdown",value:"\\[Deprecated in ARIA 1.1\\] Indicates what functions can be performed when a dragged object is released on the drop target."}},{name:"aria-errormessage",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-errormessage"}],description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) that provides an error message for the [object](https://www.w3.org/TR/wai-aria-1.1/#dfn-object). See related [`aria-invalid`](https://www.w3.org/TR/wai-aria-1.1/#aria-invalid) and [`aria-describedby`](https://www.w3.org/TR/wai-aria-1.1/#aria-describedby)."}},{name:"aria-expanded",valueSet:"u",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-expanded"}],description:{kind:"markdown",value:"Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed."}},{name:"aria-flowto",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-flowto"}],description:{kind:"markdown",value:"Identifies the next [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) in an alternate reading order of content which, at the user's discretion, allows assistive technology to override the general default of reading in document source order."}},{name:"aria-grabbed",valueSet:"u",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-grabbed"}],description:{kind:"markdown",value:'\\[Deprecated in ARIA 1.1\\] Indicates an element\'s "grabbed" [state](https://www.w3.org/TR/wai-aria-1.1/#dfn-state) in a drag-and-drop operation.'}},{name:"aria-haspopup",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-haspopup"}],description:{kind:"markdown",value:"Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element)."}},{name:"aria-hidden",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-hidden"}],description:{kind:"markdown",value:"Indicates whether the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) is exposed to an accessibility API. See related [`aria-disabled`](https://www.w3.org/TR/wai-aria-1.1/#aria-disabled)."}},{name:"aria-invalid",valueSet:"invalid",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-invalid"}],description:{kind:"markdown",value:"Indicates the entered value does not conform to the format expected by the application. See related [`aria-errormessage`](https://www.w3.org/TR/wai-aria-1.1/#aria-errormessage)."}},{name:"aria-kbdshortcuts",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-kbdshortcuts"}]},{name:"aria-label",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-label"}],description:{kind:"markdown",value:"Defines a string value that labels the current element. See related [`aria-labelledby`](https://www.w3.org/TR/wai-aria-1.1/#aria-labelledby)."}},{name:"aria-labelledby",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-labelledby"}],description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) that labels the current element. See related [`aria-describedby`](https://www.w3.org/TR/wai-aria-1.1/#aria-describedby)."}},{name:"aria-level",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-level"}],description:{kind:"markdown",value:"Defines the hierarchical level of an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) within a structure."}},{name:"aria-live",valueSet:"live",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-live"}],description:{kind:"markdown",value:"Indicates that an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) will be updated, and describes the types of updates the [user agents](https://www.w3.org/TR/wai-aria-1.1/#dfn-user-agent), [assistive technologies](https://www.w3.org/TR/wai-aria-1.1/#dfn-assistive-technology), and user can expect from the [live region](https://www.w3.org/TR/wai-aria-1.1/#dfn-live-region)."}},{name:"aria-modal",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-modal"}],description:{kind:"markdown",value:"Indicates whether an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) is modal when displayed."}},{name:"aria-multiline",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-multiline"}],description:{kind:"markdown",value:"Indicates whether a text box accepts multiple lines of input or only a single line."}},{name:"aria-multiselectable",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-multiselectable"}],description:{kind:"markdown",value:"Indicates that the user may select more than one item from the current selectable descendants."}},{name:"aria-orientation",valueSet:"orientation",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-orientation"}],description:{kind:"markdown",value:"Indicates whether the element's orientation is horizontal, vertical, or unknown/ambiguous."}},{name:"aria-owns",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-owns"}],description:{kind:"markdown",value:"Identifies an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) in order to define a visual, functional, or contextual parent/child [relationship](https://www.w3.org/TR/wai-aria-1.1/#dfn-relationship) between DOM elements where the DOM hierarchy cannot be used to represent the relationship. See related [`aria-controls`](https://www.w3.org/TR/wai-aria-1.1/#aria-controls)."}},{name:"aria-placeholder",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-placeholder"}],description:{kind:"markdown",value:"Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value. A hint could be a sample value or a brief description of the expected format."}},{name:"aria-posinset",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-posinset"}],description:{kind:"markdown",value:"Defines an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element)'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM. See related [`aria-setsize`](https://www.w3.org/TR/wai-aria-1.1/#aria-setsize)."}},{name:"aria-pressed",valueSet:"tristate",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-pressed"}],description:{kind:"markdown",value:'Indicates the current "pressed" [state](https://www.w3.org/TR/wai-aria-1.1/#dfn-state) of toggle buttons. See related [`aria-checked`](https://www.w3.org/TR/wai-aria-1.1/#aria-checked) and [`aria-selected`](https://www.w3.org/TR/wai-aria-1.1/#aria-selected).'}},{name:"aria-readonly",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-readonly"}],description:{kind:"markdown",value:"Indicates that the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) is not editable, but is otherwise [operable](https://www.w3.org/TR/wai-aria-1.1/#dfn-operable). See related [`aria-disabled`](https://www.w3.org/TR/wai-aria-1.1/#aria-disabled)."}},{name:"aria-relevant",valueSet:"relevant",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-relevant"}],description:{kind:"markdown",value:"Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified. See related [`aria-atomic`](https://www.w3.org/TR/wai-aria-1.1/#aria-atomic)."}},{name:"aria-required",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-required"}],description:{kind:"markdown",value:"Indicates that user input is required on the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) before a form may be submitted."}},{name:"aria-roledescription",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-roledescription"}],description:{kind:"markdown",value:"Defines a human-readable, author-localized description for the [role](https://www.w3.org/TR/wai-aria-1.1/#dfn-role) of an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element)."}},{name:"aria-rowcount",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-rowcount"}],description:{kind:"markdown",value:"Defines the total number of rows in a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-rowindex`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowindex)."}},{name:"aria-rowindex",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-rowindex"}],description:{kind:"markdown",value:"Defines an [element's](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) row index or position with respect to the total number of rows within a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-rowcount`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowcount) and [`aria-rowspan`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowspan)."}},{name:"aria-rowspan",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-rowspan"}],description:{kind:"markdown",value:"Defines the number of rows spanned by a cell or gridcell within a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-rowindex`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowindex) and [`aria-colspan`](https://www.w3.org/TR/wai-aria-1.1/#aria-colspan)."}},{name:"aria-selected",valueSet:"u",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-selected"}],description:{kind:"markdown",value:'Indicates the current "selected" [state](https://www.w3.org/TR/wai-aria-1.1/#dfn-state) of various [widgets](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget). See related [`aria-checked`](https://www.w3.org/TR/wai-aria-1.1/#aria-checked) and [`aria-pressed`](https://www.w3.org/TR/wai-aria-1.1/#aria-pressed).'}},{name:"aria-setsize",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-setsize"}],description:{kind:"markdown",value:"Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM. See related [`aria-posinset`](https://www.w3.org/TR/wai-aria-1.1/#aria-posinset)."}},{name:"aria-sort",valueSet:"sort",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-sort"}],description:{kind:"markdown",value:"Indicates if items in a table or grid are sorted in ascending or descending order."}},{name:"aria-valuemax",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-valuemax"}],description:{kind:"markdown",value:"Defines the maximum allowed value for a range [widget](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget)."}},{name:"aria-valuemin",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-valuemin"}],description:{kind:"markdown",value:"Defines the minimum allowed value for a range [widget](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget)."}},{name:"aria-valuenow",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-valuenow"}],description:{kind:"markdown",value:"Defines the current value for a range [widget](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget). See related [`aria-valuetext`](https://www.w3.org/TR/wai-aria-1.1/#aria-valuetext)."}},{name:"aria-valuetext",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-valuetext"}],description:{kind:"markdown",value:"Defines the human readable text alternative of [`aria-valuenow`](https://www.w3.org/TR/wai-aria-1.1/#aria-valuenow) for a range [widget](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget)."}},{name:"aria-details",description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) that provides a detailed, extended description for the [object](https://www.w3.org/TR/wai-aria-1.1/#dfn-object). See related [`aria-describedby`](https://www.w3.org/TR/wai-aria-1.1/#aria-describedby)."}},{name:"aria-keyshortcuts",description:{kind:"markdown",value:"Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element."}}],valueSets:[{name:"b",values:[{name:"true"},{name:"false"}]},{name:"u",values:[{name:"true"},{name:"false"},{name:"undefined"}]},{name:"o",values:[{name:"on"},{name:"off"}]},{name:"y",values:[{name:"yes"},{name:"no"}]},{name:"w",values:[{name:"soft"},{name:"hard"}]},{name:"d",values:[{name:"ltr"},{name:"rtl"},{name:"auto"}]},{name:"m",values:[{name:"GET",description:{kind:"markdown",value:"Corresponds to the HTTP [GET method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.3); form data are appended to the `action` attribute URI with a '?' as separator, and the resulting URI is sent to the server. Use this method when the form has no side-effects and contains only ASCII characters."}},{name:"POST",description:{kind:"markdown",value:"Corresponds to the HTTP [POST method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.5); form data are included in the body of the form and sent to the server."}},{name:"dialog",description:{kind:"markdown",value:"Use when the form is inside a [`<dialog>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog) element to close the dialog when submitted."}}]},{name:"fm",values:[{name:"GET"},{name:"POST"}]},{name:"s",values:[{name:"row"},{name:"col"},{name:"rowgroup"},{name:"colgroup"}]},{name:"t",values:[{name:"hidden"},{name:"text"},{name:"search"},{name:"tel"},{name:"url"},{name:"email"},{name:"password"},{name:"datetime"},{name:"date"},{name:"month"},{name:"week"},{name:"time"},{name:"datetime-local"},{name:"number"},{name:"range"},{name:"color"},{name:"checkbox"},{name:"radio"},{name:"file"},{name:"submit"},{name:"image"},{name:"reset"},{name:"button"}]},{name:"im",values:[{name:"verbatim"},{name:"latin"},{name:"latin-name"},{name:"latin-prose"},{name:"full-width-latin"},{name:"kana"},{name:"kana-name"},{name:"katakana"},{name:"numeric"},{name:"tel"},{name:"email"},{name:"url"}]},{name:"bt",values:[{name:"button"},{name:"submit"},{name:"reset"},{name:"menu"}]},{name:"lt",values:[{name:"1"},{name:"a"},{name:"A"},{name:"i"},{name:"I"}]},{name:"mt",values:[{name:"context"},{name:"toolbar"}]},{name:"mit",values:[{name:"command"},{name:"checkbox"},{name:"radio"}]},{name:"et",values:[{name:"application/x-www-form-urlencoded"},{name:"multipart/form-data"},{name:"text/plain"}]},{name:"tk",values:[{name:"subtitles"},{name:"captions"},{name:"descriptions"},{name:"chapters"},{name:"metadata"}]},{name:"pl",values:[{name:"none"},{name:"metadata"},{name:"auto"}]},{name:"sh",values:[{name:"circle"},{name:"default"},{name:"poly"},{name:"rect"}]},{name:"xo",values:[{name:"anonymous"},{name:"use-credentials"}]},{name:"sb",values:[{name:"allow-forms"},{name:"allow-modals"},{name:"allow-pointer-lock"},{name:"allow-popups"},{name:"allow-popups-to-escape-sandbox"},{name:"allow-same-origin"},{name:"allow-scripts"},{name:"allow-top-navigation"}]},{name:"tristate",values:[{name:"true"},{name:"false"},{name:"mixed"},{name:"undefined"}]},{name:"inputautocomplete",values:[{name:"additional-name"},{name:"address-level1"},{name:"address-level2"},{name:"address-level3"},{name:"address-level4"},{name:"address-line1"},{name:"address-line2"},{name:"address-line3"},{name:"bday"},{name:"bday-year"},{name:"bday-day"},{name:"bday-month"},{name:"billing"},{name:"cc-additional-name"},{name:"cc-csc"},{name:"cc-exp"},{name:"cc-exp-month"},{name:"cc-exp-year"},{name:"cc-family-name"},{name:"cc-given-name"},{name:"cc-name"},{name:"cc-number"},{name:"cc-type"},{name:"country"},{name:"country-name"},{name:"current-password"},{name:"email"},{name:"family-name"},{name:"fax"},{name:"given-name"},{name:"home"},{name:"honorific-prefix"},{name:"honorific-suffix"},{name:"impp"},{name:"language"},{name:"mobile"},{name:"name"},{name:"new-password"},{name:"nickname"},{name:"organization"},{name:"organization-title"},{name:"pager"},{name:"photo"},{name:"postal-code"},{name:"sex"},{name:"shipping"},{name:"street-address"},{name:"tel-area-code"},{name:"tel"},{name:"tel-country-code"},{name:"tel-extension"},{name:"tel-local"},{name:"tel-local-prefix"},{name:"tel-local-suffix"},{name:"tel-national"},{name:"transaction-amount"},{name:"transaction-currency"},{name:"url"},{name:"username"},{name:"work"}]},{name:"autocomplete",values:[{name:"inline"},{name:"list"},{name:"both"},{name:"none"}]},{name:"current",values:[{name:"page"},{name:"step"},{name:"location"},{name:"date"},{name:"time"},{name:"true"},{name:"false"}]},{name:"dropeffect",values:[{name:"copy"},{name:"move"},{name:"link"},{name:"execute"},{name:"popup"},{name:"none"}]},{name:"invalid",values:[{name:"grammar"},{name:"false"},{name:"spelling"},{name:"true"}]},{name:"live",values:[{name:"off"},{name:"polite"},{name:"assertive"}]},{name:"orientation",values:[{name:"vertical"},{name:"horizontal"},{name:"undefined"}]},{name:"relevant",values:[{name:"additions"},{name:"removals"},{name:"text"},{name:"all"},{name:"additions text"}]},{name:"sort",values:[{name:"ascending"},{name:"descending"},{name:"none"},{name:"other"}]},{name:"roles",values:[{name:"alert"},{name:"alertdialog"},{name:"button"},{name:"checkbox"},{name:"dialog"},{name:"gridcell"},{name:"link"},{name:"log"},{name:"marquee"},{name:"menuitem"},{name:"menuitemcheckbox"},{name:"menuitemradio"},{name:"option"},{name:"progressbar"},{name:"radio"},{name:"scrollbar"},{name:"searchbox"},{name:"slider"},{name:"spinbutton"},{name:"status"},{name:"switch"},{name:"tab"},{name:"tabpanel"},{name:"textbox"},{name:"timer"},{name:"tooltip"},{name:"treeitem"},{name:"combobox"},{name:"grid"},{name:"listbox"},{name:"menu"},{name:"menubar"},{name:"radiogroup"},{name:"tablist"},{name:"tree"},{name:"treegrid"},{name:"application"},{name:"article"},{name:"cell"},{name:"columnheader"},{name:"definition"},{name:"directory"},{name:"document"},{name:"feed"},{name:"figure"},{name:"group"},{name:"heading"},{name:"img"},{name:"list"},{name:"listitem"},{name:"math"},{name:"none"},{name:"note"},{name:"presentation"},{name:"region"},{name:"row"},{name:"rowgroup"},{name:"rowheader"},{name:"separator"},{name:"table"},{name:"term"},{name:"text"},{name:"toolbar"},{name:"banner"},{name:"complementary"},{name:"contentinfo"},{name:"form"},{name:"main"},{name:"navigation"},{name:"region"},{name:"search"},{name:"doc-abstract"},{name:"doc-acknowledgments"},{name:"doc-afterword"},{name:"doc-appendix"},{name:"doc-backlink"},{name:"doc-biblioentry"},{name:"doc-bibliography"},{name:"doc-biblioref"},{name:"doc-chapter"},{name:"doc-colophon"},{name:"doc-conclusion"},{name:"doc-cover"},{name:"doc-credit"},{name:"doc-credits"},{name:"doc-dedication"},{name:"doc-endnote"},{name:"doc-endnotes"},{name:"doc-epigraph"},{name:"doc-epilogue"},{name:"doc-errata"},{name:"doc-example"},{name:"doc-footnote"},{name:"doc-foreword"},{name:"doc-glossary"},{name:"doc-glossref"},{name:"doc-index"},{name:"doc-introduction"},{name:"doc-noteref"},{name:"doc-notice"},{name:"doc-pagebreak"},{name:"doc-pagelist"},{name:"doc-part"},{name:"doc-preface"},{name:"doc-prologue"},{name:"doc-pullquote"},{name:"doc-qna"},{name:"doc-subtitle"},{name:"doc-tip"},{name:"doc-toc"}]},{name:"metanames",values:[{name:"application-name"},{name:"author"},{name:"description"},{name:"format-detection"},{name:"generator"},{name:"keywords"},{name:"publisher"},{name:"referrer"},{name:"robots"},{name:"theme-color"},{name:"viewport"}]}]})],Ne=[];function Pe(){return qe.concat(Ne)}function Oe(e){return void 0!==e}var Fe=M();!function(){function e(e){this.clientCapabilities=e,this.completionParticipants=[]}e.prototype.setCompletionParticipants=function(e){this.completionParticipants=e||[]},e.prototype.doComplete=function(e,t,n,i){var r=this._doComplete(e,t,n,i);return this.convertCompletionList(r)},e.prototype._doComplete=function(e,t,n,a){var o={isIncomplete:!1,items:[]},s=this.completionParticipants,l=Pe().filter((function(t){return t.isApplicable(e.languageId)&&(!a||!1!==a[t.getId()])})),c=this.doesSupportMarkdown(),h=e.getText(),d=e.offsetAt(t),u=n.findNodeBefore(d);if(!u)return o;var p,m=ke(h,u.start),f="";function g(t,n){return void 0===n&&(n=d),t>d&&(t=d),{start:e.positionAt(t),end:e.positionAt(n)}}function _(e,t){var n=g(e,t);return l.forEach((function(e){e.provideTags().forEach((function(e){o.items.push({label:e.name,kind:I.Property,documentation:De(e,c),textEdit:b.replace(n,e.name),insertTextFormat:H.PlainText})}))})),o}function w(e){for(var t=e;t>0;){var n=h.charAt(t-1);if("\n\r".indexOf(n)>=0)return h.substring(t,e);if(!je(n))return null;t--}return h.substring(0,e)}function v(e,t,n){void 0===n&&(n=d);var i=g(e,n),r=Be(h,n,re.WithinEndTag,ie.EndTagClose)?"":">",a=u;for(t&&(a=a.parent);a;){var s=a.tag;if(s&&(!a.closed||a.endTagStart&&a.endTagStart>d)){var p={label:"/"+s,kind:I.Property,filterText:"/"+s,textEdit:b.replace(i,"/"+s+r),insertTextFormat:H.PlainText},m=w(a.start),f=w(e-1);if(null!==m&&null!==f&&m!==f){var _=m+"</"+s+r;p.textEdit=b.replace(g(e-1-f.length),_),p.filterText=f+"</"+s}return o.items.push(p),o}a=a.parent}return t||l.forEach((function(e){e.provideTags().forEach((function(e){o.items.push({label:"/"+e.name,kind:I.Property,documentation:De(e,c),filterText:"/"+e+r,textEdit:b.replace(i,"/"+e+r),insertTextFormat:H.PlainText})}))})),o}function y(t,n){if(a&&a.hideAutoCompleteProposals)return o;if(!Me(n)){var i=e.positionAt(t);o.items.push({label:"</"+n+">",kind:I.Property,filterText:"</"+n+">",textEdit:b.insert(i,"$0</"+n+">"),insertTextFormat:H.Snippet})}return o}function T(e,t){return _(e,t),v(e,!0,t),o}function k(e,t){void 0===t&&(t=d);for(var i=d;i<t&&"<"!==h[i];)i++;var r=g(e,i),a=Be(h,t,re.AfterAttributeName,ie.DelimiterAssign)?"":'="$1"',s=f.toLowerCase(),u=Object.create(null);return l.forEach((function(e){e.provideAttributes(s).forEach((function(e){if(!u[e.name]){u[e.name]=!0;var t,n=e.name;"v"!==e.valueSet&&a.length&&(n+=a,(e.valueSet||"style"===e.name)&&(t={title:"Suggest",command:"editor.action.triggerSuggest"})),o.items.push({label:e.name,kind:"handler"===e.valueSet?I.Function:I.Value,documentation:De(e,c),textEdit:b.replace(r,n),insertTextFormat:H.Snippet,command:t})}}))})),function(e,t){var i={};i["data-"]='data-$1="$2"',n&&n.roots.forEach((function(e){return function e(n){n.attributeNames.forEach((function(e){!Ee(e,"data-")||i[e]||t[e]||(i[e]=e+'="$1"')})),n.children.forEach((function(t){return e(t)}))}(e)}));Object.keys(i).forEach((function(t){return o.items.push({label:t,kind:I.Value,textEdit:b.replace(e,i[t]),insertTextFormat:H.Snippet})}))}(r,u),o}function S(n,i){var r,a,u,m;if(void 0===i&&(i=d),d>n&&d<=i&&(m=h[n],/^["']*$/.test(m))){var _=n+1,w=i;i>n&&h[i-1]===h[n]&&w--;var v=function(e,t,n){for(;t>n&&!je(e[t-1]);)t--;return t}(h,d,_),y=function(e,t,n){for(;t<n&&!je(e[t]);)t++;return t}(h,d,w);r=g(v,y),u=d>=_&&d<=w?h.substring(_,d):"",a=!1}else r=g(n,i),u=h.substring(n,d),a=!0;var T=f.toLowerCase(),k=p.toLowerCase();if(s.length>0)for(var S=g(n,i),x=0,M=s;x<M.length;x++){var E=M[x];E.onHtmlAttributeValue&&E.onHtmlAttributeValue({document:e,position:t,tag:T,attribute:k,value:u,range:S})}return l.forEach((function(e){e.provideValues(T,k).forEach((function(e){var t=a?'"'+e.name+'"':e.name;o.items.push({label:e.name,filterText:t,kind:I.Unit,documentation:De(e,c),textEdit:b.replace(r,t),insertTextFormat:H.PlainText})}))})),L(),o}function x(e){return d===m.getTokenEnd()&&(A=m.scan())===e&&m.getTokenOffset()===d?m.getTokenEnd():d}function M(){for(var n=0,i=s;n<i.length;n++){var r=i[n];r.onHtmlContent&&r.onHtmlContent({document:e,position:t})}return L()}function L(){for(var e,n,a,s=d-1,l=t.character;s>=0&&Ce(h,s);)s--,l--;if(s>=0&&"&"===h[s]){var c=r.create(i.create(t.line,l-1),t);for(var u in Le)if(n=";",a=void 0,(a=(e=u).length-n.length)>0?e.lastIndexOf(n)===a:0===a&&e===n){var p="&"+u;o.items.push({label:p,kind:I.Keyword,documentation:Fe("entity.propose","Character entity representing '"+Le[u]+"'"),textEdit:b.replace(c,p),insertTextFormat:H.PlainText})}}return o}for(var E,A=m.scan();A!==ie.EOS&&m.getTokenOffset()<=d;){switch(A){case ie.StartTagOpen:if(m.getTokenEnd()===d){var R=x(ie.StartTag);return 0===t.line&&(E=void 0,E=g(d,R),o.items.push({label:"!DOCTYPE",kind:I.Property,documentation:"A preamble for an HTML document.",textEdit:b.replace(E,"!DOCTYPE html>"),insertTextFormat:H.PlainText})),T(d,R)}break;case ie.StartTag:if(m.getTokenOffset()<=d&&d<=m.getTokenEnd())return _(m.getTokenOffset(),m.getTokenEnd());f=m.getTokenText();break;case ie.AttributeName:if(m.getTokenOffset()<=d&&d<=m.getTokenEnd())return k(m.getTokenOffset(),m.getTokenEnd());p=m.getTokenText();break;case ie.DelimiterAssign:if(m.getTokenEnd()===d){R=x(ie.AttributeValue);return S(d,R)}break;case ie.AttributeValue:if(m.getTokenOffset()<=d&&d<=m.getTokenEnd())return S(m.getTokenOffset(),m.getTokenEnd());break;case ie.Whitespace:if(d<=m.getTokenEnd())switch(m.getScannerState()){case re.AfterOpeningStartTag:return T(m.getTokenOffset(),x(ie.StartTag));case re.WithinTag:case re.AfterAttributeName:return k(m.getTokenEnd());case re.BeforeAttributeValue:return S(m.getTokenEnd());case re.AfterOpeningEndTag:return v(m.getTokenOffset()-1,!1);case re.WithinContent:return M()}break;case ie.EndTagOpen:if(d<=m.getTokenEnd())return v(m.getTokenOffset()+1,!1,x(ie.EndTag));break;case ie.EndTag:if(d<=m.getTokenEnd())for(var z=m.getTokenOffset()-1;z>=0;){var U=h.charAt(z);if("/"===U)return v(z,!1,m.getTokenEnd());if(!je(U))break;z--}break;case ie.StartTagClose:if(d<=m.getTokenEnd()&&f)return y(m.getTokenEnd(),f);break;case ie.Content:if(d<=m.getTokenEnd())return M();break;default:if(d<=m.getTokenEnd())return o}A=m.scan()}return o},e.prototype.doTagComplete=function(e,t,n){var i=e.offsetAt(t);if(i<=0)return null;var r=e.getText().charAt(i-1);if(">"===r){if((o=n.findNodeBefore(i))&&o.tag&&!Me(o.tag)&&o.start<i&&(!o.endTagStart||o.endTagStart>i))for(var a=(s=ke(e.getText(),o.start)).scan();a!==ie.EOS&&s.getTokenEnd()<=i;){if(a===ie.StartTagClose&&s.getTokenEnd()===i)return"$0</"+o.tag+">";a=s.scan()}}else if("/"===r){for(var o=n.findNodeBefore(i);o&&o.closed;)o=o.parent;if(o&&o.tag){var s;for(a=(s=ke(e.getText(),o.start)).scan();a!==ie.EOS&&s.getTokenEnd()<=i;){if(a===ie.EndTagOpen&&s.getTokenEnd()===i)return o.tag+">";a=s.scan()}}}return null},e.prototype.convertCompletionList=function(e){return this.doesSupportMarkdown()||e.items.forEach((function(e){e.documentation&&"string"!=typeof e.documentation&&(e.documentation={kind:"plaintext",value:e.documentation.value})})),e},e.prototype.doesSupportMarkdown=function(){if(!Oe(this.supportsMarkdown)){if(!Oe(this.clientCapabilities))return this.supportsMarkdown=!0,this.supportsMarkdown;var e=this.clientCapabilities&&this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.hover;this.supportsMarkdown=e&&e.contentFormat&&Array.isArray(e.contentFormat)&&-1!==e.contentFormat.indexOf(R.Markdown)}return this.supportsMarkdown}}();function je(e){return/^\s*$/.test(e)}function Be(e,t,n,i){for(var r=ke(e,t,n),a=r.scan();a===ie.Whitespace;)a=r.scan();return a===i}!function(){function e(e){this.clientCapabilities=e}e.prototype.doHover=function(e,t,n){var i=this.convertContents.bind(this),r=this.doesSupportMarkdown(),a=e.offsetAt(t),o=n.findNodeAt(a);if(!o||!o.tag)return null;var s=Pe().filter((function(t){return t.isApplicable(e.languageId)}));function l(e,t,n){e=e.toLowerCase();for(var a=function(a){var o=null;if(a.provideTags().forEach((function(i){if(i.name.toLowerCase()===e.toLowerCase()){var a=n?"<"+e+">":"</"+e+">",s=De(i,r);s.value="```html\n"+a+"\n```\n"+s.value,o={contents:s,range:t}}})),o)return o.contents=i(o.contents),{value:o}},o=0,l=s;o<l.length;o++){var c=a(l[o]);if("object"==typeof c)return c.value}return null}function c(t,n){for(var i=ke(e.getText(),n),r=i.scan();r!==ie.EOS&&(i.getTokenEnd()<a||i.getTokenEnd()===a&&r!==t);)r=i.scan();return r===t&&a<=i.getTokenEnd()?{start:e.positionAt(i.getTokenOffset()),end:e.positionAt(i.getTokenEnd())}:null}if(o.endTagStart&&a>=o.endTagStart){var h=c(ie.EndTag,o.endTagStart);return h?l(o.tag,h,!1):null}var d=c(ie.StartTag,o.start);if(d)return l(o.tag,d,!0);var u=c(ie.AttributeName,o.start);if(u)return function(e,t,n){e=e.toLowerCase();for(var a=function(a){var o=null;if(a.provideAttributes(e).forEach((function(e){t===e.name&&e.description&&(o={contents:De(e,r),range:n})})),o)return o.contents=i(o.contents),{value:o}},o=0,l=s;o<l.length;o++){var c=a(l[o]);if("object"==typeof c)return c.value}return null}(m=o.tag,e.getText(u),u);var p=c(ie.AttributeValue,o.start);if(p){var m=o.tag,f=function(e){if(e.length<=1)return e.replace(/['"]/,"");"'"!==e[0]&&'"'!==e[0]||(e=e.slice(1));"'"!==e[e.length-1]&&'"'!==e[e.length-1]||(e=e.slice(0,-1));return e}(e.getText(p)),g=function(t,n){for(var i=ke(e.getText(),t),r=i.scan(),a=void 0;r!==ie.EOS&&i.getTokenEnd()<=n;)(r=i.scan())===ie.AttributeName&&(a=i.getTokenText());return a}(o.start,e.offsetAt(p.start));if(g)return function(e,t,n,a){e=e.toLowerCase();for(var o=function(o){var s=null;if(o.provideValues(e,t).forEach((function(e){n===e.name&&e.description&&(s={contents:De(e,r),range:a})})),s)return s.contents=i(s.contents),{value:s}},l=0,c=s;l<c.length;l++){var h=o(c[l]);if("object"==typeof h)return h.value}return null}(m,g,f,p)}return null},e.prototype.convertContents=function(e){if(!this.doesSupportMarkdown()){if("string"==typeof e)return e;if("kind"in e)return{kind:"plaintext",value:e.value};if(!Array.isArray(e))return e.value;e.map((function(e){return"string"==typeof e?e:e.value}))}return e},e.prototype.doesSupportMarkdown=function(){if(!Oe(this.supportsMarkdown)){if(!Oe(this.clientCapabilities))return this.supportsMarkdown=!0,this.supportsMarkdown;var e=this.clientCapabilities&&this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.hover;this.supportsMarkdown=e&&e.contentFormat&&Array.isArray(e.contentFormat)&&-1!==e.contentFormat.indexOf(R.Markdown)}return this.supportsMarkdown}}();(function(e){var t={};function n(i){if(t[i])return t[i].exports;var r=t[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(i,r,function(t){return e[t]}.bind(null,r));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=15)})([,,function(e,t,n){function i(e){this.__parent=e,this.__character_count=0,this.__indent_count=-1,this.__alignment_count=0,this.__wrap_point_index=0,this.__wrap_point_character_count=0,this.__wrap_point_indent_count=-1,this.__wrap_point_alignment_count=0,this.__items=[]}function r(e,t){this.__cache=[""],this.__indent_size=e.indent_size,this.__indent_string=e.indent_char,e.indent_with_tabs||(this.__indent_string=new Array(e.indent_size+1).join(e.indent_char)),t=t||"",e.indent_level>0&&(t=new Array(e.indent_level+1).join(this.__indent_string)),this.__base_string=t,this.__base_string_length=t.length}function a(e,t){this.__indent_cache=new r(e,t),this.raw=!1,this._end_with_newline=e.end_with_newline,this.indent_size=e.indent_size,this.wrap_line_length=e.wrap_line_length,this.indent_empty_lines=e.indent_empty_lines,this.__lines=[],this.previous_line=null,this.current_line=null,this.next_line=new i(this),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1,this.__add_outputline()}i.prototype.clone_empty=function(){var e=new i(this.__parent);return e.set_indent(this.__indent_count,this.__alignment_count),e},i.prototype.item=function(e){return e<0?this.__items[this.__items.length+e]:this.__items[e]},i.prototype.has_match=function(e){for(var t=this.__items.length-1;t>=0;t--)if(this.__items[t].match(e))return!0;return!1},i.prototype.set_indent=function(e,t){this.is_empty()&&(this.__indent_count=e||0,this.__alignment_count=t||0,this.__character_count=this.__parent.get_indent_size(this.__indent_count,this.__alignment_count))},i.prototype._set_wrap_point=function(){this.__parent.wrap_line_length&&(this.__wrap_point_index=this.__items.length,this.__wrap_point_character_count=this.__character_count,this.__wrap_point_indent_count=this.__parent.next_line.__indent_count,this.__wrap_point_alignment_count=this.__parent.next_line.__alignment_count)},i.prototype._should_wrap=function(){return this.__wrap_point_index&&this.__character_count>this.__parent.wrap_line_length&&this.__wrap_point_character_count>this.__parent.next_line.__character_count},i.prototype._allow_wrap=function(){if(this._should_wrap()){this.__parent.add_new_line();var e=this.__parent.current_line;return e.set_indent(this.__wrap_point_indent_count,this.__wrap_point_alignment_count),e.__items=this.__items.slice(this.__wrap_point_index),this.__items=this.__items.slice(0,this.__wrap_point_index),e.__character_count+=this.__character_count-this.__wrap_point_character_count,this.__character_count=this.__wrap_point_character_count," "===e.__items[0]&&(e.__items.splice(0,1),e.__character_count-=1),!0}return!1},i.prototype.is_empty=function(){return 0===this.__items.length},i.prototype.last=function(){return this.is_empty()?null:this.__items[this.__items.length-1]},i.prototype.push=function(e){this.__items.push(e);var t=e.lastIndexOf("\n");-1!==t?this.__character_count=e.length-t:this.__character_count+=e.length},i.prototype.pop=function(){var e=null;return this.is_empty()||(e=this.__items.pop(),this.__character_count-=e.length),e},i.prototype._remove_indent=function(){this.__indent_count>0&&(this.__indent_count-=1,this.__character_count-=this.__parent.indent_size)},i.prototype._remove_wrap_indent=function(){this.__wrap_point_indent_count>0&&(this.__wrap_point_indent_count-=1)},i.prototype.trim=function(){for(;" "===this.last();)this.__items.pop(),this.__character_count-=1},i.prototype.toString=function(){var e="";return this.is_empty()?this.__parent.indent_empty_lines&&(e=this.__parent.get_indent_string(this.__indent_count)):(e=this.__parent.get_indent_string(this.__indent_count,this.__alignment_count),e+=this.__items.join("")),e},r.prototype.get_indent_size=function(e,t){var n=this.__base_string_length;return t=t||0,e<0&&(n=0),n+=e*this.__indent_size,n+=t},r.prototype.get_indent_string=function(e,t){var n=this.__base_string;return t=t||0,e<0&&(e=0,n=""),t+=e*this.__indent_size,this.__ensure_cache(t),n+=this.__cache[t]},r.prototype.__ensure_cache=function(e){for(;e>=this.__cache.length;)this.__add_column()},r.prototype.__add_column=function(){var e=this.__cache.length,t=0,n="";this.__indent_size&&e>=this.__indent_size&&(e-=(t=Math.floor(e/this.__indent_size))*this.__indent_size,n=new Array(t+1).join(this.__indent_string)),e&&(n+=new Array(e+1).join(" ")),this.__cache.push(n)},a.prototype.__add_outputline=function(){this.previous_line=this.current_line,this.current_line=this.next_line.clone_empty(),this.__lines.push(this.current_line)},a.prototype.get_line_number=function(){return this.__lines.length},a.prototype.get_indent_string=function(e,t){return this.__indent_cache.get_indent_string(e,t)},a.prototype.get_indent_size=function(e,t){return this.__indent_cache.get_indent_size(e,t)},a.prototype.is_empty=function(){return!this.previous_line&&this.current_line.is_empty()},a.prototype.add_new_line=function(e){return!(this.is_empty()||!e&&this.just_added_newline())&&(this.raw||this.__add_outputline(),!0)},a.prototype.get_code=function(e){this.trim(!0);var t=this.current_line.pop();t&&("\n"===t[t.length-1]&&(t=t.replace(/\n+$/g,"")),this.current_line.push(t)),this._end_with_newline&&this.__add_outputline();var n=this.__lines.join("\n");return"\n"!==e&&(n=n.replace(/[\n]/g,e)),n},a.prototype.set_wrap_point=function(){this.current_line._set_wrap_point()},a.prototype.set_indent=function(e,t){return e=e||0,t=t||0,this.next_line.set_indent(e,t),this.__lines.length>1?(this.current_line.set_indent(e,t),!0):(this.current_line.set_indent(),!1)},a.prototype.add_raw_token=function(e){for(var t=0;t<e.newlines;t++)this.__add_outputline();this.current_line.set_indent(-1),this.current_line.push(e.whitespace_before),this.current_line.push(e.text),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1},a.prototype.add_token=function(e){this.__add_space_before_token(),this.current_line.push(e),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=this.current_line._allow_wrap()},a.prototype.__add_space_before_token=function(){this.space_before_token&&!this.just_added_newline()&&(this.non_breaking_space||this.set_wrap_point(),this.current_line.push(" "))},a.prototype.remove_indent=function(e){for(var t=this.__lines.length;e<t;)this.__lines[e]._remove_indent(),e++;this.current_line._remove_wrap_indent()},a.prototype.trim=function(e){for(e=void 0!==e&&e,this.current_line.trim();e&&this.__lines.length>1&&this.current_line.is_empty();)this.__lines.pop(),this.current_line=this.__lines[this.__lines.length-1],this.current_line.trim();this.previous_line=this.__lines.length>1?this.__lines[this.__lines.length-2]:null},a.prototype.just_added_newline=function(){return this.current_line.is_empty()},a.prototype.just_added_blankline=function(){return this.is_empty()||this.current_line.is_empty()&&this.previous_line.is_empty()},a.prototype.ensure_empty_line_above=function(e,t){for(var n=this.__lines.length-2;n>=0;){var r=this.__lines[n];if(r.is_empty())break;if(0!==r.item(0).indexOf(e)&&r.item(-1)!==t){this.__lines.splice(n+1,0,new i(this)),this.previous_line=this.__lines[this.__lines.length-2];break}n--}},e.exports.Output=a},,,,function(e,t,n){function i(e,t){this.raw_options=r(e,t),this.disabled=this._get_boolean("disabled"),this.eol=this._get_characters("eol","auto"),this.end_with_newline=this._get_boolean("end_with_newline"),this.indent_size=this._get_number("indent_size",4),this.indent_char=this._get_characters("indent_char"," "),this.indent_level=this._get_number("indent_level"),this.preserve_newlines=this._get_boolean("preserve_newlines",!0),this.max_preserve_newlines=this._get_number("max_preserve_newlines",32786),this.preserve_newlines||(this.max_preserve_newlines=0),this.indent_with_tabs=this._get_boolean("indent_with_tabs","\t"===this.indent_char),this.indent_with_tabs&&(this.indent_char="\t",1===this.indent_size&&(this.indent_size=4)),this.wrap_line_length=this._get_number("wrap_line_length",this._get_number("max_char")),this.indent_empty_lines=this._get_boolean("indent_empty_lines"),this.templating=this._get_selection_list("templating",["auto","none","django","erb","handlebars","php"],["auto"])}function r(e,t){var n,i={};for(n in e=a(e))n!==t&&(i[n]=e[n]);if(t&&e[t])for(n in e[t])i[n]=e[t][n];return i}function a(e){var t,n={};for(t in e){n[t.replace(/-/g,"_")]=e[t]}return n}i.prototype._get_array=function(e,t){var n=this.raw_options[e],i=t||[];return"object"==typeof n?null!==n&&"function"==typeof n.concat&&(i=n.concat()):"string"==typeof n&&(i=n.split(/[^a-zA-Z0-9_\/\-]+/)),i},i.prototype._get_boolean=function(e,t){var n=this.raw_options[e];return void 0===n?!!t:!!n},i.prototype._get_characters=function(e,t){var n=this.raw_options[e],i=t||"";return"string"==typeof n&&(i=n.replace(/\\r/,"\r").replace(/\\n/,"\n").replace(/\\t/,"\t")),i},i.prototype._get_number=function(e,t){var n=this.raw_options[e];t=parseInt(t,10),isNaN(t)&&(t=0);var i=parseInt(n,10);return isNaN(i)&&(i=t),i},i.prototype._get_selection=function(e,t,n){var i=this._get_selection_list(e,t,n);if(1!==i.length)throw new Error("Invalid Option Value: The option '"+e+"' can only be one of the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i[0]},i.prototype._get_selection_list=function(e,t,n){if(!t||0===t.length)throw new Error("Selection list cannot be empty.");if(n=n||[t[0]],!this._is_valid_selection(n,t))throw new Error("Invalid Default Value!");var i=this._get_array(e,n);if(!this._is_valid_selection(i,t))throw new Error("Invalid Option Value: The option '"+e+"' can contain only the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i},i.prototype._is_valid_selection=function(e,t){return e.length&&t.length&&!e.some((function(e){return-1===t.indexOf(e)}))},e.exports.Options=i,e.exports.normalizeOpts=a,e.exports.mergeOpts=r},,function(e,t,n){var i=RegExp.prototype.hasOwnProperty("sticky");function r(e){this.__input=e||"",this.__input_length=this.__input.length,this.__position=0}r.prototype.restart=function(){this.__position=0},r.prototype.back=function(){this.__position>0&&(this.__position-=1)},r.prototype.hasNext=function(){return this.__position<this.__input_length},r.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__input.charAt(this.__position),this.__position+=1),e},r.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__input_length&&(t=this.__input.charAt(e)),t},r.prototype.__match=function(e,t){e.lastIndex=t;var n=e.exec(this.__input);return!n||i&&e.sticky||n.index!==t&&(n=null),n},r.prototype.test=function(e,t){return t=t||0,(t+=this.__position)>=0&&t<this.__input_length&&!!this.__match(e,t)},r.prototype.testChar=function(e,t){var n=this.peek(t);return e.lastIndex=0,null!==n&&e.test(n)},r.prototype.match=function(e){var t=this.__match(e,this.__position);return t?this.__position+=t[0].length:t=null,t},r.prototype.read=function(e,t,n){var i,r="";return e&&(i=this.match(e))&&(r+=i[0]),!t||!i&&e||(r+=this.readUntil(t,n)),r},r.prototype.readUntil=function(e,t){var n,i=this.__position;e.lastIndex=this.__position;var r=e.exec(this.__input);return r?(i=r.index,t&&(i+=r[0].length)):i=this.__input_length,n=this.__input.substring(this.__position,i),this.__position=i,n},r.prototype.readUntilAfter=function(e){return this.readUntil(e,!0)},r.prototype.get_regexp=function(e,t){var n=null,r="g";return t&&i&&(r="y"),"string"==typeof e&&""!==e?n=new RegExp(e,r):e&&(n=new RegExp(e.source,r)),n},r.prototype.get_literal_regexp=function(e){return RegExp(e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"))},r.prototype.peekUntilAfter=function(e){var t=this.__position,n=this.readUntilAfter(e);return this.__position=t,n},r.prototype.lookBack=function(e){var t=this.__position-1;return t>=e.length&&this.__input.substring(t-e.length,t).toLowerCase()===e},e.exports.InputScanner=r},,,,,function(e,t,n){function i(e,t){e="string"==typeof e?e:e.source,t="string"==typeof t?t:t.source,this.__directives_block_pattern=new RegExp(e+/ beautify( \w+[:]\w+)+ /.source+t,"g"),this.__directive_pattern=/ (\w+)[:](\w+)/g,this.__directives_end_ignore_pattern=new RegExp(e+/\sbeautify\signore:end\s/.source+t,"g")}i.prototype.get_directives=function(e){if(!e.match(this.__directives_block_pattern))return null;var t={};this.__directive_pattern.lastIndex=0;for(var n=this.__directive_pattern.exec(e);n;)t[n[1]]=n[2],n=this.__directive_pattern.exec(e);return t},i.prototype.readIgnored=function(e){return e.readUntilAfter(this.__directives_end_ignore_pattern)},e.exports.Directives=i},,function(e,t,n){var i=n(16).Beautifier,r=n(17).Options;e.exports=function(e,t){return new i(e,t).beautify()},e.exports.defaultOptions=function(){return new r}},function(e,t,n){var i=n(17).Options,r=n(2).Output,a=n(8).InputScanner,o=new(0,n(13).Directives)(/\/\*/,/\*\//),s=/\r\n|[\r\n]/,l=/\r\n|[\r\n]/g,c=/\s/,h=/(?:\s|\n)+/g,d=/\/\*(?:[\s\S]*?)((?:\*\/)|$)/g,u=/\/\/(?:[^\n\r\u2028\u2029]*)/g;function p(e,t){this._source_text=e||"",this._options=new i(t),this._ch=null,this._input=null,this.NESTED_AT_RULE={"@page":!0,"@font-face":!0,"@keyframes":!0,"@media":!0,"@supports":!0,"@document":!0},this.CONDITIONAL_GROUP_RULE={"@media":!0,"@supports":!0,"@document":!0}}p.prototype.eatString=function(e){var t="";for(this._ch=this._input.next();this._ch;){if(t+=this._ch,"\\"===this._ch)t+=this._input.next();else if(-1!==e.indexOf(this._ch)||"\n"===this._ch)break;this._ch=this._input.next()}return t},p.prototype.eatWhitespace=function(e){for(var t=c.test(this._input.peek()),n=!0;c.test(this._input.peek());)this._ch=this._input.next(),e&&"\n"===this._ch&&(this._options.preserve_newlines||n)&&(n=!1,this._output.add_new_line(!0));return t},p.prototype.foundNestedPseudoClass=function(){for(var e=0,t=1,n=this._input.peek(t);n;){if("{"===n)return!0;if("("===n)e+=1;else if(")"===n){if(0===e)return!1;e-=1}else if(";"===n||"}"===n)return!1;t++,n=this._input.peek(t)}return!1},p.prototype.print_string=function(e){this._output.set_indent(this._indentLevel),this._output.non_breaking_space=!0,this._output.add_token(e)},p.prototype.preserveSingleSpace=function(e){e&&(this._output.space_before_token=!0)},p.prototype.indent=function(){this._indentLevel++},p.prototype.outdent=function(){this._indentLevel>0&&this._indentLevel--},p.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var e=this._source_text,t=this._options.eol;"auto"===t&&(t="\n",e&&s.test(e||"")&&(t=e.match(s)[0]));var n=(e=e.replace(l,"\n")).match(/^[\t ]*/)[0];this._output=new r(this._options,n),this._input=new a(e),this._indentLevel=0,this._nestedLevel=0,this._ch=null;for(var i,p,m=0,f=!1,g=!1,b=!1,_=!1,w=!1,v=this._ch;i=""!==this._input.read(h),p=v,this._ch=this._input.next(),"\\"===this._ch&&this._input.hasNext()&&(this._ch+=this._input.next()),v=this._ch,this._ch;)if("/"===this._ch&&"*"===this._input.peek()){this._output.add_new_line(),this._input.back();var y=this._input.read(d),T=o.get_directives(y);T&&"start"===T.ignore&&(y+=o.readIgnored(this._input)),this.print_string(y),this.eatWhitespace(!0),this._output.add_new_line()}else if("/"===this._ch&&"/"===this._input.peek())this._output.space_before_token=!0,this._input.back(),this.print_string(this._input.read(u)),this.eatWhitespace(!0);else if("@"===this._ch)if(this.preserveSingleSpace(i),"{"===this._input.peek())this.print_string(this._ch+this.eatString("}"));else{this.print_string(this._ch);var k=this._input.peekUntilAfter(/[: ,;{}()[\]\/='"]/g);k.match(/[ :]$/)&&(k=this.eatString(": ").replace(/\s$/,""),this.print_string(k),this._output.space_before_token=!0),"extend"===(k=k.replace(/\s$/,""))?_=!0:"import"===k&&(w=!0),k in this.NESTED_AT_RULE?(this._nestedLevel+=1,k in this.CONDITIONAL_GROUP_RULE&&(b=!0)):f||0!==m||-1===k.indexOf(":")||(g=!0,this.indent())}else"#"===this._ch&&"{"===this._input.peek()?(this.preserveSingleSpace(i),this.print_string(this._ch+this.eatString("}"))):"{"===this._ch?(g&&(g=!1,this.outdent()),this.indent(),this._output.space_before_token=!0,this.print_string(this._ch),b?(b=!1,f=this._indentLevel>this._nestedLevel):f=this._indentLevel>=this._nestedLevel,this._options.newline_between_rules&&f&&this._output.previous_line&&"{"!==this._output.previous_line.item(-1)&&this._output.ensure_empty_line_above("/",","),this.eatWhitespace(!0),this._output.add_new_line()):"}"===this._ch?(this.outdent(),this._output.add_new_line(),"{"===p&&this._output.trim(!0),w=!1,_=!1,g&&(this.outdent(),g=!1),this.print_string(this._ch),f=!1,this._nestedLevel&&this._nestedLevel--,this.eatWhitespace(!0),this._output.add_new_line(),this._options.newline_between_rules&&!this._output.just_added_blankline()&&"}"!==this._input.peek()&&this._output.add_new_line(!0)):":"===this._ch?!f&&!b||this._input.lookBack("&")||this.foundNestedPseudoClass()||this._input.lookBack("(")||_||0!==m?(this._input.lookBack(" ")&&(this._output.space_before_token=!0),":"===this._input.peek()?(this._ch=this._input.next(),this.print_string("::")):this.print_string(":")):(this.print_string(":"),g||(g=!0,this._output.space_before_token=!0,this.eatWhitespace(!0),this.indent())):'"'===this._ch||"'"===this._ch?(this.preserveSingleSpace(i),this.print_string(this._ch+this.eatString(this._ch)),this.eatWhitespace(!0)):";"===this._ch?0===m?(g&&(this.outdent(),g=!1),_=!1,w=!1,this.print_string(this._ch),this.eatWhitespace(!0),"/"!==this._input.peek()&&this._output.add_new_line()):(this.print_string(this._ch),this.eatWhitespace(!0),this._output.space_before_token=!0):"("===this._ch?this._input.lookBack("url")?(this.print_string(this._ch),this.eatWhitespace(),m++,this.indent(),this._ch=this._input.next(),")"===this._ch||'"'===this._ch||"'"===this._ch?this._input.back():this._ch&&(this.print_string(this._ch+this.eatString(")")),m&&(m--,this.outdent()))):(this.preserveSingleSpace(i),this.print_string(this._ch),this.eatWhitespace(),m++,this.indent()):")"===this._ch?(m&&(m--,this.outdent()),this.print_string(this._ch)):","===this._ch?(this.print_string(this._ch),this.eatWhitespace(!0),!this._options.selector_separator_newline||g||0!==m||w?this._output.space_before_token=!0:this._output.add_new_line()):">"!==this._ch&&"+"!==this._ch&&"~"!==this._ch||g||0!==m?"]"===this._ch?this.print_string(this._ch):"["===this._ch?(this.preserveSingleSpace(i),this.print_string(this._ch)):"="===this._ch?(this.eatWhitespace(),this.print_string("="),c.test(this._ch)&&(this._ch="")):"!"!==this._ch||this._input.lookBack("\\")?(this.preserveSingleSpace(i),this.print_string(this._ch)):(this.print_string(" "),this.print_string(this._ch)):this._options.space_around_combinator?(this._output.space_before_token=!0,this.print_string(this._ch),this._output.space_before_token=!0):(this.print_string(this._ch),this.eatWhitespace(),this._ch&&c.test(this._ch)&&(this._ch=""));return this._output.get_code(t)},e.exports.Beautifier=p},function(e,t,n){var i=n(6).Options;function r(e){i.call(this,e,"css"),this.selector_separator_newline=this._get_boolean("selector_separator_newline",!0),this.newline_between_rules=this._get_boolean("newline_between_rules",!0);var t=this._get_boolean("space_around_selector_separator");this.space_around_combinator=this._get_boolean("space_around_combinator")||t}r.prototype=new i,e.exports.Options=r}]),function(e){var t={};function n(i){if(t[i])return t[i].exports;var r=t[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(i,r,function(t){return e[t]}.bind(null,r));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=18)}([,,function(e,t,n){function i(e){this.__parent=e,this.__character_count=0,this.__indent_count=-1,this.__alignment_count=0,this.__wrap_point_index=0,this.__wrap_point_character_count=0,this.__wrap_point_indent_count=-1,this.__wrap_point_alignment_count=0,this.__items=[]}function r(e,t){this.__cache=[""],this.__indent_size=e.indent_size,this.__indent_string=e.indent_char,e.indent_with_tabs||(this.__indent_string=new Array(e.indent_size+1).join(e.indent_char)),t=t||"",e.indent_level>0&&(t=new Array(e.indent_level+1).join(this.__indent_string)),this.__base_string=t,this.__base_string_length=t.length}function a(e,t){this.__indent_cache=new r(e,t),this.raw=!1,this._end_with_newline=e.end_with_newline,this.indent_size=e.indent_size,this.wrap_line_length=e.wrap_line_length,this.indent_empty_lines=e.indent_empty_lines,this.__lines=[],this.previous_line=null,this.current_line=null,this.next_line=new i(this),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1,this.__add_outputline()}i.prototype.clone_empty=function(){var e=new i(this.__parent);return e.set_indent(this.__indent_count,this.__alignment_count),e},i.prototype.item=function(e){return e<0?this.__items[this.__items.length+e]:this.__items[e]},i.prototype.has_match=function(e){for(var t=this.__items.length-1;t>=0;t--)if(this.__items[t].match(e))return!0;return!1},i.prototype.set_indent=function(e,t){this.is_empty()&&(this.__indent_count=e||0,this.__alignment_count=t||0,this.__character_count=this.__parent.get_indent_size(this.__indent_count,this.__alignment_count))},i.prototype._set_wrap_point=function(){this.__parent.wrap_line_length&&(this.__wrap_point_index=this.__items.length,this.__wrap_point_character_count=this.__character_count,this.__wrap_point_indent_count=this.__parent.next_line.__indent_count,this.__wrap_point_alignment_count=this.__parent.next_line.__alignment_count)},i.prototype._should_wrap=function(){return this.__wrap_point_index&&this.__character_count>this.__parent.wrap_line_length&&this.__wrap_point_character_count>this.__parent.next_line.__character_count},i.prototype._allow_wrap=function(){if(this._should_wrap()){this.__parent.add_new_line();var e=this.__parent.current_line;return e.set_indent(this.__wrap_point_indent_count,this.__wrap_point_alignment_count),e.__items=this.__items.slice(this.__wrap_point_index),this.__items=this.__items.slice(0,this.__wrap_point_index),e.__character_count+=this.__character_count-this.__wrap_point_character_count,this.__character_count=this.__wrap_point_character_count," "===e.__items[0]&&(e.__items.splice(0,1),e.__character_count-=1),!0}return!1},i.prototype.is_empty=function(){return 0===this.__items.length},i.prototype.last=function(){return this.is_empty()?null:this.__items[this.__items.length-1]},i.prototype.push=function(e){this.__items.push(e);var t=e.lastIndexOf("\n");-1!==t?this.__character_count=e.length-t:this.__character_count+=e.length},i.prototype.pop=function(){var e=null;return this.is_empty()||(e=this.__items.pop(),this.__character_count-=e.length),e},i.prototype._remove_indent=function(){this.__indent_count>0&&(this.__indent_count-=1,this.__character_count-=this.__parent.indent_size)},i.prototype._remove_wrap_indent=function(){this.__wrap_point_indent_count>0&&(this.__wrap_point_indent_count-=1)},i.prototype.trim=function(){for(;" "===this.last();)this.__items.pop(),this.__character_count-=1},i.prototype.toString=function(){var e="";return this.is_empty()?this.__parent.indent_empty_lines&&(e=this.__parent.get_indent_string(this.__indent_count)):(e=this.__parent.get_indent_string(this.__indent_count,this.__alignment_count),e+=this.__items.join("")),e},r.prototype.get_indent_size=function(e,t){var n=this.__base_string_length;return t=t||0,e<0&&(n=0),n+=e*this.__indent_size,n+=t},r.prototype.get_indent_string=function(e,t){var n=this.__base_string;return t=t||0,e<0&&(e=0,n=""),t+=e*this.__indent_size,this.__ensure_cache(t),n+=this.__cache[t]},r.prototype.__ensure_cache=function(e){for(;e>=this.__cache.length;)this.__add_column()},r.prototype.__add_column=function(){var e=this.__cache.length,t=0,n="";this.__indent_size&&e>=this.__indent_size&&(e-=(t=Math.floor(e/this.__indent_size))*this.__indent_size,n=new Array(t+1).join(this.__indent_string)),e&&(n+=new Array(e+1).join(" ")),this.__cache.push(n)},a.prototype.__add_outputline=function(){this.previous_line=this.current_line,this.current_line=this.next_line.clone_empty(),this.__lines.push(this.current_line)},a.prototype.get_line_number=function(){return this.__lines.length},a.prototype.get_indent_string=function(e,t){return this.__indent_cache.get_indent_string(e,t)},a.prototype.get_indent_size=function(e,t){return this.__indent_cache.get_indent_size(e,t)},a.prototype.is_empty=function(){return!this.previous_line&&this.current_line.is_empty()},a.prototype.add_new_line=function(e){return!(this.is_empty()||!e&&this.just_added_newline())&&(this.raw||this.__add_outputline(),!0)},a.prototype.get_code=function(e){this.trim(!0);var t=this.current_line.pop();t&&("\n"===t[t.length-1]&&(t=t.replace(/\n+$/g,"")),this.current_line.push(t)),this._end_with_newline&&this.__add_outputline();var n=this.__lines.join("\n");return"\n"!==e&&(n=n.replace(/[\n]/g,e)),n},a.prototype.set_wrap_point=function(){this.current_line._set_wrap_point()},a.prototype.set_indent=function(e,t){return e=e||0,t=t||0,this.next_line.set_indent(e,t),this.__lines.length>1?(this.current_line.set_indent(e,t),!0):(this.current_line.set_indent(),!1)},a.prototype.add_raw_token=function(e){for(var t=0;t<e.newlines;t++)this.__add_outputline();this.current_line.set_indent(-1),this.current_line.push(e.whitespace_before),this.current_line.push(e.text),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1},a.prototype.add_token=function(e){this.__add_space_before_token(),this.current_line.push(e),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=this.current_line._allow_wrap()},a.prototype.__add_space_before_token=function(){this.space_before_token&&!this.just_added_newline()&&(this.non_breaking_space||this.set_wrap_point(),this.current_line.push(" "))},a.prototype.remove_indent=function(e){for(var t=this.__lines.length;e<t;)this.__lines[e]._remove_indent(),e++;this.current_line._remove_wrap_indent()},a.prototype.trim=function(e){for(e=void 0!==e&&e,this.current_line.trim();e&&this.__lines.length>1&&this.current_line.is_empty();)this.__lines.pop(),this.current_line=this.__lines[this.__lines.length-1],this.current_line.trim();this.previous_line=this.__lines.length>1?this.__lines[this.__lines.length-2]:null},a.prototype.just_added_newline=function(){return this.current_line.is_empty()},a.prototype.just_added_blankline=function(){return this.is_empty()||this.current_line.is_empty()&&this.previous_line.is_empty()},a.prototype.ensure_empty_line_above=function(e,t){for(var n=this.__lines.length-2;n>=0;){var r=this.__lines[n];if(r.is_empty())break;if(0!==r.item(0).indexOf(e)&&r.item(-1)!==t){this.__lines.splice(n+1,0,new i(this)),this.previous_line=this.__lines[this.__lines.length-2];break}n--}},e.exports.Output=a},function(e,t,n){e.exports.Token=function(e,t,n,i){this.type=e,this.text=t,this.comments_before=null,this.newlines=n||0,this.whitespace_before=i||"",this.parent=null,this.next=null,this.previous=null,this.opened=null,this.closed=null,this.directives=null}},,,function(e,t,n){function i(e,t){this.raw_options=r(e,t),this.disabled=this._get_boolean("disabled"),this.eol=this._get_characters("eol","auto"),this.end_with_newline=this._get_boolean("end_with_newline"),this.indent_size=this._get_number("indent_size",4),this.indent_char=this._get_characters("indent_char"," "),this.indent_level=this._get_number("indent_level"),this.preserve_newlines=this._get_boolean("preserve_newlines",!0),this.max_preserve_newlines=this._get_number("max_preserve_newlines",32786),this.preserve_newlines||(this.max_preserve_newlines=0),this.indent_with_tabs=this._get_boolean("indent_with_tabs","\t"===this.indent_char),this.indent_with_tabs&&(this.indent_char="\t",1===this.indent_size&&(this.indent_size=4)),this.wrap_line_length=this._get_number("wrap_line_length",this._get_number("max_char")),this.indent_empty_lines=this._get_boolean("indent_empty_lines"),this.templating=this._get_selection_list("templating",["auto","none","django","erb","handlebars","php"],["auto"])}function r(e,t){var n,i={};for(n in e=a(e))n!==t&&(i[n]=e[n]);if(t&&e[t])for(n in e[t])i[n]=e[t][n];return i}function a(e){var t,n={};for(t in e){n[t.replace(/-/g,"_")]=e[t]}return n}i.prototype._get_array=function(e,t){var n=this.raw_options[e],i=t||[];return"object"==typeof n?null!==n&&"function"==typeof n.concat&&(i=n.concat()):"string"==typeof n&&(i=n.split(/[^a-zA-Z0-9_\/\-]+/)),i},i.prototype._get_boolean=function(e,t){var n=this.raw_options[e];return void 0===n?!!t:!!n},i.prototype._get_characters=function(e,t){var n=this.raw_options[e],i=t||"";return"string"==typeof n&&(i=n.replace(/\\r/,"\r").replace(/\\n/,"\n").replace(/\\t/,"\t")),i},i.prototype._get_number=function(e,t){var n=this.raw_options[e];t=parseInt(t,10),isNaN(t)&&(t=0);var i=parseInt(n,10);return isNaN(i)&&(i=t),i},i.prototype._get_selection=function(e,t,n){var i=this._get_selection_list(e,t,n);if(1!==i.length)throw new Error("Invalid Option Value: The option '"+e+"' can only be one of the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i[0]},i.prototype._get_selection_list=function(e,t,n){if(!t||0===t.length)throw new Error("Selection list cannot be empty.");if(n=n||[t[0]],!this._is_valid_selection(n,t))throw new Error("Invalid Default Value!");var i=this._get_array(e,n);if(!this._is_valid_selection(i,t))throw new Error("Invalid Option Value: The option '"+e+"' can contain only the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i},i.prototype._is_valid_selection=function(e,t){return e.length&&t.length&&!e.some((function(e){return-1===t.indexOf(e)}))},e.exports.Options=i,e.exports.normalizeOpts=a,e.exports.mergeOpts=r},,function(e,t,n){var i=RegExp.prototype.hasOwnProperty("sticky");function r(e){this.__input=e||"",this.__input_length=this.__input.length,this.__position=0}r.prototype.restart=function(){this.__position=0},r.prototype.back=function(){this.__position>0&&(this.__position-=1)},r.prototype.hasNext=function(){return this.__position<this.__input_length},r.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__input.charAt(this.__position),this.__position+=1),e},r.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__input_length&&(t=this.__input.charAt(e)),t},r.prototype.__match=function(e,t){e.lastIndex=t;var n=e.exec(this.__input);return!n||i&&e.sticky||n.index!==t&&(n=null),n},r.prototype.test=function(e,t){return t=t||0,(t+=this.__position)>=0&&t<this.__input_length&&!!this.__match(e,t)},r.prototype.testChar=function(e,t){var n=this.peek(t);return e.lastIndex=0,null!==n&&e.test(n)},r.prototype.match=function(e){var t=this.__match(e,this.__position);return t?this.__position+=t[0].length:t=null,t},r.prototype.read=function(e,t,n){var i,r="";return e&&(i=this.match(e))&&(r+=i[0]),!t||!i&&e||(r+=this.readUntil(t,n)),r},r.prototype.readUntil=function(e,t){var n,i=this.__position;e.lastIndex=this.__position;var r=e.exec(this.__input);return r?(i=r.index,t&&(i+=r[0].length)):i=this.__input_length,n=this.__input.substring(this.__position,i),this.__position=i,n},r.prototype.readUntilAfter=function(e){return this.readUntil(e,!0)},r.prototype.get_regexp=function(e,t){var n=null,r="g";return t&&i&&(r="y"),"string"==typeof e&&""!==e?n=new RegExp(e,r):e&&(n=new RegExp(e.source,r)),n},r.prototype.get_literal_regexp=function(e){return RegExp(e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"))},r.prototype.peekUntilAfter=function(e){var t=this.__position,n=this.readUntilAfter(e);return this.__position=t,n},r.prototype.lookBack=function(e){var t=this.__position-1;return t>=e.length&&this.__input.substring(t-e.length,t).toLowerCase()===e},e.exports.InputScanner=r},function(e,t,n){var i=n(8).InputScanner,r=n(3).Token,a=n(10).TokenStream,o=n(11).WhitespacePattern,s={START:"TK_START",RAW:"TK_RAW",EOF:"TK_EOF"},l=function(e,t){this._input=new i(e),this._options=t||{},this.__tokens=null,this._patterns={},this._patterns.whitespace=new o(this._input)};l.prototype.tokenize=function(){var e;this._input.restart(),this.__tokens=new a,this._reset();for(var t=new r(s.START,""),n=null,i=[],o=new a;t.type!==s.EOF;){for(e=this._get_next_token(t,n);this._is_comment(e);)o.add(e),e=this._get_next_token(t,n);o.isEmpty()||(e.comments_before=o,o=new a),e.parent=n,this._is_opening(e)?(i.push(n),n=e):n&&this._is_closing(e,n)&&(e.opened=n,n.closed=e,n=i.pop(),e.parent=n),e.previous=t,t.next=e,this.__tokens.add(e),t=e}return this.__tokens},l.prototype._is_first_token=function(){return this.__tokens.isEmpty()},l.prototype._reset=function(){},l.prototype._get_next_token=function(e,t){this._readWhitespace();var n=this._input.read(/.+/g);return n?this._create_token(s.RAW,n):this._create_token(s.EOF,"")},l.prototype._is_comment=function(e){return!1},l.prototype._is_opening=function(e){return!1},l.prototype._is_closing=function(e,t){return!1},l.prototype._create_token=function(e,t){return new r(e,t,this._patterns.whitespace.newline_count,this._patterns.whitespace.whitespace_before_token)},l.prototype._readWhitespace=function(){return this._patterns.whitespace.read()},e.exports.Tokenizer=l,e.exports.TOKEN=s},function(e,t,n){function i(e){this.__tokens=[],this.__tokens_length=this.__tokens.length,this.__position=0,this.__parent_token=e}i.prototype.restart=function(){this.__position=0},i.prototype.isEmpty=function(){return 0===this.__tokens_length},i.prototype.hasNext=function(){return this.__position<this.__tokens_length},i.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__tokens[this.__position],this.__position+=1),e},i.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__tokens_length&&(t=this.__tokens[e]),t},i.prototype.add=function(e){this.__parent_token&&(e.parent=this.__parent_token),this.__tokens.push(e),this.__tokens_length+=1},e.exports.TokenStream=i},function(e,t,n){var i=n(12).Pattern;function r(e,t){i.call(this,e,t),t?this._line_regexp=this._input.get_regexp(t._line_regexp):this.__set_whitespace_patterns("",""),this.newline_count=0,this.whitespace_before_token=""}r.prototype=new i,r.prototype.__set_whitespace_patterns=function(e,t){e+="\\t ",t+="\\n\\r",this._match_pattern=this._input.get_regexp("["+e+t+"]+",!0),this._newline_regexp=this._input.get_regexp("\\r\\n|["+t+"]")},r.prototype.read=function(){this.newline_count=0,this.whitespace_before_token="";var e=this._input.read(this._match_pattern);if(" "===e)this.whitespace_before_token=" ";else if(e){var t=this.__split(this._newline_regexp,e);this.newline_count=t.length-1,this.whitespace_before_token=t[this.newline_count]}return e},r.prototype.matching=function(e,t){var n=this._create();return n.__set_whitespace_patterns(e,t),n._update(),n},r.prototype._create=function(){return new r(this._input,this)},r.prototype.__split=function(e,t){e.lastIndex=0;for(var n=0,i=[],r=e.exec(t);r;)i.push(t.substring(n,r.index)),n=r.index+r[0].length,r=e.exec(t);return n<t.length?i.push(t.substring(n,t.length)):i.push(""),i},e.exports.WhitespacePattern=r},function(e,t,n){function i(e,t){this._input=e,this._starting_pattern=null,this._match_pattern=null,this._until_pattern=null,this._until_after=!1,t&&(this._starting_pattern=this._input.get_regexp(t._starting_pattern,!0),this._match_pattern=this._input.get_regexp(t._match_pattern,!0),this._until_pattern=this._input.get_regexp(t._until_pattern),this._until_after=t._until_after)}i.prototype.read=function(){var e=this._input.read(this._starting_pattern);return this._starting_pattern&&!e||(e+=this._input.read(this._match_pattern,this._until_pattern,this._until_after)),e},i.prototype.read_match=function(){return this._input.match(this._match_pattern)},i.prototype.until_after=function(e){var t=this._create();return t._until_after=!0,t._until_pattern=this._input.get_regexp(e),t._update(),t},i.prototype.until=function(e){var t=this._create();return t._until_after=!1,t._until_pattern=this._input.get_regexp(e),t._update(),t},i.prototype.starting_with=function(e){var t=this._create();return t._starting_pattern=this._input.get_regexp(e,!0),t._update(),t},i.prototype.matching=function(e){var t=this._create();return t._match_pattern=this._input.get_regexp(e,!0),t._update(),t},i.prototype._create=function(){return new i(this._input,this)},i.prototype._update=function(){},e.exports.Pattern=i},function(e,t,n){function i(e,t){e="string"==typeof e?e:e.source,t="string"==typeof t?t:t.source,this.__directives_block_pattern=new RegExp(e+/ beautify( \w+[:]\w+)+ /.source+t,"g"),this.__directive_pattern=/ (\w+)[:](\w+)/g,this.__directives_end_ignore_pattern=new RegExp(e+/\sbeautify\signore:end\s/.source+t,"g")}i.prototype.get_directives=function(e){if(!e.match(this.__directives_block_pattern))return null;var t={};this.__directive_pattern.lastIndex=0;for(var n=this.__directive_pattern.exec(e);n;)t[n[1]]=n[2],n=this.__directive_pattern.exec(e);return t},i.prototype.readIgnored=function(e){return e.readUntilAfter(this.__directives_end_ignore_pattern)},e.exports.Directives=i},function(e,t,n){var i=n(12).Pattern,r={django:!1,erb:!1,handlebars:!1,php:!1};function a(e,t){i.call(this,e,t),this.__template_pattern=null,this._disabled=Object.assign({},r),this._excluded=Object.assign({},r),t&&(this.__template_pattern=this._input.get_regexp(t.__template_pattern),this._excluded=Object.assign(this._excluded,t._excluded),this._disabled=Object.assign(this._disabled,t._disabled));var n=new i(e);this.__patterns={handlebars_comment:n.starting_with(/{{!--/).until_after(/--}}/),handlebars_unescaped:n.starting_with(/{{{/).until_after(/}}}/),handlebars:n.starting_with(/{{/).until_after(/}}/),php:n.starting_with(/<\?(?:[=]|php)/).until_after(/\?>/),erb:n.starting_with(/<%[^%]/).until_after(/[^%]%>/),django:n.starting_with(/{%/).until_after(/%}/),django_value:n.starting_with(/{{/).until_after(/}}/),django_comment:n.starting_with(/{#/).until_after(/#}/)}}a.prototype=new i,a.prototype._create=function(){return new a(this._input,this)},a.prototype._update=function(){this.__set_templated_pattern()},a.prototype.disable=function(e){var t=this._create();return t._disabled[e]=!0,t._update(),t},a.prototype.read_options=function(e){var t=this._create();for(var n in r)t._disabled[n]=-1===e.templating.indexOf(n);return t._update(),t},a.prototype.exclude=function(e){var t=this._create();return t._excluded[e]=!0,t._update(),t},a.prototype.read=function(){var e="";e=this._match_pattern?this._input.read(this._starting_pattern):this._input.read(this._starting_pattern,this.__template_pattern);for(var t=this._read_template();t;)this._match_pattern?t+=this._input.read(this._match_pattern):t+=this._input.readUntil(this.__template_pattern),e+=t,t=this._read_template();return this._until_after&&(e+=this._input.readUntilAfter(this._until_pattern)),e},a.prototype.__set_templated_pattern=function(){var e=[];this._disabled.php||e.push(this.__patterns.php._starting_pattern.source),this._disabled.handlebars||e.push(this.__patterns.handlebars._starting_pattern.source),this._disabled.erb||e.push(this.__patterns.erb._starting_pattern.source),this._disabled.django||(e.push(this.__patterns.django._starting_pattern.source),e.push(this.__patterns.django_value._starting_pattern.source),e.push(this.__patterns.django_comment._starting_pattern.source)),this._until_pattern&&e.push(this._until_pattern.source),this.__template_pattern=this._input.get_regexp("(?:"+e.join("|")+")")},a.prototype._read_template=function(){var e="",t=this._input.peek();if("<"===t){var n=this._input.peek(1);this._disabled.php||this._excluded.php||"?"!==n||(e=e||this.__patterns.php.read()),this._disabled.erb||this._excluded.erb||"%"!==n||(e=e||this.__patterns.erb.read())}else"{"===t&&(this._disabled.handlebars||this._excluded.handlebars||(e=(e=(e=e||this.__patterns.handlebars_comment.read())||this.__patterns.handlebars_unescaped.read())||this.__patterns.handlebars.read()),this._disabled.django||(this._excluded.django||this._excluded.handlebars||(e=e||this.__patterns.django_value.read()),this._excluded.django||(e=(e=e||this.__patterns.django_comment.read())||this.__patterns.django.read())));return e},e.exports.TemplatablePattern=a},,,,function(e,t,n){var i=n(19).Beautifier,r=n(20).Options;e.exports=function(e,t,n,r){return new i(e,t,n,r).beautify()},e.exports.defaultOptions=function(){return new r}},function(e,t,n){var i=n(20).Options,r=n(2).Output,a=n(21).Tokenizer,o=n(21).TOKEN,s=/\r\n|[\r\n]/,l=/\r\n|[\r\n]/g,c=function(e,t){this.indent_level=0,this.alignment_size=0,this.max_preserve_newlines=e.max_preserve_newlines,this.preserve_newlines=e.preserve_newlines,this._output=new r(e,t)};c.prototype.current_line_has_match=function(e){return this._output.current_line.has_match(e)},c.prototype.set_space_before_token=function(e,t){this._output.space_before_token=e,this._output.non_breaking_space=t},c.prototype.set_wrap_point=function(){this._output.set_indent(this.indent_level,this.alignment_size),this._output.set_wrap_point()},c.prototype.add_raw_token=function(e){this._output.add_raw_token(e)},c.prototype.print_preserved_newlines=function(e){var t=0;e.type!==o.TEXT&&e.previous.type!==o.TEXT&&(t=e.newlines?1:0),this.preserve_newlines&&(t=e.newlines<this.max_preserve_newlines+1?e.newlines:this.max_preserve_newlines+1);for(var n=0;n<t;n++)this.print_newline(n>0);return 0!==t},c.prototype.traverse_whitespace=function(e){return!(!e.whitespace_before&&!e.newlines)&&(this.print_preserved_newlines(e)||(this._output.space_before_token=!0),!0)},c.prototype.previous_token_wrapped=function(){return this._output.previous_token_wrapped},c.prototype.print_newline=function(e){this._output.add_new_line(e)},c.prototype.print_token=function(e){e.text&&(this._output.set_indent(this.indent_level,this.alignment_size),this._output.add_token(e.text))},c.prototype.indent=function(){this.indent_level++},c.prototype.get_full_indent=function(e){return(e=this.indent_level+(e||0))<1?"":this._output.get_indent_string(e)};var h=function(e,t){var n=null,i=null;return t.closed?("script"===e?n="text/javascript":"style"===e&&(n="text/css"),(n=function(e){for(var t=null,n=e.next;n.type!==o.EOF&&e.closed!==n;){if(n.type===o.ATTRIBUTE&&"type"===n.text){n.next&&n.next.type===o.EQUALS&&n.next.next&&n.next.next.type===o.VALUE&&(t=n.next.next.text);break}n=n.next}return t}(t)||n).search("text/css")>-1?i="css":n.search(/(text|application|dojo)\/(x-)?(javascript|ecmascript|jscript|livescript|(ld\+)?json|method|aspect)/)>-1?i="javascript":n.search(/(text|application|dojo)\/(x-)?(html)/)>-1?i="html":n.search(/test\/null/)>-1&&(i="null"),i):null};function d(e,t){return-1!==t.indexOf(e)}function u(e,t,n){this.parent=e||null,this.tag=t?t.tag_name:"",this.indent_level=n||0,this.parser_token=t||null}function p(e){this._printer=e,this._current_frame=null}function m(e,t,n,r){this._source_text=e||"",t=t||{},this._js_beautify=n,this._css_beautify=r,this._tag_stack=null;var a=new i(t,"html");this._options=a,this._is_wrap_attributes_force="force"===this._options.wrap_attributes.substr(0,"force".length),this._is_wrap_attributes_force_expand_multiline="force-expand-multiline"===this._options.wrap_attributes,this._is_wrap_attributes_force_aligned="force-aligned"===this._options.wrap_attributes,this._is_wrap_attributes_aligned_multiple="aligned-multiple"===this._options.wrap_attributes,this._is_wrap_attributes_preserve="preserve"===this._options.wrap_attributes.substr(0,"preserve".length),this._is_wrap_attributes_preserve_aligned="preserve-aligned"===this._options.wrap_attributes}p.prototype.get_parser_token=function(){return this._current_frame?this._current_frame.parser_token:null},p.prototype.record_tag=function(e){var t=new u(this._current_frame,e,this._printer.indent_level);this._current_frame=t},p.prototype._try_pop_frame=function(e){var t=null;return e&&(t=e.parser_token,this._printer.indent_level=e.indent_level,this._current_frame=e.parent),t},p.prototype._get_frame=function(e,t){for(var n=this._current_frame;n&&-1===e.indexOf(n.tag);){if(t&&-1!==t.indexOf(n.tag)){n=null;break}n=n.parent}return n},p.prototype.try_pop=function(e,t){var n=this._get_frame([e],t);return this._try_pop_frame(n)},p.prototype.indent_to_tag=function(e){var t=this._get_frame(e);t&&(this._printer.indent_level=t.indent_level)},m.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var e=this._source_text,t=this._options.eol;"auto"===this._options.eol&&(t="\n",e&&s.test(e)&&(t=e.match(s)[0]));var n=(e=e.replace(l,"\n")).match(/^[\t ]*/)[0],i={text:"",type:""},r=new f,h=new c(this._options,n),d=new a(e,this._options).tokenize();this._tag_stack=new p(h);for(var u=null,m=d.next();m.type!==o.EOF;)m.type===o.TAG_OPEN||m.type===o.COMMENT?r=u=this._handle_tag_open(h,m,r,i):m.type===o.ATTRIBUTE||m.type===o.EQUALS||m.type===o.VALUE||m.type===o.TEXT&&!r.tag_complete?u=this._handle_inside_tag(h,m,r,d):m.type===o.TAG_CLOSE?u=this._handle_tag_close(h,m,r):m.type===o.TEXT?u=this._handle_text(h,m,r):h.add_raw_token(m),i=u,m=d.next();return h._output.get_code(t)},m.prototype._handle_tag_close=function(e,t,n){var i={text:t.text,type:t.type};return e.alignment_size=0,n.tag_complete=!0,e.set_space_before_token(t.newlines||""!==t.whitespace_before,!0),n.is_unformatted?e.add_raw_token(t):("<"===n.tag_start_char&&(e.set_space_before_token("/"===t.text[0],!0),this._is_wrap_attributes_force_expand_multiline&&n.has_wrapped_attrs&&e.print_newline(!1)),e.print_token(t)),!n.indent_content||n.is_unformatted||n.is_content_unformatted||(e.indent(),n.indent_content=!1),n.is_inline_element||n.is_unformatted||n.is_content_unformatted||e.set_wrap_point(),i},m.prototype._handle_inside_tag=function(e,t,n,i){var r=n.has_wrapped_attrs,a={text:t.text,type:t.type};if(e.set_space_before_token(t.newlines||""!==t.whitespace_before,!0),n.is_unformatted)e.add_raw_token(t);else if("{"===n.tag_start_char&&t.type===o.TEXT)e.print_preserved_newlines(t)?(t.newlines=0,e.add_raw_token(t)):e.print_token(t);else{if(t.type===o.ATTRIBUTE?(e.set_space_before_token(!0),n.attr_count+=1):(t.type===o.EQUALS||t.type===o.VALUE&&t.previous.type===o.EQUALS)&&e.set_space_before_token(!1),t.type===o.ATTRIBUTE&&"<"===n.tag_start_char&&((this._is_wrap_attributes_preserve||this._is_wrap_attributes_preserve_aligned)&&(e.traverse_whitespace(t),r=r||0!==t.newlines),this._is_wrap_attributes_force)){var s=n.attr_count>1;if(this._is_wrap_attributes_force_expand_multiline&&1===n.attr_count){var l,c=!0,h=0;do{if((l=i.peek(h)).type===o.ATTRIBUTE){c=!1;break}h+=1}while(h<4&&l.type!==o.EOF&&l.type!==o.TAG_CLOSE);s=!c}s&&(e.print_newline(!1),r=!0)}e.print_token(t),r=r||e.previous_token_wrapped(),n.has_wrapped_attrs=r}return a},m.prototype._handle_text=function(e,t,n){var i={text:t.text,type:"TK_CONTENT"};return n.custom_beautifier_name?this._print_custom_beatifier_text(e,t,n):n.is_unformatted||n.is_content_unformatted?e.add_raw_token(t):(e.traverse_whitespace(t),e.print_token(t)),i},m.prototype._print_custom_beatifier_text=function(e,t,n){var i=this;if(""!==t.text){var r,a=t.text,o=1,s="",l="";"javascript"===n.custom_beautifier_name&&"function"==typeof this._js_beautify?r=this._js_beautify:"css"===n.custom_beautifier_name&&"function"==typeof this._css_beautify?r=this._css_beautify:"html"===n.custom_beautifier_name&&(r=function(e,t){return new m(e,t,i._js_beautify,i._css_beautify).beautify()}),"keep"===this._options.indent_scripts?o=0:"separate"===this._options.indent_scripts&&(o=-e.indent_level);var c=e.get_full_indent(o);if(a=a.replace(/\n[ \t]*$/,""),"html"!==n.custom_beautifier_name&&"<"===a[0]&&a.match(/^(<!--|<!\[CDATA\[)/)){var h=/^(<!--[^\n]*|<!\[CDATA\[)(\n?)([ \t\n]*)([\s\S]*)(-->|]]>)$/.exec(a);if(!h)return void e.add_raw_token(t);s=c+h[1]+"\n",a=h[4],h[5]&&(l=c+h[5]),a=a.replace(/\n[ \t]*$/,""),(h[2]||-1!==h[3].indexOf("\n"))&&(h=h[3].match(/[ \t]+$/))&&(t.whitespace_before=h[0])}if(a)if(r){var d=function(){this.eol="\n"};d.prototype=this._options.raw_options,a=r(c+a,new d)}else{var u=t.whitespace_before;u&&(a=a.replace(new RegExp("\n("+u+")?","g"),"\n")),a=c+a.replace(/\n/g,"\n"+c)}s&&(a=a?s+a+"\n"+l:s+l),e.print_newline(!1),a&&(t.text=a,t.whitespace_before="",t.newlines=0,e.add_raw_token(t),e.print_newline(!0))}},m.prototype._handle_tag_open=function(e,t,n,i){var r=this._get_tag_open_token(t);return(n.is_unformatted||n.is_content_unformatted)&&t.type===o.TAG_OPEN&&0===t.text.indexOf("</")?e.add_raw_token(t):(e.traverse_whitespace(t),this._set_tag_position(e,t,r,n,i),r.is_inline_element||e.set_wrap_point(),e.print_token(t)),(this._is_wrap_attributes_force_aligned||this._is_wrap_attributes_aligned_multiple||this._is_wrap_attributes_preserve_aligned)&&(r.alignment_size=t.text.length+1),r.tag_complete||r.is_unformatted||(e.alignment_size=r.alignment_size),r};var f=function(e,t){var n;(this.parent=e||null,this.text="",this.type="TK_TAG_OPEN",this.tag_name="",this.is_inline_element=!1,this.is_unformatted=!1,this.is_content_unformatted=!1,this.is_empty_element=!1,this.is_start_tag=!1,this.is_end_tag=!1,this.indent_content=!1,this.multiline_content=!1,this.custom_beautifier_name=null,this.start_tag_token=null,this.attr_count=0,this.has_wrapped_attrs=!1,this.alignment_size=0,this.tag_complete=!1,this.tag_start_char="",this.tag_check="",t)?(this.tag_start_char=t.text[0],this.text=t.text,"<"===this.tag_start_char?(n=t.text.match(/^<([^\s>]*)/),this.tag_check=n?n[1]:""):(n=t.text.match(/^{{[#\^]?([^\s}]+)/),this.tag_check=n?n[1]:""),this.tag_check=this.tag_check.toLowerCase(),t.type===o.COMMENT&&(this.tag_complete=!0),this.is_start_tag="/"!==this.tag_check.charAt(0),this.tag_name=this.is_start_tag?this.tag_check:this.tag_check.substr(1),this.is_end_tag=!this.is_start_tag||t.closed&&"/>"===t.closed.text,this.is_end_tag=this.is_end_tag||"{"===this.tag_start_char&&(this.text.length<3||/[^#\^]/.test(this.text.charAt(2)))):this.tag_complete=!0};m.prototype._get_tag_open_token=function(e){var t=new f(this._tag_stack.get_parser_token(),e);return t.alignment_size=this._options.wrap_attributes_indent_size,t.is_end_tag=t.is_end_tag||d(t.tag_check,this._options.void_elements),t.is_empty_element=t.tag_complete||t.is_start_tag&&t.is_end_tag,t.is_unformatted=!t.tag_complete&&d(t.tag_check,this._options.unformatted),t.is_content_unformatted=!t.is_empty_element&&d(t.tag_check,this._options.content_unformatted),t.is_inline_element=d(t.tag_name,this._options.inline)||"{"===t.tag_start_char,t},m.prototype._set_tag_position=function(e,t,n,i,r){if(n.is_empty_element||(n.is_end_tag?n.start_tag_token=this._tag_stack.try_pop(n.tag_name):(this._do_optional_end_element(n)&&(n.is_inline_element||(n.parent&&(n.parent.multiline_content=!0),e.print_newline(!1))),this._tag_stack.record_tag(n),"script"!==n.tag_name&&"style"!==n.tag_name||n.is_unformatted||n.is_content_unformatted||(n.custom_beautifier_name=h(n.tag_check,t)))),d(n.tag_check,this._options.extra_liners)&&(e.print_newline(!1),e._output.just_added_blankline()||e.print_newline(!0)),n.is_empty_element){if("{"===n.tag_start_char&&"else"===n.tag_check)this._tag_stack.indent_to_tag(["if","unless","each"]),n.indent_content=!0,e.current_line_has_match(/{{#if/)||e.print_newline(!1);"!--"===n.tag_name&&r.type===o.TAG_CLOSE&&i.is_end_tag&&-1===n.text.indexOf("\n")||n.is_inline_element||n.is_unformatted||e.print_newline(!1)}else n.is_unformatted||n.is_content_unformatted?n.is_inline_element||n.is_unformatted||e.print_newline(!1):n.is_end_tag?(n.start_tag_token&&n.start_tag_token.multiline_content||!(n.is_inline_element||i.is_inline_element||r.type===o.TAG_CLOSE&&n.start_tag_token===i||"TK_CONTENT"===r.type))&&e.print_newline(!1):(n.indent_content=!n.custom_beautifier_name,"<"===n.tag_start_char&&("html"===n.tag_name?n.indent_content=this._options.indent_inner_html:"head"===n.tag_name?n.indent_content=this._options.indent_head_inner_html:"body"===n.tag_name&&(n.indent_content=this._options.indent_body_inner_html)),n.is_inline_element||"TK_CONTENT"===r.type||(n.parent&&(n.parent.multiline_content=!0),e.print_newline(!1)))},m.prototype._do_optional_end_element=function(e){var t=null;if(!e.is_empty_element&&e.is_start_tag&&e.parent)return"body"===e.tag_name?t=t||this._tag_stack.try_pop("head"):"li"===e.tag_name?t=t||this._tag_stack.try_pop("li",["ol","ul"]):"dd"===e.tag_name||"dt"===e.tag_name?t=(t=t||this._tag_stack.try_pop("dt",["dl"]))||this._tag_stack.try_pop("dd",["dl"]):"rp"===e.tag_name||"rt"===e.tag_name?t=(t=t||this._tag_stack.try_pop("rt",["ruby","rtc"]))||this._tag_stack.try_pop("rp",["ruby","rtc"]):"optgroup"===e.tag_name?t=t||this._tag_stack.try_pop("optgroup",["select"]):"option"===e.tag_name?t=t||this._tag_stack.try_pop("option",["select","datalist","optgroup"]):"colgroup"===e.tag_name?t=t||this._tag_stack.try_pop("caption",["table"]):"thead"===e.tag_name?t=(t=t||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]):"tbody"===e.tag_name||"tfoot"===e.tag_name?t=(t=(t=(t=t||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]))||this._tag_stack.try_pop("thead",["table"]))||this._tag_stack.try_pop("tbody",["table"]):"tr"===e.tag_name?t=(t=(t=t||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]))||this._tag_stack.try_pop("tr",["table","thead","tbody","tfoot"]):"th"!==e.tag_name&&"td"!==e.tag_name||(t=(t=t||this._tag_stack.try_pop("td",["table","thead","tbody","tfoot","tr"]))||this._tag_stack.try_pop("th",["table","thead","tbody","tfoot","tr"])),e.parent=this._tag_stack.get_parser_token(),t},e.exports.Beautifier=m},function(e,t,n){var i=n(6).Options;function r(e){i.call(this,e,"html"),1===this.templating.length&&"auto"===this.templating[0]&&(this.templating=["django","erb","handlebars","php"]),this.indent_inner_html=this._get_boolean("indent_inner_html"),this.indent_body_inner_html=this._get_boolean("indent_body_inner_html",!0),this.indent_head_inner_html=this._get_boolean("indent_head_inner_html",!0),this.indent_handlebars=this._get_boolean("indent_handlebars",!0),this.wrap_attributes=this._get_selection("wrap_attributes",["auto","force","force-aligned","force-expand-multiline","aligned-multiple","preserve","preserve-aligned"]),this.wrap_attributes_indent_size=this._get_number("wrap_attributes_indent_size",this.indent_size),this.extra_liners=this._get_array("extra_liners",["head","body","/html"]),this.inline=this._get_array("inline",["a","abbr","area","audio","b","bdi","bdo","br","button","canvas","cite","code","data","datalist","del","dfn","em","embed","i","iframe","img","input","ins","kbd","keygen","label","map","mark","math","meter","noscript","object","output","progress","q","ruby","s","samp","select","small","span","strong","sub","sup","svg","template","textarea","time","u","var","video","wbr","text","acronym","big","strike","tt"]),this.void_elements=this._get_array("void_elements",["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr","!doctype","?xml","basefont","isindex"]),this.unformatted=this._get_array("unformatted",[]),this.content_unformatted=this._get_array("content_unformatted",["pre","textarea"]),this.unformatted_content_delimiter=this._get_characters("unformatted_content_delimiter"),this.indent_scripts=this._get_selection("indent_scripts",["normal","keep","separate"])}r.prototype=new i,e.exports.Options=r},function(e,t,n){var i=n(9).Tokenizer,r=n(9).TOKEN,a=n(13).Directives,o=n(14).TemplatablePattern,s=n(12).Pattern,l={TAG_OPEN:"TK_TAG_OPEN",TAG_CLOSE:"TK_TAG_CLOSE",ATTRIBUTE:"TK_ATTRIBUTE",EQUALS:"TK_EQUALS",VALUE:"TK_VALUE",COMMENT:"TK_COMMENT",TEXT:"TK_TEXT",UNKNOWN:"TK_UNKNOWN",START:r.START,RAW:r.RAW,EOF:r.EOF},c=new a(/<\!--/,/-->/),h=function(e,t){i.call(this,e,t),this._current_tag_name="";var n=new o(this._input).read_options(this._options),r=new s(this._input);if(this.__patterns={word:n.until(/[\n\r\t <]/),single_quote:n.until_after(/'/),double_quote:n.until_after(/"/),attribute:n.until(/[\n\r\t =\/>]/),element_name:n.until(/[\n\r\t >\/]/),handlebars_comment:r.starting_with(/{{!--/).until_after(/--}}/),handlebars:r.starting_with(/{{/).until_after(/}}/),handlebars_open:r.until(/[\n\r\t }]/),handlebars_raw_close:r.until(/}}/),comment:r.starting_with(/<!--/).until_after(/-->/),cdata:r.starting_with(/<!\[CDATA\[/).until_after(/]]>/),conditional_comment:r.starting_with(/<!\[/).until_after(/]>/),processing:r.starting_with(/<\?/).until_after(/\?>/)},this._options.indent_handlebars&&(this.__patterns.word=this.__patterns.word.exclude("handlebars")),this._unformatted_content_delimiter=null,this._options.unformatted_content_delimiter){var a=this._input.get_literal_regexp(this._options.unformatted_content_delimiter);this.__patterns.unformatted_content_delimiter=r.matching(a).until_after(a)}};(h.prototype=new i)._is_comment=function(e){return!1},h.prototype._is_opening=function(e){return e.type===l.TAG_OPEN},h.prototype._is_closing=function(e,t){return e.type===l.TAG_CLOSE&&t&&((">"===e.text||"/>"===e.text)&&"<"===t.text[0]||"}}"===e.text&&"{"===t.text[0]&&"{"===t.text[1])},h.prototype._reset=function(){this._current_tag_name=""},h.prototype._get_next_token=function(e,t){var n=null;this._readWhitespace();var i=this._input.peek();return null===i?this._create_token(l.EOF,""):n=(n=(n=(n=(n=(n=(n=(n=(n=n||this._read_open_handlebars(i,t))||this._read_attribute(i,e,t))||this._read_raw_content(i,e,t))||this._read_close(i,t))||this._read_content_word(i))||this._read_comment_or_cdata(i))||this._read_processing(i))||this._read_open(i,t))||this._create_token(l.UNKNOWN,this._input.next())},h.prototype._read_comment_or_cdata=function(e){var t=null,n=null,i=null;"<"===e&&("!"===this._input.peek(1)&&((n=this.__patterns.comment.read())?(i=c.get_directives(n))&&"start"===i.ignore&&(n+=c.readIgnored(this._input)):n=this.__patterns.cdata.read()),n&&((t=this._create_token(l.COMMENT,n)).directives=i));return t},h.prototype._read_processing=function(e){var t=null,n=null;if("<"===e){var i=this._input.peek(1);"!"!==i&&"?"!==i||(n=(n=this.__patterns.conditional_comment.read())||this.__patterns.processing.read()),n&&((t=this._create_token(l.COMMENT,n)).directives=null)}return t},h.prototype._read_open=function(e,t){var n=null,i=null;return t||"<"===e&&(n=this._input.next(),"/"===this._input.peek()&&(n+=this._input.next()),n+=this.__patterns.element_name.read(),i=this._create_token(l.TAG_OPEN,n)),i},h.prototype._read_open_handlebars=function(e,t){var n=null,i=null;return t||this._options.indent_handlebars&&"{"===e&&"{"===this._input.peek(1)&&("!"===this._input.peek(2)?(n=(n=this.__patterns.handlebars_comment.read())||this.__patterns.handlebars.read(),i=this._create_token(l.COMMENT,n)):(n=this.__patterns.handlebars_open.read(),i=this._create_token(l.TAG_OPEN,n))),i},h.prototype._read_close=function(e,t){var n=null,i=null;return t&&("<"===t.text[0]&&(">"===e||"/"===e&&">"===this._input.peek(1))?(n=this._input.next(),"/"===e&&(n+=this._input.next()),i=this._create_token(l.TAG_CLOSE,n)):"{"===t.text[0]&&"}"===e&&"}"===this._input.peek(1)&&(this._input.next(),this._input.next(),i=this._create_token(l.TAG_CLOSE,"}}"))),i},h.prototype._read_attribute=function(e,t,n){var i=null,r="";if(n&&"<"===n.text[0])if("="===e)i=this._create_token(l.EQUALS,this._input.next());else if('"'===e||"'"===e){var a=this._input.next();a+='"'===e?this.__patterns.double_quote.read():this.__patterns.single_quote.read(),i=this._create_token(l.VALUE,a)}else(r=this.__patterns.attribute.read())&&(i=t.type===l.EQUALS?this._create_token(l.VALUE,r):this._create_token(l.ATTRIBUTE,r));return i},h.prototype._is_content_unformatted=function(e){return-1===this._options.void_elements.indexOf(e)&&(-1!==this._options.content_unformatted.indexOf(e)||-1!==this._options.unformatted.indexOf(e))},h.prototype._read_raw_content=function(e,t,n){var i="";if(n&&"{"===n.text[0])i=this.__patterns.handlebars_raw_close.read();else if(t.type===l.TAG_CLOSE&&"<"===t.opened.text[0]){var r=t.opened.text.substr(1).toLowerCase();if("script"===r||"style"===r){var a=this._read_comment_or_cdata(e);if(a)return a.type=l.TEXT,a;i=this._input.readUntil(new RegExp("</"+r+"[\\n\\r\\t ]*?>","ig"))}else this._is_content_unformatted(r)&&(i=this._input.readUntil(new RegExp("</"+r+"[\\n\\r\\t ]*?>","ig")))}return i?this._create_token(l.TEXT,i):null},h.prototype._read_content_word=function(e){var t="";if(this._options.unformatted_content_delimiter&&e===this._options.unformatted_content_delimiter[0]&&(t=this.__patterns.unformatted_content_delimiter.read()),t||(t=this.__patterns.word.read()),t)return this._create_token(l.TEXT,t)},e.exports.Tokenizer=h,e.exports.TOKEN=l}]);var Ge,Ve,Ke,Je=(Ge=function(e,t){return(Ge=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)},function(e,t){function n(){this.constructor=e}Ge(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)});if("object"==typeof process)Ke="win32"===process.platform;else if("object"==typeof navigator){var Ye=navigator.userAgent;Ke=Ye.indexOf("Windows")>=0}var Xe=/^\w[\w\d+.-]*$/,$e=/^\//,Qe=/^\/\//;var Ze="/",et=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,tt=function(){function e(e,t,n,i,r,a){void 0===a&&(a=!1),"object"==typeof e?(this.scheme=e.scheme||"",this.authority=e.authority||"",this.path=e.path||"",this.query=e.query||"",this.fragment=e.fragment||""):(this.scheme=function(e,t){return e||t?e:"file"}(e,a),this.authority=t||"",this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==Ze&&(t=Ze+t):t=Ze}return t}(this.scheme,n||""),this.query=i||"",this.fragment=r||"",function(e,t){if(!e.scheme&&t)throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'+e.authority+'", path: "'+e.path+'", query: "'+e.query+'", fragment: "'+e.fragment+'"}');if(e.scheme&&!Xe.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!$e.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(Qe.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}(this,a))}return e.isUri=function(t){return t instanceof e||!!t&&("string"==typeof t.authority&&"string"==typeof t.fragment&&"string"==typeof t.path&&"string"==typeof t.query&&"string"==typeof t.scheme&&"function"==typeof t.fsPath&&"function"==typeof t.with&&"function"==typeof t.toString)},Object.defineProperty(e.prototype,"fsPath",{get:function(){return st(this)},enumerable:!0,configurable:!0}),e.prototype.with=function(e){if(!e)return this;var t=e.scheme,n=e.authority,i=e.path,r=e.query,a=e.fragment;return void 0===t?t=this.scheme:null===t&&(t=""),void 0===n?n=this.authority:null===n&&(n=""),void 0===i?i=this.path:null===i&&(i=""),void 0===r?r=this.query:null===r&&(r=""),void 0===a?a=this.fragment:null===a&&(a=""),t===this.scheme&&n===this.authority&&i===this.path&&r===this.query&&a===this.fragment?this:new it(t,n,i,r,a)},e.parse=function(e,t){void 0===t&&(t=!1);var n=et.exec(e);return n?new it(n[2]||"",decodeURIComponent(n[4]||""),decodeURIComponent(n[5]||""),decodeURIComponent(n[7]||""),decodeURIComponent(n[9]||""),t):new it("","","","","")},e.file=function(e){var t="";if(Ke&&(e=e.replace(/\\/g,Ze)),e[0]===Ze&&e[1]===Ze){var n=e.indexOf(Ze,2);-1===n?(t=e.substring(2),e=Ze):(t=e.substring(2,n),e=e.substring(n)||Ze)}return new it("file",t,e,"","")},e.from=function(e){return new it(e.scheme,e.authority,e.path,e.query,e.fragment)},e.prototype.toString=function(e){return void 0===e&&(e=!1),lt(this,e)},e.prototype.toJSON=function(){return this},e.revive=function(t){if(t){if(t instanceof e)return t;var n=new it(t);return n._formatted=t.external,n._fsPath=t._sep===nt?t.fsPath:null,n}return t},e}(),nt=Ke?1:void 0,it=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._formatted=null,t._fsPath=null,t}return Je(t,e),Object.defineProperty(t.prototype,"fsPath",{get:function(){return this._fsPath||(this._fsPath=st(this)),this._fsPath},enumerable:!0,configurable:!0}),t.prototype.toString=function(e){return void 0===e&&(e=!1),e?lt(this,!0):(this._formatted||(this._formatted=lt(this,!1)),this._formatted)},t.prototype.toJSON=function(){var e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=nt),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e},t}(tt),rt=((Ve={})[58]="%3A",Ve[47]="%2F",Ve[63]="%3F",Ve[35]="%23",Ve[91]="%5B",Ve[93]="%5D",Ve[64]="%40",Ve[33]="%21",Ve[36]="%24",Ve[38]="%26",Ve[39]="%27",Ve[40]="%28",Ve[41]="%29",Ve[42]="%2A",Ve[43]="%2B",Ve[44]="%2C",Ve[59]="%3B",Ve[61]="%3D",Ve[32]="%20",Ve);function at(e,t){for(var n=void 0,i=-1,r=0;r<e.length;r++){var a=e.charCodeAt(r);if(a>=97&&a<=122||a>=65&&a<=90||a>=48&&a<=57||45===a||46===a||95===a||126===a||t&&47===a)-1!==i&&(n+=encodeURIComponent(e.substring(i,r)),i=-1),void 0!==n&&(n+=e.charAt(r));else{void 0===n&&(n=e.substr(0,r));var o=rt[a];void 0!==o?(-1!==i&&(n+=encodeURIComponent(e.substring(i,r)),i=-1),n+=o):-1===i&&(i=r)}}return-1!==i&&(n+=encodeURIComponent(e.substring(i))),void 0!==n?n:e}function ot(e){for(var t=void 0,n=0;n<e.length;n++){var i=e.charCodeAt(n);35===i||63===i?(void 0===t&&(t=e.substr(0,n)),t+=rt[i]):void 0!==t&&(t+=e[n])}return void 0!==t?t:e}function st(e){var t;return t=e.authority&&e.path.length>1&&"file"===e.scheme?"//"+e.authority+e.path:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?e.path[1].toLowerCase()+e.path.substr(2):e.path,Ke&&(t=t.replace(/\//g,"\\")),t}function lt(e,t){var n=t?ot:at,i="",r=e.scheme,a=e.authority,o=e.path,s=e.query,l=e.fragment;if(r&&(i+=r,i+=":"),(a||"file"===r)&&(i+=Ze,i+=Ze),a){var c=a.indexOf("@");if(-1!==c){var h=a.substr(0,c);a=a.substr(c+1),-1===(c=h.indexOf(":"))?i+=n(h,!1):(i+=n(h.substr(0,c),!1),i+=":",i+=n(h.substr(c+1),!1)),i+="@"}-1===(c=(a=a.toLowerCase()).indexOf(":"))?i+=n(a,!1):(i+=n(a.substr(0,c),!1),i+=a.substr(c))}if(o){if(o.length>=3&&47===o.charCodeAt(0)&&58===o.charCodeAt(2))(d=o.charCodeAt(1))>=65&&d<=90&&(o="/"+String.fromCharCode(d+32)+":"+o.substr(3));else if(o.length>=2&&58===o.charCodeAt(1)){var d;(d=o.charCodeAt(0))>=65&&d<=90&&(o=String.fromCharCode(d+32)+":"+o.substr(2))}i+=n(o,!0)}return s&&(i+="?",i+=n(s,!1)),l&&(i+="#",i+=t?l:at(l,!1)),i}var ct,ht=function(){function e(e,t,n,i){this._uri=e,this._languageId=t,this._version=n,this._content=i,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content},e.prototype.update=function(t,n){for(var i=0,r=t;i<r.length;i++){var a=r[i];if(e.isIncremental(a)){var o=ut(a.range),s=this.offsetAt(o.start),l=this.offsetAt(o.end);this._content=this._content.substring(0,s)+a.text+this._content.substring(l,this._content.length);var c=Math.max(o.start.line,0),h=Math.max(o.end.line,0),d=this._lineOffsets,u=dt(a.text,!1,s);if(h-c===u.length)for(var p=0,m=u.length;p<m;p++)d[p+c+1]=u[p];else u.length<1e4?d.splice.apply(d,[c+1,h-c].concat(u)):this._lineOffsets=d=d.slice(0,c+1).concat(u,d.slice(h+1));var f=a.text.length-(l-s);if(0!==f)for(p=c+1+u.length,m=d.length;p<m;p++)d[p]=d[p]+f}else{if(!e.isFull(a))throw new Error("Unknown change event received");this._content=a.text,this._lineOffsets=void 0}}this._version=n},e.prototype.getLineOffsets=function(){return void 0===this._lineOffsets&&(this._lineOffsets=dt(this._content,!0)),this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),n=0,i=t.length;if(0===i)return{line:0,character:e};for(;n<i;){var r=Math.floor((n+i)/2);t[r]>e?i=r:n=r+1}var a=n-1;return{line:a,character:e-t[a]}},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var n=t[e.line],i=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,i),n)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e.isIncremental=function(e){var t=e;return null!=t&&"string"==typeof t.text&&void 0!==t.range&&(void 0===t.rangeLength||"number"==typeof t.rangeLength)},e.isFull=function(e){var t=e;return null!=t&&"string"==typeof t.text&&void 0===t.range&&void 0===t.rangeLength},e}();function dt(e,t,n){void 0===n&&(n=0);for(var i=t?[n]:[],r=0;r<e.length;r++){var a=e.charCodeAt(r);13!==a&&10!==a||(13===a&&r+1<e.length&&10===e.charCodeAt(r+1)&&r++,i.push(n+r+1))}return i}function ut(e){var t=e.start,n=e.end;return t.line>n.line||t.line===n.line&&t.character>n.character?{start:n,end:t}:e}function pt(e){var t=ut(e.range);return t!==e.range?{newText:e.newText,range:t}:e}!function(e){e.create=function(e,t,n,i){return new ht(e,t,n,i)},e.update=function(e,t,n){if(e instanceof ht)return e.update(t,n),e;throw new Error("TextDocument.update: document must be created by TextDocument.create")},e.applyEdits=function(e,t){for(var n=e.getText(),i=function e(t,n){if(t.length<=1)return t;var i=t.length/2|0,r=t.slice(0,i),a=t.slice(i);e(r,n),e(a,n);var o=0,s=0,l=0;for(;o<r.length&&s<a.length;){var c=n(r[o],a[s]);t[l++]=c<=0?r[o++]:a[s++]}for(;o<r.length;)t[l++]=r[o++];for(;s<a.length;)t[l++]=a[s++];return t}(t.map(pt),(function(e,t){var n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n})),r=n.length,a=i.length-1;a>=0;a--){var o=i[a],s=e.offsetAt(o.range.start),l=e.offsetAt(o.range.end);if(!(l<=r))throw new Error("Overlapping edit");n=n.substring(0,s)+o.newText+n.substring(l,n.length),r=s}return n}}(ct||(ct={}));var mt=monaco.Uri,ft=monaco.Range,gt=function(){function e(e,t,n){var i=this;this._languageId=e,this._worker=t,this._disposables=[],this._listener=Object.create(null);var r=function(e){var t,n=e.getModeId();n===i._languageId&&(i._listener[e.uri.toString()]=e.onDidChangeContent((function(){clearTimeout(t),t=setTimeout((function(){return i._doValidate(e.uri,n)}),500)})),i._doValidate(e.uri,n))},a=function(e){monaco.editor.setModelMarkers(e,i._languageId,[]);var t=e.uri.toString(),n=i._listener[t];n&&(n.dispose(),delete i._listener[t])};this._disposables.push(monaco.editor.onDidCreateModel(r)),this._disposables.push(monaco.editor.onWillDisposeModel((function(e){a(e)}))),this._disposables.push(monaco.editor.onDidChangeModelLanguage((function(e){a(e.model),r(e.model)}))),this._disposables.push(n.onDidChange((function(e){monaco.editor.getModels().forEach((function(e){e.getModeId()===i._languageId&&(a(e),r(e))}))}))),this._disposables.push({dispose:function(){for(var e in i._listener)i._listener[e].dispose()}}),monaco.editor.getModels().forEach(r)}return e.prototype.dispose=function(){this._disposables.forEach((function(e){return e&&e.dispose()})),this._disposables=[]},e.prototype._doValidate=function(e,t){this._worker(e).then((function(n){return n.doValidation(e.toString()).then((function(n){var i=n.map((function(e){return n="number"==typeof(t=e).code?String(t.code):t.code,{severity:bt(t.severity),startLineNumber:t.range.start.line+1,startColumn:t.range.start.character+1,endLineNumber:t.range.end.line+1,endColumn:t.range.end.character+1,message:t.message,code:n,source:t.source};var t,n}));monaco.editor.setModelMarkers(monaco.editor.getModel(e),t,i)}))})).then(void 0,(function(e){console.error(e)}))},e}();function bt(e){switch(e){case p.Error:return monaco.MarkerSeverity.Error;case p.Warning:return monaco.MarkerSeverity.Warning;case p.Information:return monaco.MarkerSeverity.Info;case p.Hint:return monaco.MarkerSeverity.Hint;default:return monaco.MarkerSeverity.Info}}function _t(e){if(e)return{character:e.column-1,line:e.lineNumber-1}}function wt(e){if(e)return new ft(e.start.line+1,e.start.character+1,e.end.line+1,e.end.character+1)}function vt(e){var t=monaco.languages.CompletionItemKind;switch(e){case I.Text:return t.Text;case I.Method:return t.Method;case I.Function:return t.Function;case I.Constructor:return t.Constructor;case I.Field:return t.Field;case I.Variable:return t.Variable;case I.Class:return t.Class;case I.Interface:return t.Interface;case I.Module:return t.Module;case I.Property:return t.Property;case I.Unit:return t.Unit;case I.Value:return t.Value;case I.Enum:return t.Enum;case I.Keyword:return t.Keyword;case I.Snippet:return t.Snippet;case I.Color:return t.Color;case I.File:return t.File;case I.Reference:return t.Reference}return t.Property}function yt(e){if(e)return{range:wt(e.range),text:e.newText}}var Tt=function(){function e(e){this._worker=e}return Object.defineProperty(e.prototype,"triggerCharacters",{get:function(){return[".",":","<",'"',"=","/"]},enumerable:!0,configurable:!0}),e.prototype.provideCompletionItems=function(e,t,n,i){var r=e.uri;return this._worker(r).then((function(e){return e.doComplete(r.toString(),_t(t))})).then((function(n){if(n){var i=e.getWordUntilPosition(t),r=new ft(t.lineNumber,i.startColumn,t.lineNumber,i.endColumn),a=n.items.map((function(e){var t={label:e.label,insertText:e.insertText||e.label,sortText:e.sortText,filterText:e.filterText,documentation:e.documentation,detail:e.detail,range:r,kind:vt(e.kind)};return e.textEdit&&(t.range=wt(e.textEdit.range),t.insertText=e.textEdit.newText),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(yt)),e.insertTextFormat===H.Snippet&&(t.insertTextRules=monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet),t}));return{isIncomplete:n.isIncomplete,suggestions:a}}}))},e}();function kt(e){return"string"==typeof e?{value:e}:(t=e)&&"object"==typeof t&&"string"==typeof t.kind?"plaintext"===e.kind?{value:e.value.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}:{value:e.value}:{value:"```"+e.language+"\n"+e.value+"\n```\n"};var t}function St(e){if(e)return Array.isArray(e)?e.map(kt):[kt(e)]}var xt=function(){function e(e){this._worker=e}return e.prototype.provideHover=function(e,t,n){var i=e.uri;return this._worker(i).then((function(e){return e.doHover(i.toString(),_t(t))})).then((function(e){if(e)return{range:wt(e.range),contents:St(e.contents)}}))},e}();function Mt(e){var t=monaco.languages.DocumentHighlightKind;switch(e){case O.Read:return t.Read;case O.Write:return t.Write;case O.Text:return t.Text}return t.Text}var Lt=function(){function e(e){this._worker=e}return e.prototype.provideDocumentHighlights=function(e,t,n){var i=e.uri;return this._worker(i).then((function(e){return e.findDocumentHighlights(i.toString(),_t(t))})).then((function(e){if(e)return e.map((function(e){return{range:wt(e.range),kind:Mt(e.kind)}}))}))},e}();function Et(e){var t=monaco.languages.SymbolKind;switch(e){case j.File:return t.Array;case j.Module:return t.Module;case j.Namespace:return t.Namespace;case j.Package:return t.Package;case j.Class:return t.Class;case j.Method:return t.Method;case j.Property:return t.Property;case j.Field:return t.Field;case j.Constructor:return t.Constructor;case j.Enum:return t.Enum;case j.Interface:return t.Interface;case j.Function:return t.Function;case j.Variable:return t.Variable;case j.Constant:return t.Constant;case j.String:return t.String;case j.Number:return t.Number;case j.Boolean:return t.Boolean;case j.Array:return t.Array}return t.Function}var At=function(){function e(e){this._worker=e}return e.prototype.provideDocumentSymbols=function(e,t){var n=e.uri;return this._worker(n).then((function(e){return e.findDocumentSymbols(n.toString())})).then((function(e){if(e)return e.map((function(e){return{name:e.name,detail:"",containerName:e.containerName,kind:Et(e.kind),tags:[],range:wt(e.location.range),selectionRange:wt(e.location.range)}}))}))},e}(),Rt=function(){function e(e){this._worker=e}return e.prototype.provideLinks=function(e,t){var n=e.uri;return this._worker(n).then((function(e){return e.findDocumentLinks(n.toString())})).then((function(e){if(e)return{links:e.map((function(e){return{range:wt(e.range),url:e.target}}))}}))},e}();function zt(e){return{tabSize:e.tabSize,insertSpaces:e.insertSpaces}}var It=function(){function e(e){this._worker=e}return e.prototype.provideDocumentFormattingEdits=function(e,t,n){var i=e.uri;return this._worker(i).then((function(e){return e.format(i.toString(),null,zt(t)).then((function(e){if(e&&0!==e.length)return e.map(yt)}))}))},e}(),Ht=function(){function e(e){this._worker=e}return e.prototype.provideDocumentRangeFormattingEdits=function(e,t,n,i){var r=e.uri;return this._worker(r).then((function(e){return e.format(r.toString(),function(e){if(e)return{start:_t(e.getStartPosition()),end:_t(e.getEndPosition())}}(t),zt(n)).then((function(e){if(e&&0!==e.length)return e.map(yt)}))}))},e}(),Ut=function(){function e(e){this._worker=e}return e.prototype.provideRenameEdits=function(e,t,n,i){var r=e.uri;return this._worker(r).then((function(e){return e.doRename(r.toString(),_t(t),n)})).then((function(e){return function(e){if(!e||!e.changes)return;var t=[];for(var n in e.changes)for(var i=mt.parse(n),r=0,a=e.changes[n];r<a.length;r++){var o=a[r];t.push({resource:i,edit:{range:wt(o.range),text:o.newText}})}return{edits:t}}(e)}))},e}();var Ct=function(){function e(e){this._worker=e}return e.prototype.provideFoldingRanges=function(e,t,n){var i=e.uri;return this._worker(i).then((function(e){return e.getFoldingRanges(i.toString(),t)})).then((function(e){if(e)return e.map((function(e){var t={start:e.startLine+1,end:e.endLine+1};return void 0!==e.kind&&(t.kind=function(e){switch(e){case h.Comment:return monaco.languages.FoldingRangeKind.Comment;case h.Imports:return monaco.languages.FoldingRangeKind.Imports;case h.Region:return monaco.languages.FoldingRangeKind.Region}}(e.kind)),t}))}))},e}();var Wt=function(){function e(e){this._worker=e}return e.prototype.provideSelectionRanges=function(e,t,n){var i=e.uri;return this._worker(i).then((function(e){return e.getSelectionRanges(i.toString(),t.map(_t))})).then((function(e){if(e)return e.map((function(e){for(var t=[];e;)t.push({range:wt(e.range)}),e=e.parent;return t}))}))},e}();function Dt(e){var t=new k(e),n=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return t.getLanguageServiceWorker.apply(t,e)},i=e.languageId;monaco.languages.registerCompletionItemProvider(i,new Tt(n)),monaco.languages.registerHoverProvider(i,new xt(n)),monaco.languages.registerDocumentHighlightProvider(i,new Lt(n)),monaco.languages.registerLinkProvider(i,new Rt(n)),monaco.languages.registerFoldingRangeProvider(i,new Ct(n)),monaco.languages.registerDocumentSymbolProvider(i,new At(n)),monaco.languages.registerSelectionRangeProvider(i,new Wt(n)),monaco.languages.registerRenameProvider(i,new Ut(n)),"html"===i&&(monaco.languages.registerDocumentFormattingEditProvider(i,new It(n)),monaco.languages.registerDocumentRangeFormattingEditProvider(i,new Ht(n)),new gt(i,n,e))}function qt(e){var t=[],n=[],i=new k(e);t.push(i);var r,a,o=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return i.getLanguageServiceWorker.apply(i,e)};return r=e.languageId,a=e.modeConfiguration,Pt(n),a.completionItems&&n.push(monaco.languages.registerCompletionItemProvider(r,new Tt(o))),a.hovers&&n.push(monaco.languages.registerHoverProvider(r,new xt(o))),a.documentHighlights&&n.push(monaco.languages.registerDocumentHighlightProvider(r,new Lt(o))),a.links&&n.push(monaco.languages.registerLinkProvider(r,new Rt(o))),a.documentSymbols&&n.push(monaco.languages.registerDocumentSymbolProvider(r,new At(o))),a.rename&&n.push(monaco.languages.registerRenameProvider(r,new Ut(o))),a.foldingRanges&&n.push(monaco.languages.registerFoldingRangeProvider(r,new Ct(o))),a.selectionRanges&&n.push(monaco.languages.registerSelectionRangeProvider(r,new Wt(o))),a.documentFormattingEdits&&n.push(monaco.languages.registerDocumentFormattingEditProvider(r,new It(o))),a.documentRangeFormattingEdits&&n.push(monaco.languages.registerDocumentRangeFormattingEditProvider(r,new Ht(o))),a.diagnostics&&n.push(new gt(r,o,e)),t.push(Nt(n)),Nt(t)}function Nt(e){return{dispose:function(){return Pt(e)}}}function Pt(e){for(;e.length;)e.pop().dispose()}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[104],{505:function(e,t,n){"use strict";n.r(t),n.d(t,"setupMode1",(function(){return Dt})),n.d(t,"setupMode",(function(){return qt}));var i,r,a,o,s,l,c,h,d,u,p,m,f,g,b,_,w,v,y,T,k=function(){function e(e){var t=this;this._defaults=e,this._worker=null,this._idleCheckInterval=setInterval((function(){return t._checkIfIdle()}),3e4),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange((function(){return t._stopWorker()}))}return e.prototype._stopWorker=function(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null},e.prototype.dispose=function(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()},e.prototype._checkIfIdle=function(){this._worker&&(Date.now()-this._lastUsedTime>12e4&&this._stopWorker())},e.prototype._getClient=function(){return this._lastUsedTime=Date.now(),this._client||(this._worker=monaco.editor.createWebWorker({moduleId:"vs/language/html/htmlWorker",createData:{languageSettings:this._defaults.options,languageId:this._defaults.languageId},label:this._defaults.languageId}),this._client=this._worker.getProxy()),this._client},e.prototype.getLanguageServiceWorker=function(){for(var e,t=this,n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];return this._getClient().then((function(t){e=t})).then((function(e){return t._worker.withSyncedResources(n)})).then((function(t){return e}))},e}();function S(e,t){return 0===t.length?e:e.replace(/\{(\d+)\}/g,(function(e,n){var i=n[0];return void 0!==t[i]?t[i]:e}))}function x(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return S(t,n)}function M(e){return x}!function(e){e.create=function(e,t){return{line:e,character:t}},e.is=function(e){var t=e;return ne.objectLiteral(t)&&ne.number(t.line)&&ne.number(t.character)}}(i||(i={})),function(e){e.create=function(e,t,n,r){if(ne.number(e)&&ne.number(t)&&ne.number(n)&&ne.number(r))return{start:i.create(e,t),end:i.create(n,r)};if(i.is(e)&&i.is(t))return{start:e,end:t};throw new Error("Range#create called with invalid arguments["+e+", "+t+", "+n+", "+r+"]")},e.is=function(e){var t=e;return ne.objectLiteral(t)&&i.is(t.start)&&i.is(t.end)}}(r||(r={})),function(e){e.create=function(e,t){return{uri:e,range:t}},e.is=function(e){var t=e;return ne.defined(t)&&r.is(t.range)&&(ne.string(t.uri)||ne.undefined(t.uri))}}(a||(a={})),function(e){e.create=function(e,t,n,i){return{targetUri:e,targetRange:t,targetSelectionRange:n,originSelectionRange:i}},e.is=function(e){var t=e;return ne.defined(t)&&r.is(t.targetRange)&&ne.string(t.targetUri)&&(r.is(t.targetSelectionRange)||ne.undefined(t.targetSelectionRange))&&(r.is(t.originSelectionRange)||ne.undefined(t.originSelectionRange))}}(o||(o={})),function(e){e.create=function(e,t,n,i){return{red:e,green:t,blue:n,alpha:i}},e.is=function(e){var t=e;return ne.number(t.red)&&ne.number(t.green)&&ne.number(t.blue)&&ne.number(t.alpha)}}(s||(s={})),function(e){e.create=function(e,t){return{range:e,color:t}},e.is=function(e){var t=e;return r.is(t.range)&&s.is(t.color)}}(l||(l={})),function(e){e.create=function(e,t,n){return{label:e,textEdit:t,additionalTextEdits:n}},e.is=function(e){var t=e;return ne.string(t.label)&&(ne.undefined(t.textEdit)||b.is(t))&&(ne.undefined(t.additionalTextEdits)||ne.typedArray(t.additionalTextEdits,b.is))}}(c||(c={})),function(e){e.Comment="comment",e.Imports="imports",e.Region="region"}(h||(h={})),function(e){e.create=function(e,t,n,i,r){var a={startLine:e,endLine:t};return ne.defined(n)&&(a.startCharacter=n),ne.defined(i)&&(a.endCharacter=i),ne.defined(r)&&(a.kind=r),a},e.is=function(e){var t=e;return ne.number(t.startLine)&&ne.number(t.startLine)&&(ne.undefined(t.startCharacter)||ne.number(t.startCharacter))&&(ne.undefined(t.endCharacter)||ne.number(t.endCharacter))&&(ne.undefined(t.kind)||ne.string(t.kind))}}(d||(d={})),function(e){e.create=function(e,t){return{location:e,message:t}},e.is=function(e){var t=e;return ne.defined(t)&&a.is(t.location)&&ne.string(t.message)}}(u||(u={})),function(e){e.Error=1,e.Warning=2,e.Information=3,e.Hint=4}(p||(p={})),function(e){e.Unnecessary=1,e.Deprecated=2}(m||(m={})),function(e){e.create=function(e,t,n,i,r,a){var o={range:e,message:t};return ne.defined(n)&&(o.severity=n),ne.defined(i)&&(o.code=i),ne.defined(r)&&(o.source=r),ne.defined(a)&&(o.relatedInformation=a),o},e.is=function(e){var t=e;return ne.defined(t)&&r.is(t.range)&&ne.string(t.message)&&(ne.number(t.severity)||ne.undefined(t.severity))&&(ne.number(t.code)||ne.string(t.code)||ne.undefined(t.code))&&(ne.string(t.source)||ne.undefined(t.source))&&(ne.undefined(t.relatedInformation)||ne.typedArray(t.relatedInformation,u.is))}}(f||(f={})),function(e){e.create=function(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];var r={title:e,command:t};return ne.defined(n)&&n.length>0&&(r.arguments=n),r},e.is=function(e){var t=e;return ne.defined(t)&&ne.string(t.title)&&ne.string(t.command)}}(g||(g={})),function(e){e.replace=function(e,t){return{range:e,newText:t}},e.insert=function(e,t){return{range:{start:e,end:e},newText:t}},e.del=function(e){return{range:e,newText:""}},e.is=function(e){var t=e;return ne.objectLiteral(t)&&ne.string(t.newText)&&r.is(t.range)}}(b||(b={})),function(e){e.create=function(e,t){return{textDocument:e,edits:t}},e.is=function(e){var t=e;return ne.defined(t)&&E.is(t.textDocument)&&Array.isArray(t.edits)}}(_||(_={})),function(e){e.create=function(e,t){var n={kind:"create",uri:e};return void 0===t||void 0===t.overwrite&&void 0===t.ignoreIfExists||(n.options=t),n},e.is=function(e){var t=e;return t&&"create"===t.kind&&ne.string(t.uri)&&(void 0===t.options||(void 0===t.options.overwrite||ne.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||ne.boolean(t.options.ignoreIfExists)))}}(w||(w={})),function(e){e.create=function(e,t,n){var i={kind:"rename",oldUri:e,newUri:t};return void 0===n||void 0===n.overwrite&&void 0===n.ignoreIfExists||(i.options=n),i},e.is=function(e){var t=e;return t&&"rename"===t.kind&&ne.string(t.oldUri)&&ne.string(t.newUri)&&(void 0===t.options||(void 0===t.options.overwrite||ne.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||ne.boolean(t.options.ignoreIfExists)))}}(v||(v={})),function(e){e.create=function(e,t){var n={kind:"delete",uri:e};return void 0===t||void 0===t.recursive&&void 0===t.ignoreIfNotExists||(n.options=t),n},e.is=function(e){var t=e;return t&&"delete"===t.kind&&ne.string(t.uri)&&(void 0===t.options||(void 0===t.options.recursive||ne.boolean(t.options.recursive))&&(void 0===t.options.ignoreIfNotExists||ne.boolean(t.options.ignoreIfNotExists)))}}(y||(y={})),function(e){e.is=function(e){var t=e;return t&&(void 0!==t.changes||void 0!==t.documentChanges)&&(void 0===t.documentChanges||t.documentChanges.every((function(e){return ne.string(e.kind)?w.is(e)||v.is(e)||y.is(e):_.is(e)})))}}(T||(T={}));var L,E,A,R,z,I,H,U,C,W,D,q,N,P,O,F,j,B,G,V,K,J,Y,X,$,Q,Z,ee=function(){function e(e){this.edits=e}return e.prototype.insert=function(e,t){this.edits.push(b.insert(e,t))},e.prototype.replace=function(e,t){this.edits.push(b.replace(e,t))},e.prototype.delete=function(e){this.edits.push(b.del(e))},e.prototype.add=function(e){this.edits.push(e)},e.prototype.all=function(){return this.edits},e.prototype.clear=function(){this.edits.splice(0,this.edits.length)},e}();!function(){function e(e){var t=this;this._textEditChanges=Object.create(null),e&&(this._workspaceEdit=e,e.documentChanges?e.documentChanges.forEach((function(e){if(_.is(e)){var n=new ee(e.edits);t._textEditChanges[e.textDocument.uri]=n}})):e.changes&&Object.keys(e.changes).forEach((function(n){var i=new ee(e.changes[n]);t._textEditChanges[n]=i})))}Object.defineProperty(e.prototype,"edit",{get:function(){return this._workspaceEdit},enumerable:!0,configurable:!0}),e.prototype.getTextEditChange=function(e){if(E.is(e)){if(this._workspaceEdit||(this._workspaceEdit={documentChanges:[]}),!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");var t=e;if(!(i=this._textEditChanges[t.uri])){var n={textDocument:t,edits:r=[]};this._workspaceEdit.documentChanges.push(n),i=new ee(r),this._textEditChanges[t.uri]=i}return i}if(this._workspaceEdit||(this._workspaceEdit={changes:Object.create(null)}),!this._workspaceEdit.changes)throw new Error("Workspace edit is not configured for normal text edit changes.");var i;if(!(i=this._textEditChanges[e])){var r=[];this._workspaceEdit.changes[e]=r,i=new ee(r),this._textEditChanges[e]=i}return i},e.prototype.createFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(w.create(e,t))},e.prototype.renameFile=function(e,t,n){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(v.create(e,t,n))},e.prototype.deleteFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(y.create(e,t))},e.prototype.checkDocumentChanges=function(){if(!this._workspaceEdit||!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.")}}();!function(e){e.create=function(e){return{uri:e}},e.is=function(e){var t=e;return ne.defined(t)&&ne.string(t.uri)}}(L||(L={})),function(e){e.create=function(e,t){return{uri:e,version:t}},e.is=function(e){var t=e;return ne.defined(t)&&ne.string(t.uri)&&(null===t.version||ne.number(t.version))}}(E||(E={})),function(e){e.create=function(e,t,n,i){return{uri:e,languageId:t,version:n,text:i}},e.is=function(e){var t=e;return ne.defined(t)&&ne.string(t.uri)&&ne.string(t.languageId)&&ne.number(t.version)&&ne.string(t.text)}}(A||(A={})),function(e){e.PlainText="plaintext",e.Markdown="markdown"}(R||(R={})),function(e){e.is=function(t){var n=t;return n===e.PlainText||n===e.Markdown}}(R||(R={})),function(e){e.is=function(e){var t=e;return ne.objectLiteral(e)&&R.is(t.kind)&&ne.string(t.value)}}(z||(z={})),function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25}(I||(I={})),function(e){e.PlainText=1,e.Snippet=2}(H||(H={})),function(e){e.Deprecated=1}(U||(U={})),function(e){e.create=function(e){return{label:e}}}(C||(C={})),function(e){e.create=function(e,t){return{items:e||[],isIncomplete:!!t}}}(W||(W={})),function(e){e.fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},e.is=function(e){var t=e;return ne.string(t)||ne.objectLiteral(t)&&ne.string(t.language)&&ne.string(t.value)}}(D||(D={})),function(e){e.is=function(e){var t=e;return!!t&&ne.objectLiteral(t)&&(z.is(t.contents)||D.is(t.contents)||ne.typedArray(t.contents,D.is))&&(void 0===e.range||r.is(e.range))}}(q||(q={})),function(e){e.create=function(e,t){return t?{label:e,documentation:t}:{label:e}}}(N||(N={})),function(e){e.create=function(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];var r={label:e};return ne.defined(t)&&(r.documentation=t),ne.defined(n)?r.parameters=n:r.parameters=[],r}}(P||(P={})),function(e){e.Text=1,e.Read=2,e.Write=3}(O||(O={})),function(e){e.create=function(e,t){var n={range:e};return ne.number(t)&&(n.kind=t),n}}(F||(F={})),function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26}(j||(j={})),function(e){e.Deprecated=1}(B||(B={})),function(e){e.create=function(e,t,n,i,r){var a={name:e,kind:t,location:{uri:i,range:n}};return r&&(a.containerName=r),a}}(G||(G={})),function(e){e.create=function(e,t,n,i,r,a){var o={name:e,detail:t,kind:n,range:i,selectionRange:r};return void 0!==a&&(o.children=a),o},e.is=function(e){var t=e;return t&&ne.string(t.name)&&ne.number(t.kind)&&r.is(t.range)&&r.is(t.selectionRange)&&(void 0===t.detail||ne.string(t.detail))&&(void 0===t.deprecated||ne.boolean(t.deprecated))&&(void 0===t.children||Array.isArray(t.children))}}(V||(V={})),function(e){e.Empty="",e.QuickFix="quickfix",e.Refactor="refactor",e.RefactorExtract="refactor.extract",e.RefactorInline="refactor.inline",e.RefactorRewrite="refactor.rewrite",e.Source="source",e.SourceOrganizeImports="source.organizeImports",e.SourceFixAll="source.fixAll"}(K||(K={})),function(e){e.create=function(e,t){var n={diagnostics:e};return null!=t&&(n.only=t),n},e.is=function(e){var t=e;return ne.defined(t)&&ne.typedArray(t.diagnostics,f.is)&&(void 0===t.only||ne.typedArray(t.only,ne.string))}}(J||(J={})),function(e){e.create=function(e,t,n){var i={title:e};return g.is(t)?i.command=t:i.edit=t,void 0!==n&&(i.kind=n),i},e.is=function(e){var t=e;return t&&ne.string(t.title)&&(void 0===t.diagnostics||ne.typedArray(t.diagnostics,f.is))&&(void 0===t.kind||ne.string(t.kind))&&(void 0!==t.edit||void 0!==t.command)&&(void 0===t.command||g.is(t.command))&&(void 0===t.isPreferred||ne.boolean(t.isPreferred))&&(void 0===t.edit||T.is(t.edit))}}(Y||(Y={})),function(e){e.create=function(e,t){var n={range:e};return ne.defined(t)&&(n.data=t),n},e.is=function(e){var t=e;return ne.defined(t)&&r.is(t.range)&&(ne.undefined(t.command)||g.is(t.command))}}(X||(X={})),function(e){e.create=function(e,t){return{tabSize:e,insertSpaces:t}},e.is=function(e){var t=e;return ne.defined(t)&&ne.number(t.tabSize)&&ne.boolean(t.insertSpaces)}}($||($={})),function(e){e.create=function(e,t,n){return{range:e,target:t,data:n}},e.is=function(e){var t=e;return ne.defined(t)&&r.is(t.range)&&(ne.undefined(t.target)||ne.string(t.target))}}(Q||(Q={})),function(e){e.create=function(e,t){return{range:e,parent:t}},e.is=function(t){var n=t;return void 0!==n&&r.is(n.range)&&(void 0===n.parent||e.is(n.parent))}}(Z||(Z={}));var te;!function(e){e.create=function(e,t,n,i){return new oe(e,t,n,i)},e.is=function(e){var t=e;return!!(ne.defined(t)&&ne.string(t.uri)&&(ne.undefined(t.languageId)||ne.string(t.languageId))&&ne.number(t.lineCount)&&ne.func(t.getText)&&ne.func(t.positionAt)&&ne.func(t.offsetAt))},e.applyEdits=function(e,t){for(var n=e.getText(),i=function e(t,n){if(t.length<=1)return t;var i=t.length/2|0,r=t.slice(0,i),a=t.slice(i);e(r,n),e(a,n);var o=0,s=0,l=0;for(;o<r.length&&s<a.length;){var c=n(r[o],a[s]);t[l++]=c<=0?r[o++]:a[s++]}for(;o<r.length;)t[l++]=r[o++];for(;s<a.length;)t[l++]=a[s++];return t}(t,(function(e,t){var n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n})),r=n.length,a=i.length-1;a>=0;a--){var o=i[a],s=e.offsetAt(o.range.start),l=e.offsetAt(o.range.end);if(!(l<=r))throw new Error("Overlapping edit");n=n.substring(0,s)+o.newText+n.substring(l,n.length),r=s}return n}}(te||(te={}));var ne,ie,re,ae,oe=function(){function e(e,t,n,i){this._uri=e,this._languageId=t,this._version=n,this._content=i,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content},e.prototype.update=function(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0},e.prototype.getLineOffsets=function(){if(void 0===this._lineOffsets){for(var e=[],t=this._content,n=!0,i=0;i<t.length;i++){n&&(e.push(i),n=!1);var r=t.charAt(i);n="\r"===r||"\n"===r,"\r"===r&&i+1<t.length&&"\n"===t.charAt(i+1)&&i++}n&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),n=0,r=t.length;if(0===r)return i.create(0,e);for(;n<r;){var a=Math.floor((n+r)/2);t[a]>e?r=a:n=a+1}var o=n-1;return i.create(o,e-t[o])},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var n=t[e.line],i=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,i),n)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e}();!function(e){var t=Object.prototype.toString;e.defined=function(e){return void 0!==e},e.undefined=function(e){return void 0===e},e.boolean=function(e){return!0===e||!1===e},e.string=function(e){return"[object String]"===t.call(e)},e.number=function(e){return"[object Number]"===t.call(e)},e.func=function(e){return"[object Function]"===t.call(e)},e.objectLiteral=function(e){return null!==e&&"object"==typeof e},e.typedArray=function(e,t){return Array.isArray(e)&&e.every(t)}}(ne||(ne={})),function(e){e[e.StartCommentTag=0]="StartCommentTag",e[e.Comment=1]="Comment",e[e.EndCommentTag=2]="EndCommentTag",e[e.StartTagOpen=3]="StartTagOpen",e[e.StartTagClose=4]="StartTagClose",e[e.StartTagSelfClose=5]="StartTagSelfClose",e[e.StartTag=6]="StartTag",e[e.EndTagOpen=7]="EndTagOpen",e[e.EndTagClose=8]="EndTagClose",e[e.EndTag=9]="EndTag",e[e.DelimiterAssign=10]="DelimiterAssign",e[e.AttributeName=11]="AttributeName",e[e.AttributeValue=12]="AttributeValue",e[e.StartDoctypeTag=13]="StartDoctypeTag",e[e.Doctype=14]="Doctype",e[e.EndDoctypeTag=15]="EndDoctypeTag",e[e.Content=16]="Content",e[e.Whitespace=17]="Whitespace",e[e.Unknown=18]="Unknown",e[e.Script=19]="Script",e[e.Styles=20]="Styles",e[e.EOS=21]="EOS"}(ie||(ie={})),function(e){e[e.WithinContent=0]="WithinContent",e[e.AfterOpeningStartTag=1]="AfterOpeningStartTag",e[e.AfterOpeningEndTag=2]="AfterOpeningEndTag",e[e.WithinDoctype=3]="WithinDoctype",e[e.WithinTag=4]="WithinTag",e[e.WithinEndTag=5]="WithinEndTag",e[e.WithinComment=6]="WithinComment",e[e.WithinScriptContent=7]="WithinScriptContent",e[e.WithinStyleContent=8]="WithinStyleContent",e[e.AfterAttributeName=9]="AfterAttributeName",e[e.BeforeAttributeValue=10]="BeforeAttributeValue"}(re||(re={})),(ae||(ae={})).LATEST={textDocument:{completion:{completionItem:{documentationFormat:[R.Markdown,R.PlainText]}},hover:{contentFormat:[R.Markdown,R.PlainText]}}};var se=M(),le=function(){function e(e,t){this.source=e,this.len=e.length,this.position=t}return e.prototype.eos=function(){return this.len<=this.position},e.prototype.getSource=function(){return this.source},e.prototype.pos=function(){return this.position},e.prototype.goBackTo=function(e){this.position=e},e.prototype.goBack=function(e){this.position-=e},e.prototype.advance=function(e){this.position+=e},e.prototype.goToEnd=function(){this.position=this.source.length},e.prototype.nextChar=function(){return this.source.charCodeAt(this.position++)||0},e.prototype.peekChar=function(e){return void 0===e&&(e=0),this.source.charCodeAt(this.position+e)||0},e.prototype.advanceIfChar=function(e){return e===this.source.charCodeAt(this.position)&&(this.position++,!0)},e.prototype.advanceIfChars=function(e){var t;if(this.position+e.length>this.source.length)return!1;for(t=0;t<e.length;t++)if(this.source.charCodeAt(this.position+t)!==e[t])return!1;return this.advance(t),!0},e.prototype.advanceIfRegExp=function(e){var t=this.source.substr(this.position).match(e);return t?(this.position=this.position+t.index+t[0].length,t[0]):""},e.prototype.advanceUntilRegExp=function(e){var t=this.source.substr(this.position).match(e);return t?(this.position=this.position+t.index,t[0]):(this.goToEnd(),"")},e.prototype.advanceUntilChar=function(e){for(;this.position<this.source.length;){if(this.source.charCodeAt(this.position)===e)return!0;this.advance(1)}return!1},e.prototype.advanceUntilChars=function(e){for(;this.position+e.length<=this.source.length;){for(var t=0;t<e.length&&this.source.charCodeAt(this.position+t)===e[t];t++);if(t===e.length)return!0;this.advance(1)}return this.goToEnd(),!1},e.prototype.skipWhitespace=function(){return this.advanceWhileChar((function(e){return e===ve||e===ye||e===be||e===we||e===_e}))>0},e.prototype.advanceWhileChar=function(e){for(var t=this.position;this.position<this.len&&e(this.source.charCodeAt(this.position));)this.position++;return this.position-t},e}(),ce="!".charCodeAt(0),he="-".charCodeAt(0),de="<".charCodeAt(0),ue=">".charCodeAt(0),pe="/".charCodeAt(0),me="=".charCodeAt(0),fe='"'.charCodeAt(0),ge="'".charCodeAt(0),be="\n".charCodeAt(0),_e="\r".charCodeAt(0),we="\f".charCodeAt(0),ve=" ".charCodeAt(0),ye="\t".charCodeAt(0),Te={"text/x-handlebars-template":!0};function ke(e,t,n){void 0===t&&(t=0),void 0===n&&(n=re.WithinContent);var i,r,a,o,s,l=new le(e,t),c=n,h=0,d=ie.Unknown;function u(){return l.advanceIfRegExp(/^[_:\w][_:\w-.\d]*/).toLowerCase()}function p(e,t,n){return d=t,h=e,i=n,t}return{scan:function(){var e=l.pos(),t=c,n=function e(){var t,n=l.pos();if(l.eos())return p(n,ie.EOS);switch(c){case re.WithinComment:return l.advanceIfChars([he,he,ue])?(c=re.WithinContent,p(n,ie.EndCommentTag)):(l.advanceUntilChars([he,he,ue]),p(n,ie.Comment));case re.WithinDoctype:return l.advanceIfChar(ue)?(c=re.WithinContent,p(n,ie.EndDoctypeTag)):(l.advanceUntilChar(ue),p(n,ie.Doctype));case re.WithinContent:if(l.advanceIfChar(de)){if(!l.eos()&&l.peekChar()===ce){if(l.advanceIfChars([ce,he,he]))return c=re.WithinComment,p(n,ie.StartCommentTag);if(l.advanceIfRegExp(/^!doctype/i))return c=re.WithinDoctype,p(n,ie.StartDoctypeTag)}return l.advanceIfChar(pe)?(c=re.AfterOpeningEndTag,p(n,ie.EndTagOpen)):(c=re.AfterOpeningStartTag,p(n,ie.StartTagOpen))}return l.advanceUntilChar(de),p(n,ie.Content);case re.AfterOpeningEndTag:return u().length>0?(c=re.WithinEndTag,p(n,ie.EndTag)):l.skipWhitespace()?p(n,ie.Whitespace,se("error.unexpectedWhitespace","Tag name must directly follow the open bracket.")):(c=re.WithinEndTag,l.advanceUntilChar(ue),n<l.pos()?p(n,ie.Unknown,se("error.endTagNameExpected","End tag name expected.")):e());case re.WithinEndTag:if(l.skipWhitespace())return p(n,ie.Whitespace);if(l.advanceIfChar(ue))return c=re.WithinContent,p(n,ie.EndTagClose);t=se("error.tagNameExpected","Closing bracket expected.");break;case re.AfterOpeningStartTag:return a=u(),s=void 0,o=void 0,a.length>0?(r=!1,c=re.WithinTag,p(n,ie.StartTag)):l.skipWhitespace()?p(n,ie.Whitespace,se("error.unexpectedWhitespace","Tag name must directly follow the open bracket.")):(c=re.WithinTag,l.advanceUntilChar(ue),n<l.pos()?p(n,ie.Unknown,se("error.startTagNameExpected","Start tag name expected.")):e());case re.WithinTag:return l.skipWhitespace()?(r=!0,p(n,ie.Whitespace)):r&&(o=l.advanceIfRegExp(/^[^\s"'>/=\x00-\x0F\x7F\x80-\x9F]*/).toLowerCase()).length>0?(c=re.AfterAttributeName,r=!1,p(n,ie.AttributeName)):l.advanceIfChars([pe,ue])?(c=re.WithinContent,p(n,ie.StartTagSelfClose)):l.advanceIfChar(ue)?(c="script"===a?s&&Te[s]?re.WithinContent:re.WithinScriptContent:"style"===a?re.WithinStyleContent:re.WithinContent,p(n,ie.StartTagClose)):(l.advance(1),p(n,ie.Unknown,se("error.unexpectedCharacterInTag","Unexpected character in tag.")));case re.AfterAttributeName:return l.skipWhitespace()?(r=!0,p(n,ie.Whitespace)):l.advanceIfChar(me)?(c=re.BeforeAttributeValue,p(n,ie.DelimiterAssign)):(c=re.WithinTag,e());case re.BeforeAttributeValue:if(l.skipWhitespace())return p(n,ie.Whitespace);var i=l.advanceIfRegExp(/^[^\s"'`=<>]+/);if(i.length>0)return l.peekChar()===ue&&l.peekChar(-1)===pe&&(l.goBack(1),i=i.substr(0,i.length-1)),"type"===o&&(s=i),c=re.WithinTag,r=!1,p(n,ie.AttributeValue);var h=l.peekChar();return h===ge||h===fe?(l.advance(1),l.advanceUntilChar(h)&&l.advance(1),"type"===o&&(s=l.getSource().substring(n+1,l.pos()-1)),c=re.WithinTag,r=!1,p(n,ie.AttributeValue)):(c=re.WithinTag,r=!1,e());case re.WithinScriptContent:for(var d=1;!l.eos();){var m=l.advanceIfRegExp(/<!--|-->|<\/?script\s*\/?>?/i);if(0===m.length)return l.goToEnd(),p(n,ie.Script);if("\x3c!--"===m)1===d&&(d=2);else if("--\x3e"===m)d=1;else if("/"!==m[1])2===d&&(d=3);else{if(3!==d){l.goBack(m.length);break}d=2}}return c=re.WithinContent,n<l.pos()?p(n,ie.Script):e();case re.WithinStyleContent:return l.advanceUntilRegExp(/<\/style/i),c=re.WithinContent,n<l.pos()?p(n,ie.Styles):e()}return l.advance(1),c=re.WithinContent,p(n,ie.Unknown,t)}();return n!==ie.EOS&&e===l.pos()?(console.log("Scanner.scan has not advanced at offset "+e+", state before: "+t+" after: "+c),l.advance(1),p(e,ie.Unknown)):n},getTokenType:function(){return d},getTokenOffset:function(){return h},getTokenLength:function(){return l.pos()-h},getTokenEnd:function(){return l.pos()},getTokenText:function(){return l.getSource().substring(h,l.pos())},getScannerState:function(){return c},getTokenError:function(){return i}}}function Se(e,t){var n=0,i=e.length;if(0===i)return 0;for(;n<i;){var r=Math.floor((n+i)/2);t(e[r])?i=r:n=r+1}return n}var xe=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"];function Me(e){return!!e&&function(e,t,n){for(var i=0,r=e.length-1;i<=r;){var a=(i+r)/2|0,o=n(e[a],t);if(o<0)i=a+1;else{if(!(o>0))return a;r=a-1}}return-(i+1)}(xe,e.toLowerCase(),(function(e,t){return e.localeCompare(t)}))>=0}!function(){function e(e,t,n,i){this.start=e,this.end=t,this.children=n,this.parent=i,this.closed=!1}Object.defineProperty(e.prototype,"attributeNames",{get:function(){return this.attributes?Object.keys(this.attributes):[]},enumerable:!0,configurable:!0}),e.prototype.isSameTag=function(e){return this.tag&&e&&this.tag.length===e.length&&this.tag.toLowerCase()===e},Object.defineProperty(e.prototype,"firstChild",{get:function(){return this.children[0]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"lastChild",{get:function(){return this.children.length?this.children[this.children.length-1]:void 0},enumerable:!0,configurable:!0}),e.prototype.findNodeBefore=function(e){var t=Se(this.children,(function(t){return e<=t.start}))-1;if(t>=0){var n=this.children[t];if(e>n.start){if(e<n.end)return n.findNodeBefore(e);var i=n.lastChild;return i&&i.end===n.end?n.findNodeBefore(e):n}}return this},e.prototype.findNodeAt=function(e){var t=Se(this.children,(function(t){return e<=t.start}))-1;if(t>=0){var n=this.children[t];if(e>n.start&&e<=n.end)return n.findNodeAt(e)}return this}}();var Le={"Aacute;":"Á",Aacute:"Á","aacute;":"á",aacute:"á","Abreve;":"Ă","abreve;":"ă","ac;":"∾","acd;":"∿","acE;":"∾̳","Acirc;":"Â",Acirc:"Â","acirc;":"â",acirc:"â","acute;":"´",acute:"´","Acy;":"А","acy;":"а","AElig;":"Æ",AElig:"Æ","aelig;":"æ",aelig:"æ","af;":"⁡","Afr;":"𝔄","afr;":"𝔞","Agrave;":"À",Agrave:"À","agrave;":"à",agrave:"à","alefsym;":"ℵ","aleph;":"ℵ","Alpha;":"Α","alpha;":"α","Amacr;":"Ā","amacr;":"ā","amalg;":"⨿","AMP;":"&",AMP:"&","amp;":"&",amp:"&","And;":"⩓","and;":"∧","andand;":"⩕","andd;":"⩜","andslope;":"⩘","andv;":"⩚","ang;":"∠","ange;":"⦤","angle;":"∠","angmsd;":"∡","angmsdaa;":"⦨","angmsdab;":"⦩","angmsdac;":"⦪","angmsdad;":"⦫","angmsdae;":"⦬","angmsdaf;":"⦭","angmsdag;":"⦮","angmsdah;":"⦯","angrt;":"∟","angrtvb;":"⊾","angrtvbd;":"⦝","angsph;":"∢","angst;":"Å","angzarr;":"⍼","Aogon;":"Ą","aogon;":"ą","Aopf;":"𝔸","aopf;":"𝕒","ap;":"≈","apacir;":"⩯","apE;":"⩰","ape;":"≊","apid;":"≋","apos;":"'","ApplyFunction;":"⁡","approx;":"≈","approxeq;":"≊","Aring;":"Å",Aring:"Å","aring;":"å",aring:"å","Ascr;":"𝒜","ascr;":"𝒶","Assign;":"≔","ast;":"*","asymp;":"≈","asympeq;":"≍","Atilde;":"Ã",Atilde:"Ã","atilde;":"ã",atilde:"ã","Auml;":"Ä",Auml:"Ä","auml;":"ä",auml:"ä","awconint;":"∳","awint;":"⨑","backcong;":"≌","backepsilon;":"϶","backprime;":"‵","backsim;":"∽","backsimeq;":"⋍","Backslash;":"∖","Barv;":"⫧","barvee;":"⊽","Barwed;":"⌆","barwed;":"⌅","barwedge;":"⌅","bbrk;":"⎵","bbrktbrk;":"⎶","bcong;":"≌","Bcy;":"Б","bcy;":"б","bdquo;":"„","becaus;":"∵","Because;":"∵","because;":"∵","bemptyv;":"⦰","bepsi;":"϶","bernou;":"ℬ","Bernoullis;":"ℬ","Beta;":"Β","beta;":"β","beth;":"ℶ","between;":"≬","Bfr;":"𝔅","bfr;":"𝔟","bigcap;":"⋂","bigcirc;":"◯","bigcup;":"⋃","bigodot;":"⨀","bigoplus;":"⨁","bigotimes;":"⨂","bigsqcup;":"⨆","bigstar;":"★","bigtriangledown;":"▽","bigtriangleup;":"△","biguplus;":"⨄","bigvee;":"⋁","bigwedge;":"⋀","bkarow;":"⤍","blacklozenge;":"⧫","blacksquare;":"▪","blacktriangle;":"▴","blacktriangledown;":"▾","blacktriangleleft;":"◂","blacktriangleright;":"▸","blank;":"␣","blk12;":"▒","blk14;":"░","blk34;":"▓","block;":"█","bne;":"=⃥","bnequiv;":"≡⃥","bNot;":"⫭","bnot;":"⌐","Bopf;":"𝔹","bopf;":"𝕓","bot;":"⊥","bottom;":"⊥","bowtie;":"⋈","boxbox;":"⧉","boxDL;":"╗","boxDl;":"╖","boxdL;":"╕","boxdl;":"┐","boxDR;":"╔","boxDr;":"╓","boxdR;":"╒","boxdr;":"┌","boxH;":"═","boxh;":"─","boxHD;":"╦","boxHd;":"╤","boxhD;":"╥","boxhd;":"┬","boxHU;":"╩","boxHu;":"╧","boxhU;":"╨","boxhu;":"┴","boxminus;":"⊟","boxplus;":"⊞","boxtimes;":"⊠","boxUL;":"╝","boxUl;":"╜","boxuL;":"╛","boxul;":"┘","boxUR;":"╚","boxUr;":"╙","boxuR;":"╘","boxur;":"└","boxV;":"║","boxv;":"│","boxVH;":"╬","boxVh;":"╫","boxvH;":"╪","boxvh;":"┼","boxVL;":"╣","boxVl;":"╢","boxvL;":"╡","boxvl;":"┤","boxVR;":"╠","boxVr;":"╟","boxvR;":"╞","boxvr;":"├","bprime;":"‵","Breve;":"˘","breve;":"˘","brvbar;":"¦",brvbar:"¦","Bscr;":"ℬ","bscr;":"𝒷","bsemi;":"⁏","bsim;":"∽","bsime;":"⋍","bsol;":"\\","bsolb;":"⧅","bsolhsub;":"⟈","bull;":"•","bullet;":"•","bump;":"≎","bumpE;":"⪮","bumpe;":"≏","Bumpeq;":"≎","bumpeq;":"≏","Cacute;":"Ć","cacute;":"ć","Cap;":"⋒","cap;":"∩","capand;":"⩄","capbrcup;":"⩉","capcap;":"⩋","capcup;":"⩇","capdot;":"⩀","CapitalDifferentialD;":"ⅅ","caps;":"∩︀","caret;":"⁁","caron;":"ˇ","Cayleys;":"ℭ","ccaps;":"⩍","Ccaron;":"Č","ccaron;":"č","Ccedil;":"Ç",Ccedil:"Ç","ccedil;":"ç",ccedil:"ç","Ccirc;":"Ĉ","ccirc;":"ĉ","Cconint;":"∰","ccups;":"⩌","ccupssm;":"⩐","Cdot;":"Ċ","cdot;":"ċ","cedil;":"¸",cedil:"¸","Cedilla;":"¸","cemptyv;":"⦲","cent;":"¢",cent:"¢","CenterDot;":"·","centerdot;":"·","Cfr;":"ℭ","cfr;":"𝔠","CHcy;":"Ч","chcy;":"ч","check;":"✓","checkmark;":"✓","Chi;":"Χ","chi;":"χ","cir;":"○","circ;":"ˆ","circeq;":"≗","circlearrowleft;":"↺","circlearrowright;":"↻","circledast;":"⊛","circledcirc;":"⊚","circleddash;":"⊝","CircleDot;":"⊙","circledR;":"®","circledS;":"Ⓢ","CircleMinus;":"⊖","CirclePlus;":"⊕","CircleTimes;":"⊗","cirE;":"⧃","cire;":"≗","cirfnint;":"⨐","cirmid;":"⫯","cirscir;":"⧂","ClockwiseContourIntegral;":"∲","CloseCurlyDoubleQuote;":"”","CloseCurlyQuote;":"’","clubs;":"♣","clubsuit;":"♣","Colon;":"∷","colon;":":","Colone;":"⩴","colone;":"≔","coloneq;":"≔","comma;":",","commat;":"@","comp;":"∁","compfn;":"∘","complement;":"∁","complexes;":"ℂ","cong;":"≅","congdot;":"⩭","Congruent;":"≡","Conint;":"∯","conint;":"∮","ContourIntegral;":"∮","Copf;":"ℂ","copf;":"𝕔","coprod;":"∐","Coproduct;":"∐","COPY;":"©",COPY:"©","copy;":"©",copy:"©","copysr;":"℗","CounterClockwiseContourIntegral;":"∳","crarr;":"↵","Cross;":"⨯","cross;":"✗","Cscr;":"𝒞","cscr;":"𝒸","csub;":"⫏","csube;":"⫑","csup;":"⫐","csupe;":"⫒","ctdot;":"⋯","cudarrl;":"⤸","cudarrr;":"⤵","cuepr;":"⋞","cuesc;":"⋟","cularr;":"↶","cularrp;":"⤽","Cup;":"⋓","cup;":"∪","cupbrcap;":"⩈","CupCap;":"≍","cupcap;":"⩆","cupcup;":"⩊","cupdot;":"⊍","cupor;":"⩅","cups;":"∪︀","curarr;":"↷","curarrm;":"⤼","curlyeqprec;":"⋞","curlyeqsucc;":"⋟","curlyvee;":"⋎","curlywedge;":"⋏","curren;":"¤",curren:"¤","curvearrowleft;":"↶","curvearrowright;":"↷","cuvee;":"⋎","cuwed;":"⋏","cwconint;":"∲","cwint;":"∱","cylcty;":"⌭","Dagger;":"‡","dagger;":"†","daleth;":"ℸ","Darr;":"↡","dArr;":"⇓","darr;":"↓","dash;":"‐","Dashv;":"⫤","dashv;":"⊣","dbkarow;":"⤏","dblac;":"˝","Dcaron;":"Ď","dcaron;":"ď","Dcy;":"Д","dcy;":"д","DD;":"ⅅ","dd;":"ⅆ","ddagger;":"‡","ddarr;":"⇊","DDotrahd;":"⤑","ddotseq;":"⩷","deg;":"°",deg:"°","Del;":"∇","Delta;":"Δ","delta;":"δ","demptyv;":"⦱","dfisht;":"⥿","Dfr;":"𝔇","dfr;":"𝔡","dHar;":"⥥","dharl;":"⇃","dharr;":"⇂","DiacriticalAcute;":"´","DiacriticalDot;":"˙","DiacriticalDoubleAcute;":"˝","DiacriticalGrave;":"`","DiacriticalTilde;":"˜","diam;":"⋄","Diamond;":"⋄","diamond;":"⋄","diamondsuit;":"♦","diams;":"♦","die;":"¨","DifferentialD;":"ⅆ","digamma;":"ϝ","disin;":"⋲","div;":"÷","divide;":"÷",divide:"÷","divideontimes;":"⋇","divonx;":"⋇","DJcy;":"Ђ","djcy;":"ђ","dlcorn;":"⌞","dlcrop;":"⌍","dollar;":"$","Dopf;":"𝔻","dopf;":"𝕕","Dot;":"¨","dot;":"˙","DotDot;":"⃜","doteq;":"≐","doteqdot;":"≑","DotEqual;":"≐","dotminus;":"∸","dotplus;":"∔","dotsquare;":"⊡","doublebarwedge;":"⌆","DoubleContourIntegral;":"∯","DoubleDot;":"¨","DoubleDownArrow;":"⇓","DoubleLeftArrow;":"⇐","DoubleLeftRightArrow;":"⇔","DoubleLeftTee;":"⫤","DoubleLongLeftArrow;":"⟸","DoubleLongLeftRightArrow;":"⟺","DoubleLongRightArrow;":"⟹","DoubleRightArrow;":"⇒","DoubleRightTee;":"⊨","DoubleUpArrow;":"⇑","DoubleUpDownArrow;":"⇕","DoubleVerticalBar;":"∥","DownArrow;":"↓","Downarrow;":"⇓","downarrow;":"↓","DownArrowBar;":"⤓","DownArrowUpArrow;":"⇵","DownBreve;":"̑","downdownarrows;":"⇊","downharpoonleft;":"⇃","downharpoonright;":"⇂","DownLeftRightVector;":"⥐","DownLeftTeeVector;":"⥞","DownLeftVector;":"↽","DownLeftVectorBar;":"⥖","DownRightTeeVector;":"⥟","DownRightVector;":"⇁","DownRightVectorBar;":"⥗","DownTee;":"⊤","DownTeeArrow;":"↧","drbkarow;":"⤐","drcorn;":"⌟","drcrop;":"⌌","Dscr;":"𝒟","dscr;":"𝒹","DScy;":"Ѕ","dscy;":"ѕ","dsol;":"⧶","Dstrok;":"Đ","dstrok;":"đ","dtdot;":"⋱","dtri;":"▿","dtrif;":"▾","duarr;":"⇵","duhar;":"⥯","dwangle;":"⦦","DZcy;":"Џ","dzcy;":"џ","dzigrarr;":"⟿","Eacute;":"É",Eacute:"É","eacute;":"é",eacute:"é","easter;":"⩮","Ecaron;":"Ě","ecaron;":"ě","ecir;":"≖","Ecirc;":"Ê",Ecirc:"Ê","ecirc;":"ê",ecirc:"ê","ecolon;":"≕","Ecy;":"Э","ecy;":"э","eDDot;":"⩷","Edot;":"Ė","eDot;":"≑","edot;":"ė","ee;":"ⅇ","efDot;":"≒","Efr;":"𝔈","efr;":"𝔢","eg;":"⪚","Egrave;":"È",Egrave:"È","egrave;":"è",egrave:"è","egs;":"⪖","egsdot;":"⪘","el;":"⪙","Element;":"∈","elinters;":"⏧","ell;":"ℓ","els;":"⪕","elsdot;":"⪗","Emacr;":"Ē","emacr;":"ē","empty;":"∅","emptyset;":"∅","EmptySmallSquare;":"◻","emptyv;":"∅","EmptyVerySmallSquare;":"▫","emsp;":" ","emsp13;":" ","emsp14;":" ","ENG;":"Ŋ","eng;":"ŋ","ensp;":" ","Eogon;":"Ę","eogon;":"ę","Eopf;":"𝔼","eopf;":"𝕖","epar;":"⋕","eparsl;":"⧣","eplus;":"⩱","epsi;":"ε","Epsilon;":"Ε","epsilon;":"ε","epsiv;":"ϵ","eqcirc;":"≖","eqcolon;":"≕","eqsim;":"≂","eqslantgtr;":"⪖","eqslantless;":"⪕","Equal;":"⩵","equals;":"=","EqualTilde;":"≂","equest;":"≟","Equilibrium;":"⇌","equiv;":"≡","equivDD;":"⩸","eqvparsl;":"⧥","erarr;":"⥱","erDot;":"≓","Escr;":"ℰ","escr;":"ℯ","esdot;":"≐","Esim;":"⩳","esim;":"≂","Eta;":"Η","eta;":"η","ETH;":"Ð",ETH:"Ð","eth;":"ð",eth:"ð","Euml;":"Ë",Euml:"Ë","euml;":"ë",euml:"ë","euro;":"€","excl;":"!","exist;":"∃","Exists;":"∃","expectation;":"ℰ","ExponentialE;":"ⅇ","exponentiale;":"ⅇ","fallingdotseq;":"≒","Fcy;":"Ф","fcy;":"ф","female;":"♀","ffilig;":"ffi","fflig;":"ff","ffllig;":"ffl","Ffr;":"𝔉","ffr;":"𝔣","filig;":"fi","FilledSmallSquare;":"◼","FilledVerySmallSquare;":"▪","fjlig;":"fj","flat;":"♭","fllig;":"fl","fltns;":"▱","fnof;":"ƒ","Fopf;":"𝔽","fopf;":"𝕗","ForAll;":"∀","forall;":"∀","fork;":"⋔","forkv;":"⫙","Fouriertrf;":"ℱ","fpartint;":"⨍","frac12;":"½",frac12:"½","frac13;":"⅓","frac14;":"¼",frac14:"¼","frac15;":"⅕","frac16;":"⅙","frac18;":"⅛","frac23;":"⅔","frac25;":"⅖","frac34;":"¾",frac34:"¾","frac35;":"⅗","frac38;":"⅜","frac45;":"⅘","frac56;":"⅚","frac58;":"⅝","frac78;":"⅞","frasl;":"⁄","frown;":"⌢","Fscr;":"ℱ","fscr;":"𝒻","gacute;":"ǵ","Gamma;":"Γ","gamma;":"γ","Gammad;":"Ϝ","gammad;":"ϝ","gap;":"⪆","Gbreve;":"Ğ","gbreve;":"ğ","Gcedil;":"Ģ","Gcirc;":"Ĝ","gcirc;":"ĝ","Gcy;":"Г","gcy;":"г","Gdot;":"Ġ","gdot;":"ġ","gE;":"≧","ge;":"≥","gEl;":"⪌","gel;":"⋛","geq;":"≥","geqq;":"≧","geqslant;":"⩾","ges;":"⩾","gescc;":"⪩","gesdot;":"⪀","gesdoto;":"⪂","gesdotol;":"⪄","gesl;":"⋛︀","gesles;":"⪔","Gfr;":"𝔊","gfr;":"𝔤","Gg;":"⋙","gg;":"≫","ggg;":"⋙","gimel;":"ℷ","GJcy;":"Ѓ","gjcy;":"ѓ","gl;":"≷","gla;":"⪥","glE;":"⪒","glj;":"⪤","gnap;":"⪊","gnapprox;":"⪊","gnE;":"≩","gne;":"⪈","gneq;":"⪈","gneqq;":"≩","gnsim;":"⋧","Gopf;":"𝔾","gopf;":"𝕘","grave;":"`","GreaterEqual;":"≥","GreaterEqualLess;":"⋛","GreaterFullEqual;":"≧","GreaterGreater;":"⪢","GreaterLess;":"≷","GreaterSlantEqual;":"⩾","GreaterTilde;":"≳","Gscr;":"𝒢","gscr;":"ℊ","gsim;":"≳","gsime;":"⪎","gsiml;":"⪐","GT;":">",GT:">","Gt;":"≫","gt;":">",gt:">","gtcc;":"⪧","gtcir;":"⩺","gtdot;":"⋗","gtlPar;":"⦕","gtquest;":"⩼","gtrapprox;":"⪆","gtrarr;":"⥸","gtrdot;":"⋗","gtreqless;":"⋛","gtreqqless;":"⪌","gtrless;":"≷","gtrsim;":"≳","gvertneqq;":"≩︀","gvnE;":"≩︀","Hacek;":"ˇ","hairsp;":" ","half;":"½","hamilt;":"ℋ","HARDcy;":"Ъ","hardcy;":"ъ","hArr;":"⇔","harr;":"↔","harrcir;":"⥈","harrw;":"↭","Hat;":"^","hbar;":"ℏ","Hcirc;":"Ĥ","hcirc;":"ĥ","hearts;":"♥","heartsuit;":"♥","hellip;":"…","hercon;":"⊹","Hfr;":"ℌ","hfr;":"𝔥","HilbertSpace;":"ℋ","hksearow;":"⤥","hkswarow;":"⤦","hoarr;":"⇿","homtht;":"∻","hookleftarrow;":"↩","hookrightarrow;":"↪","Hopf;":"ℍ","hopf;":"𝕙","horbar;":"―","HorizontalLine;":"─","Hscr;":"ℋ","hscr;":"𝒽","hslash;":"ℏ","Hstrok;":"Ħ","hstrok;":"ħ","HumpDownHump;":"≎","HumpEqual;":"≏","hybull;":"⁃","hyphen;":"‐","Iacute;":"Í",Iacute:"Í","iacute;":"í",iacute:"í","ic;":"⁣","Icirc;":"Î",Icirc:"Î","icirc;":"î",icirc:"î","Icy;":"И","icy;":"и","Idot;":"İ","IEcy;":"Е","iecy;":"е","iexcl;":"¡",iexcl:"¡","iff;":"⇔","Ifr;":"ℑ","ifr;":"𝔦","Igrave;":"Ì",Igrave:"Ì","igrave;":"ì",igrave:"ì","ii;":"ⅈ","iiiint;":"⨌","iiint;":"∭","iinfin;":"⧜","iiota;":"℩","IJlig;":"IJ","ijlig;":"ij","Im;":"ℑ","Imacr;":"Ī","imacr;":"ī","image;":"ℑ","ImaginaryI;":"ⅈ","imagline;":"ℐ","imagpart;":"ℑ","imath;":"ı","imof;":"⊷","imped;":"Ƶ","Implies;":"⇒","in;":"∈","incare;":"℅","infin;":"∞","infintie;":"⧝","inodot;":"ı","Int;":"∬","int;":"∫","intcal;":"⊺","integers;":"ℤ","Integral;":"∫","intercal;":"⊺","Intersection;":"⋂","intlarhk;":"⨗","intprod;":"⨼","InvisibleComma;":"⁣","InvisibleTimes;":"⁢","IOcy;":"Ё","iocy;":"ё","Iogon;":"Į","iogon;":"į","Iopf;":"𝕀","iopf;":"𝕚","Iota;":"Ι","iota;":"ι","iprod;":"⨼","iquest;":"¿",iquest:"¿","Iscr;":"ℐ","iscr;":"𝒾","isin;":"∈","isindot;":"⋵","isinE;":"⋹","isins;":"⋴","isinsv;":"⋳","isinv;":"∈","it;":"⁢","Itilde;":"Ĩ","itilde;":"ĩ","Iukcy;":"І","iukcy;":"і","Iuml;":"Ï",Iuml:"Ï","iuml;":"ï",iuml:"ï","Jcirc;":"Ĵ","jcirc;":"ĵ","Jcy;":"Й","jcy;":"й","Jfr;":"𝔍","jfr;":"𝔧","jmath;":"ȷ","Jopf;":"𝕁","jopf;":"𝕛","Jscr;":"𝒥","jscr;":"𝒿","Jsercy;":"Ј","jsercy;":"ј","Jukcy;":"Є","jukcy;":"є","Kappa;":"Κ","kappa;":"κ","kappav;":"ϰ","Kcedil;":"Ķ","kcedil;":"ķ","Kcy;":"К","kcy;":"к","Kfr;":"𝔎","kfr;":"𝔨","kgreen;":"ĸ","KHcy;":"Х","khcy;":"х","KJcy;":"Ќ","kjcy;":"ќ","Kopf;":"𝕂","kopf;":"𝕜","Kscr;":"𝒦","kscr;":"𝓀","lAarr;":"⇚","Lacute;":"Ĺ","lacute;":"ĺ","laemptyv;":"⦴","lagran;":"ℒ","Lambda;":"Λ","lambda;":"λ","Lang;":"⟪","lang;":"⟨","langd;":"⦑","langle;":"⟨","lap;":"⪅","Laplacetrf;":"ℒ","laquo;":"«",laquo:"«","Larr;":"↞","lArr;":"⇐","larr;":"←","larrb;":"⇤","larrbfs;":"⤟","larrfs;":"⤝","larrhk;":"↩","larrlp;":"↫","larrpl;":"⤹","larrsim;":"⥳","larrtl;":"↢","lat;":"⪫","lAtail;":"⤛","latail;":"⤙","late;":"⪭","lates;":"⪭︀","lBarr;":"⤎","lbarr;":"⤌","lbbrk;":"❲","lbrace;":"{","lbrack;":"[","lbrke;":"⦋","lbrksld;":"⦏","lbrkslu;":"⦍","Lcaron;":"Ľ","lcaron;":"ľ","Lcedil;":"Ļ","lcedil;":"ļ","lceil;":"⌈","lcub;":"{","Lcy;":"Л","lcy;":"л","ldca;":"⤶","ldquo;":"“","ldquor;":"„","ldrdhar;":"⥧","ldrushar;":"⥋","ldsh;":"↲","lE;":"≦","le;":"≤","LeftAngleBracket;":"⟨","LeftArrow;":"←","Leftarrow;":"⇐","leftarrow;":"←","LeftArrowBar;":"⇤","LeftArrowRightArrow;":"⇆","leftarrowtail;":"↢","LeftCeiling;":"⌈","LeftDoubleBracket;":"⟦","LeftDownTeeVector;":"⥡","LeftDownVector;":"⇃","LeftDownVectorBar;":"⥙","LeftFloor;":"⌊","leftharpoondown;":"↽","leftharpoonup;":"↼","leftleftarrows;":"⇇","LeftRightArrow;":"↔","Leftrightarrow;":"⇔","leftrightarrow;":"↔","leftrightarrows;":"⇆","leftrightharpoons;":"⇋","leftrightsquigarrow;":"↭","LeftRightVector;":"⥎","LeftTee;":"⊣","LeftTeeArrow;":"↤","LeftTeeVector;":"⥚","leftthreetimes;":"⋋","LeftTriangle;":"⊲","LeftTriangleBar;":"⧏","LeftTriangleEqual;":"⊴","LeftUpDownVector;":"⥑","LeftUpTeeVector;":"⥠","LeftUpVector;":"↿","LeftUpVectorBar;":"⥘","LeftVector;":"↼","LeftVectorBar;":"⥒","lEg;":"⪋","leg;":"⋚","leq;":"≤","leqq;":"≦","leqslant;":"⩽","les;":"⩽","lescc;":"⪨","lesdot;":"⩿","lesdoto;":"⪁","lesdotor;":"⪃","lesg;":"⋚︀","lesges;":"⪓","lessapprox;":"⪅","lessdot;":"⋖","lesseqgtr;":"⋚","lesseqqgtr;":"⪋","LessEqualGreater;":"⋚","LessFullEqual;":"≦","LessGreater;":"≶","lessgtr;":"≶","LessLess;":"⪡","lesssim;":"≲","LessSlantEqual;":"⩽","LessTilde;":"≲","lfisht;":"⥼","lfloor;":"⌊","Lfr;":"𝔏","lfr;":"𝔩","lg;":"≶","lgE;":"⪑","lHar;":"⥢","lhard;":"↽","lharu;":"↼","lharul;":"⥪","lhblk;":"▄","LJcy;":"Љ","ljcy;":"љ","Ll;":"⋘","ll;":"≪","llarr;":"⇇","llcorner;":"⌞","Lleftarrow;":"⇚","llhard;":"⥫","lltri;":"◺","Lmidot;":"Ŀ","lmidot;":"ŀ","lmoust;":"⎰","lmoustache;":"⎰","lnap;":"⪉","lnapprox;":"⪉","lnE;":"≨","lne;":"⪇","lneq;":"⪇","lneqq;":"≨","lnsim;":"⋦","loang;":"⟬","loarr;":"⇽","lobrk;":"⟦","LongLeftArrow;":"⟵","Longleftarrow;":"⟸","longleftarrow;":"⟵","LongLeftRightArrow;":"⟷","Longleftrightarrow;":"⟺","longleftrightarrow;":"⟷","longmapsto;":"⟼","LongRightArrow;":"⟶","Longrightarrow;":"⟹","longrightarrow;":"⟶","looparrowleft;":"↫","looparrowright;":"↬","lopar;":"⦅","Lopf;":"𝕃","lopf;":"𝕝","loplus;":"⨭","lotimes;":"⨴","lowast;":"∗","lowbar;":"_","LowerLeftArrow;":"↙","LowerRightArrow;":"↘","loz;":"◊","lozenge;":"◊","lozf;":"⧫","lpar;":"(","lparlt;":"⦓","lrarr;":"⇆","lrcorner;":"⌟","lrhar;":"⇋","lrhard;":"⥭","lrm;":"‎","lrtri;":"⊿","lsaquo;":"‹","Lscr;":"ℒ","lscr;":"𝓁","Lsh;":"↰","lsh;":"↰","lsim;":"≲","lsime;":"⪍","lsimg;":"⪏","lsqb;":"[","lsquo;":"‘","lsquor;":"‚","Lstrok;":"Ł","lstrok;":"ł","LT;":"<",LT:"<","Lt;":"≪","lt;":"<",lt:"<","ltcc;":"⪦","ltcir;":"⩹","ltdot;":"⋖","lthree;":"⋋","ltimes;":"⋉","ltlarr;":"⥶","ltquest;":"⩻","ltri;":"◃","ltrie;":"⊴","ltrif;":"◂","ltrPar;":"⦖","lurdshar;":"⥊","luruhar;":"⥦","lvertneqq;":"≨︀","lvnE;":"≨︀","macr;":"¯",macr:"¯","male;":"♂","malt;":"✠","maltese;":"✠","Map;":"⤅","map;":"↦","mapsto;":"↦","mapstodown;":"↧","mapstoleft;":"↤","mapstoup;":"↥","marker;":"▮","mcomma;":"⨩","Mcy;":"М","mcy;":"м","mdash;":"—","mDDot;":"∺","measuredangle;":"∡","MediumSpace;":" ","Mellintrf;":"ℳ","Mfr;":"𝔐","mfr;":"𝔪","mho;":"℧","micro;":"µ",micro:"µ","mid;":"∣","midast;":"*","midcir;":"⫰","middot;":"·",middot:"·","minus;":"−","minusb;":"⊟","minusd;":"∸","minusdu;":"⨪","MinusPlus;":"∓","mlcp;":"⫛","mldr;":"…","mnplus;":"∓","models;":"⊧","Mopf;":"𝕄","mopf;":"𝕞","mp;":"∓","Mscr;":"ℳ","mscr;":"𝓂","mstpos;":"∾","Mu;":"Μ","mu;":"μ","multimap;":"⊸","mumap;":"⊸","nabla;":"∇","Nacute;":"Ń","nacute;":"ń","nang;":"∠⃒","nap;":"≉","napE;":"⩰̸","napid;":"≋̸","napos;":"ʼn","napprox;":"≉","natur;":"♮","natural;":"♮","naturals;":"ℕ","nbsp;":" ",nbsp:" ","nbump;":"≎̸","nbumpe;":"≏̸","ncap;":"⩃","Ncaron;":"Ň","ncaron;":"ň","Ncedil;":"Ņ","ncedil;":"ņ","ncong;":"≇","ncongdot;":"⩭̸","ncup;":"⩂","Ncy;":"Н","ncy;":"н","ndash;":"–","ne;":"≠","nearhk;":"⤤","neArr;":"⇗","nearr;":"↗","nearrow;":"↗","nedot;":"≐̸","NegativeMediumSpace;":"​","NegativeThickSpace;":"​","NegativeThinSpace;":"​","NegativeVeryThinSpace;":"​","nequiv;":"≢","nesear;":"⤨","nesim;":"≂̸","NestedGreaterGreater;":"≫","NestedLessLess;":"≪","NewLine;":"\n","nexist;":"∄","nexists;":"∄","Nfr;":"𝔑","nfr;":"𝔫","ngE;":"≧̸","nge;":"≱","ngeq;":"≱","ngeqq;":"≧̸","ngeqslant;":"⩾̸","nges;":"⩾̸","nGg;":"⋙̸","ngsim;":"≵","nGt;":"≫⃒","ngt;":"≯","ngtr;":"≯","nGtv;":"≫̸","nhArr;":"⇎","nharr;":"↮","nhpar;":"⫲","ni;":"∋","nis;":"⋼","nisd;":"⋺","niv;":"∋","NJcy;":"Њ","njcy;":"њ","nlArr;":"⇍","nlarr;":"↚","nldr;":"‥","nlE;":"≦̸","nle;":"≰","nLeftarrow;":"⇍","nleftarrow;":"↚","nLeftrightarrow;":"⇎","nleftrightarrow;":"↮","nleq;":"≰","nleqq;":"≦̸","nleqslant;":"⩽̸","nles;":"⩽̸","nless;":"≮","nLl;":"⋘̸","nlsim;":"≴","nLt;":"≪⃒","nlt;":"≮","nltri;":"⋪","nltrie;":"⋬","nLtv;":"≪̸","nmid;":"∤","NoBreak;":"⁠","NonBreakingSpace;":" ","Nopf;":"ℕ","nopf;":"𝕟","Not;":"⫬","not;":"¬",not:"¬","NotCongruent;":"≢","NotCupCap;":"≭","NotDoubleVerticalBar;":"∦","NotElement;":"∉","NotEqual;":"≠","NotEqualTilde;":"≂̸","NotExists;":"∄","NotGreater;":"≯","NotGreaterEqual;":"≱","NotGreaterFullEqual;":"≧̸","NotGreaterGreater;":"≫̸","NotGreaterLess;":"≹","NotGreaterSlantEqual;":"⩾̸","NotGreaterTilde;":"≵","NotHumpDownHump;":"≎̸","NotHumpEqual;":"≏̸","notin;":"∉","notindot;":"⋵̸","notinE;":"⋹̸","notinva;":"∉","notinvb;":"⋷","notinvc;":"⋶","NotLeftTriangle;":"⋪","NotLeftTriangleBar;":"⧏̸","NotLeftTriangleEqual;":"⋬","NotLess;":"≮","NotLessEqual;":"≰","NotLessGreater;":"≸","NotLessLess;":"≪̸","NotLessSlantEqual;":"⩽̸","NotLessTilde;":"≴","NotNestedGreaterGreater;":"⪢̸","NotNestedLessLess;":"⪡̸","notni;":"∌","notniva;":"∌","notnivb;":"⋾","notnivc;":"⋽","NotPrecedes;":"⊀","NotPrecedesEqual;":"⪯̸","NotPrecedesSlantEqual;":"⋠","NotReverseElement;":"∌","NotRightTriangle;":"⋫","NotRightTriangleBar;":"⧐̸","NotRightTriangleEqual;":"⋭","NotSquareSubset;":"⊏̸","NotSquareSubsetEqual;":"⋢","NotSquareSuperset;":"⊐̸","NotSquareSupersetEqual;":"⋣","NotSubset;":"⊂⃒","NotSubsetEqual;":"⊈","NotSucceeds;":"⊁","NotSucceedsEqual;":"⪰̸","NotSucceedsSlantEqual;":"⋡","NotSucceedsTilde;":"≿̸","NotSuperset;":"⊃⃒","NotSupersetEqual;":"⊉","NotTilde;":"≁","NotTildeEqual;":"≄","NotTildeFullEqual;":"≇","NotTildeTilde;":"≉","NotVerticalBar;":"∤","npar;":"∦","nparallel;":"∦","nparsl;":"⫽⃥","npart;":"∂̸","npolint;":"⨔","npr;":"⊀","nprcue;":"⋠","npre;":"⪯̸","nprec;":"⊀","npreceq;":"⪯̸","nrArr;":"⇏","nrarr;":"↛","nrarrc;":"⤳̸","nrarrw;":"↝̸","nRightarrow;":"⇏","nrightarrow;":"↛","nrtri;":"⋫","nrtrie;":"⋭","nsc;":"⊁","nsccue;":"⋡","nsce;":"⪰̸","Nscr;":"𝒩","nscr;":"𝓃","nshortmid;":"∤","nshortparallel;":"∦","nsim;":"≁","nsime;":"≄","nsimeq;":"≄","nsmid;":"∤","nspar;":"∦","nsqsube;":"⋢","nsqsupe;":"⋣","nsub;":"⊄","nsubE;":"⫅̸","nsube;":"⊈","nsubset;":"⊂⃒","nsubseteq;":"⊈","nsubseteqq;":"⫅̸","nsucc;":"⊁","nsucceq;":"⪰̸","nsup;":"⊅","nsupE;":"⫆̸","nsupe;":"⊉","nsupset;":"⊃⃒","nsupseteq;":"⊉","nsupseteqq;":"⫆̸","ntgl;":"≹","Ntilde;":"Ñ",Ntilde:"Ñ","ntilde;":"ñ",ntilde:"ñ","ntlg;":"≸","ntriangleleft;":"⋪","ntrianglelefteq;":"⋬","ntriangleright;":"⋫","ntrianglerighteq;":"⋭","Nu;":"Ν","nu;":"ν","num;":"#","numero;":"№","numsp;":" ","nvap;":"≍⃒","nVDash;":"⊯","nVdash;":"⊮","nvDash;":"⊭","nvdash;":"⊬","nvge;":"≥⃒","nvgt;":">⃒","nvHarr;":"⤄","nvinfin;":"⧞","nvlArr;":"⤂","nvle;":"≤⃒","nvlt;":"<⃒","nvltrie;":"⊴⃒","nvrArr;":"⤃","nvrtrie;":"⊵⃒","nvsim;":"∼⃒","nwarhk;":"⤣","nwArr;":"⇖","nwarr;":"↖","nwarrow;":"↖","nwnear;":"⤧","Oacute;":"Ó",Oacute:"Ó","oacute;":"ó",oacute:"ó","oast;":"⊛","ocir;":"⊚","Ocirc;":"Ô",Ocirc:"Ô","ocirc;":"ô",ocirc:"ô","Ocy;":"О","ocy;":"о","odash;":"⊝","Odblac;":"Ő","odblac;":"ő","odiv;":"⨸","odot;":"⊙","odsold;":"⦼","OElig;":"Œ","oelig;":"œ","ofcir;":"⦿","Ofr;":"𝔒","ofr;":"𝔬","ogon;":"˛","Ograve;":"Ò",Ograve:"Ò","ograve;":"ò",ograve:"ò","ogt;":"⧁","ohbar;":"⦵","ohm;":"Ω","oint;":"∮","olarr;":"↺","olcir;":"⦾","olcross;":"⦻","oline;":"‾","olt;":"⧀","Omacr;":"Ō","omacr;":"ō","Omega;":"Ω","omega;":"ω","Omicron;":"Ο","omicron;":"ο","omid;":"⦶","ominus;":"⊖","Oopf;":"𝕆","oopf;":"𝕠","opar;":"⦷","OpenCurlyDoubleQuote;":"“","OpenCurlyQuote;":"‘","operp;":"⦹","oplus;":"⊕","Or;":"⩔","or;":"∨","orarr;":"↻","ord;":"⩝","order;":"ℴ","orderof;":"ℴ","ordf;":"ª",ordf:"ª","ordm;":"º",ordm:"º","origof;":"⊶","oror;":"⩖","orslope;":"⩗","orv;":"⩛","oS;":"Ⓢ","Oscr;":"𝒪","oscr;":"ℴ","Oslash;":"Ø",Oslash:"Ø","oslash;":"ø",oslash:"ø","osol;":"⊘","Otilde;":"Õ",Otilde:"Õ","otilde;":"õ",otilde:"õ","Otimes;":"⨷","otimes;":"⊗","otimesas;":"⨶","Ouml;":"Ö",Ouml:"Ö","ouml;":"ö",ouml:"ö","ovbar;":"⌽","OverBar;":"‾","OverBrace;":"⏞","OverBracket;":"⎴","OverParenthesis;":"⏜","par;":"∥","para;":"¶",para:"¶","parallel;":"∥","parsim;":"⫳","parsl;":"⫽","part;":"∂","PartialD;":"∂","Pcy;":"П","pcy;":"п","percnt;":"%","period;":".","permil;":"‰","perp;":"⊥","pertenk;":"‱","Pfr;":"𝔓","pfr;":"𝔭","Phi;":"Φ","phi;":"φ","phiv;":"ϕ","phmmat;":"ℳ","phone;":"☎","Pi;":"Π","pi;":"π","pitchfork;":"⋔","piv;":"ϖ","planck;":"ℏ","planckh;":"ℎ","plankv;":"ℏ","plus;":"+","plusacir;":"⨣","plusb;":"⊞","pluscir;":"⨢","plusdo;":"∔","plusdu;":"⨥","pluse;":"⩲","PlusMinus;":"±","plusmn;":"±",plusmn:"±","plussim;":"⨦","plustwo;":"⨧","pm;":"±","Poincareplane;":"ℌ","pointint;":"⨕","Popf;":"ℙ","popf;":"𝕡","pound;":"£",pound:"£","Pr;":"⪻","pr;":"≺","prap;":"⪷","prcue;":"≼","prE;":"⪳","pre;":"⪯","prec;":"≺","precapprox;":"⪷","preccurlyeq;":"≼","Precedes;":"≺","PrecedesEqual;":"⪯","PrecedesSlantEqual;":"≼","PrecedesTilde;":"≾","preceq;":"⪯","precnapprox;":"⪹","precneqq;":"⪵","precnsim;":"⋨","precsim;":"≾","Prime;":"″","prime;":"′","primes;":"ℙ","prnap;":"⪹","prnE;":"⪵","prnsim;":"⋨","prod;":"∏","Product;":"∏","profalar;":"⌮","profline;":"⌒","profsurf;":"⌓","prop;":"∝","Proportion;":"∷","Proportional;":"∝","propto;":"∝","prsim;":"≾","prurel;":"⊰","Pscr;":"𝒫","pscr;":"𝓅","Psi;":"Ψ","psi;":"ψ","puncsp;":" ","Qfr;":"𝔔","qfr;":"𝔮","qint;":"⨌","Qopf;":"ℚ","qopf;":"𝕢","qprime;":"⁗","Qscr;":"𝒬","qscr;":"𝓆","quaternions;":"ℍ","quatint;":"⨖","quest;":"?","questeq;":"≟","QUOT;":'"',QUOT:'"',"quot;":'"',quot:'"',"rAarr;":"⇛","race;":"∽̱","Racute;":"Ŕ","racute;":"ŕ","radic;":"√","raemptyv;":"⦳","Rang;":"⟫","rang;":"⟩","rangd;":"⦒","range;":"⦥","rangle;":"⟩","raquo;":"»",raquo:"»","Rarr;":"↠","rArr;":"⇒","rarr;":"→","rarrap;":"⥵","rarrb;":"⇥","rarrbfs;":"⤠","rarrc;":"⤳","rarrfs;":"⤞","rarrhk;":"↪","rarrlp;":"↬","rarrpl;":"⥅","rarrsim;":"⥴","Rarrtl;":"⤖","rarrtl;":"↣","rarrw;":"↝","rAtail;":"⤜","ratail;":"⤚","ratio;":"∶","rationals;":"ℚ","RBarr;":"⤐","rBarr;":"⤏","rbarr;":"⤍","rbbrk;":"❳","rbrace;":"}","rbrack;":"]","rbrke;":"⦌","rbrksld;":"⦎","rbrkslu;":"⦐","Rcaron;":"Ř","rcaron;":"ř","Rcedil;":"Ŗ","rcedil;":"ŗ","rceil;":"⌉","rcub;":"}","Rcy;":"Р","rcy;":"р","rdca;":"⤷","rdldhar;":"⥩","rdquo;":"”","rdquor;":"”","rdsh;":"↳","Re;":"ℜ","real;":"ℜ","realine;":"ℛ","realpart;":"ℜ","reals;":"ℝ","rect;":"▭","REG;":"®",REG:"®","reg;":"®",reg:"®","ReverseElement;":"∋","ReverseEquilibrium;":"⇋","ReverseUpEquilibrium;":"⥯","rfisht;":"⥽","rfloor;":"⌋","Rfr;":"ℜ","rfr;":"𝔯","rHar;":"⥤","rhard;":"⇁","rharu;":"⇀","rharul;":"⥬","Rho;":"Ρ","rho;":"ρ","rhov;":"ϱ","RightAngleBracket;":"⟩","RightArrow;":"→","Rightarrow;":"⇒","rightarrow;":"→","RightArrowBar;":"⇥","RightArrowLeftArrow;":"⇄","rightarrowtail;":"↣","RightCeiling;":"⌉","RightDoubleBracket;":"⟧","RightDownTeeVector;":"⥝","RightDownVector;":"⇂","RightDownVectorBar;":"⥕","RightFloor;":"⌋","rightharpoondown;":"⇁","rightharpoonup;":"⇀","rightleftarrows;":"⇄","rightleftharpoons;":"⇌","rightrightarrows;":"⇉","rightsquigarrow;":"↝","RightTee;":"⊢","RightTeeArrow;":"↦","RightTeeVector;":"⥛","rightthreetimes;":"⋌","RightTriangle;":"⊳","RightTriangleBar;":"⧐","RightTriangleEqual;":"⊵","RightUpDownVector;":"⥏","RightUpTeeVector;":"⥜","RightUpVector;":"↾","RightUpVectorBar;":"⥔","RightVector;":"⇀","RightVectorBar;":"⥓","ring;":"˚","risingdotseq;":"≓","rlarr;":"⇄","rlhar;":"⇌","rlm;":"‏","rmoust;":"⎱","rmoustache;":"⎱","rnmid;":"⫮","roang;":"⟭","roarr;":"⇾","robrk;":"⟧","ropar;":"⦆","Ropf;":"ℝ","ropf;":"𝕣","roplus;":"⨮","rotimes;":"⨵","RoundImplies;":"⥰","rpar;":")","rpargt;":"⦔","rppolint;":"⨒","rrarr;":"⇉","Rrightarrow;":"⇛","rsaquo;":"›","Rscr;":"ℛ","rscr;":"𝓇","Rsh;":"↱","rsh;":"↱","rsqb;":"]","rsquo;":"’","rsquor;":"’","rthree;":"⋌","rtimes;":"⋊","rtri;":"▹","rtrie;":"⊵","rtrif;":"▸","rtriltri;":"⧎","RuleDelayed;":"⧴","ruluhar;":"⥨","rx;":"℞","Sacute;":"Ś","sacute;":"ś","sbquo;":"‚","Sc;":"⪼","sc;":"≻","scap;":"⪸","Scaron;":"Š","scaron;":"š","sccue;":"≽","scE;":"⪴","sce;":"⪰","Scedil;":"Ş","scedil;":"ş","Scirc;":"Ŝ","scirc;":"ŝ","scnap;":"⪺","scnE;":"⪶","scnsim;":"⋩","scpolint;":"⨓","scsim;":"≿","Scy;":"С","scy;":"с","sdot;":"⋅","sdotb;":"⊡","sdote;":"⩦","searhk;":"⤥","seArr;":"⇘","searr;":"↘","searrow;":"↘","sect;":"§",sect:"§","semi;":";","seswar;":"⤩","setminus;":"∖","setmn;":"∖","sext;":"✶","Sfr;":"𝔖","sfr;":"𝔰","sfrown;":"⌢","sharp;":"♯","SHCHcy;":"Щ","shchcy;":"щ","SHcy;":"Ш","shcy;":"ш","ShortDownArrow;":"↓","ShortLeftArrow;":"←","shortmid;":"∣","shortparallel;":"∥","ShortRightArrow;":"→","ShortUpArrow;":"↑","shy;":"­",shy:"­","Sigma;":"Σ","sigma;":"σ","sigmaf;":"ς","sigmav;":"ς","sim;":"∼","simdot;":"⩪","sime;":"≃","simeq;":"≃","simg;":"⪞","simgE;":"⪠","siml;":"⪝","simlE;":"⪟","simne;":"≆","simplus;":"⨤","simrarr;":"⥲","slarr;":"←","SmallCircle;":"∘","smallsetminus;":"∖","smashp;":"⨳","smeparsl;":"⧤","smid;":"∣","smile;":"⌣","smt;":"⪪","smte;":"⪬","smtes;":"⪬︀","SOFTcy;":"Ь","softcy;":"ь","sol;":"/","solb;":"⧄","solbar;":"⌿","Sopf;":"𝕊","sopf;":"𝕤","spades;":"♠","spadesuit;":"♠","spar;":"∥","sqcap;":"⊓","sqcaps;":"⊓︀","sqcup;":"⊔","sqcups;":"⊔︀","Sqrt;":"√","sqsub;":"⊏","sqsube;":"⊑","sqsubset;":"⊏","sqsubseteq;":"⊑","sqsup;":"⊐","sqsupe;":"⊒","sqsupset;":"⊐","sqsupseteq;":"⊒","squ;":"□","Square;":"□","square;":"□","SquareIntersection;":"⊓","SquareSubset;":"⊏","SquareSubsetEqual;":"⊑","SquareSuperset;":"⊐","SquareSupersetEqual;":"⊒","SquareUnion;":"⊔","squarf;":"▪","squf;":"▪","srarr;":"→","Sscr;":"𝒮","sscr;":"𝓈","ssetmn;":"∖","ssmile;":"⌣","sstarf;":"⋆","Star;":"⋆","star;":"☆","starf;":"★","straightepsilon;":"ϵ","straightphi;":"ϕ","strns;":"¯","Sub;":"⋐","sub;":"⊂","subdot;":"⪽","subE;":"⫅","sube;":"⊆","subedot;":"⫃","submult;":"⫁","subnE;":"⫋","subne;":"⊊","subplus;":"⪿","subrarr;":"⥹","Subset;":"⋐","subset;":"⊂","subseteq;":"⊆","subseteqq;":"⫅","SubsetEqual;":"⊆","subsetneq;":"⊊","subsetneqq;":"⫋","subsim;":"⫇","subsub;":"⫕","subsup;":"⫓","succ;":"≻","succapprox;":"⪸","succcurlyeq;":"≽","Succeeds;":"≻","SucceedsEqual;":"⪰","SucceedsSlantEqual;":"≽","SucceedsTilde;":"≿","succeq;":"⪰","succnapprox;":"⪺","succneqq;":"⪶","succnsim;":"⋩","succsim;":"≿","SuchThat;":"∋","Sum;":"∑","sum;":"∑","sung;":"♪","Sup;":"⋑","sup;":"⊃","sup1;":"¹",sup1:"¹","sup2;":"²",sup2:"²","sup3;":"³",sup3:"³","supdot;":"⪾","supdsub;":"⫘","supE;":"⫆","supe;":"⊇","supedot;":"⫄","Superset;":"⊃","SupersetEqual;":"⊇","suphsol;":"⟉","suphsub;":"⫗","suplarr;":"⥻","supmult;":"⫂","supnE;":"⫌","supne;":"⊋","supplus;":"⫀","Supset;":"⋑","supset;":"⊃","supseteq;":"⊇","supseteqq;":"⫆","supsetneq;":"⊋","supsetneqq;":"⫌","supsim;":"⫈","supsub;":"⫔","supsup;":"⫖","swarhk;":"⤦","swArr;":"⇙","swarr;":"↙","swarrow;":"↙","swnwar;":"⤪","szlig;":"ß",szlig:"ß","Tab;":"\t","target;":"⌖","Tau;":"Τ","tau;":"τ","tbrk;":"⎴","Tcaron;":"Ť","tcaron;":"ť","Tcedil;":"Ţ","tcedil;":"ţ","Tcy;":"Т","tcy;":"т","tdot;":"⃛","telrec;":"⌕","Tfr;":"𝔗","tfr;":"𝔱","there4;":"∴","Therefore;":"∴","therefore;":"∴","Theta;":"Θ","theta;":"θ","thetasym;":"ϑ","thetav;":"ϑ","thickapprox;":"≈","thicksim;":"∼","ThickSpace;":"  ","thinsp;":" ","ThinSpace;":" ","thkap;":"≈","thksim;":"∼","THORN;":"Þ",THORN:"Þ","thorn;":"þ",thorn:"þ","Tilde;":"∼","tilde;":"˜","TildeEqual;":"≃","TildeFullEqual;":"≅","TildeTilde;":"≈","times;":"×",times:"×","timesb;":"⊠","timesbar;":"⨱","timesd;":"⨰","tint;":"∭","toea;":"⤨","top;":"⊤","topbot;":"⌶","topcir;":"⫱","Topf;":"𝕋","topf;":"𝕥","topfork;":"⫚","tosa;":"⤩","tprime;":"‴","TRADE;":"™","trade;":"™","triangle;":"▵","triangledown;":"▿","triangleleft;":"◃","trianglelefteq;":"⊴","triangleq;":"≜","triangleright;":"▹","trianglerighteq;":"⊵","tridot;":"◬","trie;":"≜","triminus;":"⨺","TripleDot;":"⃛","triplus;":"⨹","trisb;":"⧍","tritime;":"⨻","trpezium;":"⏢","Tscr;":"𝒯","tscr;":"𝓉","TScy;":"Ц","tscy;":"ц","TSHcy;":"Ћ","tshcy;":"ћ","Tstrok;":"Ŧ","tstrok;":"ŧ","twixt;":"≬","twoheadleftarrow;":"↞","twoheadrightarrow;":"↠","Uacute;":"Ú",Uacute:"Ú","uacute;":"ú",uacute:"ú","Uarr;":"↟","uArr;":"⇑","uarr;":"↑","Uarrocir;":"⥉","Ubrcy;":"Ў","ubrcy;":"ў","Ubreve;":"Ŭ","ubreve;":"ŭ","Ucirc;":"Û",Ucirc:"Û","ucirc;":"û",ucirc:"û","Ucy;":"У","ucy;":"у","udarr;":"⇅","Udblac;":"Ű","udblac;":"ű","udhar;":"⥮","ufisht;":"⥾","Ufr;":"𝔘","ufr;":"𝔲","Ugrave;":"Ù",Ugrave:"Ù","ugrave;":"ù",ugrave:"ù","uHar;":"⥣","uharl;":"↿","uharr;":"↾","uhblk;":"▀","ulcorn;":"⌜","ulcorner;":"⌜","ulcrop;":"⌏","ultri;":"◸","Umacr;":"Ū","umacr;":"ū","uml;":"¨",uml:"¨","UnderBar;":"_","UnderBrace;":"⏟","UnderBracket;":"⎵","UnderParenthesis;":"⏝","Union;":"⋃","UnionPlus;":"⊎","Uogon;":"Ų","uogon;":"ų","Uopf;":"𝕌","uopf;":"𝕦","UpArrow;":"↑","Uparrow;":"⇑","uparrow;":"↑","UpArrowBar;":"⤒","UpArrowDownArrow;":"⇅","UpDownArrow;":"↕","Updownarrow;":"⇕","updownarrow;":"↕","UpEquilibrium;":"⥮","upharpoonleft;":"↿","upharpoonright;":"↾","uplus;":"⊎","UpperLeftArrow;":"↖","UpperRightArrow;":"↗","Upsi;":"ϒ","upsi;":"υ","upsih;":"ϒ","Upsilon;":"Υ","upsilon;":"υ","UpTee;":"⊥","UpTeeArrow;":"↥","upuparrows;":"⇈","urcorn;":"⌝","urcorner;":"⌝","urcrop;":"⌎","Uring;":"Ů","uring;":"ů","urtri;":"◹","Uscr;":"𝒰","uscr;":"𝓊","utdot;":"⋰","Utilde;":"Ũ","utilde;":"ũ","utri;":"▵","utrif;":"▴","uuarr;":"⇈","Uuml;":"Ü",Uuml:"Ü","uuml;":"ü",uuml:"ü","uwangle;":"⦧","vangrt;":"⦜","varepsilon;":"ϵ","varkappa;":"ϰ","varnothing;":"∅","varphi;":"ϕ","varpi;":"ϖ","varpropto;":"∝","vArr;":"⇕","varr;":"↕","varrho;":"ϱ","varsigma;":"ς","varsubsetneq;":"⊊︀","varsubsetneqq;":"⫋︀","varsupsetneq;":"⊋︀","varsupsetneqq;":"⫌︀","vartheta;":"ϑ","vartriangleleft;":"⊲","vartriangleright;":"⊳","Vbar;":"⫫","vBar;":"⫨","vBarv;":"⫩","Vcy;":"В","vcy;":"в","VDash;":"⊫","Vdash;":"⊩","vDash;":"⊨","vdash;":"⊢","Vdashl;":"⫦","Vee;":"⋁","vee;":"∨","veebar;":"⊻","veeeq;":"≚","vellip;":"⋮","Verbar;":"‖","verbar;":"|","Vert;":"‖","vert;":"|","VerticalBar;":"∣","VerticalLine;":"|","VerticalSeparator;":"❘","VerticalTilde;":"≀","VeryThinSpace;":" ","Vfr;":"𝔙","vfr;":"𝔳","vltri;":"⊲","vnsub;":"⊂⃒","vnsup;":"⊃⃒","Vopf;":"𝕍","vopf;":"𝕧","vprop;":"∝","vrtri;":"⊳","Vscr;":"𝒱","vscr;":"𝓋","vsubnE;":"⫋︀","vsubne;":"⊊︀","vsupnE;":"⫌︀","vsupne;":"⊋︀","Vvdash;":"⊪","vzigzag;":"⦚","Wcirc;":"Ŵ","wcirc;":"ŵ","wedbar;":"⩟","Wedge;":"⋀","wedge;":"∧","wedgeq;":"≙","weierp;":"℘","Wfr;":"𝔚","wfr;":"𝔴","Wopf;":"𝕎","wopf;":"𝕨","wp;":"℘","wr;":"≀","wreath;":"≀","Wscr;":"𝒲","wscr;":"𝓌","xcap;":"⋂","xcirc;":"◯","xcup;":"⋃","xdtri;":"▽","Xfr;":"𝔛","xfr;":"𝔵","xhArr;":"⟺","xharr;":"⟷","Xi;":"Ξ","xi;":"ξ","xlArr;":"⟸","xlarr;":"⟵","xmap;":"⟼","xnis;":"⋻","xodot;":"⨀","Xopf;":"𝕏","xopf;":"𝕩","xoplus;":"⨁","xotime;":"⨂","xrArr;":"⟹","xrarr;":"⟶","Xscr;":"𝒳","xscr;":"𝓍","xsqcup;":"⨆","xuplus;":"⨄","xutri;":"△","xvee;":"⋁","xwedge;":"⋀","Yacute;":"Ý",Yacute:"Ý","yacute;":"ý",yacute:"ý","YAcy;":"Я","yacy;":"я","Ycirc;":"Ŷ","ycirc;":"ŷ","Ycy;":"Ы","ycy;":"ы","yen;":"¥",yen:"¥","Yfr;":"𝔜","yfr;":"𝔶","YIcy;":"Ї","yicy;":"ї","Yopf;":"𝕐","yopf;":"𝕪","Yscr;":"𝒴","yscr;":"𝓎","YUcy;":"Ю","yucy;":"ю","Yuml;":"Ÿ","yuml;":"ÿ",yuml:"ÿ","Zacute;":"Ź","zacute;":"ź","Zcaron;":"Ž","zcaron;":"ž","Zcy;":"З","zcy;":"з","Zdot;":"Ż","zdot;":"ż","zeetrf;":"ℨ","ZeroWidthSpace;":"​","Zeta;":"Ζ","zeta;":"ζ","Zfr;":"ℨ","zfr;":"𝔷","ZHcy;":"Ж","zhcy;":"ж","zigrarr;":"⇝","Zopf;":"ℤ","zopf;":"𝕫","Zscr;":"𝒵","zscr;":"𝓏","zwj;":"‍","zwnj;":"‌"};function Ee(e,t){if(e.length<t.length)return!1;for(var n=0;n<t.length;n++)if(e[n]!==t[n])return!1;return!0}var Ae="a".charCodeAt(0),Re="z".charCodeAt(0),ze="A".charCodeAt(0),Ie="Z".charCodeAt(0),He="0".charCodeAt(0),Ue="9".charCodeAt(0);function Ce(e,t){var n=e.charCodeAt(t);return Ae<=n&&n<=Re||ze<=n&&n<=Ie||He<=n&&n<=Ue}var We=function(){function e(e,t){var n=this;this.id=e,this._tags=[],this._tagMap={},this._attributeMap={},this._valueSetMap={},this._tags=t.tags||[],this._globalAttributes=t.globalAttributes||[],this._tags.forEach((function(e){n._tagMap[e.name]=e,e.attributes&&e.attributes.forEach((function(e){n._attributeMap[e.name]=e}))})),this._globalAttributes.forEach((function(e){n._attributeMap[e.name]=e})),t.valueSets&&t.valueSets.forEach((function(e){n._valueSetMap[e.name]=e.values}))}return e.prototype.isApplicable=function(){return!0},e.prototype.getId=function(){return this.id},e.prototype.provideTags=function(){return this._tags},e.prototype.provideAttributes=function(e){var t=[],n=function(e){t.push(e)};return this._tagMap[e]&&this._tagMap[e].attributes.forEach((function(e){n(e)})),this._globalAttributes.forEach((function(e){n(e)})),t},e.prototype.provideValues=function(e,t){var n=this,i=[],r=function(e){e.forEach((function(e){e.name===t&&(e.values&&e.values.forEach((function(e){i.push(e)})),e.valueSet&&n._valueSetMap[e.valueSet]&&n._valueSetMap[e.valueSet].forEach((function(e){i.push(e)})))}))};return this._tagMap[e]?(r(this._tagMap[e].attributes),r(this._globalAttributes),i):[]},e}();function De(e,t){var n={kind:t?"markdown":"plaintext",value:""};if(e.description){var i=function(e){if(e)return"string"==typeof e?{kind:"markdown",value:e}:{kind:"markdown",value:e.value}}(e.description);i&&(n.value+=i.value)}return e.references&&e.references.length>0&&(n.value+="\n\n",n.value+=t?e.references.map((function(e){return"["+e.name+"]("+e.url+")"})).join(" | "):e.references.map((function(e){return e.name+": "+e.url})).join("\n")),n}var qe=[new We("html5",{version:1.1,tags:[{name:"html",description:{kind:"markdown",value:"The html element represents the root of an HTML document."},attributes:[{name:"manifest",description:{kind:"markdown",value:"Specifies the URI of a resource manifest indicating resources that should be cached locally. See [Using the application cache](https://developer.mozilla.org/en-US/docs/Web/HTML/Using_the_application_cache) for details."}},{name:"version",description:'Specifies the version of the HTML [Document Type Definition](https://developer.mozilla.org/en-US/docs/Glossary/DTD "Document Type Definition: In HTML, the doctype is the required "<!DOCTYPE html>" preamble found at the top of all documents. Its sole purpose is to prevent a browser from switching into so-called “quirks mode” when rendering a document; that is, the "<!DOCTYPE html>" doctype ensures that the browser makes a best-effort attempt at following the relevant specifications, rather than using a different rendering mode that is incompatible with some specifications.") that governs the current document. This attribute is not needed, because it is redundant with the version information in the document type declaration.'},{name:"xmlns",description:'Specifies the XML Namespace of the document. Default value is `"http://www.w3.org/1999/xhtml"`. This is required in documents parsed with XML parsers, and optional in text/html documents.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/html"}]},{name:"head",description:{kind:"markdown",value:"The head element represents a collection of metadata for the Document."},attributes:[{name:"profile",description:"The URIs of one or more metadata profiles, separated by white space."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/head"}]},{name:"title",description:{kind:"markdown",value:"The title element represents the document's title or name. Authors should use titles that identify their documents even when they are used out of context, for example in a user's history or bookmarks, or in search results. The document's title is often different from its first heading, since the first heading does not have to stand alone when taken out of context."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/title"}]},{name:"base",description:{kind:"markdown",value:"The base element allows authors to specify the document base URL for the purposes of resolving relative URLs, and the name of the default browsing context for the purposes of following hyperlinks. The element does not represent any content beyond this information."},attributes:[{name:"href",description:{kind:"markdown",value:"The base URL to be used throughout the document for relative URL addresses. If this attribute is specified, this element must come before any other elements with attributes whose values are URLs. Absolute and relative URLs are allowed."}},{name:"target",description:{kind:"markdown",value:"A name or keyword indicating the default location to display the result when hyperlinks or forms cause navigation, for elements that do not have an explicit target reference. It is a name of, or keyword for, a _browsing context_ (for example: tab, window, or inline frame). The following keywords have special meanings:\n\n* `_self`: Load the result into the same browsing context as the current one. This value is the default if the attribute is not specified.\n* `_blank`: Load the result into a new unnamed browsing context.\n* `_parent`: Load the result into the parent browsing context of the current one. If there is no parent, this option behaves the same way as `_self`.\n* `_top`: Load the result into the top-level browsing context (that is, the browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this option behaves the same way as `_self`.\n\nIf this attribute is specified, this element must come before any other elements with attributes whose values are URLs."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/base"}]},{name:"link",description:{kind:"markdown",value:"The link element allows authors to link their document to other resources."},attributes:[{name:"href",description:{kind:"markdown",value:'This attribute specifies the [URL](https://developer.mozilla.org/en-US/docs/Glossary/URL "URL: Uniform Resource Locator (URL) is a text string specifying where a resource can be found on the Internet.") of the linked resource. A URL can be absolute or relative.'}},{name:"crossorigin",valueSet:"xo",description:{kind:"markdown",value:'This enumerated attribute indicates whether [CORS](https://developer.mozilla.org/en-US/docs/Glossary/CORS "CORS: CORS (Cross-Origin Resource Sharing) is a system, consisting of transmitting HTTP headers, that determines whether browsers block frontend JavaScript code from accessing responses for cross-origin requests.") must be used when fetching the resource. [CORS-enabled images](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_Enabled_Image) can be reused in the [`<canvas>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas "Use the HTML <canvas> element with either the canvas scripting API or the WebGL API to draw graphics and animations.") element without being _tainted_. The allowed values are:\n\n`anonymous`\n\nA cross-origin request (i.e. with an [`Origin`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Origin "The Origin request header indicates where a fetch originates from. It doesn\'t include any path information, but only the server name. It is sent with CORS requests, as well as with POST requests. It is similar to the Referer header, but, unlike this header, it doesn\'t disclose the whole path.") HTTP header) is performed, but no credential is sent (i.e. no cookie, X.509 certificate, or HTTP Basic authentication). If the server does not give credentials to the origin site (by not setting the [`Access-Control-Allow-Origin`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin "The Access-Control-Allow-Origin response header indicates whether the response can be shared with requesting code from the given origin.") HTTP header) the image will be tainted and its usage restricted.\n\n`use-credentials`\n\nA cross-origin request (i.e. with an `Origin` HTTP header) is performed along with a credential sent (i.e. a cookie, certificate, and/or HTTP Basic authentication is performed). If the server does not give credentials to the origin site (through [`Access-Control-Allow-Credentials`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Credentials "The Access-Control-Allow-Credentials response header tells browsers whether to expose the response to frontend JavaScript code when the request\'s credentials mode (Request.credentials) is "include".") HTTP header), the resource will be _tainted_ and its usage restricted.\n\nIf the attribute is not present, the resource is fetched without a [CORS](https://developer.mozilla.org/en-US/docs/Glossary/CORS "CORS: CORS (Cross-Origin Resource Sharing) is a system, consisting of transmitting HTTP headers, that determines whether browsers block frontend JavaScript code from accessing responses for cross-origin requests.") request (i.e. without sending the `Origin` HTTP header), preventing its non-tainted usage. If invalid, it is handled as if the enumerated keyword **anonymous** was used. See [CORS settings attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes) for additional information.'}},{name:"rel",description:{kind:"markdown",value:"This attribute names a relationship of the linked document to the current document. The attribute must be a space-separated list of the [link types values](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types)."}},{name:"media",description:{kind:"markdown",value:"This attribute specifies the media that the linked resource applies to. Its value must be a media type / [media query](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_queries). This attribute is mainly useful when linking to external stylesheets — it allows the user agent to pick the best adapted one for the device it runs on.\n\n**Notes:**\n\n* In HTML 4, this can only be a simple white-space-separated list of media description literals, i.e., [media types and groups](https://developer.mozilla.org/en-US/docs/Web/CSS/@media), where defined and allowed as values for this attribute, such as `print`, `screen`, `aural`, `braille`. HTML5 extended this to any kind of [media queries](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_queries), which are a superset of the allowed values of HTML 4.\n* Browsers not supporting [CSS3 Media Queries](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_queries) won't necessarily recognize the adequate link; do not forget to set fallback links, the restricted set of media queries defined in HTML 4."}},{name:"hreflang",description:{kind:"markdown",value:"This attribute indicates the language of the linked resource. It is purely advisory. Allowed values are determined by [BCP47](https://www.ietf.org/rfc/bcp/bcp47.txt). Use this attribute only if the [`href`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href) attribute is present."}},{name:"type",description:{kind:"markdown",value:'This attribute is used to define the type of the content linked to. The value of the attribute should be a MIME type such as **text/html**, **text/css**, and so on. The common use of this attribute is to define the type of stylesheet being referenced (such as **text/css**), but given that CSS is the only stylesheet language used on the web, not only is it possible to omit the `type` attribute, but is actually now recommended practice. It is also used on `rel="preload"` link types, to make sure the browser only downloads file types that it supports.'}},{name:"sizes",description:{kind:"markdown",value:"This attribute defines the sizes of the icons for visual media contained in the resource. It must be present only if the [`rel`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/link#attr-rel) contains a value of `icon` or a non-standard type such as Apple's `apple-touch-icon`. It may have the following values:\n\n* `any`, meaning that the icon can be scaled to any size as it is in a vector format, like `image/svg+xml`.\n* a white-space separated list of sizes, each in the format `_<width in pixels>_x_<height in pixels>_` or `_<width in pixels>_X_<height in pixels>_`. Each of these sizes must be contained in the resource.\n\n**Note:** Most icon formats are only able to store one single icon; therefore most of the time the [`sizes`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes#attr-sizes) contains only one entry. MS's ICO format does, as well as Apple's ICNS. ICO is more ubiquitous; you should definitely use it."}},{name:"as",description:'This attribute is only used when `rel="preload"` or `rel="prefetch"` has been set on the `<link>` element. It specifies the type of content being loaded by the `<link>`, which is necessary for content prioritization, request matching, application of correct [content security policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP), and setting of correct [`Accept`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept "The Accept request HTTP header advertises which content types, expressed as MIME types, the client is able to understand. Using content negotiation, the server then selects one of the proposals, uses it and informs the client of its choice with the Content-Type response header. Browsers set adequate values for this header depending on the context where the request is done: when fetching a CSS stylesheet a different value is set for the request than when fetching an image, video or a script.") request header.'},{name:"importance",description:"Indicates the relative importance of the resource. Priority hints are delegated using the values:"},{name:"importance",description:'**`auto`**: Indicates **no preference**. The browser may use its own heuristics to decide the priority of the resource.\n\n**`high`**: Indicates to the browser that the resource is of **high** priority.\n\n**`low`**: Indicates to the browser that the resource is of **low** priority.\n\n**Note:** The `importance` attribute may only be used for the `<link>` element if `rel="preload"` or `rel="prefetch"` is present.'},{name:"integrity",description:"Contains inline metadata — a base64-encoded cryptographic hash of the resource (file) you’re telling the browser to fetch. The browser can use this to verify that the fetched resource has been delivered free of unexpected manipulation. See [Subresource Integrity](https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity)."},{name:"referrerpolicy",description:'A string indicating which referrer to use when fetching the resource:\n\n* `no-referrer` means that the [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent.\n* `no-referrer-when-downgrade` means that no [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will be sent when navigating to an origin without TLS (HTTPS). This is a user agent’s default behavior, if no policy is otherwise specified.\n* `origin` means that the referrer will be the origin of the page, which is roughly the scheme, the host, and the port.\n* `origin-when-cross-origin` means that navigating to other origins will be limited to the scheme, the host, and the port, while navigating on the same origin will include the referrer\'s path.\n* `unsafe-url` means that the referrer will include the origin and the path (but not the fragment, password, or username). This case is unsafe because it can leak origins and paths from TLS-protected resources to insecure origins.'},{name:"title",description:'The `title` attribute has special semantics on the `<link>` element. When used on a `<link rel="stylesheet">` it defines a [preferred or an alternate stylesheet](https://developer.mozilla.org/en-US/docs/Web/CSS/Alternative_style_sheets). Incorrectly using it may [cause the stylesheet to be ignored](https://developer.mozilla.org/en-US/docs/Correctly_Using_Titles_With_External_Stylesheets).'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/link"}]},{name:"meta",description:{kind:"markdown",value:"The meta element represents various kinds of metadata that cannot be expressed using the title, base, link, style, and script elements."},attributes:[{name:"name",description:{kind:"markdown",value:'This attribute defines the name of a piece of document-level metadata. It should not be set if one of the attributes [`itemprop`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes#attr-itemprop), [`http-equiv`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-http-equiv) or [`charset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset) is also set.\n\nThis metadata name is associated with the value contained by the [`content`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-content) attribute. The possible values for the name attribute are:\n\n* `application-name` which defines the name of the application running in the web page.\n \n **Note:**\n \n * Browsers may use this to identify the application. It is different from the [`<title>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/title "The HTML Title element (<title>) defines the document\'s title that is shown in a browser\'s title bar or a page\'s tab.") element, which usually contain the application name, but may also contain information like the document name or a status.\n * Simple web pages shouldn\'t define an application-name.\n \n* `author` which defines the name of the document\'s author.\n* `description` which contains a short and accurate summary of the content of the page. Several browsers, like Firefox and Opera, use this as the default description of bookmarked pages.\n* `generator` which contains the identifier of the software that generated the page.\n* `keywords` which contains words relevant to the page\'s content separated by commas.\n* `referrer` which controls the [`Referer` HTTP header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer) attached to requests sent from the document:\n \n Values for the `content` attribute of `<meta name="referrer">`\n \n `no-referrer`\n \n Do not send a HTTP `Referrer` header.\n \n `origin`\n \n Send the [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the document.\n \n `no-referrer-when-downgrade`\n \n Send the [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) as a referrer to URLs as secure as the current page, (https→https), but does not send a referrer to less secure URLs (https→http). This is the default behaviour.\n \n `origin-when-cross-origin`\n \n Send the full URL (stripped of parameters) for same-origin requests, but only send the [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) for other cases.\n \n `same-origin`\n \n A referrer will be sent for [same-site origins](https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy), but cross-origin requests will contain no referrer information.\n \n `strict-origin`\n \n Only send the origin of the document as the referrer to a-priori as-much-secure destination (HTTPS->HTTPS), but don\'t send it to a less secure destination (HTTPS->HTTP).\n \n `strict-origin-when-cross-origin`\n \n Send a full URL when performing a same-origin request, only send the origin of the document to a-priori as-much-secure destination (HTTPS->HTTPS), and send no header to a less secure destination (HTTPS->HTTP).\n \n `unsafe-URL`\n \n Send the full URL (stripped of parameters) for same-origin or cross-origin requests.\n \n **Notes:**\n \n * Some browsers support the deprecated values of `always`, `default`, and `never` for referrer.\n * Dynamically inserting `<meta name="referrer">` (with [`document.write`](https://developer.mozilla.org/en-US/docs/Web/API/Document/write) or [`appendChild`](https://developer.mozilla.org/en-US/docs/Web/API/Node/appendChild)) makes the referrer behaviour unpredictable.\n * When several conflicting policies are defined, the no-referrer policy is applied.\n \n\nThis attribute may also have a value taken from the extended list defined on [WHATWG Wiki MetaExtensions page](https://wiki.whatwg.org/wiki/MetaExtensions). Although none have been formally accepted yet, a few commonly used names are:\n\n* `creator` which defines the name of the creator of the document, such as an organization or institution. If there are more than one, several [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") elements should be used.\n* `googlebot`, a synonym of `robots`, is only followed by Googlebot (the indexing crawler for Google).\n* `publisher` which defines the name of the document\'s publisher.\n* `robots` which defines the behaviour that cooperative crawlers, or "robots", should use with the page. It is a comma-separated list of the values below:\n \n Values for the content of `<meta name="robots">`\n \n Value\n \n Description\n \n Used by\n \n `index`\n \n Allows the robot to index the page (default).\n \n All\n \n `noindex`\n \n Requests the robot to not index the page.\n \n All\n \n `follow`\n \n Allows the robot to follow the links on the page (default).\n \n All\n \n `nofollow`\n \n Requests the robot to not follow the links on the page.\n \n All\n \n `none`\n \n Equivalent to `noindex, nofollow`\n \n [Google](https://support.google.com/webmasters/answer/79812)\n \n `noodp`\n \n Prevents using the [Open Directory Project](https://www.dmoz.org/) description, if any, as the page description in search engine results.\n \n [Google](https://support.google.com/webmasters/answer/35624#nodmoz), [Yahoo](https://help.yahoo.com/kb/search-for-desktop/meta-tags-robotstxt-yahoo-search-sln2213.html#cont5), [Bing](https://www.bing.com/webmaster/help/which-robots-metatags-does-bing-support-5198d240)\n \n `noarchive`\n \n Requests the search engine not to cache the page content.\n \n [Google](https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag#valid-indexing--serving-directives), [Yahoo](https://help.yahoo.com/kb/search-for-desktop/SLN2213.html), [Bing](https://www.bing.com/webmaster/help/which-robots-metatags-does-bing-support-5198d240)\n \n `nosnippet`\n \n Prevents displaying any description of the page in search engine results.\n \n [Google](https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag#valid-indexing--serving-directives), [Bing](https://www.bing.com/webmaster/help/which-robots-metatags-does-bing-support-5198d240)\n \n `noimageindex`\n \n Requests this page not to appear as the referring page of an indexed image.\n \n [Google](https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag#valid-indexing--serving-directives)\n \n `nocache`\n \n Synonym of `noarchive`.\n \n [Bing](https://www.bing.com/webmaster/help/which-robots-metatags-does-bing-support-5198d240)\n \n **Notes:**\n \n * Only cooperative robots follow these rules. Do not expect to prevent e-mail harvesters with them.\n * The robot still needs to access the page in order to read these rules. To prevent bandwidth consumption, use a _[robots.txt](https://developer.mozilla.org/en-US/docs/Glossary/robots.txt "robots.txt: Robots.txt is a file which is usually placed in the root of any website. It decides whether crawlers are permitted or forbidden access to the web site.")_ file.\n * If you want to remove a page, `noindex` will work, but only after the robot visits the page again. Ensure that the `robots.txt` file is not preventing revisits.\n * Some values are mutually exclusive, like `index` and `noindex`, or `follow` and `nofollow`. In these cases the robot\'s behaviour is undefined and may vary between them.\n * Some crawler robots, like Google, Yahoo and Bing, support the same values for the HTTP header `X-Robots-Tag`; this allows non-HTML documents like images to use these rules.\n \n* `slurp`, is a synonym of `robots`, but only for Slurp - the crawler for Yahoo Search.\n* `viewport`, which gives hints about the size of the initial size of the [viewport](https://developer.mozilla.org/en-US/docs/Glossary/viewport "viewport: A viewport represents a polygonal (normally rectangular) area in computer graphics that is currently being viewed. In web browser terms, it refers to the part of the document you\'re viewing which is currently visible in its window (or the screen, if the document is being viewed in full screen mode). Content outside the viewport is not visible onscreen until scrolled into view."). Used by mobile devices only.\n \n Values for the content of `<meta name="viewport">`\n \n Value\n \n Possible subvalues\n \n Description\n \n `width`\n \n A positive integer number, or the text `device-width`\n \n Defines the pixel width of the viewport that you want the web site to be rendered at.\n \n `height`\n \n A positive integer, or the text `device-height`\n \n Defines the height of the viewport. Not used by any browser.\n \n `initial-scale`\n \n A positive number between `0.0` and `10.0`\n \n Defines the ratio between the device width (`device-width` in portrait mode or `device-height` in landscape mode) and the viewport size.\n \n `maximum-scale`\n \n A positive number between `0.0` and `10.0`\n \n Defines the maximum amount to zoom in. It must be greater or equal to the `minimum-scale` or the behaviour is undefined. Browser settings can ignore this rule and iOS10+ ignores it by default.\n \n `minimum-scale`\n \n A positive number between `0.0` and `10.0`\n \n Defines the minimum zoom level. It must be smaller or equal to the `maximum-scale` or the behaviour is undefined. Browser settings can ignore this rule and iOS10+ ignores it by default.\n \n `user-scalable`\n \n `yes` or `no`\n \n If set to `no`, the user is not able to zoom in the webpage. The default is `yes`. Browser settings can ignore this rule, and iOS10+ ignores it by default.\n \n Specification\n \n Status\n \n Comment\n \n [CSS Device Adaptation \n The definition of \'<meta name="viewport">\' in that specification.](https://drafts.csswg.org/css-device-adapt/#viewport-meta)\n \n Working Draft\n \n Non-normatively describes the Viewport META element\n \n See also: [`@viewport`](https://developer.mozilla.org/en-US/docs/Web/CSS/@viewport "The @viewport CSS at-rule lets you configure the viewport through which the document is viewed. It\'s primarily used for mobile devices, but is also used by desktop browsers that support features like "snap to edge" (such as Microsoft Edge).")\n \n **Notes:**\n \n * Though unstandardized, this declaration is respected by most mobile browsers due to de-facto dominance.\n * The default values may vary between devices and browsers.\n * To learn about this declaration in Firefox for Mobile, see [this article](https://developer.mozilla.org/en-US/docs/Mobile/Viewport_meta_tag "Mobile/Viewport meta tag").'}},{name:"http-equiv",description:{kind:"markdown",value:'Defines a pragma directive. The attribute is named `**http-equiv**(alent)` because all the allowed values are names of particular HTTP headers:\n\n* `"content-language"` \n Defines the default language of the page. It can be overridden by the [lang](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/lang) attribute on any element.\n \n **Warning:** Do not use this value, as it is obsolete. Prefer the `lang` attribute on the [`<html>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/html "The HTML <html> element represents the root (top-level element) of an HTML document, so it is also referred to as the root element. All other elements must be descendants of this element.") element.\n \n* `"content-security-policy"` \n Allows page authors to define a [content policy](https://developer.mozilla.org/en-US/docs/Web/Security/CSP/CSP_policy_directives) for the current page. Content policies mostly specify allowed server origins and script endpoints which help guard against cross-site scripting attacks.\n* `"content-type"` \n Defines the [MIME type](https://developer.mozilla.org/en-US/docs/Glossary/MIME_type) of the document, followed by its character encoding. It follows the same syntax as the HTTP `content-type` entity-header field, but as it is inside a HTML page, most values other than `text/html` are impossible. Therefore the valid syntax for its `content` is the string \'`text/html`\' followed by a character set with the following syntax: \'`; charset=_IANAcharset_`\', where `IANAcharset` is the _preferred MIME name_ for a character set as [defined by the IANA.](https://www.iana.org/assignments/character-sets)\n \n **Warning:** Do not use this value, as it is obsolete. Use the [`charset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset) attribute on the [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") element.\n \n **Note:** As [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") can\'t change documents\' types in XHTML or HTML5\'s XHTML serialization, never set the MIME type to an XHTML MIME type with `<meta>`.\n \n* `"refresh"` \n This instruction specifies:\n * The number of seconds until the page should be reloaded - only if the [`content`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-content) attribute contains a positive integer.\n * The number of seconds until the page should redirect to another - only if the [`content`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-content) attribute contains a positive integer followed by the string \'`;url=`\', and a valid URL.\n* `"set-cookie"` \n Defines a [cookie](https://developer.mozilla.org/en-US/docs/cookie) for the page. Its content must follow the syntax defined in the [IETF HTTP Cookie Specification](https://tools.ietf.org/html/draft-ietf-httpstate-cookie-14).\n \n **Warning:** Do not use this instruction, as it is obsolete. Use the HTTP header [`Set-Cookie`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie) instead.'}},{name:"content",description:{kind:"markdown",value:"This attribute contains the value for the [`http-equiv`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-http-equiv) or [`name`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-name) attribute, depending on which is used."}},{name:"charset",description:{kind:"markdown",value:'This attribute declares the page\'s character encoding. It must contain a [standard IANA MIME name for character encodings](https://www.iana.org/assignments/character-sets). Although the standard doesn\'t request a specific encoding, it suggests:\n\n* Authors are encouraged to use [`UTF-8`](https://developer.mozilla.org/en-US/docs/Glossary/UTF-8).\n* Authors should not use ASCII-incompatible encodings to avoid security risk: browsers not supporting them may interpret harmful content as HTML. This happens with the `JIS_C6226-1983`, `JIS_X0212-1990`, `HZ-GB-2312`, `JOHAB`, the ISO-2022 family and the EBCDIC family.\n\n**Note:** ASCII-incompatible encodings are those that don\'t map the 8-bit code points `0x20` to `0x7E` to the `0x0020` to `0x007E` Unicode code points)\n\n* Authors **must not** use `CESU-8`, `UTF-7`, `BOCU-1` and/or `SCSU` as [cross-site scripting](https://developer.mozilla.org/en-US/docs/Glossary/Cross-site_scripting) attacks with these encodings have been demonstrated.\n* Authors should not use `UTF-32` because not all HTML5 encoding algorithms can distinguish it from `UTF-16`.\n\n**Notes:**\n\n* The declared character encoding must match the one the page was saved with to avoid garbled characters and security holes.\n* The [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") element declaring the encoding must be inside the [`<head>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/head "The HTML <head> element provides general information (metadata) about the document, including its title and links to its scripts and style sheets.") element and **within the first 1024 bytes** of the HTML as some browsers only look at those bytes before choosing an encoding.\n* This [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") element is only one part of the [algorithm to determine a page\'s character set](https://www.whatwg.org/specs/web-apps/current-work/multipage/parsing.html#encoding-sniffing-algorithm "Algorithm charset page"). The [`Content-Type` header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type) and any [Byte-Order Marks](https://developer.mozilla.org/en-US/docs/Glossary/Byte-Order_Mark "The definition of that term (Byte-Order Marks) has not been written yet; please consider contributing it!") override this element.\n* It is strongly recommended to define the character encoding. If a page\'s encoding is undefined, cross-scripting techniques are possible, such as the [`UTF-7` fallback cross-scripting technique](https://code.google.com/p/doctype-mirror/wiki/ArticleUtf7).\n* The [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta "The HTML <meta> element represents metadata that cannot be represented by other HTML meta-related elements, like <base>, <link>, <script>, <style> or <title>.") element with a `charset` attribute is a synonym for the pre-HTML5 `<meta http-equiv="Content-Type" content="text/html; charset=_IANAcharset_">`, where _`IANAcharset`_ contains the value of the equivalent [`charset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset) attribute. This syntax is still allowed, although no longer recommended.'}},{name:"scheme",description:"This attribute defines the scheme in which metadata is described. A scheme is a context leading to the correct interpretations of the [`content`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-content) value, like a format.\n\n**Warning:** Do not use this value, as it is obsolete. There is no replacement as there was no real usage for it."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/meta"}]},{name:"style",description:{kind:"markdown",value:"The style element allows authors to embed style information in their documents. The style element is one of several inputs to the styling processing model. The element does not represent content for the user."},attributes:[{name:"media",description:{kind:"markdown",value:"This attribute defines which media the style should be applied to. Its value is a [media query](https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Media_queries), which defaults to `all` if the attribute is missing."}},{name:"nonce",description:{kind:"markdown",value:"A cryptographic nonce (number used once) used to whitelist inline styles in a [style-src Content-Security-Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/style-src). The server must generate a unique nonce value each time it transmits a policy. It is critical to provide a nonce that cannot be guessed as bypassing a resource’s policy is otherwise trivial."}},{name:"type",description:{kind:"markdown",value:"This attribute defines the styling language as a MIME type (charset should not be specified). This attribute is optional and defaults to `text/css` if it is not specified — there is very little reason to include this in modern web documents."}},{name:"scoped",valueSet:"v"},{name:"title",description:"This attribute specifies [alternative style sheet](https://developer.mozilla.org/en-US/docs/Web/CSS/Alternative_style_sheets) sets."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/style"}]},{name:"body",description:{kind:"markdown",value:"The body element represents the content of the document."},attributes:[{name:"onafterprint",description:{kind:"markdown",value:"Function to call after the user has printed the document."}},{name:"onbeforeprint",description:{kind:"markdown",value:"Function to call when the user requests printing of the document."}},{name:"onbeforeunload",description:{kind:"markdown",value:"Function to call when the document is about to be unloaded."}},{name:"onhashchange",description:{kind:"markdown",value:"Function to call when the fragment identifier part (starting with the hash (`'#'`) character) of the document's current address has changed."}},{name:"onlanguagechange",description:{kind:"markdown",value:"Function to call when the preferred languages changed."}},{name:"onmessage",description:{kind:"markdown",value:"Function to call when the document has received a message."}},{name:"onoffline",description:{kind:"markdown",value:"Function to call when network communication has failed."}},{name:"ononline",description:{kind:"markdown",value:"Function to call when network communication has been restored."}},{name:"onpagehide"},{name:"onpageshow"},{name:"onpopstate",description:{kind:"markdown",value:"Function to call when the user has navigated session history."}},{name:"onstorage",description:{kind:"markdown",value:"Function to call when the storage area has changed."}},{name:"onunload",description:{kind:"markdown",value:"Function to call when the document is going away."}},{name:"alink",description:'Color of text for hyperlinks when selected. _This method is non-conforming, use CSS [`color`](https://developer.mozilla.org/en-US/docs/Web/CSS/color "The color CSS property sets the foreground color value of an element\'s text and text decorations, and sets the currentcolor value.") property in conjunction with the [`:active`](https://developer.mozilla.org/en-US/docs/Web/CSS/:active "The :active CSS pseudo-class represents an element (such as a button) that is being activated by the user.") pseudo-class instead._'},{name:"background",description:'URI of a image to use as a background. _This method is non-conforming, use CSS [`background`](https://developer.mozilla.org/en-US/docs/Web/CSS/background "The background shorthand CSS property sets all background style properties at once, such as color, image, origin and size, or repeat method.") property on the element instead._'},{name:"bgcolor",description:'Background color for the document. _This method is non-conforming, use CSS [`background-color`](https://developer.mozilla.org/en-US/docs/Web/CSS/background-color "The background-color CSS property sets the background color of an element.") property on the element instead._'},{name:"bottommargin",description:'The margin of the bottom of the body. _This method is non-conforming, use CSS [`margin-bottom`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-bottom "The margin-bottom CSS property sets the margin area on the bottom of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") property on the element instead._'},{name:"leftmargin",description:'The margin of the left of the body. _This method is non-conforming, use CSS [`margin-left`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-left "The margin-left CSS property sets the margin area on the left side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") property on the element instead._'},{name:"link",description:'Color of text for unvisited hypertext links. _This method is non-conforming, use CSS [`color`](https://developer.mozilla.org/en-US/docs/Web/CSS/color "The color CSS property sets the foreground color value of an element\'s text and text decorations, and sets the currentcolor value.") property in conjunction with the [`:link`](https://developer.mozilla.org/en-US/docs/Web/CSS/:link "The :link CSS pseudo-class represents an element that has not yet been visited. It matches every unvisited <a>, <area>, or <link> element that has an href attribute.") pseudo-class instead._'},{name:"onblur",description:"Function to call when the document loses focus."},{name:"onerror",description:"Function to call when the document fails to load properly."},{name:"onfocus",description:"Function to call when the document receives focus."},{name:"onload",description:"Function to call when the document has finished loading."},{name:"onredo",description:"Function to call when the user has moved forward in undo transaction history."},{name:"onresize",description:"Function to call when the document has been resized."},{name:"onundo",description:"Function to call when the user has moved backward in undo transaction history."},{name:"rightmargin",description:'The margin of the right of the body. _This method is non-conforming, use CSS [`margin-right`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-right "The margin-right CSS property sets the margin area on the right side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") property on the element instead._'},{name:"text",description:'Foreground color of text. _This method is non-conforming, use CSS [`color`](https://developer.mozilla.org/en-US/docs/Web/CSS/color "The color CSS property sets the foreground color value of an element\'s text and text decorations, and sets the currentcolor value.") property on the element instead._'},{name:"topmargin",description:'The margin of the top of the body. _This method is non-conforming, use CSS [`margin-top`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-top "The margin-top CSS property sets the margin area on the top of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") property on the element instead._'},{name:"vlink",description:'Color of text for visited hypertext links. _This method is non-conforming, use CSS [`color`](https://developer.mozilla.org/en-US/docs/Web/CSS/color "The color CSS property sets the foreground color value of an element\'s text and text decorations, and sets the currentcolor value.") property in conjunction with the [`:visited`](https://developer.mozilla.org/en-US/docs/Web/CSS/:visited "The :visited CSS pseudo-class represents links that the user has already visited. For privacy reasons, the styles that can be modified using this selector are very limited.") pseudo-class instead._'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/body"}]},{name:"article",description:{kind:"markdown",value:"The article element represents a complete, or self-contained, composition in a document, page, application, or site and that is, in principle, independently distributable or reusable, e.g. in syndication. This could be a forum post, a magazine or newspaper article, a blog entry, a user-submitted comment, an interactive widget or gadget, or any other independent item of content. Each article should be identified, typically by including a heading (h1–h6 element) as a child of the article element."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/article"}]},{name:"section",description:{kind:"markdown",value:"The section element represents a generic section of a document or application. A section, in this context, is a thematic grouping of content. Each section should be identified, typically by including a heading ( h1- h6 element) as a child of the section element."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/section"}]},{name:"nav",description:{kind:"markdown",value:"The nav element represents a section of a page that links to other pages or to parts within the page: a section with navigation links."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/nav"}]},{name:"aside",description:{kind:"markdown",value:"The aside element represents a section of a page that consists of content that is tangentially related to the content around the aside element, and which could be considered separate from that content. Such sections are often represented as sidebars in printed typography."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/aside"}]},{name:"h1",description:{kind:"markdown",value:"The h1 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h2",description:{kind:"markdown",value:"The h2 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h3",description:{kind:"markdown",value:"The h3 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h4",description:{kind:"markdown",value:"The h4 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h5",description:{kind:"markdown",value:"The h5 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"h6",description:{kind:"markdown",value:"The h6 element represents a section heading."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/Heading_Elements"}]},{name:"header",description:{kind:"markdown",value:"The header element represents introductory content for its nearest ancestor sectioning content or sectioning root element. A header typically contains a group of introductory or navigational aids. When the nearest ancestor sectioning content or sectioning root element is the body element, then it applies to the whole page."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/header"}]},{name:"footer",description:{kind:"markdown",value:"The footer element represents a footer for its nearest ancestor sectioning content or sectioning root element. A footer typically contains information about its section such as who wrote it, links to related documents, copyright data, and the like."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/footer"}]},{name:"address",description:{kind:"markdown",value:"The address element represents the contact information for its nearest article or body element ancestor. If that is the body element, then the contact information applies to the document as a whole."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/address"}]},{name:"p",description:{kind:"markdown",value:"The p element represents a paragraph."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/p"}]},{name:"hr",description:{kind:"markdown",value:"The hr element represents a paragraph-level thematic break, e.g. a scene change in a story, or a transition to another topic within a section of a reference book."},attributes:[{name:"align",description:"Sets the alignment of the rule on the page. If no value is specified, the default value is `left`."},{name:"color",description:"Sets the color of the rule through color name or hexadecimal value."},{name:"noshade",description:"Sets the rule to have no shading."},{name:"size",description:"Sets the height, in pixels, of the rule."},{name:"width",description:"Sets the length of the rule on the page through a pixel or percentage value."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/hr"}]},{name:"pre",description:{kind:"markdown",value:"The pre element represents a block of preformatted text, in which structure is represented by typographic conventions rather than by elements."},attributes:[{name:"cols",description:'Contains the _preferred_ count of characters that a line should have. It was a non-standard synonym of [`width`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/pre#attr-width). To achieve such an effect, use CSS [`width`](https://developer.mozilla.org/en-US/docs/Web/CSS/width "The width CSS property sets an element\'s width. By default it sets the width of the content area, but if box-sizing is set to border-box, it sets the width of the border area.") instead.'},{name:"width",description:'Contains the _preferred_ count of characters that a line should have. Though technically still implemented, this attribute has no visual effect; to achieve such an effect, use CSS [`width`](https://developer.mozilla.org/en-US/docs/Web/CSS/width "The width CSS property sets an element\'s width. By default it sets the width of the content area, but if box-sizing is set to border-box, it sets the width of the border area.") instead.'},{name:"wrap",description:'Is a _hint_ indicating how the overflow must happen. In modern browser this hint is ignored and no visual effect results in its present; to achieve such an effect, use CSS [`white-space`](https://developer.mozilla.org/en-US/docs/Web/CSS/white-space "The white-space CSS property sets how white space inside an element is handled.") instead.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/pre"}]},{name:"blockquote",description:{kind:"markdown",value:"The blockquote element represents content that is quoted from another source, optionally with a citation which must be within a footer or cite element, and optionally with in-line changes such as annotations and abbreviations."},attributes:[{name:"cite",description:{kind:"markdown",value:"A URL that designates a source document or message for the information quoted. This attribute is intended to point to information explaining the context or the reference for the quote."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/blockquote"}]},{name:"ol",description:{kind:"markdown",value:"The ol element represents a list of items, where the items have been intentionally ordered, such that changing the order would change the meaning of the document."},attributes:[{name:"reversed",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute specifies that the items of the list are specified in reversed order."}},{name:"start",description:{kind:"markdown",value:'This integer attribute specifies the start value for numbering the individual list items. Although the ordering type of list elements might be Roman numerals, such as XXXI, or letters, the value of start is always represented as a number. To start numbering elements from the letter "C", use `<ol start="3">`.\n\n**Note**: This attribute was deprecated in HTML4, but reintroduced in HTML5.'}},{name:"type",valueSet:"lt",description:{kind:"markdown",value:"Indicates the numbering type:\n\n* `'a'` indicates lowercase letters,\n* `'A'` indicates uppercase letters,\n* `'i'` indicates lowercase Roman numerals,\n* `'I'` indicates uppercase Roman numerals,\n* and `'1'` indicates numbers (default).\n\nThe type set is used for the entire list unless a different [`type`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/li#attr-type) attribute is used within an enclosed [`<li>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/li \"The HTML <li> element is used to represent an item in a list. It must be contained in a parent element: an ordered list (<ol>), an unordered list (<ul>), or a menu (<menu>). In menus and unordered lists, list items are usually displayed using bullet points. In ordered lists, they are usually displayed with an ascending counter on the left, such as a number or letter.\") element.\n\n**Note:** This attribute was deprecated in HTML4, but reintroduced in HTML5.\n\nUnless the value of the list number matters (e.g. in legal or technical documents where items are to be referenced by their number/letter), the CSS [`list-style-type`](https://developer.mozilla.org/en-US/docs/Web/CSS/list-style-type \"The list-style-type CSS property sets the marker (such as a disc, character, or custom counter style) of a list item element.\") property should be used instead."}},{name:"compact",description:'This Boolean attribute hints that the list should be rendered in a compact style. The interpretation of this attribute depends on the user agent and it doesn\'t work in all browsers.\n\n**Warning:** Do not use this attribute, as it has been deprecated: the [`<ol>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol "The HTML <ol> element represents an ordered list of items, typically rendered as a numbered list.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/CSS). To give an effect similar to the `compact` attribute, the [CSS](https://developer.mozilla.org/en-US/docs/CSS) property [`line-height`](https://developer.mozilla.org/en-US/docs/Web/CSS/line-height "The line-height CSS property sets the amount of space used for lines, such as in text. On block-level elements, it specifies the minimum height of line boxes within the element. On non-replaced inline elements, it specifies the height that is used to calculate line box height.") can be used with a value of `80%`.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/ol"}]},{name:"ul",description:{kind:"markdown",value:"The ul element represents a list of items, where the order of the items is not important — that is, where changing the order would not materially change the meaning of the document."},attributes:[{name:"compact",description:'This Boolean attribute hints that the list should be rendered in a compact style. The interpretation of this attribute depends on the user agent and it doesn\'t work in all browsers.\n\n**Usage note: **Do not use this attribute, as it has been deprecated: the [`<ul>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ul "The HTML <ul> element represents an unordered list of items, typically rendered as a bulleted list.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/CSS). To give a similar effect as the `compact` attribute, the [CSS](https://developer.mozilla.org/en-US/docs/CSS) property [line-height](https://developer.mozilla.org/en-US/docs/CSS/line-height) can be used with a value of `80%`.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/ul"}]},{name:"li",description:{kind:"markdown",value:"The li element represents a list item. If its parent element is an ol, ul, or menu element, then the element is an item of the parent element's list, as defined for those elements. Otherwise, the list item has no defined list-related relationship to any other li element."},attributes:[{name:"value",description:{kind:"markdown",value:'This integer attribute indicates the current ordinal value of the list item as defined by the [`<ol>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol "The HTML <ol> element represents an ordered list of items, typically rendered as a numbered list.") element. The only allowed value for this attribute is a number, even if the list is displayed with Roman numerals or letters. List items that follow this one continue numbering from the value set. The **value** attribute has no meaning for unordered lists ([`<ul>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ul "The HTML <ul> element represents an unordered list of items, typically rendered as a bulleted list.")) or for menus ([`<menu>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/menu "The HTML <menu> element represents a group of commands that a user can perform or activate. This includes both list menus, which might appear across the top of a screen, as well as context menus, such as those that might appear underneath a button after it has been clicked.")).\n\n**Note**: This attribute was deprecated in HTML4, but reintroduced in HTML5.\n\n**Note:** Prior to Gecko 9.0, negative values were incorrectly converted to 0. Starting in Gecko 9.0 all integer values are correctly parsed.'}},{name:"type",description:'This character attribute indicates the numbering type:\n\n* `a`: lowercase letters\n* `A`: uppercase letters\n* `i`: lowercase Roman numerals\n* `I`: uppercase Roman numerals\n* `1`: numbers\n\nThis type overrides the one used by its parent [`<ol>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol "The HTML <ol> element represents an ordered list of items, typically rendered as a numbered list.") element, if any.\n\n**Usage note:** This attribute has been deprecated: use the CSS [`list-style-type`](https://developer.mozilla.org/en-US/docs/Web/CSS/list-style-type "The list-style-type CSS property sets the marker (such as a disc, character, or custom counter style) of a list item element.") property instead.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/li"}]},{name:"dl",description:{kind:"markdown",value:"The dl element represents an association list consisting of zero or more name-value groups (a description list). A name-value group consists of one or more names (dt elements) followed by one or more values (dd elements), ignoring any nodes other than dt and dd elements. Within a single dl element, there should not be more than one dt element for each name."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dl"}]},{name:"dt",description:{kind:"markdown",value:"The dt element represents the term, or name, part of a term-description group in a description list (dl element)."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dt"}]},{name:"dd",description:{kind:"markdown",value:"The dd element represents the description, definition, or value, part of a term-description group in a description list (dl element)."},attributes:[{name:"nowrap",description:"If the value of this attribute is set to `yes`, the definition text will not wrap. The default value is `no`."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dd"}]},{name:"figure",description:{kind:"markdown",value:"The figure element represents some flow content, optionally with a caption, that is self-contained (like a complete sentence) and is typically referenced as a single unit from the main flow of the document."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/figure"}]},{name:"figcaption",description:{kind:"markdown",value:"The figcaption element represents a caption or legend for the rest of the contents of the figcaption element's parent figure element, if any."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/figcaption"}]},{name:"main",description:{kind:"markdown",value:"The main element represents the main content of the body of a document or application. The main content area consists of content that is directly related to or expands upon the central topic of a document or central functionality of an application."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/main"}]},{name:"div",description:{kind:"markdown",value:"The div element has no special meaning at all. It represents its children. It can be used with the class, lang, and title attributes to mark up semantics common to a group of consecutive elements."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/div"}]},{name:"a",description:{kind:"markdown",value:"If the a element has an href attribute, then it represents a hyperlink (a hypertext anchor) labeled by its contents."},attributes:[{name:"href",description:{kind:"markdown",value:"Contains a URL or a URL fragment that the hyperlink points to."}},{name:"target",description:{kind:"markdown",value:'Specifies where to display the linked URL. It is a name of, or keyword for, a _browsing context_: a tab, window, or `<iframe>`. The following keywords have special meanings:\n\n* `_self`: Load the URL into the same browsing context as the current one. This is the default behavior.\n* `_blank`: Load the URL into a new browsing context. This is usually a tab, but users can configure browsers to use new windows instead.\n* `_parent`: Load the URL into the parent browsing context of the current one. If there is no parent, this behaves the same way as `_self`.\n* `_top`: Load the URL into the top-level browsing context (that is, the "highest" browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this behaves the same way as `_self`.\n\n**Note:** When using `target`, consider adding `rel="noreferrer"` to avoid exploitation of the `window.opener` API.\n\n**Note:** Linking to another page using `target="_blank"` will run the new page on the same process as your page. If the new page is executing expensive JS, your page\'s performance may suffer. To avoid this use `rel="noopener"`.'}},{name:"download",description:{kind:"markdown",value:"This attribute instructs browsers to download a URL instead of navigating to it, so the user will be prompted to save it as a local file. If the attribute has a value, it is used as the pre-filled file name in the Save prompt (the user can still change the file name if they want). There are no restrictions on allowed values, though `/` and `\\` are converted to underscores. Most file systems limit some punctuation in file names, and browsers will adjust the suggested name accordingly.\n\n**Notes:**\n\n* This attribute only works for [same-origin URLs](https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy).\n* Although HTTP(s) URLs need to be in the same-origin, [`blob:` URLs](https://developer.mozilla.org/en-US/docs/Web/API/URL.createObjectURL) and [`data:` URLs](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs) are allowed so that content generated by JavaScript, such as pictures created in an image-editor Web app, can be downloaded.\n* If the HTTP header [`Content-Disposition:`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition) gives a different filename than this attribute, the HTTP header takes priority over this attribute.\n* If `Content-Disposition:` is set to `inline`, Firefox prioritizes `Content-Disposition`, like the filename case, while Chrome prioritizes the `download` attribute."}},{name:"ping",description:{kind:"markdown",value:'Contains a space-separated list of URLs to which, when the hyperlink is followed, [`POST`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/POST "The HTTP POST method sends data to the server. The type of the body of the request is indicated by the Content-Type header.") requests with the body `PING` will be sent by the browser (in the background). Typically used for tracking.'}},{name:"rel",description:{kind:"markdown",value:"Specifies the relationship of the target object to the link object. The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types)."}},{name:"hreflang",description:{kind:"markdown",value:'This attribute indicates the human language of the linked resource. It is purely advisory, with no built-in functionality. Allowed values are determined by [BCP47](https://www.ietf.org/rfc/bcp/bcp47.txt "Tags for Identifying Languages").'}},{name:"type",description:{kind:"markdown",value:'Specifies the media type in the form of a [MIME type](https://developer.mozilla.org/en-US/docs/Glossary/MIME_type "MIME type: A MIME type (now properly called "media type", but also sometimes "content type") is a string sent along with a file indicating the type of the file (describing the content format, for example, a sound file might be labeled audio/ogg, or an image file image/png).") for the linked URL. It is purely advisory, with no built-in functionality.'}},{name:"referrerpolicy",description:"Indicates which [referrer](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer) to send when fetching the URL:\n\n* `'no-referrer'` means the `Referer:` header will not be sent.\n* `'no-referrer-when-downgrade'` means no `Referer:` header will be sent when navigating to an origin without HTTPS. This is the default behavior.\n* `'origin'` means the referrer will be the [origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the page, not including information after the domain.\n* `'origin-when-cross-origin'` meaning that navigations to other origins will be limited to the scheme, the host and the port, while navigations on the same origin will include the referrer's path.\n* `'strict-origin-when-cross-origin'`\n* `'unsafe-url'` means the referrer will include the origin and path, but not the fragment, password, or username. This is unsafe because it can leak data from secure URLs to insecure ones."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/a"}]},{name:"em",description:{kind:"markdown",value:"The em element represents stress emphasis of its contents."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/em"}]},{name:"strong",description:{kind:"markdown",value:"The strong element represents strong importance, seriousness, or urgency for its contents."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/strong"}]},{name:"small",description:{kind:"markdown",value:"The small element represents side comments such as small print."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/small"}]},{name:"s",description:{kind:"markdown",value:"The s element represents contents that are no longer accurate or no longer relevant."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/s"}]},{name:"cite",description:{kind:"markdown",value:"The cite element represents a reference to a creative work. It must include the title of the work or the name of the author(person, people or organization) or an URL reference, or a reference in abbreviated form as per the conventions used for the addition of citation metadata."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/cite"}]},{name:"q",description:{kind:"markdown",value:"The q element represents some phrasing content quoted from another source."},attributes:[{name:"cite",description:{kind:"markdown",value:"The value of this attribute is a URL that designates a source document or message for the information quoted. This attribute is intended to point to information explaining the context or the reference for the quote."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/q"}]},{name:"dfn",description:{kind:"markdown",value:"The dfn element represents the defining instance of a term. The paragraph, description list group, or section that is the nearest ancestor of the dfn element must also contain the definition(s) for the term given by the dfn element."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dfn"}]},{name:"abbr",description:{kind:"markdown",value:"The abbr element represents an abbreviation or acronym, optionally with its expansion. The title attribute may be used to provide an expansion of the abbreviation. The attribute, if specified, must contain an expansion of the abbreviation, and nothing else."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/abbr"}]},{name:"ruby",description:{kind:"markdown",value:"The ruby element allows one or more spans of phrasing content to be marked with ruby annotations. Ruby annotations are short runs of text presented alongside base text, primarily used in East Asian typography as a guide for pronunciation or to include other annotations. In Japanese, this form of typography is also known as furigana. Ruby text can appear on either side, and sometimes both sides, of the base text, and it is possible to control its position using CSS. A more complete introduction to ruby can be found in the Use Cases & Exploratory Approaches for Ruby Markup document as well as in CSS Ruby Module Level 1. [RUBY-UC] [CSSRUBY]"},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/ruby"}]},{name:"rb",description:{kind:"markdown",value:"The rb element marks the base text component of a ruby annotation. When it is the child of a ruby element, it doesn't represent anything itself, but its parent ruby element uses it as part of determining what it represents."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/rb"}]},{name:"rt",description:{kind:"markdown",value:"The rt element marks the ruby text component of a ruby annotation. When it is the child of a ruby element or of an rtc element that is itself the child of a ruby element, it doesn't represent anything itself, but its ancestor ruby element uses it as part of determining what it represents."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/rt"}]},{name:"rp",description:{kind:"markdown",value:"The rp element is used to provide fallback text to be shown by user agents that don't support ruby annotations. One widespread convention is to provide parentheses around the ruby text component of a ruby annotation."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/rp"}]},{name:"time",description:{kind:"markdown",value:"The time element represents its contents, along with a machine-readable form of those contents in the datetime attribute. The kind of content is limited to various kinds of dates, times, time-zone offsets, and durations, as described below."},attributes:[{name:"datetime",description:{kind:"markdown",value:"This attribute indicates the time and/or date of the element and must be in one of the formats described below."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/time"}]},{name:"code",description:{kind:"markdown",value:"The code element represents a fragment of computer code. This could be an XML element name, a file name, a computer program, or any other string that a computer would recognize."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/code"}]},{name:"var",description:{kind:"markdown",value:"The var element represents a variable. This could be an actual variable in a mathematical expression or programming context, an identifier representing a constant, a symbol identifying a physical quantity, a function parameter, or just be a term used as a placeholder in prose."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/var"}]},{name:"samp",description:{kind:"markdown",value:"The samp element represents sample or quoted output from another program or computing system."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/samp"}]},{name:"kbd",description:{kind:"markdown",value:"The kbd element represents user input (typically keyboard input, although it may also be used to represent other input, such as voice commands)."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/kbd"}]},{name:"sub",description:{kind:"markdown",value:"The sub element represents a subscript."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/sub"}]},{name:"sup",description:{kind:"markdown",value:"The sup element represents a superscript."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/sup"}]},{name:"i",description:{kind:"markdown",value:"The i element represents a span of text in an alternate voice or mood, or otherwise offset from the normal prose in a manner indicating a different quality of text, such as a taxonomic designation, a technical term, an idiomatic phrase from another language, transliteration, a thought, or a ship name in Western texts."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/i"}]},{name:"b",description:{kind:"markdown",value:"The b element represents a span of text to which attention is being drawn for utilitarian purposes without conveying any extra importance and with no implication of an alternate voice or mood, such as key words in a document abstract, product names in a review, actionable words in interactive text-driven software, or an article lede."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/b"}]},{name:"u",description:{kind:"markdown",value:"The u element represents a span of text with an unarticulated, though explicitly rendered, non-textual annotation, such as labeling the text as being a proper name in Chinese text (a Chinese proper name mark), or labeling the text as being misspelt."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/u"}]},{name:"mark",description:{kind:"markdown",value:"The mark element represents a run of text in one document marked or highlighted for reference purposes, due to its relevance in another context. When used in a quotation or other block of text referred to from the prose, it indicates a highlight that was not originally present but which has been added to bring the reader's attention to a part of the text that might not have been considered important by the original author when the block was originally written, but which is now under previously unexpected scrutiny. When used in the main prose of a document, it indicates a part of the document that has been highlighted due to its likely relevance to the user's current activity."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/mark"}]},{name:"bdi",description:{kind:"markdown",value:"The bdi element represents a span of text that is to be isolated from its surroundings for the purposes of bidirectional text formatting. [BIDI]"},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/bdi"}]},{name:"bdo",description:{kind:"markdown",value:"The bdo element represents explicit text directionality formatting control for its children. It allows authors to override the Unicode bidirectional algorithm by explicitly specifying a direction override. [BIDI]"},attributes:[{name:"dir",description:"The direction in which text should be rendered in this element's contents. Possible values are:\n\n* `ltr`: Indicates that the text should go in a left-to-right direction.\n* `rtl`: Indicates that the text should go in a right-to-left direction."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/bdo"}]},{name:"span",description:{kind:"markdown",value:"The span element doesn't mean anything on its own, but can be useful when used together with the global attributes, e.g. class, lang, or dir. It represents its children."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/span"}]},{name:"br",description:{kind:"markdown",value:"The br element represents a line break."},attributes:[{name:"clear",description:"Indicates where to begin the next line after the break."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/br"}]},{name:"wbr",description:{kind:"markdown",value:"The wbr element represents a line break opportunity."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/wbr"}]},{name:"ins",description:{kind:"markdown",value:"The ins element represents an addition to the document."},attributes:[{name:"cite",description:"This attribute defines the URI of a resource that explains the change, such as a link to meeting minutes or a ticket in a troubleshooting system."},{name:"datetime",description:'This attribute indicates the time and date of the change and must be a valid date with an optional time string. If the value cannot be parsed as a date with an optional time string, the element does not have an associated time stamp. For the format of the string without a time, see [Format of a valid date string](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#Format_of_a_valid_date_string "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.") in [Date and time formats used in HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article."). The format of the string if it includes both date and time is covered in [Format of a valid local date and time string](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#Format_of_a_valid_local_date_and_time_string "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.") in [Date and time formats used in HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.").'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/ins"}]},{name:"del",description:{kind:"markdown",value:"The del element represents a removal from the document."},attributes:[{name:"cite",description:{kind:"markdown",value:"A URI for a resource that explains the change (for example, meeting minutes)."}},{name:"datetime",description:{kind:"markdown",value:'This attribute indicates the time and date of the change and must be a valid date string with an optional time. If the value cannot be parsed as a date with an optional time string, the element does not have an associated time stamp. For the format of the string without a time, see [Format of a valid date string](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#Format_of_a_valid_date_string "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.") in [Date and time formats used in HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article."). The format of the string if it includes both date and time is covered in [Format of a valid local date and time string](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#Format_of_a_valid_local_date_and_time_string "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.") in [Date and time formats used in HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats "Certain HTML elements use date and/or time values. The formats of the strings that specify these are described in this article.").'}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/del"}]},{name:"picture",description:{kind:"markdown",value:"The picture element is a container which provides multiple sources to its contained img element to allow authors to declaratively control or give hints to the user agent about which image resource to use, based on the screen pixel density, viewport size, image format, and other factors. It represents its children."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/picture"}]},{name:"img",description:{kind:"markdown",value:"An img element represents an image."},attributes:[{name:"alt",description:{kind:"markdown",value:'This attribute defines an alternative text description of the image.\n\n**Note:** Browsers do not always display the image referenced by the element. This is the case for non-graphical browsers (including those used by people with visual impairments), if the user chooses not to display images, or if the browser cannot display the image because it is invalid or an [unsupported type](#Supported_image_formats). In these cases, the browser may replace the image with the text defined in this element\'s `alt` attribute. You should, for these reasons and others, provide a useful value for `alt` whenever possible.\n\n**Note:** Omitting this attribute altogether indicates that the image is a key part of the content, and no textual equivalent is available. Setting this attribute to an empty string (`alt=""`) indicates that this image is _not_ a key part of the content (decorative), and that non-visual browsers may omit it from rendering.'}},{name:"src",description:{kind:"markdown",value:"The image URL. This attribute is mandatory for the `<img>` element. On browsers supporting `srcset`, `src` is treated like a candidate image with a pixel density descriptor `1x` unless an image with this pixel density descriptor is already defined in `srcset,` or unless `srcset` contains '`w`' descriptors."}},{name:"srcset",description:{kind:"markdown",value:"A list of one or more strings separated by commas indicating a set of possible image sources for the user agent to use. Each string is composed of:\n\n1. a URL to an image,\n2. optionally, whitespace followed by one of:\n * A width descriptor, or a positive integer directly followed by '`w`'. The width descriptor is divided by the source size given in the `sizes` attribute to calculate the effective pixel density.\n * A pixel density descriptor, which is a positive floating point number directly followed by '`x`'.\n\nIf no descriptor is specified, the source is assigned the default descriptor: `1x`.\n\nIt is incorrect to mix width descriptors and pixel density descriptors in the same `srcset` attribute. Duplicate descriptors (for instance, two sources in the same `srcset` which are both described with '`2x`') are also invalid.\n\nThe user agent selects any one of the available sources at its discretion. This provides them with significant leeway to tailor their selection based on things like user preferences or bandwidth conditions. See our [Responsive images](https://developer.mozilla.org/en-US/docs/Learn/HTML/Multimedia_and_embedding/Responsive_images) tutorial for an example."}},{name:"crossorigin",valueSet:"xo",description:{kind:"markdown",value:'This enumerated attribute indicates if the fetching of the related image must be done using CORS or not. [CORS-enabled images](https://developer.mozilla.org/en-US/docs/CORS_Enabled_Image) can be reused in the [`<canvas>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas "Use the HTML <canvas> element with either the canvas scripting API or the WebGL API to draw graphics and animations.") element without being "[tainted](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_enabled_image#What_is_a_tainted_canvas)." The allowed values are:'}},{name:"usemap",description:{kind:"markdown",value:'The partial URL (starting with \'#\') of an [image map](https://developer.mozilla.org/en-US/docs/HTML/Element/map) associated with the element.\n\n**Note:** You cannot use this attribute if the `<img>` element is a descendant of an [`<a>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a "The HTML <a> element (or anchor element) creates a hyperlink to other web pages, files, locations within the same page, email addresses, or any other URL.") or [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") element.'}},{name:"ismap",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute indicates that the image is part of a server-side map. If so, the precise coordinates of a click are sent to the server.\n\n**Note:** This attribute is allowed only if the `<img>` element is a descendant of an [`<a>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a "The HTML <a> element (or anchor element) creates a hyperlink to other web pages, files, locations within the same page, email addresses, or any other URL.") element with a valid [`href`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href) attribute.'}},{name:"width",description:{kind:"markdown",value:"The intrinsic width of the image in pixels."}},{name:"height",description:{kind:"markdown",value:"The intrinsic height of the image in pixels."}},{name:"decoding",description:"Provides an image decoding hint to the browser. The allowed values are:"},{name:"decoding",description:"`sync`\n\nDecode the image synchronously for atomic presentation with other content.\n\n`async`\n\nDecode the image asynchronously to reduce delay in presenting other content.\n\n`auto`\n\nDefault mode, which indicates no preference for the decoding mode. The browser decides what is best for the user."},{name:"importance",description:"Indicates the relative importance of the resource. Priority hints are delegated using the values:"},{name:"importance",description:"`auto`: Indicates **no preference**. The browser may use its own heuristics to decide the priority of the image.\n\n`high`: Indicates to the browser that the image is of **high** priority.\n\n`low`: Indicates to the browser that the image is of **low** priority."},{name:"intrinsicsize",description:"This attribute tells the browser to ignore the actual intrinsic size of the image and pretend it’s the size specified in the attribute. Specifically, the image would raster at these dimensions and `naturalWidth`/`naturalHeight` on images would return the values specified in this attribute. [Explainer](https://github.com/ojanvafai/intrinsicsize-attribute), [examples](https://googlechrome.github.io/samples/intrinsic-size/index.html)"},{name:"referrerpolicy",description:"A string indicating which referrer to use when fetching the resource:\n\n* `no-referrer:` The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer \"The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.\") header will not be sent.\n* `no-referrer-when-downgrade:` No `Referer` header will be sent when navigating to an origin without TLS (HTTPS). This is a user agent’s default behavior if no policy is otherwise specified.\n* `origin:` The `Referer` header will include the page of origin's scheme, the host, and the port.\n* `origin-when-cross-origin:` Navigating to other origins will limit the included referral data to the scheme, the host and the port, while navigating from the same origin will include the referrer's full path.\n* `unsafe-url:` The `Referer` header will include the origin and the path, but not the fragment, password, or username. This case is unsafe because it can leak origins and paths from TLS-protected resources to insecure origins."},{name:"sizes",description:"A list of one or more strings separated by commas indicating a set of source sizes. Each source size consists of:\n\n1. a media condition. This must be omitted for the last item.\n2. a source size value.\n\nSource size values specify the intended display size of the image. User agents use the current source size to select one of the sources supplied by the `srcset` attribute, when those sources are described using width ('`w`') descriptors. The selected source size affects the intrinsic size of the image (the image’s display size if no CSS styling is applied). If the `srcset` attribute is absent, or contains no values with a width (`w`) descriptor, then the `sizes` attribute has no effect."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/img"}]},{name:"iframe",description:{kind:"markdown",value:"The iframe element represents a nested browsing context."},attributes:[{name:"src",description:{kind:"markdown",value:'The URL of the page to embed. Use a value of `about:blank` to embed an empty page that conforms to the [same-origin policy](https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy#Inherited_origins). Also note that programatically removing an `<iframe>`\'s src attribute (e.g. via [`Element.removeAttribute()`](https://developer.mozilla.org/en-US/docs/Web/API/Element/removeAttribute "The Element method removeAttribute() removes the attribute with the specified name from the element.")) causes `about:blank` to be loaded in the frame in Firefox (from version 65), Chromium-based browsers, and Safari/iOS.'}},{name:"srcdoc",description:{kind:"markdown",value:"Inline HTML to embed, overriding the `src` attribute. If a browser does not support the `srcdoc` attribute, it will fall back to the URL in the `src` attribute."}},{name:"name",description:{kind:"markdown",value:'A targetable name for the embedded browsing context. This can be used in the `target` attribute of the [`<a>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a "The HTML <a> element (or anchor element) creates a hyperlink to other web pages, files, locations within the same page, email addresses, or any other URL."), [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server."), or [`<base>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base "The HTML <base> element specifies the base URL to use for all relative URLs contained within a document. There can be only one <base> element in a document.") elements; the `formtarget` attribute of the [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") or [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") elements; or the `windowName` parameter in the [`window.open()`](https://developer.mozilla.org/en-US/docs/Web/API/Window/open "The Window interface\'s open() method loads the specified resource into the browsing context (window, <iframe> or tab) with the specified name. If the name doesn\'t exist, then a new window is opened and the specified resource is loaded into its browsing context.") method.'}},{name:"sandbox",valueSet:"sb",description:{kind:"markdown",value:'Applies extra restrictions to the content in the frame. The value of the attribute can either be empty to apply all restrictions, or space-separated tokens to lift particular restrictions:\n\n* `allow-forms`: Allows the resource to submit forms. If this keyword is not used, form submission is blocked.\n* `allow-modals`: Lets the resource [open modal windows](https://html.spec.whatwg.org/multipage/origin.html#sandboxed-modals-flag).\n* `allow-orientation-lock`: Lets the resource [lock the screen orientation](https://developer.mozilla.org/en-US/docs/Web/API/Screen/lockOrientation).\n* `allow-pointer-lock`: Lets the resource use the [Pointer Lock API](https://developer.mozilla.org/en-US/docs/WebAPI/Pointer_Lock).\n* `allow-popups`: Allows popups (such as `window.open()`, `target="_blank"`, or `showModalDialog()`). If this keyword is not used, the popup will silently fail to open.\n* `allow-popups-to-escape-sandbox`: Lets the sandboxed document open new windows without those windows inheriting the sandboxing. For example, this can safely sandbox an advertisement without forcing the same restrictions upon the page the ad links to.\n* `allow-presentation`: Lets the resource start a [presentation session](https://developer.mozilla.org/en-US/docs/Web/API/PresentationRequest).\n* `allow-same-origin`: If this token is not used, the resource is treated as being from a special origin that always fails the [same-origin policy](https://developer.mozilla.org/en-US/docs/Glossary/same-origin_policy "same-origin policy: The same-origin policy is a critical security mechanism that restricts how a document or script loaded from one origin can interact with a resource from another origin.").\n* `allow-scripts`: Lets the resource run scripts (but not create popup windows).\n* `allow-storage-access-by-user-activation` : Lets the resource request access to the parent\'s storage capabilities with the [Storage Access API](https://developer.mozilla.org/en-US/docs/Web/API/Storage_Access_API).\n* `allow-top-navigation`: Lets the resource navigate the top-level browsing context (the one named `_top`).\n* `allow-top-navigation-by-user-activation`: Lets the resource navigate the top-level browsing context, but only if initiated by a user gesture.\n\n**Notes about sandboxing:**\n\n* When the embedded document has the same origin as the embedding page, it is **strongly discouraged** to use both `allow-scripts` and `allow-same-origin`, as that lets the embedded document remove the `sandbox` attribute — making it no more secure than not using the `sandbox` attribute at all.\n* Sandboxing is useless if the attacker can display content outside a sandboxed `iframe` — such as if the viewer opens the frame in a new tab. Such content should be also served from a _separate origin_ to limit potential damage.\n* The `sandbox` attribute is unsupported in Internet Explorer 9 and earlier.'}},{name:"seamless",valueSet:"v"},{name:"allowfullscreen",valueSet:"v",description:{kind:"markdown",value:'Set to `true` if the `<iframe>` can activate fullscreen mode by calling the [`requestFullscreen()`](https://developer.mozilla.org/en-US/docs/Web/API/Element/requestFullscreen "The Element.requestFullscreen() method issues an asynchronous request to make the element be displayed in full-screen mode.") method.'}},{name:"width",description:{kind:"markdown",value:"The width of the frame in CSS pixels. Default is `300`."}},{name:"height",description:{kind:"markdown",value:"The height of the frame in CSS pixels. Default is `150`."}},{name:"allow",description:"Specifies a [feature policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Feature_Policy) for the `<iframe>`."},{name:"allowpaymentrequest",description:"Set to `true` if a cross-origin `<iframe>` should be allowed to invoke the [Payment Request API](https://developer.mozilla.org/en-US/docs/Web/API/Payment_Request_API)."},{name:"allowpaymentrequest",description:'This attribute is considered a legacy attribute and redefined as `allow="payment"`.'},{name:"csp",description:'A [Content Security Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP) enforced for the embedded resource. See [`HTMLIFrameElement.csp`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement/csp "The csp property of the HTMLIFrameElement interface specifies the Content Security Policy that an embedded document must agree to enforce upon itself.") for details.'},{name:"importance",description:"The download priority of the resource in the `<iframe>`'s `src` attribute. Allowed values:\n\n`auto` (default)\n\nNo preference. The browser uses its own heuristics to decide the priority of the resource.\n\n`high`\n\nThe resource should be downloaded before other lower-priority page resources.\n\n`low`\n\nThe resource should be downloaded after other higher-priority page resources."},{name:"referrerpolicy",description:'Indicates which [referrer](https://developer.mozilla.org/en-US/docs/Web/API/Document/referrer) to send when fetching the frame\'s resource:\n\n* `no-referrer`: The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent.\n* `no-referrer-when-downgrade` (default): The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent to [origin](https://developer.mozilla.org/en-US/docs/Glossary/origin "origin: Web content\'s origin is defined by the scheme (protocol), host (domain), and port of the URL used to access it. Two objects have the same origin only when the scheme, host, and port all match.")s without [TLS](https://developer.mozilla.org/en-US/docs/Glossary/TLS "TLS: Transport Layer Security (TLS), previously known as Secure Sockets Layer (SSL), is a protocol used by applications to communicate securely across a network, preventing tampering with and eavesdropping on email, web browsing, messaging, and other protocols.") ([HTTPS](https://developer.mozilla.org/en-US/docs/Glossary/HTTPS "HTTPS: HTTPS (HTTP Secure) is an encrypted version of the HTTP protocol. It usually uses SSL or TLS to encrypt all communication between a client and a server. This secure connection allows clients to safely exchange sensitive data with a server, for example for banking activities or online shopping.")).\n* `origin`: The sent referrer will be limited to the origin of the referring page: its [scheme](https://developer.mozilla.org/en-US/docs/Archive/Mozilla/URIScheme), [host](https://developer.mozilla.org/en-US/docs/Glossary/host "host: A host is a device connected to the Internet (or a local network). Some hosts called servers offer additional services like serving webpages or storing files and emails."), and [port](https://developer.mozilla.org/en-US/docs/Glossary/port "port: For a computer connected to a network with an IP address, a port is a communication endpoint. Ports are designated by numbers, and below 1024 each port is associated by default with a specific protocol.").\n* `origin-when-cross-origin`: The referrer sent to other origins will be limited to the scheme, the host, and the port. Navigations on the same origin will still include the path.\n* `same-origin`: A referrer will be sent for [same origin](https://developer.mozilla.org/en-US/docs/Glossary/Same-origin_policy "same origin: The same-origin policy is a critical security mechanism that restricts how a document or script loaded from one origin can interact with a resource from another origin."), but cross-origin requests will contain no referrer information.\n* `strict-origin`: Only send the origin of the document as the referrer when the protocol security level stays the same (HTTPS→HTTPS), but don\'t send it to a less secure destination (HTTPS→HTTP).\n* `strict-origin-when-cross-origin`: Send a full URL when performing a same-origin request, only send the origin when the protocol security level stays the same (HTTPS→HTTPS), and send no header to a less secure destination (HTTPS→HTTP).\n* `unsafe-url`: The referrer will include the origin _and_ the path (but not the [fragment](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/hash), [password](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/password), or [username](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/username)). **This value is unsafe**, because it leaks origins and paths from TLS-protected resources to insecure origins.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/iframe"}]},{name:"embed",description:{kind:"markdown",value:"The embed element provides an integration point for an external (typically non-HTML) application or interactive content."},attributes:[{name:"src",description:{kind:"markdown",value:"The URL of the resource being embedded."}},{name:"type",description:{kind:"markdown",value:"The MIME type to use to select the plug-in to instantiate."}},{name:"width",description:{kind:"markdown",value:"The displayed width of the resource, in [CSS pixels](https://drafts.csswg.org/css-values/#px). This must be an absolute value; percentages are _not_ allowed."}},{name:"height",description:{kind:"markdown",value:"The displayed height of the resource, in [CSS pixels](https://drafts.csswg.org/css-values/#px). This must be an absolute value; percentages are _not_ allowed."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/embed"}]},{name:"object",description:{kind:"markdown",value:"The object element can represent an external resource, which, depending on the type of the resource, will either be treated as an image, as a nested browsing context, or as an external resource to be processed by a plugin."},attributes:[{name:"data",description:{kind:"markdown",value:"The address of the resource as a valid URL. At least one of **data** and **type** must be defined."}},{name:"type",description:{kind:"markdown",value:"The [content type](https://developer.mozilla.org/en-US/docs/Glossary/Content_type) of the resource specified by **data**. At least one of **data** and **type** must be defined."}},{name:"typemustmatch",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates if the **type** attribute and the actual [content type](https://developer.mozilla.org/en-US/docs/Glossary/Content_type) of the resource must match to be used."}},{name:"name",description:{kind:"markdown",value:"The name of valid browsing context (HTML5), or the name of the control (HTML 4)."}},{name:"usemap",description:{kind:"markdown",value:"A hash-name reference to a [`<map>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/map \"The HTML <map> element is used with <area> elements to define an image map (a clickable link area).\") element; that is a '#' followed by the value of a [`name`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/map#attr-name) of a map element."}},{name:"form",description:{kind:"markdown",value:'The form element, if any, that the object element is associated with (its _form owner_). The value of the attribute must be an ID of a [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element in the same document.'}},{name:"width",description:{kind:"markdown",value:"The width of the display resource, in [CSS pixels](https://drafts.csswg.org/css-values/#px). -- (Absolute values only. [NO percentages](https://html.spec.whatwg.org/multipage/embedded-content.html#dimension-attributes))"}},{name:"height",description:{kind:"markdown",value:"The height of the displayed resource, in [CSS pixels](https://drafts.csswg.org/css-values/#px). -- (Absolute values only. [NO percentages](https://html.spec.whatwg.org/multipage/embedded-content.html#dimension-attributes))"}},{name:"archive",description:"A space-separated list of URIs for archives of resources for the object."},{name:"border",description:"The width of a border around the control, in pixels."},{name:"classid",description:"The URI of the object's implementation. It can be used together with, or in place of, the **data** attribute."},{name:"codebase",description:"The base path used to resolve relative URIs specified by **classid**, **data**, or **archive**. If not specified, the default is the base URI of the current document."},{name:"codetype",description:"The content type of the data specified by **classid**."},{name:"declare",description:"The presence of this Boolean attribute makes this element a declaration only. The object must be instantiated by a subsequent `<object>` element. In HTML5, repeat the <object> element completely each that that the resource is reused."},{name:"standby",description:"A message that the browser can show while loading the object's implementation and data."},{name:"tabindex",description:"The position of the element in the tabbing navigation order for the current document."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/object"}]},{name:"param",description:{kind:"markdown",value:"The param element defines parameters for plugins invoked by object elements. It does not represent anything on its own."},attributes:[{name:"name",description:{kind:"markdown",value:"Name of the parameter."}},{name:"value",description:{kind:"markdown",value:"Specifies the value of the parameter."}},{name:"type",description:'Only used if the `valuetype` is set to "ref". Specifies the MIME type of values found at the URI specified by value.'},{name:"valuetype",description:'Specifies the type of the `value` attribute. Possible values are:\n\n* data: Default value. The value is passed to the object\'s implementation as a string.\n* ref: The value is a URI to a resource where run-time values are stored.\n* object: An ID of another [`<object>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/object "The HTML <object> element represents an external resource, which can be treated as an image, a nested browsing context, or a resource to be handled by a plugin.") in the same document.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/param"}]},{name:"video",description:{kind:"markdown",value:"A video element is used for playing videos or movies, and audio files with captions."},attributes:[{name:"src"},{name:"crossorigin",valueSet:"xo"},{name:"poster"},{name:"preload",valueSet:"pl"},{name:"autoplay",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute; if specified, the video automatically begins to play back as soon as it can do so without stopping to finish loading the data."}},{name:"mediagroup"},{name:"loop",valueSet:"v"},{name:"muted",valueSet:"v"},{name:"controls",valueSet:"v"},{name:"width"},{name:"height"}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/video"}]},{name:"audio",description:{kind:"markdown",value:"An audio element represents a sound or audio stream."},attributes:[{name:"src",description:{kind:"markdown",value:'The URL of the audio to embed. This is subject to [HTTP access controls](https://developer.mozilla.org/en-US/docs/HTTP_access_control). This is optional; you may instead use the [`<source>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source "The HTML <source> element specifies multiple media resources for the <picture>, the <audio> element, or the <video> element.") element within the audio block to specify the audio to embed.'}},{name:"crossorigin",valueSet:"xo",description:{kind:"markdown",value:'This enumerated attribute indicates whether to use CORS to fetch the related image. [CORS-enabled resources](https://developer.mozilla.org/en-US/docs/CORS_Enabled_Image) can be reused in the [`<canvas>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas "Use the HTML <canvas> element with either the canvas scripting API or the WebGL API to draw graphics and animations.") element without being _tainted_. The allowed values are:\n\nanonymous\n\nSends a cross-origin request without a credential. In other words, it sends the `Origin:` HTTP header without a cookie, X.509 certificate, or performing HTTP Basic authentication. If the server does not give credentials to the origin site (by not setting the `Access-Control-Allow-Origin:` HTTP header), the image will be _tainted_, and its usage restricted.\n\nuse-credentials\n\nSends a cross-origin request with a credential. In other words, it sends the `Origin:` HTTP header with a cookie, a certificate, or performing HTTP Basic authentication. If the server does not give credentials to the origin site (through `Access-Control-Allow-Credentials:` HTTP header), the image will be _tainted_ and its usage restricted.\n\nWhen not present, the resource is fetched without a CORS request (i.e. without sending the `Origin:` HTTP header), preventing its non-tainted used in [`<canvas>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas "Use the HTML <canvas> element with either the canvas scripting API or the WebGL API to draw graphics and animations.") elements. If invalid, it is handled as if the enumerated keyword **anonymous** was used. See [CORS settings attributes](https://developer.mozilla.org/en-US/docs/HTML/CORS_settings_attributes) for additional information.'}},{name:"preload",valueSet:"pl",description:{kind:"markdown",value:"This enumerated attribute is intended to provide a hint to the browser about what the author thinks will lead to the best user experience. It may have one of the following values:\n\n* `none`: Indicates that the audio should not be preloaded.\n* `metadata`: Indicates that only audio metadata (e.g. length) is fetched.\n* `auto`: Indicates that the whole audio file can be downloaded, even if the user is not expected to use it.\n* _empty string_: A synonym of the `auto` value.\n\nIf not set, `preload`'s default value is browser-defined (i.e. each browser may have its own default value). The spec advises it to be set to `metadata`.\n\n**Usage notes:**\n\n* The `autoplay` attribute has precedence over `preload`. If `autoplay` is specified, the browser would obviously need to start downloading the audio for playback.\n* The browser is not forced by the specification to follow the value of this attribute; it is a mere hint."}},{name:"autoplay",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute: if specified, the audio will automatically begin playback as soon as it can do so, without waiting for the entire audio file to finish downloading.\n\n**Note**: Sites that automatically play audio (or videos with an audio track) can be an unpleasant experience for users, so should be avoided when possible. If you must offer autoplay functionality, you should make it opt-in (requiring a user to specifically enable it). However, this can be useful when creating media elements whose source will be set at a later time, under user control."}},{name:"mediagroup"},{name:"loop",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute: if specified, the audio player will automatically seek back to the start upon reaching the end of the audio."}},{name:"muted",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute that indicates whether the audio will be initially silenced. Its default value is `false`."}},{name:"controls",valueSet:"v",description:{kind:"markdown",value:"If this attribute is present, the browser will offer controls to allow the user to control audio playback, including volume, seeking, and pause/resume playback."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/audio"}]},{name:"source",description:{kind:"markdown",value:"The source element allows authors to specify multiple alternative media resources for media elements. It does not represent anything on its own."},attributes:[{name:"src",description:{kind:"markdown",value:'Required for [`<audio>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio "The HTML <audio> element is used to embed sound content in documents. It may contain one or more audio sources, represented using the src attribute or the <source> element: the browser will choose the most suitable one. It can also be the destination for streamed media, using a MediaStream.") and [`<video>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/video "The HTML Video element (<video>) embeds a media player which supports video playback into the document."), address of the media resource. The value of this attribute is ignored when the `<source>` element is placed inside a [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture "The HTML <picture> element contains zero or more <source> elements and one <img> element to provide versions of an image for different display/device scenarios.") element.'}},{name:"type",description:{kind:"markdown",value:"The MIME-type of the resource, optionally with a `codecs` parameter. See [RFC 4281](https://tools.ietf.org/html/rfc4281) for information about how to specify codecs."}},{name:"sizes",description:'Is a list of source sizes that describes the final rendered width of the image represented by the source. Each source size consists of a comma-separated list of media condition-length pairs. This information is used by the browser to determine, before laying the page out, which image defined in [`srcset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source#attr-srcset) to use. \nThe `sizes` attribute has an effect only when the [`<source>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source "The HTML <source> element specifies multiple media resources for the <picture>, the <audio> element, or the <video> element.") element is the direct child of a [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture "The HTML <picture> element contains zero or more <source> elements and one <img> element to provide versions of an image for different display/device scenarios.") element.'},{name:"srcset",description:"A list of one or more strings separated by commas indicating a set of possible images represented by the source for the browser to use. Each string is composed of:\n\n1. one URL to an image,\n2. a width descriptor, that is a positive integer directly followed by `'w'`. The default value, if missing, is the infinity.\n3. a pixel density descriptor, that is a positive floating number directly followed by `'x'`. The default value, if missing, is `1x`.\n\nEach string in the list must have at least a width descriptor or a pixel density descriptor to be valid. Among the list, there must be only one string containing the same tuple of width descriptor and pixel density descriptor. \nThe browser chooses the most adequate image to display at a given point of time. \nThe `srcset` attribute has an effect only when the [`<source>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source \"The HTML <source> element specifies multiple media resources for the <picture>, the <audio> element, or the <video> element.\") element is the direct child of a [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture \"The HTML <picture> element contains zero or more <source> elements and one <img> element to provide versions of an image for different display/device scenarios.\") element."},{name:"media",description:'[Media query](https://developer.mozilla.org/en-US/docs/CSS/Media_queries) of the resource\'s intended media; this should be used only in a [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture "The HTML <picture> element contains zero or more <source> elements and one <img> element to provide versions of an image for different display/device scenarios.") element.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/source"}]},{name:"track",description:{kind:"markdown",value:"The track element allows authors to specify explicit external timed text tracks for media elements. It does not represent anything on its own."},attributes:[{name:"default",valueSet:"v",description:{kind:"markdown",value:"This attribute indicates that the track should be enabled unless the user's preferences indicate that another track is more appropriate. This may only be used on one `track` element per media element."}},{name:"kind",valueSet:"tk",description:{kind:"markdown",value:"How the text track is meant to be used. If omitted the default kind is `subtitles`. If the attribute is not present, it will use the `subtitles`. If the attribute contains an invalid value, it will use `metadata`. (Versions of Chrome earlier than 52 treated an invalid value as `subtitles`.) The following keywords are allowed:\n\n* `subtitles`\n * Subtitles provide translation of content that cannot be understood by the viewer. For example dialogue or text that is not English in an English language film.\n * Subtitles may contain additional content, usually extra background information. For example the text at the beginning of the Star Wars films, or the date, time, and location of a scene.\n* `captions`\n * Closed captions provide a transcription and possibly a translation of audio.\n * It may include important non-verbal information such as music cues or sound effects. It may indicate the cue's source (e.g. music, text, character).\n * Suitable for users who are deaf or when the sound is muted.\n* `descriptions`\n * Textual description of the video content.\n * Suitable for users who are blind or where the video cannot be seen.\n* `chapters`\n * Chapter titles are intended to be used when the user is navigating the media resource.\n* `metadata`\n * Tracks used by scripts. Not visible to the user."}},{name:"label",description:{kind:"markdown",value:"A user-readable title of the text track which is used by the browser when listing available text tracks."}},{name:"src",description:{kind:"markdown",value:'Address of the track (`.vtt` file). Must be a valid URL. This attribute must be specified and its URL value must have the same origin as the document — unless the [`<audio>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio "The HTML <audio> element is used to embed sound content in documents. It may contain one or more audio sources, represented using the src attribute or the <source> element: the browser will choose the most suitable one. It can also be the destination for streamed media, using a MediaStream.") or [`<video>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/video "The HTML Video element (<video>) embeds a media player which supports video playback into the document.") parent element of the `track` element has a [`crossorigin`](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes) attribute.'}},{name:"srclang",description:{kind:"markdown",value:"Language of the track text data. It must be a valid [BCP 47](https://r12a.github.io/app-subtags/) language tag. If the `kind` attribute is set to `subtitles,` then `srclang` must be defined."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/track"}]},{name:"map",description:{kind:"markdown",value:"The map element, in conjunction with an img element and any area element descendants, defines an image map. The element represents its children."},attributes:[{name:"name",description:{kind:"markdown",value:"The name attribute gives the map a name so that it can be referenced. The attribute must be present and must have a non-empty value with no space characters. The value of the name attribute must not be a compatibility-caseless match for the value of the name attribute of another map element in the same document. If the id attribute is also specified, both attributes must have the same value."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/map"}]},{name:"area",description:{kind:"markdown",value:"The area element represents either a hyperlink with some text and a corresponding area on an image map, or a dead area on an image map."},attributes:[{name:"alt"},{name:"coords"},{name:"shape",valueSet:"sh"},{name:"href"},{name:"target"},{name:"download"},{name:"ping"},{name:"rel"},{name:"hreflang"},{name:"type"},{name:"accesskey",description:"Specifies a keyboard navigation accelerator for the element. Pressing ALT or a similar key in association with the specified character selects the form control correlated with that key sequence. Page designers are forewarned to avoid key sequences already bound to browsers. This attribute is global since HTML5."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/area"}]},{name:"table",description:{kind:"markdown",value:"The table element represents data with more than one dimension, in the form of a table."},attributes:[{name:"border"},{name:"align",description:'This enumerated attribute indicates how the table must be aligned inside the containing document. It may have the following values:\n\n* left: the table is displayed on the left side of the document;\n* center: the table is displayed in the center of the document;\n* right: the table is displayed on the right side of the document.\n\n**Usage Note**\n\n* **Do not use this attribute**, as it has been deprecated. The [`<table>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/table "The HTML <table> element represents tabular data — that is, information presented in a two-dimensional table comprised of rows and columns of cells containing data.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/CSS). Set [`margin-left`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-left "The margin-left CSS property sets the margin area on the left side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") and [`margin-right`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin-right "The margin-right CSS property sets the margin area on the right side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.") to `auto` or [`margin`](https://developer.mozilla.org/en-US/docs/Web/CSS/margin "The margin CSS property sets the margin area on all four sides of an element. It is a shorthand for margin-top, margin-right, margin-bottom, and margin-left.") to `0 auto` to achieve an effect that is similar to the align attribute.\n* Prior to Firefox 4, Firefox also supported the `middle`, `absmiddle`, and `abscenter` values as synonyms of `center`, in quirks mode only.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/table"}]},{name:"caption",description:{kind:"markdown",value:"The caption element represents the title of the table that is its parent, if it has a parent and that is a table element."},attributes:[{name:"align",description:'This enumerated attribute indicates how the caption must be aligned with respect to the table. It may have one of the following values:\n\n`left`\n\nThe caption is displayed to the left of the table.\n\n`top`\n\nThe caption is displayed above the table.\n\n`right`\n\nThe caption is displayed to the right of the table.\n\n`bottom`\n\nThe caption is displayed below the table.\n\n**Usage note:** Do not use this attribute, as it has been deprecated. The [`<caption>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/caption "The HTML Table Caption element (<caption>) specifies the caption (or title) of a table, and if used is always the first child of a <table>.") element should be styled using the [CSS](https://developer.mozilla.org/en-US/docs/CSS) properties [`caption-side`](https://developer.mozilla.org/en-US/docs/Web/CSS/caption-side "The caption-side CSS property puts the content of a table\'s <caption> on the specified side. The values are relative to the writing-mode of the table.") and [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.").'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/caption"}]},{name:"colgroup",description:{kind:"markdown",value:"The colgroup element represents a group of one or more columns in the table that is its parent, if it has a parent and that is a table element."},attributes:[{name:"span"},{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each column cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nIf this attribute is not set, the `left` value is assumed. The descendant [`<col>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col "The HTML <col> element defines a column within a table and is used for defining common semantics on all common cells. It is generally found within a <colgroup> element.") elements may override this value using their own [`align`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-align) attribute.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values:\n * Do not try to set the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on a selector giving a [`<colgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup "The HTML <colgroup> element defines a group of columns within a table.") element. Because [`<td>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td "The HTML <td> element defines a cell of a table that contains data. It participates in the table model.") elements are not descendant of the [`<colgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup "The HTML <colgroup> element defines a group of columns within a table.") element, they won\'t inherit it.\n * If the table doesn\'t use a [`colspan`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-colspan) attribute, use one `td:nth-child(an+b)` CSS selector per column, where a is the total number of the columns in the table and b is the ordinal position of this column in the table. Only after this selector the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property can be used.\n * If the table does use a [`colspan`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-colspan) attribute, the effect can be achieved by combining adequate CSS attribute selectors like `[colspan=n]`, though this is not trivial.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/colgroup"}]},{name:"col",description:{kind:"markdown",value:"If a col element has a parent and that is a colgroup element that itself has a parent that is a table element, then the col element represents one or more columns in the column group represented by that colgroup."},attributes:[{name:"span"},{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each column cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nIf this attribute is not set, its value is inherited from the [`align`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup#attr-align) of the [`<colgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup "The HTML <colgroup> element defines a group of columns within a table.") element this `<col>` element belongs too. If there are none, the `left` value is assumed.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values:\n * Do not try to set the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on a selector giving a [`<col>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col "The HTML <col> element defines a column within a table and is used for defining common semantics on all common cells. It is generally found within a <colgroup> element.") element. Because [`<td>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td "The HTML <td> element defines a cell of a table that contains data. It participates in the table model.") elements are not descendant of the [`<col>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col "The HTML <col> element defines a column within a table and is used for defining common semantics on all common cells. It is generally found within a <colgroup> element.") element, they won\'t inherit it.\n * If the table doesn\'t use a [`colspan`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-colspan) attribute, use the `td:nth-child(an+b)` CSS selector. Set `a` to zero and `b` to the position of the column in the table, e.g. `td:nth-child(2) { text-align: right; }` to right-align the second column.\n * If the table does use a [`colspan`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-colspan) attribute, the effect can be achieved by combining adequate CSS attribute selectors like `[colspan=n]`, though this is not trivial.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/col"}]},{name:"tbody",description:{kind:"markdown",value:"The tbody element represents a block of rows that consist of a body of data for the parent table element, if the tbody element has a parent and it is a table."},attributes:[{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-charoff) attributes.\n\nIf this attribute is not set, the `left` value is assumed.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, use the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on it.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/tbody"}]},{name:"thead",description:{kind:"markdown",value:"The thead element represents the block of rows that consist of the column labels (headers) for the parent table element, if the thead element has a parent and it is a table."},attributes:[{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/thead#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/thead#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nIf this attribute is not set, the `left` value is assumed.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, use the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on it.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/thead#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/thead"}]},{name:"tfoot",description:{kind:"markdown",value:"The tfoot element represents the block of rows that consist of the column summaries (footers) for the parent table element, if the tfoot element has a parent and it is a table."},attributes:[{name:"align",description:'This enumerated attribute specifies how horizontal alignment of each cell content will be handled. Possible values are:\n\n* `left`, aligning the content to the left of the cell\n* `center`, centering the content in the cell\n* `right`, aligning the content to the right of the cell\n* `justify`, inserting spaces into the textual content so that the content is justified in the cell\n* `char`, aligning the textual content on a special character with a minimal offset, defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nIf this attribute is not set, the `left` value is assumed.\n\n**Note:** Do not use this attribute as it is obsolete (not supported) in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, use the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property on it.\n* To achieve the same effect as the `char` value, in CSS3, you can use the value of the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tfoot#attr-char) as the value of the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property Unimplemented.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/tfoot"}]},{name:"tr",description:{kind:"markdown",value:"The tr element represents a row of cells in a table."},attributes:[{name:"align",description:'A [`DOMString`](https://developer.mozilla.org/en-US/docs/Web/API/DOMString "DOMString is a UTF-16 String. As JavaScript already uses such strings, DOMString is mapped directly to a String.") which specifies how the cell\'s context should be aligned horizontally within the cells in the row; this is shorthand for using `align` on every cell in the row individually. Possible values are:\n\n`left`\n\nAlign the content of each cell at its left edge.\n\n`center`\n\nCenter the contents of each cell between their left and right edges.\n\n`right`\n\nAlign the content of each cell at its right edge.\n\n`justify`\n\nWiden whitespaces within the text of each cell so that the text fills the full width of each cell (full justification).\n\n`char`\n\nAlign each cell in the row on a specific character (such that each row in the column that is configured this way will horizontally align its cells on that character). This uses the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tr#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tr#attr-charoff) to establish the alignment character (typically "." or "," when aligning numerical data) and the number of characters that should follow the alignment character. This alignment type was never widely supported.\n\nIf no value is expressly set for `align`, the parent node\'s value is inherited.\n\nInstead of using the obsolete `align` attribute, you should instead use the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property to establish `left`, `center`, `right`, or `justify` alignment for the row\'s cells. To apply character-based alignment, set the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property to the alignment character (such as `"."` or `","`).'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/tr"}]},{name:"td",description:{kind:"markdown",value:"The td element represents a data cell in a table."},attributes:[{name:"colspan"},{name:"rowspan"},{name:"headers"},{name:"abbr",description:"This attribute contains a short abbreviated description of the cell's content. Some user-agents, such as speech readers, may present this description before the content itself.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard. Alternatively, you can put the abbreviated description inside the cell and place the long content in the **title** attribute."},{name:"align",description:'This enumerated attribute specifies how the cell content\'s horizontal alignment will be handled. Possible values are:\n\n* `left`: The content is aligned to the left of the cell.\n* `center`: The content is centered in the cell.\n* `right`: The content is aligned to the right of the cell.\n* `justify` (with text only): The content is stretched out inside the cell so that it covers its entire width.\n* `char` (with text only): The content is aligned to a character inside the `<th>` element with minimal offset. This character is defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-charoff) attributes Unimplemented (see [bug 2212](https://bugzilla.mozilla.org/show_bug.cgi?id=2212 "character alignment not implemented (align=char, charoff=, text-align:<string>)")).\n\nThe default value when this attribute is not specified is `left`.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, apply the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property to the element.\n* To achieve the same effect as the `char` value, give the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property the same value you would use for the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-char). Unimplemented in CSS3.'},{name:"axis",description:"This attribute contains a list of space-separated strings. Each string is the `id` of a group of cells that this header applies to.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard."},{name:"bgcolor",description:'This attribute defines the background color of each cell in a column. It consists of a 6-digit hexadecimal code as defined in [sRGB](https://www.w3.org/Graphics/Color/sRGB) and is prefixed by \'#\'. This attribute may be used with one of sixteen predefined color strings:\n\n \n\n`black` = "#000000"\n\n \n\n`green` = "#008000"\n\n \n\n`silver` = "#C0C0C0"\n\n \n\n`lime` = "#00FF00"\n\n \n\n`gray` = "#808080"\n\n \n\n`olive` = "#808000"\n\n \n\n`white` = "#FFFFFF"\n\n \n\n`yellow` = "#FFFF00"\n\n \n\n`maroon` = "#800000"\n\n \n\n`navy` = "#000080"\n\n \n\n`red` = "#FF0000"\n\n \n\n`blue` = "#0000FF"\n\n \n\n`purple` = "#800080"\n\n \n\n`teal` = "#008080"\n\n \n\n`fuchsia` = "#FF00FF"\n\n \n\n`aqua` = "#00FFFF"\n\n**Note:** Do not use this attribute, as it is non-standard and only implemented in some versions of Microsoft Internet Explorer: The [`<td>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td "The HTML <td> element defines a cell of a table that contains data. It participates in the table model.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/CSS). To create a similar effect use the [`background-color`](https://developer.mozilla.org/en-US/docs/Web/CSS/background-color "The background-color CSS property sets the background color of an element.") property in [CSS](https://developer.mozilla.org/en-US/docs/CSS) instead.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/td"}]},{name:"th",description:{kind:"markdown",value:"The th element represents a header cell in a table."},attributes:[{name:"colspan"},{name:"rowspan"},{name:"headers"},{name:"scope",valueSet:"s"},{name:"sorted"},{name:"abbr",description:{kind:"markdown",value:"This attribute contains a short abbreviated description of the cell's content. Some user-agents, such as speech readers, may present this description before the content itself."}},{name:"align",description:'This enumerated attribute specifies how the cell content\'s horizontal alignment will be handled. Possible values are:\n\n* `left`: The content is aligned to the left of the cell.\n* `center`: The content is centered in the cell.\n* `right`: The content is aligned to the right of the cell.\n* `justify` (with text only): The content is stretched out inside the cell so that it covers its entire width.\n* `char` (with text only): The content is aligned to a character inside the `<th>` element with minimal offset. This character is defined by the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th#attr-char) and [`charoff`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th#attr-charoff) attributes.\n\nThe default value when this attribute is not specified is `left`.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard.\n\n* To achieve the same effect as the `left`, `center`, `right` or `justify` values, apply the CSS [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property to the element.\n* To achieve the same effect as the `char` value, give the [`text-align`](https://developer.mozilla.org/en-US/docs/Web/CSS/text-align "The text-align CSS property sets the horizontal alignment of an inline or table-cell box. This means it works like vertical-align but in the horizontal direction.") property the same value you would use for the [`char`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th#attr-char). Unimplemented in CSS3.'},{name:"axis",description:"This attribute contains a list of space-separated strings. Each string is the `id` of a group of cells that this header applies to.\n\n**Note:** Do not use this attribute as it is obsolete in the latest standard: use the [`scope`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th#attr-scope) attribute instead."},{name:"bgcolor",description:'This attribute defines the background color of each cell in a column. It consists of a 6-digit hexadecimal code as defined in [sRGB](https://www.w3.org/Graphics/Color/sRGB) and is prefixed by \'#\'. This attribute may be used with one of sixteen predefined color strings:\n\n \n\n`black` = "#000000"\n\n \n\n`green` = "#008000"\n\n \n\n`silver` = "#C0C0C0"\n\n \n\n`lime` = "#00FF00"\n\n \n\n`gray` = "#808080"\n\n \n\n`olive` = "#808000"\n\n \n\n`white` = "#FFFFFF"\n\n \n\n`yellow` = "#FFFF00"\n\n \n\n`maroon` = "#800000"\n\n \n\n`navy` = "#000080"\n\n \n\n`red` = "#FF0000"\n\n \n\n`blue` = "#0000FF"\n\n \n\n`purple` = "#800080"\n\n \n\n`teal` = "#008080"\n\n \n\n`fuchsia` = "#FF00FF"\n\n \n\n`aqua` = "#00FFFF"\n\n**Note:** Do not use this attribute, as it is non-standard and only implemented in some versions of Microsoft Internet Explorer: The [`<th>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th "The HTML <th> element defines a cell as header of a group of table cells. The exact nature of this group is defined by the scope and headers attributes.") element should be styled using [CSS](https://developer.mozilla.org/en-US/docs/Web/CSS). To create a similar effect use the [`background-color`](https://developer.mozilla.org/en-US/docs/Web/CSS/background-color "The background-color CSS property sets the background color of an element.") property in [CSS](https://developer.mozilla.org/en-US/docs/Web/CSS) instead.'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/th"}]},{name:"form",description:{kind:"markdown",value:"The form element represents a collection of form-associated elements, some of which can represent editable values that can be submitted to a server for processing."},attributes:[{name:"accept-charset",description:{kind:"markdown",value:'A space- or comma-delimited list of character encodings that the server accepts. The browser uses them in the order in which they are listed. The default value, the reserved string `"UNKNOWN"`, indicates the same encoding as that of the document containing the form element. \nIn previous versions of HTML, the different character encodings could be delimited by spaces or commas. In HTML5, only spaces are allowed as delimiters.'}},{name:"action",description:{kind:"markdown",value:'The URI of a program that processes the form information. This value can be overridden by a [`formaction`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formaction) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'}},{name:"autocomplete",valueSet:"o",description:{kind:"markdown",value:"Indicates whether input elements can by default have their values automatically completed by the browser. This setting can be overridden by an `autocomplete` attribute on an element belonging to the form. Possible values are:\n\n* `off`: The user must explicitly enter a value into each field for every use, or the document provides its own auto-completion method; the browser does not automatically complete entries.\n* `on`: The browser can automatically complete values based on values that the user has previously entered in the form.\n\nFor most modern browsers (including Firefox 38+, Google Chrome 34+, IE 11+) setting the autocomplete attribute will not prevent a browser's password manager from asking the user if they want to store login fields (username and password), if the user permits the storage the browser will autofill the login the next time the user visits the page. See [The autocomplete attribute and login fields](https://developer.mozilla.org/en-US/docs/Web/Security/Securing_your_site/Turning_off_form_autocompletion#The_autocomplete_attribute_and_login_fields)."}},{name:"enctype",valueSet:"et",description:{kind:"markdown",value:'When the value of the `method` attribute is `post`, enctype is the [MIME type](https://en.wikipedia.org/wiki/Mime_type) of content that is used to submit the form to the server. Possible values are:\n\n* `application/x-www-form-urlencoded`: The default value if the attribute is not specified.\n* `multipart/form-data`: The value used for an [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element with the `type` attribute set to "file".\n* `text/plain`: (HTML5)\n\nThis value can be overridden by a [`formenctype`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formenctype) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'}},{name:"method",valueSet:"m",description:{kind:"markdown",value:'The [HTTP](https://developer.mozilla.org/en-US/docs/Web/HTTP) method that the browser uses to submit the form. Possible values are:\n\n* `post`: Corresponds to the HTTP [POST method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.5) ; form data are included in the body of the form and sent to the server.\n* `get`: Corresponds to the HTTP [GET method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.3); form data are appended to the `action` attribute URI with a \'?\' as separator, and the resulting URI is sent to the server. Use this method when the form has no side-effects and contains only ASCII characters.\n* `dialog`: Use when the form is inside a [`<dialog>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog "The HTML <dialog> element represents a dialog box or other interactive component, such as an inspector or window.") element to close the dialog when submitted.\n\nThis value can be overridden by a [`formmethod`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formmethod) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'}},{name:"name",description:{kind:"markdown",value:"The name of the form. In HTML 4, its use is deprecated (`id` should be used instead). It must be unique among the forms in a document and not just an empty string in HTML 5."}},{name:"novalidate",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute indicates that the form is not to be validated when submitted. If this attribute is not specified (and therefore the form is validated), this default setting can be overridden by a [`formnovalidate`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formnovalidate) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element belonging to the form.'}},{name:"target",description:{kind:"markdown",value:'A name or keyword indicating where to display the response that is received after submitting the form. In HTML 4, this is the name/keyword for a frame. In HTML5, it is a name/keyword for a _browsing context_ (for example, tab, window, or inline frame). The following keywords have special meanings:\n\n* `_self`: Load the response into the same HTML 4 frame (or HTML5 browsing context) as the current one. This value is the default if the attribute is not specified.\n* `_blank`: Load the response into a new unnamed HTML 4 window or HTML5 browsing context.\n* `_parent`: Load the response into the HTML 4 frameset parent of the current frame, or HTML5 parent browsing context of the current one. If there is no parent, this option behaves the same way as `_self`.\n* `_top`: HTML 4: Load the response into the full original window, and cancel all other frames. HTML5: Load the response into the top-level browsing context (i.e., the browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this option behaves the same way as `_self`.\n* _iframename_: The response is displayed in a named [`<iframe>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe "The HTML Inline Frame element (<iframe>) represents a nested browsing context, embedding another HTML page into the current one.").\n\nHTML5: This value can be overridden by a [`formtarget`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-formtarget) attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") or [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'}},{name:"accept",description:'A comma-separated list of content types that the server accepts.\n\n**Usage note:** This attribute has been removed in HTML5 and should no longer be used. Instead, use the [`accept`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-accept) attribute of the specific [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element.'},{name:"autocapitalize",description:"This is a nonstandard attribute used by iOS Safari Mobile which controls whether and how the text value for textual form control descendants should be automatically capitalized as it is entered/edited by the user. If the `autocapitalize` attribute is specified on an individual form control descendant, it trumps the form-wide `autocapitalize` setting. The non-deprecated values are available in iOS 5 and later. The default value is `sentences`. Possible values are:\n\n* `none`: Completely disables automatic capitalization\n* `sentences`: Automatically capitalize the first letter of sentences.\n* `words`: Automatically capitalize the first letter of words.\n* `characters`: Automatically capitalize all characters.\n* `on`: Deprecated since iOS 5.\n* `off`: Deprecated since iOS 5."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/form"}]},{name:"label",description:{kind:"markdown",value:"The label element represents a caption in a user interface. The caption can be associated with a specific form control, known as the label element's labeled control, either using the for attribute, or by putting the form control inside the label element itself."},attributes:[{name:"form",description:{kind:"markdown",value:'The [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element with which the label is associated (its _form owner_). If specified, the value of the attribute is the `id` of a [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element in the same document. This lets you place label elements anywhere within a document, not just as descendants of their form elements.'}},{name:"for",description:{kind:"markdown",value:"The [`id`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes#attr-id) of a [labelable](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Content_categories#Form_labelable) form-related element in the same document as the `<label>` element. The first element in the document with an `id` matching the value of the `for` attribute is the _labeled control_ for this label element, if it is a labelable element. If it is not labelable then the `for` attribute has no effect. If there are other elements which also match the `id` value, later in the document, they are not considered.\n\n**Note**: A `<label>` element can have both a `for` attribute and a contained control element, as long as the `for` attribute points to the contained control element."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/label"}]},{name:"input",description:{kind:"markdown",value:"The input element represents a typed data field, usually with a form control to allow the user to edit the data."},attributes:[{name:"accept"},{name:"alt"},{name:"autocomplete",valueSet:"inputautocomplete"},{name:"autofocus",valueSet:"v"},{name:"checked",valueSet:"v"},{name:"dirname"},{name:"disabled",valueSet:"v"},{name:"form"},{name:"formaction"},{name:"formenctype",valueSet:"et"},{name:"formmethod",valueSet:"fm"},{name:"formnovalidate",valueSet:"v"},{name:"formtarget"},{name:"height"},{name:"inputmode",valueSet:"im"},{name:"list"},{name:"max"},{name:"maxlength"},{name:"min"},{name:"minlength"},{name:"multiple",valueSet:"v"},{name:"name"},{name:"pattern"},{name:"placeholder"},{name:"readonly",valueSet:"v"},{name:"required",valueSet:"v"},{name:"size"},{name:"src"},{name:"step"},{name:"type",valueSet:"t"},{name:"value"},{name:"width"}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/input"}]},{name:"button",description:{kind:"markdown",value:"The button element represents a button labeled by its contents."},attributes:[{name:"autofocus",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute lets you specify that the button should have input focus when the page loads, unless the user overrides it, for example by typing in a different control. Only one form-associated element in a document can have this attribute specified."}},{name:"disabled",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute indicates that the user cannot interact with the button. If this attribute is not specified, the button inherits its setting from the containing element, for example [`<fieldset>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/fieldset "The HTML <fieldset> element is used to group several controls as well as labels (<label>) within a web form."); if there is no containing element with the **disabled** attribute set, then the button is enabled.\n\nFirefox will, unlike other browsers, by default, [persist the dynamic disabled state](https://stackoverflow.com/questions/5985839/bug-with-firefox-disabled-attribute-of-input-not-resetting-when-refreshing) of a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") across page loads. Use the [`autocomplete`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-autocomplete) attribute to control this feature.'}},{name:"form",description:{kind:"markdown",value:'The form element that the button is associated with (its _form owner_). The value of the attribute must be the **id** attribute of a [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element in the same document. If this attribute is not specified, the `<button>` element will be associated to an ancestor [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element, if one exists. This attribute enables you to associate `<button>` elements to [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") elements anywhere within a document, not just as descendants of [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") elements.'}},{name:"formaction",description:{kind:"markdown",value:"The URI of a program that processes the information submitted by the button. If specified, it overrides the [`action`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-action) attribute of the button's form owner."}},{name:"formenctype",valueSet:"et",description:{kind:"markdown",value:'If the button is a submit button, this attribute specifies the type of content that is used to submit the form to the server. Possible values are:\n\n* `application/x-www-form-urlencoded`: The default value if the attribute is not specified.\n* `multipart/form-data`: Use this value if you are using an [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") element with the [`type`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-type) attribute set to `file`.\n* `text/plain`\n\nIf this attribute is specified, it overrides the [`enctype`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-enctype) attribute of the button\'s form owner.'}},{name:"formmethod",valueSet:"fm",description:{kind:"markdown",value:"If the button is a submit button, this attribute specifies the HTTP method that the browser uses to submit the form. Possible values are:\n\n* `post`: The data from the form are included in the body of the form and sent to the server.\n* `get`: The data from the form are appended to the **form** attribute URI, with a '?' as a separator, and the resulting URI is sent to the server. Use this method when the form has no side-effects and contains only ASCII characters.\n\nIf specified, this attribute overrides the [`method`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-method) attribute of the button's form owner."}},{name:"formnovalidate",valueSet:"v",description:{kind:"markdown",value:"If the button is a submit button, this Boolean attribute specifies that the form is not to be validated when it is submitted. If this attribute is specified, it overrides the [`novalidate`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-novalidate) attribute of the button's form owner."}},{name:"formtarget",description:{kind:"markdown",value:"If the button is a submit button, this attribute is a name or keyword indicating where to display the response that is received after submitting the form. This is a name of, or keyword for, a _browsing context_ (for example, tab, window, or inline frame). If this attribute is specified, it overrides the [`target`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-target) attribute of the button's form owner. The following keywords have special meanings:\n\n* `_self`: Load the response into the same browsing context as the current one. This value is the default if the attribute is not specified.\n* `_blank`: Load the response into a new unnamed browsing context.\n* `_parent`: Load the response into the parent browsing context of the current one. If there is no parent, this option behaves the same way as `_self`.\n* `_top`: Load the response into the top-level browsing context (that is, the browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this option behaves the same way as `_self`."}},{name:"name",description:{kind:"markdown",value:"The name of the button, which is submitted with the form data."}},{name:"type",valueSet:"bt",description:{kind:"markdown",value:"The type of the button. Possible values are:\n\n* `submit`: The button submits the form data to the server. This is the default if the attribute is not specified, or if the attribute is dynamically changed to an empty or invalid value.\n* `reset`: The button resets all the controls to their initial values.\n* `button`: The button has no default behavior. It can have client-side scripts associated with the element's events, which are triggered when the events occur."}},{name:"value",description:{kind:"markdown",value:"The initial value of the button. It defines the value associated with the button which is submitted with the form data. This value is passed to the server in params when the form is submitted."}},{name:"autocomplete",description:'The use of this attribute on a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") is nonstandard and Firefox-specific. By default, unlike other browsers, [Firefox persists the dynamic disabled state](https://stackoverflow.com/questions/5985839/bug-with-firefox-disabled-attribute-of-input-not-resetting-when-refreshing) of a [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button "The HTML <button> element represents a clickable button, which can be used in forms or anywhere in a document that needs simple, standard button functionality.") across page loads. Setting the value of this attribute to `off` (i.e. `autocomplete="off"`) disables this feature. See [bug 654072](https://bugzilla.mozilla.org/show_bug.cgi?id=654072 "if disabled state is changed with javascript, the normal state doesn\'t return after refreshing the page").'}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/button"}]},{name:"select",description:{kind:"markdown",value:"The select element represents a control for selecting amongst a set of options."},attributes:[{name:"autocomplete",valueSet:"inputautocomplete",description:{kind:"markdown",value:'A [`DOMString`](https://developer.mozilla.org/en-US/docs/Web/API/DOMString "DOMString is a UTF-16 String. As JavaScript already uses such strings, DOMString is mapped directly to a String.") providing a hint for a [user agent\'s](https://developer.mozilla.org/en-US/docs/Glossary/user_agent "user agent\'s: A user agent is a computer program representing a person, for example, a browser in a Web context.") autocomplete feature. See [The HTML autocomplete attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for a complete list of values and details on how to use autocomplete.'}},{name:"autofocus",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute lets you specify that a form control should have input focus when the page loads. Only one form element in a document can have the `autofocus` attribute."}},{name:"disabled",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates that the user cannot interact with the control. If this attribute is not specified, the control inherits its setting from the containing element, for example `fieldset`; if there is no containing element with the `disabled` attribute set, then the control is enabled."}},{name:"form",description:{kind:"markdown",value:'This attribute lets you specify the form element to which the select element is associated (that is, its "form owner"). If this attribute is specified, its value must be the same as the `id` of a form element in the same document. This enables you to place select elements anywhere within a document, not just as descendants of their form elements.'}},{name:"multiple",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates that multiple options can be selected in the list. If it is not specified, then only one option can be selected at a time. When `multiple` is specified, most browsers will show a scrolling list box instead of a single line dropdown."}},{name:"name",description:{kind:"markdown",value:"This attribute is used to specify the name of the control."}},{name:"required",valueSet:"v",description:{kind:"markdown",value:"A Boolean attribute indicating that an option with a non-empty string value must be selected."}},{name:"size",description:{kind:"markdown",value:"If the control is presented as a scrolling list box (e.g. when `multiple` is specified), this attribute represents the number of rows in the list that should be visible at one time. Browsers are not required to present a select element as a scrolled list box. The default value is 0.\n\n**Note:** According to the HTML5 specification, the default value for size should be 1; however, in practice, this has been found to break some web sites, and no other browser currently does that, so Mozilla has opted to continue to return 0 for the time being with Firefox."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/select"}]},{name:"datalist",description:{kind:"markdown",value:"The datalist element represents a set of option elements that represent predefined options for other controls. In the rendering, the datalist element represents nothing and it, along with its children, should be hidden."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/datalist"}]},{name:"optgroup",description:{kind:"markdown",value:"The optgroup element represents a group of option elements with a common label."},attributes:[{name:"disabled",valueSet:"v",description:{kind:"markdown",value:"If this Boolean attribute is set, none of the items in this option group is selectable. Often browsers grey out such control and it won't receive any browsing events, like mouse clicks or focus-related ones."}},{name:"label",description:{kind:"markdown",value:"The name of the group of options, which the browser can use when labeling the options in the user interface. This attribute is mandatory if this element is used."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/optgroup"}]},{name:"option",description:{kind:"markdown",value:"The option element represents an option in a select element or as part of a list of suggestions in a datalist element."},attributes:[{name:"disabled",valueSet:"v",description:{kind:"markdown",value:'If this Boolean attribute is set, this option is not checkable. Often browsers grey out such control and it won\'t receive any browsing event, like mouse clicks or focus-related ones. If this attribute is not set, the element can still be disabled if one of its ancestors is a disabled [`<optgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/optgroup "The HTML <optgroup> element creates a grouping of options within a <select> element.") element.'}},{name:"label",description:{kind:"markdown",value:"This attribute is text for the label indicating the meaning of the option. If the `label` attribute isn't defined, its value is that of the element text content."}},{name:"selected",valueSet:"v",description:{kind:"markdown",value:'If present, this Boolean attribute indicates that the option is initially selected. If the `<option>` element is the descendant of a [`<select>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select "The HTML <select> element represents a control that provides a menu of options") element whose [`multiple`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select#attr-multiple) attribute is not set, only one single `<option>` of this [`<select>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select "The HTML <select> element represents a control that provides a menu of options") element may have the `selected` attribute.'}},{name:"value",description:{kind:"markdown",value:"The content of this attribute represents the value to be submitted with the form, should this option be selected. If this attribute is omitted, the value is taken from the text content of the option element."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/option"}]},{name:"textarea",description:{kind:"markdown",value:"The textarea element represents a multiline plain text edit control for the element's raw value. The contents of the control represent the control's default value."},attributes:[{name:"autocomplete",valueSet:"inputautocomplete",description:{kind:"markdown",value:'This attribute indicates whether the value of the control can be automatically completed by the browser. Possible values are:\n\n* `off`: The user must explicitly enter a value into this field for every use, or the document provides its own auto-completion method; the browser does not automatically complete the entry.\n* `on`: The browser can automatically complete the value based on values that the user has entered during previous uses.\n\nIf the `autocomplete` attribute is not specified on a `<textarea>` element, then the browser uses the `autocomplete` attribute value of the `<textarea>` element\'s form owner. The form owner is either the [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element that this `<textarea>` element is a descendant of or the form element whose `id` is specified by the `form` attribute of the input element. For more information, see the [`autocomplete`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-autocomplete) attribute in [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.").'}},{name:"autofocus",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute lets you specify that a form control should have input focus when the page loads. Only one form-associated element in a document can have this attribute specified."}},{name:"cols",description:{kind:"markdown",value:"The visible width of the text control, in average character widths. If it is specified, it must be a positive integer. If it is not specified, the default value is `20`."}},{name:"dirname"},{name:"disabled",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute indicates that the user cannot interact with the control. If this attribute is not specified, the control inherits its setting from the containing element, for example [`<fieldset>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/fieldset "The HTML <fieldset> element is used to group several controls as well as labels (<label>) within a web form."); if there is no containing element when the `disabled` attribute is set, the control is enabled.'}},{name:"form",description:{kind:"markdown",value:'The form element that the `<textarea>` element is associated with (its "form owner"). The value of the attribute must be the `id` of a form element in the same document. If this attribute is not specified, the `<textarea>` element must be a descendant of a form element. This attribute enables you to place `<textarea>` elements anywhere within a document, not just as descendants of form elements.'}},{name:"inputmode",valueSet:"im"},{name:"maxlength",description:{kind:"markdown",value:"The maximum number of characters (unicode code points) that the user can enter. If this value isn't specified, the user can enter an unlimited number of characters."}},{name:"minlength",description:{kind:"markdown",value:"The minimum number of characters (unicode code points) required that the user should enter."}},{name:"name",description:{kind:"markdown",value:"The name of the control."}},{name:"placeholder",description:{kind:"markdown",value:'A hint to the user of what can be entered in the control. Carriage returns or line-feeds within the placeholder text must be treated as line breaks when rendering the hint.\n\n**Note:** Placeholders should only be used to show an example of the type of data that should be entered into a form; they are _not_ a substitute for a proper [`<label>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/label "The HTML <label> element represents a caption for an item in a user interface.") element tied to the input. See [Labels and placeholders](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Labels_and_placeholders "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") in [<input>: The Input (Form Input) element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") for a full explanation.'}},{name:"readonly",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates that the user cannot modify the value of the control. Unlike the `disabled` attribute, the `readonly` attribute does not prevent the user from clicking or selecting in the control. The value of a read-only control is still submitted with the form."}},{name:"required",valueSet:"v",description:{kind:"markdown",value:"This attribute specifies that the user must fill in a value before submitting a form."}},{name:"rows",description:{kind:"markdown",value:"The number of visible text lines for the control."}},{name:"wrap",valueSet:"w",description:{kind:"markdown",value:"Indicates how the control wraps text. Possible values are:\n\n* `hard`: The browser automatically inserts line breaks (CR+LF) so that each line has no more than the width of the control; the `cols` attribute must also be specified for this to take effect.\n* `soft`: The browser ensures that all line breaks in the value consist of a CR+LF pair, but does not insert any additional line breaks.\n* `off` : Like `soft` but changes appearance to `white-space: pre` so line segments exceeding `cols` are not wrapped and the `<textarea>` becomes horizontally scrollable.\n\nIf this attribute is not specified, `soft` is its default value."}},{name:"autocapitalize",description:"This is a non-standard attribute supported by WebKit on iOS (therefore nearly all browsers running on iOS, including Safari, Firefox, and Chrome), which controls whether and how the text value should be automatically capitalized as it is entered/edited by the user. The non-deprecated values are available in iOS 5 and later. Possible values are:\n\n* `none`: Completely disables automatic capitalization.\n* `sentences`: Automatically capitalize the first letter of sentences.\n* `words`: Automatically capitalize the first letter of words.\n* `characters`: Automatically capitalize all characters.\n* `on`: Deprecated since iOS 5.\n* `off`: Deprecated since iOS 5."},{name:"spellcheck",description:"Specifies whether the `<textarea>` is subject to spell checking by the underlying browser/OS. the value can be:\n\n* `true`: Indicates that the element needs to have its spelling and grammar checked.\n* `default` : Indicates that the element is to act according to a default behavior, possibly based on the parent element's own `spellcheck` value.\n* `false` : Indicates that the element should not be spell checked."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/textarea"}]},{name:"output",description:{kind:"markdown",value:"The output element represents the result of a calculation performed by the application, or the result of a user action."},attributes:[{name:"for",description:{kind:"markdown",value:"A space-separated list of other elements’ [`id`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/id)s, indicating that those elements contributed input values to (or otherwise affected) the calculation."}},{name:"form",description:{kind:"markdown",value:'The [form element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form) that this element is associated with (its "form owner"). The value of the attribute must be an `id` of a form element in the same document. If this attribute is not specified, the output element must be a descendant of a form element. This attribute enables you to place output elements anywhere within a document, not just as descendants of their form elements.'}},{name:"name",description:{kind:"markdown",value:'The name of the element, exposed in the [`HTMLFormElement`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement "The HTMLFormElement interface represents a <form> element in the DOM; it allows access to and in some cases modification of aspects of the form, as well as access to its component elements.") API.'}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/output"}]},{name:"progress",description:{kind:"markdown",value:"The progress element represents the completion progress of a task. The progress is either indeterminate, indicating that progress is being made but that it is not clear how much more work remains to be done before the task is complete (e.g. because the task is waiting for a remote host to respond), or the progress is a number in the range zero to a maximum, giving the fraction of work that has so far been completed."},attributes:[{name:"value",description:{kind:"markdown",value:"This attribute specifies how much of the task that has been completed. It must be a valid floating point number between 0 and `max`, or between 0 and 1 if `max` is omitted. If there is no `value` attribute, the progress bar is indeterminate; this indicates that an activity is ongoing with no indication of how long it is expected to take."}},{name:"max",description:{kind:"markdown",value:"This attribute describes how much work the task indicated by the `progress` element requires. The `max` attribute, if present, must have a value greater than zero and be a valid floating point number. The default value is 1."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/progress"}]},{name:"meter",description:{kind:"markdown",value:"The meter element represents a scalar measurement within a known range, or a fractional value; for example disk usage, the relevance of a query result, or the fraction of a voting population to have selected a particular candidate."},attributes:[{name:"value",description:{kind:"markdown",value:"The current numeric value. This must be between the minimum and maximum values (`min` attribute and `max` attribute) if they are specified. If unspecified or malformed, the value is 0. If specified, but not within the range given by the `min` attribute and `max` attribute, the value is equal to the nearest end of the range.\n\n**Usage note:** Unless the `value` attribute is between `0` and `1` (inclusive), the `min` and `max` attributes should define the range so that the `value` attribute's value is within it."}},{name:"min",description:{kind:"markdown",value:"The lower numeric bound of the measured range. This must be less than the maximum value (`max` attribute), if specified. If unspecified, the minimum value is 0."}},{name:"max",description:{kind:"markdown",value:"The upper numeric bound of the measured range. This must be greater than the minimum value (`min` attribute), if specified. If unspecified, the maximum value is 1."}},{name:"low",description:{kind:"markdown",value:"The upper numeric bound of the low end of the measured range. This must be greater than the minimum value (`min` attribute), and it also must be less than the high value and maximum value (`high` attribute and `max` attribute, respectively), if any are specified. If unspecified, or if less than the minimum value, the `low` value is equal to the minimum value."}},{name:"high",description:{kind:"markdown",value:"The lower numeric bound of the high end of the measured range. This must be less than the maximum value (`max` attribute), and it also must be greater than the low value and minimum value (`low` attribute and **min** attribute, respectively), if any are specified. If unspecified, or if greater than the maximum value, the `high` value is equal to the maximum value."}},{name:"optimum",description:{kind:"markdown",value:"This attribute indicates the optimal numeric value. It must be within the range (as defined by the `min` attribute and `max` attribute). When used with the `low` attribute and `high` attribute, it gives an indication where along the range is considered preferable. For example, if it is between the `min` attribute and the `low` attribute, then the lower range is considered preferred."}},{name:"form",description:"This attribute associates the element with a `form` element that has ownership of the `meter` element. For example, a `meter` might be displaying a range corresponding to an `input` element of `type` _number_. This attribute is only used if the `meter` element is being used as a form-associated element; even then, it may be omitted if the element appears as a descendant of a `form` element."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/meter"}]},{name:"fieldset",description:{kind:"markdown",value:"The fieldset element represents a set of form controls optionally grouped under a common name."},attributes:[{name:"disabled",valueSet:"v",description:{kind:"markdown",value:"If this Boolean attribute is set, all form controls that are descendants of the `<fieldset>`, are disabled, meaning they are not editable and won't be submitted along with the `<form>`. They won't receive any browsing events, like mouse clicks or focus-related events. By default browsers display such controls grayed out. Note that form elements inside the [`<legend>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/legend \"The HTML <legend> element represents a caption for the content of its parent <fieldset>.\") element won't be disabled."}},{name:"form",description:{kind:"markdown",value:'This attribute takes the value of the `id` attribute of a [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form "The HTML <form> element represents a document section that contains interactive controls for submitting information to a web server.") element you want the `<fieldset>` to be part of, even if it is not inside the form.'}},{name:"name",description:{kind:"markdown",value:'The name associated with the group.\n\n**Note**: The caption for the fieldset is given by the first [`<legend>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/legend "The HTML <legend> element represents a caption for the content of its parent <fieldset>.") element nested inside it.'}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/fieldset"}]},{name:"legend",description:{kind:"markdown",value:"The legend element represents a caption for the rest of the contents of the legend element's parent fieldset element, if any."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/legend"}]},{name:"details",description:{kind:"markdown",value:"The details element represents a disclosure widget from which the user can obtain additional information or controls."},attributes:[{name:"open",valueSet:"v",description:{kind:"markdown",value:"This Boolean attribute indicates whether or not the details — that is, the contents of the `<details>` element — are currently visible. The default, `false`, means the details are not visible."}}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/details"}]},{name:"summary",description:{kind:"markdown",value:"The summary element represents a summary, caption, or legend for the rest of the contents of the summary element's parent details element, if any."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/summary"}]},{name:"dialog",description:{kind:"markdown",value:"The dialog element represents a part of an application that a user interacts with to perform a task, for example a dialog box, inspector, or window."},attributes:[{name:"open",description:"Indicates that the dialog is active and available for interaction. When the `open` attribute is not set, the dialog shouldn't be shown to the user."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/dialog"}]},{name:"script",description:{kind:"markdown",value:"The script element allows authors to include dynamic script and data blocks in their documents. The element does not represent content for the user."},attributes:[{name:"src",description:{kind:"markdown",value:"This attribute specifies the URI of an external script; this can be used as an alternative to embedding a script directly within a document.\n\nIf a `script` element has a `src` attribute specified, it should not have a script embedded inside its tags."}},{name:"type",description:{kind:"markdown",value:'This attribute indicates the type of script represented. The value of this attribute will be in one of the following categories:\n\n* **Omitted or a JavaScript MIME type:** For HTML5-compliant browsers this indicates the script is JavaScript. HTML5 specification urges authors to omit the attribute rather than provide a redundant MIME type. In earlier browsers, this identified the scripting language of the embedded or imported (via the `src` attribute) code. JavaScript MIME types are [listed in the specification](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types#JavaScript_types).\n* **`module`:** For HTML5-compliant browsers the code is treated as a JavaScript module. The processing of the script contents is not affected by the `charset` and `defer` attributes. For information on using `module`, see [ES6 in Depth: Modules](https://hacks.mozilla.org/2015/08/es6-in-depth-modules/). Code may behave differently when the `module` keyword is used.\n* **Any other value:** The embedded content is treated as a data block which won\'t be processed by the browser. Developers must use a valid MIME type that is not a JavaScript MIME type to denote data blocks. The `src` attribute will be ignored.\n\n**Note:** in Firefox you could specify the version of JavaScript contained in a `<script>` element by including a non-standard `version` parameter inside the `type` attribute — for example `type="text/javascript;version=1.8"`. This has been removed in Firefox 59 (see [bug 1428745](https://bugzilla.mozilla.org/show_bug.cgi?id=1428745 "FIXED: Remove support for version parameter from script loader")).'}},{name:"charset"},{name:"async",valueSet:"v",description:{kind:"markdown",value:'This is a Boolean attribute indicating that the browser should, if possible, load the script asynchronously.\n\nThis attribute must not be used if the `src` attribute is absent (i.e. for inline scripts). If it is included in this case it will have no effect.\n\nBrowsers usually assume the worst case scenario and load scripts synchronously, (i.e. `async="false"`) during HTML parsing.\n\nDynamically inserted scripts (using [`document.createElement()`](https://developer.mozilla.org/en-US/docs/Web/API/Document/createElement "In an HTML document, the document.createElement() method creates the HTML element specified by tagName, or an HTMLUnknownElement if tagName isn\'t recognized.")) load asynchronously by default, so to turn on synchronous loading (i.e. scripts load in the order they were inserted) set `async="false"`.\n\nSee [Browser compatibility](#Browser_compatibility) for notes on browser support. See also [Async scripts for asm.js](https://developer.mozilla.org/en-US/docs/Games/Techniques/Async_scripts).'}},{name:"defer",valueSet:"v",description:{kind:"markdown",value:'This Boolean attribute is set to indicate to a browser that the script is meant to be executed after the document has been parsed, but before firing [`DOMContentLoaded`](https://developer.mozilla.org/en-US/docs/Web/Events/DOMContentLoaded "/en-US/docs/Web/Events/DOMContentLoaded").\n\nScripts with the `defer` attribute will prevent the `DOMContentLoaded` event from firing until the script has loaded and finished evaluating.\n\nThis attribute must not be used if the `src` attribute is absent (i.e. for inline scripts), in this case it would have no effect.\n\nTo achieve a similar effect for dynamically inserted scripts use `async="false"` instead. Scripts with the `defer` attribute will execute in the order in which they appear in the document.'}},{name:"crossorigin",valueSet:"xo",description:{kind:"markdown",value:'Normal `script` elements pass minimal information to the [`window.onerror`](https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror "The onerror property of the GlobalEventHandlers mixin is an EventHandler that processes error events.") for scripts which do not pass the standard [CORS](https://developer.mozilla.org/en-US/docs/Glossary/CORS "CORS: CORS (Cross-Origin Resource Sharing) is a system, consisting of transmitting HTTP headers, that determines whether browsers block frontend JavaScript code from accessing responses for cross-origin requests.") checks. To allow error logging for sites which use a separate domain for static media, use this attribute. See [CORS settings attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes) for a more descriptive explanation of its valid arguments.'}},{name:"nonce",description:{kind:"markdown",value:"A cryptographic nonce (number used once) to whitelist inline scripts in a [script-src Content-Security-Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/script-src). The server must generate a unique nonce value each time it transmits a policy. It is critical to provide a nonce that cannot be guessed as bypassing a resource's policy is otherwise trivial."}},{name:"integrity",description:"This attribute contains inline metadata that a user agent can use to verify that a fetched resource has been delivered free of unexpected manipulation. See [Subresource Integrity](https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity)."},{name:"nomodule",description:"This Boolean attribute is set to indicate that the script should not be executed in browsers that support [ES2015 modules](https://hacks.mozilla.org/2015/08/es6-in-depth-modules/) — in effect, this can be used to serve fallback scripts to older browsers that do not support modular JavaScript code."},{name:"referrerpolicy",description:'Indicates which [referrer](https://developer.mozilla.org/en-US/docs/Web/API/Document/referrer) to send when fetching the script, or resources fetched by the script:\n\n* `no-referrer`: The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent.\n* `no-referrer-when-downgrade` (default): The [`Referer`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer "The Referer request header contains the address of the previous web page from which a link to the currently requested page was followed. The Referer header allows servers to identify where people are visiting them from and may use that data for analytics, logging, or optimized caching, for example.") header will not be sent to [origin](https://developer.mozilla.org/en-US/docs/Glossary/origin "origin: Web content\'s origin is defined by the scheme (protocol), host (domain), and port of the URL used to access it. Two objects have the same origin only when the scheme, host, and port all match.")s without [TLS](https://developer.mozilla.org/en-US/docs/Glossary/TLS "TLS: Transport Layer Security (TLS), previously known as Secure Sockets Layer (SSL), is a protocol used by applications to communicate securely across a network, preventing tampering with and eavesdropping on email, web browsing, messaging, and other protocols.") ([HTTPS](https://developer.mozilla.org/en-US/docs/Glossary/HTTPS "HTTPS: HTTPS (HTTP Secure) is an encrypted version of the HTTP protocol. It usually uses SSL or TLS to encrypt all communication between a client and a server. This secure connection allows clients to safely exchange sensitive data with a server, for example for banking activities or online shopping.")).\n* `origin`: The sent referrer will be limited to the origin of the referring page: its [scheme](https://developer.mozilla.org/en-US/docs/Archive/Mozilla/URIScheme), [host](https://developer.mozilla.org/en-US/docs/Glossary/host "host: A host is a device connected to the Internet (or a local network). Some hosts called servers offer additional services like serving webpages or storing files and emails."), and [port](https://developer.mozilla.org/en-US/docs/Glossary/port "port: For a computer connected to a network with an IP address, a port is a communication endpoint. Ports are designated by numbers, and below 1024 each port is associated by default with a specific protocol.").\n* `origin-when-cross-origin`: The referrer sent to other origins will be limited to the scheme, the host, and the port. Navigations on the same origin will still include the path.\n* `same-origin`: A referrer will be sent for [same origin](https://developer.mozilla.org/en-US/docs/Glossary/Same-origin_policy "same origin: The same-origin policy is a critical security mechanism that restricts how a document or script loaded from one origin can interact with a resource from another origin."), but cross-origin requests will contain no referrer information.\n* `strict-origin`: Only send the origin of the document as the referrer when the protocol security level stays the same (e.g. HTTPS→HTTPS), but don\'t send it to a less secure destination (e.g. HTTPS→HTTP).\n* `strict-origin-when-cross-origin`: Send a full URL when performing a same-origin request, but only send the origin when the protocol security level stays the same (e.g.HTTPS→HTTPS), and send no header to a less secure destination (e.g. HTTPS→HTTP).\n* `unsafe-url`: The referrer will include the origin _and_ the path (but not the [fragment](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/hash), [password](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/password), or [username](https://developer.mozilla.org/en-US/docs/Web/API/HTMLHyperlinkElementUtils/username)). **This value is unsafe**, because it leaks origins and paths from TLS-protected resources to insecure origins.\n\n**Note**: An empty string value (`""`) is both the default value, and a fallback value if `referrerpolicy` is not supported. If `referrerpolicy` is not explicitly specified on the `<script>` element, it will adopt a higher-level referrer policy, i.e. one set on the whole document or domain. If a higher-level policy is not available, the empty string is treated as being equivalent to `no-referrer-when-downgrade`.'},{name:"text",description:"Like the `textContent` attribute, this attribute sets the text content of the element. Unlike the `textContent` attribute, however, this attribute is evaluated as executable code after the node is inserted into the DOM."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/script"}]},{name:"noscript",description:{kind:"markdown",value:"The noscript element represents nothing if scripting is enabled, and represents its children if scripting is disabled. It is used to present different markup to user agents that support scripting and those that don't support scripting, by affecting how the document is parsed."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/noscript"}]},{name:"template",description:{kind:"markdown",value:"The template element is used to declare fragments of HTML that can be cloned and inserted in the document by script."},attributes:[],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/template"}]},{name:"canvas",description:{kind:"markdown",value:"The canvas element provides scripts with a resolution-dependent bitmap canvas, which can be used for rendering graphs, game graphics, art, or other visual images on the fly."},attributes:[{name:"width",description:{kind:"markdown",value:"The width of the coordinate space in CSS pixels. Defaults to 300."}},{name:"height",description:{kind:"markdown",value:"The height of the coordinate space in CSS pixels. Defaults to 150."}},{name:"moz-opaque",description:"Lets the canvas know whether or not translucency will be a factor. If the canvas knows there's no translucency, painting performance can be optimized. This is only supported by Mozilla-based browsers; use the standardized [`canvas.getContext('2d', { alpha: false })`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement/getContext \"The HTMLCanvasElement.getContext() method returns a drawing context on the canvas, or null if the context identifier is not supported.\") instead."}],references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Element/canvas"}]}],globalAttributes:[{name:"accesskey",description:{kind:"markdown",value:"Provides a hint for generating a keyboard shortcut for the current element. This attribute consists of a space-separated list of characters. The browser should use the first one that exists on the computer keyboard layout."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/accesskey"}]},{name:"autocapitalize",description:{kind:"markdown",value:"Controls whether and how text input is automatically capitalized as it is entered/edited by the user. It can have the following values:\n\n* `off` or `none`, no autocapitalization is applied (all letters default to lowercase)\n* `on` or `sentences`, the first letter of each sentence defaults to a capital letter; all other letters default to lowercase\n* `words`, the first letter of each word defaults to a capital letter; all other letters default to lowercase\n* `characters`, all letters should default to uppercase"},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/autocapitalize"}]},{name:"class",description:{kind:"markdown",value:'A space-separated list of the classes of the element. Classes allows CSS and JavaScript to select and access specific elements via the [class selectors](/en-US/docs/Web/CSS/Class_selectors) or functions like the method [`Document.getElementsByClassName()`](/en-US/docs/Web/API/Document/getElementsByClassName "returns an array-like object of all child elements which have all of the given class names.").'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/class"}]},{name:"contenteditable",description:{kind:"markdown",value:"An enumerated attribute indicating if the element should be editable by the user. If so, the browser modifies its widget to allow editing. The attribute must take one of the following values:\n\n* `true` or the _empty string_, which indicates that the element must be editable;\n* `false`, which indicates that the element must not be editable."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/contenteditable"}]},{name:"contextmenu",description:{kind:"markdown",value:'The `[**id**](#attr-id)` of a [`<menu>`](/en-US/docs/Web/HTML/Element/menu "The HTML <menu> element represents a group of commands that a user can perform or activate. This includes both list menus, which might appear across the top of a screen, as well as context menus, such as those that might appear underneath a button after it has been clicked.") to use as the contextual menu for this element.'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/contextmenu"}]},{name:"dir",description:{kind:"markdown",value:"An enumerated attribute indicating the directionality of the element's text. It can have the following values:\n\n* `ltr`, which means _left to right_ and is to be used for languages that are written from the left to the right (like English);\n* `rtl`, which means _right to left_ and is to be used for languages that are written from the right to the left (like Arabic);\n* `auto`, which lets the user agent decide. It uses a basic algorithm as it parses the characters inside the element until it finds a character with a strong directionality, then it applies that directionality to the whole element."},valueSet:"d",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/dir"}]},{name:"draggable",description:{kind:"markdown",value:"An enumerated attribute indicating whether the element can be dragged, using the [Drag and Drop API](/en-us/docs/DragDrop/Drag_and_Drop). It can have the following values:\n\n* `true`, which indicates that the element may be dragged\n* `false`, which indicates that the element may not be dragged."},valueSet:"b",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/draggable"}]},{name:"dropzone",description:{kind:"markdown",value:"An enumerated attribute indicating what types of content can be dropped on an element, using the [Drag and Drop API](/en-US/docs/DragDrop/Drag_and_Drop). It can have the following values:\n\n* `copy`, which indicates that dropping will create a copy of the element that was dragged\n* `move`, which indicates that the element that was dragged will be moved to this new location.\n* `link`, will create a link to the dragged data."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/dropzone"}]},{name:"exportparts",description:{kind:"markdown",value:"Used to transitively export shadow parts from a nested shadow tree into a containing light tree."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/exportparts"}]},{name:"hidden",description:{kind:"markdown",value:"A Boolean attribute indicates that the element is not yet, or is no longer, _relevant_. For example, it can be used to hide elements of the page that can't be used until the login process has been completed. The browser won't render such elements. This attribute must not be used to hide content that could legitimately be shown."},valueSet:"v",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/hidden"}]},{name:"id",description:{kind:"markdown",value:"Defines a unique identifier (ID) which must be unique in the whole document. Its purpose is to identify the element when linking (using a fragment identifier), scripting, or styling (with CSS)."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/id"}]},{name:"inputmode",description:{kind:"markdown",value:'Provides a hint to browsers as to the type of virtual keyboard configuration to use when editing this element or its contents. Used primarily on [`<input>`](/en-US/docs/Web/HTML/Element/input "The HTML <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.") elements, but is usable on any element while in `[contenteditable](/en-US/docs/Web/HTML/Global_attributes#attr-contenteditable)` mode.'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/inputmode"}]},{name:"is",description:{kind:"markdown",value:"Allows you to specify that a standard HTML element should behave like a registered custom built-in element (see [Using custom elements](/en-US/docs/Web/Web_Components/Using_custom_elements) for more details)."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/is"}]},{name:"itemid",description:{kind:"markdown",value:"The unique, global identifier of an item."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemid"}]},{name:"itemprop",description:{kind:"markdown",value:"Used to add properties to an item. Every HTML element may have an `itemprop` attribute specified, where an `itemprop` consists of a name and value pair."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemprop"}]},{name:"itemref",description:{kind:"markdown",value:"Properties that are not descendants of an element with the `itemscope` attribute can be associated with the item using an `itemref`. It provides a list of element ids (not `itemid`s) with additional properties elsewhere in the document."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemref"}]},{name:"itemscope",description:{kind:"markdown",value:"`itemscope` (usually) works along with `[itemtype](/en-US/docs/Web/HTML/Global_attributes#attr-itemtype)` to specify that the HTML contained in a block is about a particular item. `itemscope` creates the Item and defines the scope of the `itemtype` associated with it. `itemtype` is a valid URL of a vocabulary (such as [schema.org](https://schema.org/)) that describes the item and its properties context."},valueSet:"v",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemscope"}]},{name:"itemtype",description:{kind:"markdown",value:"Specifies the URL of the vocabulary that will be used to define `itemprop`s (item properties) in the data structure. `[itemscope](/en-US/docs/Web/HTML/Global_attributes#attr-itemscope)` is used to set the scope of where in the data structure the vocabulary set by `itemtype` will be active."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/itemtype"}]},{name:"lang",description:{kind:"markdown",value:"Helps define the language of an element: the language that non-editable elements are in, or the language that editable elements should be written in by the user. The attribute contains one “language tag” (made of hyphen-separated “language subtags”) in the format defined in [_Tags for Identifying Languages (BCP47)_](https://www.ietf.org/rfc/bcp/bcp47.txt). [**xml:lang**](#attr-xml:lang) has priority over it."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/lang"}]},{name:"part",description:{kind:"markdown",value:'A space-separated list of the part names of the element. Part names allows CSS to select and style specific elements in a shadow tree via the [`::part`](/en-US/docs/Web/CSS/::part "The ::part CSS pseudo-element represents any element within a shadow tree that has a matching part attribute.") pseudo-element.'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/part"}]},{name:"role",valueSet:"roles"},{name:"slot",description:{kind:"markdown",value:"Assigns a slot in a [shadow DOM](/en-US/docs/Web/Web_Components/Shadow_DOM) shadow tree to an element: An element with a `slot` attribute is assigned to the slot created by the [`<slot>`](/en-US/docs/Web/HTML/Element/slot \"The HTML <slot> element—part of the Web Components technology suite—is a placeholder inside a web component that you can fill with your own markup, which lets you create separate DOM trees and present them together.\") element whose `[name](/en-US/docs/Web/HTML/Element/slot#attr-name)` attribute's value matches that `slot` attribute's value."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/slot"}]},{name:"spellcheck",description:{kind:"markdown",value:"An enumerated attribute defines whether the element may be checked for spelling errors. It may have the following values:\n\n* `true`, which indicates that the element should be, if possible, checked for spelling errors;\n* `false`, which indicates that the element should not be checked for spelling errors."},valueSet:"b",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/spellcheck"}]},{name:"style",description:{kind:"markdown",value:'Contains [CSS](/en-US/docs/Web/CSS) styling declarations to be applied to the element. Note that it is recommended for styles to be defined in a separate file or files. This attribute and the [`<style>`](/en-US/docs/Web/HTML/Element/style "The HTML <style> element contains style information for a document, or part of a document.") element have mainly the purpose of allowing for quick styling, for example for testing purposes.'},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/style"}]},{name:"tabindex",description:{kind:"markdown",value:"An integer attribute indicating if the element can take input focus (is _focusable_), if it should participate to sequential keyboard navigation, and if so, at what position. It can take several values:\n\n* a _negative value_ means that the element should be focusable, but should not be reachable via sequential keyboard navigation;\n* `0` means that the element should be focusable and reachable via sequential keyboard navigation, but its relative order is defined by the platform convention;\n* a _positive value_ means that the element should be focusable and reachable via sequential keyboard navigation; the order in which the elements are focused is the increasing value of the [**tabindex**](#attr-tabindex). If several elements share the same tabindex, their relative order follows their relative positions in the document."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/tabindex"}]},{name:"title",description:{kind:"markdown",value:"Contains a text representing advisory information related to the element it belongs to. Such information can typically, but not necessarily, be presented to the user as a tooltip."},references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/title"}]},{name:"translate",description:{kind:"markdown",value:"An enumerated attribute that is used to specify whether an element's attribute values and the values of its [`Text`](/en-US/docs/Web/API/Text \"The Text interface represents the textual content of Element or Attr. If an element has no markup within its content, it has a single child implementing Text that contains the element's text. However, if the element contains markup, it is parsed into information items and Text nodes that form its children.\") node children are to be translated when the page is localized, or whether to leave them unchanged. It can have the following values:\n\n* empty string and `yes`, which indicates that the element will be translated.\n* `no`, which indicates that the element will not be translated."},valueSet:"y",references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/HTML/Global_attributes/translate"}]},{name:"onabort",description:{kind:"markdown",value:"The loading of a resource has been aborted."}},{name:"onblur",description:{kind:"markdown",value:"An element has lost focus (does not bubble)."}},{name:"oncanplay",description:{kind:"markdown",value:"The user agent can play the media, but estimates that not enough data has been loaded to play the media up to its end without having to stop for further buffering of content."}},{name:"oncanplaythrough",description:{kind:"markdown",value:"The user agent can play the media up to its end without having to stop for further buffering of content."}},{name:"onchange",description:{kind:"markdown",value:"The change event is fired for <input>, <select>, and <textarea> elements when a change to the element's value is committed by the user."}},{name:"onclick",description:{kind:"markdown",value:"A pointing device button has been pressed and released on an element."}},{name:"oncontextmenu",description:{kind:"markdown",value:"The right button of the mouse is clicked (before the context menu is displayed)."}},{name:"ondblclick",description:{kind:"markdown",value:"A pointing device button is clicked twice on an element."}},{name:"ondrag",description:{kind:"markdown",value:"An element or text selection is being dragged (every 350ms)."}},{name:"ondragend",description:{kind:"markdown",value:"A drag operation is being ended (by releasing a mouse button or hitting the escape key)."}},{name:"ondragenter",description:{kind:"markdown",value:"A dragged element or text selection enters a valid drop target."}},{name:"ondragleave",description:{kind:"markdown",value:"A dragged element or text selection leaves a valid drop target."}},{name:"ondragover",description:{kind:"markdown",value:"An element or text selection is being dragged over a valid drop target (every 350ms)."}},{name:"ondragstart",description:{kind:"markdown",value:"The user starts dragging an element or text selection."}},{name:"ondrop",description:{kind:"markdown",value:"An element is dropped on a valid drop target."}},{name:"ondurationchange",description:{kind:"markdown",value:"The duration attribute has been updated."}},{name:"onemptied",description:{kind:"markdown",value:"The media has become empty; for example, this event is sent if the media has already been loaded (or partially loaded), and the load() method is called to reload it."}},{name:"onended",description:{kind:"markdown",value:"Playback has stopped because the end of the media was reached."}},{name:"onerror",description:{kind:"markdown",value:"A resource failed to load."}},{name:"onfocus",description:{kind:"markdown",value:"An element has received focus (does not bubble)."}},{name:"onformchange"},{name:"onforminput"},{name:"oninput",description:{kind:"markdown",value:"The value of an element changes or the content of an element with the attribute contenteditable is modified."}},{name:"oninvalid",description:{kind:"markdown",value:"A submittable element has been checked and doesn't satisfy its constraints."}},{name:"onkeydown",description:{kind:"markdown",value:"A key is pressed down."}},{name:"onkeypress",description:{kind:"markdown",value:"A key is pressed down and that key normally produces a character value (use input instead)."}},{name:"onkeyup",description:{kind:"markdown",value:"A key is released."}},{name:"onload",description:{kind:"markdown",value:"A resource and its dependent resources have finished loading."}},{name:"onloadeddata",description:{kind:"markdown",value:"The first frame of the media has finished loading."}},{name:"onloadedmetadata",description:{kind:"markdown",value:"The metadata has been loaded."}},{name:"onloadstart",description:{kind:"markdown",value:"Progress has begun."}},{name:"onmousedown",description:{kind:"markdown",value:"A pointing device button (usually a mouse) is pressed on an element."}},{name:"onmousemove",description:{kind:"markdown",value:"A pointing device is moved over an element."}},{name:"onmouseout",description:{kind:"markdown",value:"A pointing device is moved off the element that has the listener attached or off one of its children."}},{name:"onmouseover",description:{kind:"markdown",value:"A pointing device is moved onto the element that has the listener attached or onto one of its children."}},{name:"onmouseup",description:{kind:"markdown",value:"A pointing device button is released over an element."}},{name:"onmousewheel"},{name:"onpause",description:{kind:"markdown",value:"Playback has been paused."}},{name:"onplay",description:{kind:"markdown",value:"Playback has begun."}},{name:"onplaying",description:{kind:"markdown",value:"Playback is ready to start after having been paused or delayed due to lack of data."}},{name:"onprogress",description:{kind:"markdown",value:"In progress."}},{name:"onratechange",description:{kind:"markdown",value:"The playback rate has changed."}},{name:"onreset",description:{kind:"markdown",value:"A form is reset."}},{name:"onresize",description:{kind:"markdown",value:"The document view has been resized."}},{name:"onreadystatechange",description:{kind:"markdown",value:"The readyState attribute of a document has changed."}},{name:"onscroll",description:{kind:"markdown",value:"The document view or an element has been scrolled."}},{name:"onseeked",description:{kind:"markdown",value:"A seek operation completed."}},{name:"onseeking",description:{kind:"markdown",value:"A seek operation began."}},{name:"onselect",description:{kind:"markdown",value:"Some text is being selected."}},{name:"onshow",description:{kind:"markdown",value:"A contextmenu event was fired on/bubbled to an element that has a contextmenu attribute"}},{name:"onstalled",description:{kind:"markdown",value:"The user agent is trying to fetch media data, but data is unexpectedly not forthcoming."}},{name:"onsubmit",description:{kind:"markdown",value:"A form is submitted."}},{name:"onsuspend",description:{kind:"markdown",value:"Media data loading has been suspended."}},{name:"ontimeupdate",description:{kind:"markdown",value:"The time indicated by the currentTime attribute has been updated."}},{name:"onvolumechange",description:{kind:"markdown",value:"The volume has changed."}},{name:"onwaiting",description:{kind:"markdown",value:"Playback has stopped because of a temporary lack of data."}},{name:"aria-activedescendant",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-activedescendant"}],description:{kind:"markdown",value:"Identifies the currently active element when DOM focus is on a [`composite`](https://www.w3.org/TR/wai-aria-1.1/#composite) widget, [`textbox`](https://www.w3.org/TR/wai-aria-1.1/#textbox), [`group`](https://www.w3.org/TR/wai-aria-1.1/#group), or [`application`](https://www.w3.org/TR/wai-aria-1.1/#application)."}},{name:"aria-atomic",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-atomic"}],description:{kind:"markdown",value:"Indicates whether [assistive technologies](https://www.w3.org/TR/wai-aria-1.1/#dfn-assistive-technology) will present all, or only parts of, the changed region based on the change notifications defined by the [`aria-relevant`](https://www.w3.org/TR/wai-aria-1.1/#aria-relevant) attribute."}},{name:"aria-autocomplete",valueSet:"autocomplete",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-autocomplete"}],description:{kind:"markdown",value:"Indicates whether inputting text could trigger display of one or more predictions of the user's intended value for an input and specifies how predictions would be presented if they are made."}},{name:"aria-busy",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-busy"}],description:{kind:"markdown",value:"Indicates an element is being modified and that assistive technologies _MAY_ want to wait until the modifications are complete before exposing them to the user."}},{name:"aria-checked",valueSet:"tristate",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-checked"}],description:{kind:"markdown",value:'Indicates the current "checked" [state](https://www.w3.org/TR/wai-aria-1.1/#dfn-state) of checkboxes, radio buttons, and other [widgets](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget). See related [`aria-pressed`](https://www.w3.org/TR/wai-aria-1.1/#aria-pressed) and [`aria-selected`](https://www.w3.org/TR/wai-aria-1.1/#aria-selected).'}},{name:"aria-colcount",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-colcount"}],description:{kind:"markdown",value:"Defines the total number of columns in a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-colindex`](https://www.w3.org/TR/wai-aria-1.1/#aria-colindex)."}},{name:"aria-colindex",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-colindex"}],description:{kind:"markdown",value:"Defines an [element's](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) column index or position with respect to the total number of columns within a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-colcount`](https://www.w3.org/TR/wai-aria-1.1/#aria-colcount) and [`aria-colspan`](https://www.w3.org/TR/wai-aria-1.1/#aria-colspan)."}},{name:"aria-colspan",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-colspan"}],description:{kind:"markdown",value:"Defines the number of columns spanned by a cell or gridcell within a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-colindex`](https://www.w3.org/TR/wai-aria-1.1/#aria-colindex) and [`aria-rowspan`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowspan)."}},{name:"aria-controls",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-controls"}],description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) whose contents or presence are controlled by the current element. See related [`aria-owns`](https://www.w3.org/TR/wai-aria-1.1/#aria-owns)."}},{name:"aria-current",valueSet:"current",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-current"}],description:{kind:"markdown",value:"Indicates the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) that represents the current item within a container or set of related elements."}},{name:"aria-describedat",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-describedat"}]},{name:"aria-describedby",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-describedby"}],description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) that describes the [object](https://www.w3.org/TR/wai-aria-1.1/#dfn-object). See related [`aria-labelledby`](https://www.w3.org/TR/wai-aria-1.1/#aria-labelledby)."}},{name:"aria-disabled",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-disabled"}],description:{kind:"markdown",value:"Indicates that the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) is [perceivable](https://www.w3.org/TR/wai-aria-1.1/#dfn-perceivable) but disabled, so it is not editable or otherwise [operable](https://www.w3.org/TR/wai-aria-1.1/#dfn-operable). See related [`aria-hidden`](https://www.w3.org/TR/wai-aria-1.1/#aria-hidden) and [`aria-readonly`](https://www.w3.org/TR/wai-aria-1.1/#aria-readonly)."}},{name:"aria-dropeffect",valueSet:"dropeffect",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-dropeffect"}],description:{kind:"markdown",value:"\\[Deprecated in ARIA 1.1\\] Indicates what functions can be performed when a dragged object is released on the drop target."}},{name:"aria-errormessage",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-errormessage"}],description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) that provides an error message for the [object](https://www.w3.org/TR/wai-aria-1.1/#dfn-object). See related [`aria-invalid`](https://www.w3.org/TR/wai-aria-1.1/#aria-invalid) and [`aria-describedby`](https://www.w3.org/TR/wai-aria-1.1/#aria-describedby)."}},{name:"aria-expanded",valueSet:"u",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-expanded"}],description:{kind:"markdown",value:"Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed."}},{name:"aria-flowto",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-flowto"}],description:{kind:"markdown",value:"Identifies the next [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) in an alternate reading order of content which, at the user's discretion, allows assistive technology to override the general default of reading in document source order."}},{name:"aria-grabbed",valueSet:"u",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-grabbed"}],description:{kind:"markdown",value:'\\[Deprecated in ARIA 1.1\\] Indicates an element\'s "grabbed" [state](https://www.w3.org/TR/wai-aria-1.1/#dfn-state) in a drag-and-drop operation.'}},{name:"aria-haspopup",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-haspopup"}],description:{kind:"markdown",value:"Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element)."}},{name:"aria-hidden",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-hidden"}],description:{kind:"markdown",value:"Indicates whether the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) is exposed to an accessibility API. See related [`aria-disabled`](https://www.w3.org/TR/wai-aria-1.1/#aria-disabled)."}},{name:"aria-invalid",valueSet:"invalid",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-invalid"}],description:{kind:"markdown",value:"Indicates the entered value does not conform to the format expected by the application. See related [`aria-errormessage`](https://www.w3.org/TR/wai-aria-1.1/#aria-errormessage)."}},{name:"aria-kbdshortcuts",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-kbdshortcuts"}]},{name:"aria-label",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-label"}],description:{kind:"markdown",value:"Defines a string value that labels the current element. See related [`aria-labelledby`](https://www.w3.org/TR/wai-aria-1.1/#aria-labelledby)."}},{name:"aria-labelledby",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-labelledby"}],description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) that labels the current element. See related [`aria-describedby`](https://www.w3.org/TR/wai-aria-1.1/#aria-describedby)."}},{name:"aria-level",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-level"}],description:{kind:"markdown",value:"Defines the hierarchical level of an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) within a structure."}},{name:"aria-live",valueSet:"live",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-live"}],description:{kind:"markdown",value:"Indicates that an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) will be updated, and describes the types of updates the [user agents](https://www.w3.org/TR/wai-aria-1.1/#dfn-user-agent), [assistive technologies](https://www.w3.org/TR/wai-aria-1.1/#dfn-assistive-technology), and user can expect from the [live region](https://www.w3.org/TR/wai-aria-1.1/#dfn-live-region)."}},{name:"aria-modal",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-modal"}],description:{kind:"markdown",value:"Indicates whether an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) is modal when displayed."}},{name:"aria-multiline",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-multiline"}],description:{kind:"markdown",value:"Indicates whether a text box accepts multiple lines of input or only a single line."}},{name:"aria-multiselectable",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-multiselectable"}],description:{kind:"markdown",value:"Indicates that the user may select more than one item from the current selectable descendants."}},{name:"aria-orientation",valueSet:"orientation",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-orientation"}],description:{kind:"markdown",value:"Indicates whether the element's orientation is horizontal, vertical, or unknown/ambiguous."}},{name:"aria-owns",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-owns"}],description:{kind:"markdown",value:"Identifies an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) (or elements) in order to define a visual, functional, or contextual parent/child [relationship](https://www.w3.org/TR/wai-aria-1.1/#dfn-relationship) between DOM elements where the DOM hierarchy cannot be used to represent the relationship. See related [`aria-controls`](https://www.w3.org/TR/wai-aria-1.1/#aria-controls)."}},{name:"aria-placeholder",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-placeholder"}],description:{kind:"markdown",value:"Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value. A hint could be a sample value or a brief description of the expected format."}},{name:"aria-posinset",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-posinset"}],description:{kind:"markdown",value:"Defines an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element)'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM. See related [`aria-setsize`](https://www.w3.org/TR/wai-aria-1.1/#aria-setsize)."}},{name:"aria-pressed",valueSet:"tristate",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-pressed"}],description:{kind:"markdown",value:'Indicates the current "pressed" [state](https://www.w3.org/TR/wai-aria-1.1/#dfn-state) of toggle buttons. See related [`aria-checked`](https://www.w3.org/TR/wai-aria-1.1/#aria-checked) and [`aria-selected`](https://www.w3.org/TR/wai-aria-1.1/#aria-selected).'}},{name:"aria-readonly",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-readonly"}],description:{kind:"markdown",value:"Indicates that the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) is not editable, but is otherwise [operable](https://www.w3.org/TR/wai-aria-1.1/#dfn-operable). See related [`aria-disabled`](https://www.w3.org/TR/wai-aria-1.1/#aria-disabled)."}},{name:"aria-relevant",valueSet:"relevant",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-relevant"}],description:{kind:"markdown",value:"Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified. See related [`aria-atomic`](https://www.w3.org/TR/wai-aria-1.1/#aria-atomic)."}},{name:"aria-required",valueSet:"b",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-required"}],description:{kind:"markdown",value:"Indicates that user input is required on the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) before a form may be submitted."}},{name:"aria-roledescription",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-roledescription"}],description:{kind:"markdown",value:"Defines a human-readable, author-localized description for the [role](https://www.w3.org/TR/wai-aria-1.1/#dfn-role) of an [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element)."}},{name:"aria-rowcount",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-rowcount"}],description:{kind:"markdown",value:"Defines the total number of rows in a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-rowindex`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowindex)."}},{name:"aria-rowindex",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-rowindex"}],description:{kind:"markdown",value:"Defines an [element's](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) row index or position with respect to the total number of rows within a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-rowcount`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowcount) and [`aria-rowspan`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowspan)."}},{name:"aria-rowspan",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-rowspan"}],description:{kind:"markdown",value:"Defines the number of rows spanned by a cell or gridcell within a [`table`](https://www.w3.org/TR/wai-aria-1.1/#table), [`grid`](https://www.w3.org/TR/wai-aria-1.1/#grid), or [`treegrid`](https://www.w3.org/TR/wai-aria-1.1/#treegrid). See related [`aria-rowindex`](https://www.w3.org/TR/wai-aria-1.1/#aria-rowindex) and [`aria-colspan`](https://www.w3.org/TR/wai-aria-1.1/#aria-colspan)."}},{name:"aria-selected",valueSet:"u",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-selected"}],description:{kind:"markdown",value:'Indicates the current "selected" [state](https://www.w3.org/TR/wai-aria-1.1/#dfn-state) of various [widgets](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget). See related [`aria-checked`](https://www.w3.org/TR/wai-aria-1.1/#aria-checked) and [`aria-pressed`](https://www.w3.org/TR/wai-aria-1.1/#aria-pressed).'}},{name:"aria-setsize",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-setsize"}],description:{kind:"markdown",value:"Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM. See related [`aria-posinset`](https://www.w3.org/TR/wai-aria-1.1/#aria-posinset)."}},{name:"aria-sort",valueSet:"sort",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-sort"}],description:{kind:"markdown",value:"Indicates if items in a table or grid are sorted in ascending or descending order."}},{name:"aria-valuemax",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-valuemax"}],description:{kind:"markdown",value:"Defines the maximum allowed value for a range [widget](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget)."}},{name:"aria-valuemin",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-valuemin"}],description:{kind:"markdown",value:"Defines the minimum allowed value for a range [widget](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget)."}},{name:"aria-valuenow",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-valuenow"}],description:{kind:"markdown",value:"Defines the current value for a range [widget](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget). See related [`aria-valuetext`](https://www.w3.org/TR/wai-aria-1.1/#aria-valuetext)."}},{name:"aria-valuetext",references:[{name:"WAI-ARIA Reference",url:"https://www.w3.org/TR/wai-aria-1.1/#aria-valuetext"}],description:{kind:"markdown",value:"Defines the human readable text alternative of [`aria-valuenow`](https://www.w3.org/TR/wai-aria-1.1/#aria-valuenow) for a range [widget](https://www.w3.org/TR/wai-aria-1.1/#dfn-widget)."}},{name:"aria-details",description:{kind:"markdown",value:"Identifies the [element](https://www.w3.org/TR/wai-aria-1.1/#dfn-element) that provides a detailed, extended description for the [object](https://www.w3.org/TR/wai-aria-1.1/#dfn-object). See related [`aria-describedby`](https://www.w3.org/TR/wai-aria-1.1/#aria-describedby)."}},{name:"aria-keyshortcuts",description:{kind:"markdown",value:"Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element."}}],valueSets:[{name:"b",values:[{name:"true"},{name:"false"}]},{name:"u",values:[{name:"true"},{name:"false"},{name:"undefined"}]},{name:"o",values:[{name:"on"},{name:"off"}]},{name:"y",values:[{name:"yes"},{name:"no"}]},{name:"w",values:[{name:"soft"},{name:"hard"}]},{name:"d",values:[{name:"ltr"},{name:"rtl"},{name:"auto"}]},{name:"m",values:[{name:"GET",description:{kind:"markdown",value:"Corresponds to the HTTP [GET method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.3); form data are appended to the `action` attribute URI with a '?' as separator, and the resulting URI is sent to the server. Use this method when the form has no side-effects and contains only ASCII characters."}},{name:"POST",description:{kind:"markdown",value:"Corresponds to the HTTP [POST method](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.5); form data are included in the body of the form and sent to the server."}},{name:"dialog",description:{kind:"markdown",value:"Use when the form is inside a [`<dialog>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog) element to close the dialog when submitted."}}]},{name:"fm",values:[{name:"GET"},{name:"POST"}]},{name:"s",values:[{name:"row"},{name:"col"},{name:"rowgroup"},{name:"colgroup"}]},{name:"t",values:[{name:"hidden"},{name:"text"},{name:"search"},{name:"tel"},{name:"url"},{name:"email"},{name:"password"},{name:"datetime"},{name:"date"},{name:"month"},{name:"week"},{name:"time"},{name:"datetime-local"},{name:"number"},{name:"range"},{name:"color"},{name:"checkbox"},{name:"radio"},{name:"file"},{name:"submit"},{name:"image"},{name:"reset"},{name:"button"}]},{name:"im",values:[{name:"verbatim"},{name:"latin"},{name:"latin-name"},{name:"latin-prose"},{name:"full-width-latin"},{name:"kana"},{name:"kana-name"},{name:"katakana"},{name:"numeric"},{name:"tel"},{name:"email"},{name:"url"}]},{name:"bt",values:[{name:"button"},{name:"submit"},{name:"reset"},{name:"menu"}]},{name:"lt",values:[{name:"1"},{name:"a"},{name:"A"},{name:"i"},{name:"I"}]},{name:"mt",values:[{name:"context"},{name:"toolbar"}]},{name:"mit",values:[{name:"command"},{name:"checkbox"},{name:"radio"}]},{name:"et",values:[{name:"application/x-www-form-urlencoded"},{name:"multipart/form-data"},{name:"text/plain"}]},{name:"tk",values:[{name:"subtitles"},{name:"captions"},{name:"descriptions"},{name:"chapters"},{name:"metadata"}]},{name:"pl",values:[{name:"none"},{name:"metadata"},{name:"auto"}]},{name:"sh",values:[{name:"circle"},{name:"default"},{name:"poly"},{name:"rect"}]},{name:"xo",values:[{name:"anonymous"},{name:"use-credentials"}]},{name:"sb",values:[{name:"allow-forms"},{name:"allow-modals"},{name:"allow-pointer-lock"},{name:"allow-popups"},{name:"allow-popups-to-escape-sandbox"},{name:"allow-same-origin"},{name:"allow-scripts"},{name:"allow-top-navigation"}]},{name:"tristate",values:[{name:"true"},{name:"false"},{name:"mixed"},{name:"undefined"}]},{name:"inputautocomplete",values:[{name:"additional-name"},{name:"address-level1"},{name:"address-level2"},{name:"address-level3"},{name:"address-level4"},{name:"address-line1"},{name:"address-line2"},{name:"address-line3"},{name:"bday"},{name:"bday-year"},{name:"bday-day"},{name:"bday-month"},{name:"billing"},{name:"cc-additional-name"},{name:"cc-csc"},{name:"cc-exp"},{name:"cc-exp-month"},{name:"cc-exp-year"},{name:"cc-family-name"},{name:"cc-given-name"},{name:"cc-name"},{name:"cc-number"},{name:"cc-type"},{name:"country"},{name:"country-name"},{name:"current-password"},{name:"email"},{name:"family-name"},{name:"fax"},{name:"given-name"},{name:"home"},{name:"honorific-prefix"},{name:"honorific-suffix"},{name:"impp"},{name:"language"},{name:"mobile"},{name:"name"},{name:"new-password"},{name:"nickname"},{name:"organization"},{name:"organization-title"},{name:"pager"},{name:"photo"},{name:"postal-code"},{name:"sex"},{name:"shipping"},{name:"street-address"},{name:"tel-area-code"},{name:"tel"},{name:"tel-country-code"},{name:"tel-extension"},{name:"tel-local"},{name:"tel-local-prefix"},{name:"tel-local-suffix"},{name:"tel-national"},{name:"transaction-amount"},{name:"transaction-currency"},{name:"url"},{name:"username"},{name:"work"}]},{name:"autocomplete",values:[{name:"inline"},{name:"list"},{name:"both"},{name:"none"}]},{name:"current",values:[{name:"page"},{name:"step"},{name:"location"},{name:"date"},{name:"time"},{name:"true"},{name:"false"}]},{name:"dropeffect",values:[{name:"copy"},{name:"move"},{name:"link"},{name:"execute"},{name:"popup"},{name:"none"}]},{name:"invalid",values:[{name:"grammar"},{name:"false"},{name:"spelling"},{name:"true"}]},{name:"live",values:[{name:"off"},{name:"polite"},{name:"assertive"}]},{name:"orientation",values:[{name:"vertical"},{name:"horizontal"},{name:"undefined"}]},{name:"relevant",values:[{name:"additions"},{name:"removals"},{name:"text"},{name:"all"},{name:"additions text"}]},{name:"sort",values:[{name:"ascending"},{name:"descending"},{name:"none"},{name:"other"}]},{name:"roles",values:[{name:"alert"},{name:"alertdialog"},{name:"button"},{name:"checkbox"},{name:"dialog"},{name:"gridcell"},{name:"link"},{name:"log"},{name:"marquee"},{name:"menuitem"},{name:"menuitemcheckbox"},{name:"menuitemradio"},{name:"option"},{name:"progressbar"},{name:"radio"},{name:"scrollbar"},{name:"searchbox"},{name:"slider"},{name:"spinbutton"},{name:"status"},{name:"switch"},{name:"tab"},{name:"tabpanel"},{name:"textbox"},{name:"timer"},{name:"tooltip"},{name:"treeitem"},{name:"combobox"},{name:"grid"},{name:"listbox"},{name:"menu"},{name:"menubar"},{name:"radiogroup"},{name:"tablist"},{name:"tree"},{name:"treegrid"},{name:"application"},{name:"article"},{name:"cell"},{name:"columnheader"},{name:"definition"},{name:"directory"},{name:"document"},{name:"feed"},{name:"figure"},{name:"group"},{name:"heading"},{name:"img"},{name:"list"},{name:"listitem"},{name:"math"},{name:"none"},{name:"note"},{name:"presentation"},{name:"region"},{name:"row"},{name:"rowgroup"},{name:"rowheader"},{name:"separator"},{name:"table"},{name:"term"},{name:"text"},{name:"toolbar"},{name:"banner"},{name:"complementary"},{name:"contentinfo"},{name:"form"},{name:"main"},{name:"navigation"},{name:"region"},{name:"search"},{name:"doc-abstract"},{name:"doc-acknowledgments"},{name:"doc-afterword"},{name:"doc-appendix"},{name:"doc-backlink"},{name:"doc-biblioentry"},{name:"doc-bibliography"},{name:"doc-biblioref"},{name:"doc-chapter"},{name:"doc-colophon"},{name:"doc-conclusion"},{name:"doc-cover"},{name:"doc-credit"},{name:"doc-credits"},{name:"doc-dedication"},{name:"doc-endnote"},{name:"doc-endnotes"},{name:"doc-epigraph"},{name:"doc-epilogue"},{name:"doc-errata"},{name:"doc-example"},{name:"doc-footnote"},{name:"doc-foreword"},{name:"doc-glossary"},{name:"doc-glossref"},{name:"doc-index"},{name:"doc-introduction"},{name:"doc-noteref"},{name:"doc-notice"},{name:"doc-pagebreak"},{name:"doc-pagelist"},{name:"doc-part"},{name:"doc-preface"},{name:"doc-prologue"},{name:"doc-pullquote"},{name:"doc-qna"},{name:"doc-subtitle"},{name:"doc-tip"},{name:"doc-toc"}]},{name:"metanames",values:[{name:"application-name"},{name:"author"},{name:"description"},{name:"format-detection"},{name:"generator"},{name:"keywords"},{name:"publisher"},{name:"referrer"},{name:"robots"},{name:"theme-color"},{name:"viewport"}]}]})],Ne=[];function Pe(){return qe.concat(Ne)}function Oe(e){return void 0!==e}var Fe=M();!function(){function e(e){this.clientCapabilities=e,this.completionParticipants=[]}e.prototype.setCompletionParticipants=function(e){this.completionParticipants=e||[]},e.prototype.doComplete=function(e,t,n,i){var r=this._doComplete(e,t,n,i);return this.convertCompletionList(r)},e.prototype._doComplete=function(e,t,n,a){var o={isIncomplete:!1,items:[]},s=this.completionParticipants,l=Pe().filter((function(t){return t.isApplicable(e.languageId)&&(!a||!1!==a[t.getId()])})),c=this.doesSupportMarkdown(),h=e.getText(),d=e.offsetAt(t),u=n.findNodeBefore(d);if(!u)return o;var p,m=ke(h,u.start),f="";function g(t,n){return void 0===n&&(n=d),t>d&&(t=d),{start:e.positionAt(t),end:e.positionAt(n)}}function _(e,t){var n=g(e,t);return l.forEach((function(e){e.provideTags().forEach((function(e){o.items.push({label:e.name,kind:I.Property,documentation:De(e,c),textEdit:b.replace(n,e.name),insertTextFormat:H.PlainText})}))})),o}function w(e){for(var t=e;t>0;){var n=h.charAt(t-1);if("\n\r".indexOf(n)>=0)return h.substring(t,e);if(!je(n))return null;t--}return h.substring(0,e)}function v(e,t,n){void 0===n&&(n=d);var i=g(e,n),r=Be(h,n,re.WithinEndTag,ie.EndTagClose)?"":">",a=u;for(t&&(a=a.parent);a;){var s=a.tag;if(s&&(!a.closed||a.endTagStart&&a.endTagStart>d)){var p={label:"/"+s,kind:I.Property,filterText:"/"+s,textEdit:b.replace(i,"/"+s+r),insertTextFormat:H.PlainText},m=w(a.start),f=w(e-1);if(null!==m&&null!==f&&m!==f){var _=m+"</"+s+r;p.textEdit=b.replace(g(e-1-f.length),_),p.filterText=f+"</"+s}return o.items.push(p),o}a=a.parent}return t||l.forEach((function(e){e.provideTags().forEach((function(e){o.items.push({label:"/"+e.name,kind:I.Property,documentation:De(e,c),filterText:"/"+e+r,textEdit:b.replace(i,"/"+e+r),insertTextFormat:H.PlainText})}))})),o}function y(t,n){if(a&&a.hideAutoCompleteProposals)return o;if(!Me(n)){var i=e.positionAt(t);o.items.push({label:"</"+n+">",kind:I.Property,filterText:"</"+n+">",textEdit:b.insert(i,"$0</"+n+">"),insertTextFormat:H.Snippet})}return o}function T(e,t){return _(e,t),v(e,!0,t),o}function k(e,t){void 0===t&&(t=d);for(var i=d;i<t&&"<"!==h[i];)i++;var r=g(e,i),a=Be(h,t,re.AfterAttributeName,ie.DelimiterAssign)?"":'="$1"',s=f.toLowerCase(),u=Object.create(null);return l.forEach((function(e){e.provideAttributes(s).forEach((function(e){if(!u[e.name]){u[e.name]=!0;var t,n=e.name;"v"!==e.valueSet&&a.length&&(n+=a,(e.valueSet||"style"===e.name)&&(t={title:"Suggest",command:"editor.action.triggerSuggest"})),o.items.push({label:e.name,kind:"handler"===e.valueSet?I.Function:I.Value,documentation:De(e,c),textEdit:b.replace(r,n),insertTextFormat:H.Snippet,command:t})}}))})),function(e,t){var i={};i["data-"]='data-$1="$2"',n&&n.roots.forEach((function(e){return function e(n){n.attributeNames.forEach((function(e){!Ee(e,"data-")||i[e]||t[e]||(i[e]=e+'="$1"')})),n.children.forEach((function(t){return e(t)}))}(e)}));Object.keys(i).forEach((function(t){return o.items.push({label:t,kind:I.Value,textEdit:b.replace(e,i[t]),insertTextFormat:H.Snippet})}))}(r,u),o}function S(n,i){var r,a,u,m;if(void 0===i&&(i=d),d>n&&d<=i&&(m=h[n],/^["']*$/.test(m))){var _=n+1,w=i;i>n&&h[i-1]===h[n]&&w--;var v=function(e,t,n){for(;t>n&&!je(e[t-1]);)t--;return t}(h,d,_),y=function(e,t,n){for(;t<n&&!je(e[t]);)t++;return t}(h,d,w);r=g(v,y),u=d>=_&&d<=w?h.substring(_,d):"",a=!1}else r=g(n,i),u=h.substring(n,d),a=!0;var T=f.toLowerCase(),k=p.toLowerCase();if(s.length>0)for(var S=g(n,i),x=0,M=s;x<M.length;x++){var E=M[x];E.onHtmlAttributeValue&&E.onHtmlAttributeValue({document:e,position:t,tag:T,attribute:k,value:u,range:S})}return l.forEach((function(e){e.provideValues(T,k).forEach((function(e){var t=a?'"'+e.name+'"':e.name;o.items.push({label:e.name,filterText:t,kind:I.Unit,documentation:De(e,c),textEdit:b.replace(r,t),insertTextFormat:H.PlainText})}))})),L(),o}function x(e){return d===m.getTokenEnd()&&(A=m.scan())===e&&m.getTokenOffset()===d?m.getTokenEnd():d}function M(){for(var n=0,i=s;n<i.length;n++){var r=i[n];r.onHtmlContent&&r.onHtmlContent({document:e,position:t})}return L()}function L(){for(var e,n,a,s=d-1,l=t.character;s>=0&&Ce(h,s);)s--,l--;if(s>=0&&"&"===h[s]){var c=r.create(i.create(t.line,l-1),t);for(var u in Le)if(n=";",a=void 0,(a=(e=u).length-n.length)>0?e.lastIndexOf(n)===a:0===a&&e===n){var p="&"+u;o.items.push({label:p,kind:I.Keyword,documentation:Fe("entity.propose","Character entity representing '"+Le[u]+"'"),textEdit:b.replace(c,p),insertTextFormat:H.PlainText})}}return o}for(var E,A=m.scan();A!==ie.EOS&&m.getTokenOffset()<=d;){switch(A){case ie.StartTagOpen:if(m.getTokenEnd()===d){var R=x(ie.StartTag);return 0===t.line&&(E=void 0,E=g(d,R),o.items.push({label:"!DOCTYPE",kind:I.Property,documentation:"A preamble for an HTML document.",textEdit:b.replace(E,"!DOCTYPE html>"),insertTextFormat:H.PlainText})),T(d,R)}break;case ie.StartTag:if(m.getTokenOffset()<=d&&d<=m.getTokenEnd())return _(m.getTokenOffset(),m.getTokenEnd());f=m.getTokenText();break;case ie.AttributeName:if(m.getTokenOffset()<=d&&d<=m.getTokenEnd())return k(m.getTokenOffset(),m.getTokenEnd());p=m.getTokenText();break;case ie.DelimiterAssign:if(m.getTokenEnd()===d){R=x(ie.AttributeValue);return S(d,R)}break;case ie.AttributeValue:if(m.getTokenOffset()<=d&&d<=m.getTokenEnd())return S(m.getTokenOffset(),m.getTokenEnd());break;case ie.Whitespace:if(d<=m.getTokenEnd())switch(m.getScannerState()){case re.AfterOpeningStartTag:return T(m.getTokenOffset(),x(ie.StartTag));case re.WithinTag:case re.AfterAttributeName:return k(m.getTokenEnd());case re.BeforeAttributeValue:return S(m.getTokenEnd());case re.AfterOpeningEndTag:return v(m.getTokenOffset()-1,!1);case re.WithinContent:return M()}break;case ie.EndTagOpen:if(d<=m.getTokenEnd())return v(m.getTokenOffset()+1,!1,x(ie.EndTag));break;case ie.EndTag:if(d<=m.getTokenEnd())for(var z=m.getTokenOffset()-1;z>=0;){var U=h.charAt(z);if("/"===U)return v(z,!1,m.getTokenEnd());if(!je(U))break;z--}break;case ie.StartTagClose:if(d<=m.getTokenEnd()&&f)return y(m.getTokenEnd(),f);break;case ie.Content:if(d<=m.getTokenEnd())return M();break;default:if(d<=m.getTokenEnd())return o}A=m.scan()}return o},e.prototype.doTagComplete=function(e,t,n){var i=e.offsetAt(t);if(i<=0)return null;var r=e.getText().charAt(i-1);if(">"===r){if((o=n.findNodeBefore(i))&&o.tag&&!Me(o.tag)&&o.start<i&&(!o.endTagStart||o.endTagStart>i))for(var a=(s=ke(e.getText(),o.start)).scan();a!==ie.EOS&&s.getTokenEnd()<=i;){if(a===ie.StartTagClose&&s.getTokenEnd()===i)return"$0</"+o.tag+">";a=s.scan()}}else if("/"===r){for(var o=n.findNodeBefore(i);o&&o.closed;)o=o.parent;if(o&&o.tag){var s;for(a=(s=ke(e.getText(),o.start)).scan();a!==ie.EOS&&s.getTokenEnd()<=i;){if(a===ie.EndTagOpen&&s.getTokenEnd()===i)return o.tag+">";a=s.scan()}}}return null},e.prototype.convertCompletionList=function(e){return this.doesSupportMarkdown()||e.items.forEach((function(e){e.documentation&&"string"!=typeof e.documentation&&(e.documentation={kind:"plaintext",value:e.documentation.value})})),e},e.prototype.doesSupportMarkdown=function(){if(!Oe(this.supportsMarkdown)){if(!Oe(this.clientCapabilities))return this.supportsMarkdown=!0,this.supportsMarkdown;var e=this.clientCapabilities&&this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.hover;this.supportsMarkdown=e&&e.contentFormat&&Array.isArray(e.contentFormat)&&-1!==e.contentFormat.indexOf(R.Markdown)}return this.supportsMarkdown}}();function je(e){return/^\s*$/.test(e)}function Be(e,t,n,i){for(var r=ke(e,t,n),a=r.scan();a===ie.Whitespace;)a=r.scan();return a===i}!function(){function e(e){this.clientCapabilities=e}e.prototype.doHover=function(e,t,n){var i=this.convertContents.bind(this),r=this.doesSupportMarkdown(),a=e.offsetAt(t),o=n.findNodeAt(a);if(!o||!o.tag)return null;var s=Pe().filter((function(t){return t.isApplicable(e.languageId)}));function l(e,t,n){e=e.toLowerCase();for(var a=function(a){var o=null;if(a.provideTags().forEach((function(i){if(i.name.toLowerCase()===e.toLowerCase()){var a=n?"<"+e+">":"</"+e+">",s=De(i,r);s.value="```html\n"+a+"\n```\n"+s.value,o={contents:s,range:t}}})),o)return o.contents=i(o.contents),{value:o}},o=0,l=s;o<l.length;o++){var c=a(l[o]);if("object"==typeof c)return c.value}return null}function c(t,n){for(var i=ke(e.getText(),n),r=i.scan();r!==ie.EOS&&(i.getTokenEnd()<a||i.getTokenEnd()===a&&r!==t);)r=i.scan();return r===t&&a<=i.getTokenEnd()?{start:e.positionAt(i.getTokenOffset()),end:e.positionAt(i.getTokenEnd())}:null}if(o.endTagStart&&a>=o.endTagStart){var h=c(ie.EndTag,o.endTagStart);return h?l(o.tag,h,!1):null}var d=c(ie.StartTag,o.start);if(d)return l(o.tag,d,!0);var u=c(ie.AttributeName,o.start);if(u)return function(e,t,n){e=e.toLowerCase();for(var a=function(a){var o=null;if(a.provideAttributes(e).forEach((function(e){t===e.name&&e.description&&(o={contents:De(e,r),range:n})})),o)return o.contents=i(o.contents),{value:o}},o=0,l=s;o<l.length;o++){var c=a(l[o]);if("object"==typeof c)return c.value}return null}(m=o.tag,e.getText(u),u);var p=c(ie.AttributeValue,o.start);if(p){var m=o.tag,f=function(e){if(e.length<=1)return e.replace(/['"]/,"");"'"!==e[0]&&'"'!==e[0]||(e=e.slice(1));"'"!==e[e.length-1]&&'"'!==e[e.length-1]||(e=e.slice(0,-1));return e}(e.getText(p)),g=function(t,n){for(var i=ke(e.getText(),t),r=i.scan(),a=void 0;r!==ie.EOS&&i.getTokenEnd()<=n;)(r=i.scan())===ie.AttributeName&&(a=i.getTokenText());return a}(o.start,e.offsetAt(p.start));if(g)return function(e,t,n,a){e=e.toLowerCase();for(var o=function(o){var s=null;if(o.provideValues(e,t).forEach((function(e){n===e.name&&e.description&&(s={contents:De(e,r),range:a})})),s)return s.contents=i(s.contents),{value:s}},l=0,c=s;l<c.length;l++){var h=o(c[l]);if("object"==typeof h)return h.value}return null}(m,g,f,p)}return null},e.prototype.convertContents=function(e){if(!this.doesSupportMarkdown()){if("string"==typeof e)return e;if("kind"in e)return{kind:"plaintext",value:e.value};if(!Array.isArray(e))return e.value;e.map((function(e){return"string"==typeof e?e:e.value}))}return e},e.prototype.doesSupportMarkdown=function(){if(!Oe(this.supportsMarkdown)){if(!Oe(this.clientCapabilities))return this.supportsMarkdown=!0,this.supportsMarkdown;var e=this.clientCapabilities&&this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.hover;this.supportsMarkdown=e&&e.contentFormat&&Array.isArray(e.contentFormat)&&-1!==e.contentFormat.indexOf(R.Markdown)}return this.supportsMarkdown}}();(function(e){var t={};function n(i){if(t[i])return t[i].exports;var r=t[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(i,r,function(t){return e[t]}.bind(null,r));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=15)})([,,function(e,t,n){function i(e){this.__parent=e,this.__character_count=0,this.__indent_count=-1,this.__alignment_count=0,this.__wrap_point_index=0,this.__wrap_point_character_count=0,this.__wrap_point_indent_count=-1,this.__wrap_point_alignment_count=0,this.__items=[]}function r(e,t){this.__cache=[""],this.__indent_size=e.indent_size,this.__indent_string=e.indent_char,e.indent_with_tabs||(this.__indent_string=new Array(e.indent_size+1).join(e.indent_char)),t=t||"",e.indent_level>0&&(t=new Array(e.indent_level+1).join(this.__indent_string)),this.__base_string=t,this.__base_string_length=t.length}function a(e,t){this.__indent_cache=new r(e,t),this.raw=!1,this._end_with_newline=e.end_with_newline,this.indent_size=e.indent_size,this.wrap_line_length=e.wrap_line_length,this.indent_empty_lines=e.indent_empty_lines,this.__lines=[],this.previous_line=null,this.current_line=null,this.next_line=new i(this),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1,this.__add_outputline()}i.prototype.clone_empty=function(){var e=new i(this.__parent);return e.set_indent(this.__indent_count,this.__alignment_count),e},i.prototype.item=function(e){return e<0?this.__items[this.__items.length+e]:this.__items[e]},i.prototype.has_match=function(e){for(var t=this.__items.length-1;t>=0;t--)if(this.__items[t].match(e))return!0;return!1},i.prototype.set_indent=function(e,t){this.is_empty()&&(this.__indent_count=e||0,this.__alignment_count=t||0,this.__character_count=this.__parent.get_indent_size(this.__indent_count,this.__alignment_count))},i.prototype._set_wrap_point=function(){this.__parent.wrap_line_length&&(this.__wrap_point_index=this.__items.length,this.__wrap_point_character_count=this.__character_count,this.__wrap_point_indent_count=this.__parent.next_line.__indent_count,this.__wrap_point_alignment_count=this.__parent.next_line.__alignment_count)},i.prototype._should_wrap=function(){return this.__wrap_point_index&&this.__character_count>this.__parent.wrap_line_length&&this.__wrap_point_character_count>this.__parent.next_line.__character_count},i.prototype._allow_wrap=function(){if(this._should_wrap()){this.__parent.add_new_line();var e=this.__parent.current_line;return e.set_indent(this.__wrap_point_indent_count,this.__wrap_point_alignment_count),e.__items=this.__items.slice(this.__wrap_point_index),this.__items=this.__items.slice(0,this.__wrap_point_index),e.__character_count+=this.__character_count-this.__wrap_point_character_count,this.__character_count=this.__wrap_point_character_count," "===e.__items[0]&&(e.__items.splice(0,1),e.__character_count-=1),!0}return!1},i.prototype.is_empty=function(){return 0===this.__items.length},i.prototype.last=function(){return this.is_empty()?null:this.__items[this.__items.length-1]},i.prototype.push=function(e){this.__items.push(e);var t=e.lastIndexOf("\n");-1!==t?this.__character_count=e.length-t:this.__character_count+=e.length},i.prototype.pop=function(){var e=null;return this.is_empty()||(e=this.__items.pop(),this.__character_count-=e.length),e},i.prototype._remove_indent=function(){this.__indent_count>0&&(this.__indent_count-=1,this.__character_count-=this.__parent.indent_size)},i.prototype._remove_wrap_indent=function(){this.__wrap_point_indent_count>0&&(this.__wrap_point_indent_count-=1)},i.prototype.trim=function(){for(;" "===this.last();)this.__items.pop(),this.__character_count-=1},i.prototype.toString=function(){var e="";return this.is_empty()?this.__parent.indent_empty_lines&&(e=this.__parent.get_indent_string(this.__indent_count)):(e=this.__parent.get_indent_string(this.__indent_count,this.__alignment_count),e+=this.__items.join("")),e},r.prototype.get_indent_size=function(e,t){var n=this.__base_string_length;return t=t||0,e<0&&(n=0),n+=e*this.__indent_size,n+=t},r.prototype.get_indent_string=function(e,t){var n=this.__base_string;return t=t||0,e<0&&(e=0,n=""),t+=e*this.__indent_size,this.__ensure_cache(t),n+=this.__cache[t]},r.prototype.__ensure_cache=function(e){for(;e>=this.__cache.length;)this.__add_column()},r.prototype.__add_column=function(){var e=this.__cache.length,t=0,n="";this.__indent_size&&e>=this.__indent_size&&(e-=(t=Math.floor(e/this.__indent_size))*this.__indent_size,n=new Array(t+1).join(this.__indent_string)),e&&(n+=new Array(e+1).join(" ")),this.__cache.push(n)},a.prototype.__add_outputline=function(){this.previous_line=this.current_line,this.current_line=this.next_line.clone_empty(),this.__lines.push(this.current_line)},a.prototype.get_line_number=function(){return this.__lines.length},a.prototype.get_indent_string=function(e,t){return this.__indent_cache.get_indent_string(e,t)},a.prototype.get_indent_size=function(e,t){return this.__indent_cache.get_indent_size(e,t)},a.prototype.is_empty=function(){return!this.previous_line&&this.current_line.is_empty()},a.prototype.add_new_line=function(e){return!(this.is_empty()||!e&&this.just_added_newline())&&(this.raw||this.__add_outputline(),!0)},a.prototype.get_code=function(e){this.trim(!0);var t=this.current_line.pop();t&&("\n"===t[t.length-1]&&(t=t.replace(/\n+$/g,"")),this.current_line.push(t)),this._end_with_newline&&this.__add_outputline();var n=this.__lines.join("\n");return"\n"!==e&&(n=n.replace(/[\n]/g,e)),n},a.prototype.set_wrap_point=function(){this.current_line._set_wrap_point()},a.prototype.set_indent=function(e,t){return e=e||0,t=t||0,this.next_line.set_indent(e,t),this.__lines.length>1?(this.current_line.set_indent(e,t),!0):(this.current_line.set_indent(),!1)},a.prototype.add_raw_token=function(e){for(var t=0;t<e.newlines;t++)this.__add_outputline();this.current_line.set_indent(-1),this.current_line.push(e.whitespace_before),this.current_line.push(e.text),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1},a.prototype.add_token=function(e){this.__add_space_before_token(),this.current_line.push(e),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=this.current_line._allow_wrap()},a.prototype.__add_space_before_token=function(){this.space_before_token&&!this.just_added_newline()&&(this.non_breaking_space||this.set_wrap_point(),this.current_line.push(" "))},a.prototype.remove_indent=function(e){for(var t=this.__lines.length;e<t;)this.__lines[e]._remove_indent(),e++;this.current_line._remove_wrap_indent()},a.prototype.trim=function(e){for(e=void 0!==e&&e,this.current_line.trim();e&&this.__lines.length>1&&this.current_line.is_empty();)this.__lines.pop(),this.current_line=this.__lines[this.__lines.length-1],this.current_line.trim();this.previous_line=this.__lines.length>1?this.__lines[this.__lines.length-2]:null},a.prototype.just_added_newline=function(){return this.current_line.is_empty()},a.prototype.just_added_blankline=function(){return this.is_empty()||this.current_line.is_empty()&&this.previous_line.is_empty()},a.prototype.ensure_empty_line_above=function(e,t){for(var n=this.__lines.length-2;n>=0;){var r=this.__lines[n];if(r.is_empty())break;if(0!==r.item(0).indexOf(e)&&r.item(-1)!==t){this.__lines.splice(n+1,0,new i(this)),this.previous_line=this.__lines[this.__lines.length-2];break}n--}},e.exports.Output=a},,,,function(e,t,n){function i(e,t){this.raw_options=r(e,t),this.disabled=this._get_boolean("disabled"),this.eol=this._get_characters("eol","auto"),this.end_with_newline=this._get_boolean("end_with_newline"),this.indent_size=this._get_number("indent_size",4),this.indent_char=this._get_characters("indent_char"," "),this.indent_level=this._get_number("indent_level"),this.preserve_newlines=this._get_boolean("preserve_newlines",!0),this.max_preserve_newlines=this._get_number("max_preserve_newlines",32786),this.preserve_newlines||(this.max_preserve_newlines=0),this.indent_with_tabs=this._get_boolean("indent_with_tabs","\t"===this.indent_char),this.indent_with_tabs&&(this.indent_char="\t",1===this.indent_size&&(this.indent_size=4)),this.wrap_line_length=this._get_number("wrap_line_length",this._get_number("max_char")),this.indent_empty_lines=this._get_boolean("indent_empty_lines"),this.templating=this._get_selection_list("templating",["auto","none","django","erb","handlebars","php"],["auto"])}function r(e,t){var n,i={};for(n in e=a(e))n!==t&&(i[n]=e[n]);if(t&&e[t])for(n in e[t])i[n]=e[t][n];return i}function a(e){var t,n={};for(t in e){n[t.replace(/-/g,"_")]=e[t]}return n}i.prototype._get_array=function(e,t){var n=this.raw_options[e],i=t||[];return"object"==typeof n?null!==n&&"function"==typeof n.concat&&(i=n.concat()):"string"==typeof n&&(i=n.split(/[^a-zA-Z0-9_\/\-]+/)),i},i.prototype._get_boolean=function(e,t){var n=this.raw_options[e];return void 0===n?!!t:!!n},i.prototype._get_characters=function(e,t){var n=this.raw_options[e],i=t||"";return"string"==typeof n&&(i=n.replace(/\\r/,"\r").replace(/\\n/,"\n").replace(/\\t/,"\t")),i},i.prototype._get_number=function(e,t){var n=this.raw_options[e];t=parseInt(t,10),isNaN(t)&&(t=0);var i=parseInt(n,10);return isNaN(i)&&(i=t),i},i.prototype._get_selection=function(e,t,n){var i=this._get_selection_list(e,t,n);if(1!==i.length)throw new Error("Invalid Option Value: The option '"+e+"' can only be one of the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i[0]},i.prototype._get_selection_list=function(e,t,n){if(!t||0===t.length)throw new Error("Selection list cannot be empty.");if(n=n||[t[0]],!this._is_valid_selection(n,t))throw new Error("Invalid Default Value!");var i=this._get_array(e,n);if(!this._is_valid_selection(i,t))throw new Error("Invalid Option Value: The option '"+e+"' can contain only the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i},i.prototype._is_valid_selection=function(e,t){return e.length&&t.length&&!e.some((function(e){return-1===t.indexOf(e)}))},e.exports.Options=i,e.exports.normalizeOpts=a,e.exports.mergeOpts=r},,function(e,t,n){var i=RegExp.prototype.hasOwnProperty("sticky");function r(e){this.__input=e||"",this.__input_length=this.__input.length,this.__position=0}r.prototype.restart=function(){this.__position=0},r.prototype.back=function(){this.__position>0&&(this.__position-=1)},r.prototype.hasNext=function(){return this.__position<this.__input_length},r.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__input.charAt(this.__position),this.__position+=1),e},r.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__input_length&&(t=this.__input.charAt(e)),t},r.prototype.__match=function(e,t){e.lastIndex=t;var n=e.exec(this.__input);return!n||i&&e.sticky||n.index!==t&&(n=null),n},r.prototype.test=function(e,t){return t=t||0,(t+=this.__position)>=0&&t<this.__input_length&&!!this.__match(e,t)},r.prototype.testChar=function(e,t){var n=this.peek(t);return e.lastIndex=0,null!==n&&e.test(n)},r.prototype.match=function(e){var t=this.__match(e,this.__position);return t?this.__position+=t[0].length:t=null,t},r.prototype.read=function(e,t,n){var i,r="";return e&&(i=this.match(e))&&(r+=i[0]),!t||!i&&e||(r+=this.readUntil(t,n)),r},r.prototype.readUntil=function(e,t){var n,i=this.__position;e.lastIndex=this.__position;var r=e.exec(this.__input);return r?(i=r.index,t&&(i+=r[0].length)):i=this.__input_length,n=this.__input.substring(this.__position,i),this.__position=i,n},r.prototype.readUntilAfter=function(e){return this.readUntil(e,!0)},r.prototype.get_regexp=function(e,t){var n=null,r="g";return t&&i&&(r="y"),"string"==typeof e&&""!==e?n=new RegExp(e,r):e&&(n=new RegExp(e.source,r)),n},r.prototype.get_literal_regexp=function(e){return RegExp(e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"))},r.prototype.peekUntilAfter=function(e){var t=this.__position,n=this.readUntilAfter(e);return this.__position=t,n},r.prototype.lookBack=function(e){var t=this.__position-1;return t>=e.length&&this.__input.substring(t-e.length,t).toLowerCase()===e},e.exports.InputScanner=r},,,,,function(e,t,n){function i(e,t){e="string"==typeof e?e:e.source,t="string"==typeof t?t:t.source,this.__directives_block_pattern=new RegExp(e+/ beautify( \w+[:]\w+)+ /.source+t,"g"),this.__directive_pattern=/ (\w+)[:](\w+)/g,this.__directives_end_ignore_pattern=new RegExp(e+/\sbeautify\signore:end\s/.source+t,"g")}i.prototype.get_directives=function(e){if(!e.match(this.__directives_block_pattern))return null;var t={};this.__directive_pattern.lastIndex=0;for(var n=this.__directive_pattern.exec(e);n;)t[n[1]]=n[2],n=this.__directive_pattern.exec(e);return t},i.prototype.readIgnored=function(e){return e.readUntilAfter(this.__directives_end_ignore_pattern)},e.exports.Directives=i},,function(e,t,n){var i=n(16).Beautifier,r=n(17).Options;e.exports=function(e,t){return new i(e,t).beautify()},e.exports.defaultOptions=function(){return new r}},function(e,t,n){var i=n(17).Options,r=n(2).Output,a=n(8).InputScanner,o=new(0,n(13).Directives)(/\/\*/,/\*\//),s=/\r\n|[\r\n]/,l=/\r\n|[\r\n]/g,c=/\s/,h=/(?:\s|\n)+/g,d=/\/\*(?:[\s\S]*?)((?:\*\/)|$)/g,u=/\/\/(?:[^\n\r\u2028\u2029]*)/g;function p(e,t){this._source_text=e||"",this._options=new i(t),this._ch=null,this._input=null,this.NESTED_AT_RULE={"@page":!0,"@font-face":!0,"@keyframes":!0,"@media":!0,"@supports":!0,"@document":!0},this.CONDITIONAL_GROUP_RULE={"@media":!0,"@supports":!0,"@document":!0}}p.prototype.eatString=function(e){var t="";for(this._ch=this._input.next();this._ch;){if(t+=this._ch,"\\"===this._ch)t+=this._input.next();else if(-1!==e.indexOf(this._ch)||"\n"===this._ch)break;this._ch=this._input.next()}return t},p.prototype.eatWhitespace=function(e){for(var t=c.test(this._input.peek()),n=!0;c.test(this._input.peek());)this._ch=this._input.next(),e&&"\n"===this._ch&&(this._options.preserve_newlines||n)&&(n=!1,this._output.add_new_line(!0));return t},p.prototype.foundNestedPseudoClass=function(){for(var e=0,t=1,n=this._input.peek(t);n;){if("{"===n)return!0;if("("===n)e+=1;else if(")"===n){if(0===e)return!1;e-=1}else if(";"===n||"}"===n)return!1;t++,n=this._input.peek(t)}return!1},p.prototype.print_string=function(e){this._output.set_indent(this._indentLevel),this._output.non_breaking_space=!0,this._output.add_token(e)},p.prototype.preserveSingleSpace=function(e){e&&(this._output.space_before_token=!0)},p.prototype.indent=function(){this._indentLevel++},p.prototype.outdent=function(){this._indentLevel>0&&this._indentLevel--},p.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var e=this._source_text,t=this._options.eol;"auto"===t&&(t="\n",e&&s.test(e||"")&&(t=e.match(s)[0]));var n=(e=e.replace(l,"\n")).match(/^[\t ]*/)[0];this._output=new r(this._options,n),this._input=new a(e),this._indentLevel=0,this._nestedLevel=0,this._ch=null;for(var i,p,m=0,f=!1,g=!1,b=!1,_=!1,w=!1,v=this._ch;i=""!==this._input.read(h),p=v,this._ch=this._input.next(),"\\"===this._ch&&this._input.hasNext()&&(this._ch+=this._input.next()),v=this._ch,this._ch;)if("/"===this._ch&&"*"===this._input.peek()){this._output.add_new_line(),this._input.back();var y=this._input.read(d),T=o.get_directives(y);T&&"start"===T.ignore&&(y+=o.readIgnored(this._input)),this.print_string(y),this.eatWhitespace(!0),this._output.add_new_line()}else if("/"===this._ch&&"/"===this._input.peek())this._output.space_before_token=!0,this._input.back(),this.print_string(this._input.read(u)),this.eatWhitespace(!0);else if("@"===this._ch)if(this.preserveSingleSpace(i),"{"===this._input.peek())this.print_string(this._ch+this.eatString("}"));else{this.print_string(this._ch);var k=this._input.peekUntilAfter(/[: ,;{}()[\]\/='"]/g);k.match(/[ :]$/)&&(k=this.eatString(": ").replace(/\s$/,""),this.print_string(k),this._output.space_before_token=!0),"extend"===(k=k.replace(/\s$/,""))?_=!0:"import"===k&&(w=!0),k in this.NESTED_AT_RULE?(this._nestedLevel+=1,k in this.CONDITIONAL_GROUP_RULE&&(b=!0)):f||0!==m||-1===k.indexOf(":")||(g=!0,this.indent())}else"#"===this._ch&&"{"===this._input.peek()?(this.preserveSingleSpace(i),this.print_string(this._ch+this.eatString("}"))):"{"===this._ch?(g&&(g=!1,this.outdent()),this.indent(),this._output.space_before_token=!0,this.print_string(this._ch),b?(b=!1,f=this._indentLevel>this._nestedLevel):f=this._indentLevel>=this._nestedLevel,this._options.newline_between_rules&&f&&this._output.previous_line&&"{"!==this._output.previous_line.item(-1)&&this._output.ensure_empty_line_above("/",","),this.eatWhitespace(!0),this._output.add_new_line()):"}"===this._ch?(this.outdent(),this._output.add_new_line(),"{"===p&&this._output.trim(!0),w=!1,_=!1,g&&(this.outdent(),g=!1),this.print_string(this._ch),f=!1,this._nestedLevel&&this._nestedLevel--,this.eatWhitespace(!0),this._output.add_new_line(),this._options.newline_between_rules&&!this._output.just_added_blankline()&&"}"!==this._input.peek()&&this._output.add_new_line(!0)):":"===this._ch?!f&&!b||this._input.lookBack("&")||this.foundNestedPseudoClass()||this._input.lookBack("(")||_||0!==m?(this._input.lookBack(" ")&&(this._output.space_before_token=!0),":"===this._input.peek()?(this._ch=this._input.next(),this.print_string("::")):this.print_string(":")):(this.print_string(":"),g||(g=!0,this._output.space_before_token=!0,this.eatWhitespace(!0),this.indent())):'"'===this._ch||"'"===this._ch?(this.preserveSingleSpace(i),this.print_string(this._ch+this.eatString(this._ch)),this.eatWhitespace(!0)):";"===this._ch?0===m?(g&&(this.outdent(),g=!1),_=!1,w=!1,this.print_string(this._ch),this.eatWhitespace(!0),"/"!==this._input.peek()&&this._output.add_new_line()):(this.print_string(this._ch),this.eatWhitespace(!0),this._output.space_before_token=!0):"("===this._ch?this._input.lookBack("url")?(this.print_string(this._ch),this.eatWhitespace(),m++,this.indent(),this._ch=this._input.next(),")"===this._ch||'"'===this._ch||"'"===this._ch?this._input.back():this._ch&&(this.print_string(this._ch+this.eatString(")")),m&&(m--,this.outdent()))):(this.preserveSingleSpace(i),this.print_string(this._ch),this.eatWhitespace(),m++,this.indent()):")"===this._ch?(m&&(m--,this.outdent()),this.print_string(this._ch)):","===this._ch?(this.print_string(this._ch),this.eatWhitespace(!0),!this._options.selector_separator_newline||g||0!==m||w?this._output.space_before_token=!0:this._output.add_new_line()):">"!==this._ch&&"+"!==this._ch&&"~"!==this._ch||g||0!==m?"]"===this._ch?this.print_string(this._ch):"["===this._ch?(this.preserveSingleSpace(i),this.print_string(this._ch)):"="===this._ch?(this.eatWhitespace(),this.print_string("="),c.test(this._ch)&&(this._ch="")):"!"!==this._ch||this._input.lookBack("\\")?(this.preserveSingleSpace(i),this.print_string(this._ch)):(this.print_string(" "),this.print_string(this._ch)):this._options.space_around_combinator?(this._output.space_before_token=!0,this.print_string(this._ch),this._output.space_before_token=!0):(this.print_string(this._ch),this.eatWhitespace(),this._ch&&c.test(this._ch)&&(this._ch=""));return this._output.get_code(t)},e.exports.Beautifier=p},function(e,t,n){var i=n(6).Options;function r(e){i.call(this,e,"css"),this.selector_separator_newline=this._get_boolean("selector_separator_newline",!0),this.newline_between_rules=this._get_boolean("newline_between_rules",!0);var t=this._get_boolean("space_around_selector_separator");this.space_around_combinator=this._get_boolean("space_around_combinator")||t}r.prototype=new i,e.exports.Options=r}]),function(e){var t={};function n(i){if(t[i])return t[i].exports;var r=t[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(i,r,function(t){return e[t]}.bind(null,r));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=18)}([,,function(e,t,n){function i(e){this.__parent=e,this.__character_count=0,this.__indent_count=-1,this.__alignment_count=0,this.__wrap_point_index=0,this.__wrap_point_character_count=0,this.__wrap_point_indent_count=-1,this.__wrap_point_alignment_count=0,this.__items=[]}function r(e,t){this.__cache=[""],this.__indent_size=e.indent_size,this.__indent_string=e.indent_char,e.indent_with_tabs||(this.__indent_string=new Array(e.indent_size+1).join(e.indent_char)),t=t||"",e.indent_level>0&&(t=new Array(e.indent_level+1).join(this.__indent_string)),this.__base_string=t,this.__base_string_length=t.length}function a(e,t){this.__indent_cache=new r(e,t),this.raw=!1,this._end_with_newline=e.end_with_newline,this.indent_size=e.indent_size,this.wrap_line_length=e.wrap_line_length,this.indent_empty_lines=e.indent_empty_lines,this.__lines=[],this.previous_line=null,this.current_line=null,this.next_line=new i(this),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1,this.__add_outputline()}i.prototype.clone_empty=function(){var e=new i(this.__parent);return e.set_indent(this.__indent_count,this.__alignment_count),e},i.prototype.item=function(e){return e<0?this.__items[this.__items.length+e]:this.__items[e]},i.prototype.has_match=function(e){for(var t=this.__items.length-1;t>=0;t--)if(this.__items[t].match(e))return!0;return!1},i.prototype.set_indent=function(e,t){this.is_empty()&&(this.__indent_count=e||0,this.__alignment_count=t||0,this.__character_count=this.__parent.get_indent_size(this.__indent_count,this.__alignment_count))},i.prototype._set_wrap_point=function(){this.__parent.wrap_line_length&&(this.__wrap_point_index=this.__items.length,this.__wrap_point_character_count=this.__character_count,this.__wrap_point_indent_count=this.__parent.next_line.__indent_count,this.__wrap_point_alignment_count=this.__parent.next_line.__alignment_count)},i.prototype._should_wrap=function(){return this.__wrap_point_index&&this.__character_count>this.__parent.wrap_line_length&&this.__wrap_point_character_count>this.__parent.next_line.__character_count},i.prototype._allow_wrap=function(){if(this._should_wrap()){this.__parent.add_new_line();var e=this.__parent.current_line;return e.set_indent(this.__wrap_point_indent_count,this.__wrap_point_alignment_count),e.__items=this.__items.slice(this.__wrap_point_index),this.__items=this.__items.slice(0,this.__wrap_point_index),e.__character_count+=this.__character_count-this.__wrap_point_character_count,this.__character_count=this.__wrap_point_character_count," "===e.__items[0]&&(e.__items.splice(0,1),e.__character_count-=1),!0}return!1},i.prototype.is_empty=function(){return 0===this.__items.length},i.prototype.last=function(){return this.is_empty()?null:this.__items[this.__items.length-1]},i.prototype.push=function(e){this.__items.push(e);var t=e.lastIndexOf("\n");-1!==t?this.__character_count=e.length-t:this.__character_count+=e.length},i.prototype.pop=function(){var e=null;return this.is_empty()||(e=this.__items.pop(),this.__character_count-=e.length),e},i.prototype._remove_indent=function(){this.__indent_count>0&&(this.__indent_count-=1,this.__character_count-=this.__parent.indent_size)},i.prototype._remove_wrap_indent=function(){this.__wrap_point_indent_count>0&&(this.__wrap_point_indent_count-=1)},i.prototype.trim=function(){for(;" "===this.last();)this.__items.pop(),this.__character_count-=1},i.prototype.toString=function(){var e="";return this.is_empty()?this.__parent.indent_empty_lines&&(e=this.__parent.get_indent_string(this.__indent_count)):(e=this.__parent.get_indent_string(this.__indent_count,this.__alignment_count),e+=this.__items.join("")),e},r.prototype.get_indent_size=function(e,t){var n=this.__base_string_length;return t=t||0,e<0&&(n=0),n+=e*this.__indent_size,n+=t},r.prototype.get_indent_string=function(e,t){var n=this.__base_string;return t=t||0,e<0&&(e=0,n=""),t+=e*this.__indent_size,this.__ensure_cache(t),n+=this.__cache[t]},r.prototype.__ensure_cache=function(e){for(;e>=this.__cache.length;)this.__add_column()},r.prototype.__add_column=function(){var e=this.__cache.length,t=0,n="";this.__indent_size&&e>=this.__indent_size&&(e-=(t=Math.floor(e/this.__indent_size))*this.__indent_size,n=new Array(t+1).join(this.__indent_string)),e&&(n+=new Array(e+1).join(" ")),this.__cache.push(n)},a.prototype.__add_outputline=function(){this.previous_line=this.current_line,this.current_line=this.next_line.clone_empty(),this.__lines.push(this.current_line)},a.prototype.get_line_number=function(){return this.__lines.length},a.prototype.get_indent_string=function(e,t){return this.__indent_cache.get_indent_string(e,t)},a.prototype.get_indent_size=function(e,t){return this.__indent_cache.get_indent_size(e,t)},a.prototype.is_empty=function(){return!this.previous_line&&this.current_line.is_empty()},a.prototype.add_new_line=function(e){return!(this.is_empty()||!e&&this.just_added_newline())&&(this.raw||this.__add_outputline(),!0)},a.prototype.get_code=function(e){this.trim(!0);var t=this.current_line.pop();t&&("\n"===t[t.length-1]&&(t=t.replace(/\n+$/g,"")),this.current_line.push(t)),this._end_with_newline&&this.__add_outputline();var n=this.__lines.join("\n");return"\n"!==e&&(n=n.replace(/[\n]/g,e)),n},a.prototype.set_wrap_point=function(){this.current_line._set_wrap_point()},a.prototype.set_indent=function(e,t){return e=e||0,t=t||0,this.next_line.set_indent(e,t),this.__lines.length>1?(this.current_line.set_indent(e,t),!0):(this.current_line.set_indent(),!1)},a.prototype.add_raw_token=function(e){for(var t=0;t<e.newlines;t++)this.__add_outputline();this.current_line.set_indent(-1),this.current_line.push(e.whitespace_before),this.current_line.push(e.text),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1},a.prototype.add_token=function(e){this.__add_space_before_token(),this.current_line.push(e),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=this.current_line._allow_wrap()},a.prototype.__add_space_before_token=function(){this.space_before_token&&!this.just_added_newline()&&(this.non_breaking_space||this.set_wrap_point(),this.current_line.push(" "))},a.prototype.remove_indent=function(e){for(var t=this.__lines.length;e<t;)this.__lines[e]._remove_indent(),e++;this.current_line._remove_wrap_indent()},a.prototype.trim=function(e){for(e=void 0!==e&&e,this.current_line.trim();e&&this.__lines.length>1&&this.current_line.is_empty();)this.__lines.pop(),this.current_line=this.__lines[this.__lines.length-1],this.current_line.trim();this.previous_line=this.__lines.length>1?this.__lines[this.__lines.length-2]:null},a.prototype.just_added_newline=function(){return this.current_line.is_empty()},a.prototype.just_added_blankline=function(){return this.is_empty()||this.current_line.is_empty()&&this.previous_line.is_empty()},a.prototype.ensure_empty_line_above=function(e,t){for(var n=this.__lines.length-2;n>=0;){var r=this.__lines[n];if(r.is_empty())break;if(0!==r.item(0).indexOf(e)&&r.item(-1)!==t){this.__lines.splice(n+1,0,new i(this)),this.previous_line=this.__lines[this.__lines.length-2];break}n--}},e.exports.Output=a},function(e,t,n){e.exports.Token=function(e,t,n,i){this.type=e,this.text=t,this.comments_before=null,this.newlines=n||0,this.whitespace_before=i||"",this.parent=null,this.next=null,this.previous=null,this.opened=null,this.closed=null,this.directives=null}},,,function(e,t,n){function i(e,t){this.raw_options=r(e,t),this.disabled=this._get_boolean("disabled"),this.eol=this._get_characters("eol","auto"),this.end_with_newline=this._get_boolean("end_with_newline"),this.indent_size=this._get_number("indent_size",4),this.indent_char=this._get_characters("indent_char"," "),this.indent_level=this._get_number("indent_level"),this.preserve_newlines=this._get_boolean("preserve_newlines",!0),this.max_preserve_newlines=this._get_number("max_preserve_newlines",32786),this.preserve_newlines||(this.max_preserve_newlines=0),this.indent_with_tabs=this._get_boolean("indent_with_tabs","\t"===this.indent_char),this.indent_with_tabs&&(this.indent_char="\t",1===this.indent_size&&(this.indent_size=4)),this.wrap_line_length=this._get_number("wrap_line_length",this._get_number("max_char")),this.indent_empty_lines=this._get_boolean("indent_empty_lines"),this.templating=this._get_selection_list("templating",["auto","none","django","erb","handlebars","php"],["auto"])}function r(e,t){var n,i={};for(n in e=a(e))n!==t&&(i[n]=e[n]);if(t&&e[t])for(n in e[t])i[n]=e[t][n];return i}function a(e){var t,n={};for(t in e){n[t.replace(/-/g,"_")]=e[t]}return n}i.prototype._get_array=function(e,t){var n=this.raw_options[e],i=t||[];return"object"==typeof n?null!==n&&"function"==typeof n.concat&&(i=n.concat()):"string"==typeof n&&(i=n.split(/[^a-zA-Z0-9_\/\-]+/)),i},i.prototype._get_boolean=function(e,t){var n=this.raw_options[e];return void 0===n?!!t:!!n},i.prototype._get_characters=function(e,t){var n=this.raw_options[e],i=t||"";return"string"==typeof n&&(i=n.replace(/\\r/,"\r").replace(/\\n/,"\n").replace(/\\t/,"\t")),i},i.prototype._get_number=function(e,t){var n=this.raw_options[e];t=parseInt(t,10),isNaN(t)&&(t=0);var i=parseInt(n,10);return isNaN(i)&&(i=t),i},i.prototype._get_selection=function(e,t,n){var i=this._get_selection_list(e,t,n);if(1!==i.length)throw new Error("Invalid Option Value: The option '"+e+"' can only be one of the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i[0]},i.prototype._get_selection_list=function(e,t,n){if(!t||0===t.length)throw new Error("Selection list cannot be empty.");if(n=n||[t[0]],!this._is_valid_selection(n,t))throw new Error("Invalid Default Value!");var i=this._get_array(e,n);if(!this._is_valid_selection(i,t))throw new Error("Invalid Option Value: The option '"+e+"' can contain only the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i},i.prototype._is_valid_selection=function(e,t){return e.length&&t.length&&!e.some((function(e){return-1===t.indexOf(e)}))},e.exports.Options=i,e.exports.normalizeOpts=a,e.exports.mergeOpts=r},,function(e,t,n){var i=RegExp.prototype.hasOwnProperty("sticky");function r(e){this.__input=e||"",this.__input_length=this.__input.length,this.__position=0}r.prototype.restart=function(){this.__position=0},r.prototype.back=function(){this.__position>0&&(this.__position-=1)},r.prototype.hasNext=function(){return this.__position<this.__input_length},r.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__input.charAt(this.__position),this.__position+=1),e},r.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__input_length&&(t=this.__input.charAt(e)),t},r.prototype.__match=function(e,t){e.lastIndex=t;var n=e.exec(this.__input);return!n||i&&e.sticky||n.index!==t&&(n=null),n},r.prototype.test=function(e,t){return t=t||0,(t+=this.__position)>=0&&t<this.__input_length&&!!this.__match(e,t)},r.prototype.testChar=function(e,t){var n=this.peek(t);return e.lastIndex=0,null!==n&&e.test(n)},r.prototype.match=function(e){var t=this.__match(e,this.__position);return t?this.__position+=t[0].length:t=null,t},r.prototype.read=function(e,t,n){var i,r="";return e&&(i=this.match(e))&&(r+=i[0]),!t||!i&&e||(r+=this.readUntil(t,n)),r},r.prototype.readUntil=function(e,t){var n,i=this.__position;e.lastIndex=this.__position;var r=e.exec(this.__input);return r?(i=r.index,t&&(i+=r[0].length)):i=this.__input_length,n=this.__input.substring(this.__position,i),this.__position=i,n},r.prototype.readUntilAfter=function(e){return this.readUntil(e,!0)},r.prototype.get_regexp=function(e,t){var n=null,r="g";return t&&i&&(r="y"),"string"==typeof e&&""!==e?n=new RegExp(e,r):e&&(n=new RegExp(e.source,r)),n},r.prototype.get_literal_regexp=function(e){return RegExp(e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"))},r.prototype.peekUntilAfter=function(e){var t=this.__position,n=this.readUntilAfter(e);return this.__position=t,n},r.prototype.lookBack=function(e){var t=this.__position-1;return t>=e.length&&this.__input.substring(t-e.length,t).toLowerCase()===e},e.exports.InputScanner=r},function(e,t,n){var i=n(8).InputScanner,r=n(3).Token,a=n(10).TokenStream,o=n(11).WhitespacePattern,s={START:"TK_START",RAW:"TK_RAW",EOF:"TK_EOF"},l=function(e,t){this._input=new i(e),this._options=t||{},this.__tokens=null,this._patterns={},this._patterns.whitespace=new o(this._input)};l.prototype.tokenize=function(){var e;this._input.restart(),this.__tokens=new a,this._reset();for(var t=new r(s.START,""),n=null,i=[],o=new a;t.type!==s.EOF;){for(e=this._get_next_token(t,n);this._is_comment(e);)o.add(e),e=this._get_next_token(t,n);o.isEmpty()||(e.comments_before=o,o=new a),e.parent=n,this._is_opening(e)?(i.push(n),n=e):n&&this._is_closing(e,n)&&(e.opened=n,n.closed=e,n=i.pop(),e.parent=n),e.previous=t,t.next=e,this.__tokens.add(e),t=e}return this.__tokens},l.prototype._is_first_token=function(){return this.__tokens.isEmpty()},l.prototype._reset=function(){},l.prototype._get_next_token=function(e,t){this._readWhitespace();var n=this._input.read(/.+/g);return n?this._create_token(s.RAW,n):this._create_token(s.EOF,"")},l.prototype._is_comment=function(e){return!1},l.prototype._is_opening=function(e){return!1},l.prototype._is_closing=function(e,t){return!1},l.prototype._create_token=function(e,t){return new r(e,t,this._patterns.whitespace.newline_count,this._patterns.whitespace.whitespace_before_token)},l.prototype._readWhitespace=function(){return this._patterns.whitespace.read()},e.exports.Tokenizer=l,e.exports.TOKEN=s},function(e,t,n){function i(e){this.__tokens=[],this.__tokens_length=this.__tokens.length,this.__position=0,this.__parent_token=e}i.prototype.restart=function(){this.__position=0},i.prototype.isEmpty=function(){return 0===this.__tokens_length},i.prototype.hasNext=function(){return this.__position<this.__tokens_length},i.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__tokens[this.__position],this.__position+=1),e},i.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__tokens_length&&(t=this.__tokens[e]),t},i.prototype.add=function(e){this.__parent_token&&(e.parent=this.__parent_token),this.__tokens.push(e),this.__tokens_length+=1},e.exports.TokenStream=i},function(e,t,n){var i=n(12).Pattern;function r(e,t){i.call(this,e,t),t?this._line_regexp=this._input.get_regexp(t._line_regexp):this.__set_whitespace_patterns("",""),this.newline_count=0,this.whitespace_before_token=""}r.prototype=new i,r.prototype.__set_whitespace_patterns=function(e,t){e+="\\t ",t+="\\n\\r",this._match_pattern=this._input.get_regexp("["+e+t+"]+",!0),this._newline_regexp=this._input.get_regexp("\\r\\n|["+t+"]")},r.prototype.read=function(){this.newline_count=0,this.whitespace_before_token="";var e=this._input.read(this._match_pattern);if(" "===e)this.whitespace_before_token=" ";else if(e){var t=this.__split(this._newline_regexp,e);this.newline_count=t.length-1,this.whitespace_before_token=t[this.newline_count]}return e},r.prototype.matching=function(e,t){var n=this._create();return n.__set_whitespace_patterns(e,t),n._update(),n},r.prototype._create=function(){return new r(this._input,this)},r.prototype.__split=function(e,t){e.lastIndex=0;for(var n=0,i=[],r=e.exec(t);r;)i.push(t.substring(n,r.index)),n=r.index+r[0].length,r=e.exec(t);return n<t.length?i.push(t.substring(n,t.length)):i.push(""),i},e.exports.WhitespacePattern=r},function(e,t,n){function i(e,t){this._input=e,this._starting_pattern=null,this._match_pattern=null,this._until_pattern=null,this._until_after=!1,t&&(this._starting_pattern=this._input.get_regexp(t._starting_pattern,!0),this._match_pattern=this._input.get_regexp(t._match_pattern,!0),this._until_pattern=this._input.get_regexp(t._until_pattern),this._until_after=t._until_after)}i.prototype.read=function(){var e=this._input.read(this._starting_pattern);return this._starting_pattern&&!e||(e+=this._input.read(this._match_pattern,this._until_pattern,this._until_after)),e},i.prototype.read_match=function(){return this._input.match(this._match_pattern)},i.prototype.until_after=function(e){var t=this._create();return t._until_after=!0,t._until_pattern=this._input.get_regexp(e),t._update(),t},i.prototype.until=function(e){var t=this._create();return t._until_after=!1,t._until_pattern=this._input.get_regexp(e),t._update(),t},i.prototype.starting_with=function(e){var t=this._create();return t._starting_pattern=this._input.get_regexp(e,!0),t._update(),t},i.prototype.matching=function(e){var t=this._create();return t._match_pattern=this._input.get_regexp(e,!0),t._update(),t},i.prototype._create=function(){return new i(this._input,this)},i.prototype._update=function(){},e.exports.Pattern=i},function(e,t,n){function i(e,t){e="string"==typeof e?e:e.source,t="string"==typeof t?t:t.source,this.__directives_block_pattern=new RegExp(e+/ beautify( \w+[:]\w+)+ /.source+t,"g"),this.__directive_pattern=/ (\w+)[:](\w+)/g,this.__directives_end_ignore_pattern=new RegExp(e+/\sbeautify\signore:end\s/.source+t,"g")}i.prototype.get_directives=function(e){if(!e.match(this.__directives_block_pattern))return null;var t={};this.__directive_pattern.lastIndex=0;for(var n=this.__directive_pattern.exec(e);n;)t[n[1]]=n[2],n=this.__directive_pattern.exec(e);return t},i.prototype.readIgnored=function(e){return e.readUntilAfter(this.__directives_end_ignore_pattern)},e.exports.Directives=i},function(e,t,n){var i=n(12).Pattern,r={django:!1,erb:!1,handlebars:!1,php:!1};function a(e,t){i.call(this,e,t),this.__template_pattern=null,this._disabled=Object.assign({},r),this._excluded=Object.assign({},r),t&&(this.__template_pattern=this._input.get_regexp(t.__template_pattern),this._excluded=Object.assign(this._excluded,t._excluded),this._disabled=Object.assign(this._disabled,t._disabled));var n=new i(e);this.__patterns={handlebars_comment:n.starting_with(/{{!--/).until_after(/--}}/),handlebars_unescaped:n.starting_with(/{{{/).until_after(/}}}/),handlebars:n.starting_with(/{{/).until_after(/}}/),php:n.starting_with(/<\?(?:[=]|php)/).until_after(/\?>/),erb:n.starting_with(/<%[^%]/).until_after(/[^%]%>/),django:n.starting_with(/{%/).until_after(/%}/),django_value:n.starting_with(/{{/).until_after(/}}/),django_comment:n.starting_with(/{#/).until_after(/#}/)}}a.prototype=new i,a.prototype._create=function(){return new a(this._input,this)},a.prototype._update=function(){this.__set_templated_pattern()},a.prototype.disable=function(e){var t=this._create();return t._disabled[e]=!0,t._update(),t},a.prototype.read_options=function(e){var t=this._create();for(var n in r)t._disabled[n]=-1===e.templating.indexOf(n);return t._update(),t},a.prototype.exclude=function(e){var t=this._create();return t._excluded[e]=!0,t._update(),t},a.prototype.read=function(){var e="";e=this._match_pattern?this._input.read(this._starting_pattern):this._input.read(this._starting_pattern,this.__template_pattern);for(var t=this._read_template();t;)this._match_pattern?t+=this._input.read(this._match_pattern):t+=this._input.readUntil(this.__template_pattern),e+=t,t=this._read_template();return this._until_after&&(e+=this._input.readUntilAfter(this._until_pattern)),e},a.prototype.__set_templated_pattern=function(){var e=[];this._disabled.php||e.push(this.__patterns.php._starting_pattern.source),this._disabled.handlebars||e.push(this.__patterns.handlebars._starting_pattern.source),this._disabled.erb||e.push(this.__patterns.erb._starting_pattern.source),this._disabled.django||(e.push(this.__patterns.django._starting_pattern.source),e.push(this.__patterns.django_value._starting_pattern.source),e.push(this.__patterns.django_comment._starting_pattern.source)),this._until_pattern&&e.push(this._until_pattern.source),this.__template_pattern=this._input.get_regexp("(?:"+e.join("|")+")")},a.prototype._read_template=function(){var e="",t=this._input.peek();if("<"===t){var n=this._input.peek(1);this._disabled.php||this._excluded.php||"?"!==n||(e=e||this.__patterns.php.read()),this._disabled.erb||this._excluded.erb||"%"!==n||(e=e||this.__patterns.erb.read())}else"{"===t&&(this._disabled.handlebars||this._excluded.handlebars||(e=(e=(e=e||this.__patterns.handlebars_comment.read())||this.__patterns.handlebars_unescaped.read())||this.__patterns.handlebars.read()),this._disabled.django||(this._excluded.django||this._excluded.handlebars||(e=e||this.__patterns.django_value.read()),this._excluded.django||(e=(e=e||this.__patterns.django_comment.read())||this.__patterns.django.read())));return e},e.exports.TemplatablePattern=a},,,,function(e,t,n){var i=n(19).Beautifier,r=n(20).Options;e.exports=function(e,t,n,r){return new i(e,t,n,r).beautify()},e.exports.defaultOptions=function(){return new r}},function(e,t,n){var i=n(20).Options,r=n(2).Output,a=n(21).Tokenizer,o=n(21).TOKEN,s=/\r\n|[\r\n]/,l=/\r\n|[\r\n]/g,c=function(e,t){this.indent_level=0,this.alignment_size=0,this.max_preserve_newlines=e.max_preserve_newlines,this.preserve_newlines=e.preserve_newlines,this._output=new r(e,t)};c.prototype.current_line_has_match=function(e){return this._output.current_line.has_match(e)},c.prototype.set_space_before_token=function(e,t){this._output.space_before_token=e,this._output.non_breaking_space=t},c.prototype.set_wrap_point=function(){this._output.set_indent(this.indent_level,this.alignment_size),this._output.set_wrap_point()},c.prototype.add_raw_token=function(e){this._output.add_raw_token(e)},c.prototype.print_preserved_newlines=function(e){var t=0;e.type!==o.TEXT&&e.previous.type!==o.TEXT&&(t=e.newlines?1:0),this.preserve_newlines&&(t=e.newlines<this.max_preserve_newlines+1?e.newlines:this.max_preserve_newlines+1);for(var n=0;n<t;n++)this.print_newline(n>0);return 0!==t},c.prototype.traverse_whitespace=function(e){return!(!e.whitespace_before&&!e.newlines)&&(this.print_preserved_newlines(e)||(this._output.space_before_token=!0),!0)},c.prototype.previous_token_wrapped=function(){return this._output.previous_token_wrapped},c.prototype.print_newline=function(e){this._output.add_new_line(e)},c.prototype.print_token=function(e){e.text&&(this._output.set_indent(this.indent_level,this.alignment_size),this._output.add_token(e.text))},c.prototype.indent=function(){this.indent_level++},c.prototype.get_full_indent=function(e){return(e=this.indent_level+(e||0))<1?"":this._output.get_indent_string(e)};var h=function(e,t){var n=null,i=null;return t.closed?("script"===e?n="text/javascript":"style"===e&&(n="text/css"),(n=function(e){for(var t=null,n=e.next;n.type!==o.EOF&&e.closed!==n;){if(n.type===o.ATTRIBUTE&&"type"===n.text){n.next&&n.next.type===o.EQUALS&&n.next.next&&n.next.next.type===o.VALUE&&(t=n.next.next.text);break}n=n.next}return t}(t)||n).search("text/css")>-1?i="css":n.search(/(text|application|dojo)\/(x-)?(javascript|ecmascript|jscript|livescript|(ld\+)?json|method|aspect)/)>-1?i="javascript":n.search(/(text|application|dojo)\/(x-)?(html)/)>-1?i="html":n.search(/test\/null/)>-1&&(i="null"),i):null};function d(e,t){return-1!==t.indexOf(e)}function u(e,t,n){this.parent=e||null,this.tag=t?t.tag_name:"",this.indent_level=n||0,this.parser_token=t||null}function p(e){this._printer=e,this._current_frame=null}function m(e,t,n,r){this._source_text=e||"",t=t||{},this._js_beautify=n,this._css_beautify=r,this._tag_stack=null;var a=new i(t,"html");this._options=a,this._is_wrap_attributes_force="force"===this._options.wrap_attributes.substr(0,"force".length),this._is_wrap_attributes_force_expand_multiline="force-expand-multiline"===this._options.wrap_attributes,this._is_wrap_attributes_force_aligned="force-aligned"===this._options.wrap_attributes,this._is_wrap_attributes_aligned_multiple="aligned-multiple"===this._options.wrap_attributes,this._is_wrap_attributes_preserve="preserve"===this._options.wrap_attributes.substr(0,"preserve".length),this._is_wrap_attributes_preserve_aligned="preserve-aligned"===this._options.wrap_attributes}p.prototype.get_parser_token=function(){return this._current_frame?this._current_frame.parser_token:null},p.prototype.record_tag=function(e){var t=new u(this._current_frame,e,this._printer.indent_level);this._current_frame=t},p.prototype._try_pop_frame=function(e){var t=null;return e&&(t=e.parser_token,this._printer.indent_level=e.indent_level,this._current_frame=e.parent),t},p.prototype._get_frame=function(e,t){for(var n=this._current_frame;n&&-1===e.indexOf(n.tag);){if(t&&-1!==t.indexOf(n.tag)){n=null;break}n=n.parent}return n},p.prototype.try_pop=function(e,t){var n=this._get_frame([e],t);return this._try_pop_frame(n)},p.prototype.indent_to_tag=function(e){var t=this._get_frame(e);t&&(this._printer.indent_level=t.indent_level)},m.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var e=this._source_text,t=this._options.eol;"auto"===this._options.eol&&(t="\n",e&&s.test(e)&&(t=e.match(s)[0]));var n=(e=e.replace(l,"\n")).match(/^[\t ]*/)[0],i={text:"",type:""},r=new f,h=new c(this._options,n),d=new a(e,this._options).tokenize();this._tag_stack=new p(h);for(var u=null,m=d.next();m.type!==o.EOF;)m.type===o.TAG_OPEN||m.type===o.COMMENT?r=u=this._handle_tag_open(h,m,r,i):m.type===o.ATTRIBUTE||m.type===o.EQUALS||m.type===o.VALUE||m.type===o.TEXT&&!r.tag_complete?u=this._handle_inside_tag(h,m,r,d):m.type===o.TAG_CLOSE?u=this._handle_tag_close(h,m,r):m.type===o.TEXT?u=this._handle_text(h,m,r):h.add_raw_token(m),i=u,m=d.next();return h._output.get_code(t)},m.prototype._handle_tag_close=function(e,t,n){var i={text:t.text,type:t.type};return e.alignment_size=0,n.tag_complete=!0,e.set_space_before_token(t.newlines||""!==t.whitespace_before,!0),n.is_unformatted?e.add_raw_token(t):("<"===n.tag_start_char&&(e.set_space_before_token("/"===t.text[0],!0),this._is_wrap_attributes_force_expand_multiline&&n.has_wrapped_attrs&&e.print_newline(!1)),e.print_token(t)),!n.indent_content||n.is_unformatted||n.is_content_unformatted||(e.indent(),n.indent_content=!1),n.is_inline_element||n.is_unformatted||n.is_content_unformatted||e.set_wrap_point(),i},m.prototype._handle_inside_tag=function(e,t,n,i){var r=n.has_wrapped_attrs,a={text:t.text,type:t.type};if(e.set_space_before_token(t.newlines||""!==t.whitespace_before,!0),n.is_unformatted)e.add_raw_token(t);else if("{"===n.tag_start_char&&t.type===o.TEXT)e.print_preserved_newlines(t)?(t.newlines=0,e.add_raw_token(t)):e.print_token(t);else{if(t.type===o.ATTRIBUTE?(e.set_space_before_token(!0),n.attr_count+=1):(t.type===o.EQUALS||t.type===o.VALUE&&t.previous.type===o.EQUALS)&&e.set_space_before_token(!1),t.type===o.ATTRIBUTE&&"<"===n.tag_start_char&&((this._is_wrap_attributes_preserve||this._is_wrap_attributes_preserve_aligned)&&(e.traverse_whitespace(t),r=r||0!==t.newlines),this._is_wrap_attributes_force)){var s=n.attr_count>1;if(this._is_wrap_attributes_force_expand_multiline&&1===n.attr_count){var l,c=!0,h=0;do{if((l=i.peek(h)).type===o.ATTRIBUTE){c=!1;break}h+=1}while(h<4&&l.type!==o.EOF&&l.type!==o.TAG_CLOSE);s=!c}s&&(e.print_newline(!1),r=!0)}e.print_token(t),r=r||e.previous_token_wrapped(),n.has_wrapped_attrs=r}return a},m.prototype._handle_text=function(e,t,n){var i={text:t.text,type:"TK_CONTENT"};return n.custom_beautifier_name?this._print_custom_beatifier_text(e,t,n):n.is_unformatted||n.is_content_unformatted?e.add_raw_token(t):(e.traverse_whitespace(t),e.print_token(t)),i},m.prototype._print_custom_beatifier_text=function(e,t,n){var i=this;if(""!==t.text){var r,a=t.text,o=1,s="",l="";"javascript"===n.custom_beautifier_name&&"function"==typeof this._js_beautify?r=this._js_beautify:"css"===n.custom_beautifier_name&&"function"==typeof this._css_beautify?r=this._css_beautify:"html"===n.custom_beautifier_name&&(r=function(e,t){return new m(e,t,i._js_beautify,i._css_beautify).beautify()}),"keep"===this._options.indent_scripts?o=0:"separate"===this._options.indent_scripts&&(o=-e.indent_level);var c=e.get_full_indent(o);if(a=a.replace(/\n[ \t]*$/,""),"html"!==n.custom_beautifier_name&&"<"===a[0]&&a.match(/^(<!--|<!\[CDATA\[)/)){var h=/^(<!--[^\n]*|<!\[CDATA\[)(\n?)([ \t\n]*)([\s\S]*)(-->|]]>)$/.exec(a);if(!h)return void e.add_raw_token(t);s=c+h[1]+"\n",a=h[4],h[5]&&(l=c+h[5]),a=a.replace(/\n[ \t]*$/,""),(h[2]||-1!==h[3].indexOf("\n"))&&(h=h[3].match(/[ \t]+$/))&&(t.whitespace_before=h[0])}if(a)if(r){var d=function(){this.eol="\n"};d.prototype=this._options.raw_options,a=r(c+a,new d)}else{var u=t.whitespace_before;u&&(a=a.replace(new RegExp("\n("+u+")?","g"),"\n")),a=c+a.replace(/\n/g,"\n"+c)}s&&(a=a?s+a+"\n"+l:s+l),e.print_newline(!1),a&&(t.text=a,t.whitespace_before="",t.newlines=0,e.add_raw_token(t),e.print_newline(!0))}},m.prototype._handle_tag_open=function(e,t,n,i){var r=this._get_tag_open_token(t);return(n.is_unformatted||n.is_content_unformatted)&&t.type===o.TAG_OPEN&&0===t.text.indexOf("</")?e.add_raw_token(t):(e.traverse_whitespace(t),this._set_tag_position(e,t,r,n,i),r.is_inline_element||e.set_wrap_point(),e.print_token(t)),(this._is_wrap_attributes_force_aligned||this._is_wrap_attributes_aligned_multiple||this._is_wrap_attributes_preserve_aligned)&&(r.alignment_size=t.text.length+1),r.tag_complete||r.is_unformatted||(e.alignment_size=r.alignment_size),r};var f=function(e,t){var n;(this.parent=e||null,this.text="",this.type="TK_TAG_OPEN",this.tag_name="",this.is_inline_element=!1,this.is_unformatted=!1,this.is_content_unformatted=!1,this.is_empty_element=!1,this.is_start_tag=!1,this.is_end_tag=!1,this.indent_content=!1,this.multiline_content=!1,this.custom_beautifier_name=null,this.start_tag_token=null,this.attr_count=0,this.has_wrapped_attrs=!1,this.alignment_size=0,this.tag_complete=!1,this.tag_start_char="",this.tag_check="",t)?(this.tag_start_char=t.text[0],this.text=t.text,"<"===this.tag_start_char?(n=t.text.match(/^<([^\s>]*)/),this.tag_check=n?n[1]:""):(n=t.text.match(/^{{[#\^]?([^\s}]+)/),this.tag_check=n?n[1]:""),this.tag_check=this.tag_check.toLowerCase(),t.type===o.COMMENT&&(this.tag_complete=!0),this.is_start_tag="/"!==this.tag_check.charAt(0),this.tag_name=this.is_start_tag?this.tag_check:this.tag_check.substr(1),this.is_end_tag=!this.is_start_tag||t.closed&&"/>"===t.closed.text,this.is_end_tag=this.is_end_tag||"{"===this.tag_start_char&&(this.text.length<3||/[^#\^]/.test(this.text.charAt(2)))):this.tag_complete=!0};m.prototype._get_tag_open_token=function(e){var t=new f(this._tag_stack.get_parser_token(),e);return t.alignment_size=this._options.wrap_attributes_indent_size,t.is_end_tag=t.is_end_tag||d(t.tag_check,this._options.void_elements),t.is_empty_element=t.tag_complete||t.is_start_tag&&t.is_end_tag,t.is_unformatted=!t.tag_complete&&d(t.tag_check,this._options.unformatted),t.is_content_unformatted=!t.is_empty_element&&d(t.tag_check,this._options.content_unformatted),t.is_inline_element=d(t.tag_name,this._options.inline)||"{"===t.tag_start_char,t},m.prototype._set_tag_position=function(e,t,n,i,r){if(n.is_empty_element||(n.is_end_tag?n.start_tag_token=this._tag_stack.try_pop(n.tag_name):(this._do_optional_end_element(n)&&(n.is_inline_element||(n.parent&&(n.parent.multiline_content=!0),e.print_newline(!1))),this._tag_stack.record_tag(n),"script"!==n.tag_name&&"style"!==n.tag_name||n.is_unformatted||n.is_content_unformatted||(n.custom_beautifier_name=h(n.tag_check,t)))),d(n.tag_check,this._options.extra_liners)&&(e.print_newline(!1),e._output.just_added_blankline()||e.print_newline(!0)),n.is_empty_element){if("{"===n.tag_start_char&&"else"===n.tag_check)this._tag_stack.indent_to_tag(["if","unless","each"]),n.indent_content=!0,e.current_line_has_match(/{{#if/)||e.print_newline(!1);"!--"===n.tag_name&&r.type===o.TAG_CLOSE&&i.is_end_tag&&-1===n.text.indexOf("\n")||n.is_inline_element||n.is_unformatted||e.print_newline(!1)}else n.is_unformatted||n.is_content_unformatted?n.is_inline_element||n.is_unformatted||e.print_newline(!1):n.is_end_tag?(n.start_tag_token&&n.start_tag_token.multiline_content||!(n.is_inline_element||i.is_inline_element||r.type===o.TAG_CLOSE&&n.start_tag_token===i||"TK_CONTENT"===r.type))&&e.print_newline(!1):(n.indent_content=!n.custom_beautifier_name,"<"===n.tag_start_char&&("html"===n.tag_name?n.indent_content=this._options.indent_inner_html:"head"===n.tag_name?n.indent_content=this._options.indent_head_inner_html:"body"===n.tag_name&&(n.indent_content=this._options.indent_body_inner_html)),n.is_inline_element||"TK_CONTENT"===r.type||(n.parent&&(n.parent.multiline_content=!0),e.print_newline(!1)))},m.prototype._do_optional_end_element=function(e){var t=null;if(!e.is_empty_element&&e.is_start_tag&&e.parent)return"body"===e.tag_name?t=t||this._tag_stack.try_pop("head"):"li"===e.tag_name?t=t||this._tag_stack.try_pop("li",["ol","ul"]):"dd"===e.tag_name||"dt"===e.tag_name?t=(t=t||this._tag_stack.try_pop("dt",["dl"]))||this._tag_stack.try_pop("dd",["dl"]):"rp"===e.tag_name||"rt"===e.tag_name?t=(t=t||this._tag_stack.try_pop("rt",["ruby","rtc"]))||this._tag_stack.try_pop("rp",["ruby","rtc"]):"optgroup"===e.tag_name?t=t||this._tag_stack.try_pop("optgroup",["select"]):"option"===e.tag_name?t=t||this._tag_stack.try_pop("option",["select","datalist","optgroup"]):"colgroup"===e.tag_name?t=t||this._tag_stack.try_pop("caption",["table"]):"thead"===e.tag_name?t=(t=t||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]):"tbody"===e.tag_name||"tfoot"===e.tag_name?t=(t=(t=(t=t||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]))||this._tag_stack.try_pop("thead",["table"]))||this._tag_stack.try_pop("tbody",["table"]):"tr"===e.tag_name?t=(t=(t=t||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]))||this._tag_stack.try_pop("tr",["table","thead","tbody","tfoot"]):"th"!==e.tag_name&&"td"!==e.tag_name||(t=(t=t||this._tag_stack.try_pop("td",["table","thead","tbody","tfoot","tr"]))||this._tag_stack.try_pop("th",["table","thead","tbody","tfoot","tr"])),e.parent=this._tag_stack.get_parser_token(),t},e.exports.Beautifier=m},function(e,t,n){var i=n(6).Options;function r(e){i.call(this,e,"html"),1===this.templating.length&&"auto"===this.templating[0]&&(this.templating=["django","erb","handlebars","php"]),this.indent_inner_html=this._get_boolean("indent_inner_html"),this.indent_body_inner_html=this._get_boolean("indent_body_inner_html",!0),this.indent_head_inner_html=this._get_boolean("indent_head_inner_html",!0),this.indent_handlebars=this._get_boolean("indent_handlebars",!0),this.wrap_attributes=this._get_selection("wrap_attributes",["auto","force","force-aligned","force-expand-multiline","aligned-multiple","preserve","preserve-aligned"]),this.wrap_attributes_indent_size=this._get_number("wrap_attributes_indent_size",this.indent_size),this.extra_liners=this._get_array("extra_liners",["head","body","/html"]),this.inline=this._get_array("inline",["a","abbr","area","audio","b","bdi","bdo","br","button","canvas","cite","code","data","datalist","del","dfn","em","embed","i","iframe","img","input","ins","kbd","keygen","label","map","mark","math","meter","noscript","object","output","progress","q","ruby","s","samp","select","small","span","strong","sub","sup","svg","template","textarea","time","u","var","video","wbr","text","acronym","big","strike","tt"]),this.void_elements=this._get_array("void_elements",["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr","!doctype","?xml","basefont","isindex"]),this.unformatted=this._get_array("unformatted",[]),this.content_unformatted=this._get_array("content_unformatted",["pre","textarea"]),this.unformatted_content_delimiter=this._get_characters("unformatted_content_delimiter"),this.indent_scripts=this._get_selection("indent_scripts",["normal","keep","separate"])}r.prototype=new i,e.exports.Options=r},function(e,t,n){var i=n(9).Tokenizer,r=n(9).TOKEN,a=n(13).Directives,o=n(14).TemplatablePattern,s=n(12).Pattern,l={TAG_OPEN:"TK_TAG_OPEN",TAG_CLOSE:"TK_TAG_CLOSE",ATTRIBUTE:"TK_ATTRIBUTE",EQUALS:"TK_EQUALS",VALUE:"TK_VALUE",COMMENT:"TK_COMMENT",TEXT:"TK_TEXT",UNKNOWN:"TK_UNKNOWN",START:r.START,RAW:r.RAW,EOF:r.EOF},c=new a(/<\!--/,/-->/),h=function(e,t){i.call(this,e,t),this._current_tag_name="";var n=new o(this._input).read_options(this._options),r=new s(this._input);if(this.__patterns={word:n.until(/[\n\r\t <]/),single_quote:n.until_after(/'/),double_quote:n.until_after(/"/),attribute:n.until(/[\n\r\t =\/>]/),element_name:n.until(/[\n\r\t >\/]/),handlebars_comment:r.starting_with(/{{!--/).until_after(/--}}/),handlebars:r.starting_with(/{{/).until_after(/}}/),handlebars_open:r.until(/[\n\r\t }]/),handlebars_raw_close:r.until(/}}/),comment:r.starting_with(/<!--/).until_after(/-->/),cdata:r.starting_with(/<!\[CDATA\[/).until_after(/]]>/),conditional_comment:r.starting_with(/<!\[/).until_after(/]>/),processing:r.starting_with(/<\?/).until_after(/\?>/)},this._options.indent_handlebars&&(this.__patterns.word=this.__patterns.word.exclude("handlebars")),this._unformatted_content_delimiter=null,this._options.unformatted_content_delimiter){var a=this._input.get_literal_regexp(this._options.unformatted_content_delimiter);this.__patterns.unformatted_content_delimiter=r.matching(a).until_after(a)}};(h.prototype=new i)._is_comment=function(e){return!1},h.prototype._is_opening=function(e){return e.type===l.TAG_OPEN},h.prototype._is_closing=function(e,t){return e.type===l.TAG_CLOSE&&t&&((">"===e.text||"/>"===e.text)&&"<"===t.text[0]||"}}"===e.text&&"{"===t.text[0]&&"{"===t.text[1])},h.prototype._reset=function(){this._current_tag_name=""},h.prototype._get_next_token=function(e,t){var n=null;this._readWhitespace();var i=this._input.peek();return null===i?this._create_token(l.EOF,""):n=(n=(n=(n=(n=(n=(n=(n=(n=n||this._read_open_handlebars(i,t))||this._read_attribute(i,e,t))||this._read_raw_content(i,e,t))||this._read_close(i,t))||this._read_content_word(i))||this._read_comment_or_cdata(i))||this._read_processing(i))||this._read_open(i,t))||this._create_token(l.UNKNOWN,this._input.next())},h.prototype._read_comment_or_cdata=function(e){var t=null,n=null,i=null;"<"===e&&("!"===this._input.peek(1)&&((n=this.__patterns.comment.read())?(i=c.get_directives(n))&&"start"===i.ignore&&(n+=c.readIgnored(this._input)):n=this.__patterns.cdata.read()),n&&((t=this._create_token(l.COMMENT,n)).directives=i));return t},h.prototype._read_processing=function(e){var t=null,n=null;if("<"===e){var i=this._input.peek(1);"!"!==i&&"?"!==i||(n=(n=this.__patterns.conditional_comment.read())||this.__patterns.processing.read()),n&&((t=this._create_token(l.COMMENT,n)).directives=null)}return t},h.prototype._read_open=function(e,t){var n=null,i=null;return t||"<"===e&&(n=this._input.next(),"/"===this._input.peek()&&(n+=this._input.next()),n+=this.__patterns.element_name.read(),i=this._create_token(l.TAG_OPEN,n)),i},h.prototype._read_open_handlebars=function(e,t){var n=null,i=null;return t||this._options.indent_handlebars&&"{"===e&&"{"===this._input.peek(1)&&("!"===this._input.peek(2)?(n=(n=this.__patterns.handlebars_comment.read())||this.__patterns.handlebars.read(),i=this._create_token(l.COMMENT,n)):(n=this.__patterns.handlebars_open.read(),i=this._create_token(l.TAG_OPEN,n))),i},h.prototype._read_close=function(e,t){var n=null,i=null;return t&&("<"===t.text[0]&&(">"===e||"/"===e&&">"===this._input.peek(1))?(n=this._input.next(),"/"===e&&(n+=this._input.next()),i=this._create_token(l.TAG_CLOSE,n)):"{"===t.text[0]&&"}"===e&&"}"===this._input.peek(1)&&(this._input.next(),this._input.next(),i=this._create_token(l.TAG_CLOSE,"}}"))),i},h.prototype._read_attribute=function(e,t,n){var i=null,r="";if(n&&"<"===n.text[0])if("="===e)i=this._create_token(l.EQUALS,this._input.next());else if('"'===e||"'"===e){var a=this._input.next();a+='"'===e?this.__patterns.double_quote.read():this.__patterns.single_quote.read(),i=this._create_token(l.VALUE,a)}else(r=this.__patterns.attribute.read())&&(i=t.type===l.EQUALS?this._create_token(l.VALUE,r):this._create_token(l.ATTRIBUTE,r));return i},h.prototype._is_content_unformatted=function(e){return-1===this._options.void_elements.indexOf(e)&&(-1!==this._options.content_unformatted.indexOf(e)||-1!==this._options.unformatted.indexOf(e))},h.prototype._read_raw_content=function(e,t,n){var i="";if(n&&"{"===n.text[0])i=this.__patterns.handlebars_raw_close.read();else if(t.type===l.TAG_CLOSE&&"<"===t.opened.text[0]){var r=t.opened.text.substr(1).toLowerCase();if("script"===r||"style"===r){var a=this._read_comment_or_cdata(e);if(a)return a.type=l.TEXT,a;i=this._input.readUntil(new RegExp("</"+r+"[\\n\\r\\t ]*?>","ig"))}else this._is_content_unformatted(r)&&(i=this._input.readUntil(new RegExp("</"+r+"[\\n\\r\\t ]*?>","ig")))}return i?this._create_token(l.TEXT,i):null},h.prototype._read_content_word=function(e){var t="";if(this._options.unformatted_content_delimiter&&e===this._options.unformatted_content_delimiter[0]&&(t=this.__patterns.unformatted_content_delimiter.read()),t||(t=this.__patterns.word.read()),t)return this._create_token(l.TEXT,t)},e.exports.Tokenizer=h,e.exports.TOKEN=l}]);var Ge,Ve,Ke,Je=(Ge=function(e,t){return(Ge=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)},function(e,t){function n(){this.constructor=e}Ge(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)});if("object"==typeof process)Ke="win32"===process.platform;else if("object"==typeof navigator){var Ye=navigator.userAgent;Ke=Ye.indexOf("Windows")>=0}var Xe=/^\w[\w\d+.-]*$/,$e=/^\//,Qe=/^\/\//;var Ze="/",et=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,tt=function(){function e(e,t,n,i,r,a){void 0===a&&(a=!1),"object"==typeof e?(this.scheme=e.scheme||"",this.authority=e.authority||"",this.path=e.path||"",this.query=e.query||"",this.fragment=e.fragment||""):(this.scheme=function(e,t){return e||t?e:"file"}(e,a),this.authority=t||"",this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==Ze&&(t=Ze+t):t=Ze}return t}(this.scheme,n||""),this.query=i||"",this.fragment=r||"",function(e,t){if(!e.scheme&&t)throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'+e.authority+'", path: "'+e.path+'", query: "'+e.query+'", fragment: "'+e.fragment+'"}');if(e.scheme&&!Xe.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!$e.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(Qe.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}(this,a))}return e.isUri=function(t){return t instanceof e||!!t&&("string"==typeof t.authority&&"string"==typeof t.fragment&&"string"==typeof t.path&&"string"==typeof t.query&&"string"==typeof t.scheme&&"function"==typeof t.fsPath&&"function"==typeof t.with&&"function"==typeof t.toString)},Object.defineProperty(e.prototype,"fsPath",{get:function(){return st(this)},enumerable:!0,configurable:!0}),e.prototype.with=function(e){if(!e)return this;var t=e.scheme,n=e.authority,i=e.path,r=e.query,a=e.fragment;return void 0===t?t=this.scheme:null===t&&(t=""),void 0===n?n=this.authority:null===n&&(n=""),void 0===i?i=this.path:null===i&&(i=""),void 0===r?r=this.query:null===r&&(r=""),void 0===a?a=this.fragment:null===a&&(a=""),t===this.scheme&&n===this.authority&&i===this.path&&r===this.query&&a===this.fragment?this:new it(t,n,i,r,a)},e.parse=function(e,t){void 0===t&&(t=!1);var n=et.exec(e);return n?new it(n[2]||"",decodeURIComponent(n[4]||""),decodeURIComponent(n[5]||""),decodeURIComponent(n[7]||""),decodeURIComponent(n[9]||""),t):new it("","","","","")},e.file=function(e){var t="";if(Ke&&(e=e.replace(/\\/g,Ze)),e[0]===Ze&&e[1]===Ze){var n=e.indexOf(Ze,2);-1===n?(t=e.substring(2),e=Ze):(t=e.substring(2,n),e=e.substring(n)||Ze)}return new it("file",t,e,"","")},e.from=function(e){return new it(e.scheme,e.authority,e.path,e.query,e.fragment)},e.prototype.toString=function(e){return void 0===e&&(e=!1),lt(this,e)},e.prototype.toJSON=function(){return this},e.revive=function(t){if(t){if(t instanceof e)return t;var n=new it(t);return n._formatted=t.external,n._fsPath=t._sep===nt?t.fsPath:null,n}return t},e}(),nt=Ke?1:void 0,it=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._formatted=null,t._fsPath=null,t}return Je(t,e),Object.defineProperty(t.prototype,"fsPath",{get:function(){return this._fsPath||(this._fsPath=st(this)),this._fsPath},enumerable:!0,configurable:!0}),t.prototype.toString=function(e){return void 0===e&&(e=!1),e?lt(this,!0):(this._formatted||(this._formatted=lt(this,!1)),this._formatted)},t.prototype.toJSON=function(){var e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=nt),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e},t}(tt),rt=((Ve={})[58]="%3A",Ve[47]="%2F",Ve[63]="%3F",Ve[35]="%23",Ve[91]="%5B",Ve[93]="%5D",Ve[64]="%40",Ve[33]="%21",Ve[36]="%24",Ve[38]="%26",Ve[39]="%27",Ve[40]="%28",Ve[41]="%29",Ve[42]="%2A",Ve[43]="%2B",Ve[44]="%2C",Ve[59]="%3B",Ve[61]="%3D",Ve[32]="%20",Ve);function at(e,t){for(var n=void 0,i=-1,r=0;r<e.length;r++){var a=e.charCodeAt(r);if(a>=97&&a<=122||a>=65&&a<=90||a>=48&&a<=57||45===a||46===a||95===a||126===a||t&&47===a)-1!==i&&(n+=encodeURIComponent(e.substring(i,r)),i=-1),void 0!==n&&(n+=e.charAt(r));else{void 0===n&&(n=e.substr(0,r));var o=rt[a];void 0!==o?(-1!==i&&(n+=encodeURIComponent(e.substring(i,r)),i=-1),n+=o):-1===i&&(i=r)}}return-1!==i&&(n+=encodeURIComponent(e.substring(i))),void 0!==n?n:e}function ot(e){for(var t=void 0,n=0;n<e.length;n++){var i=e.charCodeAt(n);35===i||63===i?(void 0===t&&(t=e.substr(0,n)),t+=rt[i]):void 0!==t&&(t+=e[n])}return void 0!==t?t:e}function st(e){var t;return t=e.authority&&e.path.length>1&&"file"===e.scheme?"//"+e.authority+e.path:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?e.path[1].toLowerCase()+e.path.substr(2):e.path,Ke&&(t=t.replace(/\//g,"\\")),t}function lt(e,t){var n=t?ot:at,i="",r=e.scheme,a=e.authority,o=e.path,s=e.query,l=e.fragment;if(r&&(i+=r,i+=":"),(a||"file"===r)&&(i+=Ze,i+=Ze),a){var c=a.indexOf("@");if(-1!==c){var h=a.substr(0,c);a=a.substr(c+1),-1===(c=h.indexOf(":"))?i+=n(h,!1):(i+=n(h.substr(0,c),!1),i+=":",i+=n(h.substr(c+1),!1)),i+="@"}-1===(c=(a=a.toLowerCase()).indexOf(":"))?i+=n(a,!1):(i+=n(a.substr(0,c),!1),i+=a.substr(c))}if(o){if(o.length>=3&&47===o.charCodeAt(0)&&58===o.charCodeAt(2))(d=o.charCodeAt(1))>=65&&d<=90&&(o="/"+String.fromCharCode(d+32)+":"+o.substr(3));else if(o.length>=2&&58===o.charCodeAt(1)){var d;(d=o.charCodeAt(0))>=65&&d<=90&&(o=String.fromCharCode(d+32)+":"+o.substr(2))}i+=n(o,!0)}return s&&(i+="?",i+=n(s,!1)),l&&(i+="#",i+=t?l:at(l,!1)),i}var ct,ht=function(){function e(e,t,n,i){this._uri=e,this._languageId=t,this._version=n,this._content=i,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content},e.prototype.update=function(t,n){for(var i=0,r=t;i<r.length;i++){var a=r[i];if(e.isIncremental(a)){var o=ut(a.range),s=this.offsetAt(o.start),l=this.offsetAt(o.end);this._content=this._content.substring(0,s)+a.text+this._content.substring(l,this._content.length);var c=Math.max(o.start.line,0),h=Math.max(o.end.line,0),d=this._lineOffsets,u=dt(a.text,!1,s);if(h-c===u.length)for(var p=0,m=u.length;p<m;p++)d[p+c+1]=u[p];else u.length<1e4?d.splice.apply(d,[c+1,h-c].concat(u)):this._lineOffsets=d=d.slice(0,c+1).concat(u,d.slice(h+1));var f=a.text.length-(l-s);if(0!==f)for(p=c+1+u.length,m=d.length;p<m;p++)d[p]=d[p]+f}else{if(!e.isFull(a))throw new Error("Unknown change event received");this._content=a.text,this._lineOffsets=void 0}}this._version=n},e.prototype.getLineOffsets=function(){return void 0===this._lineOffsets&&(this._lineOffsets=dt(this._content,!0)),this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),n=0,i=t.length;if(0===i)return{line:0,character:e};for(;n<i;){var r=Math.floor((n+i)/2);t[r]>e?i=r:n=r+1}var a=n-1;return{line:a,character:e-t[a]}},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var n=t[e.line],i=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,i),n)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e.isIncremental=function(e){var t=e;return null!=t&&"string"==typeof t.text&&void 0!==t.range&&(void 0===t.rangeLength||"number"==typeof t.rangeLength)},e.isFull=function(e){var t=e;return null!=t&&"string"==typeof t.text&&void 0===t.range&&void 0===t.rangeLength},e}();function dt(e,t,n){void 0===n&&(n=0);for(var i=t?[n]:[],r=0;r<e.length;r++){var a=e.charCodeAt(r);13!==a&&10!==a||(13===a&&r+1<e.length&&10===e.charCodeAt(r+1)&&r++,i.push(n+r+1))}return i}function ut(e){var t=e.start,n=e.end;return t.line>n.line||t.line===n.line&&t.character>n.character?{start:n,end:t}:e}function pt(e){var t=ut(e.range);return t!==e.range?{newText:e.newText,range:t}:e}!function(e){e.create=function(e,t,n,i){return new ht(e,t,n,i)},e.update=function(e,t,n){if(e instanceof ht)return e.update(t,n),e;throw new Error("TextDocument.update: document must be created by TextDocument.create")},e.applyEdits=function(e,t){for(var n=e.getText(),i=function e(t,n){if(t.length<=1)return t;var i=t.length/2|0,r=t.slice(0,i),a=t.slice(i);e(r,n),e(a,n);var o=0,s=0,l=0;for(;o<r.length&&s<a.length;){var c=n(r[o],a[s]);t[l++]=c<=0?r[o++]:a[s++]}for(;o<r.length;)t[l++]=r[o++];for(;s<a.length;)t[l++]=a[s++];return t}(t.map(pt),(function(e,t){var n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n})),r=n.length,a=i.length-1;a>=0;a--){var o=i[a],s=e.offsetAt(o.range.start),l=e.offsetAt(o.range.end);if(!(l<=r))throw new Error("Overlapping edit");n=n.substring(0,s)+o.newText+n.substring(l,n.length),r=s}return n}}(ct||(ct={}));var mt=monaco.Uri,ft=monaco.Range,gt=function(){function e(e,t,n){var i=this;this._languageId=e,this._worker=t,this._disposables=[],this._listener=Object.create(null);var r=function(e){var t,n=e.getModeId();n===i._languageId&&(i._listener[e.uri.toString()]=e.onDidChangeContent((function(){clearTimeout(t),t=setTimeout((function(){return i._doValidate(e.uri,n)}),500)})),i._doValidate(e.uri,n))},a=function(e){monaco.editor.setModelMarkers(e,i._languageId,[]);var t=e.uri.toString(),n=i._listener[t];n&&(n.dispose(),delete i._listener[t])};this._disposables.push(monaco.editor.onDidCreateModel(r)),this._disposables.push(monaco.editor.onWillDisposeModel((function(e){a(e)}))),this._disposables.push(monaco.editor.onDidChangeModelLanguage((function(e){a(e.model),r(e.model)}))),this._disposables.push(n.onDidChange((function(e){monaco.editor.getModels().forEach((function(e){e.getModeId()===i._languageId&&(a(e),r(e))}))}))),this._disposables.push({dispose:function(){for(var e in i._listener)i._listener[e].dispose()}}),monaco.editor.getModels().forEach(r)}return e.prototype.dispose=function(){this._disposables.forEach((function(e){return e&&e.dispose()})),this._disposables=[]},e.prototype._doValidate=function(e,t){this._worker(e).then((function(n){return n.doValidation(e.toString()).then((function(n){var i=n.map((function(e){return n="number"==typeof(t=e).code?String(t.code):t.code,{severity:bt(t.severity),startLineNumber:t.range.start.line+1,startColumn:t.range.start.character+1,endLineNumber:t.range.end.line+1,endColumn:t.range.end.character+1,message:t.message,code:n,source:t.source};var t,n}));monaco.editor.setModelMarkers(monaco.editor.getModel(e),t,i)}))})).then(void 0,(function(e){console.error(e)}))},e}();function bt(e){switch(e){case p.Error:return monaco.MarkerSeverity.Error;case p.Warning:return monaco.MarkerSeverity.Warning;case p.Information:return monaco.MarkerSeverity.Info;case p.Hint:return monaco.MarkerSeverity.Hint;default:return monaco.MarkerSeverity.Info}}function _t(e){if(e)return{character:e.column-1,line:e.lineNumber-1}}function wt(e){if(e)return new ft(e.start.line+1,e.start.character+1,e.end.line+1,e.end.character+1)}function vt(e){var t=monaco.languages.CompletionItemKind;switch(e){case I.Text:return t.Text;case I.Method:return t.Method;case I.Function:return t.Function;case I.Constructor:return t.Constructor;case I.Field:return t.Field;case I.Variable:return t.Variable;case I.Class:return t.Class;case I.Interface:return t.Interface;case I.Module:return t.Module;case I.Property:return t.Property;case I.Unit:return t.Unit;case I.Value:return t.Value;case I.Enum:return t.Enum;case I.Keyword:return t.Keyword;case I.Snippet:return t.Snippet;case I.Color:return t.Color;case I.File:return t.File;case I.Reference:return t.Reference}return t.Property}function yt(e){if(e)return{range:wt(e.range),text:e.newText}}var Tt=function(){function e(e){this._worker=e}return Object.defineProperty(e.prototype,"triggerCharacters",{get:function(){return[".",":","<",'"',"=","/"]},enumerable:!0,configurable:!0}),e.prototype.provideCompletionItems=function(e,t,n,i){var r=e.uri;return this._worker(r).then((function(e){return e.doComplete(r.toString(),_t(t))})).then((function(n){if(n){var i=e.getWordUntilPosition(t),r=new ft(t.lineNumber,i.startColumn,t.lineNumber,i.endColumn),a=n.items.map((function(e){var t={label:e.label,insertText:e.insertText||e.label,sortText:e.sortText,filterText:e.filterText,documentation:e.documentation,detail:e.detail,range:r,kind:vt(e.kind)};return e.textEdit&&(t.range=wt(e.textEdit.range),t.insertText=e.textEdit.newText),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(yt)),e.insertTextFormat===H.Snippet&&(t.insertTextRules=monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet),t}));return{isIncomplete:n.isIncomplete,suggestions:a}}}))},e}();function kt(e){return"string"==typeof e?{value:e}:(t=e)&&"object"==typeof t&&"string"==typeof t.kind?"plaintext"===e.kind?{value:e.value.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}:{value:e.value}:{value:"```"+e.language+"\n"+e.value+"\n```\n"};var t}function St(e){if(e)return Array.isArray(e)?e.map(kt):[kt(e)]}var xt=function(){function e(e){this._worker=e}return e.prototype.provideHover=function(e,t,n){var i=e.uri;return this._worker(i).then((function(e){return e.doHover(i.toString(),_t(t))})).then((function(e){if(e)return{range:wt(e.range),contents:St(e.contents)}}))},e}();function Mt(e){var t=monaco.languages.DocumentHighlightKind;switch(e){case O.Read:return t.Read;case O.Write:return t.Write;case O.Text:return t.Text}return t.Text}var Lt=function(){function e(e){this._worker=e}return e.prototype.provideDocumentHighlights=function(e,t,n){var i=e.uri;return this._worker(i).then((function(e){return e.findDocumentHighlights(i.toString(),_t(t))})).then((function(e){if(e)return e.map((function(e){return{range:wt(e.range),kind:Mt(e.kind)}}))}))},e}();function Et(e){var t=monaco.languages.SymbolKind;switch(e){case j.File:return t.Array;case j.Module:return t.Module;case j.Namespace:return t.Namespace;case j.Package:return t.Package;case j.Class:return t.Class;case j.Method:return t.Method;case j.Property:return t.Property;case j.Field:return t.Field;case j.Constructor:return t.Constructor;case j.Enum:return t.Enum;case j.Interface:return t.Interface;case j.Function:return t.Function;case j.Variable:return t.Variable;case j.Constant:return t.Constant;case j.String:return t.String;case j.Number:return t.Number;case j.Boolean:return t.Boolean;case j.Array:return t.Array}return t.Function}var At=function(){function e(e){this._worker=e}return e.prototype.provideDocumentSymbols=function(e,t){var n=e.uri;return this._worker(n).then((function(e){return e.findDocumentSymbols(n.toString())})).then((function(e){if(e)return e.map((function(e){return{name:e.name,detail:"",containerName:e.containerName,kind:Et(e.kind),tags:[],range:wt(e.location.range),selectionRange:wt(e.location.range)}}))}))},e}(),Rt=function(){function e(e){this._worker=e}return e.prototype.provideLinks=function(e,t){var n=e.uri;return this._worker(n).then((function(e){return e.findDocumentLinks(n.toString())})).then((function(e){if(e)return{links:e.map((function(e){return{range:wt(e.range),url:e.target}}))}}))},e}();function zt(e){return{tabSize:e.tabSize,insertSpaces:e.insertSpaces}}var It=function(){function e(e){this._worker=e}return e.prototype.provideDocumentFormattingEdits=function(e,t,n){var i=e.uri;return this._worker(i).then((function(e){return e.format(i.toString(),null,zt(t)).then((function(e){if(e&&0!==e.length)return e.map(yt)}))}))},e}(),Ht=function(){function e(e){this._worker=e}return e.prototype.provideDocumentRangeFormattingEdits=function(e,t,n,i){var r=e.uri;return this._worker(r).then((function(e){return e.format(r.toString(),function(e){if(e)return{start:_t(e.getStartPosition()),end:_t(e.getEndPosition())}}(t),zt(n)).then((function(e){if(e&&0!==e.length)return e.map(yt)}))}))},e}(),Ut=function(){function e(e){this._worker=e}return e.prototype.provideRenameEdits=function(e,t,n,i){var r=e.uri;return this._worker(r).then((function(e){return e.doRename(r.toString(),_t(t),n)})).then((function(e){return function(e){if(!e||!e.changes)return;var t=[];for(var n in e.changes)for(var i=mt.parse(n),r=0,a=e.changes[n];r<a.length;r++){var o=a[r];t.push({resource:i,edit:{range:wt(o.range),text:o.newText}})}return{edits:t}}(e)}))},e}();var Ct=function(){function e(e){this._worker=e}return e.prototype.provideFoldingRanges=function(e,t,n){var i=e.uri;return this._worker(i).then((function(e){return e.getFoldingRanges(i.toString(),t)})).then((function(e){if(e)return e.map((function(e){var t={start:e.startLine+1,end:e.endLine+1};return void 0!==e.kind&&(t.kind=function(e){switch(e){case h.Comment:return monaco.languages.FoldingRangeKind.Comment;case h.Imports:return monaco.languages.FoldingRangeKind.Imports;case h.Region:return monaco.languages.FoldingRangeKind.Region}}(e.kind)),t}))}))},e}();var Wt=function(){function e(e){this._worker=e}return e.prototype.provideSelectionRanges=function(e,t,n){var i=e.uri;return this._worker(i).then((function(e){return e.getSelectionRanges(i.toString(),t.map(_t))})).then((function(e){if(e)return e.map((function(e){for(var t=[];e;)t.push({range:wt(e.range)}),e=e.parent;return t}))}))},e}();function Dt(e){var t=new k(e),n=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return t.getLanguageServiceWorker.apply(t,e)},i=e.languageId;monaco.languages.registerCompletionItemProvider(i,new Tt(n)),monaco.languages.registerHoverProvider(i,new xt(n)),monaco.languages.registerDocumentHighlightProvider(i,new Lt(n)),monaco.languages.registerLinkProvider(i,new Rt(n)),monaco.languages.registerFoldingRangeProvider(i,new Ct(n)),monaco.languages.registerDocumentSymbolProvider(i,new At(n)),monaco.languages.registerSelectionRangeProvider(i,new Wt(n)),monaco.languages.registerRenameProvider(i,new Ut(n)),"html"===i&&(monaco.languages.registerDocumentFormattingEditProvider(i,new It(n)),monaco.languages.registerDocumentRangeFormattingEditProvider(i,new Ht(n)),new gt(i,n,e))}function qt(e){var t=[],n=[],i=new k(e);t.push(i);var r,a,o=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return i.getLanguageServiceWorker.apply(i,e)};return r=e.languageId,a=e.modeConfiguration,Pt(n),a.completionItems&&n.push(monaco.languages.registerCompletionItemProvider(r,new Tt(o))),a.hovers&&n.push(monaco.languages.registerHoverProvider(r,new xt(o))),a.documentHighlights&&n.push(monaco.languages.registerDocumentHighlightProvider(r,new Lt(o))),a.links&&n.push(monaco.languages.registerLinkProvider(r,new Rt(o))),a.documentSymbols&&n.push(monaco.languages.registerDocumentSymbolProvider(r,new At(o))),a.rename&&n.push(monaco.languages.registerRenameProvider(r,new Ut(o))),a.foldingRanges&&n.push(monaco.languages.registerFoldingRangeProvider(r,new Ct(o))),a.selectionRanges&&n.push(monaco.languages.registerSelectionRangeProvider(r,new Wt(o))),a.documentFormattingEdits&&n.push(monaco.languages.registerDocumentFormattingEditProvider(r,new It(o))),a.documentRangeFormattingEdits&&n.push(monaco.languages.registerDocumentRangeFormattingEditProvider(r,new Ht(o))),a.diagnostics&&n.push(new gt(r,o,e)),t.push(Nt(n)),Nt(t)}function Nt(e){return{dispose:function(){return Pt(e)}}}function Pt(e){for(;e.length;)e.pop().dispose()}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/104.e7fceeb6.js b/docs/src/.vuepress/dist/assets/js/105.e620df2f.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/104.e7fceeb6.js rename to docs/src/.vuepress/dist/assets/js/105.e620df2f.js index 348cab54..9d2c1341 100644 --- a/docs/src/.vuepress/dist/assets/js/104.e7fceeb6.js +++ b/docs/src/.vuepress/dist/assets/js/105.e620df2f.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[104],{506:function(e,t,r){"use strict";r.r(t),r.d(t,"setupMode",(function(){return Ht}));var n,i=function(){function e(e){var t=this;this._defaults=e,this._worker=null,this._idleCheckInterval=setInterval((function(){return t._checkIfIdle()}),3e4),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange((function(){return t._stopWorker()}))}return e.prototype._stopWorker=function(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null},e.prototype.dispose=function(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()},e.prototype._checkIfIdle=function(){this._worker&&(Date.now()-this._lastUsedTime>12e4&&this._stopWorker())},e.prototype._getClient=function(){return this._lastUsedTime=Date.now(),this._client||(this._worker=monaco.editor.createWebWorker({moduleId:"vs/language/json/jsonWorker",label:this._defaults.languageId,createData:{languageSettings:this._defaults.diagnosticsOptions,languageId:this._defaults.languageId,enableSchemaRequest:this._defaults.diagnosticsOptions.enableSchemaRequest}}),this._client=this._worker.getProxy()),this._client},e.prototype.getLanguageServiceWorker=function(){for(var e,t=this,r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];return this._getClient().then((function(t){e=t})).then((function(e){return t._worker.withSyncedResources(r)})).then((function(t){return e}))},e}();function o(e,t){void 0===t&&(t=!1);var r=e.length,n=0,i="",o=0,c=16,l=0,f=0,h=0,p=0,m=0;function d(t,r){for(var i=0,o=0;i<t||!r;){var a=e.charCodeAt(n);if(a>=48&&a<=57)o=16*o+a-48;else if(a>=65&&a<=70)o=16*o+a-65+10;else{if(!(a>=97&&a<=102))break;o=16*o+a-97+10}n++,i++}return i<t&&(o=-1),o}function g(){if(i="",m=0,o=n,f=l,p=h,n>=r)return o=r,c=17;var t=e.charCodeAt(n);if(a(t)){do{n++,i+=String.fromCharCode(t),t=e.charCodeAt(n)}while(a(t));return c=15}if(s(t))return n++,i+=String.fromCharCode(t),13===t&&10===e.charCodeAt(n)&&(n++,i+="\n"),l++,h=n,c=14;switch(t){case 123:return n++,c=1;case 125:return n++,c=2;case 91:return n++,c=3;case 93:return n++,c=4;case 58:return n++,c=6;case 44:return n++,c=5;case 34:return n++,i=function(){for(var t="",i=n;;){if(n>=r){t+=e.substring(i,n),m=2;break}var o=e.charCodeAt(n);if(34===o){t+=e.substring(i,n),n++;break}if(92!==o){if(o>=0&&o<=31){if(s(o)){t+=e.substring(i,n),m=2;break}m=6}n++}else{if(t+=e.substring(i,n),++n>=r){m=2;break}switch(e.charCodeAt(n++)){case 34:t+='"';break;case 92:t+="\\";break;case 47:t+="/";break;case 98:t+="\b";break;case 102:t+="\f";break;case 110:t+="\n";break;case 114:t+="\r";break;case 116:t+="\t";break;case 117:var a=d(4,!0);a>=0?t+=String.fromCharCode(a):m=4;break;default:m=5}i=n}}return t}(),c=10;case 47:var g=n-1;if(47===e.charCodeAt(n+1)){for(n+=2;n<r&&!s(e.charCodeAt(n));)n++;return i=e.substring(g,n),c=12}if(42===e.charCodeAt(n+1)){n+=2;for(var y=r-1,b=!1;n<y;){var x=e.charCodeAt(n);if(42===x&&47===e.charCodeAt(n+1)){n+=2,b=!0;break}n++,s(x)&&(13===x&&10===e.charCodeAt(n)&&n++,l++,h=n)}return b||(n++,m=1),i=e.substring(g,n),c=13}return i+=String.fromCharCode(t),n++,c=16;case 45:if(i+=String.fromCharCode(t),++n===r||!u(e.charCodeAt(n)))return c=16;case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return i+=function(){var t=n;if(48===e.charCodeAt(n))n++;else for(n++;n<e.length&&u(e.charCodeAt(n));)n++;if(n<e.length&&46===e.charCodeAt(n)){if(!(++n<e.length&&u(e.charCodeAt(n))))return m=3,e.substring(t,n);for(n++;n<e.length&&u(e.charCodeAt(n));)n++}var r=n;if(n<e.length&&(69===e.charCodeAt(n)||101===e.charCodeAt(n)))if((++n<e.length&&43===e.charCodeAt(n)||45===e.charCodeAt(n))&&n++,n<e.length&&u(e.charCodeAt(n))){for(n++;n<e.length&&u(e.charCodeAt(n));)n++;r=n}else m=3;return e.substring(t,r)}(),c=11;default:for(;n<r&&v(t);)n++,t=e.charCodeAt(n);if(o!==n){switch(i=e.substring(o,n)){case"true":return c=8;case"false":return c=9;case"null":return c=7}return c=16}return i+=String.fromCharCode(t),n++,c=16}}function v(e){if(a(e)||s(e))return!1;switch(e){case 125:case 93:case 123:case 91:case 34:case 58:case 44:case 47:return!1}return!0}return{setPosition:function(e){n=e,i="",o=0,c=16,m=0},getPosition:function(){return n},scan:t?function(){var e;do{e=g()}while(e>=12&&e<=15);return e}:g,getToken:function(){return c},getTokenValue:function(){return i},getTokenOffset:function(){return o},getTokenLength:function(){return n-o},getTokenStartLine:function(){return f},getTokenStartCharacter:function(){return o-p},getTokenError:function(){return m}}}function a(e){return 32===e||9===e||11===e||12===e||160===e||5760===e||e>=8192&&e<=8203||8239===e||8287===e||12288===e||65279===e}function s(e){return 10===e||13===e||8232===e||8233===e}function u(e){return e>=48&&e<=57}function c(e,t,r){void 0===r&&(r=n.DEFAULT);var i=o(e,!1);function a(e){return e?function(){return e(i.getTokenOffset(),i.getTokenLength(),i.getTokenStartLine(),i.getTokenStartCharacter())}:function(){return!0}}function s(e){return e?function(t){return e(t,i.getTokenOffset(),i.getTokenLength(),i.getTokenStartLine(),i.getTokenStartCharacter())}:function(){return!0}}var u=a(t.onObjectBegin),c=s(t.onObjectProperty),l=a(t.onObjectEnd),f=a(t.onArrayBegin),h=a(t.onArrayEnd),p=s(t.onLiteralValue),m=s(t.onSeparator),d=a(t.onComment),g=s(t.onError),v=r&&r.disallowComments,y=r&&r.allowTrailingComma;function b(){for(;;){var e=i.scan();switch(i.getTokenError()){case 4:x(14);break;case 5:x(15);break;case 3:x(13);break;case 1:v||x(11);break;case 2:x(12);break;case 6:x(16)}switch(e){case 12:case 13:v?x(10):d();break;case 16:x(1);break;case 15:case 14:break;default:return e}}}function x(e,t,r){if(void 0===t&&(t=[]),void 0===r&&(r=[]),g(e),t.length+r.length>0)for(var n=i.getToken();17!==n;){if(-1!==t.indexOf(n)){b();break}if(-1!==r.indexOf(n))break;n=b()}}function S(e){var t=i.getTokenValue();return e?p(t):c(t),b(),!0}function k(){switch(i.getToken()){case 3:return function(){f(),b();for(var e=!1;4!==i.getToken()&&17!==i.getToken();){if(5===i.getToken()){if(e||x(4,[],[]),m(","),b(),4===i.getToken()&&y)break}else e&&x(6,[],[]);k()||x(4,[],[4,5]),e=!0}return h(),4!==i.getToken()?x(8,[4],[]):b(),!0}();case 1:return function(){u(),b();for(var e=!1;2!==i.getToken()&&17!==i.getToken();){if(5===i.getToken()){if(e||x(4,[],[]),m(","),b(),2===i.getToken()&&y)break}else e&&x(6,[],[]);(10!==i.getToken()?(x(3,[],[2,5]),0):(S(!1),6===i.getToken()?(m(":"),b(),k()||x(4,[],[2,5])):x(5,[],[2,5]),1))||x(4,[],[2,5]),e=!0}return l(),2!==i.getToken()?x(7,[2],[]):b(),!0}();case 10:return S(!0);default:return function(){switch(i.getToken()){case 11:var e=0;try{"number"!=typeof(e=JSON.parse(i.getTokenValue()))&&(x(2),e=0)}catch(e){x(2)}p(e);break;case 7:p(null);break;case 8:p(!0);break;case 9:p(!1);break;default:return!1}return b(),!0}()}}return b(),17===i.getToken()?!!r.allowEmptyContent||(x(4,[],[]),!1):k()?(17!==i.getToken()&&x(9,[],[]),!0):(x(4,[],[]),!1)}!function(e){e.DEFAULT={allowTrailingComma:!1}}(n||(n={}));var l,f,h,p,m,d,g,v,y,b,x,S,k,C,w,A,I,T,E,O,j=o,P=function(e,t,r){void 0===t&&(t=[]),void 0===r&&(r=n.DEFAULT);var i=null,o=[],a=[];function s(e){Array.isArray(o)?o.push(e):null!==i&&(o[i]=e)}return c(e,{onObjectBegin:function(){var e={};s(e),a.push(o),o=e,i=null},onObjectProperty:function(e){i=e},onObjectEnd:function(){o=a.pop()},onArrayBegin:function(){var e=[];s(e),a.push(o),o=e,i=null},onArrayEnd:function(){o=a.pop()},onLiteralValue:s,onError:function(e,r,n){t.push({error:e,offset:r,length:n})}},r),o[0]},M=function e(t,r,n){if(void 0===n&&(n=!1),function(e,t,r){return void 0===r&&(r=!1),t>=e.offset&&t<e.offset+e.length||r&&t===e.offset+e.length}(t,r,n)){var i=t.children;if(Array.isArray(i))for(var o=0;o<i.length&&i[o].offset<=r;o++){var a=e(i[o],r,n);if(a)return a}return t}},_=function e(t){if(!t.parent||!t.parent.children)return[];var r=e(t.parent);if("property"===t.parent.type){var n=t.parent.children[0].value;r.push(n)}else if("array"===t.parent.type){var i=t.parent.children.indexOf(t);-1!==i&&r.push(i)}return r},V=function e(t){switch(t.type){case"array":return t.children.map(e);case"object":for(var r=Object.create(null),n=0,i=t.children;n<i.length;n++){var o=i[n],a=o.children[1];a&&(r[o.children[0].value]=e(a))}return r;case"null":case"string":case"number":case"boolean":return t.value;default:return}};function F(e,t){if(e===t)return!0;if(null==e||null==t)return!1;if(typeof e!=typeof t)return!1;if("object"!=typeof e)return!1;if(Array.isArray(e)!==Array.isArray(t))return!1;var r,n;if(Array.isArray(e)){if(e.length!==t.length)return!1;for(r=0;r<e.length;r++)if(!F(e[r],t[r]))return!1}else{var i=[];for(n in e)i.push(n);i.sort();var o=[];for(n in t)o.push(n);if(o.sort(),!F(i,o))return!1;for(r=0;r<i.length;r++)if(!F(e[i[r]],t[i[r]]))return!1}return!0}function N(e){return"number"==typeof e}function R(e){return void 0!==e}function $(e){return"boolean"==typeof e}!function(e){e.create=function(e,t){return{line:e,character:t}},e.is=function(e){var t=e;return me.objectLiteral(t)&&me.number(t.line)&&me.number(t.character)}}(l||(l={})),function(e){e.create=function(e,t,r,n){if(me.number(e)&&me.number(t)&&me.number(r)&&me.number(n))return{start:l.create(e,t),end:l.create(r,n)};if(l.is(e)&&l.is(t))return{start:e,end:t};throw new Error("Range#create called with invalid arguments["+e+", "+t+", "+r+", "+n+"]")},e.is=function(e){var t=e;return me.objectLiteral(t)&&l.is(t.start)&&l.is(t.end)}}(f||(f={})),function(e){e.create=function(e,t){return{uri:e,range:t}},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.range)&&(me.string(t.uri)||me.undefined(t.uri))}}(h||(h={})),function(e){e.create=function(e,t,r,n){return{targetUri:e,targetRange:t,targetSelectionRange:r,originSelectionRange:n}},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.targetRange)&&me.string(t.targetUri)&&(f.is(t.targetSelectionRange)||me.undefined(t.targetSelectionRange))&&(f.is(t.originSelectionRange)||me.undefined(t.originSelectionRange))}}(p||(p={})),function(e){e.create=function(e,t,r,n){return{red:e,green:t,blue:r,alpha:n}},e.is=function(e){var t=e;return me.number(t.red)&&me.number(t.green)&&me.number(t.blue)&&me.number(t.alpha)}}(m||(m={})),function(e){e.create=function(e,t){return{range:e,color:t}},e.is=function(e){var t=e;return f.is(t.range)&&m.is(t.color)}}(d||(d={})),function(e){e.create=function(e,t,r){return{label:e,textEdit:t,additionalTextEdits:r}},e.is=function(e){var t=e;return me.string(t.label)&&(me.undefined(t.textEdit)||w.is(t))&&(me.undefined(t.additionalTextEdits)||me.typedArray(t.additionalTextEdits,w.is))}}(g||(g={})),function(e){e.Comment="comment",e.Imports="imports",e.Region="region"}(v||(v={})),function(e){e.create=function(e,t,r,n,i){var o={startLine:e,endLine:t};return me.defined(r)&&(o.startCharacter=r),me.defined(n)&&(o.endCharacter=n),me.defined(i)&&(o.kind=i),o},e.is=function(e){var t=e;return me.number(t.startLine)&&me.number(t.startLine)&&(me.undefined(t.startCharacter)||me.number(t.startCharacter))&&(me.undefined(t.endCharacter)||me.number(t.endCharacter))&&(me.undefined(t.kind)||me.string(t.kind))}}(y||(y={})),function(e){e.create=function(e,t){return{location:e,message:t}},e.is=function(e){var t=e;return me.defined(t)&&h.is(t.location)&&me.string(t.message)}}(b||(b={})),function(e){e.Error=1,e.Warning=2,e.Information=3,e.Hint=4}(x||(x={})),function(e){e.Unnecessary=1,e.Deprecated=2}(S||(S={})),function(e){e.create=function(e,t,r,n,i,o){var a={range:e,message:t};return me.defined(r)&&(a.severity=r),me.defined(n)&&(a.code=n),me.defined(i)&&(a.source=i),me.defined(o)&&(a.relatedInformation=o),a},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.range)&&me.string(t.message)&&(me.number(t.severity)||me.undefined(t.severity))&&(me.number(t.code)||me.string(t.code)||me.undefined(t.code))&&(me.string(t.source)||me.undefined(t.source))&&(me.undefined(t.relatedInformation)||me.typedArray(t.relatedInformation,b.is))}}(k||(k={})),function(e){e.create=function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];var i={title:e,command:t};return me.defined(r)&&r.length>0&&(i.arguments=r),i},e.is=function(e){var t=e;return me.defined(t)&&me.string(t.title)&&me.string(t.command)}}(C||(C={})),function(e){e.replace=function(e,t){return{range:e,newText:t}},e.insert=function(e,t){return{range:{start:e,end:e},newText:t}},e.del=function(e){return{range:e,newText:""}},e.is=function(e){var t=e;return me.objectLiteral(t)&&me.string(t.newText)&&f.is(t.range)}}(w||(w={})),function(e){e.create=function(e,t){return{textDocument:e,edits:t}},e.is=function(e){var t=e;return me.defined(t)&&D.is(t.textDocument)&&Array.isArray(t.edits)}}(A||(A={})),function(e){e.create=function(e,t){var r={kind:"create",uri:e};return void 0===t||void 0===t.overwrite&&void 0===t.ignoreIfExists||(r.options=t),r},e.is=function(e){var t=e;return t&&"create"===t.kind&&me.string(t.uri)&&(void 0===t.options||(void 0===t.options.overwrite||me.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||me.boolean(t.options.ignoreIfExists)))}}(I||(I={})),function(e){e.create=function(e,t,r){var n={kind:"rename",oldUri:e,newUri:t};return void 0===r||void 0===r.overwrite&&void 0===r.ignoreIfExists||(n.options=r),n},e.is=function(e){var t=e;return t&&"rename"===t.kind&&me.string(t.oldUri)&&me.string(t.newUri)&&(void 0===t.options||(void 0===t.options.overwrite||me.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||me.boolean(t.options.ignoreIfExists)))}}(T||(T={})),function(e){e.create=function(e,t){var r={kind:"delete",uri:e};return void 0===t||void 0===t.recursive&&void 0===t.ignoreIfNotExists||(r.options=t),r},e.is=function(e){var t=e;return t&&"delete"===t.kind&&me.string(t.uri)&&(void 0===t.options||(void 0===t.options.recursive||me.boolean(t.options.recursive))&&(void 0===t.options.ignoreIfNotExists||me.boolean(t.options.ignoreIfNotExists)))}}(E||(E={})),function(e){e.is=function(e){var t=e;return t&&(void 0!==t.changes||void 0!==t.documentChanges)&&(void 0===t.documentChanges||t.documentChanges.every((function(e){return me.string(e.kind)?I.is(e)||T.is(e)||E.is(e):A.is(e)})))}}(O||(O={}));var L,D,W,U,q,B,K,J,z,H,G,Z,X,Q,Y,ee,te,re,ne,ie,oe,ae,se,ue,ce,le,fe,he=function(){function e(e){this.edits=e}return e.prototype.insert=function(e,t){this.edits.push(w.insert(e,t))},e.prototype.replace=function(e,t){this.edits.push(w.replace(e,t))},e.prototype.delete=function(e){this.edits.push(w.del(e))},e.prototype.add=function(e){this.edits.push(e)},e.prototype.all=function(){return this.edits},e.prototype.clear=function(){this.edits.splice(0,this.edits.length)},e}();!function(){function e(e){var t=this;this._textEditChanges=Object.create(null),e&&(this._workspaceEdit=e,e.documentChanges?e.documentChanges.forEach((function(e){if(A.is(e)){var r=new he(e.edits);t._textEditChanges[e.textDocument.uri]=r}})):e.changes&&Object.keys(e.changes).forEach((function(r){var n=new he(e.changes[r]);t._textEditChanges[r]=n})))}Object.defineProperty(e.prototype,"edit",{get:function(){return this._workspaceEdit},enumerable:!0,configurable:!0}),e.prototype.getTextEditChange=function(e){if(D.is(e)){if(this._workspaceEdit||(this._workspaceEdit={documentChanges:[]}),!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");var t=e;if(!(n=this._textEditChanges[t.uri])){var r={textDocument:t,edits:i=[]};this._workspaceEdit.documentChanges.push(r),n=new he(i),this._textEditChanges[t.uri]=n}return n}if(this._workspaceEdit||(this._workspaceEdit={changes:Object.create(null)}),!this._workspaceEdit.changes)throw new Error("Workspace edit is not configured for normal text edit changes.");var n;if(!(n=this._textEditChanges[e])){var i=[];this._workspaceEdit.changes[e]=i,n=new he(i),this._textEditChanges[e]=n}return n},e.prototype.createFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(I.create(e,t))},e.prototype.renameFile=function(e,t,r){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(T.create(e,t,r))},e.prototype.deleteFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(E.create(e,t))},e.prototype.checkDocumentChanges=function(){if(!this._workspaceEdit||!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.")}}();!function(e){e.create=function(e){return{uri:e}},e.is=function(e){var t=e;return me.defined(t)&&me.string(t.uri)}}(L||(L={})),function(e){e.create=function(e,t){return{uri:e,version:t}},e.is=function(e){var t=e;return me.defined(t)&&me.string(t.uri)&&(null===t.version||me.number(t.version))}}(D||(D={})),function(e){e.create=function(e,t,r,n){return{uri:e,languageId:t,version:r,text:n}},e.is=function(e){var t=e;return me.defined(t)&&me.string(t.uri)&&me.string(t.languageId)&&me.number(t.version)&&me.string(t.text)}}(W||(W={})),function(e){e.PlainText="plaintext",e.Markdown="markdown"}(U||(U={})),function(e){e.is=function(t){var r=t;return r===e.PlainText||r===e.Markdown}}(U||(U={})),function(e){e.is=function(e){var t=e;return me.objectLiteral(e)&&U.is(t.kind)&&me.string(t.value)}}(q||(q={})),function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25}(B||(B={})),function(e){e.PlainText=1,e.Snippet=2}(K||(K={})),function(e){e.Deprecated=1}(J||(J={})),function(e){e.create=function(e){return{label:e}}}(z||(z={})),function(e){e.create=function(e,t){return{items:e||[],isIncomplete:!!t}}}(H||(H={})),function(e){e.fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},e.is=function(e){var t=e;return me.string(t)||me.objectLiteral(t)&&me.string(t.language)&&me.string(t.value)}}(G||(G={})),function(e){e.is=function(e){var t=e;return!!t&&me.objectLiteral(t)&&(q.is(t.contents)||G.is(t.contents)||me.typedArray(t.contents,G.is))&&(void 0===e.range||f.is(e.range))}}(Z||(Z={})),function(e){e.create=function(e,t){return t?{label:e,documentation:t}:{label:e}}}(X||(X={})),function(e){e.create=function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];var i={label:e};return me.defined(t)&&(i.documentation=t),me.defined(r)?i.parameters=r:i.parameters=[],i}}(Q||(Q={})),function(e){e.Text=1,e.Read=2,e.Write=3}(Y||(Y={})),function(e){e.create=function(e,t){var r={range:e};return me.number(t)&&(r.kind=t),r}}(ee||(ee={})),function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26}(te||(te={})),function(e){e.Deprecated=1}(re||(re={})),function(e){e.create=function(e,t,r,n,i){var o={name:e,kind:t,location:{uri:n,range:r}};return i&&(o.containerName=i),o}}(ne||(ne={})),function(e){e.create=function(e,t,r,n,i,o){var a={name:e,detail:t,kind:r,range:n,selectionRange:i};return void 0!==o&&(a.children=o),a},e.is=function(e){var t=e;return t&&me.string(t.name)&&me.number(t.kind)&&f.is(t.range)&&f.is(t.selectionRange)&&(void 0===t.detail||me.string(t.detail))&&(void 0===t.deprecated||me.boolean(t.deprecated))&&(void 0===t.children||Array.isArray(t.children))}}(ie||(ie={})),function(e){e.Empty="",e.QuickFix="quickfix",e.Refactor="refactor",e.RefactorExtract="refactor.extract",e.RefactorInline="refactor.inline",e.RefactorRewrite="refactor.rewrite",e.Source="source",e.SourceOrganizeImports="source.organizeImports",e.SourceFixAll="source.fixAll"}(oe||(oe={})),function(e){e.create=function(e,t){var r={diagnostics:e};return null!=t&&(r.only=t),r},e.is=function(e){var t=e;return me.defined(t)&&me.typedArray(t.diagnostics,k.is)&&(void 0===t.only||me.typedArray(t.only,me.string))}}(ae||(ae={})),function(e){e.create=function(e,t,r){var n={title:e};return C.is(t)?n.command=t:n.edit=t,void 0!==r&&(n.kind=r),n},e.is=function(e){var t=e;return t&&me.string(t.title)&&(void 0===t.diagnostics||me.typedArray(t.diagnostics,k.is))&&(void 0===t.kind||me.string(t.kind))&&(void 0!==t.edit||void 0!==t.command)&&(void 0===t.command||C.is(t.command))&&(void 0===t.isPreferred||me.boolean(t.isPreferred))&&(void 0===t.edit||O.is(t.edit))}}(se||(se={})),function(e){e.create=function(e,t){var r={range:e};return me.defined(t)&&(r.data=t),r},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.range)&&(me.undefined(t.command)||C.is(t.command))}}(ue||(ue={})),function(e){e.create=function(e,t){return{tabSize:e,insertSpaces:t}},e.is=function(e){var t=e;return me.defined(t)&&me.number(t.tabSize)&&me.boolean(t.insertSpaces)}}(ce||(ce={})),function(e){e.create=function(e,t,r){return{range:e,target:t,data:r}},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.range)&&(me.undefined(t.target)||me.string(t.target))}}(le||(le={})),function(e){e.create=function(e,t){return{range:e,parent:t}},e.is=function(t){var r=t;return void 0!==r&&f.is(r.range)&&(void 0===r.parent||e.is(r.parent))}}(fe||(fe={}));var pe;!function(e){e.create=function(e,t,r,n){return new de(e,t,r,n)},e.is=function(e){var t=e;return!!(me.defined(t)&&me.string(t.uri)&&(me.undefined(t.languageId)||me.string(t.languageId))&&me.number(t.lineCount)&&me.func(t.getText)&&me.func(t.positionAt)&&me.func(t.offsetAt))},e.applyEdits=function(e,t){for(var r=e.getText(),n=function e(t,r){if(t.length<=1)return t;var n=t.length/2|0,i=t.slice(0,n),o=t.slice(n);e(i,r),e(o,r);var a=0,s=0,u=0;for(;a<i.length&&s<o.length;){var c=r(i[a],o[s]);t[u++]=c<=0?i[a++]:o[s++]}for(;a<i.length;)t[u++]=i[a++];for(;s<o.length;)t[u++]=o[s++];return t}(t,(function(e,t){var r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r})),i=r.length,o=n.length-1;o>=0;o--){var a=n[o],s=e.offsetAt(a.range.start),u=e.offsetAt(a.range.end);if(!(u<=i))throw new Error("Overlapping edit");r=r.substring(0,s)+a.newText+r.substring(u,r.length),i=s}return r}}(pe||(pe={}));var me,de=function(){function e(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content},e.prototype.update=function(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0},e.prototype.getLineOffsets=function(){if(void 0===this._lineOffsets){for(var e=[],t=this._content,r=!0,n=0;n<t.length;n++){r&&(e.push(n),r=!1);var i=t.charAt(n);r="\r"===i||"\n"===i,"\r"===i&&n+1<t.length&&"\n"===t.charAt(n+1)&&n++}r&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return l.create(0,e);for(;r<n;){var i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}var o=r-1;return l.create(o,e-t[o])},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var r=t[e.line],n=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,n),r)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e}();!function(e){var t=Object.prototype.toString;e.defined=function(e){return void 0!==e},e.undefined=function(e){return void 0===e},e.boolean=function(e){return!0===e||!1===e},e.string=function(e){return"[object String]"===t.call(e)},e.number=function(e){return"[object Number]"===t.call(e)},e.func=function(e){return"[object Function]"===t.call(e)},e.objectLiteral=function(e){return null!==e&&"object"==typeof e},e.typedArray=function(e,t){return Array.isArray(e)&&e.every(t)}}(me||(me={}));var ge,ve,ye,be=function(){function e(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content},e.prototype.update=function(t,r){for(var n=0,i=t;n<i.length;n++){var o=i[n];if(e.isIncremental(o)){var a=Se(o.range),s=this.offsetAt(a.start),u=this.offsetAt(a.end);this._content=this._content.substring(0,s)+o.text+this._content.substring(u,this._content.length);var c=Math.max(a.start.line,0),l=Math.max(a.end.line,0),f=this._lineOffsets,h=xe(o.text,!1,s);if(l-c===h.length)for(var p=0,m=h.length;p<m;p++)f[p+c+1]=h[p];else h.length<1e4?f.splice.apply(f,[c+1,l-c].concat(h)):this._lineOffsets=f=f.slice(0,c+1).concat(h,f.slice(l+1));var d=o.text.length-(u-s);if(0!==d)for(p=c+1+h.length,m=f.length;p<m;p++)f[p]=f[p]+d}else{if(!e.isFull(o))throw new Error("Unknown change event received");this._content=o.text,this._lineOffsets=void 0}}this._version=r},e.prototype.getLineOffsets=function(){return void 0===this._lineOffsets&&(this._lineOffsets=xe(this._content,!0)),this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return{line:0,character:e};for(;r<n;){var i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}var o=r-1;return{line:o,character:e-t[o]}},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var r=t[e.line],n=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,n),r)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e.isIncremental=function(e){var t=e;return null!=t&&"string"==typeof t.text&&void 0!==t.range&&(void 0===t.rangeLength||"number"==typeof t.rangeLength)},e.isFull=function(e){var t=e;return null!=t&&"string"==typeof t.text&&void 0===t.range&&void 0===t.rangeLength},e}();function xe(e,t,r){void 0===r&&(r=0);for(var n=t?[r]:[],i=0;i<e.length;i++){var o=e.charCodeAt(i);13!==o&&10!==o||(13===o&&i+1<e.length&&10===e.charCodeAt(i+1)&&i++,n.push(r+i+1))}return n}function Se(e){var t=e.start,r=e.end;return t.line>r.line||t.line===r.line&&t.character>r.character?{start:r,end:t}:e}function ke(e){var t=Se(e.range);return t!==e.range?{newText:e.newText,range:t}:e}function Ce(e,t){return 0===t.length?e:e.replace(/\{(\d+)\}/g,(function(e,r){var n=r[0];return void 0!==t[n]?t[n]:e}))}function we(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];return Ce(t,r)}function Ae(e){return we}!function(e){e.create=function(e,t,r,n){return new be(e,t,r,n)},e.update=function(e,t,r){if(e instanceof be)return e.update(t,r),e;throw new Error("TextDocument.update: document must be created by TextDocument.create")},e.applyEdits=function(e,t){for(var r=e.getText(),n=function e(t,r){if(t.length<=1)return t;var n=t.length/2|0,i=t.slice(0,n),o=t.slice(n);e(i,r),e(o,r);var a=0,s=0,u=0;for(;a<i.length&&s<o.length;){var c=r(i[a],o[s]);t[u++]=c<=0?i[a++]:o[s++]}for(;a<i.length;)t[u++]=i[a++];for(;s<o.length;)t[u++]=o[s++];return t}(t.map(ke),(function(e,t){var r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r})),i=r.length,o=n.length-1;o>=0;o--){var a=n[o],s=e.offsetAt(a.range.start),u=e.offsetAt(a.range.end);if(!(u<=i))throw new Error("Overlapping edit");r=r.substring(0,s)+a.newText+r.substring(u,r.length),i=s}return r}}(ge||(ge={})),function(e){e[e.Undefined=0]="Undefined",e[e.EnumValueMismatch=1]="EnumValueMismatch",e[e.UnexpectedEndOfComment=257]="UnexpectedEndOfComment",e[e.UnexpectedEndOfString=258]="UnexpectedEndOfString",e[e.UnexpectedEndOfNumber=259]="UnexpectedEndOfNumber",e[e.InvalidUnicode=260]="InvalidUnicode",e[e.InvalidEscapeCharacter=261]="InvalidEscapeCharacter",e[e.InvalidCharacter=262]="InvalidCharacter",e[e.PropertyExpected=513]="PropertyExpected",e[e.CommaExpected=514]="CommaExpected",e[e.ColonExpected=515]="ColonExpected",e[e.ValueExpected=516]="ValueExpected",e[e.CommaOrCloseBacketExpected=517]="CommaOrCloseBacketExpected",e[e.CommaOrCloseBraceExpected=518]="CommaOrCloseBraceExpected",e[e.TrailingComma=519]="TrailingComma",e[e.DuplicateKey=520]="DuplicateKey",e[e.CommentNotPermitted=521]="CommentNotPermitted",e[e.SchemaResolveError=768]="SchemaResolveError"}(ve||(ve={})),(ye||(ye={})).LATEST={textDocument:{completion:{completionItem:{documentationFormat:[U.Markdown,U.PlainText],commitCharactersSupport:!0}}}};var Ie,Te,Ee=(Ie=function(e,t){return(Ie=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}Ie(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),Oe=Ae(),je={"color-hex":{errorMessage:Oe("colorHexFormatWarning","Invalid color format. Use #RGB, #RGBA, #RRGGBB or #RRGGBBAA."),pattern:/^#([0-9A-Fa-f]{3,4}|([0-9A-Fa-f]{2}){3,4})$/},"date-time":{errorMessage:Oe("dateTimeFormatWarning","String is not a RFC3339 date-time."),pattern:/^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$/i},date:{errorMessage:Oe("dateFormatWarning","String is not a RFC3339 date."),pattern:/^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$/i},time:{errorMessage:Oe("timeFormatWarning","String is not a RFC3339 time."),pattern:/^([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$/i},email:{errorMessage:Oe("emailFormatWarning","String is not an e-mail address."),pattern:/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/}},Pe=function(){function e(e,t,r){this.offset=t,this.length=r,this.parent=e}return Object.defineProperty(e.prototype,"children",{get:function(){return[]},enumerable:!0,configurable:!0}),e.prototype.toString=function(){return"type: "+this.type+" ("+this.offset+"/"+this.length+")"+(this.parent?" parent: {"+this.parent.toString()+"}":"")},e}();(function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="null",n.value=null,n}Ee(t,e)})(Pe),function(e){function t(t,r,n){var i=e.call(this,t,n)||this;return i.type="boolean",i.value=r,i}Ee(t,e)}(Pe),function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="array",n.items=[],n}Ee(t,e),Object.defineProperty(t.prototype,"children",{get:function(){return this.items},enumerable:!0,configurable:!0})}(Pe),function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="number",n.isInteger=!0,n.value=Number.NaN,n}Ee(t,e)}(Pe),function(e){function t(t,r,n){var i=e.call(this,t,r,n)||this;return i.type="string",i.value="",i}Ee(t,e)}(Pe),function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="property",n.colonOffset=-1,n}Ee(t,e),Object.defineProperty(t.prototype,"children",{get:function(){return this.valueNode?[this.keyNode,this.valueNode]:[this.keyNode]},enumerable:!0,configurable:!0})}(Pe),function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="object",n.properties=[],n}Ee(t,e),Object.defineProperty(t.prototype,"children",{get:function(){return this.properties},enumerable:!0,configurable:!0})}(Pe);function Me(e){return $(e)?e?{}:{not:{}}:e}!function(e){e[e.Key=0]="Key",e[e.Enum=1]="Enum"}(Te||(Te={}));var _e=function(){function e(e,t){void 0===e&&(e=-1),void 0===t&&(t=null),this.focusOffset=e,this.exclude=t,this.schemas=[]}return e.prototype.add=function(e){this.schemas.push(e)},e.prototype.merge=function(e){var t;(t=this.schemas).push.apply(t,e.schemas)},e.prototype.include=function(e){return(-1===this.focusOffset||$e(e,this.focusOffset))&&e!==this.exclude},e.prototype.newSub=function(){return new e(-1,this.exclude)},e}(),Ve=function(){function e(){}return Object.defineProperty(e.prototype,"schemas",{get:function(){return[]},enumerable:!0,configurable:!0}),e.prototype.add=function(e){},e.prototype.merge=function(e){},e.prototype.include=function(e){return!0},e.prototype.newSub=function(){return this},e.instance=new e,e}(),Fe=function(){function e(){this.problems=[],this.propertiesMatches=0,this.propertiesValueMatches=0,this.primaryValueMatches=0,this.enumValueMatch=!1,this.enumValues=null}return e.prototype.hasProblems=function(){return!!this.problems.length},e.prototype.mergeAll=function(e){for(var t=0,r=e;t<r.length;t++){var n=r[t];this.merge(n)}},e.prototype.merge=function(e){this.problems=this.problems.concat(e.problems)},e.prototype.mergeEnumValues=function(e){if(!this.enumValueMatch&&!e.enumValueMatch&&this.enumValues&&e.enumValues){this.enumValues=this.enumValues.concat(e.enumValues);for(var t=0,r=this.problems;t<r.length;t++){var n=r[t];n.code===ve.EnumValueMismatch&&(n.message=Oe("enumWarning","Value is not accepted. Valid values: {0}.",this.enumValues.map((function(e){return JSON.stringify(e)})).join(", ")))}}},e.prototype.mergePropertyMatch=function(e){this.merge(e),this.propertiesMatches++,(e.enumValueMatch||!e.hasProblems()&&e.propertiesMatches)&&this.propertiesValueMatches++,e.enumValueMatch&&e.enumValues&&1===e.enumValues.length&&this.primaryValueMatches++},e.prototype.compare=function(e){var t=this.hasProblems();return t!==e.hasProblems()?t?-1:1:this.enumValueMatch!==e.enumValueMatch?e.enumValueMatch?-1:1:this.primaryValueMatches!==e.primaryValueMatches?this.primaryValueMatches-e.primaryValueMatches:this.propertiesValueMatches!==e.propertiesValueMatches?this.propertiesValueMatches-e.propertiesValueMatches:this.propertiesMatches-e.propertiesMatches},e}();function Ne(e){return V(e)}function Re(e){return _(e)}function $e(e,t,r){return void 0===r&&(r=!1),t>=e.offset&&t<e.offset+e.length||r&&t===e.offset+e.length}!function(){function e(e,t,r){void 0===t&&(t=[]),void 0===r&&(r=[]),this.root=e,this.syntaxErrors=t,this.comments=r}e.prototype.getNodeFromOffset=function(e,t){if(void 0===t&&(t=!1),this.root)return M(this.root,e,t)},e.prototype.visit=function(e){if(this.root){var t=function(r){var n=e(r),i=r.children;if(Array.isArray(i))for(var o=0;o<i.length&&n;o++)n=t(i[o]);return n};t(this.root)}},e.prototype.validate=function(e,t){if(this.root&&t){var r=new Fe;return Le(this.root,t,r,Ve.instance),r.problems.map((function(t){var r=f.create(e.positionAt(t.location.offset),e.positionAt(t.location.offset+t.location.length));return k.create(r,t.message,t.severity,t.code)}))}return null},e.prototype.getMatchingSchemas=function(e,t,r){void 0===t&&(t=-1),void 0===r&&(r=null);var n=new _e(t,r);return this.root&&e&&Le(this.root,e,new Fe,n),n.schemas}}();function Le(e,t,r,n){if(e&&n.include(e)){switch(e.type){case"object":!function(e,t,r,n){for(var i=Object.create(null),o=[],a=0,s=e.properties;a<s.length;a++){var u=(y=s[a]).keyNode.value;i[u]=y.valueNode,o.push(u)}if(Array.isArray(t.required))for(var c=0,l=t.required;c<l.length;c++){var f=l[c];if(!i[f]){var h=e.parent&&"property"===e.parent.type&&e.parent.keyNode,p=h?{offset:h.offset,length:h.length}:{offset:e.offset,length:1};r.problems.push({location:p,severity:x.Warning,message:Oe("MissingRequiredPropWarning",'Missing property "{0}".',f)})}}var m=function(e){for(var t=o.indexOf(e);t>=0;)o.splice(t,1),t=o.indexOf(e)};if(t.properties)for(var d=0,g=Object.keys(t.properties);d<g.length;d++){f=g[d];m(f);var v=t.properties[f];if(P=i[f])if($(v))if(v)r.propertiesMatches++,r.propertiesValueMatches++;else{var y=P.parent;r.problems.push({location:{offset:y.keyNode.offset,length:y.keyNode.length},severity:x.Warning,message:t.errorMessage||Oe("DisallowedExtraPropWarning","Property {0} is not allowed.",f)})}else{var b=new Fe;Le(P,v,b,n),r.mergePropertyMatch(b)}}if(t.patternProperties)for(var S=0,k=Object.keys(t.patternProperties);S<k.length;S++)for(var C=k[S],w=new RegExp(C),A=0,I=o.slice(0);A<I.length;A++){f=I[A];if(w.test(f))if(m(f),P=i[f])if($(v=t.patternProperties[C]))if(v)r.propertiesMatches++,r.propertiesValueMatches++;else{y=P.parent;r.problems.push({location:{offset:y.keyNode.offset,length:y.keyNode.length},severity:x.Warning,message:t.errorMessage||Oe("DisallowedExtraPropWarning","Property {0} is not allowed.",f)})}else{b=new Fe;Le(P,v,b,n),r.mergePropertyMatch(b)}}if("object"==typeof t.additionalProperties)for(var T=0,E=o;T<E.length;T++){f=E[T];if(P=i[f]){b=new Fe;Le(P,t.additionalProperties,b,n),r.mergePropertyMatch(b)}}else if(!1===t.additionalProperties&&o.length>0)for(var O=0,j=o;O<j.length;O++){var P;f=j[O];if(P=i[f]){y=P.parent;r.problems.push({location:{offset:y.keyNode.offset,length:y.keyNode.length},severity:x.Warning,message:t.errorMessage||Oe("DisallowedExtraPropWarning","Property {0} is not allowed.",f)})}}N(t.maxProperties)&&e.properties.length>t.maxProperties&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("MaxPropWarning","Object has more properties than limit of {0}.",t.maxProperties)});N(t.minProperties)&&e.properties.length<t.minProperties&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("MinPropWarning","Object has fewer properties than the required number of {0}",t.minProperties)});if(t.dependencies)for(var M=0,_=Object.keys(t.dependencies);M<_.length;M++){u=_[M];if(i[u]){var V=t.dependencies[u];if(Array.isArray(V))for(var F=0,R=V;F<R.length;F++){var L=R[F];i[L]?r.propertiesValueMatches++:r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("RequiredDependentPropWarning","Object is missing property {0} required by property {1}.",L,u)})}else if(v=Me(V)){b=new Fe;Le(e,v,b,n),r.mergePropertyMatch(b)}}}var D=Me(t.propertyNames);if(D)for(var W=0,U=e.properties;W<U.length;W++){var q=U[W];(u=q.keyNode)&&Le(u,D,r,Ve.instance)}}(e,t,r,n);break;case"array":!function(e,t,r,n){if(Array.isArray(t.items)){for(var i=t.items,o=0;o<i.length;o++){var a=Me(i[o]),s=new Fe;(h=e.items[o])?(Le(h,a,s,n),r.mergePropertyMatch(s)):e.items.length>=i.length&&r.propertiesValueMatches++}if(e.items.length>i.length)if("object"==typeof t.additionalItems)for(var u=i.length;u<e.items.length;u++){s=new Fe;Le(e.items[u],t.additionalItems,s,n),r.mergePropertyMatch(s)}else!1===t.additionalItems&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("additionalItemsWarning","Array has too many items according to schema. Expected {0} or fewer.",i.length)})}else{var c=Me(t.items);if(c)for(var l=0,f=e.items;l<f.length;l++){var h=f[l];s=new Fe;Le(h,c,s,n),r.mergePropertyMatch(s)}}var p=Me(t.contains);if(p){e.items.some((function(e){var t=new Fe;return Le(e,p,t,Ve.instance),!t.hasProblems()}))||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.errorMessage||Oe("requiredItemMissingWarning","Array does not contain required item.")})}N(t.minItems)&&e.items.length<t.minItems&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("minItemsWarning","Array has too few items. Expected {0} or more.",t.minItems)});N(t.maxItems)&&e.items.length>t.maxItems&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("maxItemsWarning","Array has too many items. Expected {0} or fewer.",t.maxItems)});if(!0===t.uniqueItems){var m=Ne(e);m.some((function(e,t){return t!==m.lastIndexOf(e)}))&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("uniqueItemsWarning","Array has duplicate items.")})}}(e,t,r,n);break;case"string":!function(e,t,r,n){N(t.minLength)&&e.value.length<t.minLength&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("minLengthWarning","String is shorter than the minimum length of {0}.",t.minLength)});N(t.maxLength)&&e.value.length>t.maxLength&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("maxLengthWarning","String is longer than the maximum length of {0}.",t.maxLength)});if(i=t.pattern,"string"==typeof i){new RegExp(t.pattern).test(e.value)||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.patternErrorMessage||t.errorMessage||Oe("patternWarning",'String does not match the pattern of "{0}".',t.pattern)})}var i;if(t.format)switch(t.format){case"uri":case"uri-reference":var o=void 0;if(e.value){var a=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/.exec(e.value);a?a[2]||"uri"!==t.format||(o=Oe("uriSchemeMissing","URI with a scheme is expected.")):o=Oe("uriMissing","URI is expected.")}else o=Oe("uriEmpty","URI expected.");o&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.patternErrorMessage||t.errorMessage||Oe("uriFormatWarning","String is not a URI: {0}",o)});break;case"color-hex":case"date-time":case"date":case"time":case"email":var s=je[t.format];e.value&&s.pattern.exec(e.value)||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.patternErrorMessage||t.errorMessage||s.errorMessage})}}(e,t,r);break;case"number":!function(e,t,r,n){var i=e.value;N(t.multipleOf)&&i%t.multipleOf!=0&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("multipleOfWarning","Value is not divisible by {0}.",t.multipleOf)});function o(e,t){return N(t)?t:$(t)&&t?e:void 0}function a(e,t){if(!$(t)||!t)return e}var s=o(t.minimum,t.exclusiveMinimum);N(s)&&i<=s&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("exclusiveMinimumWarning","Value is below the exclusive minimum of {0}.",s)});var u=o(t.maximum,t.exclusiveMaximum);N(u)&&i>=u&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("exclusiveMaximumWarning","Value is above the exclusive maximum of {0}.",u)});var c=a(t.minimum,t.exclusiveMinimum);N(c)&&i<c&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("minimumWarning","Value is below the minimum of {0}.",c)});var l=a(t.maximum,t.exclusiveMaximum);N(l)&&i>l&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("maximumWarning","Value is above the maximum of {0}.",l)})}(e,t,r);break;case"property":return Le(e.valueNode,t,r,n)}!function(){function i(t){return e.type===t||"integer"===t&&"number"===e.type&&e.isInteger}Array.isArray(t.type)?t.type.some(i)||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.errorMessage||Oe("typeArrayMismatchWarning","Incorrect type. Expected one of {0}.",t.type.join(", "))}):t.type&&(i(t.type)||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.errorMessage||Oe("typeMismatchWarning",'Incorrect type. Expected "{0}".',t.type)}));if(Array.isArray(t.allOf))for(var o=0,a=t.allOf;o<a.length;o++){var s=a[o];Le(e,Me(s),r,n)}var u=Me(t.not);if(u){var c=new Fe,l=n.newSub();Le(e,u,c,l),c.hasProblems()||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("notSchemaWarning","Matches a schema that is not allowed.")});for(var f=0,h=l.schemas;f<h.length;f++){var p=h[f];p.inverted=!p.inverted,n.add(p)}}var m=function(t,i){for(var o=[],a=null,s=0,u=t;s<u.length;s++){var c=Me(u[s]),l=new Fe,f=n.newSub();if(Le(e,c,l,f),l.hasProblems()||o.push(c),a)if(i||l.hasProblems()||a.validationResult.hasProblems()){var h=l.compare(a.validationResult);h>0?a={schema:c,validationResult:l,matchingSchemas:f}:0===h&&(a.matchingSchemas.merge(f),a.validationResult.mergeEnumValues(l))}else a.matchingSchemas.merge(f),a.validationResult.propertiesMatches+=l.propertiesMatches,a.validationResult.propertiesValueMatches+=l.propertiesValueMatches;else a={schema:c,validationResult:l,matchingSchemas:f}}return o.length>1&&i&&r.problems.push({location:{offset:e.offset,length:1},severity:x.Warning,message:Oe("oneOfWarning","Matches multiple schemas when only one must validate.")}),null!==a&&(r.merge(a.validationResult),r.propertiesMatches+=a.validationResult.propertiesMatches,r.propertiesValueMatches+=a.validationResult.propertiesValueMatches,n.merge(a.matchingSchemas)),o.length};Array.isArray(t.anyOf)&&m(t.anyOf,!1);Array.isArray(t.oneOf)&&m(t.oneOf,!0);var d=function(t){var i=new Fe,o=n.newSub();Le(e,Me(t),i,o),r.merge(i),r.propertiesMatches+=i.propertiesMatches,r.propertiesValueMatches+=i.propertiesValueMatches,n.merge(o)},g=Me(t.if);g&&function(t,r,i){var o=Me(t),a=new Fe,s=n.newSub();Le(e,o,a,s),n.merge(s),a.hasProblems()?i&&d(i):r&&d(r)}(g,Me(t.then),Me(t.else));if(Array.isArray(t.enum)){for(var v=Ne(e),y=!1,b=0,S=t.enum;b<S.length;b++){var k=S[b];if(F(v,k)){y=!0;break}}r.enumValues=t.enum,r.enumValueMatch=y,y||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,code:ve.EnumValueMismatch,message:t.errorMessage||Oe("enumWarning","Value is not accepted. Valid values: {0}.",t.enum.map((function(e){return JSON.stringify(e)})).join(", "))})}if(R(t.const)){F(v=Ne(e),t.const)?r.enumValueMatch=!0:(r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,code:ve.EnumValueMismatch,message:t.errorMessage||Oe("constWarning","Value must be {0}.",JSON.stringify(t.const))}),r.enumValueMatch=!1),r.enumValues=[t.const]}t.deprecationMessage&&e.parent&&r.problems.push({location:{offset:e.parent.offset,length:e.parent.length},severity:x.Warning,message:t.deprecationMessage})}(),n.add({node:e,schema:t})}}function De(e,t){var r=e.length-t.length;return r>0?e.lastIndexOf(t)===r:0===r&&e===t}var We=Ae();(function(){function e(e,t,r,n){void 0===t&&(t=[]),void 0===r&&(r=Promise),void 0===n&&(n={}),this.schemaService=e,this.contributions=t,this.promiseConstructor=r,this.clientCapabilities=n,this.templateVarIdCounter=0}e.prototype.doResolve=function(e){for(var t=this.contributions.length-1;t>=0;t--)if(this.contributions[t].resolveCompletion){var r=this.contributions[t].resolveCompletion(e);if(r)return r}return this.promiseConstructor.resolve(e)},e.prototype.doComplete=function(e,t,r){var n=this,i={items:[],isIncomplete:!1},o=e.getText(),a=e.offsetAt(t),s=r.getNodeFromOffset(a,!0);if(this.isInComment(e,s?s.offset:0,a))return Promise.resolve(i);if(s&&a===s.offset+s.length&&a>0){var u=o[a-1];("object"===s.type&&"}"===u||"array"===s.type&&"]"===u)&&(s=s.parent)}var c=this.getCurrentWord(e,a),l=null;if(!s||"string"!==s.type&&"number"!==s.type&&"boolean"!==s.type&&"null"!==s.type){var h=a-c.length;h>0&&'"'===o[h-1]&&h--,l=f.create(e.positionAt(h),t)}else l=f.create(e.positionAt(s.offset),e.positionAt(s.offset+s.length));var p={},m={add:function(e){var t=e.label,r=p[t];if(r)r.documentation||(r.documentation=e.documentation);else{if((t=t.replace(/[\n]/g,"↵")).length>60){var n=t.substr(0,57).trim()+"...";p[n]||(t=n)}l&&(e.textEdit=w.replace(l,e.insertText)),e.label=t,p[t]=e,i.items.push(e)}},setAsIncomplete:function(){i.isIncomplete=!0},error:function(e){console.error(e)},log:function(e){console.log(e)},getNumberOfProposals:function(){return i.items.length}};return this.schemaService.getSchemaForResource(e.uri,r).then((function(t){var u=[],f=!0,h="",d=null;if(s&&"string"===s.type){var g=s.parent;g&&"property"===g.type&&g.keyNode===s&&(f=!g.valueNode,d=g,h=o.substr(s.offset+1,s.length-2),g&&(s=g.parent))}if(s&&"object"===s.type){if(s.offset===a)return i;s.properties.forEach((function(e){d&&d===e||(p[e.keyNode.value]=z.create("__"))}));var v="";f&&(v=n.evaluateSeparatorAfter(e,e.offsetAt(l.end))),t?n.getPropertyCompletions(t,r,s,f,v,m):n.getSchemaLessPropertyCompletions(r,s,h,m);var y=Re(s);n.contributions.forEach((function(t){var r=t.collectPropertyCompletions(e.uri,y,c,f,""===v,m);r&&u.push(r)})),!t&&c.length>0&&'"'!==o.charAt(a-c.length-1)&&(m.add({kind:B.Property,label:n.getLabelForValue(c),insertText:n.getInsertTextForProperty(c,null,!1,v),insertTextFormat:K.Snippet,documentation:""}),m.setAsIncomplete())}var b={};return t?n.getValueCompletions(t,r,s,a,e,m,b):n.getSchemaLessValueCompletions(r,s,a,e,m),n.contributions.length>0&&n.getContributedValueCompletions(r,s,a,e,m,u),n.promiseConstructor.all(u).then((function(){if(0===m.getNumberOfProposals()){var t=a;!s||"string"!==s.type&&"number"!==s.type&&"boolean"!==s.type&&"null"!==s.type||(t=s.offset+s.length);var r=n.evaluateSeparatorAfter(e,t);n.addFillerValueCompletions(b,r,m)}return i}))}))},e.prototype.getPropertyCompletions=function(e,t,r,n,i,o){var a=this;t.getMatchingSchemas(e.schema,r.offset).forEach((function(e){if(e.node===r&&!e.inverted){var t=e.schema.properties;t&&Object.keys(t).forEach((function(e){var r=t[e];if("object"==typeof r&&!r.deprecationMessage&&!r.doNotSuggest){var s={kind:B.Property,label:e,insertText:a.getInsertTextForProperty(e,r,n,i),insertTextFormat:K.Snippet,filterText:a.getFilterTextForValue(e),documentation:a.fromMarkup(r.markdownDescription)||r.description||""};De(s.insertText,"$1"+i)&&(s.command={title:"Suggest",command:"editor.action.triggerSuggest"}),o.add(s)}}))}}))},e.prototype.getSchemaLessPropertyCompletions=function(e,t,r,n){var i=this,o=function(e){e.properties.forEach((function(e){var t=e.keyNode.value;n.add({kind:B.Property,label:t,insertText:i.getInsertTextForValue(t,""),insertTextFormat:K.Snippet,filterText:i.getFilterTextForValue(t),documentation:""})}))};if(t.parent)if("property"===t.parent.type){var a=t.parent.keyNode.value;e.visit((function(e){return"property"===e.type&&e!==t.parent&&e.keyNode.value===a&&e.valueNode&&"object"===e.valueNode.type&&o(e.valueNode),!0}))}else"array"===t.parent.type&&t.parent.items.forEach((function(e){"object"===e.type&&e!==t&&o(e)}));else"object"===t.type&&n.add({kind:B.Property,label:"$schema",insertText:this.getInsertTextForProperty("$schema",null,!0,""),insertTextFormat:K.Snippet,documentation:"",filterText:this.getFilterTextForValue("$schema")})},e.prototype.getSchemaLessValueCompletions=function(e,t,r,n,i){var o=this,a=r;if(!t||"string"!==t.type&&"number"!==t.type&&"boolean"!==t.type&&"null"!==t.type||(a=t.offset+t.length,t=t.parent),!t)return i.add({kind:this.getSuggestionKind("object"),label:"Empty object",insertText:this.getInsertTextForValue({},""),insertTextFormat:K.Snippet,documentation:""}),void i.add({kind:this.getSuggestionKind("array"),label:"Empty array",insertText:this.getInsertTextForValue([],""),insertTextFormat:K.Snippet,documentation:""});var s=this.evaluateSeparatorAfter(n,a),u=function(e){$e(e.parent,r,!0)||i.add({kind:o.getSuggestionKind(e.type),label:o.getLabelTextForMatchingNode(e,n),insertText:o.getInsertTextForMatchingNode(e,n,s),insertTextFormat:K.Snippet,documentation:""}),"boolean"===e.type&&o.addBooleanValueCompletion(!e.value,s,i)};if("property"===t.type&&r>t.colonOffset){var c=t.valueNode;if(c&&(r>c.offset+c.length||"object"===c.type||"array"===c.type))return;var l=t.keyNode.value;e.visit((function(e){return"property"===e.type&&e.keyNode.value===l&&e.valueNode&&u(e.valueNode),!0})),"$schema"===l&&t.parent&&!t.parent.parent&&this.addDollarSchemaCompletions(s,i)}if("array"===t.type)if(t.parent&&"property"===t.parent.type){var f=t.parent.keyNode.value;e.visit((function(e){return"property"===e.type&&e.keyNode.value===f&&e.valueNode&&"array"===e.valueNode.type&&e.valueNode.items.forEach(u),!0}))}else t.items.forEach(u)},e.prototype.getValueCompletions=function(e,t,r,n,i,o,a){var s=this,u=n,c=null,l=null;if(!r||"string"!==r.type&&"number"!==r.type&&"boolean"!==r.type&&"null"!==r.type||(u=r.offset+r.length,l=r,r=r.parent),r){if("property"===r.type&&n>r.colonOffset){var f=r.valueNode;if(f&&n>f.offset+f.length)return;c=r.keyNode.value,r=r.parent}if(r&&(null!==c||"array"===r.type)){var h=this.evaluateSeparatorAfter(i,u);t.getMatchingSchemas(e.schema,r.offset,l).forEach((function(e){if(e.node===r&&!e.inverted&&e.schema){if("array"===r.type&&e.schema.items)if(Array.isArray(e.schema.items)){var t=s.findItemAtOffset(r,i,n);t<e.schema.items.length&&s.addSchemaValueCompletions(e.schema.items[t],h,o,a)}else s.addSchemaValueCompletions(e.schema.items,h,o,a);if(e.schema.properties){var u=e.schema.properties[c];u&&s.addSchemaValueCompletions(u,h,o,a)}}})),"$schema"!==c||r.parent||this.addDollarSchemaCompletions(h,o),a.boolean&&(this.addBooleanValueCompletion(!0,h,o),this.addBooleanValueCompletion(!1,h,o)),a.null&&this.addNullValueCompletion(h,o)}}else this.addSchemaValueCompletions(e.schema,"",o,a)},e.prototype.getContributedValueCompletions=function(e,t,r,n,i,o){if(t){if("string"!==t.type&&"number"!==t.type&&"boolean"!==t.type&&"null"!==t.type||(t=t.parent),"property"===t.type&&r>t.colonOffset){var a=t.keyNode.value,s=t.valueNode;if(!s||r<=s.offset+s.length){var u=Re(t.parent);this.contributions.forEach((function(e){var t=e.collectValueCompletions(n.uri,u,a,i);t&&o.push(t)}))}}}else this.contributions.forEach((function(e){var t=e.collectDefaultCompletions(n.uri,i);t&&o.push(t)}))},e.prototype.addSchemaValueCompletions=function(e,t,r,n){var i=this;"object"==typeof e&&(this.addEnumValueCompletions(e,t,r),this.addDefaultValueCompletions(e,t,r),this.collectTypes(e,n),Array.isArray(e.allOf)&&e.allOf.forEach((function(e){return i.addSchemaValueCompletions(e,t,r,n)})),Array.isArray(e.anyOf)&&e.anyOf.forEach((function(e){return i.addSchemaValueCompletions(e,t,r,n)})),Array.isArray(e.oneOf)&&e.oneOf.forEach((function(e){return i.addSchemaValueCompletions(e,t,r,n)})))},e.prototype.addDefaultValueCompletions=function(e,t,r,n){var i=this;void 0===n&&(n=0);var o=!1;if(R(e.default)){for(var a=e.type,s=e.default,u=n;u>0;u--)s=[s],a="array";r.add({kind:this.getSuggestionKind(a),label:this.getLabelForValue(s),insertText:this.getInsertTextForValue(s,t),insertTextFormat:K.Snippet,detail:We("json.suggest.default","Default value")}),o=!0}Array.isArray(e.examples)&&e.examples.forEach((function(a){for(var s=e.type,u=a,c=n;c>0;c--)u=[u],s="array";r.add({kind:i.getSuggestionKind(s),label:i.getLabelForValue(u),insertText:i.getInsertTextForValue(u,t),insertTextFormat:K.Snippet}),o=!0})),Array.isArray(e.defaultSnippets)&&e.defaultSnippets.forEach((function(a){var s,u,c=e.type,l=a.body,f=a.label;if(R(l)){e.type;for(var h=n;h>0;h--)l=[l],"array";s=i.getInsertTextForSnippetValue(l,t),u=i.getFilterTextForSnippetValue(l),f=f||i.getLabelForSnippetValue(l)}else if("string"==typeof a.bodyText){var p="",m="",d="";for(h=n;h>0;h--)p=p+d+"[\n",m=m+"\n"+d+"]",d+="\t",c="array";s=p+d+a.bodyText.split("\n").join("\n"+d)+m+t,f=f||s,u=s.replace(/[\n]/g,"")}r.add({kind:i.getSuggestionKind(c),label:f,documentation:i.fromMarkup(a.markdownDescription)||a.description,insertText:s,insertTextFormat:K.Snippet,filterText:u}),o=!0})),o||"object"!=typeof e.items||Array.isArray(e.items)||this.addDefaultValueCompletions(e.items,t,r,n+1)},e.prototype.addEnumValueCompletions=function(e,t,r){if(R(e.const)&&r.add({kind:this.getSuggestionKind(e.type),label:this.getLabelForValue(e.const),insertText:this.getInsertTextForValue(e.const,t),insertTextFormat:K.Snippet,documentation:this.fromMarkup(e.markdownDescription)||e.description}),Array.isArray(e.enum))for(var n=0,i=e.enum.length;n<i;n++){var o=e.enum[n],a=this.fromMarkup(e.markdownDescription)||e.description;e.markdownEnumDescriptions&&n<e.markdownEnumDescriptions.length&&this.doesSupportMarkdown()?a=this.fromMarkup(e.markdownEnumDescriptions[n]):e.enumDescriptions&&n<e.enumDescriptions.length&&(a=e.enumDescriptions[n]),r.add({kind:this.getSuggestionKind(e.type),label:this.getLabelForValue(o),insertText:this.getInsertTextForValue(o,t),insertTextFormat:K.Snippet,documentation:a})}},e.prototype.collectTypes=function(e,t){if(!Array.isArray(e.enum)&&!R(e.const)){var r=e.type;Array.isArray(r)?r.forEach((function(e){return t[e]=!0})):t[r]=!0}},e.prototype.addFillerValueCompletions=function(e,t,r){e.object&&r.add({kind:this.getSuggestionKind("object"),label:"{}",insertText:this.getInsertTextForGuessedValue({},t),insertTextFormat:K.Snippet,detail:We("defaults.object","New object"),documentation:""}),e.array&&r.add({kind:this.getSuggestionKind("array"),label:"[]",insertText:this.getInsertTextForGuessedValue([],t),insertTextFormat:K.Snippet,detail:We("defaults.array","New array"),documentation:""})},e.prototype.addBooleanValueCompletion=function(e,t,r){r.add({kind:this.getSuggestionKind("boolean"),label:e?"true":"false",insertText:this.getInsertTextForValue(e,t),insertTextFormat:K.Snippet,documentation:""})},e.prototype.addNullValueCompletion=function(e,t){t.add({kind:this.getSuggestionKind("null"),label:"null",insertText:"null"+e,insertTextFormat:K.Snippet,documentation:""})},e.prototype.addDollarSchemaCompletions=function(e,t){var r=this;this.schemaService.getRegisteredSchemaIds((function(e){return"http"===e||"https"===e})).forEach((function(n){return t.add({kind:B.Module,label:r.getLabelForValue(n),filterText:r.getFilterTextForValue(n),insertText:r.getInsertTextForValue(n,e),insertTextFormat:K.Snippet,documentation:""})}))},e.prototype.getLabelForValue=function(e){return JSON.stringify(e)},e.prototype.getFilterTextForValue=function(e){return JSON.stringify(e)},e.prototype.getFilterTextForSnippetValue=function(e){return JSON.stringify(e).replace(/\$\{\d+:([^}]+)\}|\$\d+/g,"$1")},e.prototype.getLabelForSnippetValue=function(e){return JSON.stringify(e).replace(/\$\{\d+:([^}]+)\}|\$\d+/g,"$1")},e.prototype.getInsertTextForPlainText=function(e){return e.replace(/[\\\$\}]/g,"\\$&")},e.prototype.getInsertTextForValue=function(e,t){var r=JSON.stringify(e,null,"\t");return"{}"===r?"{$1}"+t:"[]"===r?"[$1]"+t:this.getInsertTextForPlainText(r+t)},e.prototype.getInsertTextForSnippetValue=function(e,t){return function e(t,r,n){if(null!==t&&"object"==typeof t){var i=r+"\t";if(Array.isArray(t)){if(0===t.length)return"[]";for(var o="[\n",a=0;a<t.length;a++)o+=i+e(t[a],i,n),a<t.length-1&&(o+=","),o+="\n";return o+=r+"]"}var s=Object.keys(t);if(0===s.length)return"{}";for(o="{\n",a=0;a<s.length;a++){var u=s[a];o+=i+JSON.stringify(u)+": "+e(t[u],i,n),a<s.length-1&&(o+=","),o+="\n"}return o+=r+"}"}return n(t)}(e,"",(function(e){return"string"==typeof e&&"^"===e[0]?e.substr(1):JSON.stringify(e)}))+t},e.prototype.getInsertTextForGuessedValue=function(e,t){switch(typeof e){case"object":return null===e?"${1:null}"+t:this.getInsertTextForValue(e,t);case"string":var r=JSON.stringify(e);return r=r.substr(1,r.length-2),'"${1:'+(r=this.getInsertTextForPlainText(r))+'}"'+t;case"number":case"boolean":return"${1:"+JSON.stringify(e)+"}"+t}return this.getInsertTextForValue(e,t)},e.prototype.getSuggestionKind=function(e){if(Array.isArray(e)){var t=e;e=t.length>0?t[0]:null}if(!e)return B.Value;switch(e){case"string":return B.Value;case"object":return B.Module;case"property":return B.Property;default:return B.Value}},e.prototype.getLabelTextForMatchingNode=function(e,t){switch(e.type){case"array":return"[]";case"object":return"{}";default:return t.getText().substr(e.offset,e.length)}},e.prototype.getInsertTextForMatchingNode=function(e,t,r){switch(e.type){case"array":return this.getInsertTextForValue([],r);case"object":return this.getInsertTextForValue({},r);default:var n=t.getText().substr(e.offset,e.length)+r;return this.getInsertTextForPlainText(n)}},e.prototype.getInsertTextForProperty=function(e,t,r,n){var i=this.getInsertTextForValue(e,"");if(!r)return i;var o,a=i+": ",s=0;if(t){if(Array.isArray(t.defaultSnippets)){if(1===t.defaultSnippets.length){var u=t.defaultSnippets[0].body;R(u)&&(o=this.getInsertTextForSnippetValue(u,""))}s+=t.defaultSnippets.length}if(t.enum&&(o||1!==t.enum.length||(o=this.getInsertTextForGuessedValue(t.enum[0],"")),s+=t.enum.length),R(t.default)&&(o||(o=this.getInsertTextForGuessedValue(t.default,"")),s++),Array.isArray(t.examples)&&t.examples.length&&(o||(o=this.getInsertTextForGuessedValue(t.examples[0],"")),s+=t.examples.length),0===s){var c=Array.isArray(t.type)?t.type[0]:t.type;switch(c||(t.properties?c="object":t.items&&(c="array")),c){case"boolean":o="$1";break;case"string":o='"$1"';break;case"object":o="{$1}";break;case"array":o="[$1]";break;case"number":case"integer":o="${1:0}";break;case"null":o="${1:null}";break;default:return i}}}return(!o||s>1)&&(o="$1"),a+o+n},e.prototype.getCurrentWord=function(e,t){for(var r=t-1,n=e.getText();r>=0&&-1===' \t\n\r\v":{[,]}'.indexOf(n.charAt(r));)r--;return n.substring(r+1,t)},e.prototype.evaluateSeparatorAfter=function(e,t){var r=j(e.getText(),!0);switch(r.setPosition(t),r.scan()){case 5:case 2:case 4:case 17:return"";default:return","}},e.prototype.findItemAtOffset=function(e,t,r){for(var n=j(t.getText(),!0),i=e.items,o=i.length-1;o>=0;o--){var a=i[o];if(r>a.offset+a.length)return n.setPosition(a.offset+a.length),5===n.scan()&&r>=n.getTokenOffset()+n.getTokenLength()?o+1:o;if(r>=a.offset)return o}return 0},e.prototype.isInComment=function(e,t,r){var n=j(e.getText(),!1);n.setPosition(t);for(var i=n.scan();17!==i&&n.getTokenOffset()+n.getTokenLength()<r;)i=n.scan();return(12===i||13===i)&&n.getTokenOffset()<=r},e.prototype.fromMarkup=function(e){if(e&&this.doesSupportMarkdown())return{kind:U.Markdown,value:e}},e.prototype.doesSupportMarkdown=function(){if(!R(this.supportsMarkdown)){var e=this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.completion;this.supportsMarkdown=e&&e.completionItem&&Array.isArray(e.completionItem.documentationFormat)&&-1!==e.completionItem.documentationFormat.indexOf(U.Markdown)}return this.supportsMarkdown},e.prototype.doesSupportsCommitCharacters=function(){if(!R(this.supportsCommitCharacters)){var e=this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.completion;this.supportsCommitCharacters=e&&e.completionItem&&!!e.completionItem.commitCharactersSupport}return this.supportsCommitCharacters}})(),function(){function e(e,t,r){void 0===t&&(t=[]),this.schemaService=e,this.contributions=t,this.promise=r||Promise}e.prototype.doHover=function(e,t,r){var n=e.offsetAt(t),i=r.getNodeFromOffset(n);if(!i||("object"===i.type||"array"===i.type)&&n>i.offset+1&&n<i.offset+i.length-1)return this.promise.resolve(null);var o=i;if("string"===i.type){var a=i.parent;if(a&&"property"===a.type&&a.keyNode===i&&!(i=a.valueNode))return this.promise.resolve(null)}for(var s=f.create(e.positionAt(o.offset),e.positionAt(o.offset+o.length)),u=function(e){return{contents:e,range:s}},c=Re(i),l=this.contributions.length-1;l>=0;l--){var h=this.contributions[l].getInfoContribution(e.uri,c);if(h)return h.then((function(e){return u(e)}))}return this.schemaService.getSchemaForResource(e.uri,r).then((function(e){if(e){var t=r.getMatchingSchemas(e.schema,i.offset),n=null,o=null,a=null,s=null;t.every((function(e){if(e.node===i&&!e.inverted&&e.schema&&(n=n||e.schema.title,o=o||e.schema.markdownDescription||Ue(e.schema.description),e.schema.enum)){var t=e.schema.enum.indexOf(Ne(i));e.schema.markdownEnumDescriptions?a=e.schema.markdownEnumDescriptions[t]:e.schema.enumDescriptions&&(a=Ue(e.schema.enumDescriptions[t])),a&&"string"!=typeof(s=e.schema.enum[t])&&(s=JSON.stringify(s))}return!0}));var c="";return n&&(c=Ue(n)),o&&(c.length>0&&(c+="\n\n"),c+=o),a&&(c.length>0&&(c+="\n\n"),c+="`"+function(e){if(-1!==e.indexOf("`"))return"`` "+e+" ``";return e}(s)+"`: "+a),u([c])}return null}))}}();function Ue(e){if(e)return e.replace(/([^\n\r])(\r?\n)([^\n\r])/gm,"$1\n\n$3").replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}var qe,Be,Ke=function(){var e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(t,r)};return function(t,r){function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();if("object"==typeof process)Be="win32"===process.platform;else if("object"==typeof navigator){var Je=navigator.userAgent;Be=Je.indexOf("Windows")>=0}var ze=/^\w[\w\d+.-]*$/,He=/^\//,Ge=/^\/\//;var Ze="/",Xe=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,Qe=function(){function e(e,t,r,n,i,o){void 0===o&&(o=!1),"object"==typeof e?(this.scheme=e.scheme||"",this.authority=e.authority||"",this.path=e.path||"",this.query=e.query||"",this.fragment=e.fragment||""):(this.scheme=function(e,t){return e||t?e:"file"}(e,o),this.authority=t||"",this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==Ze&&(t=Ze+t):t=Ze}return t}(this.scheme,r||""),this.query=n||"",this.fragment=i||"",function(e,t){if(!e.scheme&&t)throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'+e.authority+'", path: "'+e.path+'", query: "'+e.query+'", fragment: "'+e.fragment+'"}');if(e.scheme&&!ze.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!He.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(Ge.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}(this,o))}return e.isUri=function(t){return t instanceof e||!!t&&("string"==typeof t.authority&&"string"==typeof t.fragment&&"string"==typeof t.path&&"string"==typeof t.query&&"string"==typeof t.scheme&&"function"==typeof t.fsPath&&"function"==typeof t.with&&"function"==typeof t.toString)},Object.defineProperty(e.prototype,"fsPath",{get:function(){return it(this)},enumerable:!0,configurable:!0}),e.prototype.with=function(e){if(!e)return this;var t=e.scheme,r=e.authority,n=e.path,i=e.query,o=e.fragment;return void 0===t?t=this.scheme:null===t&&(t=""),void 0===r?r=this.authority:null===r&&(r=""),void 0===n?n=this.path:null===n&&(n=""),void 0===i?i=this.query:null===i&&(i=""),void 0===o?o=this.fragment:null===o&&(o=""),t===this.scheme&&r===this.authority&&n===this.path&&i===this.query&&o===this.fragment?this:new et(t,r,n,i,o)},e.parse=function(e,t){void 0===t&&(t=!1);var r=Xe.exec(e);return r?new et(r[2]||"",decodeURIComponent(r[4]||""),decodeURIComponent(r[5]||""),decodeURIComponent(r[7]||""),decodeURIComponent(r[9]||""),t):new et("","","","","")},e.file=function(e){var t="";if(Be&&(e=e.replace(/\\/g,Ze)),e[0]===Ze&&e[1]===Ze){var r=e.indexOf(Ze,2);-1===r?(t=e.substring(2),e=Ze):(t=e.substring(2,r),e=e.substring(r)||Ze)}return new et("file",t,e,"","")},e.from=function(e){return new et(e.scheme,e.authority,e.path,e.query,e.fragment)},e.prototype.toString=function(e){return void 0===e&&(e=!1),ot(this,e)},e.prototype.toJSON=function(){return this},e.revive=function(t){if(t){if(t instanceof e)return t;var r=new et(t);return r._formatted=t.external,r._fsPath=t._sep===Ye?t.fsPath:null,r}return t},e}(),Ye=Be?1:void 0,et=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._formatted=null,t._fsPath=null,t}return Ke(t,e),Object.defineProperty(t.prototype,"fsPath",{get:function(){return this._fsPath||(this._fsPath=it(this)),this._fsPath},enumerable:!0,configurable:!0}),t.prototype.toString=function(e){return void 0===e&&(e=!1),e?ot(this,!0):(this._formatted||(this._formatted=ot(this,!1)),this._formatted)},t.prototype.toJSON=function(){var e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=Ye),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e},t}(Qe),tt=((qe={})[58]="%3A",qe[47]="%2F",qe[63]="%3F",qe[35]="%23",qe[91]="%5B",qe[93]="%5D",qe[64]="%40",qe[33]="%21",qe[36]="%24",qe[38]="%26",qe[39]="%27",qe[40]="%28",qe[41]="%29",qe[42]="%2A",qe[43]="%2B",qe[44]="%2C",qe[59]="%3B",qe[61]="%3D",qe[32]="%20",qe);function rt(e,t){for(var r=void 0,n=-1,i=0;i<e.length;i++){var o=e.charCodeAt(i);if(o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||45===o||46===o||95===o||126===o||t&&47===o)-1!==n&&(r+=encodeURIComponent(e.substring(n,i)),n=-1),void 0!==r&&(r+=e.charAt(i));else{void 0===r&&(r=e.substr(0,i));var a=tt[o];void 0!==a?(-1!==n&&(r+=encodeURIComponent(e.substring(n,i)),n=-1),r+=a):-1===n&&(n=i)}}return-1!==n&&(r+=encodeURIComponent(e.substring(n))),void 0!==r?r:e}function nt(e){for(var t=void 0,r=0;r<e.length;r++){var n=e.charCodeAt(r);35===n||63===n?(void 0===t&&(t=e.substr(0,r)),t+=tt[n]):void 0!==t&&(t+=e[r])}return void 0!==t?t:e}function it(e){var t;return t=e.authority&&e.path.length>1&&"file"===e.scheme?"//"+e.authority+e.path:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?e.path[1].toLowerCase()+e.path.substr(2):e.path,Be&&(t=t.replace(/\//g,"\\")),t}function ot(e,t){var r=t?nt:rt,n="",i=e.scheme,o=e.authority,a=e.path,s=e.query,u=e.fragment;if(i&&(n+=i,n+=":"),(o||"file"===i)&&(n+=Ze,n+=Ze),o){var c=o.indexOf("@");if(-1!==c){var l=o.substr(0,c);o=o.substr(c+1),-1===(c=l.indexOf(":"))?n+=r(l,!1):(n+=r(l.substr(0,c),!1),n+=":",n+=r(l.substr(c+1),!1)),n+="@"}-1===(c=(o=o.toLowerCase()).indexOf(":"))?n+=r(o,!1):(n+=r(o.substr(0,c),!1),n+=o.substr(c))}if(a){if(a.length>=3&&47===a.charCodeAt(0)&&58===a.charCodeAt(2))(f=a.charCodeAt(1))>=65&&f<=90&&(a="/"+String.fromCharCode(f+32)+":"+a.substr(3));else if(a.length>=2&&58===a.charCodeAt(1)){var f;(f=a.charCodeAt(0))>=65&&f<=90&&(a=String.fromCharCode(f+32)+":"+a.substr(2))}n+=r(a,!0)}return s&&(n+="?",n+=r(s,!1)),u&&(n+="#",n+=t?u:rt(u,!1)),n}var at=Ae(),st=function(){function e(e){try{this.patternRegExp=new RegExp(function(e){return e.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*")}(e)+"$")}catch(e){this.patternRegExp=null}this.schemas=[]}return e.prototype.addSchema=function(e){this.schemas.push(e)},e.prototype.matchesPattern=function(e){return this.patternRegExp&&this.patternRegExp.test(e)},e.prototype.getSchemas=function(){return this.schemas},e}(),ut=function(){function e(e,t,r){this.service=e,this.url=t,this.dependencies={},r&&(this.unresolvedSchema=this.service.promise.resolve(new ct(r)))}return e.prototype.getUnresolvedSchema=function(){return this.unresolvedSchema||(this.unresolvedSchema=this.service.loadSchema(this.url)),this.unresolvedSchema},e.prototype.getResolvedSchema=function(){var e=this;return this.resolvedSchema||(this.resolvedSchema=this.getUnresolvedSchema().then((function(t){return e.service.resolveSchemaContent(t,e.url,e.dependencies)}))),this.resolvedSchema},e.prototype.clearSchema=function(){this.resolvedSchema=null,this.unresolvedSchema=null,this.dependencies={}},e}(),ct=function(e,t){void 0===t&&(t=[]),this.schema=e,this.errors=t},lt=function(){function e(e,t){void 0===t&&(t=[]),this.schema=e,this.errors=t}return e.prototype.getSection=function(e){return Me(this.getSectionRecursive(e,this.schema))},e.prototype.getSectionRecursive=function(e,t){if(!t||"boolean"==typeof t||0===e.length)return t;var r=e.shift();if(t.properties&&(t.properties[r],1))return this.getSectionRecursive(e,t.properties[r]);if(t.patternProperties)for(var n=0,i=Object.keys(t.patternProperties);n<i.length;n++){var o=i[n];if(new RegExp(o).test(r))return this.getSectionRecursive(e,t.patternProperties[o])}else{if("object"==typeof t.additionalProperties)return this.getSectionRecursive(e,t.additionalProperties);if(r.match("[0-9]+"))if(Array.isArray(t.items)){var a=parseInt(r,10);if(!isNaN(a)&&t.items[a])return this.getSectionRecursive(e,t.items[a])}else if(t.items)return this.getSectionRecursive(e,t.items)}return null},e}();!function(){function e(e,t,r){this.contextService=t,this.requestService=e,this.promiseConstructor=r||Promise,this.callOnDispose=[],this.contributionSchemas={},this.contributionAssociations={},this.schemasById={},this.filePatternAssociations=[],this.filePatternAssociationById={},this.registeredSchemasIds={}}e.prototype.getRegisteredSchemaIds=function(e){return Object.keys(this.registeredSchemasIds).filter((function(t){var r=Qe.parse(t).scheme;return"schemaservice"!==r&&(!e||e(r))}))},Object.defineProperty(e.prototype,"promise",{get:function(){return this.promiseConstructor},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){for(;this.callOnDispose.length>0;)this.callOnDispose.pop()()},e.prototype.onResourceChange=function(e){for(var t=this,r=!1,n=[e=this.normalizeId(e)],i=Object.keys(this.schemasById).map((function(e){return t.schemasById[e]}));n.length;)for(var o=n.pop(),a=0;a<i.length;a++){var s=i[a];s&&(s.url===o||s.dependencies[o])&&(s.url!==o&&n.push(s.url),s.clearSchema(),i[a]=void 0,r=!0)}return r},e.prototype.normalizeId=function(e){try{return Qe.parse(e).toString()}catch(t){return e}},e.prototype.setSchemaContributions=function(e){if(e.schemas){var t=e.schemas;for(var r in t){var n=this.normalizeId(r);this.contributionSchemas[n]=this.addSchemaHandle(n,t[r])}}if(e.schemaAssociations){var i=e.schemaAssociations;for(var o in i){var a=i[o];this.contributionAssociations[o]=a;for(var s=this.getOrAddFilePatternAssociation(o),u=0,c=a;u<c.length;u++){var l=c[u];r=this.normalizeId(l);s.addSchema(r)}}}},e.prototype.addSchemaHandle=function(e,t){var r=new ut(this,e,t);return this.schemasById[e]=r,r},e.prototype.getOrAddSchemaHandle=function(e,t){return this.schemasById[e]||this.addSchemaHandle(e,t)},e.prototype.getOrAddFilePatternAssociation=function(e){var t=this.filePatternAssociationById[e];return t||(t=new st(e),this.filePatternAssociationById[e]=t,this.filePatternAssociations.push(t)),t},e.prototype.registerExternalSchema=function(e,t,r){void 0===t&&(t=null);var n=this.normalizeId(e);if(this.registeredSchemasIds[n]=!0,t)for(var i=0,o=t;i<o.length;i++){var a=o[i];this.getOrAddFilePatternAssociation(a).addSchema(n)}return r?this.addSchemaHandle(n,r):this.getOrAddSchemaHandle(n)},e.prototype.clearExternalSchemas=function(){for(var e in this.schemasById={},this.filePatternAssociations=[],this.filePatternAssociationById={},this.registeredSchemasIds={},this.contributionSchemas)this.schemasById[e]=this.contributionSchemas[e],this.registeredSchemasIds[e]=!0;for(var t in this.contributionAssociations)for(var r=this.getOrAddFilePatternAssociation(t),n=0,i=this.contributionAssociations[t];n<i.length;n++){var o=i[n];e=this.normalizeId(o);r.addSchema(e)}},e.prototype.getResolvedSchema=function(e){var t=this.normalizeId(e),r=this.schemasById[t];return r?r.getResolvedSchema():this.promise.resolve(null)},e.prototype.loadSchema=function(e){if(!this.requestService){var t=at("json.schema.norequestservice","Unable to load schema from '{0}'. No schema request service available",ft(e));return this.promise.resolve(new ct({},[t]))}return this.requestService(e).then((function(t){if(!t){var r=at("json.schema.nocontent","Unable to load schema from '{0}': No content.",ft(e));return new ct({},[r])}var n,i=[];n=P(t,i);var o=i.length?[at("json.schema.invalidFormat","Unable to parse content from '{0}': Parse error at offset {1}.",ft(e),i[0].offset)]:[];return new ct(n,o)}),(function(t){var r=t.toString(),n=t.toString().split("Error: ");return n.length>1&&(r=n[1]),De(r,".")&&(r=r.substr(0,r.length-1)),new ct({},[at("json.schema.nocontent","Unable to load schema from '{0}': {1}.",ft(e),r)])}))},e.prototype.resolveSchemaContent=function(e,t,r){var n=this,i=e.errors.slice(0),o=e.schema;if(o.$schema){var a=this.normalizeId(o.$schema);if("http://json-schema.org/draft-03/schema"===a)return this.promise.resolve(new lt({},[at("json.schema.draft03.notsupported","Draft-03 schemas are not supported.")]));"https://json-schema.org/draft/2019-09/schema"===a&&e.errors.push(at("json.schema.draft201909.notsupported","Draft 2019-09 schemas are not yet fully supported."))}var s=this.contextService,u=function(e,t,r,n){var o=function(e,t){if(!t)return e;var r=e;return"/"===t[0]&&(t=t.substr(1)),t.split("/").some((function(e){return!(r=r[e])})),r}(t,n);if(o)for(var a in o)o.hasOwnProperty(a)&&!e.hasOwnProperty(a)&&(e[a]=o[a]);else i.push(at("json.schema.invalidref","$ref '{0}' in '{1}' can not be resolved.",n,r))},c=function(e,t,r,o,a){s&&!/^\w+:\/\/.*/.test(t)&&(t=s.resolveRelativePath(t,o)),t=n.normalizeId(t);var c=n.getOrAddSchemaHandle(t);return c.getUnresolvedSchema().then((function(n){if(a[t]=!0,n.errors.length){var o=r?t+"#"+r:t;i.push(at("json.schema.problemloadingref","Problems loading reference '{0}': {1}",o,n.errors[0]))}return u(e,n.schema,t,r),l(e,n.schema,t,c.dependencies)}))},l=function(e,t,r,i){if(!e||"object"!=typeof e)return Promise.resolve(null);for(var o=[e],a=[],s=[],l=function(e){for(var n=[];e.$ref;){var a=e.$ref,l=a.split("#",2);if(delete e.$ref,l[0].length>0)return void s.push(c(e,l[0],l[1],r,i));-1===n.indexOf(a)&&(u(e,t,r,l[1]),n.push(a))}!function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var r=0,n=e;r<n.length;r++){var i=n[r];"object"==typeof i&&o.push(i)}}(e.items,e.additionalProperties,e.not,e.contains,e.propertyNames,e.if,e.then,e.else),function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var r=0,n=e;r<n.length;r++){var i=n[r];if("object"==typeof i)for(var a in i){var s=i[a];"object"==typeof s&&o.push(s)}}}(e.definitions,e.properties,e.patternProperties,e.dependencies),function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var r=0,n=e;r<n.length;r++){var i=n[r];if(Array.isArray(i))for(var a=0,s=i;a<s.length;a++){var u=s[a];"object"==typeof u&&o.push(u)}}}(e.anyOf,e.allOf,e.oneOf,e.items)};o.length;){var f=o.pop();a.indexOf(f)>=0||(a.push(f),l(f))}return n.promise.all(s)};return l(o,o,t,r).then((function(e){return new lt(o,i)}))},e.prototype.getSchemaForResource=function(e,t){if(t&&t.root&&"object"===t.root.type){var r=t.root.properties.filter((function(e){return"$schema"===e.keyNode.value&&e.valueNode&&"string"===e.valueNode.type}));if(r.length>0){var n=Ne(r[0].valueNode);if(n&&function(e,t){if(e.length<t.length)return!1;for(var r=0;r<t.length;r++)if(e[r]!==t[r])return!1;return!0}(n,".")&&this.contextService&&(n=this.contextService.resolveRelativePath(n,e)),n){var i=this.normalizeId(n);return this.getOrAddSchemaHandle(i).getResolvedSchema()}}}for(var o=Object.create(null),a=[],s=0,u=this.filePatternAssociations;s<u.length;s++){var c=u[s];if(c.matchesPattern(e))for(var l=0,f=c.getSchemas();l<f.length;l++){var h=f[l];o[h]||(a.push(h),o[h]=!0)}}return a.length>0?this.createCombinedSchema(e,a).getResolvedSchema():this.promise.resolve(null)},e.prototype.createCombinedSchema=function(e,t){if(1===t.length)return this.getOrAddSchemaHandle(t[0]);var r="schemaservice://combinedSchema/"+encodeURIComponent(e),n={allOf:t.map((function(e){return{$ref:e}}))};return this.addSchemaHandle(r,n)}}();function ft(e){try{var t=Qe.parse(e);if("file"===t.scheme)return t.fsPath}catch(e){}return e}var ht=Ae(),pt=(function(){function e(e,t){this.jsonSchemaService=e,this.promise=t,this.validationEnabled=!0}e.prototype.configure=function(e){e&&(this.validationEnabled=e.validate,this.commentSeverity=e.allowComments?void 0:x.Error)},e.prototype.doValidation=function(e,t,r,n){var i=this;if(!this.validationEnabled)return this.promise.resolve([]);var o=[],a={},s=function(e){var t=e.range.start.line+" "+e.range.start.character+" "+e.message;a[t]||(a[t]=!0,o.push(e))},u=function(n){var a=r?mt(r.trailingCommas):x.Error,u=r?mt(r.comments):i.commentSeverity;if(n){if(n.errors.length&&t.root){var c=t.root,l="object"===c.type?c.properties[0]:null;if(l&&"$schema"===l.keyNode.value){var h=l.valueNode||l,p=f.create(e.positionAt(h.offset),e.positionAt(h.offset+h.length));s(k.create(p,n.errors[0],x.Warning,ve.SchemaResolveError))}else{p=f.create(e.positionAt(c.offset),e.positionAt(c.offset+1));s(k.create(p,n.errors[0],x.Warning,ve.SchemaResolveError))}}else{var m=t.validate(e,n.schema);m&&m.forEach(s)}(function e(t){if(t&&"object"==typeof t){if($(t.allowComments))return t.allowComments;if(t.allOf)for(var r=0,n=t.allOf;r<n.length;r++){var i=n[r],o=e(i);if($(o))return o}}return})(n.schema)&&(u=void 0),function e(t){if(t&&"object"==typeof t){if($(t.allowTrailingCommas))return t.allowTrailingCommas;if($(t.allowsTrailingCommas))return t.allowsTrailingCommas;if(t.allOf)for(var r=0,n=t.allOf;r<n.length;r++){var i=n[r],o=e(i);if($(o))return o}}return}(n.schema)&&(a=void 0)}for(var d=0,g=t.syntaxErrors;d<g.length;d++){var v=g[d];if(v.code===ve.TrailingComma){if("number"!=typeof a)continue;v.severity=a}s(v)}if("number"==typeof u){var y=ht("InvalidCommentToken","Comments are not permitted in JSON.");t.comments.forEach((function(e){s(k.create(e,y,u,ve.CommentNotPermitted))}))}return o};if(n){var c=n.id||"schemaservice://untitled/"+pt++;return this.jsonSchemaService.resolveSchemaContent(new ct(n),c,{}).then((function(e){return u(e)}))}return this.jsonSchemaService.getSchemaForResource(e.uri,t).then((function(e){return u(e)}))}}(),0);function mt(e){switch(e){case"error":return x.Error;case"warning":return x.Warning;case"ignore":return}}function dt(e){return e<48?0:e<=57?e-48:(e<97&&(e+=32),e>=97&&e<=102?e-97+10:0)}function gt(e){if("#"!==e[0])return null;switch(e.length){case 4:return{red:17*dt(e.charCodeAt(1))/255,green:17*dt(e.charCodeAt(2))/255,blue:17*dt(e.charCodeAt(3))/255,alpha:1};case 5:return{red:17*dt(e.charCodeAt(1))/255,green:17*dt(e.charCodeAt(2))/255,blue:17*dt(e.charCodeAt(3))/255,alpha:17*dt(e.charCodeAt(4))/255};case 7:return{red:(16*dt(e.charCodeAt(1))+dt(e.charCodeAt(2)))/255,green:(16*dt(e.charCodeAt(3))+dt(e.charCodeAt(4)))/255,blue:(16*dt(e.charCodeAt(5))+dt(e.charCodeAt(6)))/255,alpha:1};case 9:return{red:(16*dt(e.charCodeAt(1))+dt(e.charCodeAt(2)))/255,green:(16*dt(e.charCodeAt(3))+dt(e.charCodeAt(4)))/255,blue:(16*dt(e.charCodeAt(5))+dt(e.charCodeAt(6)))/255,alpha:(16*dt(e.charCodeAt(7))+dt(e.charCodeAt(8)))/255}}return null}!function(){function e(e){this.schemaService=e}e.prototype.findDocumentSymbols=function(e,t,r){var n=this;void 0===r&&(r={resultLimit:Number.MAX_VALUE});var i=t.root;if(!i)return null;var o=r.resultLimit,a=e.uri;if(("vscode://defaultsettings/keybindings.json"===a||De(a.toLowerCase(),"/user/keybindings.json"))&&"array"===i.type){for(var s=[],u=0,c=i.items;u<c.length;u++){var l=c[u];if("object"===l.type)for(var f=0,p=l.properties;f<p.length;f++){var m=p[f];if("key"===m.keyNode.value&&m.valueNode){var d=h.create(e.uri,vt(e,l));if(s.push({name:Ne(m.valueNode),kind:te.Function,location:d}),--o<=0)return r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(a),s}}}return s}for(var g=[{node:i,containerName:""}],v=0,y=!1,b=[],x=function(t,r){"array"===t.type?t.items.forEach((function(e){e&&g.push({node:e,containerName:r})})):"object"===t.type&&t.properties.forEach((function(t){var i=t.valueNode;if(i)if(o>0){o--;var a=h.create(e.uri,vt(e,t)),s=r?r+"."+t.keyNode.value:t.keyNode.value;b.push({name:n.getKeyLabel(t),kind:n.getSymbolKind(i.type),location:a,containerName:r}),g.push({node:i,containerName:s})}else y=!0}))};v<g.length;){var S=g[v++];x(S.node,S.containerName)}return y&&r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(a),b},e.prototype.findDocumentSymbols2=function(e,t,r){var n=this;void 0===r&&(r={resultLimit:Number.MAX_VALUE});var i=t.root;if(!i)return null;var o=r.resultLimit,a=e.uri;if(("vscode://defaultsettings/keybindings.json"===a||De(a.toLowerCase(),"/user/keybindings.json"))&&"array"===i.type){for(var s=[],u=0,c=i.items;u<c.length;u++){var l=c[u];if("object"===l.type)for(var f=0,h=l.properties;f<h.length;f++){var p=h[f];if("key"===p.keyNode.value&&p.valueNode){var m=vt(e,l),d=vt(e,p.keyNode);if(s.push({name:Ne(p.valueNode),kind:te.Function,range:m,selectionRange:d}),--o<=0)return r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(a),s}}}return s}for(var g=[],v=[{node:i,result:g}],y=0,b=!1,x=function(t,r){"array"===t.type?t.items.forEach((function(t,i){if(t)if(o>0){o--;var a=vt(e,t),s=a,u={name:String(i),kind:n.getSymbolKind(t.type),range:a,selectionRange:s,children:[]};r.push(u),v.push({result:u.children,node:t})}else b=!0})):"object"===t.type&&t.properties.forEach((function(t){var i=t.valueNode;if(i)if(o>0){o--;var a=vt(e,t),s=vt(e,t.keyNode),u={name:n.getKeyLabel(t),kind:n.getSymbolKind(i.type),range:a,selectionRange:s,children:[]};r.push(u),v.push({result:u.children,node:i})}else b=!0}))};y<v.length;){var S=v[y++];x(S.node,S.result)}return b&&r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(a),g},e.prototype.getSymbolKind=function(e){switch(e){case"object":return te.Module;case"string":return te.String;case"number":return te.Number;case"array":return te.Array;case"boolean":return te.Boolean;default:return te.Variable}},e.prototype.getKeyLabel=function(e){var t=e.keyNode.value;return t&&(t=t.replace(/[\n]/g,"↵")),t&&t.trim()?t:'"'+t+'"'},e.prototype.findDocumentColors=function(e,t,r){return this.schemaService.getSchemaForResource(e.uri,t).then((function(n){var i=[];if(n)for(var o=r&&"number"==typeof r.resultLimit?r.resultLimit:Number.MAX_VALUE,a={},s=0,u=t.getMatchingSchemas(n.schema);s<u.length;s++){var c=u[s];if(!c.inverted&&c.schema&&("color"===c.schema.format||"color-hex"===c.schema.format)&&c.node&&"string"===c.node.type){var l=String(c.node.offset);if(!a[l]){var f=gt(Ne(c.node));if(f){var h=vt(e,c.node);i.push({color:f,range:h})}if(a[l]=!0,--o<=0)return r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(e.uri),i}}}return i}))},e.prototype.getColorPresentations=function(e,t,r,n){var i,o=[],a=Math.round(255*r.red),s=Math.round(255*r.green),u=Math.round(255*r.blue);function c(e){var t=e.toString(16);return 2!==t.length?"0"+t:t}return i=1===r.alpha?"#"+c(a)+c(s)+c(u):"#"+c(a)+c(s)+c(u)+c(Math.round(255*r.alpha)),o.push({label:i,textEdit:w.replace(n,JSON.stringify(i))}),o}}();function vt(e,t){return f.create(e.positionAt(t.offset),e.positionAt(t.offset+t.length))}var yt=Ae(),bt={schemaAssociations:{},schemas:{"http://json-schema.org/draft-04/schema#":{title:yt("schema.json","Describes a JSON file using a schema. See json-schema.org for more info."),$schema:"http://json-schema.org/draft-04/schema#",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},positiveInteger:{type:"integer",minimum:0},positiveIntegerDefault0:{allOf:[{$ref:"#/definitions/positiveInteger"},{default:0}]},simpleTypes:{type:"string",enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},minItems:1,uniqueItems:!0}},type:"object",properties:{id:{type:"string",format:"uri"},$schema:{type:"string",format:"uri"},title:{type:"string"},description:{type:"string"},default:{},multipleOf:{type:"number",minimum:0,exclusiveMinimum:!0},maximum:{type:"number"},exclusiveMaximum:{type:"boolean",default:!1},minimum:{type:"number"},exclusiveMinimum:{type:"boolean",default:!1},maxLength:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minLength:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},pattern:{type:"string",format:"regex"},additionalItems:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:{}},maxItems:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minItems:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},uniqueItems:{type:"boolean",default:!1},maxProperties:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minProperties:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},required:{allOf:[{$ref:"#/definitions/stringArray"}]},additionalProperties:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},enum:{type:"array",minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{anyOf:[{type:"string",enum:["date-time","uri","email","hostname","ipv4","ipv6","regex"]},{type:"string"}]},allOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},anyOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},oneOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},not:{allOf:[{$ref:"#"}]}},dependencies:{exclusiveMaximum:["maximum"],exclusiveMinimum:["minimum"]},default:{}},"http://json-schema.org/draft-07/schema#":{title:yt("schema.json","Describes a JSON file using a schema. See json-schema.org for more info."),definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}}},xt={id:yt("schema.json.id","A unique identifier for the schema."),$schema:yt("schema.json.$schema","The schema to verify this document against."),title:yt("schema.json.title","A descriptive title of the element."),description:yt("schema.json.description","A long description of the element. Used in hover menus and suggestions."),default:yt("schema.json.default","A default value. Used by suggestions."),multipleOf:yt("schema.json.multipleOf","A number that should cleanly divide the current value (i.e. have no remainder)."),maximum:yt("schema.json.maximum","The maximum numerical value, inclusive by default."),exclusiveMaximum:yt("schema.json.exclusiveMaximum","Makes the maximum property exclusive."),minimum:yt("schema.json.minimum","The minimum numerical value, inclusive by default."),exclusiveMinimum:yt("schema.json.exclusiveMininum","Makes the minimum property exclusive."),maxLength:yt("schema.json.maxLength","The maximum length of a string."),minLength:yt("schema.json.minLength","The minimum length of a string."),pattern:yt("schema.json.pattern","A regular expression to match the string against. It is not implicitly anchored."),additionalItems:yt("schema.json.additionalItems","For arrays, only when items is set as an array. If it is a schema, then this schema validates items after the ones specified by the items array. If it is false, then additional items will cause validation to fail."),items:yt("schema.json.items","For arrays. Can either be a schema to validate every element against or an array of schemas to validate each item against in order (the first schema will validate the first element, the second schema will validate the second element, and so on."),maxItems:yt("schema.json.maxItems","The maximum number of items that can be inside an array. Inclusive."),minItems:yt("schema.json.minItems","The minimum number of items that can be inside an array. Inclusive."),uniqueItems:yt("schema.json.uniqueItems","If all of the items in the array must be unique. Defaults to false."),maxProperties:yt("schema.json.maxProperties","The maximum number of properties an object can have. Inclusive."),minProperties:yt("schema.json.minProperties","The minimum number of properties an object can have. Inclusive."),required:yt("schema.json.required","An array of strings that lists the names of all properties required on this object."),additionalProperties:yt("schema.json.additionalProperties","Either a schema or a boolean. If a schema, then used to validate all properties not matched by 'properties' or 'patternProperties'. If false, then any properties not matched by either will cause this schema to fail."),definitions:yt("schema.json.definitions","Not used for validation. Place subschemas here that you wish to reference inline with $ref."),properties:yt("schema.json.properties","A map of property names to schemas for each property."),patternProperties:yt("schema.json.patternProperties","A map of regular expressions on property names to schemas for matching properties."),dependencies:yt("schema.json.dependencies","A map of property names to either an array of property names or a schema. An array of property names means the property named in the key depends on the properties in the array being present in the object in order to be valid. If the value is a schema, then the schema is only applied to the object if the property in the key exists on the object."),enum:yt("schema.json.enum","The set of literal values that are valid."),type:yt("schema.json.type","Either a string of one of the basic schema types (number, integer, null, array, object, boolean, string) or an array of strings specifying a subset of those types."),format:yt("schema.json.format","Describes the format expected for the value."),allOf:yt("schema.json.allOf","An array of schemas, all of which must match."),anyOf:yt("schema.json.anyOf","An array of schemas, where at least one must match."),oneOf:yt("schema.json.oneOf","An array of schemas, exactly one of which must match."),not:yt("schema.json.not","A schema which must not match."),$id:yt("schema.json.$id","A unique identifier for the schema."),$ref:yt("schema.json.$ref","Reference a definition hosted on any location."),$comment:yt("schema.json.$comment","Comments from schema authors to readers or maintainers of the schema."),readOnly:yt("schema.json.readOnly","Indicates that the value of the instance is managed exclusively by the owning authority."),examples:yt("schema.json.examples","Sample JSON values associated with a particular schema, for the purpose of illustrating usage."),contains:yt("schema.json.contains",'An array instance is valid against "contains" if at least one of its elements is valid against the given schema.'),propertyNames:yt("schema.json.propertyNames","If the instance is an object, this keyword validates if every property name in the instance validates against the provided schema."),const:yt("schema.json.const","An instance validates successfully against this keyword if its value is equal to the value of the keyword."),contentMediaType:yt("schema.json.contentMediaType","Describes the media type of a string property."),contentEncoding:yt("schema.json.contentEncoding","Describes the content encoding of a string property."),if:yt("schema.json.if",'The validation outcome of the "if" subschema controls which of the "then" or "else" keywords are evaluated.'),then:yt("schema.json.then",'The "if" subschema is used for validation when the "if" subschema succeeds.'),else:yt("schema.json.else",'The "else" subschema is used for validation when the "if" subschema fails.')};for(var St in bt.schemas){var kt=bt.schemas[St];for(var Ct in kt.properties){var wt=kt.properties[Ct];!0===wt&&(wt=kt.properties[Ct]={});var At=xt[Ct];At?wt.description=At:console.log(Ct+": localize('schema.json."+Ct+'\', "")')}}monaco.Uri;var It=monaco.Range,Tt=function(){function e(e,t,r){var n=this;this._languageId=e,this._worker=t,this._disposables=[],this._listener=Object.create(null);var i=function(e){var t,r=e.getModeId();r===n._languageId&&(n._listener[e.uri.toString()]=e.onDidChangeContent((function(){clearTimeout(t),t=setTimeout((function(){return n._doValidate(e.uri,r)}),500)})),n._doValidate(e.uri,r))},o=function(e){monaco.editor.setModelMarkers(e,n._languageId,[]);var t=e.uri.toString(),r=n._listener[t];r&&(r.dispose(),delete n._listener[t])};this._disposables.push(monaco.editor.onDidCreateModel(i)),this._disposables.push(monaco.editor.onWillDisposeModel((function(e){o(e),n._resetSchema(e.uri)}))),this._disposables.push(monaco.editor.onDidChangeModelLanguage((function(e){o(e.model),i(e.model),n._resetSchema(e.model.uri)}))),this._disposables.push(r.onDidChange((function(e){monaco.editor.getModels().forEach((function(e){e.getModeId()===n._languageId&&(o(e),i(e))}))}))),this._disposables.push({dispose:function(){for(var e in monaco.editor.getModels().forEach(o),n._listener)n._listener[e].dispose()}}),monaco.editor.getModels().forEach(i)}return e.prototype.dispose=function(){this._disposables.forEach((function(e){return e&&e.dispose()})),this._disposables=[]},e.prototype._resetSchema=function(e){this._worker().then((function(t){t.resetSchema(e.toString())}))},e.prototype._doValidate=function(e,t){this._worker(e).then((function(r){return r.doValidation(e.toString()).then((function(r){var n=r.map((function(e){return r="number"==typeof(t=e).code?String(t.code):t.code,{severity:Et(t.severity),startLineNumber:t.range.start.line+1,startColumn:t.range.start.character+1,endLineNumber:t.range.end.line+1,endColumn:t.range.end.character+1,message:t.message,code:r,source:t.source};var t,r})),i=monaco.editor.getModel(e);i&&i.getModeId()===t&&monaco.editor.setModelMarkers(i,t,n)}))})).then(void 0,(function(e){console.error(e)}))},e}();function Et(e){switch(e){case x.Error:return monaco.MarkerSeverity.Error;case x.Warning:return monaco.MarkerSeverity.Warning;case x.Information:return monaco.MarkerSeverity.Info;case x.Hint:return monaco.MarkerSeverity.Hint;default:return monaco.MarkerSeverity.Info}}function Ot(e){if(e)return{character:e.column-1,line:e.lineNumber-1}}function jt(e){if(e)return{start:{line:e.startLineNumber-1,character:e.startColumn-1},end:{line:e.endLineNumber-1,character:e.endColumn-1}}}function Pt(e){if(e)return new It(e.start.line+1,e.start.character+1,e.end.line+1,e.end.character+1)}function Mt(e){var t=monaco.languages.CompletionItemKind;switch(e){case B.Text:return t.Text;case B.Method:return t.Method;case B.Function:return t.Function;case B.Constructor:return t.Constructor;case B.Field:return t.Field;case B.Variable:return t.Variable;case B.Class:return t.Class;case B.Interface:return t.Interface;case B.Module:return t.Module;case B.Property:return t.Property;case B.Unit:return t.Unit;case B.Value:return t.Value;case B.Enum:return t.Enum;case B.Keyword:return t.Keyword;case B.Snippet:return t.Snippet;case B.Color:return t.Color;case B.File:return t.File;case B.Reference:return t.Reference}return t.Property}function _t(e){if(e)return{range:Pt(e.range),text:e.newText}}var Vt=function(){function e(e){this._worker=e}return Object.defineProperty(e.prototype,"triggerCharacters",{get:function(){return[" ",":"]},enumerable:!0,configurable:!0}),e.prototype.provideCompletionItems=function(e,t,r,n){var i=e.uri;return this._worker(i).then((function(e){return e.doComplete(i.toString(),Ot(t))})).then((function(r){if(r){var n=e.getWordUntilPosition(t),i=new It(t.lineNumber,n.startColumn,t.lineNumber,n.endColumn),o=r.items.map((function(e){var t={label:e.label,insertText:e.insertText||e.label,sortText:e.sortText,filterText:e.filterText,documentation:e.documentation,detail:e.detail,range:i,kind:Mt(e.kind)};return e.textEdit&&(t.range=Pt(e.textEdit.range),t.insertText=e.textEdit.newText),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(_t)),e.insertTextFormat===K.Snippet&&(t.insertTextRules=monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet),t}));return{isIncomplete:r.isIncomplete,suggestions:o}}}))},e}();function Ft(e){return"string"==typeof e?{value:e}:(t=e)&&"object"==typeof t&&"string"==typeof t.kind?"plaintext"===e.kind?{value:e.value.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}:{value:e.value}:{value:"```"+e.language+"\n"+e.value+"\n```\n"};var t}function Nt(e){if(e)return Array.isArray(e)?e.map(Ft):[Ft(e)]}var Rt=function(){function e(e){this._worker=e}return e.prototype.provideHover=function(e,t,r){var n=e.uri;return this._worker(n).then((function(e){return e.doHover(n.toString(),Ot(t))})).then((function(e){if(e)return{range:Pt(e.range),contents:Nt(e.contents)}}))},e}();function $t(e){var t=monaco.languages.SymbolKind;switch(e){case te.File:return t.Array;case te.Module:return t.Module;case te.Namespace:return t.Namespace;case te.Package:return t.Package;case te.Class:return t.Class;case te.Method:return t.Method;case te.Property:return t.Property;case te.Field:return t.Field;case te.Constructor:return t.Constructor;case te.Enum:return t.Enum;case te.Interface:return t.Interface;case te.Function:return t.Function;case te.Variable:return t.Variable;case te.Constant:return t.Constant;case te.String:return t.String;case te.Number:return t.Number;case te.Boolean:return t.Boolean;case te.Array:return t.Array}return t.Function}var Lt=function(){function e(e){this._worker=e}return e.prototype.provideDocumentSymbols=function(e,t){var r=e.uri;return this._worker(r).then((function(e){return e.findDocumentSymbols(r.toString())})).then((function(e){if(e)return e.map((function(e){return{name:e.name,detail:"",containerName:e.containerName,kind:$t(e.kind),range:Pt(e.location.range),selectionRange:Pt(e.location.range),tags:[]}}))}))},e}();function Dt(e){return{tabSize:e.tabSize,insertSpaces:e.insertSpaces}}var Wt=function(){function e(e){this._worker=e}return e.prototype.provideDocumentFormattingEdits=function(e,t,r){var n=e.uri;return this._worker(n).then((function(e){return e.format(n.toString(),null,Dt(t)).then((function(e){if(e&&0!==e.length)return e.map(_t)}))}))},e}(),Ut=function(){function e(e){this._worker=e}return e.prototype.provideDocumentRangeFormattingEdits=function(e,t,r,n){var i=e.uri;return this._worker(i).then((function(e){return e.format(i.toString(),jt(t),Dt(r)).then((function(e){if(e&&0!==e.length)return e.map(_t)}))}))},e}(),qt=function(){function e(e){this._worker=e}return e.prototype.provideDocumentColors=function(e,t){var r=e.uri;return this._worker(r).then((function(e){return e.findDocumentColors(r.toString())})).then((function(e){if(e)return e.map((function(e){return{color:e.color,range:Pt(e.range)}}))}))},e.prototype.provideColorPresentations=function(e,t,r){var n=e.uri;return this._worker(n).then((function(e){return e.getColorPresentations(n.toString(),t.color,jt(t.range))})).then((function(e){if(e)return e.map((function(e){var t={label:e.label};return e.textEdit&&(t.textEdit=_t(e.textEdit)),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(_t)),t}))}))},e}(),Bt=function(){function e(e){this._worker=e}return e.prototype.provideFoldingRanges=function(e,t,r){var n=e.uri;return this._worker(n).then((function(e){return e.getFoldingRanges(n.toString(),t)})).then((function(e){if(e)return e.map((function(e){var t={start:e.startLine+1,end:e.endLine+1};return void 0!==e.kind&&(t.kind=function(e){switch(e){case v.Comment:return monaco.languages.FoldingRangeKind.Comment;case v.Imports:return monaco.languages.FoldingRangeKind.Imports;case v.Region:return monaco.languages.FoldingRangeKind.Region}return}(e.kind)),t}))}))},e}();var Kt=function(){function e(e){this._worker=e}return e.prototype.provideSelectionRanges=function(e,t,r){var n=e.uri;return this._worker(n).then((function(e){return e.getSelectionRanges(n.toString(),t.map(Ot))})).then((function(e){if(e)return e.map((function(e){for(var t=[];e;)t.push({range:Pt(e.range)}),e=e.parent;return t}))}))},e}();function Jt(e){return{getInitialState:function(){return new zt(null,null,!1)},tokenize:function(t,r,n,i){return function(e,t,r,n,i){void 0===n&&(n=0);var o=0,a=!1;switch(r.scanError){case 2:t='"'+t,o=1;break;case 1:t="/*"+t,o=2}var s,u,c=j(t),l=r.lastWasColon;u={tokens:[],endState:r.clone()};for(;;){var f=n+c.getPosition(),h="";if(17===(s=c.scan()))break;if(f===n+c.getPosition())throw new Error("Scanner did not advance, next 3 characters are: "+t.substr(c.getPosition(),3));switch(a&&(f-=o),a=o>0,s){case 1:case 2:h="delimiter.bracket.json",l=!1;break;case 3:case 4:h="delimiter.array.json",l=!1;break;case 6:h="delimiter.colon.json",l=!0;break;case 5:h="delimiter.comma.json",l=!1;break;case 8:case 9:case 7:h="keyword.json",l=!1;break;case 10:h=l?"string.value.json":"string.key.json",l=!1;break;case 11:h="number.json",l=!1}if(e)switch(s){case 12:h="comment.line.json";break;case 13:h="comment.block.json"}u.endState=new zt(r.getStateData(),c.getTokenError(),l),u.tokens.push({startIndex:f,scopes:h})}return u}(e,t,r,n)}}}var zt=function(){function e(e,t,r){this._state=e,this.scanError=t,this.lastWasColon=r}return e.prototype.clone=function(){return new e(this._state,this.scanError,this.lastWasColon)},e.prototype.equals=function(t){return t===this||!!(t&&t instanceof e)&&(this.scanError===t.scanError&&this.lastWasColon===t.lastWasColon)},e.prototype.getStateData=function(){return this._state},e.prototype.setStateData=function(e){this._state=e},e}();function Ht(e){var t=[],r=[],n=new i(e);t.push(n);var o=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return n.getLanguageServiceWorker.apply(n,e)};function a(){var t=e.languageId,n=e.modeConfiguration;Zt(r),n.documentFormattingEdits&&r.push(monaco.languages.registerDocumentFormattingEditProvider(t,new Wt(o))),n.documentRangeFormattingEdits&&r.push(monaco.languages.registerDocumentRangeFormattingEditProvider(t,new Ut(o))),n.completionItems&&r.push(monaco.languages.registerCompletionItemProvider(t,new Vt(o))),n.hovers&&r.push(monaco.languages.registerHoverProvider(t,new Rt(o))),n.documentSymbols&&r.push(monaco.languages.registerDocumentSymbolProvider(t,new Lt(o))),n.tokens&&r.push(monaco.languages.setTokensProvider(t,Jt(!0))),n.colors&&r.push(monaco.languages.registerColorProvider(t,new qt(o))),n.foldingRanges&&r.push(monaco.languages.registerFoldingRangeProvider(t,new Bt(o))),n.diagnostics&&r.push(new Tt(t,o,e)),n.selectionRanges&&r.push(monaco.languages.registerSelectionRangeProvider(t,new Kt(o)))}a(),t.push(monaco.languages.setLanguageConfiguration(e.languageId,Xt));var s=e.modeConfiguration;return e.onDidChange((function(e){e.modeConfiguration!==s&&(s=e.modeConfiguration,a())})),t.push(Gt(r)),Gt(t)}function Gt(e){return{dispose:function(){return Zt(e)}}}function Zt(e){for(;e.length;)e.pop().dispose()}var Xt={wordPattern:/(-?\d*\.\d\w*)|([^\[\{\]\}\:\"\,\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string"]},{open:"[",close:"]",notIn:["string"]},{open:'"',close:'"',notIn:["string"]}]}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[105],{506:function(e,t,r){"use strict";r.r(t),r.d(t,"setupMode",(function(){return Ht}));var n,i=function(){function e(e){var t=this;this._defaults=e,this._worker=null,this._idleCheckInterval=setInterval((function(){return t._checkIfIdle()}),3e4),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange((function(){return t._stopWorker()}))}return e.prototype._stopWorker=function(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null},e.prototype.dispose=function(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()},e.prototype._checkIfIdle=function(){this._worker&&(Date.now()-this._lastUsedTime>12e4&&this._stopWorker())},e.prototype._getClient=function(){return this._lastUsedTime=Date.now(),this._client||(this._worker=monaco.editor.createWebWorker({moduleId:"vs/language/json/jsonWorker",label:this._defaults.languageId,createData:{languageSettings:this._defaults.diagnosticsOptions,languageId:this._defaults.languageId,enableSchemaRequest:this._defaults.diagnosticsOptions.enableSchemaRequest}}),this._client=this._worker.getProxy()),this._client},e.prototype.getLanguageServiceWorker=function(){for(var e,t=this,r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];return this._getClient().then((function(t){e=t})).then((function(e){return t._worker.withSyncedResources(r)})).then((function(t){return e}))},e}();function o(e,t){void 0===t&&(t=!1);var r=e.length,n=0,i="",o=0,c=16,l=0,f=0,h=0,p=0,m=0;function d(t,r){for(var i=0,o=0;i<t||!r;){var a=e.charCodeAt(n);if(a>=48&&a<=57)o=16*o+a-48;else if(a>=65&&a<=70)o=16*o+a-65+10;else{if(!(a>=97&&a<=102))break;o=16*o+a-97+10}n++,i++}return i<t&&(o=-1),o}function g(){if(i="",m=0,o=n,f=l,p=h,n>=r)return o=r,c=17;var t=e.charCodeAt(n);if(a(t)){do{n++,i+=String.fromCharCode(t),t=e.charCodeAt(n)}while(a(t));return c=15}if(s(t))return n++,i+=String.fromCharCode(t),13===t&&10===e.charCodeAt(n)&&(n++,i+="\n"),l++,h=n,c=14;switch(t){case 123:return n++,c=1;case 125:return n++,c=2;case 91:return n++,c=3;case 93:return n++,c=4;case 58:return n++,c=6;case 44:return n++,c=5;case 34:return n++,i=function(){for(var t="",i=n;;){if(n>=r){t+=e.substring(i,n),m=2;break}var o=e.charCodeAt(n);if(34===o){t+=e.substring(i,n),n++;break}if(92!==o){if(o>=0&&o<=31){if(s(o)){t+=e.substring(i,n),m=2;break}m=6}n++}else{if(t+=e.substring(i,n),++n>=r){m=2;break}switch(e.charCodeAt(n++)){case 34:t+='"';break;case 92:t+="\\";break;case 47:t+="/";break;case 98:t+="\b";break;case 102:t+="\f";break;case 110:t+="\n";break;case 114:t+="\r";break;case 116:t+="\t";break;case 117:var a=d(4,!0);a>=0?t+=String.fromCharCode(a):m=4;break;default:m=5}i=n}}return t}(),c=10;case 47:var g=n-1;if(47===e.charCodeAt(n+1)){for(n+=2;n<r&&!s(e.charCodeAt(n));)n++;return i=e.substring(g,n),c=12}if(42===e.charCodeAt(n+1)){n+=2;for(var y=r-1,b=!1;n<y;){var x=e.charCodeAt(n);if(42===x&&47===e.charCodeAt(n+1)){n+=2,b=!0;break}n++,s(x)&&(13===x&&10===e.charCodeAt(n)&&n++,l++,h=n)}return b||(n++,m=1),i=e.substring(g,n),c=13}return i+=String.fromCharCode(t),n++,c=16;case 45:if(i+=String.fromCharCode(t),++n===r||!u(e.charCodeAt(n)))return c=16;case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return i+=function(){var t=n;if(48===e.charCodeAt(n))n++;else for(n++;n<e.length&&u(e.charCodeAt(n));)n++;if(n<e.length&&46===e.charCodeAt(n)){if(!(++n<e.length&&u(e.charCodeAt(n))))return m=3,e.substring(t,n);for(n++;n<e.length&&u(e.charCodeAt(n));)n++}var r=n;if(n<e.length&&(69===e.charCodeAt(n)||101===e.charCodeAt(n)))if((++n<e.length&&43===e.charCodeAt(n)||45===e.charCodeAt(n))&&n++,n<e.length&&u(e.charCodeAt(n))){for(n++;n<e.length&&u(e.charCodeAt(n));)n++;r=n}else m=3;return e.substring(t,r)}(),c=11;default:for(;n<r&&v(t);)n++,t=e.charCodeAt(n);if(o!==n){switch(i=e.substring(o,n)){case"true":return c=8;case"false":return c=9;case"null":return c=7}return c=16}return i+=String.fromCharCode(t),n++,c=16}}function v(e){if(a(e)||s(e))return!1;switch(e){case 125:case 93:case 123:case 91:case 34:case 58:case 44:case 47:return!1}return!0}return{setPosition:function(e){n=e,i="",o=0,c=16,m=0},getPosition:function(){return n},scan:t?function(){var e;do{e=g()}while(e>=12&&e<=15);return e}:g,getToken:function(){return c},getTokenValue:function(){return i},getTokenOffset:function(){return o},getTokenLength:function(){return n-o},getTokenStartLine:function(){return f},getTokenStartCharacter:function(){return o-p},getTokenError:function(){return m}}}function a(e){return 32===e||9===e||11===e||12===e||160===e||5760===e||e>=8192&&e<=8203||8239===e||8287===e||12288===e||65279===e}function s(e){return 10===e||13===e||8232===e||8233===e}function u(e){return e>=48&&e<=57}function c(e,t,r){void 0===r&&(r=n.DEFAULT);var i=o(e,!1);function a(e){return e?function(){return e(i.getTokenOffset(),i.getTokenLength(),i.getTokenStartLine(),i.getTokenStartCharacter())}:function(){return!0}}function s(e){return e?function(t){return e(t,i.getTokenOffset(),i.getTokenLength(),i.getTokenStartLine(),i.getTokenStartCharacter())}:function(){return!0}}var u=a(t.onObjectBegin),c=s(t.onObjectProperty),l=a(t.onObjectEnd),f=a(t.onArrayBegin),h=a(t.onArrayEnd),p=s(t.onLiteralValue),m=s(t.onSeparator),d=a(t.onComment),g=s(t.onError),v=r&&r.disallowComments,y=r&&r.allowTrailingComma;function b(){for(;;){var e=i.scan();switch(i.getTokenError()){case 4:x(14);break;case 5:x(15);break;case 3:x(13);break;case 1:v||x(11);break;case 2:x(12);break;case 6:x(16)}switch(e){case 12:case 13:v?x(10):d();break;case 16:x(1);break;case 15:case 14:break;default:return e}}}function x(e,t,r){if(void 0===t&&(t=[]),void 0===r&&(r=[]),g(e),t.length+r.length>0)for(var n=i.getToken();17!==n;){if(-1!==t.indexOf(n)){b();break}if(-1!==r.indexOf(n))break;n=b()}}function S(e){var t=i.getTokenValue();return e?p(t):c(t),b(),!0}function k(){switch(i.getToken()){case 3:return function(){f(),b();for(var e=!1;4!==i.getToken()&&17!==i.getToken();){if(5===i.getToken()){if(e||x(4,[],[]),m(","),b(),4===i.getToken()&&y)break}else e&&x(6,[],[]);k()||x(4,[],[4,5]),e=!0}return h(),4!==i.getToken()?x(8,[4],[]):b(),!0}();case 1:return function(){u(),b();for(var e=!1;2!==i.getToken()&&17!==i.getToken();){if(5===i.getToken()){if(e||x(4,[],[]),m(","),b(),2===i.getToken()&&y)break}else e&&x(6,[],[]);(10!==i.getToken()?(x(3,[],[2,5]),0):(S(!1),6===i.getToken()?(m(":"),b(),k()||x(4,[],[2,5])):x(5,[],[2,5]),1))||x(4,[],[2,5]),e=!0}return l(),2!==i.getToken()?x(7,[2],[]):b(),!0}();case 10:return S(!0);default:return function(){switch(i.getToken()){case 11:var e=0;try{"number"!=typeof(e=JSON.parse(i.getTokenValue()))&&(x(2),e=0)}catch(e){x(2)}p(e);break;case 7:p(null);break;case 8:p(!0);break;case 9:p(!1);break;default:return!1}return b(),!0}()}}return b(),17===i.getToken()?!!r.allowEmptyContent||(x(4,[],[]),!1):k()?(17!==i.getToken()&&x(9,[],[]),!0):(x(4,[],[]),!1)}!function(e){e.DEFAULT={allowTrailingComma:!1}}(n||(n={}));var l,f,h,p,m,d,g,v,y,b,x,S,k,C,w,A,I,T,E,O,j=o,P=function(e,t,r){void 0===t&&(t=[]),void 0===r&&(r=n.DEFAULT);var i=null,o=[],a=[];function s(e){Array.isArray(o)?o.push(e):null!==i&&(o[i]=e)}return c(e,{onObjectBegin:function(){var e={};s(e),a.push(o),o=e,i=null},onObjectProperty:function(e){i=e},onObjectEnd:function(){o=a.pop()},onArrayBegin:function(){var e=[];s(e),a.push(o),o=e,i=null},onArrayEnd:function(){o=a.pop()},onLiteralValue:s,onError:function(e,r,n){t.push({error:e,offset:r,length:n})}},r),o[0]},M=function e(t,r,n){if(void 0===n&&(n=!1),function(e,t,r){return void 0===r&&(r=!1),t>=e.offset&&t<e.offset+e.length||r&&t===e.offset+e.length}(t,r,n)){var i=t.children;if(Array.isArray(i))for(var o=0;o<i.length&&i[o].offset<=r;o++){var a=e(i[o],r,n);if(a)return a}return t}},_=function e(t){if(!t.parent||!t.parent.children)return[];var r=e(t.parent);if("property"===t.parent.type){var n=t.parent.children[0].value;r.push(n)}else if("array"===t.parent.type){var i=t.parent.children.indexOf(t);-1!==i&&r.push(i)}return r},V=function e(t){switch(t.type){case"array":return t.children.map(e);case"object":for(var r=Object.create(null),n=0,i=t.children;n<i.length;n++){var o=i[n],a=o.children[1];a&&(r[o.children[0].value]=e(a))}return r;case"null":case"string":case"number":case"boolean":return t.value;default:return}};function F(e,t){if(e===t)return!0;if(null==e||null==t)return!1;if(typeof e!=typeof t)return!1;if("object"!=typeof e)return!1;if(Array.isArray(e)!==Array.isArray(t))return!1;var r,n;if(Array.isArray(e)){if(e.length!==t.length)return!1;for(r=0;r<e.length;r++)if(!F(e[r],t[r]))return!1}else{var i=[];for(n in e)i.push(n);i.sort();var o=[];for(n in t)o.push(n);if(o.sort(),!F(i,o))return!1;for(r=0;r<i.length;r++)if(!F(e[i[r]],t[i[r]]))return!1}return!0}function N(e){return"number"==typeof e}function R(e){return void 0!==e}function $(e){return"boolean"==typeof e}!function(e){e.create=function(e,t){return{line:e,character:t}},e.is=function(e){var t=e;return me.objectLiteral(t)&&me.number(t.line)&&me.number(t.character)}}(l||(l={})),function(e){e.create=function(e,t,r,n){if(me.number(e)&&me.number(t)&&me.number(r)&&me.number(n))return{start:l.create(e,t),end:l.create(r,n)};if(l.is(e)&&l.is(t))return{start:e,end:t};throw new Error("Range#create called with invalid arguments["+e+", "+t+", "+r+", "+n+"]")},e.is=function(e){var t=e;return me.objectLiteral(t)&&l.is(t.start)&&l.is(t.end)}}(f||(f={})),function(e){e.create=function(e,t){return{uri:e,range:t}},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.range)&&(me.string(t.uri)||me.undefined(t.uri))}}(h||(h={})),function(e){e.create=function(e,t,r,n){return{targetUri:e,targetRange:t,targetSelectionRange:r,originSelectionRange:n}},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.targetRange)&&me.string(t.targetUri)&&(f.is(t.targetSelectionRange)||me.undefined(t.targetSelectionRange))&&(f.is(t.originSelectionRange)||me.undefined(t.originSelectionRange))}}(p||(p={})),function(e){e.create=function(e,t,r,n){return{red:e,green:t,blue:r,alpha:n}},e.is=function(e){var t=e;return me.number(t.red)&&me.number(t.green)&&me.number(t.blue)&&me.number(t.alpha)}}(m||(m={})),function(e){e.create=function(e,t){return{range:e,color:t}},e.is=function(e){var t=e;return f.is(t.range)&&m.is(t.color)}}(d||(d={})),function(e){e.create=function(e,t,r){return{label:e,textEdit:t,additionalTextEdits:r}},e.is=function(e){var t=e;return me.string(t.label)&&(me.undefined(t.textEdit)||w.is(t))&&(me.undefined(t.additionalTextEdits)||me.typedArray(t.additionalTextEdits,w.is))}}(g||(g={})),function(e){e.Comment="comment",e.Imports="imports",e.Region="region"}(v||(v={})),function(e){e.create=function(e,t,r,n,i){var o={startLine:e,endLine:t};return me.defined(r)&&(o.startCharacter=r),me.defined(n)&&(o.endCharacter=n),me.defined(i)&&(o.kind=i),o},e.is=function(e){var t=e;return me.number(t.startLine)&&me.number(t.startLine)&&(me.undefined(t.startCharacter)||me.number(t.startCharacter))&&(me.undefined(t.endCharacter)||me.number(t.endCharacter))&&(me.undefined(t.kind)||me.string(t.kind))}}(y||(y={})),function(e){e.create=function(e,t){return{location:e,message:t}},e.is=function(e){var t=e;return me.defined(t)&&h.is(t.location)&&me.string(t.message)}}(b||(b={})),function(e){e.Error=1,e.Warning=2,e.Information=3,e.Hint=4}(x||(x={})),function(e){e.Unnecessary=1,e.Deprecated=2}(S||(S={})),function(e){e.create=function(e,t,r,n,i,o){var a={range:e,message:t};return me.defined(r)&&(a.severity=r),me.defined(n)&&(a.code=n),me.defined(i)&&(a.source=i),me.defined(o)&&(a.relatedInformation=o),a},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.range)&&me.string(t.message)&&(me.number(t.severity)||me.undefined(t.severity))&&(me.number(t.code)||me.string(t.code)||me.undefined(t.code))&&(me.string(t.source)||me.undefined(t.source))&&(me.undefined(t.relatedInformation)||me.typedArray(t.relatedInformation,b.is))}}(k||(k={})),function(e){e.create=function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];var i={title:e,command:t};return me.defined(r)&&r.length>0&&(i.arguments=r),i},e.is=function(e){var t=e;return me.defined(t)&&me.string(t.title)&&me.string(t.command)}}(C||(C={})),function(e){e.replace=function(e,t){return{range:e,newText:t}},e.insert=function(e,t){return{range:{start:e,end:e},newText:t}},e.del=function(e){return{range:e,newText:""}},e.is=function(e){var t=e;return me.objectLiteral(t)&&me.string(t.newText)&&f.is(t.range)}}(w||(w={})),function(e){e.create=function(e,t){return{textDocument:e,edits:t}},e.is=function(e){var t=e;return me.defined(t)&&D.is(t.textDocument)&&Array.isArray(t.edits)}}(A||(A={})),function(e){e.create=function(e,t){var r={kind:"create",uri:e};return void 0===t||void 0===t.overwrite&&void 0===t.ignoreIfExists||(r.options=t),r},e.is=function(e){var t=e;return t&&"create"===t.kind&&me.string(t.uri)&&(void 0===t.options||(void 0===t.options.overwrite||me.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||me.boolean(t.options.ignoreIfExists)))}}(I||(I={})),function(e){e.create=function(e,t,r){var n={kind:"rename",oldUri:e,newUri:t};return void 0===r||void 0===r.overwrite&&void 0===r.ignoreIfExists||(n.options=r),n},e.is=function(e){var t=e;return t&&"rename"===t.kind&&me.string(t.oldUri)&&me.string(t.newUri)&&(void 0===t.options||(void 0===t.options.overwrite||me.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||me.boolean(t.options.ignoreIfExists)))}}(T||(T={})),function(e){e.create=function(e,t){var r={kind:"delete",uri:e};return void 0===t||void 0===t.recursive&&void 0===t.ignoreIfNotExists||(r.options=t),r},e.is=function(e){var t=e;return t&&"delete"===t.kind&&me.string(t.uri)&&(void 0===t.options||(void 0===t.options.recursive||me.boolean(t.options.recursive))&&(void 0===t.options.ignoreIfNotExists||me.boolean(t.options.ignoreIfNotExists)))}}(E||(E={})),function(e){e.is=function(e){var t=e;return t&&(void 0!==t.changes||void 0!==t.documentChanges)&&(void 0===t.documentChanges||t.documentChanges.every((function(e){return me.string(e.kind)?I.is(e)||T.is(e)||E.is(e):A.is(e)})))}}(O||(O={}));var L,D,W,U,q,B,K,J,z,H,G,Z,X,Q,Y,ee,te,re,ne,ie,oe,ae,se,ue,ce,le,fe,he=function(){function e(e){this.edits=e}return e.prototype.insert=function(e,t){this.edits.push(w.insert(e,t))},e.prototype.replace=function(e,t){this.edits.push(w.replace(e,t))},e.prototype.delete=function(e){this.edits.push(w.del(e))},e.prototype.add=function(e){this.edits.push(e)},e.prototype.all=function(){return this.edits},e.prototype.clear=function(){this.edits.splice(0,this.edits.length)},e}();!function(){function e(e){var t=this;this._textEditChanges=Object.create(null),e&&(this._workspaceEdit=e,e.documentChanges?e.documentChanges.forEach((function(e){if(A.is(e)){var r=new he(e.edits);t._textEditChanges[e.textDocument.uri]=r}})):e.changes&&Object.keys(e.changes).forEach((function(r){var n=new he(e.changes[r]);t._textEditChanges[r]=n})))}Object.defineProperty(e.prototype,"edit",{get:function(){return this._workspaceEdit},enumerable:!0,configurable:!0}),e.prototype.getTextEditChange=function(e){if(D.is(e)){if(this._workspaceEdit||(this._workspaceEdit={documentChanges:[]}),!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");var t=e;if(!(n=this._textEditChanges[t.uri])){var r={textDocument:t,edits:i=[]};this._workspaceEdit.documentChanges.push(r),n=new he(i),this._textEditChanges[t.uri]=n}return n}if(this._workspaceEdit||(this._workspaceEdit={changes:Object.create(null)}),!this._workspaceEdit.changes)throw new Error("Workspace edit is not configured for normal text edit changes.");var n;if(!(n=this._textEditChanges[e])){var i=[];this._workspaceEdit.changes[e]=i,n=new he(i),this._textEditChanges[e]=n}return n},e.prototype.createFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(I.create(e,t))},e.prototype.renameFile=function(e,t,r){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(T.create(e,t,r))},e.prototype.deleteFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(E.create(e,t))},e.prototype.checkDocumentChanges=function(){if(!this._workspaceEdit||!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.")}}();!function(e){e.create=function(e){return{uri:e}},e.is=function(e){var t=e;return me.defined(t)&&me.string(t.uri)}}(L||(L={})),function(e){e.create=function(e,t){return{uri:e,version:t}},e.is=function(e){var t=e;return me.defined(t)&&me.string(t.uri)&&(null===t.version||me.number(t.version))}}(D||(D={})),function(e){e.create=function(e,t,r,n){return{uri:e,languageId:t,version:r,text:n}},e.is=function(e){var t=e;return me.defined(t)&&me.string(t.uri)&&me.string(t.languageId)&&me.number(t.version)&&me.string(t.text)}}(W||(W={})),function(e){e.PlainText="plaintext",e.Markdown="markdown"}(U||(U={})),function(e){e.is=function(t){var r=t;return r===e.PlainText||r===e.Markdown}}(U||(U={})),function(e){e.is=function(e){var t=e;return me.objectLiteral(e)&&U.is(t.kind)&&me.string(t.value)}}(q||(q={})),function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25}(B||(B={})),function(e){e.PlainText=1,e.Snippet=2}(K||(K={})),function(e){e.Deprecated=1}(J||(J={})),function(e){e.create=function(e){return{label:e}}}(z||(z={})),function(e){e.create=function(e,t){return{items:e||[],isIncomplete:!!t}}}(H||(H={})),function(e){e.fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},e.is=function(e){var t=e;return me.string(t)||me.objectLiteral(t)&&me.string(t.language)&&me.string(t.value)}}(G||(G={})),function(e){e.is=function(e){var t=e;return!!t&&me.objectLiteral(t)&&(q.is(t.contents)||G.is(t.contents)||me.typedArray(t.contents,G.is))&&(void 0===e.range||f.is(e.range))}}(Z||(Z={})),function(e){e.create=function(e,t){return t?{label:e,documentation:t}:{label:e}}}(X||(X={})),function(e){e.create=function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];var i={label:e};return me.defined(t)&&(i.documentation=t),me.defined(r)?i.parameters=r:i.parameters=[],i}}(Q||(Q={})),function(e){e.Text=1,e.Read=2,e.Write=3}(Y||(Y={})),function(e){e.create=function(e,t){var r={range:e};return me.number(t)&&(r.kind=t),r}}(ee||(ee={})),function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26}(te||(te={})),function(e){e.Deprecated=1}(re||(re={})),function(e){e.create=function(e,t,r,n,i){var o={name:e,kind:t,location:{uri:n,range:r}};return i&&(o.containerName=i),o}}(ne||(ne={})),function(e){e.create=function(e,t,r,n,i,o){var a={name:e,detail:t,kind:r,range:n,selectionRange:i};return void 0!==o&&(a.children=o),a},e.is=function(e){var t=e;return t&&me.string(t.name)&&me.number(t.kind)&&f.is(t.range)&&f.is(t.selectionRange)&&(void 0===t.detail||me.string(t.detail))&&(void 0===t.deprecated||me.boolean(t.deprecated))&&(void 0===t.children||Array.isArray(t.children))}}(ie||(ie={})),function(e){e.Empty="",e.QuickFix="quickfix",e.Refactor="refactor",e.RefactorExtract="refactor.extract",e.RefactorInline="refactor.inline",e.RefactorRewrite="refactor.rewrite",e.Source="source",e.SourceOrganizeImports="source.organizeImports",e.SourceFixAll="source.fixAll"}(oe||(oe={})),function(e){e.create=function(e,t){var r={diagnostics:e};return null!=t&&(r.only=t),r},e.is=function(e){var t=e;return me.defined(t)&&me.typedArray(t.diagnostics,k.is)&&(void 0===t.only||me.typedArray(t.only,me.string))}}(ae||(ae={})),function(e){e.create=function(e,t,r){var n={title:e};return C.is(t)?n.command=t:n.edit=t,void 0!==r&&(n.kind=r),n},e.is=function(e){var t=e;return t&&me.string(t.title)&&(void 0===t.diagnostics||me.typedArray(t.diagnostics,k.is))&&(void 0===t.kind||me.string(t.kind))&&(void 0!==t.edit||void 0!==t.command)&&(void 0===t.command||C.is(t.command))&&(void 0===t.isPreferred||me.boolean(t.isPreferred))&&(void 0===t.edit||O.is(t.edit))}}(se||(se={})),function(e){e.create=function(e,t){var r={range:e};return me.defined(t)&&(r.data=t),r},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.range)&&(me.undefined(t.command)||C.is(t.command))}}(ue||(ue={})),function(e){e.create=function(e,t){return{tabSize:e,insertSpaces:t}},e.is=function(e){var t=e;return me.defined(t)&&me.number(t.tabSize)&&me.boolean(t.insertSpaces)}}(ce||(ce={})),function(e){e.create=function(e,t,r){return{range:e,target:t,data:r}},e.is=function(e){var t=e;return me.defined(t)&&f.is(t.range)&&(me.undefined(t.target)||me.string(t.target))}}(le||(le={})),function(e){e.create=function(e,t){return{range:e,parent:t}},e.is=function(t){var r=t;return void 0!==r&&f.is(r.range)&&(void 0===r.parent||e.is(r.parent))}}(fe||(fe={}));var pe;!function(e){e.create=function(e,t,r,n){return new de(e,t,r,n)},e.is=function(e){var t=e;return!!(me.defined(t)&&me.string(t.uri)&&(me.undefined(t.languageId)||me.string(t.languageId))&&me.number(t.lineCount)&&me.func(t.getText)&&me.func(t.positionAt)&&me.func(t.offsetAt))},e.applyEdits=function(e,t){for(var r=e.getText(),n=function e(t,r){if(t.length<=1)return t;var n=t.length/2|0,i=t.slice(0,n),o=t.slice(n);e(i,r),e(o,r);var a=0,s=0,u=0;for(;a<i.length&&s<o.length;){var c=r(i[a],o[s]);t[u++]=c<=0?i[a++]:o[s++]}for(;a<i.length;)t[u++]=i[a++];for(;s<o.length;)t[u++]=o[s++];return t}(t,(function(e,t){var r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r})),i=r.length,o=n.length-1;o>=0;o--){var a=n[o],s=e.offsetAt(a.range.start),u=e.offsetAt(a.range.end);if(!(u<=i))throw new Error("Overlapping edit");r=r.substring(0,s)+a.newText+r.substring(u,r.length),i=s}return r}}(pe||(pe={}));var me,de=function(){function e(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content},e.prototype.update=function(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0},e.prototype.getLineOffsets=function(){if(void 0===this._lineOffsets){for(var e=[],t=this._content,r=!0,n=0;n<t.length;n++){r&&(e.push(n),r=!1);var i=t.charAt(n);r="\r"===i||"\n"===i,"\r"===i&&n+1<t.length&&"\n"===t.charAt(n+1)&&n++}r&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return l.create(0,e);for(;r<n;){var i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}var o=r-1;return l.create(o,e-t[o])},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var r=t[e.line],n=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,n),r)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e}();!function(e){var t=Object.prototype.toString;e.defined=function(e){return void 0!==e},e.undefined=function(e){return void 0===e},e.boolean=function(e){return!0===e||!1===e},e.string=function(e){return"[object String]"===t.call(e)},e.number=function(e){return"[object Number]"===t.call(e)},e.func=function(e){return"[object Function]"===t.call(e)},e.objectLiteral=function(e){return null!==e&&"object"==typeof e},e.typedArray=function(e,t){return Array.isArray(e)&&e.every(t)}}(me||(me={}));var ge,ve,ye,be=function(){function e(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content},e.prototype.update=function(t,r){for(var n=0,i=t;n<i.length;n++){var o=i[n];if(e.isIncremental(o)){var a=Se(o.range),s=this.offsetAt(a.start),u=this.offsetAt(a.end);this._content=this._content.substring(0,s)+o.text+this._content.substring(u,this._content.length);var c=Math.max(a.start.line,0),l=Math.max(a.end.line,0),f=this._lineOffsets,h=xe(o.text,!1,s);if(l-c===h.length)for(var p=0,m=h.length;p<m;p++)f[p+c+1]=h[p];else h.length<1e4?f.splice.apply(f,[c+1,l-c].concat(h)):this._lineOffsets=f=f.slice(0,c+1).concat(h,f.slice(l+1));var d=o.text.length-(u-s);if(0!==d)for(p=c+1+h.length,m=f.length;p<m;p++)f[p]=f[p]+d}else{if(!e.isFull(o))throw new Error("Unknown change event received");this._content=o.text,this._lineOffsets=void 0}}this._version=r},e.prototype.getLineOffsets=function(){return void 0===this._lineOffsets&&(this._lineOffsets=xe(this._content,!0)),this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return{line:0,character:e};for(;r<n;){var i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}var o=r-1;return{line:o,character:e-t[o]}},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var r=t[e.line],n=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,n),r)},Object.defineProperty(e.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!0,configurable:!0}),e.isIncremental=function(e){var t=e;return null!=t&&"string"==typeof t.text&&void 0!==t.range&&(void 0===t.rangeLength||"number"==typeof t.rangeLength)},e.isFull=function(e){var t=e;return null!=t&&"string"==typeof t.text&&void 0===t.range&&void 0===t.rangeLength},e}();function xe(e,t,r){void 0===r&&(r=0);for(var n=t?[r]:[],i=0;i<e.length;i++){var o=e.charCodeAt(i);13!==o&&10!==o||(13===o&&i+1<e.length&&10===e.charCodeAt(i+1)&&i++,n.push(r+i+1))}return n}function Se(e){var t=e.start,r=e.end;return t.line>r.line||t.line===r.line&&t.character>r.character?{start:r,end:t}:e}function ke(e){var t=Se(e.range);return t!==e.range?{newText:e.newText,range:t}:e}function Ce(e,t){return 0===t.length?e:e.replace(/\{(\d+)\}/g,(function(e,r){var n=r[0];return void 0!==t[n]?t[n]:e}))}function we(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];return Ce(t,r)}function Ae(e){return we}!function(e){e.create=function(e,t,r,n){return new be(e,t,r,n)},e.update=function(e,t,r){if(e instanceof be)return e.update(t,r),e;throw new Error("TextDocument.update: document must be created by TextDocument.create")},e.applyEdits=function(e,t){for(var r=e.getText(),n=function e(t,r){if(t.length<=1)return t;var n=t.length/2|0,i=t.slice(0,n),o=t.slice(n);e(i,r),e(o,r);var a=0,s=0,u=0;for(;a<i.length&&s<o.length;){var c=r(i[a],o[s]);t[u++]=c<=0?i[a++]:o[s++]}for(;a<i.length;)t[u++]=i[a++];for(;s<o.length;)t[u++]=o[s++];return t}(t.map(ke),(function(e,t){var r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r})),i=r.length,o=n.length-1;o>=0;o--){var a=n[o],s=e.offsetAt(a.range.start),u=e.offsetAt(a.range.end);if(!(u<=i))throw new Error("Overlapping edit");r=r.substring(0,s)+a.newText+r.substring(u,r.length),i=s}return r}}(ge||(ge={})),function(e){e[e.Undefined=0]="Undefined",e[e.EnumValueMismatch=1]="EnumValueMismatch",e[e.UnexpectedEndOfComment=257]="UnexpectedEndOfComment",e[e.UnexpectedEndOfString=258]="UnexpectedEndOfString",e[e.UnexpectedEndOfNumber=259]="UnexpectedEndOfNumber",e[e.InvalidUnicode=260]="InvalidUnicode",e[e.InvalidEscapeCharacter=261]="InvalidEscapeCharacter",e[e.InvalidCharacter=262]="InvalidCharacter",e[e.PropertyExpected=513]="PropertyExpected",e[e.CommaExpected=514]="CommaExpected",e[e.ColonExpected=515]="ColonExpected",e[e.ValueExpected=516]="ValueExpected",e[e.CommaOrCloseBacketExpected=517]="CommaOrCloseBacketExpected",e[e.CommaOrCloseBraceExpected=518]="CommaOrCloseBraceExpected",e[e.TrailingComma=519]="TrailingComma",e[e.DuplicateKey=520]="DuplicateKey",e[e.CommentNotPermitted=521]="CommentNotPermitted",e[e.SchemaResolveError=768]="SchemaResolveError"}(ve||(ve={})),(ye||(ye={})).LATEST={textDocument:{completion:{completionItem:{documentationFormat:[U.Markdown,U.PlainText],commitCharactersSupport:!0}}}};var Ie,Te,Ee=(Ie=function(e,t){return(Ie=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}Ie(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),Oe=Ae(),je={"color-hex":{errorMessage:Oe("colorHexFormatWarning","Invalid color format. Use #RGB, #RGBA, #RRGGBB or #RRGGBBAA."),pattern:/^#([0-9A-Fa-f]{3,4}|([0-9A-Fa-f]{2}){3,4})$/},"date-time":{errorMessage:Oe("dateTimeFormatWarning","String is not a RFC3339 date-time."),pattern:/^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$/i},date:{errorMessage:Oe("dateFormatWarning","String is not a RFC3339 date."),pattern:/^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$/i},time:{errorMessage:Oe("timeFormatWarning","String is not a RFC3339 time."),pattern:/^([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$/i},email:{errorMessage:Oe("emailFormatWarning","String is not an e-mail address."),pattern:/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/}},Pe=function(){function e(e,t,r){this.offset=t,this.length=r,this.parent=e}return Object.defineProperty(e.prototype,"children",{get:function(){return[]},enumerable:!0,configurable:!0}),e.prototype.toString=function(){return"type: "+this.type+" ("+this.offset+"/"+this.length+")"+(this.parent?" parent: {"+this.parent.toString()+"}":"")},e}();(function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="null",n.value=null,n}Ee(t,e)})(Pe),function(e){function t(t,r,n){var i=e.call(this,t,n)||this;return i.type="boolean",i.value=r,i}Ee(t,e)}(Pe),function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="array",n.items=[],n}Ee(t,e),Object.defineProperty(t.prototype,"children",{get:function(){return this.items},enumerable:!0,configurable:!0})}(Pe),function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="number",n.isInteger=!0,n.value=Number.NaN,n}Ee(t,e)}(Pe),function(e){function t(t,r,n){var i=e.call(this,t,r,n)||this;return i.type="string",i.value="",i}Ee(t,e)}(Pe),function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="property",n.colonOffset=-1,n}Ee(t,e),Object.defineProperty(t.prototype,"children",{get:function(){return this.valueNode?[this.keyNode,this.valueNode]:[this.keyNode]},enumerable:!0,configurable:!0})}(Pe),function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.type="object",n.properties=[],n}Ee(t,e),Object.defineProperty(t.prototype,"children",{get:function(){return this.properties},enumerable:!0,configurable:!0})}(Pe);function Me(e){return $(e)?e?{}:{not:{}}:e}!function(e){e[e.Key=0]="Key",e[e.Enum=1]="Enum"}(Te||(Te={}));var _e=function(){function e(e,t){void 0===e&&(e=-1),void 0===t&&(t=null),this.focusOffset=e,this.exclude=t,this.schemas=[]}return e.prototype.add=function(e){this.schemas.push(e)},e.prototype.merge=function(e){var t;(t=this.schemas).push.apply(t,e.schemas)},e.prototype.include=function(e){return(-1===this.focusOffset||$e(e,this.focusOffset))&&e!==this.exclude},e.prototype.newSub=function(){return new e(-1,this.exclude)},e}(),Ve=function(){function e(){}return Object.defineProperty(e.prototype,"schemas",{get:function(){return[]},enumerable:!0,configurable:!0}),e.prototype.add=function(e){},e.prototype.merge=function(e){},e.prototype.include=function(e){return!0},e.prototype.newSub=function(){return this},e.instance=new e,e}(),Fe=function(){function e(){this.problems=[],this.propertiesMatches=0,this.propertiesValueMatches=0,this.primaryValueMatches=0,this.enumValueMatch=!1,this.enumValues=null}return e.prototype.hasProblems=function(){return!!this.problems.length},e.prototype.mergeAll=function(e){for(var t=0,r=e;t<r.length;t++){var n=r[t];this.merge(n)}},e.prototype.merge=function(e){this.problems=this.problems.concat(e.problems)},e.prototype.mergeEnumValues=function(e){if(!this.enumValueMatch&&!e.enumValueMatch&&this.enumValues&&e.enumValues){this.enumValues=this.enumValues.concat(e.enumValues);for(var t=0,r=this.problems;t<r.length;t++){var n=r[t];n.code===ve.EnumValueMismatch&&(n.message=Oe("enumWarning","Value is not accepted. Valid values: {0}.",this.enumValues.map((function(e){return JSON.stringify(e)})).join(", ")))}}},e.prototype.mergePropertyMatch=function(e){this.merge(e),this.propertiesMatches++,(e.enumValueMatch||!e.hasProblems()&&e.propertiesMatches)&&this.propertiesValueMatches++,e.enumValueMatch&&e.enumValues&&1===e.enumValues.length&&this.primaryValueMatches++},e.prototype.compare=function(e){var t=this.hasProblems();return t!==e.hasProblems()?t?-1:1:this.enumValueMatch!==e.enumValueMatch?e.enumValueMatch?-1:1:this.primaryValueMatches!==e.primaryValueMatches?this.primaryValueMatches-e.primaryValueMatches:this.propertiesValueMatches!==e.propertiesValueMatches?this.propertiesValueMatches-e.propertiesValueMatches:this.propertiesMatches-e.propertiesMatches},e}();function Ne(e){return V(e)}function Re(e){return _(e)}function $e(e,t,r){return void 0===r&&(r=!1),t>=e.offset&&t<e.offset+e.length||r&&t===e.offset+e.length}!function(){function e(e,t,r){void 0===t&&(t=[]),void 0===r&&(r=[]),this.root=e,this.syntaxErrors=t,this.comments=r}e.prototype.getNodeFromOffset=function(e,t){if(void 0===t&&(t=!1),this.root)return M(this.root,e,t)},e.prototype.visit=function(e){if(this.root){var t=function(r){var n=e(r),i=r.children;if(Array.isArray(i))for(var o=0;o<i.length&&n;o++)n=t(i[o]);return n};t(this.root)}},e.prototype.validate=function(e,t){if(this.root&&t){var r=new Fe;return Le(this.root,t,r,Ve.instance),r.problems.map((function(t){var r=f.create(e.positionAt(t.location.offset),e.positionAt(t.location.offset+t.location.length));return k.create(r,t.message,t.severity,t.code)}))}return null},e.prototype.getMatchingSchemas=function(e,t,r){void 0===t&&(t=-1),void 0===r&&(r=null);var n=new _e(t,r);return this.root&&e&&Le(this.root,e,new Fe,n),n.schemas}}();function Le(e,t,r,n){if(e&&n.include(e)){switch(e.type){case"object":!function(e,t,r,n){for(var i=Object.create(null),o=[],a=0,s=e.properties;a<s.length;a++){var u=(y=s[a]).keyNode.value;i[u]=y.valueNode,o.push(u)}if(Array.isArray(t.required))for(var c=0,l=t.required;c<l.length;c++){var f=l[c];if(!i[f]){var h=e.parent&&"property"===e.parent.type&&e.parent.keyNode,p=h?{offset:h.offset,length:h.length}:{offset:e.offset,length:1};r.problems.push({location:p,severity:x.Warning,message:Oe("MissingRequiredPropWarning",'Missing property "{0}".',f)})}}var m=function(e){for(var t=o.indexOf(e);t>=0;)o.splice(t,1),t=o.indexOf(e)};if(t.properties)for(var d=0,g=Object.keys(t.properties);d<g.length;d++){f=g[d];m(f);var v=t.properties[f];if(P=i[f])if($(v))if(v)r.propertiesMatches++,r.propertiesValueMatches++;else{var y=P.parent;r.problems.push({location:{offset:y.keyNode.offset,length:y.keyNode.length},severity:x.Warning,message:t.errorMessage||Oe("DisallowedExtraPropWarning","Property {0} is not allowed.",f)})}else{var b=new Fe;Le(P,v,b,n),r.mergePropertyMatch(b)}}if(t.patternProperties)for(var S=0,k=Object.keys(t.patternProperties);S<k.length;S++)for(var C=k[S],w=new RegExp(C),A=0,I=o.slice(0);A<I.length;A++){f=I[A];if(w.test(f))if(m(f),P=i[f])if($(v=t.patternProperties[C]))if(v)r.propertiesMatches++,r.propertiesValueMatches++;else{y=P.parent;r.problems.push({location:{offset:y.keyNode.offset,length:y.keyNode.length},severity:x.Warning,message:t.errorMessage||Oe("DisallowedExtraPropWarning","Property {0} is not allowed.",f)})}else{b=new Fe;Le(P,v,b,n),r.mergePropertyMatch(b)}}if("object"==typeof t.additionalProperties)for(var T=0,E=o;T<E.length;T++){f=E[T];if(P=i[f]){b=new Fe;Le(P,t.additionalProperties,b,n),r.mergePropertyMatch(b)}}else if(!1===t.additionalProperties&&o.length>0)for(var O=0,j=o;O<j.length;O++){var P;f=j[O];if(P=i[f]){y=P.parent;r.problems.push({location:{offset:y.keyNode.offset,length:y.keyNode.length},severity:x.Warning,message:t.errorMessage||Oe("DisallowedExtraPropWarning","Property {0} is not allowed.",f)})}}N(t.maxProperties)&&e.properties.length>t.maxProperties&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("MaxPropWarning","Object has more properties than limit of {0}.",t.maxProperties)});N(t.minProperties)&&e.properties.length<t.minProperties&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("MinPropWarning","Object has fewer properties than the required number of {0}",t.minProperties)});if(t.dependencies)for(var M=0,_=Object.keys(t.dependencies);M<_.length;M++){u=_[M];if(i[u]){var V=t.dependencies[u];if(Array.isArray(V))for(var F=0,R=V;F<R.length;F++){var L=R[F];i[L]?r.propertiesValueMatches++:r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("RequiredDependentPropWarning","Object is missing property {0} required by property {1}.",L,u)})}else if(v=Me(V)){b=new Fe;Le(e,v,b,n),r.mergePropertyMatch(b)}}}var D=Me(t.propertyNames);if(D)for(var W=0,U=e.properties;W<U.length;W++){var q=U[W];(u=q.keyNode)&&Le(u,D,r,Ve.instance)}}(e,t,r,n);break;case"array":!function(e,t,r,n){if(Array.isArray(t.items)){for(var i=t.items,o=0;o<i.length;o++){var a=Me(i[o]),s=new Fe;(h=e.items[o])?(Le(h,a,s,n),r.mergePropertyMatch(s)):e.items.length>=i.length&&r.propertiesValueMatches++}if(e.items.length>i.length)if("object"==typeof t.additionalItems)for(var u=i.length;u<e.items.length;u++){s=new Fe;Le(e.items[u],t.additionalItems,s,n),r.mergePropertyMatch(s)}else!1===t.additionalItems&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("additionalItemsWarning","Array has too many items according to schema. Expected {0} or fewer.",i.length)})}else{var c=Me(t.items);if(c)for(var l=0,f=e.items;l<f.length;l++){var h=f[l];s=new Fe;Le(h,c,s,n),r.mergePropertyMatch(s)}}var p=Me(t.contains);if(p){e.items.some((function(e){var t=new Fe;return Le(e,p,t,Ve.instance),!t.hasProblems()}))||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.errorMessage||Oe("requiredItemMissingWarning","Array does not contain required item.")})}N(t.minItems)&&e.items.length<t.minItems&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("minItemsWarning","Array has too few items. Expected {0} or more.",t.minItems)});N(t.maxItems)&&e.items.length>t.maxItems&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("maxItemsWarning","Array has too many items. Expected {0} or fewer.",t.maxItems)});if(!0===t.uniqueItems){var m=Ne(e);m.some((function(e,t){return t!==m.lastIndexOf(e)}))&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("uniqueItemsWarning","Array has duplicate items.")})}}(e,t,r,n);break;case"string":!function(e,t,r,n){N(t.minLength)&&e.value.length<t.minLength&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("minLengthWarning","String is shorter than the minimum length of {0}.",t.minLength)});N(t.maxLength)&&e.value.length>t.maxLength&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("maxLengthWarning","String is longer than the maximum length of {0}.",t.maxLength)});if(i=t.pattern,"string"==typeof i){new RegExp(t.pattern).test(e.value)||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.patternErrorMessage||t.errorMessage||Oe("patternWarning",'String does not match the pattern of "{0}".',t.pattern)})}var i;if(t.format)switch(t.format){case"uri":case"uri-reference":var o=void 0;if(e.value){var a=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/.exec(e.value);a?a[2]||"uri"!==t.format||(o=Oe("uriSchemeMissing","URI with a scheme is expected.")):o=Oe("uriMissing","URI is expected.")}else o=Oe("uriEmpty","URI expected.");o&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.patternErrorMessage||t.errorMessage||Oe("uriFormatWarning","String is not a URI: {0}",o)});break;case"color-hex":case"date-time":case"date":case"time":case"email":var s=je[t.format];e.value&&s.pattern.exec(e.value)||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.patternErrorMessage||t.errorMessage||s.errorMessage})}}(e,t,r);break;case"number":!function(e,t,r,n){var i=e.value;N(t.multipleOf)&&i%t.multipleOf!=0&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("multipleOfWarning","Value is not divisible by {0}.",t.multipleOf)});function o(e,t){return N(t)?t:$(t)&&t?e:void 0}function a(e,t){if(!$(t)||!t)return e}var s=o(t.minimum,t.exclusiveMinimum);N(s)&&i<=s&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("exclusiveMinimumWarning","Value is below the exclusive minimum of {0}.",s)});var u=o(t.maximum,t.exclusiveMaximum);N(u)&&i>=u&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("exclusiveMaximumWarning","Value is above the exclusive maximum of {0}.",u)});var c=a(t.minimum,t.exclusiveMinimum);N(c)&&i<c&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("minimumWarning","Value is below the minimum of {0}.",c)});var l=a(t.maximum,t.exclusiveMaximum);N(l)&&i>l&&r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("maximumWarning","Value is above the maximum of {0}.",l)})}(e,t,r);break;case"property":return Le(e.valueNode,t,r,n)}!function(){function i(t){return e.type===t||"integer"===t&&"number"===e.type&&e.isInteger}Array.isArray(t.type)?t.type.some(i)||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.errorMessage||Oe("typeArrayMismatchWarning","Incorrect type. Expected one of {0}.",t.type.join(", "))}):t.type&&(i(t.type)||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:t.errorMessage||Oe("typeMismatchWarning",'Incorrect type. Expected "{0}".',t.type)}));if(Array.isArray(t.allOf))for(var o=0,a=t.allOf;o<a.length;o++){var s=a[o];Le(e,Me(s),r,n)}var u=Me(t.not);if(u){var c=new Fe,l=n.newSub();Le(e,u,c,l),c.hasProblems()||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,message:Oe("notSchemaWarning","Matches a schema that is not allowed.")});for(var f=0,h=l.schemas;f<h.length;f++){var p=h[f];p.inverted=!p.inverted,n.add(p)}}var m=function(t,i){for(var o=[],a=null,s=0,u=t;s<u.length;s++){var c=Me(u[s]),l=new Fe,f=n.newSub();if(Le(e,c,l,f),l.hasProblems()||o.push(c),a)if(i||l.hasProblems()||a.validationResult.hasProblems()){var h=l.compare(a.validationResult);h>0?a={schema:c,validationResult:l,matchingSchemas:f}:0===h&&(a.matchingSchemas.merge(f),a.validationResult.mergeEnumValues(l))}else a.matchingSchemas.merge(f),a.validationResult.propertiesMatches+=l.propertiesMatches,a.validationResult.propertiesValueMatches+=l.propertiesValueMatches;else a={schema:c,validationResult:l,matchingSchemas:f}}return o.length>1&&i&&r.problems.push({location:{offset:e.offset,length:1},severity:x.Warning,message:Oe("oneOfWarning","Matches multiple schemas when only one must validate.")}),null!==a&&(r.merge(a.validationResult),r.propertiesMatches+=a.validationResult.propertiesMatches,r.propertiesValueMatches+=a.validationResult.propertiesValueMatches,n.merge(a.matchingSchemas)),o.length};Array.isArray(t.anyOf)&&m(t.anyOf,!1);Array.isArray(t.oneOf)&&m(t.oneOf,!0);var d=function(t){var i=new Fe,o=n.newSub();Le(e,Me(t),i,o),r.merge(i),r.propertiesMatches+=i.propertiesMatches,r.propertiesValueMatches+=i.propertiesValueMatches,n.merge(o)},g=Me(t.if);g&&function(t,r,i){var o=Me(t),a=new Fe,s=n.newSub();Le(e,o,a,s),n.merge(s),a.hasProblems()?i&&d(i):r&&d(r)}(g,Me(t.then),Me(t.else));if(Array.isArray(t.enum)){for(var v=Ne(e),y=!1,b=0,S=t.enum;b<S.length;b++){var k=S[b];if(F(v,k)){y=!0;break}}r.enumValues=t.enum,r.enumValueMatch=y,y||r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,code:ve.EnumValueMismatch,message:t.errorMessage||Oe("enumWarning","Value is not accepted. Valid values: {0}.",t.enum.map((function(e){return JSON.stringify(e)})).join(", "))})}if(R(t.const)){F(v=Ne(e),t.const)?r.enumValueMatch=!0:(r.problems.push({location:{offset:e.offset,length:e.length},severity:x.Warning,code:ve.EnumValueMismatch,message:t.errorMessage||Oe("constWarning","Value must be {0}.",JSON.stringify(t.const))}),r.enumValueMatch=!1),r.enumValues=[t.const]}t.deprecationMessage&&e.parent&&r.problems.push({location:{offset:e.parent.offset,length:e.parent.length},severity:x.Warning,message:t.deprecationMessage})}(),n.add({node:e,schema:t})}}function De(e,t){var r=e.length-t.length;return r>0?e.lastIndexOf(t)===r:0===r&&e===t}var We=Ae();(function(){function e(e,t,r,n){void 0===t&&(t=[]),void 0===r&&(r=Promise),void 0===n&&(n={}),this.schemaService=e,this.contributions=t,this.promiseConstructor=r,this.clientCapabilities=n,this.templateVarIdCounter=0}e.prototype.doResolve=function(e){for(var t=this.contributions.length-1;t>=0;t--)if(this.contributions[t].resolveCompletion){var r=this.contributions[t].resolveCompletion(e);if(r)return r}return this.promiseConstructor.resolve(e)},e.prototype.doComplete=function(e,t,r){var n=this,i={items:[],isIncomplete:!1},o=e.getText(),a=e.offsetAt(t),s=r.getNodeFromOffset(a,!0);if(this.isInComment(e,s?s.offset:0,a))return Promise.resolve(i);if(s&&a===s.offset+s.length&&a>0){var u=o[a-1];("object"===s.type&&"}"===u||"array"===s.type&&"]"===u)&&(s=s.parent)}var c=this.getCurrentWord(e,a),l=null;if(!s||"string"!==s.type&&"number"!==s.type&&"boolean"!==s.type&&"null"!==s.type){var h=a-c.length;h>0&&'"'===o[h-1]&&h--,l=f.create(e.positionAt(h),t)}else l=f.create(e.positionAt(s.offset),e.positionAt(s.offset+s.length));var p={},m={add:function(e){var t=e.label,r=p[t];if(r)r.documentation||(r.documentation=e.documentation);else{if((t=t.replace(/[\n]/g,"↵")).length>60){var n=t.substr(0,57).trim()+"...";p[n]||(t=n)}l&&(e.textEdit=w.replace(l,e.insertText)),e.label=t,p[t]=e,i.items.push(e)}},setAsIncomplete:function(){i.isIncomplete=!0},error:function(e){console.error(e)},log:function(e){console.log(e)},getNumberOfProposals:function(){return i.items.length}};return this.schemaService.getSchemaForResource(e.uri,r).then((function(t){var u=[],f=!0,h="",d=null;if(s&&"string"===s.type){var g=s.parent;g&&"property"===g.type&&g.keyNode===s&&(f=!g.valueNode,d=g,h=o.substr(s.offset+1,s.length-2),g&&(s=g.parent))}if(s&&"object"===s.type){if(s.offset===a)return i;s.properties.forEach((function(e){d&&d===e||(p[e.keyNode.value]=z.create("__"))}));var v="";f&&(v=n.evaluateSeparatorAfter(e,e.offsetAt(l.end))),t?n.getPropertyCompletions(t,r,s,f,v,m):n.getSchemaLessPropertyCompletions(r,s,h,m);var y=Re(s);n.contributions.forEach((function(t){var r=t.collectPropertyCompletions(e.uri,y,c,f,""===v,m);r&&u.push(r)})),!t&&c.length>0&&'"'!==o.charAt(a-c.length-1)&&(m.add({kind:B.Property,label:n.getLabelForValue(c),insertText:n.getInsertTextForProperty(c,null,!1,v),insertTextFormat:K.Snippet,documentation:""}),m.setAsIncomplete())}var b={};return t?n.getValueCompletions(t,r,s,a,e,m,b):n.getSchemaLessValueCompletions(r,s,a,e,m),n.contributions.length>0&&n.getContributedValueCompletions(r,s,a,e,m,u),n.promiseConstructor.all(u).then((function(){if(0===m.getNumberOfProposals()){var t=a;!s||"string"!==s.type&&"number"!==s.type&&"boolean"!==s.type&&"null"!==s.type||(t=s.offset+s.length);var r=n.evaluateSeparatorAfter(e,t);n.addFillerValueCompletions(b,r,m)}return i}))}))},e.prototype.getPropertyCompletions=function(e,t,r,n,i,o){var a=this;t.getMatchingSchemas(e.schema,r.offset).forEach((function(e){if(e.node===r&&!e.inverted){var t=e.schema.properties;t&&Object.keys(t).forEach((function(e){var r=t[e];if("object"==typeof r&&!r.deprecationMessage&&!r.doNotSuggest){var s={kind:B.Property,label:e,insertText:a.getInsertTextForProperty(e,r,n,i),insertTextFormat:K.Snippet,filterText:a.getFilterTextForValue(e),documentation:a.fromMarkup(r.markdownDescription)||r.description||""};De(s.insertText,"$1"+i)&&(s.command={title:"Suggest",command:"editor.action.triggerSuggest"}),o.add(s)}}))}}))},e.prototype.getSchemaLessPropertyCompletions=function(e,t,r,n){var i=this,o=function(e){e.properties.forEach((function(e){var t=e.keyNode.value;n.add({kind:B.Property,label:t,insertText:i.getInsertTextForValue(t,""),insertTextFormat:K.Snippet,filterText:i.getFilterTextForValue(t),documentation:""})}))};if(t.parent)if("property"===t.parent.type){var a=t.parent.keyNode.value;e.visit((function(e){return"property"===e.type&&e!==t.parent&&e.keyNode.value===a&&e.valueNode&&"object"===e.valueNode.type&&o(e.valueNode),!0}))}else"array"===t.parent.type&&t.parent.items.forEach((function(e){"object"===e.type&&e!==t&&o(e)}));else"object"===t.type&&n.add({kind:B.Property,label:"$schema",insertText:this.getInsertTextForProperty("$schema",null,!0,""),insertTextFormat:K.Snippet,documentation:"",filterText:this.getFilterTextForValue("$schema")})},e.prototype.getSchemaLessValueCompletions=function(e,t,r,n,i){var o=this,a=r;if(!t||"string"!==t.type&&"number"!==t.type&&"boolean"!==t.type&&"null"!==t.type||(a=t.offset+t.length,t=t.parent),!t)return i.add({kind:this.getSuggestionKind("object"),label:"Empty object",insertText:this.getInsertTextForValue({},""),insertTextFormat:K.Snippet,documentation:""}),void i.add({kind:this.getSuggestionKind("array"),label:"Empty array",insertText:this.getInsertTextForValue([],""),insertTextFormat:K.Snippet,documentation:""});var s=this.evaluateSeparatorAfter(n,a),u=function(e){$e(e.parent,r,!0)||i.add({kind:o.getSuggestionKind(e.type),label:o.getLabelTextForMatchingNode(e,n),insertText:o.getInsertTextForMatchingNode(e,n,s),insertTextFormat:K.Snippet,documentation:""}),"boolean"===e.type&&o.addBooleanValueCompletion(!e.value,s,i)};if("property"===t.type&&r>t.colonOffset){var c=t.valueNode;if(c&&(r>c.offset+c.length||"object"===c.type||"array"===c.type))return;var l=t.keyNode.value;e.visit((function(e){return"property"===e.type&&e.keyNode.value===l&&e.valueNode&&u(e.valueNode),!0})),"$schema"===l&&t.parent&&!t.parent.parent&&this.addDollarSchemaCompletions(s,i)}if("array"===t.type)if(t.parent&&"property"===t.parent.type){var f=t.parent.keyNode.value;e.visit((function(e){return"property"===e.type&&e.keyNode.value===f&&e.valueNode&&"array"===e.valueNode.type&&e.valueNode.items.forEach(u),!0}))}else t.items.forEach(u)},e.prototype.getValueCompletions=function(e,t,r,n,i,o,a){var s=this,u=n,c=null,l=null;if(!r||"string"!==r.type&&"number"!==r.type&&"boolean"!==r.type&&"null"!==r.type||(u=r.offset+r.length,l=r,r=r.parent),r){if("property"===r.type&&n>r.colonOffset){var f=r.valueNode;if(f&&n>f.offset+f.length)return;c=r.keyNode.value,r=r.parent}if(r&&(null!==c||"array"===r.type)){var h=this.evaluateSeparatorAfter(i,u);t.getMatchingSchemas(e.schema,r.offset,l).forEach((function(e){if(e.node===r&&!e.inverted&&e.schema){if("array"===r.type&&e.schema.items)if(Array.isArray(e.schema.items)){var t=s.findItemAtOffset(r,i,n);t<e.schema.items.length&&s.addSchemaValueCompletions(e.schema.items[t],h,o,a)}else s.addSchemaValueCompletions(e.schema.items,h,o,a);if(e.schema.properties){var u=e.schema.properties[c];u&&s.addSchemaValueCompletions(u,h,o,a)}}})),"$schema"!==c||r.parent||this.addDollarSchemaCompletions(h,o),a.boolean&&(this.addBooleanValueCompletion(!0,h,o),this.addBooleanValueCompletion(!1,h,o)),a.null&&this.addNullValueCompletion(h,o)}}else this.addSchemaValueCompletions(e.schema,"",o,a)},e.prototype.getContributedValueCompletions=function(e,t,r,n,i,o){if(t){if("string"!==t.type&&"number"!==t.type&&"boolean"!==t.type&&"null"!==t.type||(t=t.parent),"property"===t.type&&r>t.colonOffset){var a=t.keyNode.value,s=t.valueNode;if(!s||r<=s.offset+s.length){var u=Re(t.parent);this.contributions.forEach((function(e){var t=e.collectValueCompletions(n.uri,u,a,i);t&&o.push(t)}))}}}else this.contributions.forEach((function(e){var t=e.collectDefaultCompletions(n.uri,i);t&&o.push(t)}))},e.prototype.addSchemaValueCompletions=function(e,t,r,n){var i=this;"object"==typeof e&&(this.addEnumValueCompletions(e,t,r),this.addDefaultValueCompletions(e,t,r),this.collectTypes(e,n),Array.isArray(e.allOf)&&e.allOf.forEach((function(e){return i.addSchemaValueCompletions(e,t,r,n)})),Array.isArray(e.anyOf)&&e.anyOf.forEach((function(e){return i.addSchemaValueCompletions(e,t,r,n)})),Array.isArray(e.oneOf)&&e.oneOf.forEach((function(e){return i.addSchemaValueCompletions(e,t,r,n)})))},e.prototype.addDefaultValueCompletions=function(e,t,r,n){var i=this;void 0===n&&(n=0);var o=!1;if(R(e.default)){for(var a=e.type,s=e.default,u=n;u>0;u--)s=[s],a="array";r.add({kind:this.getSuggestionKind(a),label:this.getLabelForValue(s),insertText:this.getInsertTextForValue(s,t),insertTextFormat:K.Snippet,detail:We("json.suggest.default","Default value")}),o=!0}Array.isArray(e.examples)&&e.examples.forEach((function(a){for(var s=e.type,u=a,c=n;c>0;c--)u=[u],s="array";r.add({kind:i.getSuggestionKind(s),label:i.getLabelForValue(u),insertText:i.getInsertTextForValue(u,t),insertTextFormat:K.Snippet}),o=!0})),Array.isArray(e.defaultSnippets)&&e.defaultSnippets.forEach((function(a){var s,u,c=e.type,l=a.body,f=a.label;if(R(l)){e.type;for(var h=n;h>0;h--)l=[l],"array";s=i.getInsertTextForSnippetValue(l,t),u=i.getFilterTextForSnippetValue(l),f=f||i.getLabelForSnippetValue(l)}else if("string"==typeof a.bodyText){var p="",m="",d="";for(h=n;h>0;h--)p=p+d+"[\n",m=m+"\n"+d+"]",d+="\t",c="array";s=p+d+a.bodyText.split("\n").join("\n"+d)+m+t,f=f||s,u=s.replace(/[\n]/g,"")}r.add({kind:i.getSuggestionKind(c),label:f,documentation:i.fromMarkup(a.markdownDescription)||a.description,insertText:s,insertTextFormat:K.Snippet,filterText:u}),o=!0})),o||"object"!=typeof e.items||Array.isArray(e.items)||this.addDefaultValueCompletions(e.items,t,r,n+1)},e.prototype.addEnumValueCompletions=function(e,t,r){if(R(e.const)&&r.add({kind:this.getSuggestionKind(e.type),label:this.getLabelForValue(e.const),insertText:this.getInsertTextForValue(e.const,t),insertTextFormat:K.Snippet,documentation:this.fromMarkup(e.markdownDescription)||e.description}),Array.isArray(e.enum))for(var n=0,i=e.enum.length;n<i;n++){var o=e.enum[n],a=this.fromMarkup(e.markdownDescription)||e.description;e.markdownEnumDescriptions&&n<e.markdownEnumDescriptions.length&&this.doesSupportMarkdown()?a=this.fromMarkup(e.markdownEnumDescriptions[n]):e.enumDescriptions&&n<e.enumDescriptions.length&&(a=e.enumDescriptions[n]),r.add({kind:this.getSuggestionKind(e.type),label:this.getLabelForValue(o),insertText:this.getInsertTextForValue(o,t),insertTextFormat:K.Snippet,documentation:a})}},e.prototype.collectTypes=function(e,t){if(!Array.isArray(e.enum)&&!R(e.const)){var r=e.type;Array.isArray(r)?r.forEach((function(e){return t[e]=!0})):t[r]=!0}},e.prototype.addFillerValueCompletions=function(e,t,r){e.object&&r.add({kind:this.getSuggestionKind("object"),label:"{}",insertText:this.getInsertTextForGuessedValue({},t),insertTextFormat:K.Snippet,detail:We("defaults.object","New object"),documentation:""}),e.array&&r.add({kind:this.getSuggestionKind("array"),label:"[]",insertText:this.getInsertTextForGuessedValue([],t),insertTextFormat:K.Snippet,detail:We("defaults.array","New array"),documentation:""})},e.prototype.addBooleanValueCompletion=function(e,t,r){r.add({kind:this.getSuggestionKind("boolean"),label:e?"true":"false",insertText:this.getInsertTextForValue(e,t),insertTextFormat:K.Snippet,documentation:""})},e.prototype.addNullValueCompletion=function(e,t){t.add({kind:this.getSuggestionKind("null"),label:"null",insertText:"null"+e,insertTextFormat:K.Snippet,documentation:""})},e.prototype.addDollarSchemaCompletions=function(e,t){var r=this;this.schemaService.getRegisteredSchemaIds((function(e){return"http"===e||"https"===e})).forEach((function(n){return t.add({kind:B.Module,label:r.getLabelForValue(n),filterText:r.getFilterTextForValue(n),insertText:r.getInsertTextForValue(n,e),insertTextFormat:K.Snippet,documentation:""})}))},e.prototype.getLabelForValue=function(e){return JSON.stringify(e)},e.prototype.getFilterTextForValue=function(e){return JSON.stringify(e)},e.prototype.getFilterTextForSnippetValue=function(e){return JSON.stringify(e).replace(/\$\{\d+:([^}]+)\}|\$\d+/g,"$1")},e.prototype.getLabelForSnippetValue=function(e){return JSON.stringify(e).replace(/\$\{\d+:([^}]+)\}|\$\d+/g,"$1")},e.prototype.getInsertTextForPlainText=function(e){return e.replace(/[\\\$\}]/g,"\\$&")},e.prototype.getInsertTextForValue=function(e,t){var r=JSON.stringify(e,null,"\t");return"{}"===r?"{$1}"+t:"[]"===r?"[$1]"+t:this.getInsertTextForPlainText(r+t)},e.prototype.getInsertTextForSnippetValue=function(e,t){return function e(t,r,n){if(null!==t&&"object"==typeof t){var i=r+"\t";if(Array.isArray(t)){if(0===t.length)return"[]";for(var o="[\n",a=0;a<t.length;a++)o+=i+e(t[a],i,n),a<t.length-1&&(o+=","),o+="\n";return o+=r+"]"}var s=Object.keys(t);if(0===s.length)return"{}";for(o="{\n",a=0;a<s.length;a++){var u=s[a];o+=i+JSON.stringify(u)+": "+e(t[u],i,n),a<s.length-1&&(o+=","),o+="\n"}return o+=r+"}"}return n(t)}(e,"",(function(e){return"string"==typeof e&&"^"===e[0]?e.substr(1):JSON.stringify(e)}))+t},e.prototype.getInsertTextForGuessedValue=function(e,t){switch(typeof e){case"object":return null===e?"${1:null}"+t:this.getInsertTextForValue(e,t);case"string":var r=JSON.stringify(e);return r=r.substr(1,r.length-2),'"${1:'+(r=this.getInsertTextForPlainText(r))+'}"'+t;case"number":case"boolean":return"${1:"+JSON.stringify(e)+"}"+t}return this.getInsertTextForValue(e,t)},e.prototype.getSuggestionKind=function(e){if(Array.isArray(e)){var t=e;e=t.length>0?t[0]:null}if(!e)return B.Value;switch(e){case"string":return B.Value;case"object":return B.Module;case"property":return B.Property;default:return B.Value}},e.prototype.getLabelTextForMatchingNode=function(e,t){switch(e.type){case"array":return"[]";case"object":return"{}";default:return t.getText().substr(e.offset,e.length)}},e.prototype.getInsertTextForMatchingNode=function(e,t,r){switch(e.type){case"array":return this.getInsertTextForValue([],r);case"object":return this.getInsertTextForValue({},r);default:var n=t.getText().substr(e.offset,e.length)+r;return this.getInsertTextForPlainText(n)}},e.prototype.getInsertTextForProperty=function(e,t,r,n){var i=this.getInsertTextForValue(e,"");if(!r)return i;var o,a=i+": ",s=0;if(t){if(Array.isArray(t.defaultSnippets)){if(1===t.defaultSnippets.length){var u=t.defaultSnippets[0].body;R(u)&&(o=this.getInsertTextForSnippetValue(u,""))}s+=t.defaultSnippets.length}if(t.enum&&(o||1!==t.enum.length||(o=this.getInsertTextForGuessedValue(t.enum[0],"")),s+=t.enum.length),R(t.default)&&(o||(o=this.getInsertTextForGuessedValue(t.default,"")),s++),Array.isArray(t.examples)&&t.examples.length&&(o||(o=this.getInsertTextForGuessedValue(t.examples[0],"")),s+=t.examples.length),0===s){var c=Array.isArray(t.type)?t.type[0]:t.type;switch(c||(t.properties?c="object":t.items&&(c="array")),c){case"boolean":o="$1";break;case"string":o='"$1"';break;case"object":o="{$1}";break;case"array":o="[$1]";break;case"number":case"integer":o="${1:0}";break;case"null":o="${1:null}";break;default:return i}}}return(!o||s>1)&&(o="$1"),a+o+n},e.prototype.getCurrentWord=function(e,t){for(var r=t-1,n=e.getText();r>=0&&-1===' \t\n\r\v":{[,]}'.indexOf(n.charAt(r));)r--;return n.substring(r+1,t)},e.prototype.evaluateSeparatorAfter=function(e,t){var r=j(e.getText(),!0);switch(r.setPosition(t),r.scan()){case 5:case 2:case 4:case 17:return"";default:return","}},e.prototype.findItemAtOffset=function(e,t,r){for(var n=j(t.getText(),!0),i=e.items,o=i.length-1;o>=0;o--){var a=i[o];if(r>a.offset+a.length)return n.setPosition(a.offset+a.length),5===n.scan()&&r>=n.getTokenOffset()+n.getTokenLength()?o+1:o;if(r>=a.offset)return o}return 0},e.prototype.isInComment=function(e,t,r){var n=j(e.getText(),!1);n.setPosition(t);for(var i=n.scan();17!==i&&n.getTokenOffset()+n.getTokenLength()<r;)i=n.scan();return(12===i||13===i)&&n.getTokenOffset()<=r},e.prototype.fromMarkup=function(e){if(e&&this.doesSupportMarkdown())return{kind:U.Markdown,value:e}},e.prototype.doesSupportMarkdown=function(){if(!R(this.supportsMarkdown)){var e=this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.completion;this.supportsMarkdown=e&&e.completionItem&&Array.isArray(e.completionItem.documentationFormat)&&-1!==e.completionItem.documentationFormat.indexOf(U.Markdown)}return this.supportsMarkdown},e.prototype.doesSupportsCommitCharacters=function(){if(!R(this.supportsCommitCharacters)){var e=this.clientCapabilities.textDocument&&this.clientCapabilities.textDocument.completion;this.supportsCommitCharacters=e&&e.completionItem&&!!e.completionItem.commitCharactersSupport}return this.supportsCommitCharacters}})(),function(){function e(e,t,r){void 0===t&&(t=[]),this.schemaService=e,this.contributions=t,this.promise=r||Promise}e.prototype.doHover=function(e,t,r){var n=e.offsetAt(t),i=r.getNodeFromOffset(n);if(!i||("object"===i.type||"array"===i.type)&&n>i.offset+1&&n<i.offset+i.length-1)return this.promise.resolve(null);var o=i;if("string"===i.type){var a=i.parent;if(a&&"property"===a.type&&a.keyNode===i&&!(i=a.valueNode))return this.promise.resolve(null)}for(var s=f.create(e.positionAt(o.offset),e.positionAt(o.offset+o.length)),u=function(e){return{contents:e,range:s}},c=Re(i),l=this.contributions.length-1;l>=0;l--){var h=this.contributions[l].getInfoContribution(e.uri,c);if(h)return h.then((function(e){return u(e)}))}return this.schemaService.getSchemaForResource(e.uri,r).then((function(e){if(e){var t=r.getMatchingSchemas(e.schema,i.offset),n=null,o=null,a=null,s=null;t.every((function(e){if(e.node===i&&!e.inverted&&e.schema&&(n=n||e.schema.title,o=o||e.schema.markdownDescription||Ue(e.schema.description),e.schema.enum)){var t=e.schema.enum.indexOf(Ne(i));e.schema.markdownEnumDescriptions?a=e.schema.markdownEnumDescriptions[t]:e.schema.enumDescriptions&&(a=Ue(e.schema.enumDescriptions[t])),a&&"string"!=typeof(s=e.schema.enum[t])&&(s=JSON.stringify(s))}return!0}));var c="";return n&&(c=Ue(n)),o&&(c.length>0&&(c+="\n\n"),c+=o),a&&(c.length>0&&(c+="\n\n"),c+="`"+function(e){if(-1!==e.indexOf("`"))return"`` "+e+" ``";return e}(s)+"`: "+a),u([c])}return null}))}}();function Ue(e){if(e)return e.replace(/([^\n\r])(\r?\n)([^\n\r])/gm,"$1\n\n$3").replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}var qe,Be,Ke=function(){var e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(t,r)};return function(t,r){function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();if("object"==typeof process)Be="win32"===process.platform;else if("object"==typeof navigator){var Je=navigator.userAgent;Be=Je.indexOf("Windows")>=0}var ze=/^\w[\w\d+.-]*$/,He=/^\//,Ge=/^\/\//;var Ze="/",Xe=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,Qe=function(){function e(e,t,r,n,i,o){void 0===o&&(o=!1),"object"==typeof e?(this.scheme=e.scheme||"",this.authority=e.authority||"",this.path=e.path||"",this.query=e.query||"",this.fragment=e.fragment||""):(this.scheme=function(e,t){return e||t?e:"file"}(e,o),this.authority=t||"",this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==Ze&&(t=Ze+t):t=Ze}return t}(this.scheme,r||""),this.query=n||"",this.fragment=i||"",function(e,t){if(!e.scheme&&t)throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'+e.authority+'", path: "'+e.path+'", query: "'+e.query+'", fragment: "'+e.fragment+'"}');if(e.scheme&&!ze.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!He.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(Ge.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}(this,o))}return e.isUri=function(t){return t instanceof e||!!t&&("string"==typeof t.authority&&"string"==typeof t.fragment&&"string"==typeof t.path&&"string"==typeof t.query&&"string"==typeof t.scheme&&"function"==typeof t.fsPath&&"function"==typeof t.with&&"function"==typeof t.toString)},Object.defineProperty(e.prototype,"fsPath",{get:function(){return it(this)},enumerable:!0,configurable:!0}),e.prototype.with=function(e){if(!e)return this;var t=e.scheme,r=e.authority,n=e.path,i=e.query,o=e.fragment;return void 0===t?t=this.scheme:null===t&&(t=""),void 0===r?r=this.authority:null===r&&(r=""),void 0===n?n=this.path:null===n&&(n=""),void 0===i?i=this.query:null===i&&(i=""),void 0===o?o=this.fragment:null===o&&(o=""),t===this.scheme&&r===this.authority&&n===this.path&&i===this.query&&o===this.fragment?this:new et(t,r,n,i,o)},e.parse=function(e,t){void 0===t&&(t=!1);var r=Xe.exec(e);return r?new et(r[2]||"",decodeURIComponent(r[4]||""),decodeURIComponent(r[5]||""),decodeURIComponent(r[7]||""),decodeURIComponent(r[9]||""),t):new et("","","","","")},e.file=function(e){var t="";if(Be&&(e=e.replace(/\\/g,Ze)),e[0]===Ze&&e[1]===Ze){var r=e.indexOf(Ze,2);-1===r?(t=e.substring(2),e=Ze):(t=e.substring(2,r),e=e.substring(r)||Ze)}return new et("file",t,e,"","")},e.from=function(e){return new et(e.scheme,e.authority,e.path,e.query,e.fragment)},e.prototype.toString=function(e){return void 0===e&&(e=!1),ot(this,e)},e.prototype.toJSON=function(){return this},e.revive=function(t){if(t){if(t instanceof e)return t;var r=new et(t);return r._formatted=t.external,r._fsPath=t._sep===Ye?t.fsPath:null,r}return t},e}(),Ye=Be?1:void 0,et=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._formatted=null,t._fsPath=null,t}return Ke(t,e),Object.defineProperty(t.prototype,"fsPath",{get:function(){return this._fsPath||(this._fsPath=it(this)),this._fsPath},enumerable:!0,configurable:!0}),t.prototype.toString=function(e){return void 0===e&&(e=!1),e?ot(this,!0):(this._formatted||(this._formatted=ot(this,!1)),this._formatted)},t.prototype.toJSON=function(){var e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=Ye),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e},t}(Qe),tt=((qe={})[58]="%3A",qe[47]="%2F",qe[63]="%3F",qe[35]="%23",qe[91]="%5B",qe[93]="%5D",qe[64]="%40",qe[33]="%21",qe[36]="%24",qe[38]="%26",qe[39]="%27",qe[40]="%28",qe[41]="%29",qe[42]="%2A",qe[43]="%2B",qe[44]="%2C",qe[59]="%3B",qe[61]="%3D",qe[32]="%20",qe);function rt(e,t){for(var r=void 0,n=-1,i=0;i<e.length;i++){var o=e.charCodeAt(i);if(o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||45===o||46===o||95===o||126===o||t&&47===o)-1!==n&&(r+=encodeURIComponent(e.substring(n,i)),n=-1),void 0!==r&&(r+=e.charAt(i));else{void 0===r&&(r=e.substr(0,i));var a=tt[o];void 0!==a?(-1!==n&&(r+=encodeURIComponent(e.substring(n,i)),n=-1),r+=a):-1===n&&(n=i)}}return-1!==n&&(r+=encodeURIComponent(e.substring(n))),void 0!==r?r:e}function nt(e){for(var t=void 0,r=0;r<e.length;r++){var n=e.charCodeAt(r);35===n||63===n?(void 0===t&&(t=e.substr(0,r)),t+=tt[n]):void 0!==t&&(t+=e[r])}return void 0!==t?t:e}function it(e){var t;return t=e.authority&&e.path.length>1&&"file"===e.scheme?"//"+e.authority+e.path:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?e.path[1].toLowerCase()+e.path.substr(2):e.path,Be&&(t=t.replace(/\//g,"\\")),t}function ot(e,t){var r=t?nt:rt,n="",i=e.scheme,o=e.authority,a=e.path,s=e.query,u=e.fragment;if(i&&(n+=i,n+=":"),(o||"file"===i)&&(n+=Ze,n+=Ze),o){var c=o.indexOf("@");if(-1!==c){var l=o.substr(0,c);o=o.substr(c+1),-1===(c=l.indexOf(":"))?n+=r(l,!1):(n+=r(l.substr(0,c),!1),n+=":",n+=r(l.substr(c+1),!1)),n+="@"}-1===(c=(o=o.toLowerCase()).indexOf(":"))?n+=r(o,!1):(n+=r(o.substr(0,c),!1),n+=o.substr(c))}if(a){if(a.length>=3&&47===a.charCodeAt(0)&&58===a.charCodeAt(2))(f=a.charCodeAt(1))>=65&&f<=90&&(a="/"+String.fromCharCode(f+32)+":"+a.substr(3));else if(a.length>=2&&58===a.charCodeAt(1)){var f;(f=a.charCodeAt(0))>=65&&f<=90&&(a=String.fromCharCode(f+32)+":"+a.substr(2))}n+=r(a,!0)}return s&&(n+="?",n+=r(s,!1)),u&&(n+="#",n+=t?u:rt(u,!1)),n}var at=Ae(),st=function(){function e(e){try{this.patternRegExp=new RegExp(function(e){return e.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*")}(e)+"$")}catch(e){this.patternRegExp=null}this.schemas=[]}return e.prototype.addSchema=function(e){this.schemas.push(e)},e.prototype.matchesPattern=function(e){return this.patternRegExp&&this.patternRegExp.test(e)},e.prototype.getSchemas=function(){return this.schemas},e}(),ut=function(){function e(e,t,r){this.service=e,this.url=t,this.dependencies={},r&&(this.unresolvedSchema=this.service.promise.resolve(new ct(r)))}return e.prototype.getUnresolvedSchema=function(){return this.unresolvedSchema||(this.unresolvedSchema=this.service.loadSchema(this.url)),this.unresolvedSchema},e.prototype.getResolvedSchema=function(){var e=this;return this.resolvedSchema||(this.resolvedSchema=this.getUnresolvedSchema().then((function(t){return e.service.resolveSchemaContent(t,e.url,e.dependencies)}))),this.resolvedSchema},e.prototype.clearSchema=function(){this.resolvedSchema=null,this.unresolvedSchema=null,this.dependencies={}},e}(),ct=function(e,t){void 0===t&&(t=[]),this.schema=e,this.errors=t},lt=function(){function e(e,t){void 0===t&&(t=[]),this.schema=e,this.errors=t}return e.prototype.getSection=function(e){return Me(this.getSectionRecursive(e,this.schema))},e.prototype.getSectionRecursive=function(e,t){if(!t||"boolean"==typeof t||0===e.length)return t;var r=e.shift();if(t.properties&&(t.properties[r],1))return this.getSectionRecursive(e,t.properties[r]);if(t.patternProperties)for(var n=0,i=Object.keys(t.patternProperties);n<i.length;n++){var o=i[n];if(new RegExp(o).test(r))return this.getSectionRecursive(e,t.patternProperties[o])}else{if("object"==typeof t.additionalProperties)return this.getSectionRecursive(e,t.additionalProperties);if(r.match("[0-9]+"))if(Array.isArray(t.items)){var a=parseInt(r,10);if(!isNaN(a)&&t.items[a])return this.getSectionRecursive(e,t.items[a])}else if(t.items)return this.getSectionRecursive(e,t.items)}return null},e}();!function(){function e(e,t,r){this.contextService=t,this.requestService=e,this.promiseConstructor=r||Promise,this.callOnDispose=[],this.contributionSchemas={},this.contributionAssociations={},this.schemasById={},this.filePatternAssociations=[],this.filePatternAssociationById={},this.registeredSchemasIds={}}e.prototype.getRegisteredSchemaIds=function(e){return Object.keys(this.registeredSchemasIds).filter((function(t){var r=Qe.parse(t).scheme;return"schemaservice"!==r&&(!e||e(r))}))},Object.defineProperty(e.prototype,"promise",{get:function(){return this.promiseConstructor},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){for(;this.callOnDispose.length>0;)this.callOnDispose.pop()()},e.prototype.onResourceChange=function(e){for(var t=this,r=!1,n=[e=this.normalizeId(e)],i=Object.keys(this.schemasById).map((function(e){return t.schemasById[e]}));n.length;)for(var o=n.pop(),a=0;a<i.length;a++){var s=i[a];s&&(s.url===o||s.dependencies[o])&&(s.url!==o&&n.push(s.url),s.clearSchema(),i[a]=void 0,r=!0)}return r},e.prototype.normalizeId=function(e){try{return Qe.parse(e).toString()}catch(t){return e}},e.prototype.setSchemaContributions=function(e){if(e.schemas){var t=e.schemas;for(var r in t){var n=this.normalizeId(r);this.contributionSchemas[n]=this.addSchemaHandle(n,t[r])}}if(e.schemaAssociations){var i=e.schemaAssociations;for(var o in i){var a=i[o];this.contributionAssociations[o]=a;for(var s=this.getOrAddFilePatternAssociation(o),u=0,c=a;u<c.length;u++){var l=c[u];r=this.normalizeId(l);s.addSchema(r)}}}},e.prototype.addSchemaHandle=function(e,t){var r=new ut(this,e,t);return this.schemasById[e]=r,r},e.prototype.getOrAddSchemaHandle=function(e,t){return this.schemasById[e]||this.addSchemaHandle(e,t)},e.prototype.getOrAddFilePatternAssociation=function(e){var t=this.filePatternAssociationById[e];return t||(t=new st(e),this.filePatternAssociationById[e]=t,this.filePatternAssociations.push(t)),t},e.prototype.registerExternalSchema=function(e,t,r){void 0===t&&(t=null);var n=this.normalizeId(e);if(this.registeredSchemasIds[n]=!0,t)for(var i=0,o=t;i<o.length;i++){var a=o[i];this.getOrAddFilePatternAssociation(a).addSchema(n)}return r?this.addSchemaHandle(n,r):this.getOrAddSchemaHandle(n)},e.prototype.clearExternalSchemas=function(){for(var e in this.schemasById={},this.filePatternAssociations=[],this.filePatternAssociationById={},this.registeredSchemasIds={},this.contributionSchemas)this.schemasById[e]=this.contributionSchemas[e],this.registeredSchemasIds[e]=!0;for(var t in this.contributionAssociations)for(var r=this.getOrAddFilePatternAssociation(t),n=0,i=this.contributionAssociations[t];n<i.length;n++){var o=i[n];e=this.normalizeId(o);r.addSchema(e)}},e.prototype.getResolvedSchema=function(e){var t=this.normalizeId(e),r=this.schemasById[t];return r?r.getResolvedSchema():this.promise.resolve(null)},e.prototype.loadSchema=function(e){if(!this.requestService){var t=at("json.schema.norequestservice","Unable to load schema from '{0}'. No schema request service available",ft(e));return this.promise.resolve(new ct({},[t]))}return this.requestService(e).then((function(t){if(!t){var r=at("json.schema.nocontent","Unable to load schema from '{0}': No content.",ft(e));return new ct({},[r])}var n,i=[];n=P(t,i);var o=i.length?[at("json.schema.invalidFormat","Unable to parse content from '{0}': Parse error at offset {1}.",ft(e),i[0].offset)]:[];return new ct(n,o)}),(function(t){var r=t.toString(),n=t.toString().split("Error: ");return n.length>1&&(r=n[1]),De(r,".")&&(r=r.substr(0,r.length-1)),new ct({},[at("json.schema.nocontent","Unable to load schema from '{0}': {1}.",ft(e),r)])}))},e.prototype.resolveSchemaContent=function(e,t,r){var n=this,i=e.errors.slice(0),o=e.schema;if(o.$schema){var a=this.normalizeId(o.$schema);if("http://json-schema.org/draft-03/schema"===a)return this.promise.resolve(new lt({},[at("json.schema.draft03.notsupported","Draft-03 schemas are not supported.")]));"https://json-schema.org/draft/2019-09/schema"===a&&e.errors.push(at("json.schema.draft201909.notsupported","Draft 2019-09 schemas are not yet fully supported."))}var s=this.contextService,u=function(e,t,r,n){var o=function(e,t){if(!t)return e;var r=e;return"/"===t[0]&&(t=t.substr(1)),t.split("/").some((function(e){return!(r=r[e])})),r}(t,n);if(o)for(var a in o)o.hasOwnProperty(a)&&!e.hasOwnProperty(a)&&(e[a]=o[a]);else i.push(at("json.schema.invalidref","$ref '{0}' in '{1}' can not be resolved.",n,r))},c=function(e,t,r,o,a){s&&!/^\w+:\/\/.*/.test(t)&&(t=s.resolveRelativePath(t,o)),t=n.normalizeId(t);var c=n.getOrAddSchemaHandle(t);return c.getUnresolvedSchema().then((function(n){if(a[t]=!0,n.errors.length){var o=r?t+"#"+r:t;i.push(at("json.schema.problemloadingref","Problems loading reference '{0}': {1}",o,n.errors[0]))}return u(e,n.schema,t,r),l(e,n.schema,t,c.dependencies)}))},l=function(e,t,r,i){if(!e||"object"!=typeof e)return Promise.resolve(null);for(var o=[e],a=[],s=[],l=function(e){for(var n=[];e.$ref;){var a=e.$ref,l=a.split("#",2);if(delete e.$ref,l[0].length>0)return void s.push(c(e,l[0],l[1],r,i));-1===n.indexOf(a)&&(u(e,t,r,l[1]),n.push(a))}!function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var r=0,n=e;r<n.length;r++){var i=n[r];"object"==typeof i&&o.push(i)}}(e.items,e.additionalProperties,e.not,e.contains,e.propertyNames,e.if,e.then,e.else),function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var r=0,n=e;r<n.length;r++){var i=n[r];if("object"==typeof i)for(var a in i){var s=i[a];"object"==typeof s&&o.push(s)}}}(e.definitions,e.properties,e.patternProperties,e.dependencies),function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var r=0,n=e;r<n.length;r++){var i=n[r];if(Array.isArray(i))for(var a=0,s=i;a<s.length;a++){var u=s[a];"object"==typeof u&&o.push(u)}}}(e.anyOf,e.allOf,e.oneOf,e.items)};o.length;){var f=o.pop();a.indexOf(f)>=0||(a.push(f),l(f))}return n.promise.all(s)};return l(o,o,t,r).then((function(e){return new lt(o,i)}))},e.prototype.getSchemaForResource=function(e,t){if(t&&t.root&&"object"===t.root.type){var r=t.root.properties.filter((function(e){return"$schema"===e.keyNode.value&&e.valueNode&&"string"===e.valueNode.type}));if(r.length>0){var n=Ne(r[0].valueNode);if(n&&function(e,t){if(e.length<t.length)return!1;for(var r=0;r<t.length;r++)if(e[r]!==t[r])return!1;return!0}(n,".")&&this.contextService&&(n=this.contextService.resolveRelativePath(n,e)),n){var i=this.normalizeId(n);return this.getOrAddSchemaHandle(i).getResolvedSchema()}}}for(var o=Object.create(null),a=[],s=0,u=this.filePatternAssociations;s<u.length;s++){var c=u[s];if(c.matchesPattern(e))for(var l=0,f=c.getSchemas();l<f.length;l++){var h=f[l];o[h]||(a.push(h),o[h]=!0)}}return a.length>0?this.createCombinedSchema(e,a).getResolvedSchema():this.promise.resolve(null)},e.prototype.createCombinedSchema=function(e,t){if(1===t.length)return this.getOrAddSchemaHandle(t[0]);var r="schemaservice://combinedSchema/"+encodeURIComponent(e),n={allOf:t.map((function(e){return{$ref:e}}))};return this.addSchemaHandle(r,n)}}();function ft(e){try{var t=Qe.parse(e);if("file"===t.scheme)return t.fsPath}catch(e){}return e}var ht=Ae(),pt=(function(){function e(e,t){this.jsonSchemaService=e,this.promise=t,this.validationEnabled=!0}e.prototype.configure=function(e){e&&(this.validationEnabled=e.validate,this.commentSeverity=e.allowComments?void 0:x.Error)},e.prototype.doValidation=function(e,t,r,n){var i=this;if(!this.validationEnabled)return this.promise.resolve([]);var o=[],a={},s=function(e){var t=e.range.start.line+" "+e.range.start.character+" "+e.message;a[t]||(a[t]=!0,o.push(e))},u=function(n){var a=r?mt(r.trailingCommas):x.Error,u=r?mt(r.comments):i.commentSeverity;if(n){if(n.errors.length&&t.root){var c=t.root,l="object"===c.type?c.properties[0]:null;if(l&&"$schema"===l.keyNode.value){var h=l.valueNode||l,p=f.create(e.positionAt(h.offset),e.positionAt(h.offset+h.length));s(k.create(p,n.errors[0],x.Warning,ve.SchemaResolveError))}else{p=f.create(e.positionAt(c.offset),e.positionAt(c.offset+1));s(k.create(p,n.errors[0],x.Warning,ve.SchemaResolveError))}}else{var m=t.validate(e,n.schema);m&&m.forEach(s)}(function e(t){if(t&&"object"==typeof t){if($(t.allowComments))return t.allowComments;if(t.allOf)for(var r=0,n=t.allOf;r<n.length;r++){var i=n[r],o=e(i);if($(o))return o}}return})(n.schema)&&(u=void 0),function e(t){if(t&&"object"==typeof t){if($(t.allowTrailingCommas))return t.allowTrailingCommas;if($(t.allowsTrailingCommas))return t.allowsTrailingCommas;if(t.allOf)for(var r=0,n=t.allOf;r<n.length;r++){var i=n[r],o=e(i);if($(o))return o}}return}(n.schema)&&(a=void 0)}for(var d=0,g=t.syntaxErrors;d<g.length;d++){var v=g[d];if(v.code===ve.TrailingComma){if("number"!=typeof a)continue;v.severity=a}s(v)}if("number"==typeof u){var y=ht("InvalidCommentToken","Comments are not permitted in JSON.");t.comments.forEach((function(e){s(k.create(e,y,u,ve.CommentNotPermitted))}))}return o};if(n){var c=n.id||"schemaservice://untitled/"+pt++;return this.jsonSchemaService.resolveSchemaContent(new ct(n),c,{}).then((function(e){return u(e)}))}return this.jsonSchemaService.getSchemaForResource(e.uri,t).then((function(e){return u(e)}))}}(),0);function mt(e){switch(e){case"error":return x.Error;case"warning":return x.Warning;case"ignore":return}}function dt(e){return e<48?0:e<=57?e-48:(e<97&&(e+=32),e>=97&&e<=102?e-97+10:0)}function gt(e){if("#"!==e[0])return null;switch(e.length){case 4:return{red:17*dt(e.charCodeAt(1))/255,green:17*dt(e.charCodeAt(2))/255,blue:17*dt(e.charCodeAt(3))/255,alpha:1};case 5:return{red:17*dt(e.charCodeAt(1))/255,green:17*dt(e.charCodeAt(2))/255,blue:17*dt(e.charCodeAt(3))/255,alpha:17*dt(e.charCodeAt(4))/255};case 7:return{red:(16*dt(e.charCodeAt(1))+dt(e.charCodeAt(2)))/255,green:(16*dt(e.charCodeAt(3))+dt(e.charCodeAt(4)))/255,blue:(16*dt(e.charCodeAt(5))+dt(e.charCodeAt(6)))/255,alpha:1};case 9:return{red:(16*dt(e.charCodeAt(1))+dt(e.charCodeAt(2)))/255,green:(16*dt(e.charCodeAt(3))+dt(e.charCodeAt(4)))/255,blue:(16*dt(e.charCodeAt(5))+dt(e.charCodeAt(6)))/255,alpha:(16*dt(e.charCodeAt(7))+dt(e.charCodeAt(8)))/255}}return null}!function(){function e(e){this.schemaService=e}e.prototype.findDocumentSymbols=function(e,t,r){var n=this;void 0===r&&(r={resultLimit:Number.MAX_VALUE});var i=t.root;if(!i)return null;var o=r.resultLimit,a=e.uri;if(("vscode://defaultsettings/keybindings.json"===a||De(a.toLowerCase(),"/user/keybindings.json"))&&"array"===i.type){for(var s=[],u=0,c=i.items;u<c.length;u++){var l=c[u];if("object"===l.type)for(var f=0,p=l.properties;f<p.length;f++){var m=p[f];if("key"===m.keyNode.value&&m.valueNode){var d=h.create(e.uri,vt(e,l));if(s.push({name:Ne(m.valueNode),kind:te.Function,location:d}),--o<=0)return r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(a),s}}}return s}for(var g=[{node:i,containerName:""}],v=0,y=!1,b=[],x=function(t,r){"array"===t.type?t.items.forEach((function(e){e&&g.push({node:e,containerName:r})})):"object"===t.type&&t.properties.forEach((function(t){var i=t.valueNode;if(i)if(o>0){o--;var a=h.create(e.uri,vt(e,t)),s=r?r+"."+t.keyNode.value:t.keyNode.value;b.push({name:n.getKeyLabel(t),kind:n.getSymbolKind(i.type),location:a,containerName:r}),g.push({node:i,containerName:s})}else y=!0}))};v<g.length;){var S=g[v++];x(S.node,S.containerName)}return y&&r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(a),b},e.prototype.findDocumentSymbols2=function(e,t,r){var n=this;void 0===r&&(r={resultLimit:Number.MAX_VALUE});var i=t.root;if(!i)return null;var o=r.resultLimit,a=e.uri;if(("vscode://defaultsettings/keybindings.json"===a||De(a.toLowerCase(),"/user/keybindings.json"))&&"array"===i.type){for(var s=[],u=0,c=i.items;u<c.length;u++){var l=c[u];if("object"===l.type)for(var f=0,h=l.properties;f<h.length;f++){var p=h[f];if("key"===p.keyNode.value&&p.valueNode){var m=vt(e,l),d=vt(e,p.keyNode);if(s.push({name:Ne(p.valueNode),kind:te.Function,range:m,selectionRange:d}),--o<=0)return r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(a),s}}}return s}for(var g=[],v=[{node:i,result:g}],y=0,b=!1,x=function(t,r){"array"===t.type?t.items.forEach((function(t,i){if(t)if(o>0){o--;var a=vt(e,t),s=a,u={name:String(i),kind:n.getSymbolKind(t.type),range:a,selectionRange:s,children:[]};r.push(u),v.push({result:u.children,node:t})}else b=!0})):"object"===t.type&&t.properties.forEach((function(t){var i=t.valueNode;if(i)if(o>0){o--;var a=vt(e,t),s=vt(e,t.keyNode),u={name:n.getKeyLabel(t),kind:n.getSymbolKind(i.type),range:a,selectionRange:s,children:[]};r.push(u),v.push({result:u.children,node:i})}else b=!0}))};y<v.length;){var S=v[y++];x(S.node,S.result)}return b&&r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(a),g},e.prototype.getSymbolKind=function(e){switch(e){case"object":return te.Module;case"string":return te.String;case"number":return te.Number;case"array":return te.Array;case"boolean":return te.Boolean;default:return te.Variable}},e.prototype.getKeyLabel=function(e){var t=e.keyNode.value;return t&&(t=t.replace(/[\n]/g,"↵")),t&&t.trim()?t:'"'+t+'"'},e.prototype.findDocumentColors=function(e,t,r){return this.schemaService.getSchemaForResource(e.uri,t).then((function(n){var i=[];if(n)for(var o=r&&"number"==typeof r.resultLimit?r.resultLimit:Number.MAX_VALUE,a={},s=0,u=t.getMatchingSchemas(n.schema);s<u.length;s++){var c=u[s];if(!c.inverted&&c.schema&&("color"===c.schema.format||"color-hex"===c.schema.format)&&c.node&&"string"===c.node.type){var l=String(c.node.offset);if(!a[l]){var f=gt(Ne(c.node));if(f){var h=vt(e,c.node);i.push({color:f,range:h})}if(a[l]=!0,--o<=0)return r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(e.uri),i}}}return i}))},e.prototype.getColorPresentations=function(e,t,r,n){var i,o=[],a=Math.round(255*r.red),s=Math.round(255*r.green),u=Math.round(255*r.blue);function c(e){var t=e.toString(16);return 2!==t.length?"0"+t:t}return i=1===r.alpha?"#"+c(a)+c(s)+c(u):"#"+c(a)+c(s)+c(u)+c(Math.round(255*r.alpha)),o.push({label:i,textEdit:w.replace(n,JSON.stringify(i))}),o}}();function vt(e,t){return f.create(e.positionAt(t.offset),e.positionAt(t.offset+t.length))}var yt=Ae(),bt={schemaAssociations:{},schemas:{"http://json-schema.org/draft-04/schema#":{title:yt("schema.json","Describes a JSON file using a schema. See json-schema.org for more info."),$schema:"http://json-schema.org/draft-04/schema#",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},positiveInteger:{type:"integer",minimum:0},positiveIntegerDefault0:{allOf:[{$ref:"#/definitions/positiveInteger"},{default:0}]},simpleTypes:{type:"string",enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},minItems:1,uniqueItems:!0}},type:"object",properties:{id:{type:"string",format:"uri"},$schema:{type:"string",format:"uri"},title:{type:"string"},description:{type:"string"},default:{},multipleOf:{type:"number",minimum:0,exclusiveMinimum:!0},maximum:{type:"number"},exclusiveMaximum:{type:"boolean",default:!1},minimum:{type:"number"},exclusiveMinimum:{type:"boolean",default:!1},maxLength:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minLength:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},pattern:{type:"string",format:"regex"},additionalItems:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:{}},maxItems:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minItems:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},uniqueItems:{type:"boolean",default:!1},maxProperties:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minProperties:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},required:{allOf:[{$ref:"#/definitions/stringArray"}]},additionalProperties:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},enum:{type:"array",minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{anyOf:[{type:"string",enum:["date-time","uri","email","hostname","ipv4","ipv6","regex"]},{type:"string"}]},allOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},anyOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},oneOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},not:{allOf:[{$ref:"#"}]}},dependencies:{exclusiveMaximum:["maximum"],exclusiveMinimum:["minimum"]},default:{}},"http://json-schema.org/draft-07/schema#":{title:yt("schema.json","Describes a JSON file using a schema. See json-schema.org for more info."),definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}}},xt={id:yt("schema.json.id","A unique identifier for the schema."),$schema:yt("schema.json.$schema","The schema to verify this document against."),title:yt("schema.json.title","A descriptive title of the element."),description:yt("schema.json.description","A long description of the element. Used in hover menus and suggestions."),default:yt("schema.json.default","A default value. Used by suggestions."),multipleOf:yt("schema.json.multipleOf","A number that should cleanly divide the current value (i.e. have no remainder)."),maximum:yt("schema.json.maximum","The maximum numerical value, inclusive by default."),exclusiveMaximum:yt("schema.json.exclusiveMaximum","Makes the maximum property exclusive."),minimum:yt("schema.json.minimum","The minimum numerical value, inclusive by default."),exclusiveMinimum:yt("schema.json.exclusiveMininum","Makes the minimum property exclusive."),maxLength:yt("schema.json.maxLength","The maximum length of a string."),minLength:yt("schema.json.minLength","The minimum length of a string."),pattern:yt("schema.json.pattern","A regular expression to match the string against. It is not implicitly anchored."),additionalItems:yt("schema.json.additionalItems","For arrays, only when items is set as an array. If it is a schema, then this schema validates items after the ones specified by the items array. If it is false, then additional items will cause validation to fail."),items:yt("schema.json.items","For arrays. Can either be a schema to validate every element against or an array of schemas to validate each item against in order (the first schema will validate the first element, the second schema will validate the second element, and so on."),maxItems:yt("schema.json.maxItems","The maximum number of items that can be inside an array. Inclusive."),minItems:yt("schema.json.minItems","The minimum number of items that can be inside an array. Inclusive."),uniqueItems:yt("schema.json.uniqueItems","If all of the items in the array must be unique. Defaults to false."),maxProperties:yt("schema.json.maxProperties","The maximum number of properties an object can have. Inclusive."),minProperties:yt("schema.json.minProperties","The minimum number of properties an object can have. Inclusive."),required:yt("schema.json.required","An array of strings that lists the names of all properties required on this object."),additionalProperties:yt("schema.json.additionalProperties","Either a schema or a boolean. If a schema, then used to validate all properties not matched by 'properties' or 'patternProperties'. If false, then any properties not matched by either will cause this schema to fail."),definitions:yt("schema.json.definitions","Not used for validation. Place subschemas here that you wish to reference inline with $ref."),properties:yt("schema.json.properties","A map of property names to schemas for each property."),patternProperties:yt("schema.json.patternProperties","A map of regular expressions on property names to schemas for matching properties."),dependencies:yt("schema.json.dependencies","A map of property names to either an array of property names or a schema. An array of property names means the property named in the key depends on the properties in the array being present in the object in order to be valid. If the value is a schema, then the schema is only applied to the object if the property in the key exists on the object."),enum:yt("schema.json.enum","The set of literal values that are valid."),type:yt("schema.json.type","Either a string of one of the basic schema types (number, integer, null, array, object, boolean, string) or an array of strings specifying a subset of those types."),format:yt("schema.json.format","Describes the format expected for the value."),allOf:yt("schema.json.allOf","An array of schemas, all of which must match."),anyOf:yt("schema.json.anyOf","An array of schemas, where at least one must match."),oneOf:yt("schema.json.oneOf","An array of schemas, exactly one of which must match."),not:yt("schema.json.not","A schema which must not match."),$id:yt("schema.json.$id","A unique identifier for the schema."),$ref:yt("schema.json.$ref","Reference a definition hosted on any location."),$comment:yt("schema.json.$comment","Comments from schema authors to readers or maintainers of the schema."),readOnly:yt("schema.json.readOnly","Indicates that the value of the instance is managed exclusively by the owning authority."),examples:yt("schema.json.examples","Sample JSON values associated with a particular schema, for the purpose of illustrating usage."),contains:yt("schema.json.contains",'An array instance is valid against "contains" if at least one of its elements is valid against the given schema.'),propertyNames:yt("schema.json.propertyNames","If the instance is an object, this keyword validates if every property name in the instance validates against the provided schema."),const:yt("schema.json.const","An instance validates successfully against this keyword if its value is equal to the value of the keyword."),contentMediaType:yt("schema.json.contentMediaType","Describes the media type of a string property."),contentEncoding:yt("schema.json.contentEncoding","Describes the content encoding of a string property."),if:yt("schema.json.if",'The validation outcome of the "if" subschema controls which of the "then" or "else" keywords are evaluated.'),then:yt("schema.json.then",'The "if" subschema is used for validation when the "if" subschema succeeds.'),else:yt("schema.json.else",'The "else" subschema is used for validation when the "if" subschema fails.')};for(var St in bt.schemas){var kt=bt.schemas[St];for(var Ct in kt.properties){var wt=kt.properties[Ct];!0===wt&&(wt=kt.properties[Ct]={});var At=xt[Ct];At?wt.description=At:console.log(Ct+": localize('schema.json."+Ct+'\', "")')}}monaco.Uri;var It=monaco.Range,Tt=function(){function e(e,t,r){var n=this;this._languageId=e,this._worker=t,this._disposables=[],this._listener=Object.create(null);var i=function(e){var t,r=e.getModeId();r===n._languageId&&(n._listener[e.uri.toString()]=e.onDidChangeContent((function(){clearTimeout(t),t=setTimeout((function(){return n._doValidate(e.uri,r)}),500)})),n._doValidate(e.uri,r))},o=function(e){monaco.editor.setModelMarkers(e,n._languageId,[]);var t=e.uri.toString(),r=n._listener[t];r&&(r.dispose(),delete n._listener[t])};this._disposables.push(monaco.editor.onDidCreateModel(i)),this._disposables.push(monaco.editor.onWillDisposeModel((function(e){o(e),n._resetSchema(e.uri)}))),this._disposables.push(monaco.editor.onDidChangeModelLanguage((function(e){o(e.model),i(e.model),n._resetSchema(e.model.uri)}))),this._disposables.push(r.onDidChange((function(e){monaco.editor.getModels().forEach((function(e){e.getModeId()===n._languageId&&(o(e),i(e))}))}))),this._disposables.push({dispose:function(){for(var e in monaco.editor.getModels().forEach(o),n._listener)n._listener[e].dispose()}}),monaco.editor.getModels().forEach(i)}return e.prototype.dispose=function(){this._disposables.forEach((function(e){return e&&e.dispose()})),this._disposables=[]},e.prototype._resetSchema=function(e){this._worker().then((function(t){t.resetSchema(e.toString())}))},e.prototype._doValidate=function(e,t){this._worker(e).then((function(r){return r.doValidation(e.toString()).then((function(r){var n=r.map((function(e){return r="number"==typeof(t=e).code?String(t.code):t.code,{severity:Et(t.severity),startLineNumber:t.range.start.line+1,startColumn:t.range.start.character+1,endLineNumber:t.range.end.line+1,endColumn:t.range.end.character+1,message:t.message,code:r,source:t.source};var t,r})),i=monaco.editor.getModel(e);i&&i.getModeId()===t&&monaco.editor.setModelMarkers(i,t,n)}))})).then(void 0,(function(e){console.error(e)}))},e}();function Et(e){switch(e){case x.Error:return monaco.MarkerSeverity.Error;case x.Warning:return monaco.MarkerSeverity.Warning;case x.Information:return monaco.MarkerSeverity.Info;case x.Hint:return monaco.MarkerSeverity.Hint;default:return monaco.MarkerSeverity.Info}}function Ot(e){if(e)return{character:e.column-1,line:e.lineNumber-1}}function jt(e){if(e)return{start:{line:e.startLineNumber-1,character:e.startColumn-1},end:{line:e.endLineNumber-1,character:e.endColumn-1}}}function Pt(e){if(e)return new It(e.start.line+1,e.start.character+1,e.end.line+1,e.end.character+1)}function Mt(e){var t=monaco.languages.CompletionItemKind;switch(e){case B.Text:return t.Text;case B.Method:return t.Method;case B.Function:return t.Function;case B.Constructor:return t.Constructor;case B.Field:return t.Field;case B.Variable:return t.Variable;case B.Class:return t.Class;case B.Interface:return t.Interface;case B.Module:return t.Module;case B.Property:return t.Property;case B.Unit:return t.Unit;case B.Value:return t.Value;case B.Enum:return t.Enum;case B.Keyword:return t.Keyword;case B.Snippet:return t.Snippet;case B.Color:return t.Color;case B.File:return t.File;case B.Reference:return t.Reference}return t.Property}function _t(e){if(e)return{range:Pt(e.range),text:e.newText}}var Vt=function(){function e(e){this._worker=e}return Object.defineProperty(e.prototype,"triggerCharacters",{get:function(){return[" ",":"]},enumerable:!0,configurable:!0}),e.prototype.provideCompletionItems=function(e,t,r,n){var i=e.uri;return this._worker(i).then((function(e){return e.doComplete(i.toString(),Ot(t))})).then((function(r){if(r){var n=e.getWordUntilPosition(t),i=new It(t.lineNumber,n.startColumn,t.lineNumber,n.endColumn),o=r.items.map((function(e){var t={label:e.label,insertText:e.insertText||e.label,sortText:e.sortText,filterText:e.filterText,documentation:e.documentation,detail:e.detail,range:i,kind:Mt(e.kind)};return e.textEdit&&(t.range=Pt(e.textEdit.range),t.insertText=e.textEdit.newText),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(_t)),e.insertTextFormat===K.Snippet&&(t.insertTextRules=monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet),t}));return{isIncomplete:r.isIncomplete,suggestions:o}}}))},e}();function Ft(e){return"string"==typeof e?{value:e}:(t=e)&&"object"==typeof t&&"string"==typeof t.kind?"plaintext"===e.kind?{value:e.value.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}:{value:e.value}:{value:"```"+e.language+"\n"+e.value+"\n```\n"};var t}function Nt(e){if(e)return Array.isArray(e)?e.map(Ft):[Ft(e)]}var Rt=function(){function e(e){this._worker=e}return e.prototype.provideHover=function(e,t,r){var n=e.uri;return this._worker(n).then((function(e){return e.doHover(n.toString(),Ot(t))})).then((function(e){if(e)return{range:Pt(e.range),contents:Nt(e.contents)}}))},e}();function $t(e){var t=monaco.languages.SymbolKind;switch(e){case te.File:return t.Array;case te.Module:return t.Module;case te.Namespace:return t.Namespace;case te.Package:return t.Package;case te.Class:return t.Class;case te.Method:return t.Method;case te.Property:return t.Property;case te.Field:return t.Field;case te.Constructor:return t.Constructor;case te.Enum:return t.Enum;case te.Interface:return t.Interface;case te.Function:return t.Function;case te.Variable:return t.Variable;case te.Constant:return t.Constant;case te.String:return t.String;case te.Number:return t.Number;case te.Boolean:return t.Boolean;case te.Array:return t.Array}return t.Function}var Lt=function(){function e(e){this._worker=e}return e.prototype.provideDocumentSymbols=function(e,t){var r=e.uri;return this._worker(r).then((function(e){return e.findDocumentSymbols(r.toString())})).then((function(e){if(e)return e.map((function(e){return{name:e.name,detail:"",containerName:e.containerName,kind:$t(e.kind),range:Pt(e.location.range),selectionRange:Pt(e.location.range),tags:[]}}))}))},e}();function Dt(e){return{tabSize:e.tabSize,insertSpaces:e.insertSpaces}}var Wt=function(){function e(e){this._worker=e}return e.prototype.provideDocumentFormattingEdits=function(e,t,r){var n=e.uri;return this._worker(n).then((function(e){return e.format(n.toString(),null,Dt(t)).then((function(e){if(e&&0!==e.length)return e.map(_t)}))}))},e}(),Ut=function(){function e(e){this._worker=e}return e.prototype.provideDocumentRangeFormattingEdits=function(e,t,r,n){var i=e.uri;return this._worker(i).then((function(e){return e.format(i.toString(),jt(t),Dt(r)).then((function(e){if(e&&0!==e.length)return e.map(_t)}))}))},e}(),qt=function(){function e(e){this._worker=e}return e.prototype.provideDocumentColors=function(e,t){var r=e.uri;return this._worker(r).then((function(e){return e.findDocumentColors(r.toString())})).then((function(e){if(e)return e.map((function(e){return{color:e.color,range:Pt(e.range)}}))}))},e.prototype.provideColorPresentations=function(e,t,r){var n=e.uri;return this._worker(n).then((function(e){return e.getColorPresentations(n.toString(),t.color,jt(t.range))})).then((function(e){if(e)return e.map((function(e){var t={label:e.label};return e.textEdit&&(t.textEdit=_t(e.textEdit)),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(_t)),t}))}))},e}(),Bt=function(){function e(e){this._worker=e}return e.prototype.provideFoldingRanges=function(e,t,r){var n=e.uri;return this._worker(n).then((function(e){return e.getFoldingRanges(n.toString(),t)})).then((function(e){if(e)return e.map((function(e){var t={start:e.startLine+1,end:e.endLine+1};return void 0!==e.kind&&(t.kind=function(e){switch(e){case v.Comment:return monaco.languages.FoldingRangeKind.Comment;case v.Imports:return monaco.languages.FoldingRangeKind.Imports;case v.Region:return monaco.languages.FoldingRangeKind.Region}return}(e.kind)),t}))}))},e}();var Kt=function(){function e(e){this._worker=e}return e.prototype.provideSelectionRanges=function(e,t,r){var n=e.uri;return this._worker(n).then((function(e){return e.getSelectionRanges(n.toString(),t.map(Ot))})).then((function(e){if(e)return e.map((function(e){for(var t=[];e;)t.push({range:Pt(e.range)}),e=e.parent;return t}))}))},e}();function Jt(e){return{getInitialState:function(){return new zt(null,null,!1)},tokenize:function(t,r,n,i){return function(e,t,r,n,i){void 0===n&&(n=0);var o=0,a=!1;switch(r.scanError){case 2:t='"'+t,o=1;break;case 1:t="/*"+t,o=2}var s,u,c=j(t),l=r.lastWasColon;u={tokens:[],endState:r.clone()};for(;;){var f=n+c.getPosition(),h="";if(17===(s=c.scan()))break;if(f===n+c.getPosition())throw new Error("Scanner did not advance, next 3 characters are: "+t.substr(c.getPosition(),3));switch(a&&(f-=o),a=o>0,s){case 1:case 2:h="delimiter.bracket.json",l=!1;break;case 3:case 4:h="delimiter.array.json",l=!1;break;case 6:h="delimiter.colon.json",l=!0;break;case 5:h="delimiter.comma.json",l=!1;break;case 8:case 9:case 7:h="keyword.json",l=!1;break;case 10:h=l?"string.value.json":"string.key.json",l=!1;break;case 11:h="number.json",l=!1}if(e)switch(s){case 12:h="comment.line.json";break;case 13:h="comment.block.json"}u.endState=new zt(r.getStateData(),c.getTokenError(),l),u.tokens.push({startIndex:f,scopes:h})}return u}(e,t,r,n)}}}var zt=function(){function e(e,t,r){this._state=e,this.scanError=t,this.lastWasColon=r}return e.prototype.clone=function(){return new e(this._state,this.scanError,this.lastWasColon)},e.prototype.equals=function(t){return t===this||!!(t&&t instanceof e)&&(this.scanError===t.scanError&&this.lastWasColon===t.lastWasColon)},e.prototype.getStateData=function(){return this._state},e.prototype.setStateData=function(e){this._state=e},e}();function Ht(e){var t=[],r=[],n=new i(e);t.push(n);var o=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return n.getLanguageServiceWorker.apply(n,e)};function a(){var t=e.languageId,n=e.modeConfiguration;Zt(r),n.documentFormattingEdits&&r.push(monaco.languages.registerDocumentFormattingEditProvider(t,new Wt(o))),n.documentRangeFormattingEdits&&r.push(monaco.languages.registerDocumentRangeFormattingEditProvider(t,new Ut(o))),n.completionItems&&r.push(monaco.languages.registerCompletionItemProvider(t,new Vt(o))),n.hovers&&r.push(monaco.languages.registerHoverProvider(t,new Rt(o))),n.documentSymbols&&r.push(monaco.languages.registerDocumentSymbolProvider(t,new Lt(o))),n.tokens&&r.push(monaco.languages.setTokensProvider(t,Jt(!0))),n.colors&&r.push(monaco.languages.registerColorProvider(t,new qt(o))),n.foldingRanges&&r.push(monaco.languages.registerFoldingRangeProvider(t,new Bt(o))),n.diagnostics&&r.push(new Tt(t,o,e)),n.selectionRanges&&r.push(monaco.languages.registerSelectionRangeProvider(t,new Kt(o)))}a(),t.push(monaco.languages.setLanguageConfiguration(e.languageId,Xt));var s=e.modeConfiguration;return e.onDidChange((function(e){e.modeConfiguration!==s&&(s=e.modeConfiguration,a())})),t.push(Gt(r)),Gt(t)}function Gt(e){return{dispose:function(){return Zt(e)}}}function Zt(e){for(;e.length;)e.pop().dispose()}var Xt={wordPattern:/(-?\d*\.\d\w*)|([^\[\{\]\}\:\"\,\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string"]},{open:"[",close:"]",notIn:["string"]},{open:'"',close:'"',notIn:["string"]}]}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/105.bd27587a.js b/docs/src/.vuepress/dist/assets/js/106.95350ada.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/105.bd27587a.js rename to docs/src/.vuepress/dist/assets/js/106.95350ada.js index 4c067988..ac2534f9 100644 --- a/docs/src/.vuepress/dist/assets/js/105.bd27587a.js +++ b/docs/src/.vuepress/dist/assets/js/106.95350ada.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[105],{544:function(e,t,n){"use strict";n.r(t),n.d(t,"setupTypeScript",(function(){return M})),n.d(t,"setupJavaScript",(function(){return K})),n.d(t,"getJavaScriptWorker",(function(){return L})),n.d(t,"getTypeScriptWorker",(function(){return R}));var r,o,i=function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},a=function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}},s=function(){function e(e,t){var n=this;this._modeId=e,this._defaults=t,this._worker=null,this._client=null,this._configChangeListener=this._defaults.onDidChange((function(){return n._stopWorker()})),this._updateExtraLibsToken=0,this._extraLibsChangeListener=this._defaults.onDidExtraLibsChange((function(){return n._updateExtraLibs()}))}return e.prototype._stopWorker=function(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null},e.prototype.dispose=function(){this._configChangeListener.dispose(),this._extraLibsChangeListener.dispose(),this._stopWorker()},e.prototype._updateExtraLibs=function(){return i(this,void 0,void 0,(function(){var e,t;return a(this,(function(n){switch(n.label){case 0:return this._worker?(e=++this._updateExtraLibsToken,[4,this._worker.getProxy()]):[2];case 1:return t=n.sent(),this._updateExtraLibsToken!==e?[2]:(t.updateExtraLibs(this._defaults.getExtraLibs()),[2])}}))}))},e.prototype._getClient=function(){var e=this;if(!this._client){this._worker=monaco.editor.createWebWorker({moduleId:"vs/language/typescript/tsWorker",label:this._modeId,keepIdleModels:!0,createData:{compilerOptions:this._defaults.getCompilerOptions(),extraLibs:this._defaults.getExtraLibs()}});var t=this._worker.getProxy();this._defaults.getEagerModelSync()&&(t=t.then((function(t){return e._worker?e._worker.withSyncedResources(monaco.editor.getModels().filter((function(t){return t.getModeId()===e._modeId})).map((function(e){return e.uri}))):t}))),this._client=t}return this._client},e.prototype.getLanguageServiceWorker=function(){for(var e,t=this,n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];return this._getClient().then((function(t){e=t})).then((function(e){if(t._worker)return t._worker.withSyncedResources(n)})).then((function(t){return e}))},e}(),u=(r=function(e,t){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)},function(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),c=function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},l=function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}},p=monaco.Uri,f=monaco.Range;function g(e,t,n){if(void 0===n&&(n=0),"string"==typeof e)return e;if(void 0===e)return"";var r="";if(n){r+=t;for(var o=0;o<n;o++)r+=" "}if(r+=e.messageText,n++,e.next)for(var i=0,a=e.next;i<a.length;i++){r+=g(a[i],t,n)}return r}function d(e){return e?e.map((function(e){return e.text})).join(""):""}!function(e){e[e.None=0]="None",e[e.Block=1]="Block",e[e.Smart=2]="Smart"}(o||(o={}));var m,h=function(){function e(e){this._worker=e}return e.prototype._textSpanToRange=function(e,t){var n=e.getPositionAt(t.start),r=e.getPositionAt(t.start+t.length);return{startLineNumber:n.lineNumber,startColumn:n.column,endLineNumber:r.lineNumber,endColumn:r.column}},e}();!function(e){e[e.Warning=0]="Warning",e[e.Error=1]="Error",e[e.Suggestion=2]="Suggestion",e[e.Message=3]="Message"}(m||(m={}));var v=function(e){function t(t,n,r){var o=e.call(this,r)||this;o._defaults=t,o._selector=n,o._disposables=[],o._listener=Object.create(null);var i=function(e){if(e.getModeId()===n){var t,r=e.onDidChangeContent((function(){clearTimeout(t),t=setTimeout((function(){return o._doValidate(e)}),500)}));o._listener[e.uri.toString()]={dispose:function(){r.dispose(),clearTimeout(t)}},o._doValidate(e)}},a=function(e){monaco.editor.setModelMarkers(e,o._selector,[]);var t=e.uri.toString();o._listener[t]&&(o._listener[t].dispose(),delete o._listener[t])};o._disposables.push(monaco.editor.onDidCreateModel(i)),o._disposables.push(monaco.editor.onWillDisposeModel(a)),o._disposables.push(monaco.editor.onDidChangeModelLanguage((function(e){a(e.model),i(e.model)}))),o._disposables.push({dispose:function(){for(var e=0,t=monaco.editor.getModels();e<t.length;e++){var n=t[e];a(n)}}});var s=function(){for(var e=0,t=monaco.editor.getModels();e<t.length;e++){var n=t[e];a(n),i(n)}};return o._disposables.push(o._defaults.onDidChange(s)),o._disposables.push(o._defaults.onDidExtraLibsChange(s)),monaco.editor.getModels().forEach(i),o}return u(t,e),t.prototype.dispose=function(){this._disposables.forEach((function(e){return e&&e.dispose()})),this._disposables=[]},t.prototype._doValidate=function(e){return c(this,void 0,void 0,(function(){var t,n,r,o,i,a,s,u,c=this;return l(this,(function(l){switch(l.label){case 0:return[4,this._worker(e.uri)];case 1:return t=l.sent(),e.isDisposed()?[2]:(n=[],r=this._defaults.getDiagnosticsOptions(),o=r.noSyntaxValidation,i=r.noSemanticValidation,a=r.noSuggestionDiagnostics,o||n.push(t.getSyntacticDiagnostics(e.uri.toString())),i||n.push(t.getSemanticDiagnostics(e.uri.toString())),a||n.push(t.getSuggestionDiagnostics(e.uri.toString())),[4,Promise.all(n)]);case 2:return!(s=l.sent())||e.isDisposed()||(u=s.reduce((function(e,t){return t.concat(e)}),[]).filter((function(e){return-1===(c._defaults.getDiagnosticsOptions().diagnosticCodesToIgnore||[]).indexOf(e.code)})).map((function(t){return c._convertDiagnostics(e,t)})),monaco.editor.setModelMarkers(e,this._selector,u)),[2]}}))}))},t.prototype._convertDiagnostics=function(e,t){var n=t.start||0,r=t.length||1,o=e.getPositionAt(n),i=o.lineNumber,a=o.column,s=e.getPositionAt(n+r),u=s.lineNumber,c=s.column;return{severity:this._tsDiagnosticCategoryToMarkerSeverity(t.category),startLineNumber:i,startColumn:a,endLineNumber:u,endColumn:c,message:g(t.messageText,"\n"),code:t.code.toString(),tags:t.reportsUnnecessary?[monaco.MarkerTag.Unnecessary]:[],relatedInformation:this._convertRelatedInformation(e,t.relatedInformation)}},t.prototype._convertRelatedInformation=function(e,t){if(t){var n=[];return t.forEach((function(t){var r=e;if(t.file){var o=monaco.Uri.parse(t.file.fileName);r=monaco.editor.getModel(o)}if(r){var i=t.start||0,a=t.length||1,s=r.getPositionAt(i),u=s.lineNumber,c=s.column,l=r.getPositionAt(i+a),p=l.lineNumber,f=l.column;n.push({resource:r.uri,startLineNumber:u,startColumn:c,endLineNumber:p,endColumn:f,message:g(t.messageText,"\n")})}})),n}},t.prototype._tsDiagnosticCategoryToMarkerSeverity=function(e){switch(e){case m.Error:return monaco.MarkerSeverity.Error;case m.Message:return monaco.MarkerSeverity.Info;case m.Warning:return monaco.MarkerSeverity.Warning;case m.Suggestion:return monaco.MarkerSeverity.Hint}return monaco.MarkerSeverity.Info},t}(h),b=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),Object.defineProperty(t.prototype,"triggerCharacters",{get:function(){return["."]},enumerable:!0,configurable:!0}),t.prototype.provideCompletionItems=function(e,n,r,o){return c(this,void 0,void 0,(function(){var r,o,i,a,s;return l(this,(function(u){switch(u.label){case 0:return r=e.getWordUntilPosition(n),o=new f(n.lineNumber,r.startColumn,n.lineNumber,r.endColumn),i=e.uri,a=e.getOffsetAt(n),[4,this._worker(i)];case 1:return[4,u.sent().getCompletionsAtPosition(i.toString(),a)];case 2:return!(s=u.sent())||e.isDisposed()?[2]:[2,{suggestions:s.entries.map((function(r){var a=o;if(r.replacementSpan){var s=e.getPositionAt(r.replacementSpan.start),u=e.getPositionAt(r.replacementSpan.start+r.replacementSpan.length);a=new f(s.lineNumber,s.column,u.lineNumber,u.column)}return{uri:i,position:n,range:a,label:r.name,insertText:r.name,sortText:r.sortText,kind:t.convertKind(r.kind)}}))}]}}))}))},t.prototype.resolveCompletionItem=function(e,n,r,o){return c(this,void 0,void 0,(function(){var n,o,i,a,s;return l(this,(function(u){switch(u.label){case 0:return o=(n=r).uri,i=n.position,a=e.getOffsetAt(i),[4,this._worker(o)];case 1:return[4,u.sent().getCompletionEntryDetails(o.toString(),a,n.label)];case 2:return!(s=u.sent())||e.isDisposed()?[2,n]:[2,{uri:o,position:i,label:s.name,kind:t.convertKind(s.kind),detail:d(s.displayParts),documentation:{value:d(s.documentation)}}]}}))}))},t.convertKind=function(e){switch(e){case C.primitiveType:case C.keyword:return monaco.languages.CompletionItemKind.Keyword;case C.variable:case C.localVariable:return monaco.languages.CompletionItemKind.Variable;case C.memberVariable:case C.memberGetAccessor:case C.memberSetAccessor:return monaco.languages.CompletionItemKind.Field;case C.function:case C.memberFunction:case C.constructSignature:case C.callSignature:case C.indexSignature:return monaco.languages.CompletionItemKind.Function;case C.enum:return monaco.languages.CompletionItemKind.Enum;case C.module:return monaco.languages.CompletionItemKind.Module;case C.class:return monaco.languages.CompletionItemKind.Class;case C.interface:return monaco.languages.CompletionItemKind.Interface;case C.warning:return monaco.languages.CompletionItemKind.File}return monaco.languages.CompletionItemKind.Property},t}(h),y=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.signatureHelpTriggerCharacters=["(",","],t}return u(t,e),t.prototype.provideSignatureHelp=function(e,t,n){return c(this,void 0,void 0,(function(){var n,r,o,i;return l(this,(function(a){switch(a.label){case 0:return n=e.uri,r=e.getOffsetAt(t),[4,this._worker(n)];case 1:return[4,a.sent().getSignatureHelpItems(n.toString(),r)];case 2:return!(o=a.sent())||e.isDisposed()?[2]:(i={activeSignature:o.selectedItemIndex,activeParameter:o.argumentIndex,signatures:[]},o.items.forEach((function(e){var t={label:"",parameters:[]};t.documentation=d(e.documentation),t.label+=d(e.prefixDisplayParts),e.parameters.forEach((function(n,r,o){var i=d(n.displayParts),a={label:i,documentation:d(n.documentation)};t.label+=i,t.parameters.push(a),r<o.length-1&&(t.label+=d(e.separatorDisplayParts))})),t.label+=d(e.suffixDisplayParts),i.signatures.push(t)})),[2,{value:i,dispose:function(){}}])}}))}))},t}(h),S=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.provideHover=function(e,t,n){return c(this,void 0,void 0,(function(){var n,r,o,i,a,s;return l(this,(function(u){switch(u.label){case 0:return n=e.uri,r=e.getOffsetAt(t),[4,this._worker(n)];case 1:return[4,u.sent().getQuickInfoAtPosition(n.toString(),r)];case 2:return!(o=u.sent())||e.isDisposed()?[2]:(i=d(o.documentation),a=o.tags?o.tags.map((function(e){var t="*@"+e.name+"*";return e.text?t+(e.text.match(/\r\n|\n/g)?" \n"+e.text:" - "+e.text):t})).join(" \n\n"):"",s=d(o.displayParts),[2,{range:this._textSpanToRange(e,o.textSpan),contents:[{value:"```js\n"+s+"\n```\n"},{value:i+(a?"\n\n"+a:"")}]}])}}))}))},t}(h),_=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.provideDocumentHighlights=function(e,t,n){return c(this,void 0,void 0,(function(){var n,r,o,i=this;return l(this,(function(a){switch(a.label){case 0:return n=e.uri,r=e.getOffsetAt(t),[4,this._worker(n)];case 1:return[4,a.sent().getOccurrencesAtPosition(n.toString(),r)];case 2:return!(o=a.sent())||e.isDisposed()?[2]:[2,o.map((function(t){return{range:i._textSpanToRange(e,t.textSpan),kind:t.isWriteAccess?monaco.languages.DocumentHighlightKind.Write:monaco.languages.DocumentHighlightKind.Text}}))]}}))}))},t}(h),w=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.provideDefinition=function(e,t,n){return c(this,void 0,void 0,(function(){var n,r,o,i,a,s,u,c,f;return l(this,(function(l){switch(l.label){case 0:return n=e.uri,r=e.getOffsetAt(t),[4,this._worker(n)];case 1:return[4,l.sent().getDefinitionAtPosition(n.toString(),r)];case 2:if(!(o=l.sent())||e.isDisposed())return[2];for(i=[],a=0,s=o;a<s.length;a++)u=s[a],c=p.parse(u.fileName),(f=monaco.editor.getModel(c))&&i.push({uri:c,range:this._textSpanToRange(f,u.textSpan)});return[2,i]}}))}))},t}(h),k=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.provideReferences=function(e,t,n,r){return c(this,void 0,void 0,(function(){var n,r,o,i,a,s,u,c,f;return l(this,(function(l){switch(l.label){case 0:return n=e.uri,r=e.getOffsetAt(t),[4,this._worker(n)];case 1:return[4,l.sent().getReferencesAtPosition(n.toString(),r)];case 2:if(!(o=l.sent())||e.isDisposed())return[2];for(i=[],a=0,s=o;a<s.length;a++)u=s[a],c=p.parse(u.fileName),(f=monaco.editor.getModel(c))&&i.push({uri:c,range:this._textSpanToRange(f,u.textSpan)});return[2,i]}}))}))},t}(h),x=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.provideDocumentSymbols=function(e,t){return c(this,void 0,void 0,(function(){var t,n,r,o,i=this;return l(this,(function(a){switch(a.label){case 0:return t=e.uri,[4,this._worker(t)];case 1:return[4,a.sent().getNavigationBarItems(t.toString())];case 2:return!(n=a.sent())||e.isDisposed()?[2]:(r=function(t,n,o){var a={name:n.text,detail:"",kind:A[n.kind]||monaco.languages.SymbolKind.Variable,range:i._textSpanToRange(e,n.spans[0]),selectionRange:i._textSpanToRange(e,n.spans[0]),tags:[],containerName:o};if(n.childItems&&n.childItems.length>0)for(var s=0,u=n.childItems;s<u.length;s++){var c=u[s];r(t,c,a.name)}t.push(a)},o=[],n.forEach((function(e){return r(o,e)})),[2,o])}}))}))},t}(h),C=function(){function e(){}return e.unknown="",e.keyword="keyword",e.script="script",e.module="module",e.class="class",e.interface="interface",e.type="type",e.enum="enum",e.variable="var",e.localVariable="local var",e.function="function",e.localFunction="local function",e.memberFunction="method",e.memberGetAccessor="getter",e.memberSetAccessor="setter",e.memberVariable="property",e.constructorImplementation="constructor",e.callSignature="call",e.indexSignature="index",e.constructSignature="construct",e.parameter="parameter",e.typeParameter="type parameter",e.primitiveType="primitive type",e.label="label",e.alias="alias",e.const="const",e.let="let",e.warning="warning",e}(),A=Object.create(null);A[C.module]=monaco.languages.SymbolKind.Module,A[C.class]=monaco.languages.SymbolKind.Class,A[C.enum]=monaco.languages.SymbolKind.Enum,A[C.interface]=monaco.languages.SymbolKind.Interface,A[C.memberFunction]=monaco.languages.SymbolKind.Method,A[C.memberVariable]=monaco.languages.SymbolKind.Property,A[C.memberGetAccessor]=monaco.languages.SymbolKind.Property,A[C.memberSetAccessor]=monaco.languages.SymbolKind.Property,A[C.variable]=monaco.languages.SymbolKind.Variable,A[C.const]=monaco.languages.SymbolKind.Variable,A[C.localVariable]=monaco.languages.SymbolKind.Variable,A[C.variable]=monaco.languages.SymbolKind.Variable,A[C.function]=monaco.languages.SymbolKind.Function,A[C.localFunction]=monaco.languages.SymbolKind.Function;var I,P,T=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t._convertOptions=function(e){return{ConvertTabsToSpaces:e.insertSpaces,TabSize:e.tabSize,IndentSize:e.tabSize,IndentStyle:o.Smart,NewLineCharacter:"\n",InsertSpaceAfterCommaDelimiter:!0,InsertSpaceAfterSemicolonInForStatements:!0,InsertSpaceBeforeAndAfterBinaryOperators:!0,InsertSpaceAfterKeywordsInControlFlowStatements:!0,InsertSpaceAfterFunctionKeywordForAnonymousFunctions:!0,InsertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,InsertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,InsertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,PlaceOpenBraceOnNewLineForControlBlocks:!1,PlaceOpenBraceOnNewLineForFunctions:!1}},t.prototype._convertTextChanges=function(e,t){return{text:t.newText,range:this._textSpanToRange(e,t.span)}},t}(h),D=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.provideDocumentRangeFormattingEdits=function(e,t,n,r){return c(this,void 0,void 0,(function(){var r,o,i,a,s=this;return l(this,(function(u){switch(u.label){case 0:return r=e.uri,o=e.getOffsetAt({lineNumber:t.startLineNumber,column:t.startColumn}),i=e.getOffsetAt({lineNumber:t.endLineNumber,column:t.endColumn}),[4,this._worker(r)];case 1:return[4,u.sent().getFormattingEditsForRange(r.toString(),o,i,T._convertOptions(n))];case 2:return!(a=u.sent())||e.isDisposed()?[2]:[2,a.map((function(t){return s._convertTextChanges(e,t)}))]}}))}))},t}(T),O=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),Object.defineProperty(t.prototype,"autoFormatTriggerCharacters",{get:function(){return[";","}","\n"]},enumerable:!0,configurable:!0}),t.prototype.provideOnTypeFormattingEdits=function(e,t,n,r,o){return c(this,void 0,void 0,(function(){var o,i,a,s=this;return l(this,(function(u){switch(u.label){case 0:return o=e.uri,i=e.getOffsetAt(t),[4,this._worker(o)];case 1:return[4,u.sent().getFormattingEditsAfterKeystroke(o.toString(),i,n,T._convertOptions(r))];case 2:return!(a=u.sent())||e.isDisposed()?[2]:[2,a.map((function(t){return s._convertTextChanges(e,t)}))]}}))}))},t}(T),N=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.provideCodeActions=function(e,t,n,r){return c(this,void 0,void 0,(function(){var r,o,i,a,s,u,c=this;return l(this,(function(l){switch(l.label){case 0:return r=e.uri,o=e.getOffsetAt({lineNumber:t.startLineNumber,column:t.startColumn}),i=e.getOffsetAt({lineNumber:t.endLineNumber,column:t.endColumn}),a=T._convertOptions(e.getOptions()),s=n.markers.filter((function(e){return e.code})).map((function(e){return e.code})).map(Number),[4,this._worker(r)];case 1:return[4,l.sent().getCodeFixesAtPosition(r.toString(),o,i,s,a)];case 2:return!(u=l.sent())||e.isDisposed()?[2]:[2,{actions:u.filter((function(e){return 0===e.changes.filter((function(e){return e.isNewFile})).length})).map((function(t){return c._tsCodeFixActionToMonacoCodeAction(e,n,t)})),dispose:function(){}}]}}))}))},t.prototype._tsCodeFixActionToMonacoCodeAction=function(e,t,n){for(var r=[],o=0,i=n.changes;o<i.length;o++)for(var a=0,s=i[o].textChanges;a<s.length;a++){var u=s[a];r.push({resource:e.uri,edit:{range:this._textSpanToRange(e,u.span),text:u.newText}})}return{title:n.description,edit:{edits:r},diagnostics:t.markers,kind:"quickfix"}},t}(T),E=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.provideRenameEdits=function(e,t,n,r){return c(this,void 0,void 0,(function(){var r,o,i,a,s,u,c,p,f,g;return l(this,(function(l){switch(l.label){case 0:return r=e.uri,o=r.toString(),i=e.getOffsetAt(t),[4,this._worker(r)];case 1:return[4,(a=l.sent()).getRenameInfo(o,i,{allowRenameOfImportPath:!1})];case 2:if(!1===(s=l.sent()).canRename)return[2,{edits:[],rejectReason:s.localizedErrorMessage}];if(void 0!==s.fileToRename)throw new Error("Renaming files is not supported.");return[4,a.findRenameLocations(o,i,!1,!1,!1)];case 3:if(!(u=l.sent())||e.isDisposed())return[2];for(c=[],p=0,f=u;p<f.length;p++)g=f[p],c.push({resource:monaco.Uri.parse(g.fileName),edit:{range:this._textSpanToRange(e,g.textSpan),text:n}});return[2,{edits:c}]}}))}))},t}(h);function M(e){P=F(e,"typescript")}function K(e){I=F(e,"javascript")}function L(){return new Promise((function(e,t){if(!I)return t("JavaScript not registered!");e(I)}))}function R(){return new Promise((function(e,t){if(!P)return t("TypeScript not registered!");e(P)}))}function F(e,t){var n=new s(t,e),r=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return n.getLanguageServiceWorker.apply(n,e)};return monaco.languages.registerCompletionItemProvider(t,new b(r)),monaco.languages.registerSignatureHelpProvider(t,new y(r)),monaco.languages.registerHoverProvider(t,new S(r)),monaco.languages.registerDocumentHighlightProvider(t,new _(r)),monaco.languages.registerDefinitionProvider(t,new w(r)),monaco.languages.registerReferenceProvider(t,new k(r)),monaco.languages.registerDocumentSymbolProvider(t,new x(r)),monaco.languages.registerDocumentRangeFormattingEditProvider(t,new D(r)),monaco.languages.registerOnTypeFormattingEditProvider(t,new O(r)),monaco.languages.registerCodeActionProvider(t,new N(r)),monaco.languages.registerRenameProvider(t,new E(r)),new v(e,t,r),r}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[106],{545:function(e,t,n){"use strict";n.r(t),n.d(t,"setupTypeScript",(function(){return M})),n.d(t,"setupJavaScript",(function(){return K})),n.d(t,"getJavaScriptWorker",(function(){return L})),n.d(t,"getTypeScriptWorker",(function(){return R}));var r,o,i=function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},a=function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}},s=function(){function e(e,t){var n=this;this._modeId=e,this._defaults=t,this._worker=null,this._client=null,this._configChangeListener=this._defaults.onDidChange((function(){return n._stopWorker()})),this._updateExtraLibsToken=0,this._extraLibsChangeListener=this._defaults.onDidExtraLibsChange((function(){return n._updateExtraLibs()}))}return e.prototype._stopWorker=function(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null},e.prototype.dispose=function(){this._configChangeListener.dispose(),this._extraLibsChangeListener.dispose(),this._stopWorker()},e.prototype._updateExtraLibs=function(){return i(this,void 0,void 0,(function(){var e,t;return a(this,(function(n){switch(n.label){case 0:return this._worker?(e=++this._updateExtraLibsToken,[4,this._worker.getProxy()]):[2];case 1:return t=n.sent(),this._updateExtraLibsToken!==e?[2]:(t.updateExtraLibs(this._defaults.getExtraLibs()),[2])}}))}))},e.prototype._getClient=function(){var e=this;if(!this._client){this._worker=monaco.editor.createWebWorker({moduleId:"vs/language/typescript/tsWorker",label:this._modeId,keepIdleModels:!0,createData:{compilerOptions:this._defaults.getCompilerOptions(),extraLibs:this._defaults.getExtraLibs()}});var t=this._worker.getProxy();this._defaults.getEagerModelSync()&&(t=t.then((function(t){return e._worker?e._worker.withSyncedResources(monaco.editor.getModels().filter((function(t){return t.getModeId()===e._modeId})).map((function(e){return e.uri}))):t}))),this._client=t}return this._client},e.prototype.getLanguageServiceWorker=function(){for(var e,t=this,n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];return this._getClient().then((function(t){e=t})).then((function(e){if(t._worker)return t._worker.withSyncedResources(n)})).then((function(t){return e}))},e}(),u=(r=function(e,t){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)},function(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),c=function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},l=function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}},p=monaco.Uri,f=monaco.Range;function g(e,t,n){if(void 0===n&&(n=0),"string"==typeof e)return e;if(void 0===e)return"";var r="";if(n){r+=t;for(var o=0;o<n;o++)r+=" "}if(r+=e.messageText,n++,e.next)for(var i=0,a=e.next;i<a.length;i++){r+=g(a[i],t,n)}return r}function d(e){return e?e.map((function(e){return e.text})).join(""):""}!function(e){e[e.None=0]="None",e[e.Block=1]="Block",e[e.Smart=2]="Smart"}(o||(o={}));var m,h=function(){function e(e){this._worker=e}return e.prototype._textSpanToRange=function(e,t){var n=e.getPositionAt(t.start),r=e.getPositionAt(t.start+t.length);return{startLineNumber:n.lineNumber,startColumn:n.column,endLineNumber:r.lineNumber,endColumn:r.column}},e}();!function(e){e[e.Warning=0]="Warning",e[e.Error=1]="Error",e[e.Suggestion=2]="Suggestion",e[e.Message=3]="Message"}(m||(m={}));var v=function(e){function t(t,n,r){var o=e.call(this,r)||this;o._defaults=t,o._selector=n,o._disposables=[],o._listener=Object.create(null);var i=function(e){if(e.getModeId()===n){var t,r=e.onDidChangeContent((function(){clearTimeout(t),t=setTimeout((function(){return o._doValidate(e)}),500)}));o._listener[e.uri.toString()]={dispose:function(){r.dispose(),clearTimeout(t)}},o._doValidate(e)}},a=function(e){monaco.editor.setModelMarkers(e,o._selector,[]);var t=e.uri.toString();o._listener[t]&&(o._listener[t].dispose(),delete o._listener[t])};o._disposables.push(monaco.editor.onDidCreateModel(i)),o._disposables.push(monaco.editor.onWillDisposeModel(a)),o._disposables.push(monaco.editor.onDidChangeModelLanguage((function(e){a(e.model),i(e.model)}))),o._disposables.push({dispose:function(){for(var e=0,t=monaco.editor.getModels();e<t.length;e++){var n=t[e];a(n)}}});var s=function(){for(var e=0,t=monaco.editor.getModels();e<t.length;e++){var n=t[e];a(n),i(n)}};return o._disposables.push(o._defaults.onDidChange(s)),o._disposables.push(o._defaults.onDidExtraLibsChange(s)),monaco.editor.getModels().forEach(i),o}return u(t,e),t.prototype.dispose=function(){this._disposables.forEach((function(e){return e&&e.dispose()})),this._disposables=[]},t.prototype._doValidate=function(e){return c(this,void 0,void 0,(function(){var t,n,r,o,i,a,s,u,c=this;return l(this,(function(l){switch(l.label){case 0:return[4,this._worker(e.uri)];case 1:return t=l.sent(),e.isDisposed()?[2]:(n=[],r=this._defaults.getDiagnosticsOptions(),o=r.noSyntaxValidation,i=r.noSemanticValidation,a=r.noSuggestionDiagnostics,o||n.push(t.getSyntacticDiagnostics(e.uri.toString())),i||n.push(t.getSemanticDiagnostics(e.uri.toString())),a||n.push(t.getSuggestionDiagnostics(e.uri.toString())),[4,Promise.all(n)]);case 2:return!(s=l.sent())||e.isDisposed()||(u=s.reduce((function(e,t){return t.concat(e)}),[]).filter((function(e){return-1===(c._defaults.getDiagnosticsOptions().diagnosticCodesToIgnore||[]).indexOf(e.code)})).map((function(t){return c._convertDiagnostics(e,t)})),monaco.editor.setModelMarkers(e,this._selector,u)),[2]}}))}))},t.prototype._convertDiagnostics=function(e,t){var n=t.start||0,r=t.length||1,o=e.getPositionAt(n),i=o.lineNumber,a=o.column,s=e.getPositionAt(n+r),u=s.lineNumber,c=s.column;return{severity:this._tsDiagnosticCategoryToMarkerSeverity(t.category),startLineNumber:i,startColumn:a,endLineNumber:u,endColumn:c,message:g(t.messageText,"\n"),code:t.code.toString(),tags:t.reportsUnnecessary?[monaco.MarkerTag.Unnecessary]:[],relatedInformation:this._convertRelatedInformation(e,t.relatedInformation)}},t.prototype._convertRelatedInformation=function(e,t){if(t){var n=[];return t.forEach((function(t){var r=e;if(t.file){var o=monaco.Uri.parse(t.file.fileName);r=monaco.editor.getModel(o)}if(r){var i=t.start||0,a=t.length||1,s=r.getPositionAt(i),u=s.lineNumber,c=s.column,l=r.getPositionAt(i+a),p=l.lineNumber,f=l.column;n.push({resource:r.uri,startLineNumber:u,startColumn:c,endLineNumber:p,endColumn:f,message:g(t.messageText,"\n")})}})),n}},t.prototype._tsDiagnosticCategoryToMarkerSeverity=function(e){switch(e){case m.Error:return monaco.MarkerSeverity.Error;case m.Message:return monaco.MarkerSeverity.Info;case m.Warning:return monaco.MarkerSeverity.Warning;case m.Suggestion:return monaco.MarkerSeverity.Hint}return monaco.MarkerSeverity.Info},t}(h),b=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),Object.defineProperty(t.prototype,"triggerCharacters",{get:function(){return["."]},enumerable:!0,configurable:!0}),t.prototype.provideCompletionItems=function(e,n,r,o){return c(this,void 0,void 0,(function(){var r,o,i,a,s;return l(this,(function(u){switch(u.label){case 0:return r=e.getWordUntilPosition(n),o=new f(n.lineNumber,r.startColumn,n.lineNumber,r.endColumn),i=e.uri,a=e.getOffsetAt(n),[4,this._worker(i)];case 1:return[4,u.sent().getCompletionsAtPosition(i.toString(),a)];case 2:return!(s=u.sent())||e.isDisposed()?[2]:[2,{suggestions:s.entries.map((function(r){var a=o;if(r.replacementSpan){var s=e.getPositionAt(r.replacementSpan.start),u=e.getPositionAt(r.replacementSpan.start+r.replacementSpan.length);a=new f(s.lineNumber,s.column,u.lineNumber,u.column)}return{uri:i,position:n,range:a,label:r.name,insertText:r.name,sortText:r.sortText,kind:t.convertKind(r.kind)}}))}]}}))}))},t.prototype.resolveCompletionItem=function(e,n,r,o){return c(this,void 0,void 0,(function(){var n,o,i,a,s;return l(this,(function(u){switch(u.label){case 0:return o=(n=r).uri,i=n.position,a=e.getOffsetAt(i),[4,this._worker(o)];case 1:return[4,u.sent().getCompletionEntryDetails(o.toString(),a,n.label)];case 2:return!(s=u.sent())||e.isDisposed()?[2,n]:[2,{uri:o,position:i,label:s.name,kind:t.convertKind(s.kind),detail:d(s.displayParts),documentation:{value:d(s.documentation)}}]}}))}))},t.convertKind=function(e){switch(e){case C.primitiveType:case C.keyword:return monaco.languages.CompletionItemKind.Keyword;case C.variable:case C.localVariable:return monaco.languages.CompletionItemKind.Variable;case C.memberVariable:case C.memberGetAccessor:case C.memberSetAccessor:return monaco.languages.CompletionItemKind.Field;case C.function:case C.memberFunction:case C.constructSignature:case C.callSignature:case C.indexSignature:return monaco.languages.CompletionItemKind.Function;case C.enum:return monaco.languages.CompletionItemKind.Enum;case C.module:return monaco.languages.CompletionItemKind.Module;case C.class:return monaco.languages.CompletionItemKind.Class;case C.interface:return monaco.languages.CompletionItemKind.Interface;case C.warning:return monaco.languages.CompletionItemKind.File}return monaco.languages.CompletionItemKind.Property},t}(h),y=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.signatureHelpTriggerCharacters=["(",","],t}return u(t,e),t.prototype.provideSignatureHelp=function(e,t,n){return c(this,void 0,void 0,(function(){var n,r,o,i;return l(this,(function(a){switch(a.label){case 0:return n=e.uri,r=e.getOffsetAt(t),[4,this._worker(n)];case 1:return[4,a.sent().getSignatureHelpItems(n.toString(),r)];case 2:return!(o=a.sent())||e.isDisposed()?[2]:(i={activeSignature:o.selectedItemIndex,activeParameter:o.argumentIndex,signatures:[]},o.items.forEach((function(e){var t={label:"",parameters:[]};t.documentation=d(e.documentation),t.label+=d(e.prefixDisplayParts),e.parameters.forEach((function(n,r,o){var i=d(n.displayParts),a={label:i,documentation:d(n.documentation)};t.label+=i,t.parameters.push(a),r<o.length-1&&(t.label+=d(e.separatorDisplayParts))})),t.label+=d(e.suffixDisplayParts),i.signatures.push(t)})),[2,{value:i,dispose:function(){}}])}}))}))},t}(h),S=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.provideHover=function(e,t,n){return c(this,void 0,void 0,(function(){var n,r,o,i,a,s;return l(this,(function(u){switch(u.label){case 0:return n=e.uri,r=e.getOffsetAt(t),[4,this._worker(n)];case 1:return[4,u.sent().getQuickInfoAtPosition(n.toString(),r)];case 2:return!(o=u.sent())||e.isDisposed()?[2]:(i=d(o.documentation),a=o.tags?o.tags.map((function(e){var t="*@"+e.name+"*";return e.text?t+(e.text.match(/\r\n|\n/g)?" \n"+e.text:" - "+e.text):t})).join(" \n\n"):"",s=d(o.displayParts),[2,{range:this._textSpanToRange(e,o.textSpan),contents:[{value:"```js\n"+s+"\n```\n"},{value:i+(a?"\n\n"+a:"")}]}])}}))}))},t}(h),_=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.provideDocumentHighlights=function(e,t,n){return c(this,void 0,void 0,(function(){var n,r,o,i=this;return l(this,(function(a){switch(a.label){case 0:return n=e.uri,r=e.getOffsetAt(t),[4,this._worker(n)];case 1:return[4,a.sent().getOccurrencesAtPosition(n.toString(),r)];case 2:return!(o=a.sent())||e.isDisposed()?[2]:[2,o.map((function(t){return{range:i._textSpanToRange(e,t.textSpan),kind:t.isWriteAccess?monaco.languages.DocumentHighlightKind.Write:monaco.languages.DocumentHighlightKind.Text}}))]}}))}))},t}(h),w=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.provideDefinition=function(e,t,n){return c(this,void 0,void 0,(function(){var n,r,o,i,a,s,u,c,f;return l(this,(function(l){switch(l.label){case 0:return n=e.uri,r=e.getOffsetAt(t),[4,this._worker(n)];case 1:return[4,l.sent().getDefinitionAtPosition(n.toString(),r)];case 2:if(!(o=l.sent())||e.isDisposed())return[2];for(i=[],a=0,s=o;a<s.length;a++)u=s[a],c=p.parse(u.fileName),(f=monaco.editor.getModel(c))&&i.push({uri:c,range:this._textSpanToRange(f,u.textSpan)});return[2,i]}}))}))},t}(h),k=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.provideReferences=function(e,t,n,r){return c(this,void 0,void 0,(function(){var n,r,o,i,a,s,u,c,f;return l(this,(function(l){switch(l.label){case 0:return n=e.uri,r=e.getOffsetAt(t),[4,this._worker(n)];case 1:return[4,l.sent().getReferencesAtPosition(n.toString(),r)];case 2:if(!(o=l.sent())||e.isDisposed())return[2];for(i=[],a=0,s=o;a<s.length;a++)u=s[a],c=p.parse(u.fileName),(f=monaco.editor.getModel(c))&&i.push({uri:c,range:this._textSpanToRange(f,u.textSpan)});return[2,i]}}))}))},t}(h),x=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.provideDocumentSymbols=function(e,t){return c(this,void 0,void 0,(function(){var t,n,r,o,i=this;return l(this,(function(a){switch(a.label){case 0:return t=e.uri,[4,this._worker(t)];case 1:return[4,a.sent().getNavigationBarItems(t.toString())];case 2:return!(n=a.sent())||e.isDisposed()?[2]:(r=function(t,n,o){var a={name:n.text,detail:"",kind:A[n.kind]||monaco.languages.SymbolKind.Variable,range:i._textSpanToRange(e,n.spans[0]),selectionRange:i._textSpanToRange(e,n.spans[0]),tags:[],containerName:o};if(n.childItems&&n.childItems.length>0)for(var s=0,u=n.childItems;s<u.length;s++){var c=u[s];r(t,c,a.name)}t.push(a)},o=[],n.forEach((function(e){return r(o,e)})),[2,o])}}))}))},t}(h),C=function(){function e(){}return e.unknown="",e.keyword="keyword",e.script="script",e.module="module",e.class="class",e.interface="interface",e.type="type",e.enum="enum",e.variable="var",e.localVariable="local var",e.function="function",e.localFunction="local function",e.memberFunction="method",e.memberGetAccessor="getter",e.memberSetAccessor="setter",e.memberVariable="property",e.constructorImplementation="constructor",e.callSignature="call",e.indexSignature="index",e.constructSignature="construct",e.parameter="parameter",e.typeParameter="type parameter",e.primitiveType="primitive type",e.label="label",e.alias="alias",e.const="const",e.let="let",e.warning="warning",e}(),A=Object.create(null);A[C.module]=monaco.languages.SymbolKind.Module,A[C.class]=monaco.languages.SymbolKind.Class,A[C.enum]=monaco.languages.SymbolKind.Enum,A[C.interface]=monaco.languages.SymbolKind.Interface,A[C.memberFunction]=monaco.languages.SymbolKind.Method,A[C.memberVariable]=monaco.languages.SymbolKind.Property,A[C.memberGetAccessor]=monaco.languages.SymbolKind.Property,A[C.memberSetAccessor]=monaco.languages.SymbolKind.Property,A[C.variable]=monaco.languages.SymbolKind.Variable,A[C.const]=monaco.languages.SymbolKind.Variable,A[C.localVariable]=monaco.languages.SymbolKind.Variable,A[C.variable]=monaco.languages.SymbolKind.Variable,A[C.function]=monaco.languages.SymbolKind.Function,A[C.localFunction]=monaco.languages.SymbolKind.Function;var I,P,T=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t._convertOptions=function(e){return{ConvertTabsToSpaces:e.insertSpaces,TabSize:e.tabSize,IndentSize:e.tabSize,IndentStyle:o.Smart,NewLineCharacter:"\n",InsertSpaceAfterCommaDelimiter:!0,InsertSpaceAfterSemicolonInForStatements:!0,InsertSpaceBeforeAndAfterBinaryOperators:!0,InsertSpaceAfterKeywordsInControlFlowStatements:!0,InsertSpaceAfterFunctionKeywordForAnonymousFunctions:!0,InsertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,InsertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,InsertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,PlaceOpenBraceOnNewLineForControlBlocks:!1,PlaceOpenBraceOnNewLineForFunctions:!1}},t.prototype._convertTextChanges=function(e,t){return{text:t.newText,range:this._textSpanToRange(e,t.span)}},t}(h),D=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.provideDocumentRangeFormattingEdits=function(e,t,n,r){return c(this,void 0,void 0,(function(){var r,o,i,a,s=this;return l(this,(function(u){switch(u.label){case 0:return r=e.uri,o=e.getOffsetAt({lineNumber:t.startLineNumber,column:t.startColumn}),i=e.getOffsetAt({lineNumber:t.endLineNumber,column:t.endColumn}),[4,this._worker(r)];case 1:return[4,u.sent().getFormattingEditsForRange(r.toString(),o,i,T._convertOptions(n))];case 2:return!(a=u.sent())||e.isDisposed()?[2]:[2,a.map((function(t){return s._convertTextChanges(e,t)}))]}}))}))},t}(T),O=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),Object.defineProperty(t.prototype,"autoFormatTriggerCharacters",{get:function(){return[";","}","\n"]},enumerable:!0,configurable:!0}),t.prototype.provideOnTypeFormattingEdits=function(e,t,n,r,o){return c(this,void 0,void 0,(function(){var o,i,a,s=this;return l(this,(function(u){switch(u.label){case 0:return o=e.uri,i=e.getOffsetAt(t),[4,this._worker(o)];case 1:return[4,u.sent().getFormattingEditsAfterKeystroke(o.toString(),i,n,T._convertOptions(r))];case 2:return!(a=u.sent())||e.isDisposed()?[2]:[2,a.map((function(t){return s._convertTextChanges(e,t)}))]}}))}))},t}(T),N=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.provideCodeActions=function(e,t,n,r){return c(this,void 0,void 0,(function(){var r,o,i,a,s,u,c=this;return l(this,(function(l){switch(l.label){case 0:return r=e.uri,o=e.getOffsetAt({lineNumber:t.startLineNumber,column:t.startColumn}),i=e.getOffsetAt({lineNumber:t.endLineNumber,column:t.endColumn}),a=T._convertOptions(e.getOptions()),s=n.markers.filter((function(e){return e.code})).map((function(e){return e.code})).map(Number),[4,this._worker(r)];case 1:return[4,l.sent().getCodeFixesAtPosition(r.toString(),o,i,s,a)];case 2:return!(u=l.sent())||e.isDisposed()?[2]:[2,{actions:u.filter((function(e){return 0===e.changes.filter((function(e){return e.isNewFile})).length})).map((function(t){return c._tsCodeFixActionToMonacoCodeAction(e,n,t)})),dispose:function(){}}]}}))}))},t.prototype._tsCodeFixActionToMonacoCodeAction=function(e,t,n){for(var r=[],o=0,i=n.changes;o<i.length;o++)for(var a=0,s=i[o].textChanges;a<s.length;a++){var u=s[a];r.push({resource:e.uri,edit:{range:this._textSpanToRange(e,u.span),text:u.newText}})}return{title:n.description,edit:{edits:r},diagnostics:t.markers,kind:"quickfix"}},t}(T),E=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.provideRenameEdits=function(e,t,n,r){return c(this,void 0,void 0,(function(){var r,o,i,a,s,u,c,p,f,g;return l(this,(function(l){switch(l.label){case 0:return r=e.uri,o=r.toString(),i=e.getOffsetAt(t),[4,this._worker(r)];case 1:return[4,(a=l.sent()).getRenameInfo(o,i,{allowRenameOfImportPath:!1})];case 2:if(!1===(s=l.sent()).canRename)return[2,{edits:[],rejectReason:s.localizedErrorMessage}];if(void 0!==s.fileToRename)throw new Error("Renaming files is not supported.");return[4,a.findRenameLocations(o,i,!1,!1,!1)];case 3:if(!(u=l.sent())||e.isDisposed())return[2];for(c=[],p=0,f=u;p<f.length;p++)g=f[p],c.push({resource:monaco.Uri.parse(g.fileName),edit:{range:this._textSpanToRange(e,g.textSpan),text:n}});return[2,{edits:c}]}}))}))},t}(h);function M(e){P=F(e,"typescript")}function K(e){I=F(e,"javascript")}function L(){return new Promise((function(e,t){if(!I)return t("JavaScript not registered!");e(I)}))}function R(){return new Promise((function(e,t){if(!P)return t("TypeScript not registered!");e(P)}))}function F(e,t){var n=new s(t,e),r=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return n.getLanguageServiceWorker.apply(n,e)};return monaco.languages.registerCompletionItemProvider(t,new b(r)),monaco.languages.registerSignatureHelpProvider(t,new y(r)),monaco.languages.registerHoverProvider(t,new S(r)),monaco.languages.registerDocumentHighlightProvider(t,new _(r)),monaco.languages.registerDefinitionProvider(t,new w(r)),monaco.languages.registerReferenceProvider(t,new k(r)),monaco.languages.registerDocumentSymbolProvider(t,new x(r)),monaco.languages.registerDocumentRangeFormattingEditProvider(t,new D(r)),monaco.languages.registerOnTypeFormattingEditProvider(t,new O(r)),monaco.languages.registerCodeActionProvider(t,new N(r)),monaco.languages.registerRenameProvider(t,new E(r)),new v(e,t,r),r}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/13.36679573.js b/docs/src/.vuepress/dist/assets/js/13.36679573.js deleted file mode 100644 index 48ce22b7..00000000 --- a/docs/src/.vuepress/dist/assets/js/13.36679573.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[13],{512:function(e,a,s){"use strict";s.r(a);var t=s(45),n=Object(t.a)({},(function(){var e=this,a=e.$createElement,s=e._self._c||a;return s("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[s("h1",{attrs:{id:"installing-3rd-party-libraries"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#installing-3rd-party-libraries"}},[e._v("#")]),e._v(" Installing 3rd party libraries "),s("Badge",{attrs:{text:"experimental",type:"warning"}})],1),e._v(" "),s("p",[e._v("The ABS interpreter comes with a built-in installer for 3rd party libraries,\nvery similar to "),s("code",[e._v("npm install")]),e._v(", "),s("code",[e._v("pip install")]),e._v(" or "),s("code",[e._v("go get")]),e._v(".")]),e._v(" "),s("p",[e._v("The installer, bundled since the "),s("code",[e._v("1.8.0")]),e._v(" release, is currently "),s("strong",[e._v("experimental")]),e._v("\nand a few things might change.")]),e._v(" "),s("p",[e._v("In order to install a package, you simply need to run "),s("code",[e._v("abs get")]),e._v(":")]),e._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[e._v("$ abs get github.com/abs-lang/abs-sample-module \n🌘 - Downloading archive\nUnpacking"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("..")]),e._v(".\nCreating alias"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("..")]),e._v(".\nInstall Success. You can use the module with "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[e._v("`")]),e._v("require"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[e._v('"abs-sample-module"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(")")]),s("span",{pre:!0,attrs:{class:"token variable"}},[e._v("`")])]),e._v("\n")])])]),s("p",[e._v("Modules will be saved under the "),s("code",[e._v("vendor/$MODULE")]),e._v(" directory. Each module\nalso gets an alias to facilitate requiring them in your code, meaning that\nboth of these forms are supported:")]),e._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[e._v('⧐ require("abs-sample-module/sample.abs")\n{"another": f() {return hello world;}}\n\n⧐ require("vendor/github.com/abs-lang/abs-sample-module/sample.abs")\n{"another": f() {return hello world;}}\n')])])]),s("p",[e._v("Module aliases are saved in the "),s("code",[e._v("packages.abs.json")]),e._v(" file\nwhich is created in the same directory where you run the\n"),s("code",[e._v("abs get ...")]),e._v(" command:")]),e._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[e._v('$ abs get github.com/abs-lang/abs-sample-module\n🌗 - Downloading archive\nUnpacking...\nCreating alias...\nInstall Success. You can use the module with `require("abs-sample-module")`\n\n$ cat packages.abs.json \n{\n "abs-sample-module": "./vendor/github.com/abs-lang/abs-sample-module"\n}\n')])])]),s("p",[e._v("If an alias is already taken, the installer will let you know that you\nwill need to use the full path when requiring the module:")]),e._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[e._v('$ echo \'{"abs-sample-module": "xyz"}\' > packages.abs.json \n\n$ abs get github.com/abs-lang/abs-sample-module\n🌘 - Downloading archive\nUnpacking...\nCreating alias...This module could not be aliased because module of same name exists\n\nInstall Success. You can use the module with `require("./vendor/github.com/abs-lang/abs-sample-module")`\n')])])]),s("p",[e._v("When requiring a module, ABS will try to load the "),s("code",[e._v("index.abs")]),e._v(" file unless\nanother file is specified:")]),e._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[e._v('$ ~/projects/abs/builds/abs \nHello alex, welcome to the ABS programming language!\nType \'quit\' when you\'re done, \'help\' if you get lost!\n\n⧐ require("abs-sample-module")\n{"another": f() {return hello world;}}\n\n⧐ require("abs-sample-module/index.abs")\n{"another": f() {return hello world;}}\n\n⧐ require("abs-sample-module/another.abs")\nf() {return hello world;}\n')])])]),s("h2",{attrs:{id:"supported-hosting-platforms"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#supported-hosting-platforms"}},[e._v("#")]),e._v(" Supported hosting platforms")]),e._v(" "),s("p",[e._v("Currently, the installer supports modules hosted on:")]),e._v(" "),s("ul",[s("li",[e._v("GitHub")])])])}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/13.bd56ae9e.js b/docs/src/.vuepress/dist/assets/js/13.bd56ae9e.js new file mode 100644 index 00000000..0848f2ed --- /dev/null +++ b/docs/src/.vuepress/dist/assets/js/13.bd56ae9e.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[13],{512:function(e,a,s){"use strict";s.r(a);var t=s(45),n=Object(t.a)({},(function(){var e=this,a=e.$createElement,s=e._self._c||a;return s("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[s("h1",{attrs:{id:"installing-3rd-party-libraries"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#installing-3rd-party-libraries"}},[e._v("#")]),e._v(" Installing 3rd party libraries "),s("Badge",{attrs:{text:"experimental",type:"warning"}})],1),e._v(" "),s("p",[e._v("The ABS interpreter comes with a built-in installer for 3rd party libraries,\nvery similar to "),s("code",[e._v("npm install")]),e._v(", "),s("code",[e._v("pip install")]),e._v(" or "),s("code",[e._v("go get")]),e._v(".")]),e._v(" "),s("p",[e._v("The installer, bundled since the "),s("code",[e._v("1.8.0")]),e._v(" release, is currently "),s("strong",[e._v("experimental")]),e._v("\nand a few things might change.")]),e._v(" "),s("p",[e._v("In order to install a package, you simply need to run "),s("code",[e._v("abs get")]),e._v(":")]),e._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[e._v("$ abs get github.com/abs-lang/abs-sample-module\n🌘 - Downloading archive\nUnpacking"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("..")]),e._v(".\nCreating alias"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("..")]),e._v(".\nInstall Success. You can use the module with "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[e._v("`")]),e._v("require"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[e._v('"abs-sample-module"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(")")]),s("span",{pre:!0,attrs:{class:"token variable"}},[e._v("`")])]),e._v("\n")])])]),s("p",[e._v("Modules will be saved under the "),s("code",[e._v("vendor/$MODULE")]),e._v(" directory. Each module\nalso gets an alias to facilitate requiring them in your code, meaning that\nboth of these forms are supported:")]),e._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[e._v('⧐ require("abs-sample-module/sample.abs")\n{"another": f() {return hello world;}}\n\n⧐ require("vendor/github.com/abs-lang/abs-sample-module/sample.abs")\n{"another": f() {return hello world;}}\n')])])]),s("p",[e._v("Module aliases are saved in the "),s("code",[e._v("packages.abs.json")]),e._v(" file\nwhich is created in the same directory where you run the\n"),s("code",[e._v("abs get ...")]),e._v(" command:")]),e._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[e._v('$ abs get github.com/abs-lang/abs-sample-module\n🌗 - Downloading archive\nUnpacking...\nCreating alias...\nInstall Success. You can use the module with `require("abs-sample-module")`\n\n$ cat packages.abs.json\n{\n "abs-sample-module": "./vendor/github.com/abs-lang/abs-sample-module"\n}\n')])])]),s("p",[e._v("If an alias is already taken, the installer will let you know that you\nwill need to use the full path when requiring the module:")]),e._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[e._v('$ echo \'{"abs-sample-module": "xyz"}\' > packages.abs.json\n\n$ abs get github.com/abs-lang/abs-sample-module\n🌘 - Downloading archive\nUnpacking...\nCreating alias...This module could not be aliased because module of same name exists\n\nInstall Success. You can use the module with `require("./vendor/github.com/abs-lang/abs-sample-module")`\n')])])]),s("p",[e._v("When requiring a module, ABS will try to load the "),s("code",[e._v("index.abs")]),e._v(" file unless\nanother file is specified:")]),e._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[e._v('$ ~/projects/abs/builds/abs\nHello alex, welcome to the ABS programming language!\nType \'quit\' when you\'re done, \'help\' if you get lost!\n\n⧐ require("abs-sample-module")\n{"another": f() {return hello world;}}\n\n⧐ require("abs-sample-module/index.abs")\n{"another": f() {return hello world;}}\n\n⧐ require("abs-sample-module/another.abs")\nf() {return hello world;}\n')])])]),s("h2",{attrs:{id:"supported-hosting-platforms"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#supported-hosting-platforms"}},[e._v("#")]),e._v(" Supported hosting platforms")]),e._v(" "),s("p",[e._v("Currently, the installer supports modules hosted on:")]),e._v(" "),s("ul",[s("li",[e._v("GitHub")])])])}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/18.32643cf1.js b/docs/src/.vuepress/dist/assets/js/18.32643cf1.js new file mode 100644 index 00000000..d6202b1f --- /dev/null +++ b/docs/src/.vuepress/dist/assets/js/18.32643cf1.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[18],{517:function(t,s,a){"use strict";a.r(s);var n=a(45),r=Object(n.a)({},(function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"a-few-technical-details"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#a-few-technical-details"}},[t._v("#")]),t._v(" A few technical details...")]),t._v(" "),a("p",[t._v("The ABS interpreter is built with Golang version "),a("code",[t._v("1.18")]),t._v(", and is mostly based on "),a("a",{attrs:{href:"https://interpreterbook.com/",target:"_blank",rel:"noopener noreferrer"}},[t._v("the interpreter book"),a("OutboundLink")],1),t._v(" written by "),a("a",{attrs:{href:"https://twitter.com/thorstenball",target:"_blank",rel:"noopener noreferrer"}},[t._v("Thorsten Ball"),a("OutboundLink")],1),t._v(".")]),t._v(" "),a("p",[t._v('ABS is extremely different from Monkey, the "fictional" language the reader builds throughout the book, but the base structure (lexer, parser, evaluator) are still very much based on Thorsten\'s work.')]),t._v(" "),a("h2",{attrs:{id:"why-is-abs-interpreted"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#why-is-abs-interpreted"}},[t._v("#")]),t._v(" Why is ABS interpreted?")]),t._v(" "),a("p",[t._v("ABS' goal is to be a portable, pragmatic, concise, simple language:\ngreat performance comes second.")]),t._v(" "),a("p",[t._v("With this in mind, we made a deliberate choice to avoid\ncompiling ABS code, as it would require additional complexity\nin the codebase, with very little benefits. Tell us, when\nwas the last time you were interested in how many milliseconds\nit took to run a Bash script?")]),t._v(" "),a("h2",{attrs:{id:"why-go"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#why-go"}},[t._v("#")]),t._v(" Why Go?")]),t._v(" "),a("p",[t._v("There are multiple reasons Go is the ideal choice for ABS, in no\nparticular order:")]),t._v(" "),a("ul",[a("li",[t._v("portability, as our goal is to be able to deliver ABS to\nmultiple platforms without any hassle")]),t._v(" "),a("li",[t._v("performance, as ABS' itself is not big on performance: having the\ninterpreter based on a fast platform allows us to recover\nsomething back")]),t._v(" "),a("li",[t._v('"strict" language, suitable for the purpose of making sure\nsyntax / parser errors are easily caught')]),t._v(" "),a("li",[t._v("rich standard library, which allows to ship most of the ABS'\ninterpreter without relying on many external dependencies")])]),t._v(" "),a("h2",{attrs:{id:"development-contributing"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#development-contributing"}},[t._v("#")]),t._v(" Development & contributing")]),t._v(" "),a("p",[t._v("Please see "),a("a",{attrs:{href:"https://github.com/abs-lang/abs/blob/master/CONTRIBUTING.md",target:"_blank",rel:"noopener noreferrer"}},[t._v("github.com/abs-lang/abs/blob/master/CONTRIBUTING.md"),a("OutboundLink")],1)]),t._v(" "),a("h2",{attrs:{id:"testing"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#testing"}},[t._v("#")]),t._v(" Testing")]),t._v(" "),a("h3",{attrs:{id:"interpreter-error-location"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#interpreter-error-location"}},[t._v("#")]),t._v(" Interpreter Error Location")]),t._v(" "),a("p",[t._v("You can run the interpreter error location tests by invoking this bash script: "),a("code",[t._v("tests/test-abs.sh")]),t._v(". This script iterates over the "),a("code",[t._v("test-parser.abs")]),t._v(" and "),a("code",[t._v("test-eval.abs")]),t._v(" test scripts.")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("$ tests/test-abs.sh\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\nTest Parser\ntests/test-parser.abs\n parser errors:\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'='")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),t._v(":5"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\tm.a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'abc'")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'='")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("7")]),t._v(":5"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\td/d "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("command")]),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'='")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v(":5"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\tc/c "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("command")]),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'%'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("13")]),t._v(":4"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\tb %% c\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'&&'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("22")]),t._v(":1"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("&&")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("||")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("-/*5"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'||'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("22")]),t._v(":3"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("&&")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("||")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("-/*5"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'/'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("22")]),t._v(":7"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("&&")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("||")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("-/*5"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'<=>'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("25")]),t._v(":2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v("\n\texpected next token to be NUMBER, got , instead\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("44")]),t._v(":2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("','")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("44")]),t._v(":3"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("']'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("44")]),t._v(":6"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'%'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("68")]),t._v(":2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t~%\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'-='")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("70")]),t._v(":1"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t-"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'/='")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("72")]),t._v(":1"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t/"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'%='")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("74")]),t._v(":1"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t%"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'^'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("79")]),t._v(":2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("&")]),t._v("^"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<<")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'<<'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("79")]),t._v(":5"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("&")]),t._v("^"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<<")]),t._v("\n\tIllegal token "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'$111'")]),t._v("\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("80")]),t._v(":1"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$111")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'$111'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("80")]),t._v(":1"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$111")]),t._v("\nExit code: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\nTest Eval"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\ntests/test-eval.abs\nERROR: "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("type")]),t._v(" mismatch: STRING + NUMBER\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("8")]),t._v(":11"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t s "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" s + "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# this is a comment")]),t._v("\nExit code: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\n\nERROR: invalid property "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'junk'")]),t._v(" on "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("type")]),t._v(" ARRAY\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("14")]),t._v(":6"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t a.junk\nExit code: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\n\nERROR: index operator not supported: f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(" on HASH\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("19")]),t._v(":20"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"name"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Abs"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nExit code: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\n")])])]),a("h3",{attrs:{id:"string-tests"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#string-tests"}},[t._v("#")]),t._v(" String tests")]),t._v(" "),a("p",[t._v("String handling tests can be run from "),a("code",[t._v("abs tests/test-strings.abs")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("$ abs tests/test-strings.abs\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" Testing string with expanded LFs:\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('c"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\na\nb\nc\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" Testing string with expanded TABs:\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\t"}},[t._v("\\t")]),t._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\t"}},[t._v("\\t")]),t._v('c"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\na\tb\tc\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" Testing string with expanded CRs:\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\r"}},[t._v("\\r")]),t._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\r"}},[t._v("\\r")]),t._v('c"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nc\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" Testing string with mixed expanded LFs and escaped LFs:\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[t._v("\\\\")]),t._v("nb"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[t._v("\\\\")]),t._v("nc"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v("%s"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"x'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v("y"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('z"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("nb"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("nc\nx\ny\nz\n\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" Testing string with multiple escapes:\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hel'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[t._v("\\\\")]),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[t._v("\\\\")]),t._v('lo"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nhel"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("lo\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" Testing "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("split")]),t._v(" and "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("join")]),t._v(" strings with expanded LFs:\ns "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('c"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("s"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("a, b, c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\nss "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" join"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("s, "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ss"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\na\nb\nc\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" Testing "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("split")]),t._v(" and "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("join")]),t._v(" strings with literal LFs:\ns "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'a\\nb\\nc'")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'\\n'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("s"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("a, b, c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\nss "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" join"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("s, "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'\\n'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ss"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("nb"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("nc\n")])])]),a("h3",{attrs:{id:"array-and-hash-assignment-tests"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#array-and-hash-assignment-tests"}},[t._v("#")]),t._v(" Array and hash assignment tests")]),t._v(" "),a("p",[t._v("Array and hash assignment tests can be run from "),a("code",[t._v("abs tests/test-assign-index.abs")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\nTest assignment to array indexed objects\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" a"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" a"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("12")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("88")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("12")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("88")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" a"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"string"')]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("12")]),t._v(", string, "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("88")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" a"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("6")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("66")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("12")]),t._v(", string, "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("88")]),t._v(", null, "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("66")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" a"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("12")]),t._v(", string, "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("88")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("66")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\nTest assignment to "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("hash")]),t._v(" indexed objects\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" h "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" h"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" h"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" h "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("33")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"d"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("44")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"e"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("33")]),t._v(", d: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("44")]),t._v(", e: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nh"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"z"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"x"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"y"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("33")]),t._v(", d: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("44")]),t._v(", e: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v(", z: "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v(", y: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nh"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"1.23"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"string"')]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1.23")]),t._v(": string, a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("33")]),t._v(", d: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("44")]),t._v(", e: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v(", z: "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v(", y: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nh.d "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1.23")]),t._v(": string, a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("33")]),t._v(", d: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", e: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v(", z: "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v(", y: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nh.d "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1.23")]),t._v(": string, a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("33")]),t._v(", d: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", e: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v(", z: "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v(", y: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nh.z.x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("66")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1.23")]),t._v(": string, a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("33")]),t._v(", d: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", e: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v(", z: "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("66")]),t._v(", y: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nh.f "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("88")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1.23")]),t._v(": string, a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("33")]),t._v(", d: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", e: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v(", f: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("88")]),t._v(", z: "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("66")]),t._v(", y: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\nError: assign to non-hash property\ns "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"string"')]),t._v("\ns.ok "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),t._v("\nERROR: can only assign to "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("hash")]),t._v(" property, got STRING\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("66")]),t._v(":2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\ts.ok "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\nError: "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("add")]),t._v(" number to null "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("hash")]),t._v(" property\nh.g "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\nERROR: "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("type")]),t._v(" mismatch: NULL + NUMBER\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("72")]),t._v(":5"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\th.g "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\nError: "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("add")]),t._v(" number to null "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("hash")]),t._v(" element\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" h"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"g"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\nERROR: "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("type")]),t._v(" mismatch: NULL + NUMBER\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("78")]),t._v(":8"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\th"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"g"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n")])])])])}),[],!1,null,null,null);s.default=r.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/18.c77c84c2.js b/docs/src/.vuepress/dist/assets/js/18.c77c84c2.js deleted file mode 100644 index 00429f53..00000000 --- a/docs/src/.vuepress/dist/assets/js/18.c77c84c2.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[18],{517:function(t,s,a){"use strict";a.r(s);var n=a(45),r=Object(n.a)({},(function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"a-few-technical-details"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#a-few-technical-details"}},[t._v("#")]),t._v(" A few technical details...")]),t._v(" "),a("p",[t._v("The ABS interpreter is built with Golang version "),a("code",[t._v("1.15")]),t._v(", and is mostly based on "),a("a",{attrs:{href:"https://interpreterbook.com/",target:"_blank",rel:"noopener noreferrer"}},[t._v("the interpreter book"),a("OutboundLink")],1),t._v(" written by "),a("a",{attrs:{href:"https://twitter.com/thorstenball",target:"_blank",rel:"noopener noreferrer"}},[t._v("Thorsten Ball"),a("OutboundLink")],1),t._v(".")]),t._v(" "),a("p",[t._v('ABS is extremely different from Monkey, the "fictional" language the reader builds throughout the book, but the base structure (lexer, parser, evaluator) are still very much based on Thorsten\'s work.')]),t._v(" "),a("h2",{attrs:{id:"why-is-abs-interpreted"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#why-is-abs-interpreted"}},[t._v("#")]),t._v(" Why is ABS interpreted?")]),t._v(" "),a("p",[t._v("ABS' goal is to be a portable, pragmatic, concise, simple language:\ngreat performance comes second.")]),t._v(" "),a("p",[t._v("With this in mind, we made a deliberate choice to avoid\ncompiling ABS code, as it would require additional complexity\nin the codebase, with very little benefits. Tell us, when\nwas the last time you were interested in how many milliseconds\nit took to run a Bash script?")]),t._v(" "),a("h2",{attrs:{id:"why-go"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#why-go"}},[t._v("#")]),t._v(" Why Go?")]),t._v(" "),a("p",[t._v("There are multiple reasons Go is the ideal choice for ABS, in no\nparticular order:")]),t._v(" "),a("ul",[a("li",[t._v("portability, as our goal is to be able to deliver ABS to\nmultiple platforms without any hassle")]),t._v(" "),a("li",[t._v("performance, as ABS' itself is not big on performance: having the\ninterpreter based on a fast platform allows us to recover\nsomething back")]),t._v(" "),a("li",[t._v('"strict" language, suitable for the purpose of making sure\nsyntax / parser errors are easily caught')]),t._v(" "),a("li",[t._v("rich standard library, which allows to ship most of the ABS'\ninterpreter without relying on many external dependencies")])]),t._v(" "),a("h2",{attrs:{id:"development-contributing"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#development-contributing"}},[t._v("#")]),t._v(" Development & contributing")]),t._v(" "),a("p",[t._v("Please see "),a("a",{attrs:{href:"https://github.com/abs-lang/abs/blob/master/CONTRIBUTING.md",target:"_blank",rel:"noopener noreferrer"}},[t._v("github.com/abs-lang/abs/blob/master/CONTRIBUTING.md"),a("OutboundLink")],1)]),t._v(" "),a("h2",{attrs:{id:"testing"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#testing"}},[t._v("#")]),t._v(" Testing")]),t._v(" "),a("h3",{attrs:{id:"interpreter-error-location"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#interpreter-error-location"}},[t._v("#")]),t._v(" Interpreter Error Location")]),t._v(" "),a("p",[t._v("You can run the interpreter error location tests by invoking this bash script: "),a("code",[t._v("tests/test-abs.sh")]),t._v(". This script iterates over the "),a("code",[t._v("test-parser.abs")]),t._v(" and "),a("code",[t._v("test-eval.abs")]),t._v(" test scripts.")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("$ tests/test-abs.sh\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\nTest Parser\ntests/test-parser.abs\n parser errors:\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'='")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),t._v(":5"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\tm.a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'abc'")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'='")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("7")]),t._v(":5"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\td/d "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("command")]),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'='")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v(":5"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\tc/c "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("command")]),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'%'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("13")]),t._v(":4"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\tb %% c\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'&&'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("22")]),t._v(":1"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("&&")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("||")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("-/*5"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'||'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("22")]),t._v(":3"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("&&")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("||")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("-/*5"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'/'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("22")]),t._v(":7"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("&&")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("||")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("-/*5"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'<=>'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("25")]),t._v(":2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v("\n\texpected next token to be NUMBER, got , instead\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("44")]),t._v(":2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("','")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("44")]),t._v(":3"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("']'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("44")]),t._v(":6"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'%'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("68")]),t._v(":2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t~%\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'-='")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("70")]),t._v(":1"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t-"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'/='")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("72")]),t._v(":1"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t/"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'%='")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("74")]),t._v(":1"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t%"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'^'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("79")]),t._v(":2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("&")]),t._v("^"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<<")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'<<'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("79")]),t._v(":5"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("&")]),t._v("^"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<<")]),t._v("\n\tIllegal token "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$111")]),t._v("'")]),t._v("\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("80")]),t._v(":1"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$111")]),t._v("\n\tno prefix parse "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("function")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$111")]),t._v("'")]),t._v(" found\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("80")]),t._v(":1"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$111")]),t._v("\nExit code: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\nTest Eval"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\ntests/test-eval.abs\nERROR: "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("type")]),t._v(" mismatch: STRING + NUMBER\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("8")]),t._v(":11"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t s "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" s + "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# this is a comment")]),t._v("\nExit code: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\n\nERROR: invalid property "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'junk'")]),t._v(" on "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("type")]),t._v(" ARRAY\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("14")]),t._v(":6"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t a.junk\nExit code: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\n\nERROR: index operator not supported: f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(" on HASH\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("19")]),t._v(":20"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"name"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Abs"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nExit code: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\n")])])]),a("h3",{attrs:{id:"string-tests"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#string-tests"}},[t._v("#")]),t._v(" String tests")]),t._v(" "),a("p",[t._v("String handling tests can be run from "),a("code",[t._v("abs tests/test-strings.abs")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("$ abs tests/test-strings.abs\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" Testing string with expanded LFs:\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('c"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\na\nb\nc\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" Testing string with expanded TABs:\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\t"}},[t._v("\\t")]),t._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\t"}},[t._v("\\t")]),t._v('c"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\na\tb\tc\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" Testing string with expanded CRs:\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\r"}},[t._v("\\r")]),t._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\r"}},[t._v("\\r")]),t._v('c"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nc\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" Testing string with mixed expanded LFs and escaped LFs:\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[t._v("\\\\")]),t._v("nb"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[t._v("\\\\")]),t._v("nc"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v("%s"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"x'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v("y"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('z"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("nb"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("nc\nx\ny\nz\n\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" Testing string with multiple escapes:\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hel'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[t._v("\\\\")]),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[t._v("\\\\")]),t._v('lo"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nhel"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("lo\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" Testing "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("split")]),t._v(" and "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("join")]),t._v(" strings with expanded LFs:\ns "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('c"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("s"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("a, b, c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\nss "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" join"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("s, "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ss"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\na\nb\nc\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" Testing "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("split")]),t._v(" and "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("join")]),t._v(" strings with literal LFs:\ns "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'a"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v("c'")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v("'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("s"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("a, b, c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\nss "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" join"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("s, "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v("'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ss"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("nb"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("nc\n")])])]),a("h3",{attrs:{id:"array-and-hash-assignment-tests"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#array-and-hash-assignment-tests"}},[t._v("#")]),t._v(" Array and hash assignment tests")]),t._v(" "),a("p",[t._v("Array and hash assignment tests can be run from "),a("code",[t._v("abs tests/test-assign-index.abs")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\nTest assignment to array indexed objects\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" a"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" a"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("12")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("88")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("12")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("88")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" a"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"string"')]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("12")]),t._v(", string, "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("88")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" a"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("6")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("66")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("12")]),t._v(", string, "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("88")]),t._v(", null, "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("66")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" a"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("12")]),t._v(", string, "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("88")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("66")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\nTest assignment to "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("hash")]),t._v(" indexed objects\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" h "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" h"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" h"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" h "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("33")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"d"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("44")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"e"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("33")]),t._v(", d: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("44")]),t._v(", e: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nh"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"z"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"x"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"y"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("33")]),t._v(", d: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("44")]),t._v(", e: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v(", z: "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v(", y: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nh"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"1.23"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"string"')]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1.23")]),t._v(": string, a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("33")]),t._v(", d: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("44")]),t._v(", e: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v(", z: "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v(", y: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nh.d "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1.23")]),t._v(": string, a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("33")]),t._v(", d: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", e: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v(", z: "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v(", y: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nh.d "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1.23")]),t._v(": string, a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("33")]),t._v(", d: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", e: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v(", z: "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v(", y: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nh.z.x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("66")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1.23")]),t._v(": string, a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("33")]),t._v(", d: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", e: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v(", z: "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("66")]),t._v(", y: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nh.f "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("88")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1.23")]),t._v(": string, a: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", b: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", c: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("33")]),t._v(", d: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(", e: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v(", f: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("88")]),t._v(", z: "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("66")]),t._v(", y: "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\nError: assign to non-hash property\ns "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"string"')]),t._v("\ns.ok "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),t._v("\nERROR: can only assign to "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("hash")]),t._v(" property, got STRING\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("66")]),t._v(":2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\ts.ok "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\nError: "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("add")]),t._v(" number to null "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("hash")]),t._v(" property\nh.g "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\nERROR: "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("type")]),t._v(" mismatch: NULL + NUMBER\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("72")]),t._v(":5"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\th.g "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\nError: "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("add")]),t._v(" number to null "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("hash")]),t._v(" element\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" h"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"g"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\nERROR: "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("type")]),t._v(" mismatch: NULL + NUMBER\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("78")]),t._v(":8"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\th"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"g"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n")])])])])}),[],!1,null,null,null);s.default=r.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/20.762823c2.js b/docs/src/.vuepress/dist/assets/js/20.762823c2.js deleted file mode 100644 index 47b22541..00000000 --- a/docs/src/.vuepress/dist/assets/js/20.762823c2.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[20],{519:function(t,a,s){"use strict";s.r(a);var n=s(45),e=Object(n.a)({},(function(){var t=this,a=t.$createElement,s=t._self._c||a;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"cli"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#cli"}},[t._v("#")]),t._v(" @cli")]),t._v(" "),s("p",[t._v("The "),s("code",[t._v("@cli")]),t._v(" module provides a simple interface to\neasily build CLI applications.")]),t._v(" "),s("h2",{attrs:{id:"api"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#api"}},[t._v("#")]),t._v(" API")]),t._v(" "),s("div",{staticClass:"language-py extra-class"},[s("pre",{pre:!0,attrs:{class:"language-py"}},[s("code",[t._v("cli "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" require"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'@cli'")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),s("h3",{attrs:{id:"cli-cmd-name-description-default-flags"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#cli-cmd-name-description-default-flags"}},[t._v("#")]),t._v(" @cli.cmd(name, description, default_flags)")]),t._v(" "),s("p",[t._v("A decorator that registers a command to be executed via CLI:")]),t._v(" "),s("div",{staticClass:"language-py extra-class"},[s("pre",{pre:!0,attrs:{class:"language-py"}},[s("code",[s("span",{pre:!0,attrs:{class:"token decorator annotation punctuation"}},[t._v("@cli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("cmd")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"date"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"prints the current date"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("format")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("''")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf date"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("args"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" flags"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("format")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" flags"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("format")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" `date $"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("format")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("`\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),s("p",[t._v("The "),s("code",[t._v("name")]),t._v(" of the command matches the command entered\nby the user on the CLI (eg. "),s("code",[t._v("$ ./cli my_command")]),t._v("), while\nthe description is used when printing a help message,\navailable through "),s("code",[t._v("$ ./cli help")]),t._v(".")]),t._v(" "),s("p",[t._v("The user can pass however many arguments and flags they want,\nand they will be passed on to the function defined as command.\nFor example, when the user issues the command "),s("code",[t._v("$ ./cli a b c --flag 25")]),t._v(",\nargs will be "),s("code",[t._v('["a", "b", "c", "--flag", "25"]')]),t._v(" and flags will\nbe "),s("code",[t._v('{"flag": "25"}')]),t._v(". Default flags are there so that, if a flag\nis not passed, it will be populated with a default value.")]),t._v(" "),s("h3",{attrs:{id:"cli-run"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#cli-run"}},[t._v("#")]),t._v(" @cli.run()")]),t._v(" "),s("p",[t._v("Runs the CLI application:")]),t._v(" "),s("div",{staticClass:"language-py extra-class"},[s("pre",{pre:!0,attrs:{class:"language-py"}},[s("code",[t._v("cli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("run"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),s("p",[t._v("The application will, by default, have an "),s("code",[t._v("help")]),t._v(" command\nthat lists all available commands and is called if no command\nis provided.")]),t._v(" "),s("h3",{attrs:{id:"cli-repl"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#cli-repl"}},[t._v("#")]),t._v(" @cli.repl()")]),t._v(" "),s("p",[t._v("Runs the CLI application in interactive mode:")]),t._v(" "),s("div",{staticClass:"language-py extra-class"},[s("pre",{pre:!0,attrs:{class:"language-py"}},[s("code",[t._v("cli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("repl"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),s("p",[t._v("The application will, by default, have an "),s("code",[t._v("help")]),t._v(" command\nthat lists all available commands.")]),t._v(" "),s("h2",{attrs:{id:"example-cli-app"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#example-cli-app"}},[t._v("#")]),t._v(" Example CLI app")]),t._v(" "),s("p",[t._v("Here is an example app with 3 commands:")]),t._v(" "),s("ul",[s("li",[t._v("the default "),s("code",[t._v("help")])]),t._v(" "),s("li",[s("code",[t._v("date")]),t._v(", to print the current date in a specific format")]),t._v(" "),s("li",[s("code",[t._v("ip")]),t._v(", to fetch our IP address")])]),t._v(" "),s("div",{staticClass:"language-py extra-class"},[s("pre",{pre:!0,attrs:{class:"language-py"}},[s("code",[s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("#!/usr/bin/env abs")]),t._v("\ncli "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" require"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'@cli'")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token decorator annotation punctuation"}},[t._v("@cli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("cmd")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"ip"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"finds our IP address"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf ip_address"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("arguments"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" flags"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" `curl icanhazip"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("com`\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token decorator annotation punctuation"}},[t._v("@cli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("cmd")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"date"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Is it Friday already?"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"format"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('""')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf date"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("arguments"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" flags"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("format")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" flags"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("format")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" `date $"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("format")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("`\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\ncli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("run"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),s("p",[t._v("You can save this script as "),s("code",[t._v("./cli")]),t._v(" and make it executable\nwith "),s("code",[t._v("chmod +x ./cli")]),t._v(". Then you will be able to use the CLI\napp:")]),t._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[t._v("$ ./cli\nAvailable commands:\n\n * date - Is it Friday already?\n * help - print this help message\n * ip - finds our IP address\n\n$ ./cli help\nAvailable commands:\n\n * date - Is it Friday already?\n * help - print this help message\n * ip - finds our IP address\n\n$ ./cli ip\n87.201.252.69\n\n$ ./cli date\nSat Apr 4 18:06:35 +04 2020\n\n$ ./cli date --format +%s\n1586009212\n")])])]),s("h2",{attrs:{id:"example-repl-app"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#example-repl-app"}},[t._v("#")]),t._v(" Example REPL app")]),t._v(" "),s("p",[t._v("Here is an example app with 4 commands:")]),t._v(" "),s("ul",[s("li",[t._v("the default "),s("code",[t._v("help")])]),t._v(" "),s("li",[s("code",[t._v("count")]),t._v(", which prints a counter")]),t._v(" "),s("li",[s("code",[t._v("incr")]),t._v(", which increments a counter by 1")]),t._v(" "),s("li",[s("code",[t._v("incr_by")]),t._v(", which increments a counter by a number specified by the user")])]),t._v(" "),s("div",{staticClass:"language-py extra-class"},[s("pre",{pre:!0,attrs:{class:"language-py"}},[s("code",[s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("#!/usr/bin/env abs")]),t._v("\ncli "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" require"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'@cli'")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\nres "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"count"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token decorator annotation punctuation"}},[t._v("@cli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("cmd")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"count"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"prints a counter"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf counter"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("arguments"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" flags"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("res"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("count"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token decorator annotation punctuation"}},[t._v("@cli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("cmd")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"incr"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Increment our counter"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf incr"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("arguments"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" flags"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n res"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("count "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"ok"')]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token decorator annotation punctuation"}},[t._v("@cli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("cmd")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"incr_by"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Increment our counter"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf incr_by"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("arguments"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" flags"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Increment by how much?"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n n "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" stdin"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("number"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n res"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("count "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" n\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"ok"')]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\ncli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("repl"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),s("p",[t._v("You can save this script as "),s("code",[t._v("./cli")]),t._v(" and make it executable\nwith "),s("code",[t._v("chmod +x ./cli")]),t._v(". Then you will be able to use the CLI\napp:")]),t._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[t._v("$ ./cli\nhelp\nAvailable commands:\n\n * count - prints a counter\n * help - print this help message\n * incr - Increment our counter\n * incr_by - Increment our counter\ncount\n0\nincr\nok\nincr\nok\ncount\n2\nincr_by\nIncrement by how much?\n-10\nok\ncount\n-8\n")])])])])}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/20.a6bbf53c.js b/docs/src/.vuepress/dist/assets/js/20.a6bbf53c.js new file mode 100644 index 00000000..d536bbb0 --- /dev/null +++ b/docs/src/.vuepress/dist/assets/js/20.a6bbf53c.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[20],{519:function(t,a,s){"use strict";s.r(a);var n=s(45),e=Object(n.a)({},(function(){var t=this,a=t.$createElement,s=t._self._c||a;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"cli"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#cli"}},[t._v("#")]),t._v(" @cli")]),t._v(" "),s("p",[t._v("The "),s("code",[t._v("@cli")]),t._v(" module provides a simple interface to\neasily build CLI applications.")]),t._v(" "),s("h2",{attrs:{id:"api"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#api"}},[t._v("#")]),t._v(" API")]),t._v(" "),s("div",{staticClass:"language-py extra-class"},[s("pre",{pre:!0,attrs:{class:"language-py"}},[s("code",[t._v("cli "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" require"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'@cli'")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),s("h3",{attrs:{id:"cli-cmd-name-description-default-flags"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#cli-cmd-name-description-default-flags"}},[t._v("#")]),t._v(" @cli.cmd(name, description, default_flags)")]),t._v(" "),s("p",[t._v("A decorator that registers a command to be executed via CLI:")]),t._v(" "),s("div",{staticClass:"language-py extra-class"},[s("pre",{pre:!0,attrs:{class:"language-py"}},[s("code",[s("span",{pre:!0,attrs:{class:"token decorator annotation punctuation"}},[t._v("@cli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("cmd")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"date"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"prints the current date"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"format"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("''")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf date"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("args"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" flags"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("format")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" flags"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("format")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" `date $"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("format")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("`\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),s("p",[t._v("The "),s("code",[t._v("name")]),t._v(" of the command matches the command entered\nby the user on the CLI (eg. "),s("code",[t._v("$ ./cli my_command")]),t._v("), while\nthe description is used when printing a help message,\navailable through "),s("code",[t._v("$ ./cli help")]),t._v(".")]),t._v(" "),s("p",[t._v("The user can pass however many arguments and flags they want,\nand they will be passed on to the function defined as command.\nFor example, when the user issues the command "),s("code",[t._v("$ ./cli a b c --flag 25")]),t._v(",\nargs will be "),s("code",[t._v('["a", "b", "c", "--flag", "25"]')]),t._v(" and flags will\nbe "),s("code",[t._v('{"flag": "25"}')]),t._v(". Default flags are there so that, if a flag\nis not passed, it will be populated with a default value.")]),t._v(" "),s("h3",{attrs:{id:"cli-run"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#cli-run"}},[t._v("#")]),t._v(" @cli.run()")]),t._v(" "),s("p",[t._v("Runs the CLI application:")]),t._v(" "),s("div",{staticClass:"language-py extra-class"},[s("pre",{pre:!0,attrs:{class:"language-py"}},[s("code",[t._v("cli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("run"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),s("p",[t._v("The application will, by default, have an "),s("code",[t._v("help")]),t._v(" command\nthat lists all available commands and is called if no command\nis provided.")]),t._v(" "),s("h3",{attrs:{id:"cli-repl"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#cli-repl"}},[t._v("#")]),t._v(" @cli.repl()")]),t._v(" "),s("p",[t._v("Runs the CLI application in interactive mode:")]),t._v(" "),s("div",{staticClass:"language-py extra-class"},[s("pre",{pre:!0,attrs:{class:"language-py"}},[s("code",[t._v("cli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("repl"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),s("p",[t._v("The application will, by default, have an "),s("code",[t._v("help")]),t._v(" command\nthat lists all available commands.")]),t._v(" "),s("h2",{attrs:{id:"example-cli-app"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#example-cli-app"}},[t._v("#")]),t._v(" Example CLI app")]),t._v(" "),s("p",[t._v("Here is an example app with 3 commands:")]),t._v(" "),s("ul",[s("li",[t._v("the default "),s("code",[t._v("help")])]),t._v(" "),s("li",[s("code",[t._v("date")]),t._v(", to print the current date in a specific format")]),t._v(" "),s("li",[s("code",[t._v("ip")]),t._v(", to fetch our IP address")])]),t._v(" "),s("div",{staticClass:"language-py extra-class"},[s("pre",{pre:!0,attrs:{class:"language-py"}},[s("code",[s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("#!/usr/bin/env abs")]),t._v("\ncli "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" require"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'@cli'")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token decorator annotation punctuation"}},[t._v("@cli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("cmd")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"ip"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"finds our IP address"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf ip_address"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("arguments"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" flags"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" `curl icanhazip"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("com`\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token decorator annotation punctuation"}},[t._v("@cli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("cmd")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"date"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Is it Friday already?"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"format"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('""')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf date"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("arguments"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" flags"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("format")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" flags"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("format")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" `date $"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("format")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("`\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\ncli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("run"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),s("p",[t._v("You can save this script as "),s("code",[t._v("./cli")]),t._v(" and make it executable\nwith "),s("code",[t._v("chmod +x ./cli")]),t._v(". Then you will be able to use the CLI\napp:")]),t._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[t._v("$ ./cli\nAvailable commands:\n\n * date - Is it Friday already?\n * help - print this help message\n * ip - finds our IP address\n\n$ ./cli help\nAvailable commands:\n\n * date - Is it Friday already?\n * help - print this help message\n * ip - finds our IP address\n\n$ ./cli ip\n87.201.252.69\n\n$ ./cli date\nSat Apr 4 18:06:35 +04 2020\n\n$ ./cli date --format +%s\n1586009212\n")])])]),s("h2",{attrs:{id:"example-repl-app"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#example-repl-app"}},[t._v("#")]),t._v(" Example REPL app")]),t._v(" "),s("p",[t._v("Here is an example app with 4 commands:")]),t._v(" "),s("ul",[s("li",[t._v("the default "),s("code",[t._v("help")])]),t._v(" "),s("li",[s("code",[t._v("count")]),t._v(", which prints a counter")]),t._v(" "),s("li",[s("code",[t._v("incr")]),t._v(", which increments a counter by 1")]),t._v(" "),s("li",[s("code",[t._v("incr_by")]),t._v(", which increments a counter by a number specified by the user")])]),t._v(" "),s("div",{staticClass:"language-py extra-class"},[s("pre",{pre:!0,attrs:{class:"language-py"}},[s("code",[s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("#!/usr/bin/env abs")]),t._v("\ncli "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" require"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'@cli'")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\nres "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"count"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token decorator annotation punctuation"}},[t._v("@cli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("cmd")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"count"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"prints a counter"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf counter"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("arguments"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" flags"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("res"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("count"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token decorator annotation punctuation"}},[t._v("@cli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("cmd")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"incr"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Increment our counter"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf incr"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("arguments"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" flags"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n res"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("count "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"ok"')]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token decorator annotation punctuation"}},[t._v("@cli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("cmd")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"incr_by"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Increment our counter"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf incr_by"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("arguments"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" flags"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Increment by how much?"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n n "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" stdin"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("number"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n res"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("count "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" n\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"ok"')]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\ncli"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("repl"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),s("p",[t._v("You can save this script as "),s("code",[t._v("./cli")]),t._v(" and make it executable\nwith "),s("code",[t._v("chmod +x ./cli")]),t._v(". Then you will be able to use the CLI\napp:")]),t._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[t._v("$ ./cli\nhelp\nAvailable commands:\n\n * count - prints a counter\n * help - print this help message\n * incr - Increment our counter\n * incr_by - Increment our counter\ncount\n0\nincr\nok\nincr\nok\ncount\n2\nincr_by\nIncrement by how much?\n-10\nok\ncount\n-8\n")])])])])}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/21.b7195a62.js b/docs/src/.vuepress/dist/assets/js/21.b7195a62.js deleted file mode 100644 index 6860e12b..00000000 --- a/docs/src/.vuepress/dist/assets/js/21.b7195a62.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[21],{520:function(t,s,a){"use strict";a.r(s);var n=a(45),e=Object(n.a)({},(function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"standard-library"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#standard-library"}},[t._v("#")]),t._v(" Standard library")]),t._v(" "),a("p",[t._v('ABS comes bundled not only with an array of builtin types and functions,\nbut also with a few modules to ease your development process: we refer\nto this modules as the "standard library", "standard modules" or '),a("code",[t._v("stdlib")]),t._v(".")]),t._v(" "),a("h2",{attrs:{id:"requiring-a-standard-library-module"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#requiring-a-standard-library-module"}},[t._v("#")]),t._v(" Requiring a standard library module")]),t._v(" "),a("p",[t._v("Standard library modules are required the same way you'd require\nany other external module, by using the "),a("code",[t._v("require(...)")]),t._v(" function;\nthe only difference is that standard modules use the "),a("code",[t._v("@")]),t._v(" character\nas prefix, for example:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("mod "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" require"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'@module'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# Loads "module" from the standard library')]),t._v("\nmod "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" require"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'./module'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# Loads "module" from the current directory')]),t._v("\nmod "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" require"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'module'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# Loads "module" that was installed through the ABS package manager')]),t._v("\n")])])]),a("h2",{attrs:{id:"technical-details"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#technical-details"}},[t._v("#")]),t._v(" Technical details")]),t._v(" "),a("p",[t._v("The ABS standard library is developed in ABS itself and available\nfor everyone to see (and poke with) at "),a("a",{attrs:{href:"https://github.com/abs-lang/abs/tree/master/stdlib",target:"_blank",rel:"noopener noreferrer"}},[t._v("github.com/abs-lang/abs/tree/master/stdlib"),a("OutboundLink")],1),t._v(".")]),t._v(" "),a("p",[t._v("The "),a("code",[t._v("@cli")]),t._v(" library, for example, is a simple ABS script of less\nthan 100 lines of code:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# CLI app")]),t._v("\ncli "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Commands registered within this CLI app")]),t._v("\ncli.commands "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Function used to register a command")]),t._v("\ncli.cmd "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("name, description, flags"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("fn"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n cli.commands"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n cli.commands"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".cmd "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function-name function"}},[t._v("f")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Create flags with default values")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" k, _ "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("in")]),t._v(" flags "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("v")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" flag"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("k"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("v")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n flags"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("k"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("v")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n \n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Call the original cmd")]),t._v("\n result "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" fn.call"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("args"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(":"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(", flags"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# If there's a result we print it out")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" result "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("result"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n cli.commands"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".description "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" description\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Run the CLI app")]),t._v("\ncli.run "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function-name function"}},[t._v("f")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# ABS sees "abs script.abs xyz"')]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# so the command is the 3rd argument")]),t._v("\n cmd "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" arg"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Not passing a command? Let's print the help")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("cmd "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" cli.commands"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'help'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".cmd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("cli.commands"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("cmd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n exit"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("\"command '"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${cmd}")]),t._v("' not found\"")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" cli.commands"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("cmd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".cmd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Add a default help command that can be")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# overridden by the caller")]),t._v("\n@cli.cmd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"help"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"print this help message"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf "),a("span",{pre:!0,attrs:{class:"token function-name function"}},[t._v("help")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Available commands:'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[t._v("cmd")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("in")]),t._v(" cli.commands.keys"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("."),a("span",{pre:!0,attrs:{class:"token function-name function"}},[t._v("sort")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n s "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('" * '),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${cmd}")]),t._v('"')]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" cli.commands"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("cmd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".description "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n s "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('" - "')]),t._v(" + cli.commands"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("cmd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".description\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("s"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" cli\n")])])])])}),[],!1,null,null,null);s.default=e.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/21.fe78dd19.js b/docs/src/.vuepress/dist/assets/js/21.fe78dd19.js new file mode 100644 index 00000000..b413e29d --- /dev/null +++ b/docs/src/.vuepress/dist/assets/js/21.fe78dd19.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[21],{520:function(t,s,a){"use strict";a.r(s);var n=a(45),e=Object(n.a)({},(function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"standard-library"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#standard-library"}},[t._v("#")]),t._v(" Standard library")]),t._v(" "),a("p",[t._v('ABS comes bundled not only with an array of builtin types and functions,\nbut also with a few modules to ease your development process: we refer\nto this modules as the "standard library", "standard modules" or '),a("code",[t._v("stdlib")]),t._v(".")]),t._v(" "),a("h2",{attrs:{id:"requiring-a-standard-library-module"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#requiring-a-standard-library-module"}},[t._v("#")]),t._v(" Requiring a standard library module")]),t._v(" "),a("p",[t._v("Standard library modules are required the same way you'd require\nany other external module, by using the "),a("code",[t._v("require(...)")]),t._v(" function;\nthe only difference is that standard modules use the "),a("code",[t._v("@")]),t._v(" character\nas prefix, for example:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("mod "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" require"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'@module'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# Loads "module" from the standard library')]),t._v("\nmod "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" require"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'./module'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# Loads "module" from the current directory')]),t._v("\nmod "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" require"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'module'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# Loads "module" that was installed through the ABS package manager')]),t._v("\n")])])]),a("h2",{attrs:{id:"technical-details"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#technical-details"}},[t._v("#")]),t._v(" Technical details")]),t._v(" "),a("p",[t._v("The ABS standard library is developed in ABS itself and available\nfor everyone to see (and poke with) at "),a("a",{attrs:{href:"https://github.com/abs-lang/abs/tree/master/stdlib",target:"_blank",rel:"noopener noreferrer"}},[t._v("github.com/abs-lang/abs/tree/master/stdlib"),a("OutboundLink")],1),t._v(".")]),t._v(" "),a("p",[t._v("The "),a("code",[t._v("@cli")]),t._v(" library, for example, is a simple ABS script of less\nthan 100 lines of code:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# CLI app")]),t._v("\ncli "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Commands registered within this CLI app")]),t._v("\ncli.commands "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Function used to register a command")]),t._v("\ncli.cmd "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("name, description, flags"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("fn"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n cli.commands"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n cli.commands"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".cmd "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function-name function"}},[t._v("f")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Create flags with default values")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" k, _ "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("in")]),t._v(" flags "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("v")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" flag"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("k"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("v")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n flags"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("k"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("v")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Call the original cmd")]),t._v("\n result "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" fn.call"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("args"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(":"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(", flags"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# If there's a result we print it out")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" result "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("result"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n cli.commands"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".description "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" description\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Run the CLI app")]),t._v("\ncli.run "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function-name function"}},[t._v("f")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# ABS sees "abs script.abs xyz"')]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# so the command is the 3rd argument")]),t._v("\n cmd "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" arg"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Not passing a command? Let's print the help")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("cmd "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" cli.commands"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'help'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".cmd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("cli.commands"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("cmd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n exit"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("\"command '"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${cmd}")]),t._v("' not found\"")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" cli.commands"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("cmd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".cmd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Add a default help command that can be")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# overridden by the caller")]),t._v("\n@cli.cmd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"help"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"print this help message"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf "),a("span",{pre:!0,attrs:{class:"token function-name function"}},[t._v("help")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Available commands:'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[t._v("cmd")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("in")]),t._v(" cli.commands.keys"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("."),a("span",{pre:!0,attrs:{class:"token function-name function"}},[t._v("sort")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n s "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('" * '),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${cmd}")]),t._v('"')]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" cli.commands"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("cmd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".description "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n s "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('" - "')]),t._v(" + cli.commands"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("cmd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".description\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("s"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" cli\n")])])])])}),[],!1,null,null,null);s.default=e.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/26.c43cdf9f.js b/docs/src/.vuepress/dist/assets/js/26.c43cdf9f.js new file mode 100644 index 00000000..eec8bb04 --- /dev/null +++ b/docs/src/.vuepress/dist/assets/js/26.c43cdf9f.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[26],{525:function(t,e,s){"use strict";s.r(e);var a=s(45),n=Object(a.a)({},(function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"defer"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#defer"}},[t._v("#")]),t._v(" Defer "),s("Badge",{attrs:{text:"experimental",type:"warning"}})],1),t._v(" "),s("p",[t._v("Sometimes it is very helpful to guarantee a certain function is executed\nregardless of what code path we take: you can use the "),s("code",[t._v("defer")]),t._v(" keyword for\nthis.")]),t._v(" "),s("div",{staticClass:"language-py extra-class"},[s("pre",{pre:!0,attrs:{class:"language-py"}},[s("code",[t._v("echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\ndefer echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 1")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 2")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 3")]),t._v("\n")])])]),s("p",[t._v("When you schedule a function to be deferred, it will executed right at\nthe end of the current scope. A "),s("code",[t._v("defer")]),t._v(" inside a function will then\nexecute at the end of that function itself:")]),t._v(" "),s("div",{staticClass:"language-py extra-class"},[s("pre",{pre:!0,attrs:{class:"language-py"}},[s("code",[t._v("echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf fn"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n defer echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nfn"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 1")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 2")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 3")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 4")]),t._v("\n")])])]),s("p",[t._v("You can "),s("code",[t._v("defer")]),t._v(" any callable: a function call, a method or even a system\ncommand. This can be very helpful if you need to run a cleanup function\nright before wrapping up with your code:")]),t._v(" "),s("div",{staticClass:"language-sh extra-class"},[s("pre",{pre:!0,attrs:{class:"language-sh"}},[s("code",[t._v("defer "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("rm")]),t._v(" my-file.txt"),s("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"some text"')]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"my-file.txt"')]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".\n"),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"some other text"')]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"my-file.txt"')]),t._v("\n")])])]),s("p",[t._v("In this case, you will be guaranteed to execute the command that removes\n"),s("code",[t._v("my-file.txt")]),t._v(" before the program closes.")]),t._v(" "),s("p",[t._v("Be aware that code that is deferred does not have access to the return value\nof its scope, and will supress errors -- if a "),s("code",[t._v("defer")]),t._v(" block messes up you're\nnot going to see any error. This behavior is experimental, but we would most\nlikely like to give this kind of control through "),s("a",{attrs:{href:"https://github.com/abs-lang/abs/issues/118",target:"_blank",rel:"noopener noreferrer"}},[t._v("try...catch...finally"),s("OutboundLink")],1),t._v(".")])])}),[],!1,null,null,null);e.default=n.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/26.73e719f0.js b/docs/src/.vuepress/dist/assets/js/27.c2abeff0.js similarity index 70% rename from docs/src/.vuepress/dist/assets/js/26.73e719f0.js rename to docs/src/.vuepress/dist/assets/js/27.c2abeff0.js index af6508e3..fea7a4fd 100644 --- a/docs/src/.vuepress/dist/assets/js/26.73e719f0.js +++ b/docs/src/.vuepress/dist/assets/js/27.c2abeff0.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[26],{525:function(s,t,a){"use strict";a.r(t);var n=a(45),e=Object(n.a)({},(function(){var s=this,t=s.$createElement,a=s._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[a("h1",{attrs:{id:"for-loops"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#for-loops"}},[s._v("#")]),s._v(" For loops")]),s._v(" "),a("p",[s._v("ABS supports 2 types of "),a("code",[s._v("for")]),s._v(' loops: the "standard" form and\nthe "in" one.')]),s._v(" "),a("h2",{attrs:{id:"standard-form"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#standard-form"}},[s._v("#")]),s._v(" Standard form")]),s._v(" "),a("p",[s._v("A standard "),a("code",[s._v("for")]),s._v(" loop takes the canonical form:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"Looping..."')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])]),a("p",[s._v('It\'s important to understand scoping in this form:\nif the loop declares an identifier that was already\ndeclared earlier, it will be "temporarely" overwritten\nin the loop, but will assume its original value\nafterwards.')]),s._v(" "),a("p",[s._v("Code is better than 1000 words:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# x is 0, 1, 2...")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "hello world"')]),s._v("\n")])])]),a("p",[s._v("Similarly, a variable declared on the loop (not inside)\nwill cease to exist after the loop is done:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# x is 0, 1, 2...")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# x is not defined here")]),s._v("\n")])])]),a("p",[s._v("Finally, variables declared inside the loop will instead\nkeep living afterwards:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n y "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" x\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("y"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 9")]),s._v("\n")])])]),a("h2",{attrs:{id:"in-form"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#in-form"}},[s._v("#")]),s._v(" In form")]),s._v(" "),a("p",[s._v('The "in" form of the '),a("code",[s._v("for")]),s._v(" loops allows you to iterate over\nan array or an hash:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[s._v("x")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# x is 1, 2, 3")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[s._v("x")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# x is 1, 2, 3")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])]),a("p",[s._v("Both key and values are available in the loop:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" k, "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("v")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# k is 0, 1, 2")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# v is 1, 2, 3")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" k, "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("v")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# k is a, b, c")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# v is 1, 2, 3")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])]),a("p",[s._v('In terms of scoping, the "in" form follows the same rules\nas the standard one, meaning that:')]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("k "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" k, "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("v")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# k is 0, 1, 2")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# v is 1, 2, 3")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("k"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "hello world"')]),s._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("v"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# v is not defined")]),s._v("\n")])])]),a("h2",{attrs:{id:"break-and-continue"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#break-and-continue"}},[s._v("#")]),s._v(" break and continue")]),s._v(" "),a("p",[a("code",[s._v("break")]),s._v(" and "),a("code",[s._v("continue")]),s._v(" work just as you'd expect:\nthe former breaks out of a loop:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("test")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("if")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("break")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("test")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("+=")]),s._v(" x\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("test")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 0")]),s._v("\n")])])]),a("p",[s._v("while the later skips to the next execution of the loop:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("test")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("if")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("continue")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("test")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("+=")]),s._v(" x\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("test")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10")]),s._v("\n")])])]),a("h2",{attrs:{id:"for-else"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#for-else"}},[s._v("#")]),s._v(" For ... else ...")]),s._v(" "),a("p",[a("code",[s._v("For")]),s._v(" loops can also have "),a("code",[s._v("else")]),s._v(" clause which executes if\nthe list in the "),a("code",[s._v("for")]),s._v(" condition is empty.")]),s._v(" "),a("p",[s._v('For example, when we run a database query like the following,\nif the "users" list is empty, we will only execute the statements\ninside the '),a("code",[s._v("else")]),s._v(" clause.")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[s._v("users")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" db.query"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"SELECT students WHERE age > 20"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[s._v("user")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("users")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n print"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("user"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("else")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n print"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"We don\'t have students above the age of 20"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])])])}),[],!1,null,null,null);t.default=e.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[27],{526:function(s,t,a){"use strict";a.r(t);var n=a(45),e=Object(n.a)({},(function(){var s=this,t=s.$createElement,a=s._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[a("h1",{attrs:{id:"for-loops"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#for-loops"}},[s._v("#")]),s._v(" For loops")]),s._v(" "),a("p",[s._v("ABS supports 2 types of "),a("code",[s._v("for")]),s._v(' loops: the "standard" form and\nthe "in" one.')]),s._v(" "),a("h2",{attrs:{id:"standard-form"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#standard-form"}},[s._v("#")]),s._v(" Standard form")]),s._v(" "),a("p",[s._v("A standard "),a("code",[s._v("for")]),s._v(" loop takes the canonical form:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"Looping..."')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])]),a("p",[s._v('It\'s important to understand scoping in this form:\nif the loop declares an identifier that was already\ndeclared earlier, it will be "temporarely" overwritten\nin the loop, but will assume its original value\nafterwards.')]),s._v(" "),a("p",[s._v("Code is better than 1000 words:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# x is 0, 1, 2...")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "hello world"')]),s._v("\n")])])]),a("p",[s._v("Similarly, a variable declared on the loop (not inside)\nwill cease to exist after the loop is done:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# x is 0, 1, 2...")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# x is not defined here")]),s._v("\n")])])]),a("p",[s._v("Finally, variables declared inside the loop will instead\nkeep living afterwards:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n y "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" x\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("y"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 9")]),s._v("\n")])])]),a("h2",{attrs:{id:"in-form"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#in-form"}},[s._v("#")]),s._v(" In form")]),s._v(" "),a("p",[s._v('The "in" form of the '),a("code",[s._v("for")]),s._v(" loops allows you to iterate over\nan array or an hash:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[s._v("x")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# x is 1, 2, 3")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[s._v("x")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# x is 1, 2, 3")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])]),a("p",[s._v("Both key and values are available in the loop:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" k, "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("v")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# k is 0, 1, 2")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# v is 1, 2, 3")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" k, "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("v")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# k is a, b, c")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# v is 1, 2, 3")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])]),a("p",[s._v('In terms of scoping, the "in" form follows the same rules\nas the standard one, meaning that:')]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("k "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" k, "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("v")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# k is 0, 1, 2")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# v is 1, 2, 3")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("k"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "hello world"')]),s._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("v"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# v is not defined")]),s._v("\n")])])]),a("h2",{attrs:{id:"break-and-continue"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#break-and-continue"}},[s._v("#")]),s._v(" break and continue")]),s._v(" "),a("p",[a("code",[s._v("break")]),s._v(" and "),a("code",[s._v("continue")]),s._v(" work just as you'd expect:\nthe former breaks out of a loop:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("test")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("if")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("break")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("test")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("+=")]),s._v(" x\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("test")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 0")]),s._v("\n")])])]),a("p",[s._v("while the later skips to the next execution of the loop:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("test")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("if")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("continue")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("test")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("+=")]),s._v(" x\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("test")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10")]),s._v("\n")])])]),a("h2",{attrs:{id:"for-else"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#for-else"}},[s._v("#")]),s._v(" For ... else ...")]),s._v(" "),a("p",[a("code",[s._v("For")]),s._v(" loops can also have "),a("code",[s._v("else")]),s._v(" clause which executes if\nthe list in the "),a("code",[s._v("for")]),s._v(" condition is empty.")]),s._v(" "),a("p",[s._v('For example, when we run a database query like the following,\nif the "users" list is empty, we will only execute the statements\ninside the '),a("code",[s._v("else")]),s._v(" clause.")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[s._v("users")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" db.query"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"SELECT students WHERE age > 20"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[s._v("user")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("users")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n print"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("user"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("else")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n print"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"We don\'t have students above the age of 20"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])])])}),[],!1,null,null,null);t.default=e.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/28.84a9a64c.js b/docs/src/.vuepress/dist/assets/js/28.84a9a64c.js deleted file mode 100644 index 6d4eb652..00000000 --- a/docs/src/.vuepress/dist/assets/js/28.84a9a64c.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[28],{527:function(s,a,t){"use strict";t.r(a);var e=t(45),r=Object(e.a)({},(function(){var s=this,a=s.$createElement,t=s._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[t("h1",{attrs:{id:"operators"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#operators"}},[s._v("#")]),s._v(" Operators")]),s._v(" "),t("p",[s._v("Operators are natural building blocks of languages, so it's\nno surprise ABS has its fair share of them.")]),s._v(" "),t("p",[s._v("As a general rule, you should understand that ABS does not\nallow to use operator on different types, with a couple exceptions.\nHere is a list of operators you can use, with examples on how\nto make the most out of them.")]),s._v(" "),t("h2",{attrs:{id:""}},[t("a",{staticClass:"header-anchor",attrs:{href:"#"}},[s._v("#")]),s._v(" ==")]),s._v(" "),t("p",[s._v("Equality operator, one of the few that can be used\nbetween arguments of different type:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("==")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("==")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),t("h2",{attrs:{id:"-2"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-2"}},[s._v("#")]),s._v(" !=")]),s._v(" "),t("p",[s._v("Not equals operator, one of the few that can be used\nbetween arguments of different type:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),t("h2",{attrs:{id:"-3"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-3"}},[s._v("#")]),s._v(" +")]),s._v(" "),t("p",[s._v("Addition, can be used to merge arrays and combine strings as well:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" + "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 2")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" + "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),s._v(" + "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"world"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "hello world"')]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" + "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [1, 2]")]),s._v("\n")])])]),t("h2",{attrs:{id:"-4"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-4"}},[s._v("#")]),s._v(" +=")]),s._v(" "),t("p",[s._v("Compound addition:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("a "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\na "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("+=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# a is now 11")]),s._v("\n")])])]),t("h2",{attrs:{id:"-5"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-5"}},[s._v("#")]),s._v(" -")]),s._v(" "),t("p",[s._v("Subtraction:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" - "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -1")]),s._v("\n")])])]),t("h2",{attrs:{id:"-6"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-6"}},[s._v("#")]),s._v(" -=")]),s._v(" "),t("p",[s._v("Compound subtraction:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("a "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\na -"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# a is now 9")]),s._v("\n")])])]),t("h2",{attrs:{id:"-7"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-7"}},[s._v("#")]),s._v(" *")]),s._v(" "),t("p",[s._v("Multiplication:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" * "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 2")]),s._v("\n")])])]),t("h2",{attrs:{id:"-8"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-8"}},[s._v("#")]),s._v(" *=")]),s._v(" "),t("p",[s._v("Compound multiplication:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("a "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\na *"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# a is now 100")]),s._v("\n")])])]),t("h2",{attrs:{id:"-9"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-9"}},[s._v("#")]),s._v(" /")]),s._v(" "),t("p",[s._v("Division:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" / "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n")])])]),t("h2",{attrs:{id:"-10"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-10"}},[s._v("#")]),s._v(" /=")]),s._v(" "),t("p",[s._v("Compound division:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("a "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\na /"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# a is now 5")]),s._v("\n")])])]),t("h2",{attrs:{id:"in"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#in"}},[s._v("#")]),s._v(" in")]),s._v(" "),t("p",[s._v("Membership test operator (find whether a needle is in the haystack):")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("9")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("9")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("9")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# unknown operator: NUMBER in NUMBER")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"str"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xyz"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"y"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),t("h2",{attrs:{id:"in-2"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#in-2"}},[s._v("#")]),s._v(" !in")]),s._v(" "),t("p",[s._v("Negative membership test operator (find whether a needle is not in the haystack):")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("in "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("9")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("in "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("9")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("in "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("9")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# unknown operator: NUMBER in NUMBER")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"str"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("in "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xyz"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("in "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("in "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"y"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("in "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),t("h2",{attrs:{id:"-11"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-11"}},[s._v("#")]),s._v(" **")]),s._v(" "),t("p",[s._v("Mathematical exponentiation:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" ** "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 4")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" ** "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n")])])]),t("h2",{attrs:{id:"-12"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-12"}},[s._v("#")]),s._v(" **=")]),s._v(" "),t("p",[s._v("Compound exponentiation:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("a "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\na **"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# a is now 1")]),s._v("\n")])])]),t("h2",{attrs:{id:"-13"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-13"}},[s._v("#")]),s._v(" %")]),s._v(" "),t("p",[s._v("Modulo:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("19")]),s._v(" % "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 4")]),s._v("\n")])])]),t("h2",{attrs:{id:"-14"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-14"}},[s._v("#")]),s._v(" %=")]),s._v(" "),t("p",[s._v("Compound modulo:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("a "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("19")]),s._v("\na %"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# a is now 4")]),s._v("\n")])])]),t("h2",{attrs:{id:"-15"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-15"}},[s._v("#")]),s._v(" >")]),s._v(" "),t("p",[s._v("Greater than:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),t("p",[s._v("When used with strings, "),t("code",[s._v(">")]),s._v(" redirects\nthe input (left argument) to a file\n(right argument):")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"Hi, there"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"file.txt"')]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("`")]),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("cat")]),s._v(" /etc/hosts"),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("`")])]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"copy-of-etc-hosts.bkp"')]),s._v("\n")])])]),t("h2",{attrs:{id:"-16"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-16"}},[s._v("#")]),s._v(" >=")]),s._v(" "),t("p",[s._v("Greater or equal than:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),t("h2",{attrs:{id:"-17"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-17"}},[s._v("#")]),s._v(" <")]),s._v(" "),t("p",[s._v("Lower than:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),t("h2",{attrs:{id:"-18"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-18"}},[s._v("#")]),s._v(" <=")]),s._v(" "),t("p",[s._v("Lower or equal than:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),t("h2",{attrs:{id:"-19"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-19"}},[s._v("#")]),s._v(" <=>")]),s._v(" "),t("p",[s._v("The combined comparison operator allows to test whether a number\nis lower, equal or higher than another one with one statement:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 0")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("6")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -1")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("6")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n")])])]),t("h2",{attrs:{id:"-20"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-20"}},[s._v("#")]),s._v(" &&")]),s._v(" "),t("p",[s._v("Logical AND, which supports "),t("a",{attrs:{href:"https://en.wikipedia.org/wiki/Short-circuit_evaluation",target:"_blank",rel:"noopener noreferrer"}},[s._v("short-circuiting"),t("OutboundLink")],1),s._v(":")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 2")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 0")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 0")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('""')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# ""')]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"world"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "world"')]),s._v("\n")])])]),t("h2",{attrs:{id:"-21"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-21"}},[s._v("#")]),s._v(" ||")]),s._v(" "),t("p",[s._v("Logical OR, which supports "),t("a",{attrs:{href:"https://en.wikipedia.org/wiki/Short-circuit_evaluation",target:"_blank",rel:"noopener noreferrer"}},[s._v("short-circuiting"),t("OutboundLink")],1),s._v(":")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("||")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("||")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("||")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("||")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('""')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("||")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "hello world"')]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("||")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"world"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "hello"')]),s._v("\n")])])]),t("h2",{attrs:{id:"-22"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-22"}},[s._v("#")]),s._v(" .")]),s._v(" "),t("p",[s._v("Property accessor, used to access properties or methods of specific variables:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("hello "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"to_who"')]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"the world"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nhello.to_who "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "the world"')]),s._v("\n")])])]),t("p",[s._v("There are some builtin functions that you can access through the property accessor:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(".len"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 5")]),s._v("\n")])])]),t("p",[s._v('(a comprehensive list of function is documented in the "'),t("em",[s._v("Types and functions")]),s._v('" section of the documentation)')]),s._v(" "),t("h2",{attrs:{id:"-23"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-23"}},[s._v("#")]),s._v(" ?.")]),s._v(" "),t("p",[s._v('Optional chaining operator, used to access properties in a "safe" way.')]),s._v(" "),t("p",[s._v("Given the following object:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("test")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"property"')]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])]),t("p",[s._v("An error would be raised if you were trying to access a non-existing property\nsuch as "),t("code",[s._v("test.something.something_else")]),s._v(":")]),s._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[s._v("ERROR: invalid property 'something_else' on type NULL\n\t[1:15]\ttest.something.something_else\n")])])]),t("p",[s._v("Optional chainig prevents those errors from being raised, auto-magically\nconverting non-existing properties and methods to "),t("code",[s._v("NULL")]),s._v(":")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("test?.something?.something_else "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# null")]),s._v("\ntest?.something?.something_else"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# null")]),s._v("\n")])])]),t("h2",{attrs:{id:"-24"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-24"}},[s._v("#")]),s._v(" ..")]),s._v(" "),t("p",[s._v("Range operator, which creates an array from start to end:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]")]),s._v("\n")])])]),t("h2",{attrs:{id:"-25"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-25"}},[s._v("#")]),s._v(" !")]),s._v(" "),t("p",[s._v("Negation:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("a "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("a "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),t("h2",{attrs:{id:"-26"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-26"}},[s._v("#")]),s._v(" !!")]),s._v(" "),t("p",[s._v("Even though there is no double negation operator, using\n2 bangs will result into converting the argument to boolean:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('""')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),t("h2",{attrs:{id:"-27"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-27"}},[s._v("#")]),s._v(" ~")]),s._v(" "),t("p",[s._v('The tilde (meaning "around") is used to do similarity comparisons\n(x "is almost" y).')]),s._v(" "),t("p",[s._v("In case of strings, it will compare them case-insensitively")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("==")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"HELLO"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" ~ "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"HELLO"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),t("p",[s._v("In case of integers, it will compare their integer values:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("==")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1.5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" ~ "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1.5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),t("p",[s._v("When in front of a number, it will instead be used as a\nbitwise NOT:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("~0 "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -1")]),s._v("\n~"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: Bitwise not (~) can only be applied to numbers, got STRING (hello)")]),s._v("\n")])])]),t("h2",{attrs:{id:"-28"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-28"}},[s._v("#")]),s._v(" &")]),s._v(" "),t("p",[s._v("Bitwise AND:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: type mismatch: NUMBER & STRING")]),s._v("\n")])])]),t("h2",{attrs:{id:"-29"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-29"}},[s._v("#")]),s._v(" |")]),s._v(" "),t("p",[s._v("Bitwise OR:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: type mismatch: NUMBER | STRING")]),s._v("\n")])])]),t("h2",{attrs:{id:"-30"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-30"}},[s._v("#")]),s._v(" ^")]),s._v(" "),t("p",[s._v("Bitwise XOR:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" ^ "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 0")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" ^ "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: type mismatch: NUMBER ^ STRING")]),s._v("\n")])])]),t("h2",{attrs:{id:"-31"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-31"}},[s._v("#")]),s._v(" >>")]),s._v(" "),t("p",[s._v("Bitwise right shift:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">>")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 0")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">>")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: type mismatch: NUMBER >> STRING")]),s._v("\n")])])]),t("p",[s._v("When used with strings, "),t("code",[s._v(">>")]),s._v(" appends\nthe input (left argument) to a file\n(right argument):")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"Hi"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">>")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"file.txt"')]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">>")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"file.txt"')]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"there!"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">>")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"file.txt"')]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("`")]),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("cat")]),s._v(" file.txt"),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("`")])]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# Hi there!")]),s._v("\n")])])]),t("h2",{attrs:{id:"-32"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-32"}},[s._v("#")]),s._v(" <<")]),s._v(" "),t("p",[s._v("Bitwise left shift:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<<")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("1"),t("span",{pre:!0,attrs:{class:"token bash punctuation"}},[s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 2")])]),s._v("\n1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<<")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: type mismatch: NUMBER << STRING")]),s._v("\n")])])])])}),[],!1,null,null,null);a.default=r.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/27.67e1572b.js b/docs/src/.vuepress/dist/assets/js/28.a2d4d54f.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/27.67e1572b.js rename to docs/src/.vuepress/dist/assets/js/28.a2d4d54f.js index e5c35e69..92fe0670 100644 --- a/docs/src/.vuepress/dist/assets/js/27.67e1572b.js +++ b/docs/src/.vuepress/dist/assets/js/28.a2d4d54f.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[27],{526:function(s,t,a){"use strict";a.r(t);var n=a(45),e=Object(n.a)({},(function(){var s=this,t=s.$createElement,a=s._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[a("h1",{attrs:{id:"if-else"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#if-else"}},[s._v("#")]),s._v(" If ... else")]),s._v(" "),a("p",[s._v("ABS supports basic "),a("code",[s._v("if")]),s._v(" statements:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("if")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])]),a("p",[s._v("as well as "),a("code",[s._v("else")]),s._v(" and "),a("code",[s._v("else if")]),s._v(" alternatives:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("if")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x is high"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("else")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("if")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x is low"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("else")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x is actually zero!"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])]),a("p",[s._v("You can wrap conditions in parentheses, although we believe that,\nfrom a readability standpoint, it's usually better to omit them:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("if")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])])])}),[],!1,null,null,null);t.default=e.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[28],{527:function(s,t,a){"use strict";a.r(t);var n=a(45),e=Object(n.a)({},(function(){var s=this,t=s.$createElement,a=s._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[a("h1",{attrs:{id:"if-else"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#if-else"}},[s._v("#")]),s._v(" If ... else")]),s._v(" "),a("p",[s._v("ABS supports basic "),a("code",[s._v("if")]),s._v(" statements:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("if")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])]),a("p",[s._v("as well as "),a("code",[s._v("else")]),s._v(" and "),a("code",[s._v("else if")]),s._v(" alternatives:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("if")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x is high"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("else")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("if")]),s._v(" x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x is low"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("else")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x is actually zero!"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])]),a("p",[s._v("You can wrap conditions in parentheses, although we believe that,\nfrom a readability standpoint, it's usually better to omit them:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("if")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])])])}),[],!1,null,null,null);t.default=e.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/29.53f637db.js b/docs/src/.vuepress/dist/assets/js/29.53f637db.js new file mode 100644 index 00000000..d824e943 --- /dev/null +++ b/docs/src/.vuepress/dist/assets/js/29.53f637db.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[29],{528:function(s,a,t){"use strict";t.r(a);var e=t(45),r=Object(e.a)({},(function(){var s=this,a=s.$createElement,t=s._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[t("h1",{attrs:{id:"operators"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#operators"}},[s._v("#")]),s._v(" Operators")]),s._v(" "),t("p",[s._v("Operators are natural building blocks of languages, so it's\nno surprise ABS has its fair share of them.")]),s._v(" "),t("p",[s._v("As a general rule, you should understand that ABS does not\nallow to use operator on different types, with a couple exceptions.\nHere is a list of operators you can use, with examples on how\nto make the most out of them.")]),s._v(" "),t("h2",{attrs:{id:""}},[t("a",{staticClass:"header-anchor",attrs:{href:"#"}},[s._v("#")]),s._v(" ==")]),s._v(" "),t("p",[s._v("Equality operator, one of the few that can be used\nbetween arguments of different type:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("==")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("==")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),t("h2",{attrs:{id:"-2"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-2"}},[s._v("#")]),s._v(" !=")]),s._v(" "),t("p",[s._v("Not equals operator, one of the few that can be used\nbetween arguments of different type:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),t("h2",{attrs:{id:"-3"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-3"}},[s._v("#")]),s._v(" +")]),s._v(" "),t("p",[s._v("Addition, can be used to merge arrays and combine strings as well:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" + "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 2")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" + "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),s._v(" + "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"world"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "hello world"')]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" + "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [1, 2]")]),s._v("\n")])])]),t("h2",{attrs:{id:"-4"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-4"}},[s._v("#")]),s._v(" +=")]),s._v(" "),t("p",[s._v("Compound addition:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("a "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\na "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("+=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# a is now 11")]),s._v("\n")])])]),t("h2",{attrs:{id:"-5"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-5"}},[s._v("#")]),s._v(" -")]),s._v(" "),t("p",[s._v("Subtraction:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" - "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -1")]),s._v("\n")])])]),t("h2",{attrs:{id:"-6"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-6"}},[s._v("#")]),s._v(" -=")]),s._v(" "),t("p",[s._v("Compound subtraction:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("a "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\na -"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# a is now 9")]),s._v("\n")])])]),t("h2",{attrs:{id:"-7"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-7"}},[s._v("#")]),s._v(" *")]),s._v(" "),t("p",[s._v("Multiplication:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" * "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 2")]),s._v("\n")])])]),t("h2",{attrs:{id:"-8"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-8"}},[s._v("#")]),s._v(" *=")]),s._v(" "),t("p",[s._v("Compound multiplication:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("a "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\na *"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# a is now 100")]),s._v("\n")])])]),t("h2",{attrs:{id:"-9"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-9"}},[s._v("#")]),s._v(" /")]),s._v(" "),t("p",[s._v("Division:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" / "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n")])])]),t("h2",{attrs:{id:"-10"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-10"}},[s._v("#")]),s._v(" /=")]),s._v(" "),t("p",[s._v("Compound division:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("a "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\na /"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# a is now 5")]),s._v("\n")])])]),t("h2",{attrs:{id:"in"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#in"}},[s._v("#")]),s._v(" in")]),s._v(" "),t("p",[s._v("Membership test operator (find whether a needle is in the haystack):")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("9")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("9")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("9")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# unknown operator: NUMBER in NUMBER")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"str"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xyz"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"y"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),t("h2",{attrs:{id:"in-2"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#in-2"}},[s._v("#")]),s._v(" !in")]),s._v(" "),t("p",[s._v("Negative membership test operator (find whether a needle is not in the haystack):")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("in "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("9")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("in "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("9")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("in "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("9")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# unknown operator: NUMBER in NUMBER")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"str"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("in "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xyz"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("in "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("in "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"y"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("in "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),t("h2",{attrs:{id:"-11"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-11"}},[s._v("#")]),s._v(" **")]),s._v(" "),t("p",[s._v("Mathematical exponentiation:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" ** "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 4")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" ** "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n")])])]),t("h2",{attrs:{id:"-12"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-12"}},[s._v("#")]),s._v(" **=")]),s._v(" "),t("p",[s._v("Compound exponentiation:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("a "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\na **"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# a is now 1")]),s._v("\n")])])]),t("h2",{attrs:{id:"-13"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-13"}},[s._v("#")]),s._v(" %")]),s._v(" "),t("p",[s._v("Modulo:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("19")]),s._v(" % "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 4")]),s._v("\n")])])]),t("h2",{attrs:{id:"-14"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-14"}},[s._v("#")]),s._v(" %=")]),s._v(" "),t("p",[s._v("Compound modulo:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("a "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("19")]),s._v("\na %"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# a is now 4")]),s._v("\n")])])]),t("h2",{attrs:{id:"-15"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-15"}},[s._v("#")]),s._v(" >")]),s._v(" "),t("p",[s._v("Greater than:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),t("p",[s._v("When used with strings, "),t("code",[s._v(">")]),s._v(" redirects\nthe input (left argument) to a file\n(right argument):")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"Hi, there"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"file.txt"')]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("`")]),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("cat")]),s._v(" /etc/hosts"),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("`")])]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"copy-of-etc-hosts.bkp"')]),s._v("\n")])])]),t("h2",{attrs:{id:"-16"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-16"}},[s._v("#")]),s._v(" >=")]),s._v(" "),t("p",[s._v("Greater or equal than:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),t("h2",{attrs:{id:"-17"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-17"}},[s._v("#")]),s._v(" <")]),s._v(" "),t("p",[s._v("Lower than:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),t("h2",{attrs:{id:"-18"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-18"}},[s._v("#")]),s._v(" <=")]),s._v(" "),t("p",[s._v("Lower or equal than:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),t("h2",{attrs:{id:"-19"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-19"}},[s._v("#")]),s._v(" <=>")]),s._v(" "),t("p",[s._v("The combined comparison operator allows to test whether a number\nis lower, equal or higher than another one with one statement:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<=")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 0")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<=")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("6")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -1")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("6")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<=")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n")])])]),t("h2",{attrs:{id:"-20"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-20"}},[s._v("#")]),s._v(" &&")]),s._v(" "),t("p",[s._v("Logical AND, which supports "),t("a",{attrs:{href:"https://en.wikipedia.org/wiki/Short-circuit_evaluation",target:"_blank",rel:"noopener noreferrer"}},[s._v("short-circuiting"),t("OutboundLink")],1),s._v(":")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 2")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 0")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 0")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('""')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# ""')]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"world"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "world"')]),s._v("\n")])])]),t("h2",{attrs:{id:"-21"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-21"}},[s._v("#")]),s._v(" ||")]),s._v(" "),t("p",[s._v("Logical OR, which supports "),t("a",{attrs:{href:"https://en.wikipedia.org/wiki/Short-circuit_evaluation",target:"_blank",rel:"noopener noreferrer"}},[s._v("short-circuiting"),t("OutboundLink")],1),s._v(":")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("||")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("||")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("||")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("||")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('""')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("||")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "hello world"')]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("||")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"world"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "hello"')]),s._v("\n")])])]),t("h2",{attrs:{id:"-22"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-22"}},[s._v("#")]),s._v(" .")]),s._v(" "),t("p",[s._v("Property accessor, used to access properties or methods of specific variables:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("hello "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"to_who"')]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"the world"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nhello.to_who "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "the world"')]),s._v("\n")])])]),t("p",[s._v("There are some builtin functions that you can access through the property accessor:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(".len"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 5")]),s._v("\n")])])]),t("p",[s._v('(a comprehensive list of function is documented in the "'),t("em",[s._v("Types and functions")]),s._v('" section of the documentation)')]),s._v(" "),t("h2",{attrs:{id:"-23"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-23"}},[s._v("#")]),s._v(" ?.")]),s._v(" "),t("p",[s._v('Optional chaining operator, used to access properties in a "safe" way.')]),s._v(" "),t("p",[s._v("Given the following object:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("test")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"property"')]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])]),t("p",[s._v("An error would be raised if you were trying to access a non-existing property\nsuch as "),t("code",[s._v("test.something.something_else")]),s._v(":")]),s._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[s._v("ERROR: invalid property 'something_else' on type NULL\n\t[1:15]\ttest.something.something_else\n")])])]),t("p",[s._v("Optional chainig prevents those errors from being raised, auto-magically\nconverting non-existing properties and methods to "),t("code",[s._v("NULL")]),s._v(":")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("test?.something?.something_else "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# null")]),s._v("\ntest?.something?.something_else"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# null")]),s._v("\n")])])]),t("h2",{attrs:{id:"-24"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-24"}},[s._v("#")]),s._v(" ..")]),s._v(" "),t("p",[s._v("Range operator, which creates an array from start to end:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]")]),s._v("\n")])])]),t("h2",{attrs:{id:"-25"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-25"}},[s._v("#")]),s._v(" !")]),s._v(" "),t("p",[s._v("Negation:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("a "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("a "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),t("h2",{attrs:{id:"-26"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-26"}},[s._v("#")]),s._v(" !!")]),s._v(" "),t("p",[s._v("Even though there is no double negation operator, using\n2 bangs will result into converting the argument to boolean:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('""')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),t("h2",{attrs:{id:"-27"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-27"}},[s._v("#")]),s._v(" ~")]),s._v(" "),t("p",[s._v('The tilde (meaning "around") is used to do similarity comparisons\n(x "is almost" y).')]),s._v(" "),t("p",[s._v("In case of strings, it will compare them case-insensitively")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("==")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"HELLO"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" ~ "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"HELLO"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),t("p",[s._v("In case of integers, it will compare their integer values:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("==")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1.5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" ~ "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1.5")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),t("p",[s._v("When in front of a number, it will instead be used as a\nbitwise NOT:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("~0 "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -1")]),s._v("\n~"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: Bitwise not (~) can only be applied to numbers, got STRING (hello)")]),s._v("\n")])])]),t("h2",{attrs:{id:"-28"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-28"}},[s._v("#")]),s._v(" &")]),s._v(" "),t("p",[s._v("Bitwise AND:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: type mismatch: NUMBER & STRING")]),s._v("\n")])])]),t("h2",{attrs:{id:"-29"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-29"}},[s._v("#")]),s._v(" |")]),s._v(" "),t("p",[s._v("Bitwise OR:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: type mismatch: NUMBER | STRING")]),s._v("\n")])])]),t("h2",{attrs:{id:"-30"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-30"}},[s._v("#")]),s._v(" ^")]),s._v(" "),t("p",[s._v("Bitwise XOR:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" ^ "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 0")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" ^ "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: type mismatch: NUMBER ^ STRING")]),s._v("\n")])])]),t("h2",{attrs:{id:"-31"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-31"}},[s._v("#")]),s._v(" >>")]),s._v(" "),t("p",[s._v("Bitwise right shift:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">>")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 0")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">>")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: type mismatch: NUMBER >> STRING")]),s._v("\n")])])]),t("p",[s._v("When used with strings, "),t("code",[s._v(">>")]),s._v(" appends\nthe input (left argument) to a file\n(right argument):")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"Hi"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">>")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"file.txt"')]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">>")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"file.txt"')]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"there!"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">>")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"file.txt"')]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("`")]),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("cat")]),s._v(" file.txt"),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("`")])]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# Hi there!")]),s._v("\n")])])]),t("h2",{attrs:{id:"-32"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#-32"}},[s._v("#")]),s._v(" <<")]),s._v(" "),t("p",[s._v("Bitwise left shift:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<<")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("1"),t("span",{pre:!0,attrs:{class:"token bash punctuation"}},[s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 2")])]),s._v("\n1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<<")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: type mismatch: NUMBER << STRING")]),s._v("\n")])])])])}),[],!1,null,null,null);a.default=r.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/3.6f89387f.js b/docs/src/.vuepress/dist/assets/js/3.f3eb5b80.js similarity index 68% rename from docs/src/.vuepress/dist/assets/js/3.6f89387f.js rename to docs/src/.vuepress/dist/assets/js/3.f3eb5b80.js index bbac49c2..d080fe78 100644 --- a/docs/src/.vuepress/dist/assets/js/3.6f89387f.js +++ b/docs/src/.vuepress/dist/assets/js/3.f3eb5b80.js @@ -3,4 +3,4 @@ * nano-assign v1.0.1 * (c) 2018-present egoist <0x142857@gmail.com> * Released under the MIT License. - */e.exports=function(e){for(var t=arguments,n=1;n<arguments.length;n++)for(var i in arguments[n])e[i]=t[n][i];return e}},369:function(e,t,n){(function(){"use strict";function e(e){var t=this.constructor;return this.then((function(n){return t.resolve(e()).then((function(){return n}))}),(function(n){return t.resolve(e()).then((function(){return t.reject(n)}))}))}var t=setTimeout;function n(){}function i(e){if(!(this instanceof i))throw new TypeError("Promises must be constructed via new");if("function"!=typeof e)throw new TypeError("not a function");this._state=0,this._handled=!1,this._value=void 0,this._deferreds=[],l(e,this)}function o(e,t){for(;3===e._state;)e=e._value;0!==e._state?(e._handled=!0,i._immediateFn((function(){var n=1===e._state?t.onFulfilled:t.onRejected;if(null!==n){var i;try{i=n(e._value)}catch(e){return void s(t.promise,e)}r(t.promise,i)}else(1===e._state?r:s)(t.promise,e._value)}))):e._deferreds.push(t)}function r(e,t){try{if(t===e)throw new TypeError("A promise cannot be resolved with itself.");if(t&&("object"==typeof t||"function"==typeof t)){var n=t.then;if(t instanceof i)return e._state=3,e._value=t,void a(e);if("function"==typeof n)return void l((o=n,r=t,function(){o.apply(r,arguments)}),e)}e._state=1,e._value=t,a(e)}catch(t){s(e,t)}var o,r}function s(e,t){e._state=2,e._value=t,a(e)}function a(e){2===e._state&&0===e._deferreds.length&&i._immediateFn((function(){e._handled||i._unhandledRejectionFn(e._value)}));for(var t=0,n=e._deferreds.length;t<n;t++)o(e,e._deferreds[t]);e._deferreds=null}function u(e,t,n){this.onFulfilled="function"==typeof e?e:null,this.onRejected="function"==typeof t?t:null,this.promise=n}function l(e,t){var n=!1;try{e((function(e){n||(n=!0,r(t,e))}),(function(e){n||(n=!0,s(t,e))}))}catch(e){if(n)return;n=!0,s(t,e)}}i.prototype.catch=function(e){return this.then(null,e)},i.prototype.then=function(e,t){var i=new this.constructor(n);return o(this,new u(e,t,i)),i},i.prototype.finally=e,i.all=function(e){return new i((function(t,n){if(!e||void 0===e.length)throw new TypeError("Promise.all accepts an array");var i=Array.prototype.slice.call(e);if(0===i.length)return t([]);var o=i.length;function r(e,s){try{if(s&&("object"==typeof s||"function"==typeof s)){var a=s.then;if("function"==typeof a)return void a.call(s,(function(t){r(e,t)}),n)}i[e]=s,0==--o&&t(i)}catch(e){n(e)}}for(var s=0;s<i.length;s++)r(s,i[s])}))},i.resolve=function(e){return e&&"object"==typeof e&&e.constructor===i?e:new i((function(t){t(e)}))},i.reject=function(e){return new i((function(t,n){n(e)}))},i.race=function(e){return new i((function(t,n){for(var i=0,o=e.length;i<o;i++)e[i].then(t,n)}))},i._immediateFn="function"==typeof setImmediate&&function(e){setImmediate(e)}||function(e){t(e,0)},i._unhandledRejectionFn=function(e){"undefined"!=typeof console&&console&&console.warn("Possible Unhandled Promise Rejection:",e)};var c=function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if("undefined"!=typeof global)return global;throw new Error("unable to locate global object")}();"Promise"in c?c.Promise.prototype.finally||(c.Promise.prototype.finally=e):c.Promise=i})()},370:function(e,t,n){},371:function(e,t,n){},372:function(e,t,n){},373:function(e,t,n){},374:function(e,t,n){},375:function(e,t,n){},376:function(e,t,n){},377:function(e,t,n){},378:function(e,t,n){},379:function(e,t,n){},380:function(e,t,n){},381:function(e,t,n){},382:function(e,t,n){},383:function(e,t,n){},384:function(e,t,n){},385:function(e,t,n){},386:function(e,t,n){},387:function(e,t,n){},388:function(e,t,n){},389:function(e,t,n){},390:function(e,t,n){},391:function(e,t,n){},392:function(e,t,n){},393:function(e,t,n){},394:function(e,t,n){},395:function(e,t,n){},396:function(e,t,n){},397:function(e,t,n){},398:function(e,t,n){},399:function(e,t,n){},400:function(e,t,n){},401:function(e,t,n){},402:function(e,t,n){},403:function(e,t,n){},404:function(e,t,n){},405:function(e,t,n){},406:function(e,t,n){},407:function(e,t,n){},408:function(e,t,n){},409:function(e,t,n){},410:function(e,t,n){},411:function(e,t,n){},412:function(e,t,n){},413:function(e,t,n){},414:function(e,t,n){},415:function(e,t,n){},416:function(e,t,n){},417:function(e,t,n){},418:function(e,t,n){},419:function(e,t,n){},420:function(e,t,n){},421:function(e,t,n){},422:function(e,t,n){},423:function(e,t,n){},424:function(e,t,n){},425:function(e,t,n){},426:function(e,t,n){},427:function(e,t,n){},428:function(e,t,n){},429:function(e,t,n){},430:function(e,t,n){},431:function(e,t,n){},432:function(e,t,n){},433:function(e,t,n){},434:function(e,t,n){},435:function(e,t,n){},436:function(e,t,n){},437:function(e,t,n){},442:function(e,t,n){"use strict";n.r(t),n.d(t,"CancellationTokenSource",(function(){return hP})),n.d(t,"Emitter",(function(){return pP})),n.d(t,"KeyCode",(function(){return fP})),n.d(t,"KeyMod",(function(){return gP})),n.d(t,"Position",(function(){return mP})),n.d(t,"Range",(function(){return vP})),n.d(t,"Selection",(function(){return _P})),n.d(t,"SelectionDirection",(function(){return yP})),n.d(t,"MarkerSeverity",(function(){return bP})),n.d(t,"MarkerTag",(function(){return wP})),n.d(t,"Uri",(function(){return CP})),n.d(t,"Token",(function(){return SP})),n.d(t,"editor",(function(){return LP})),n.d(t,"languages",(function(){return xP}));var i={};function o(e,t){return 0===t.length?e:e.replace(/\{(\d+)\}/g,(function(e,n){var i=n[0];return void 0!==t[i]?t[i]:e}))}function r(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return o(t,n)}n.r(i),n.d(i,"win32",(function(){return ds})),n.d(i,"posix",(function(){return hs})),n.d(i,"normalize",(function(){return ps})),n.d(i,"join",(function(){return fs})),n.d(i,"relative",(function(){return gs})),n.d(i,"dirname",(function(){return ms})),n.d(i,"basename",(function(){return vs})),n.d(i,"extname",(function(){return _s})),n.d(i,"sep",(function(){return ys}));var s=!1,a=!1,u=!1,l=!1,c=!1,d=!1,h=void 0,p="undefined"!=typeof process&&void 0!==process.versions&&void 0!==process.versions.electron&&"renderer"===process.type;if("object"!=typeof navigator||p){if("object"==typeof process){s="win32"===process.platform,a="darwin"===process.platform,u="linux"===process.platform,"en","en";var f=process.env.VSCODE_NLS_CONFIG;if(f)try{var g=JSON.parse(f),m=g.availableLanguages["*"];g.locale,m||"en",g._translationsConfigFile}catch(e){}l=!0}}else s=(h=navigator.userAgent).indexOf("Windows")>=0,a=h.indexOf("Macintosh")>=0,d=h.indexOf("Macintosh")>=0&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,u=h.indexOf("Linux")>=0,c=!0,navigator.language;var v=s,_=a,y=u,b=l,w=c,C=d,S="object"==typeof self?self:"object"==typeof global?global:{},L=function(){if(S.setImmediate)return S.setImmediate.bind(S);if("function"==typeof S.postMessage&&!S.importScripts){var e=[];S.addEventListener("message",(function(t){if(t.data&&t.data.vscodeSetImmediateId)for(var n=0,i=e.length;n<i;n++){var o=e[n];if(o.id===t.data.vscodeSetImmediateId)return e.splice(n,1),void o.callback()}}));var t=0;return function(n){var i=++t;e.push({id:i,callback:n}),S.postMessage({vscodeSetImmediateId:i},"*")}}if("undefined"!=typeof process&&"function"==typeof process.nextTick)return process.nextTick.bind(process);var n=Promise.resolve();return function(e){return n.then(e)}}(),x=a?2:s?1:3;var D=function(e){void 0===e&&(e="");for(var t="(-?\\d*\\.\\d\\w*)|([^",n=0;n<"`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?".length;n++){var i="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?"[n];e.indexOf(i)>=0||(t+="\\"+i)}return t+="\\s]+)",new RegExp(t,"g")}();function N(e){var t=D;if(e&&e instanceof RegExp)if(e.global)t=e;else{var n="g";e.ignoreCase&&(n+="i"),e.multiline&&(n+="m"),e.unicode&&(n+="u"),t=new RegExp(e.source,n)}return t.lastIndex=0,t}function k(e,t,n,i){t.lastIndex=0;var o=t.exec(n);if(!o)return null;var r=o[0].indexOf(" ")>=0?function(e,t,n,i){var o,r=e-1-i;for(t.lastIndex=0;o=t.exec(n);){var s=o.index||0;if(s>r)return null;if(t.lastIndex>=r)return{word:o[0],startColumn:i+1+s,endColumn:i+1+t.lastIndex}}return null}(e,t,n,i):function(e,t,n,i){var o,r=e-1-i,s=n.lastIndexOf(" ",r-1)+1;for(t.lastIndex=s;o=t.exec(n);){var a=o.index||0;if(a<=r&&t.lastIndex>=r)return{word:o[0],startColumn:i+1+a,endColumn:i+1+t.lastIndex}}return null}(e,t,n,i);return t.lastIndex=0,r}var E,I=(E=function(e,t){return(E=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)},function(e,t){function n(){this.constructor=e}E(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),O=function(){return(O=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},M=function(){function e(e){this._values=e}return e.prototype.hasChanged=function(e){return this._values[e]},e}(),T=function(){function e(){this._values=[]}return e.prototype._read=function(e){return this._values[e]},e.prototype.get=function(e){return this._values[e]},e.prototype._write=function(e,t){this._values[e]=t},e}(),P=function(){function e(e,t,n,i){this.id=e,this.name=t,this.defaultValue=n,this.schema=i}return e.prototype.compute=function(e,t,n){return n},e}(),R=function(){function e(e,t){void 0===t&&(t=null),this.schema=void 0,this.id=e,this.name="_never_",this.defaultValue=void 0,this.deps=t}return e.prototype.validate=function(e){return this.defaultValue},e}(),A=function(){function e(e,t,n,i){this.id=e,this.name=t,this.defaultValue=n,this.schema=i}return e.prototype.validate=function(e){return void 0===e?this.defaultValue:e},e.prototype.compute=function(e,t,n){return n},e}(),F=function(e){function t(t,n,i,o){void 0===o&&(o=void 0);return void 0!==o&&(o.type="boolean",o.default=i),e.call(this,t,n,i,o)||this}return I(t,e),t.boolean=function(e,t){return void 0===e?t:"false"!==e&&Boolean(e)},t.prototype.validate=function(e){return t.boolean(e,this.defaultValue)},t}(A),W=function(e){function t(t,n,i,o,r,s){void 0===s&&(s=void 0);var a=this;return void 0!==s&&(s.type="integer",s.default=i,s.minimum=o,s.maximum=r),(a=e.call(this,t,n,i,s)||this).minimum=o,a.maximum=r,a}return I(t,e),t.clampedInt=function(e,t,n,i){var o;return void 0===e?o=t:(o=parseInt(e,10),isNaN(o)&&(o=t)),o=Math.max(n,o),0|(o=Math.min(i,o))},t.prototype.validate=function(e){return t.clampedInt(e,this.defaultValue,this.minimum,this.maximum)},t}(A),V=function(e){function t(t,n,i,o,r){var s=this;return void 0!==r&&(r.type="number",r.default=i),(s=e.call(this,t,n,i,r)||this).validationFn=o,s}return I(t,e),t.clamp=function(e,t,n){return e<t?t:e>n?n:e},t.float=function(e,t){if("number"==typeof e)return e;if(void 0===e)return t;var n=parseFloat(e);return isNaN(n)?t:n},t.prototype.validate=function(e){return this.validationFn(t.float(e,this.defaultValue))},t}(A),B=function(e){function t(t,n,i,o){void 0===o&&(o=void 0);return void 0!==o&&(o.type="string",o.default=i),e.call(this,t,n,i,o)||this}return I(t,e),t.string=function(e,t){return"string"!=typeof e?t:e},t.prototype.validate=function(e){return t.string(e,this.defaultValue)},t}(A),H=function(e){function t(t,n,i,o,r){void 0===r&&(r=void 0);var s=this;return void 0!==r&&(r.type="string",r.enum=o,r.default=i),(s=e.call(this,t,n,i,r)||this)._allowedValues=o,s}return I(t,e),t.stringSet=function(e,t,n){return"string"!=typeof e||-1===n.indexOf(e)?t:e},t.prototype.validate=function(e){return t.stringSet(e,this.defaultValue,this._allowedValues)},t}(A),z=function(e){function t(t,n,i,o,r,s,a){void 0===a&&(a=void 0);var u=this;return void 0!==a&&(a.type="string",a.enum=r,a.default=o),(u=e.call(this,t,n,i,a)||this)._allowedValues=r,u._convert=s,u}return I(t,e),t.prototype.validate=function(e){return"string"!=typeof e||-1===this._allowedValues.indexOf(e)?this.defaultValue:this._convert(e)},t}(P);var j,U=function(e){function t(){return e.call(this,2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[r("accessibilitySupport.auto","The editor will use platform APIs to detect when a Screen Reader is attached."),r("accessibilitySupport.on","The editor will be permanently optimized for usage with a Screen Reader."),r("accessibilitySupport.off","The editor will never be optimized for usage with a Screen Reader.")],default:"auto",description:r("accessibilitySupport","Controls whether the editor should run in a mode where it is optimized for screen readers.")})||this}return I(t,e),t.prototype.validate=function(e){switch(e){case"auto":return 0;case"off":return 1;case"on":return 2}return this.defaultValue},t.prototype.compute=function(e,t,n){return 0===n?e.accessibilitySupport:n},t}(P),K=function(e){function t(){var t={insertSpace:!0};return e.call(this,13,"comments",t,{"editor.comments.insertSpace":{type:"boolean",default:t.insertSpace,description:r("comments.insertSpace","Controls whether a space character is inserted when commenting.")}})||this}return I(t,e),t.prototype.validate=function(e){if("object"!=typeof e)return this.defaultValue;var t=e;return{insertSpace:F.boolean(t.insertSpace,this.defaultValue.insertSpace)}},t}(P);!function(e){e[e.Line=1]="Line",e[e.Block=2]="Block",e[e.Underline=3]="Underline",e[e.LineThin=4]="LineThin",e[e.BlockOutline=5]="BlockOutline",e[e.UnderlineThin=6]="UnderlineThin"}(j||(j={}));var q=function(e){function t(){return e.call(this,104,[55,26])||this}return I(t,e),t.prototype.compute=function(e,t,n){var i="monaco-editor";return t.get(26)&&(i+=" "+t.get(26)),e.extraEditorClassName&&(i+=" "+e.extraEditorClassName),"default"===t.get(55)?i+=" mouse-default":"copy"===t.get(55)&&(i+=" mouse-copy"),t.get(85)&&(i+=" showUnused"),i},t}(R),G=function(e){function t(){return e.call(this,25,"emptySelectionClipboard",!0,{description:r("emptySelectionClipboard","Controls whether copying without a selection copies the current line.")})||this}return I(t,e),t.prototype.compute=function(e,t,n){return n&&e.emptySelectionClipboard},t}(F),Z=function(e){function t(){var t={seedSearchStringFromSelection:!0,autoFindInSelection:"never",globalFindClipboard:!1,addExtraSpaceOnTop:!0};return e.call(this,28,"find",t,{"editor.find.seedSearchStringFromSelection":{type:"boolean",default:t.seedSearchStringFromSelection,description:r("find.seedSearchStringFromSelection","Controls whether the search string in the Find Widget is seeded from the editor selection.")},"editor.find.autoFindInSelection":{type:"string",enum:["never","always","multiline"],default:t.autoFindInSelection,enumDescriptions:[r("editor.find.autoFindInSelection.never","Never turn on Find in selection automatically (default)"),r("editor.find.autoFindInSelection.always","Always turn on Find in selection automatically"),r("editor.find.autoFindInSelection.multiline","Turn on Find in selection automatically when multiple lines of content are selected.")],description:r("find.autoFindInSelection","Controls whether the find operation is carried out on selected text or the entire file in the editor.")},"editor.find.globalFindClipboard":{type:"boolean",default:t.globalFindClipboard,description:r("find.globalFindClipboard","Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:_},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:t.addExtraSpaceOnTop,description:r("find.addExtraSpaceOnTop","Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.")}})||this}return I(t,e),t.prototype.validate=function(e){if("object"!=typeof e)return this.defaultValue;var t=e;return{seedSearchStringFromSelection:F.boolean(t.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection),autoFindInSelection:"boolean"==typeof e.autoFindInSelection?e.autoFindInSelection?"always":"never":H.stringSet(t.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:F.boolean(t.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:F.boolean(t.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop)}},t}(P),Y=function(e){function t(){return e.call(this,35,"fontLigatures",t.OFF,{anyOf:[{type:"boolean",description:r("fontLigatures","Enables/Disables font ligatures.")},{type:"string",description:r("fontFeatureSettings","Explicit font-feature-settings.")}],description:r("fontLigaturesGeneral","Configures font ligatures."),default:!1})||this}return I(t,e),t.prototype.validate=function(e){return void 0===e?this.defaultValue:"string"==typeof e?"false"===e?t.OFF:"true"===e?t.ON:e:Boolean(e)?t.ON:t.OFF},t.OFF='"liga" off, "calt" off',t.ON='"liga" on, "calt" on',t}(P),X=function(e){function t(){return e.call(this,34)||this}return I(t,e),t.prototype.compute=function(e,t,n){return e.fontInfo},t}(R),$=function(e){function t(){return e.call(this,36,"fontSize",ge.fontSize,{type:"number",minimum:6,maximum:100,default:ge.fontSize,description:r("fontSize","Controls the font size in pixels.")})||this}return I(t,e),t.prototype.validate=function(e){var t=V.float(e,this.defaultValue);return 0===t?ge.fontSize:V.clamp(t,6,100)},t.prototype.compute=function(e,t,n){return e.fontInfo.fontSize},t}(A),Q=function(e){function t(){var t={multiple:"peek",multipleDefinitions:"peek",multipleTypeDefinitions:"peek",multipleDeclarations:"peek",multipleImplementations:"peek",multipleReferences:"peek",alternativeDefinitionCommand:"editor.action.goToReferences",alternativeTypeDefinitionCommand:"editor.action.goToReferences",alternativeDeclarationCommand:"editor.action.goToReferences",alternativeImplementationCommand:"",alternativeReferenceCommand:""},n={type:"string",enum:["peek","gotoAndPeek","goto"],default:t.multiple,enumDescriptions:[r("editor.gotoLocation.multiple.peek","Show peek view of the results (default)"),r("editor.gotoLocation.multiple.gotoAndPeek","Go to the primary result and show a peek view"),r("editor.gotoLocation.multiple.goto","Go to the primary result and enable peek-less navigation to others")]};return e.call(this,41,"gotoLocation",t,{"editor.gotoLocation.multiple":{deprecationMessage:r("editor.gotoLocation.multiple.deprecated","This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.")},"editor.gotoLocation.multipleDefinitions":O({description:r("editor.editor.gotoLocation.multipleDefinitions","Controls the behavior the 'Go to Definition'-command when multiple target locations exist.")},n),"editor.gotoLocation.multipleTypeDefinitions":O({description:r("editor.editor.gotoLocation.multipleTypeDefinitions","Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist.")},n),"editor.gotoLocation.multipleDeclarations":O({description:r("editor.editor.gotoLocation.multipleDeclarations","Controls the behavior the 'Go to Declaration'-command when multiple target locations exist.")},n),"editor.gotoLocation.multipleImplementations":O({description:r("editor.editor.gotoLocation.multipleImplemenattions","Controls the behavior the 'Go to Implementations'-command when multiple target locations exist.")},n),"editor.gotoLocation.multipleReferences":O({description:r("editor.editor.gotoLocation.multipleReferences","Controls the behavior the 'Go to References'-command when multiple target locations exist.")},n),"editor.gotoLocation.alternativeDefinitionCommand":{type:"string",default:t.alternativeDefinitionCommand,description:r("alternativeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Definition' is the current location.")},"editor.gotoLocation.alternativeTypeDefinitionCommand":{type:"string",default:t.alternativeTypeDefinitionCommand,description:r("alternativeTypeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Type Definition' is the current location.")},"editor.gotoLocation.alternativeDeclarationCommand":{type:"string",default:t.alternativeDeclarationCommand,description:r("alternativeDeclarationCommand","Alternative command id that is being executed when the result of 'Go to Declaration' is the current location.")},"editor.gotoLocation.alternativeImplementationCommand":{type:"string",default:t.alternativeImplementationCommand,description:r("alternativeImplementationCommand","Alternative command id that is being executed when the result of 'Go to Implementation' is the current location.")},"editor.gotoLocation.alternativeReferenceCommand":{type:"string",default:t.alternativeReferenceCommand,description:r("alternativeReferenceCommand","Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})||this}return I(t,e),t.prototype.validate=function(e){var t,n,i,o,r;if("object"!=typeof e)return this.defaultValue;var s=e;return{multiple:H.stringSet(s.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:null!==(t=s.multipleDefinitions)&&void 0!==t?t:H.stringSet(s.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:null!==(n=s.multipleTypeDefinitions)&&void 0!==n?n:H.stringSet(s.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:null!==(i=s.multipleDeclarations)&&void 0!==i?i:H.stringSet(s.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:null!==(o=s.multipleImplementations)&&void 0!==o?o:H.stringSet(s.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:null!==(r=s.multipleReferences)&&void 0!==r?r:H.stringSet(s.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:B.string(s.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:B.string(s.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:B.string(s.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:B.string(s.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:B.string(s.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand)}},t}(P),J=function(e){function t(){var t={enabled:!0,delay:300,sticky:!0};return e.call(this,44,"hover",t,{"editor.hover.enabled":{type:"boolean",default:t.enabled,description:r("hover.enabled","Controls whether the hover is shown.")},"editor.hover.delay":{type:"number",default:t.delay,description:r("hover.delay","Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:t.sticky,description:r("hover.sticky","Controls whether the hover should remain visible when mouse is moved over it.")}})||this}return I(t,e),t.prototype.validate=function(e){if("object"!=typeof e)return this.defaultValue;var t=e;return{enabled:F.boolean(t.enabled,this.defaultValue.enabled),delay:W.clampedInt(t.delay,this.defaultValue.delay,0,1e4),sticky:F.boolean(t.sticky,this.defaultValue.sticky)}},t}(P),ee=function(e){function t(){return e.call(this,107,[40,48,30,54,78,50])||this}return I(t,e),t.prototype.compute=function(e,n,i){return t.computeLayout(n,{outerWidth:e.outerWidth,outerHeight:e.outerHeight,lineHeight:e.fontInfo.lineHeight,lineNumbersDigitCount:e.lineNumbersDigitCount,typicalHalfwidthCharacterWidth:e.fontInfo.typicalHalfwidthCharacterWidth,maxDigitWidth:e.fontInfo.maxDigitWidth,pixelRatio:e.pixelRatio})},t.computeLayout=function(e,t){var n,i=0|t.outerWidth,o=0|t.outerHeight,r=0|t.lineHeight,s=0|t.lineNumbersDigitCount,a=t.typicalHalfwidthCharacterWidth,u=t.maxDigitWidth,l=t.pixelRatio,c=e.get(40),d=0!==e.get(50).renderType,h=0|e.get(51),p=e.get(54),f=p.enabled,g=p.side,m=p.renderCharacters,v=l>=2?Math.round(2*p.scale):p.scale,_=0|p.maxColumn,y=e.get(78),b=0|y.verticalScrollbarSize,w=y.verticalHasArrows,C=0|y.arrowSize,S=0|y.horizontalScrollbarSize,L=e.get(48),x=e.get(30);if("string"==typeof L&&/^\d+(\.\d+)?ch$/.test(L)){var D=parseFloat(L.substr(0,L.length-2));n=W.clampedInt(D*a,0,0,1e3)}else n=W.clampedInt(L,0,0,1e3);x&&(n+=16);var N=0;if(d){var k=Math.max(s,h);N=Math.round(k*u)}var E=0;c&&(E=r);var I,O,M,T,P=0,R=P+E,A=R+N,F=A+n,V=i-E-N-n;if(f){var B=v/l;I=m?1:2,(M=Math.max(0,Math.floor((V-b-2)*B/(a+B)))+8)/B>_&&(M=Math.floor(_*B)),T=V-M,"left"===g?(O=0,P+=M,R+=M,A+=M,F+=M):O=i-M-b}else O=0,M=0,I=0,T=V;var H=w?C:0;return{width:i,height:o,glyphMarginLeft:P,glyphMarginWidth:E,lineNumbersLeft:R,lineNumbersWidth:N,decorationsLeft:A,decorationsWidth:n,contentLeft:F,contentWidth:T,renderMinimap:I,minimapLeft:O,minimapWidth:M,viewportColumn:Math.max(1,Math.floor((T-b-2)/a)),verticalScrollbarWidth:b,horizontalScrollbarHeight:S,overviewRuler:{top:H,width:b,height:o-2*H,right:0}}},t}(R),te=function(e){function t(){var t={enabled:!0};return e.call(this,47,"lightbulb",t,{"editor.lightbulb.enabled":{type:"boolean",default:t.enabled,description:r("codeActions","Enables the code action lightbulb in the editor.")}})||this}return I(t,e),t.prototype.validate=function(e){if("object"!=typeof e)return this.defaultValue;var t=e;return{enabled:F.boolean(t.enabled,this.defaultValue.enabled)}},t}(P),ne=function(e){function t(){return e.call(this,49,"lineHeight",ge.lineHeight,0,150,{description:r("lineHeight","Controls the line height. Use 0 to compute the line height from the font size.")})||this}return I(t,e),t.prototype.compute=function(e,t,n){return e.fontInfo.lineHeight},t}(W),ie=function(e){function t(){var t={enabled:!0,side:"right",showSlider:"mouseover",renderCharacters:!0,maxColumn:120,scale:1};return e.call(this,54,"minimap",t,{"editor.minimap.enabled":{type:"boolean",default:t.enabled,description:r("minimap.enabled","Controls whether the minimap is shown.")},"editor.minimap.side":{type:"string",enum:["left","right"],default:t.side,description:r("minimap.side","Controls the side where to render the minimap.")},"editor.minimap.showSlider":{type:"string",enum:["always","mouseover"],default:t.showSlider,description:r("minimap.showSlider","Controls when the minimap slider is shown.")},"editor.minimap.scale":{type:"number",default:t.scale,minimum:1,maximum:3,description:r("minimap.scale","Scale of content drawn in the minimap.")},"editor.minimap.renderCharacters":{type:"boolean",default:t.renderCharacters,description:r("minimap.renderCharacters","Render the actual characters on a line as opposed to color blocks.")},"editor.minimap.maxColumn":{type:"number",default:t.maxColumn,description:r("minimap.maxColumn","Limit the width of the minimap to render at most a certain number of columns.")}})||this}return I(t,e),t.prototype.validate=function(e){if("object"!=typeof e)return this.defaultValue;var t=e;return{enabled:F.boolean(t.enabled,this.defaultValue.enabled),side:H.stringSet(t.side,this.defaultValue.side,["right","left"]),showSlider:H.stringSet(t.showSlider,this.defaultValue.showSlider,["always","mouseover"]),renderCharacters:F.boolean(t.renderCharacters,this.defaultValue.renderCharacters),scale:W.clampedInt(t.scale,1,1,3),maxColumn:W.clampedInt(t.maxColumn,this.defaultValue.maxColumn,1,1e4)}},t}(P);var oe=function(e){function t(){var t={enabled:!0,cycle:!1};return e.call(this,64,"parameterHints",t,{"editor.parameterHints.enabled":{type:"boolean",default:t.enabled,description:r("parameterHints.enabled","Enables a pop-up that shows parameter documentation and type information as you type.")},"editor.parameterHints.cycle":{type:"boolean",default:t.cycle,description:r("parameterHints.cycle","Controls whether the parameter hints menu cycles or closes when reaching the end of the list.")}})||this}return I(t,e),t.prototype.validate=function(e){if("object"!=typeof e)return this.defaultValue;var t=e;return{enabled:F.boolean(t.enabled,this.defaultValue.enabled),cycle:F.boolean(t.cycle,this.defaultValue.cycle)}},t}(P),re=function(e){function t(){return e.call(this,105)||this}return I(t,e),t.prototype.compute=function(e,t,n){return e.pixelRatio},t}(R),se=function(e){function t(){var t=this,n={other:!0,comments:!1,strings:!1};return(t=e.call(this,66,"quickSuggestions",n,{anyOf:[{type:"boolean"},{type:"object",properties:{strings:{type:"boolean",default:n.strings,description:r("quickSuggestions.strings","Enable quick suggestions inside strings.")},comments:{type:"boolean",default:n.comments,description:r("quickSuggestions.comments","Enable quick suggestions inside comments.")},other:{type:"boolean",default:n.other,description:r("quickSuggestions.other","Enable quick suggestions outside of strings and comments.")}}}],default:n,description:r("quickSuggestions","Controls whether suggestions should automatically show up while typing.")})||this).defaultValue=n,t}return I(t,e),t.prototype.validate=function(e){if("boolean"==typeof e)return e;if("object"==typeof e){var t=e,n={other:F.boolean(t.other,this.defaultValue.other),comments:F.boolean(t.comments,this.defaultValue.comments),strings:F.boolean(t.strings,this.defaultValue.strings)};return!!(n.other&&n.comments&&n.strings)||!!(n.other||n.comments||n.strings)&&n}return this.defaultValue},t}(P),ae=function(e){function t(){return e.call(this,50,"lineNumbers",{renderType:1,renderFn:null},{type:"string",enum:["off","on","relative","interval"],enumDescriptions:[r("lineNumbers.off","Line numbers are not rendered."),r("lineNumbers.on","Line numbers are rendered as absolute number."),r("lineNumbers.relative","Line numbers are rendered as distance in lines to cursor position."),r("lineNumbers.interval","Line numbers are rendered every 10 lines.")],default:"on",description:r("lineNumbers","Controls the display of line numbers.")})||this}return I(t,e),t.prototype.validate=function(e){var t=this.defaultValue.renderType,n=this.defaultValue.renderFn;return void 0!==e&&("function"==typeof e?(t=4,n=e):t="interval"===e?3:"relative"===e?2:"on"===e?1:0),{renderType:t,renderFn:n}},t}(P);function ue(e){var t=e.get(73);return"editable"===t?e.get(68):"on"!==t}var le=function(e){function t(){var t=[];return e.call(this,77,"rulers",t,{type:"array",items:{type:"number"},default:t,description:r("rulers","Render vertical rulers after a certain number of monospace characters. Use multiple values for multiple rulers. No rulers are drawn if array is empty.")})||this}return I(t,e),t.prototype.validate=function(e){if(Array.isArray(e)){for(var t=[],n=0,i=e;n<i.length;n++){var o=i[n];t.push(W.clampedInt(o,0,0,1e4))}return t.sort((function(e,t){return e-t})),t}return this.defaultValue},t}(A);function ce(e,t){if("string"!=typeof e)return t;switch(e){case"hidden":return 2;case"visible":return 3;default:return 1}}var de=function(e){function t(){return e.call(this,78,"scrollbar",{vertical:1,horizontal:1,arrowSize:11,useShadows:!0,verticalHasArrows:!1,horizontalHasArrows:!1,horizontalScrollbarSize:10,horizontalSliderSize:10,verticalScrollbarSize:14,verticalSliderSize:14,handleMouseWheel:!0,alwaysConsumeMouseWheel:!0})||this}return I(t,e),t.prototype.validate=function(e){if("object"!=typeof e)return this.defaultValue;var t=e,n=W.clampedInt(t.horizontalScrollbarSize,this.defaultValue.horizontalScrollbarSize,0,1e3),i=W.clampedInt(t.verticalScrollbarSize,this.defaultValue.verticalScrollbarSize,0,1e3);return{arrowSize:W.clampedInt(t.arrowSize,this.defaultValue.arrowSize,0,1e3),vertical:ce(t.vertical,this.defaultValue.vertical),horizontal:ce(t.horizontal,this.defaultValue.horizontal),useShadows:F.boolean(t.useShadows,this.defaultValue.useShadows),verticalHasArrows:F.boolean(t.verticalHasArrows,this.defaultValue.verticalHasArrows),horizontalHasArrows:F.boolean(t.horizontalHasArrows,this.defaultValue.horizontalHasArrows),handleMouseWheel:F.boolean(t.handleMouseWheel,this.defaultValue.handleMouseWheel),alwaysConsumeMouseWheel:F.boolean(t.alwaysConsumeMouseWheel,this.defaultValue.alwaysConsumeMouseWheel),horizontalScrollbarSize:n,horizontalSliderSize:W.clampedInt(t.horizontalSliderSize,n,0,1e3),verticalScrollbarSize:i,verticalSliderSize:W.clampedInt(t.verticalSliderSize,i,0,1e3)}},t}(P),he=function(e){function t(){var t={insertMode:"insert",insertHighlight:!1,filterGraceful:!0,snippetsPreventQuickSuggestions:!0,localityBonus:!1,shareSuggestSelections:!1,showIcons:!0,maxVisibleSuggestions:12,showMethods:!0,showFunctions:!0,showConstructors:!0,showFields:!0,showVariables:!0,showClasses:!0,showStructs:!0,showInterfaces:!0,showModules:!0,showProperties:!0,showEvents:!0,showOperators:!0,showUnits:!0,showValues:!0,showConstants:!0,showEnums:!0,showEnumMembers:!0,showKeywords:!0,showWords:!0,showColors:!0,showFiles:!0,showReferences:!0,showFolders:!0,showTypeParameters:!0,showSnippets:!0,hideStatusBar:!0};return e.call(this,89,"suggest",t,{"editor.suggest.insertMode":{type:"string",enum:["insert","replace"],enumDescriptions:[r("suggest.insertMode.insert","Insert suggestion without overwriting text right of the cursor."),r("suggest.insertMode.replace","Insert suggestion and overwrite text right of the cursor.")],default:t.insertMode,description:r("suggest.insertMode","Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.")},"editor.suggest.insertHighlight":{type:"boolean",default:t.insertHighlight,description:r("suggest.insertHighlight","Controls whether unexpected text modifications while accepting completions should be highlighted, e.g `insertMode` is `replace` but the completion only supports `insert`.")},"editor.suggest.filterGraceful":{type:"boolean",default:t.filterGraceful,description:r("suggest.filterGraceful","Controls whether filtering and sorting suggestions accounts for small typos.")},"editor.suggest.localityBonus":{type:"boolean",default:t.localityBonus,description:r("suggest.localityBonus","Controls whether sorting favours words that appear close to the cursor.")},"editor.suggest.shareSuggestSelections":{type:"boolean",default:t.shareSuggestSelections,markdownDescription:r("suggest.shareSuggestSelections","Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `#editor.suggestSelection#`).")},"editor.suggest.snippetsPreventQuickSuggestions":{type:"boolean",default:t.snippetsPreventQuickSuggestions,description:r("suggest.snippetsPreventQuickSuggestions","Controls whether an active snippet prevents quick suggestions.")},"editor.suggest.showIcons":{type:"boolean",default:t.showIcons,description:r("suggest.showIcons","Controls whether to show or hide icons in suggestions.")},"editor.suggest.maxVisibleSuggestions":{type:"number",default:t.maxVisibleSuggestions,minimum:1,maximum:15,description:r("suggest.maxVisibleSuggestions","Controls how many suggestions IntelliSense will show before showing a scrollbar (maximum 15).")},"editor.suggest.filteredTypes":{type:"object",deprecationMessage:r("deprecated","This setting is deprecated, please use separate settings like 'editor.suggest.showKeywords' or 'editor.suggest.showSnippets' instead.")},"editor.suggest.showMethods":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showMethods","When enabled IntelliSense shows `method`-suggestions.")},"editor.suggest.showFunctions":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showFunctions","When enabled IntelliSense shows `function`-suggestions.")},"editor.suggest.showConstructors":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showConstructors","When enabled IntelliSense shows `constructor`-suggestions.")},"editor.suggest.showFields":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showFields","When enabled IntelliSense shows `field`-suggestions.")},"editor.suggest.showVariables":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showVariables","When enabled IntelliSense shows `variable`-suggestions.")},"editor.suggest.showClasses":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showClasss","When enabled IntelliSense shows `class`-suggestions.")},"editor.suggest.showStructs":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showStructs","When enabled IntelliSense shows `struct`-suggestions.")},"editor.suggest.showInterfaces":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showInterfaces","When enabled IntelliSense shows `interface`-suggestions.")},"editor.suggest.showModules":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showModules","When enabled IntelliSense shows `module`-suggestions.")},"editor.suggest.showProperties":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showPropertys","When enabled IntelliSense shows `property`-suggestions.")},"editor.suggest.showEvents":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showEvents","When enabled IntelliSense shows `event`-suggestions.")},"editor.suggest.showOperators":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showOperators","When enabled IntelliSense shows `operator`-suggestions.")},"editor.suggest.showUnits":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showUnits","When enabled IntelliSense shows `unit`-suggestions.")},"editor.suggest.showValues":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showValues","When enabled IntelliSense shows `value`-suggestions.")},"editor.suggest.showConstants":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showConstants","When enabled IntelliSense shows `constant`-suggestions.")},"editor.suggest.showEnums":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showEnums","When enabled IntelliSense shows `enum`-suggestions.")},"editor.suggest.showEnumMembers":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showEnumMembers","When enabled IntelliSense shows `enumMember`-suggestions.")},"editor.suggest.showKeywords":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showKeywords","When enabled IntelliSense shows `keyword`-suggestions.")},"editor.suggest.showWords":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showTexts","When enabled IntelliSense shows `text`-suggestions.")},"editor.suggest.showColors":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showColors","When enabled IntelliSense shows `color`-suggestions.")},"editor.suggest.showFiles":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showFiles","When enabled IntelliSense shows `file`-suggestions.")},"editor.suggest.showReferences":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showReferences","When enabled IntelliSense shows `reference`-suggestions.")},"editor.suggest.showCustomcolors":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showCustomcolors","When enabled IntelliSense shows `customcolor`-suggestions.")},"editor.suggest.showFolders":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showFolders","When enabled IntelliSense shows `folder`-suggestions.")},"editor.suggest.showTypeParameters":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showTypeParameters","When enabled IntelliSense shows `typeParameter`-suggestions.")},"editor.suggest.showSnippets":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showSnippets","When enabled IntelliSense shows `snippet`-suggestions.")},"editor.suggest.hideStatusBar":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.hideStatusBar","Controls the visibility of the status bar at the bottom of the suggest widget.")}})||this}return I(t,e),t.prototype.validate=function(e){if("object"!=typeof e)return this.defaultValue;var t=e;return{insertMode:H.stringSet(t.insertMode,this.defaultValue.insertMode,["insert","replace"]),insertHighlight:F.boolean(t.insertHighlight,this.defaultValue.insertHighlight),filterGraceful:F.boolean(t.filterGraceful,this.defaultValue.filterGraceful),snippetsPreventQuickSuggestions:F.boolean(t.snippetsPreventQuickSuggestions,this.defaultValue.filterGraceful),localityBonus:F.boolean(t.localityBonus,this.defaultValue.localityBonus),shareSuggestSelections:F.boolean(t.shareSuggestSelections,this.defaultValue.shareSuggestSelections),showIcons:F.boolean(t.showIcons,this.defaultValue.showIcons),maxVisibleSuggestions:W.clampedInt(t.maxVisibleSuggestions,this.defaultValue.maxVisibleSuggestions,1,15),showMethods:F.boolean(t.showMethods,this.defaultValue.showMethods),showFunctions:F.boolean(t.showFunctions,this.defaultValue.showFunctions),showConstructors:F.boolean(t.showConstructors,this.defaultValue.showConstructors),showFields:F.boolean(t.showFields,this.defaultValue.showFields),showVariables:F.boolean(t.showVariables,this.defaultValue.showVariables),showClasses:F.boolean(t.showClasses,this.defaultValue.showClasses),showStructs:F.boolean(t.showStructs,this.defaultValue.showStructs),showInterfaces:F.boolean(t.showInterfaces,this.defaultValue.showInterfaces),showModules:F.boolean(t.showModules,this.defaultValue.showModules),showProperties:F.boolean(t.showProperties,this.defaultValue.showProperties),showEvents:F.boolean(t.showEvents,this.defaultValue.showEvents),showOperators:F.boolean(t.showOperators,this.defaultValue.showOperators),showUnits:F.boolean(t.showUnits,this.defaultValue.showUnits),showValues:F.boolean(t.showValues,this.defaultValue.showValues),showConstants:F.boolean(t.showConstants,this.defaultValue.showConstants),showEnums:F.boolean(t.showEnums,this.defaultValue.showEnums),showEnumMembers:F.boolean(t.showEnumMembers,this.defaultValue.showEnumMembers),showKeywords:F.boolean(t.showKeywords,this.defaultValue.showKeywords),showWords:F.boolean(t.showWords,this.defaultValue.showWords),showColors:F.boolean(t.showColors,this.defaultValue.showColors),showFiles:F.boolean(t.showFiles,this.defaultValue.showFiles),showReferences:F.boolean(t.showReferences,this.defaultValue.showReferences),showFolders:F.boolean(t.showFolders,this.defaultValue.showFolders),showTypeParameters:F.boolean(t.showTypeParameters,this.defaultValue.showTypeParameters),showSnippets:F.boolean(t.showSnippets,this.defaultValue.showSnippets),hideStatusBar:F.boolean(t.hideStatusBar,this.defaultValue.hideStatusBar)}},t}(P),pe=function(e){function t(){return e.call(this,106,[68])||this}return I(t,e),t.prototype.compute=function(e,t,n){return!!t.get(68)||e.tabFocusMode},t}(R);var fe=function(e){function t(){return e.call(this,108,[97,100,101,107,2])||this}return I(t,e),t.prototype.compute=function(e,t,n){var i=t.get(97),o=t.get(100),r=t.get(101),s=t.get(107),a=null;return a=2===t.get(2)?{isWordWrapMinified:!1,isViewportWrapping:!1,wrappingColumn:-1}:r&&e.isDominatedByLongLines?{isWordWrapMinified:!0,isViewportWrapping:!0,wrappingColumn:Math.max(1,s.viewportColumn)}:"on"===i?{isWordWrapMinified:!1,isViewportWrapping:!0,wrappingColumn:Math.max(1,s.viewportColumn)}:"bounded"===i?{isWordWrapMinified:!1,isViewportWrapping:!0,wrappingColumn:Math.min(Math.max(1,s.viewportColumn),o)}:"wordWrapColumn"===i?{isWordWrapMinified:!1,isViewportWrapping:!1,wrappingColumn:o}:{isWordWrapMinified:!1,isViewportWrapping:!1,wrappingColumn:-1},{isDominatedByLongLines:e.isDominatedByLongLines,isWordWrapMinified:a.isWordWrapMinified,isViewportWrapping:a.isViewportWrapping,wrappingColumn:a.wrappingColumn}},t}(R),ge={fontFamily:_?"Menlo, Monaco, 'Courier New', monospace":y?"'Droid Sans Mono', 'monospace', monospace, 'Droid Sans Fallback'":"Consolas, 'Courier New', monospace",fontWeight:"normal",fontSize:_?12:14,lineHeight:0,letterSpacing:0},me=4,ve=4,_e=!0,ye=!0,be=!0,we=!0,Ce=[];function Se(e){return Ce[e.id]=e,e}var Le={acceptSuggestionOnCommitCharacter:Se(new F(0,"acceptSuggestionOnCommitCharacter",!0,{markdownDescription:r("acceptSuggestionOnCommitCharacter","Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character.")})),acceptSuggestionOnEnter:Se(new H(1,"acceptSuggestionOnEnter","on",["on","smart","off"],{markdownEnumDescriptions:["",r("acceptSuggestionOnEnterSmart","Only accept a suggestion with `Enter` when it makes a textual change."),""],markdownDescription:r("acceptSuggestionOnEnter","Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.")})),accessibilitySupport:Se(new U),accessibilityPageSize:Se(new W(3,"accessibilityPageSize",10,1,1073741824,{description:r("accessibilityPageSize","Controls the number of lines in the editor that can be read out by a screen reader. Warning: this has a performance implication for numbers larger than the default.")})),ariaLabel:Se(new B(4,"ariaLabel",r("editorViewAccessibleLabel","Editor content"))),autoClosingBrackets:Se(new H(5,"autoClosingBrackets","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",r("editor.autoClosingBrackets.languageDefined","Use language configurations to determine when to autoclose brackets."),r("editor.autoClosingBrackets.beforeWhitespace","Autoclose brackets only when the cursor is to the left of whitespace."),""],description:r("autoClosingBrackets","Controls whether the editor should automatically close brackets after the user adds an opening bracket.")})),autoClosingOvertype:Se(new H(6,"autoClosingOvertype","auto",["always","auto","never"],{enumDescriptions:["",r("editor.autoClosingOvertype.auto","Type over closing quotes or brackets only if they were automatically inserted."),""],description:r("autoClosingOvertype","Controls whether the editor should type over closing quotes or brackets.")})),autoClosingQuotes:Se(new H(7,"autoClosingQuotes","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",r("editor.autoClosingQuotes.languageDefined","Use language configurations to determine when to autoclose quotes."),r("editor.autoClosingQuotes.beforeWhitespace","Autoclose quotes only when the cursor is to the left of whitespace."),""],description:r("autoClosingQuotes","Controls whether the editor should automatically close quotes after the user adds an opening quote.")})),autoIndent:Se(new z(8,"autoIndent",4,"full",["none","keep","brackets","advanced","full"],(function(e){switch(e){case"none":return 0;case"keep":return 1;case"brackets":return 2;case"advanced":return 3;case"full":return 4}}),{enumDescriptions:[r("editor.autoIndent.none","The editor will not insert indentation automatically."),r("editor.autoIndent.keep","The editor will keep the current line's indentation."),r("editor.autoIndent.brackets","The editor will keep the current line's indentation and honor language defined brackets."),r("editor.autoIndent.advanced","The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages."),r("editor.autoIndent.full","The editor will keep the current line's indentation, honor language defined brackets, invoke special onEnterRules defined by languages, and honor indentationRules defined by languages.")],description:r("autoIndent","Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.")})),automaticLayout:Se(new F(9,"automaticLayout",!1)),autoSurround:Se(new H(10,"autoSurround","languageDefined",["languageDefined","quotes","brackets","never"],{enumDescriptions:[r("editor.autoSurround.languageDefined","Use language configurations to determine when to automatically surround selections."),r("editor.autoSurround.quotes","Surround with quotes but not brackets."),r("editor.autoSurround.brackets","Surround with brackets but not quotes."),""],description:r("autoSurround","Controls whether the editor should automatically surround selections.")})),codeLens:Se(new F(11,"codeLens",!0,{description:r("codeLens","Controls whether the editor shows CodeLens.")})),colorDecorators:Se(new F(12,"colorDecorators",!0,{description:r("colorDecorators","Controls whether the editor should render the inline color decorators and color picker.")})),comments:Se(new K),contextmenu:Se(new F(14,"contextmenu",!0)),copyWithSyntaxHighlighting:Se(new F(15,"copyWithSyntaxHighlighting",!0,{description:r("copyWithSyntaxHighlighting","Controls whether syntax highlighting should be copied into the clipboard.")})),cursorBlinking:Se(new z(16,"cursorBlinking",1,"blink",["blink","smooth","phase","expand","solid"],(function(e){switch(e){case"blink":return 1;case"smooth":return 2;case"phase":return 3;case"expand":return 4;case"solid":return 5}}),{description:r("cursorBlinking","Control the cursor animation style.")})),cursorSmoothCaretAnimation:Se(new F(17,"cursorSmoothCaretAnimation",!1,{description:r("cursorSmoothCaretAnimation","Controls whether the smooth caret animation should be enabled.")})),cursorStyle:Se(new z(18,"cursorStyle",j.Line,"line",["line","block","underline","line-thin","block-outline","underline-thin"],(function(e){switch(e){case"line":return j.Line;case"block":return j.Block;case"underline":return j.Underline;case"line-thin":return j.LineThin;case"block-outline":return j.BlockOutline;case"underline-thin":return j.UnderlineThin}}),{description:r("cursorStyle","Controls the cursor style.")})),cursorSurroundingLines:Se(new W(19,"cursorSurroundingLines",0,0,1073741824,{description:r("cursorSurroundingLines","Controls the minimal number of visible leading and trailing lines surrounding the cursor. Known as 'scrollOff' or `scrollOffset` in some other editors.")})),cursorSurroundingLinesStyle:Se(new H(20,"cursorSurroundingLinesStyle","default",["default","all"],{enumDescriptions:[r("cursorSurroundingLinesStyle.default","`cursorSurroundingLines` is enforced only when triggered via the keyboard or API."),r("cursorSurroundingLinesStyle.all","`cursorSurroundingLines` is enforced always.")],description:r("cursorSurroundingLinesStyle","Controls when `cursorSurroundingLines` should be enforced.")})),cursorWidth:Se(new W(21,"cursorWidth",0,0,1073741824,{markdownDescription:r("cursorWidth","Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.")})),disableLayerHinting:Se(new F(22,"disableLayerHinting",!1)),disableMonospaceOptimizations:Se(new F(23,"disableMonospaceOptimizations",!1)),dragAndDrop:Se(new F(24,"dragAndDrop",!0,{description:r("dragAndDrop","Controls whether the editor should allow moving selections via drag and drop.")})),emptySelectionClipboard:Se(new G),extraEditorClassName:Se(new B(26,"extraEditorClassName","")),fastScrollSensitivity:Se(new V(27,"fastScrollSensitivity",5,(function(e){return e<=0?5:e}),{markdownDescription:r("fastScrollSensitivity","Scrolling speed multiplier when pressing `Alt`.")})),find:Se(new Z),fixedOverflowWidgets:Se(new F(29,"fixedOverflowWidgets",!1)),folding:Se(new F(30,"folding",!0,{description:r("folding","Controls whether the editor has code folding enabled.")})),foldingStrategy:Se(new H(31,"foldingStrategy","auto",["auto","indentation"],{markdownDescription:r("foldingStrategy","Controls the strategy for computing folding ranges. `auto` uses a language specific folding strategy, if available. `indentation` uses the indentation based folding strategy.")})),foldingHighlight:Se(new F(32,"foldingHighlight",!0,{description:r("foldingHighlight","Controls whether the editor should highlight folded ranges.")})),fontFamily:Se(new B(33,"fontFamily",ge.fontFamily,{description:r("fontFamily","Controls the font family.")})),fontInfo:Se(new X),fontLigatures2:Se(new Y),fontSize:Se(new $),fontWeight:Se(new B(37,"fontWeight",ge.fontWeight,{enum:["normal","bold","100","200","300","400","500","600","700","800","900"],description:r("fontWeight","Controls the font weight.")})),formatOnPaste:Se(new F(38,"formatOnPaste",!1,{description:r("formatOnPaste","Controls whether the editor should automatically format the pasted content. A formatter must be available and the formatter should be able to format a range in a document.")})),formatOnType:Se(new F(39,"formatOnType",!1,{description:r("formatOnType","Controls whether the editor should automatically format the line after typing.")})),glyphMargin:Se(new F(40,"glyphMargin",!0,{description:r("glyphMargin","Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.")})),gotoLocation:Se(new Q),hideCursorInOverviewRuler:Se(new F(42,"hideCursorInOverviewRuler",!1,{description:r("hideCursorInOverviewRuler","Controls whether the cursor should be hidden in the overview ruler.")})),highlightActiveIndentGuide:Se(new F(43,"highlightActiveIndentGuide",!0,{description:r("highlightActiveIndentGuide","Controls whether the editor should highlight the active indent guide.")})),hover:Se(new J),inDiffEditor:Se(new F(45,"inDiffEditor",!1)),letterSpacing:Se(new V(46,"letterSpacing",ge.letterSpacing,(function(e){return V.clamp(e,-5,20)}),{description:r("letterSpacing","Controls the letter spacing in pixels.")})),lightbulb:Se(new te),lineDecorationsWidth:Se(new A(48,"lineDecorationsWidth",10)),lineHeight:Se(new ne),lineNumbers:Se(new ae),lineNumbersMinChars:Se(new W(51,"lineNumbersMinChars",5,1,300)),links:Se(new F(52,"links",!0,{description:r("links","Controls whether the editor should detect links and make them clickable.")})),matchBrackets:Se(new H(53,"matchBrackets","always",["always","near","never"],{description:r("matchBrackets","Highlight matching brackets.")})),minimap:Se(new ie),mouseStyle:Se(new H(55,"mouseStyle","text",["text","default","copy"])),mouseWheelScrollSensitivity:Se(new V(56,"mouseWheelScrollSensitivity",1,(function(e){return 0===e?1:e}),{markdownDescription:r("mouseWheelScrollSensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")})),mouseWheelZoom:Se(new F(57,"mouseWheelZoom",!1,{markdownDescription:r("mouseWheelZoom","Zoom the font of the editor when using mouse wheel and holding `Ctrl`.")})),multiCursorMergeOverlapping:Se(new F(58,"multiCursorMergeOverlapping",!0,{description:r("multiCursorMergeOverlapping","Merge multiple cursors when they are overlapping.")})),multiCursorModifier:Se(new z(59,"multiCursorModifier","altKey","alt",["ctrlCmd","alt"],(function(e){return"ctrlCmd"===e?_?"metaKey":"ctrlKey":"altKey"}),{markdownEnumDescriptions:[r("multiCursorModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),r("multiCursorModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],markdownDescription:r({key:"multiCursorModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add multiple cursors with the mouse. The Go To Definition and Open Link mouse gestures will adapt such that they do not conflict with the multicursor modifier. [Read more](https://code.visualstudio.com/docs/editor/codebasics#_multicursor-modifier).")})),multiCursorPaste:Se(new H(60,"multiCursorPaste","spread",["spread","full"],{markdownEnumDescriptions:[r("multiCursorPaste.spread","Each cursor pastes a single line of the text."),r("multiCursorPaste.full","Each cursor pastes the full text.")],markdownDescription:r("multiCursorPaste","Controls pasting when the line count of the pasted text matches the cursor count.")})),occurrencesHighlight:Se(new F(61,"occurrencesHighlight",!0,{description:r("occurrencesHighlight","Controls whether the editor should highlight semantic symbol occurrences.")})),overviewRulerBorder:Se(new F(62,"overviewRulerBorder",!0,{description:r("overviewRulerBorder","Controls whether a border should be drawn around the overview ruler.")})),overviewRulerLanes:Se(new W(63,"overviewRulerLanes",3,0,3)),parameterHints:Se(new oe),peekWidgetDefaultFocus:Se(new H(65,"peekWidgetDefaultFocus","tree",["tree","editor"],{enumDescriptions:[r("peekWidgetDefaultFocus.tree","Focus the tree when opening peek"),r("peekWidgetDefaultFocus.editor","Focus the editor when opening peek")],description:r("peekWidgetDefaultFocus","Controls whether to focus the inline editor or the tree in the peek widget.")})),quickSuggestions:Se(new se),quickSuggestionsDelay:Se(new W(67,"quickSuggestionsDelay",10,0,1073741824,{description:r("quickSuggestionsDelay","Controls the delay in milliseconds after which quick suggestions will show up.")})),readOnly:Se(new F(68,"readOnly",!1)),renderControlCharacters:Se(new F(69,"renderControlCharacters",!1,{description:r("renderControlCharacters","Controls whether the editor should render control characters.")})),renderIndentGuides:Se(new F(70,"renderIndentGuides",!0,{description:r("renderIndentGuides","Controls whether the editor should render indent guides.")})),renderFinalNewline:Se(new F(71,"renderFinalNewline",!0,{description:r("renderFinalNewline","Render last line number when the file ends with a newline.")})),renderLineHighlight:Se(new H(72,"renderLineHighlight","line",["none","gutter","line","all"],{enumDescriptions:["","","",r("renderLineHighlight.all","Highlights both the gutter and the current line.")],description:r("renderLineHighlight","Controls how the editor should render the current line highlight.")})),renderValidationDecorations:Se(new H(73,"renderValidationDecorations","editable",["editable","on","off"])),renderWhitespace:Se(new H(74,"renderWhitespace","none",["none","boundary","selection","all"],{enumDescriptions:["",r("renderWhitespace.boundary","Render whitespace characters except for single spaces between words."),r("renderWhitespace.selection","Render whitespace characters only on selected text."),""],description:r("renderWhitespace","Controls how the editor should render whitespace characters.")})),revealHorizontalRightPadding:Se(new W(75,"revealHorizontalRightPadding",30,0,1e3)),roundedSelection:Se(new F(76,"roundedSelection",!0,{description:r("roundedSelection","Controls whether selections should have rounded corners.")})),rulers:Se(new le),scrollbar:Se(new de),scrollBeyondLastColumn:Se(new W(79,"scrollBeyondLastColumn",5,0,1073741824,{description:r("scrollBeyondLastColumn","Controls the number of extra characters beyond which the editor will scroll horizontally.")})),scrollBeyondLastLine:Se(new F(80,"scrollBeyondLastLine",!0,{description:r("scrollBeyondLastLine","Controls whether the editor will scroll beyond the last line.")})),selectionClipboard:Se(new F(81,"selectionClipboard",!0,{description:r("selectionClipboard","Controls whether the Linux primary clipboard should be supported."),included:y})),selectionHighlight:Se(new F(82,"selectionHighlight",!0,{description:r("selectionHighlight","Controls whether the editor should highlight matches similar to the selection.")})),selectOnLineNumbers:Se(new F(83,"selectOnLineNumbers",!0)),showFoldingControls:Se(new H(84,"showFoldingControls","mouseover",["always","mouseover"],{description:r("showFoldingControls","Controls whether the fold controls on the gutter are automatically hidden.")})),showUnused:Se(new F(85,"showUnused",!0,{description:r("showUnused","Controls fading out of unused code.")})),snippetSuggestions:Se(new H(86,"snippetSuggestions","inline",["top","bottom","inline","none"],{enumDescriptions:[r("snippetSuggestions.top","Show snippet suggestions on top of other suggestions."),r("snippetSuggestions.bottom","Show snippet suggestions below other suggestions."),r("snippetSuggestions.inline","Show snippets suggestions with other suggestions."),r("snippetSuggestions.none","Do not show snippet suggestions.")],description:r("snippetSuggestions","Controls whether snippets are shown with other suggestions and how they are sorted.")})),smoothScrolling:Se(new F(87,"smoothScrolling",!1,{description:r("smoothScrolling","Controls whether the editor will scroll using an animation.")})),stopRenderingLineAfter:Se(new W(88,"stopRenderingLineAfter",1e4,-1,1073741824)),suggest:Se(new he),suggestFontSize:Se(new W(90,"suggestFontSize",0,0,1e3,{markdownDescription:r("suggestFontSize","Font size for the suggest widget. When set to `0`, the value of `#editor.fontSize#` is used.")})),suggestLineHeight:Se(new W(91,"suggestLineHeight",0,0,1e3,{markdownDescription:r("suggestLineHeight","Line height for the suggest widget. When set to `0`, the value of `#editor.lineHeight#` is used.")})),suggestOnTriggerCharacters:Se(new F(92,"suggestOnTriggerCharacters",!0,{description:r("suggestOnTriggerCharacters","Controls whether suggestions should automatically show up when typing trigger characters.")})),suggestSelection:Se(new H(93,"suggestSelection","recentlyUsed",["first","recentlyUsed","recentlyUsedByPrefix"],{markdownEnumDescriptions:[r("suggestSelection.first","Always select the first suggestion."),r("suggestSelection.recentlyUsed","Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently."),r("suggestSelection.recentlyUsedByPrefix","Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.")],description:r("suggestSelection","Controls how suggestions are pre-selected when showing the suggest list.")})),tabCompletion:Se(new H(94,"tabCompletion","off",["on","off","onlySnippets"],{enumDescriptions:[r("tabCompletion.on","Tab complete will insert the best matching suggestion when pressing tab."),r("tabCompletion.off","Disable tab completions."),r("tabCompletion.onlySnippets","Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.")],description:r("tabCompletion","Enables tab completions.")})),useTabStops:Se(new F(95,"useTabStops",!0,{description:r("useTabStops","Inserting and deleting whitespace follows tab stops.")})),wordSeparators:Se(new B(96,"wordSeparators","`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?",{description:r("wordSeparators","Characters that will be used as word separators when doing word related navigations or operations.")})),wordWrap:Se(new H(97,"wordWrap","off",["off","on","wordWrapColumn","bounded"],{markdownEnumDescriptions:[r("wordWrap.off","Lines will never wrap."),r("wordWrap.on","Lines will wrap at the viewport width."),r({key:"wordWrap.wordWrapColumn",comment:["- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at `#editor.wordWrapColumn#`."),r({key:"wordWrap.bounded",comment:["- viewport means the edge of the visible window size.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at the minimum of viewport and `#editor.wordWrapColumn#`.")],description:r({key:"wordWrap",comment:["- 'off', 'on', 'wordWrapColumn' and 'bounded' refer to values the setting can take and should not be localized.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Controls how lines should wrap.")})),wordWrapBreakAfterCharacters:Se(new B(98,"wordWrapBreakAfterCharacters"," \t})]?|/&.,;¢°′″‰℃、。。、¢,.:;?!%・・ゝゞヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ァィゥェォャュョッー”〉》」』】〕)]}」")),wordWrapBreakBeforeCharacters:Se(new B(99,"wordWrapBreakBeforeCharacters","([{‘“〈《「『【〔([{「£¥$£¥++")),wordWrapColumn:Se(new W(100,"wordWrapColumn",80,1,1073741824,{markdownDescription:r({key:"wordWrapColumn",comment:["- `editor.wordWrap` refers to a different setting and should not be localized.","- 'wordWrapColumn' and 'bounded' refer to values the different setting can take and should not be localized."]},"Controls the wrapping column of the editor when `#editor.wordWrap#` is `wordWrapColumn` or `bounded`.")})),wordWrapMinified:Se(new F(101,"wordWrapMinified",!0)),wrappingIndent:Se(new z(102,"wrappingIndent",1,"same",["none","same","indent","deepIndent"],(function(e){switch(e){case"none":return 0;case"same":return 1;case"indent":return 2;case"deepIndent":return 3}}),{enumDescriptions:[r("wrappingIndent.none","No indentation. Wrapped lines begin at column 1."),r("wrappingIndent.same","Wrapped lines get the same indentation as the parent."),r("wrappingIndent.indent","Wrapped lines get +1 indentation toward the parent."),r("wrappingIndent.deepIndent","Wrapped lines get +2 indentation toward the parent.")],description:r("wrappingIndent","Controls the indentation of wrapped lines.")})),wrappingStrategy:Se(new H(103,"wrappingStrategy","simple",["simple","advanced"],{enumDescriptions:[r("wrappingStrategy.simple","Assumes that all characters are of the same width. This is a fast algorithm that works correctly for monospace fonts and certain scripts (like Latin characters) where glyphs are of equal width."),r("wrappingStrategy.advanced","Delegates wrapping points computation to the browser. This is a slow algorithm, that might cause freezes for large files, but it works correctly in all cases.")],description:r("wrappingStrategy","Controls the algorithm that computes wrapping points.")})),editorClassName:Se(new q),pixelRatio:Se(new re),tabFocusMode:Se(new pe),layoutInfo:Se(new ee),wrappingInfo:Se(new fe)},xe=(n(369),new(function(){function e(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout((function(){if(e.stack)throw new Error(e.message+"\n\n"+e.stack);throw e}),0)}}return e.prototype.emit=function(e){this.listeners.forEach((function(t){t(e)}))},e.prototype.onUnexpectedError=function(e){this.unexpectedErrorHandler(e),this.emit(e)},e.prototype.onUnexpectedExternalError=function(e){this.unexpectedErrorHandler(e)},e}()));function De(e){Ee(e)||xe.onUnexpectedError(e)}function Ne(e){Ee(e)||xe.onUnexpectedExternalError(e)}function ke(e){return e instanceof Error?{$isError:!0,name:e.name,message:e.message,stack:e.stacktrace||e.stack}:e}function Ee(e){return e instanceof Error&&"Canceled"===e.name&&"Canceled"===e.message}function Ie(){var e=new Error("Canceled");return e.name=e.message,e}function Oe(e){return e?new Error("Illegal argument: "+e):new Error("Illegal argument")}function Me(e){return e?new Error("Illegal state: "+e):new Error("Illegal state")}function Te(e){var t,n=this,i=!1;return function(){return i?t:(i=!0,t=e.apply(n,arguments))}}function Pe(e){}function Re(e){return"function"==typeof e.dispose&&0===e.dispose.length}function Ae(e){return Array.isArray(e)?(e.forEach((function(e){e&&e.dispose()})),[]):e?(e.dispose(),e):void 0}function Fe(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return e.forEach(Pe),{dispose:function(){return Ae(e)}}}function We(e){var t={dispose:function(){e()}};return t}var Ve,Be=function(){function e(){this._toDispose=new Set,this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed||(this._isDisposed=!0,this.clear())},e.prototype.clear=function(){this._toDispose.forEach((function(e){return e.dispose()})),this._toDispose.clear()},e.prototype.add=function(e){if(!e)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(e),e},e}(),He=function(){function e(){this._store=new Be}return e.prototype.dispose=function(){this._store.dispose()},e.prototype._register=function(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)},e.None=Object.freeze({dispose:function(){}}),e}(),ze=function(){function e(){this._isDisposed=!1}return Object.defineProperty(e.prototype,"value",{get:function(){return this._isDisposed?void 0:this._value},set:function(e){this._isDisposed||e===this._value||(this._value&&this._value.dispose(),this._value=e)},enumerable:!0,configurable:!0}),e.prototype.clear=function(){this.value=void 0},e.prototype.dispose=function(){this._isDisposed=!0,this._value&&this._value.dispose(),this._value=void 0},e}(),je=function(){function e(e){this.object=e}return e.prototype.dispose=function(){},e}(),Ue=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Ke={done:!0,value:void 0};!function(e){var t={next:function(){return Ke}};e.empty=function(){return t},e.single=function(e){var t=!1;return{next:function(){return t?Ke:(t=!0,{done:!1,value:e})}}},e.fromArray=function(e,t,n){return void 0===t&&(t=0),void 0===n&&(n=e.length),{next:function(){return t>=n?Ke:{done:!1,value:e[t++]}}}},e.fromNativeIterator=function(e){return{next:function(){var t=e.next();return t.done?Ke:{done:!1,value:t.value}}}},e.from=function(t){return t?Array.isArray(t)?e.fromArray(t):t:e.empty()},e.map=function(e,t){return{next:function(){var n=e.next();return n.done?Ke:{done:!1,value:t(n.value)}}}},e.filter=function(e,t){return{next:function(){for(;;){var n=e.next();if(n.done)return Ke;if(t(n.value))return{done:!1,value:n.value}}}}},e.forEach=function(e,t){for(var n=e.next();!n.done;n=e.next())t(n.value)},e.collect=function(e,t){void 0===t&&(t=Number.POSITIVE_INFINITY);var n=[];if(0===t)return n;for(var i=0,o=e.next();!o.done&&(n.push(o.value),!(++i>=t));o=e.next());return n},e.concat=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=0;return{next:function(){if(n>=e.length)return Ke;var t=e[n].next();return t.done?(n++,this.next()):t}}},e.chain=function(e){return new qe(e)}}(Ve||(Ve={}));var qe=function(){function e(e){this.it=e}return e.prototype.next=function(){return this.it.next()},e}();var Ge,Ze=function(){function e(e,t,n,i){void 0===t&&(t=0),void 0===n&&(n=e.length),void 0===i&&(i=t-1),this.items=e,this.start=t,this.end=n,this.index=i}return e.prototype.first=function(){return this.index=this.start,this.current()},e.prototype.next=function(){return this.index=Math.min(this.index+1,this.end),this.current()},e.prototype.current=function(){return this.index===this.start-1||this.index===this.end?null:this.items[this.index]},e}(),Ye=function(e){function t(t,n,i,o){return void 0===n&&(n=0),void 0===i&&(i=t.length),void 0===o&&(o=n-1),e.call(this,t,n,i,o)||this}return Ue(t,e),t.prototype.current=function(){return e.prototype.current.call(this)},t.prototype.previous=function(){return this.index=Math.max(this.index-1,this.start-1),this.current()},t.prototype.first=function(){return this.index=this.start,this.current()},t.prototype.last=function(){return this.index=this.end-1,this.current()},t.prototype.parent=function(){return null},t}(Ze),Xe=function(){function e(e,t){this.iterator=e,this.fn=t}return e.prototype.next=function(){return this.fn(this.iterator.next())},e}(),$e=function(){function e(t){this.element=t,this.next=e.Undefined,this.prev=e.Undefined}return e.Undefined=new e(void 0),e}(),Qe=function(){function e(){this._first=$e.Undefined,this._last=$e.Undefined,this._size=0}return Object.defineProperty(e.prototype,"size",{get:function(){return this._size},enumerable:!0,configurable:!0}),e.prototype.isEmpty=function(){return this._first===$e.Undefined},e.prototype.clear=function(){this._first=$e.Undefined,this._last=$e.Undefined,this._size=0},e.prototype.unshift=function(e){return this._insert(e,!1)},e.prototype.push=function(e){return this._insert(e,!0)},e.prototype._insert=function(e,t){var n=this,i=new $e(e);if(this._first===$e.Undefined)this._first=i,this._last=i;else if(t){var o=this._last;this._last=i,i.prev=o,o.next=i}else{var r=this._first;this._first=i,i.next=r,r.prev=i}this._size+=1;var s=!1;return function(){s||(s=!0,n._remove(i))}},e.prototype.shift=function(){if(this._first!==$e.Undefined){var e=this._first.element;return this._remove(this._first),e}},e.prototype.pop=function(){if(this._last!==$e.Undefined){var e=this._last.element;return this._remove(this._last),e}},e.prototype._remove=function(e){if(e.prev!==$e.Undefined&&e.next!==$e.Undefined){var t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===$e.Undefined&&e.next===$e.Undefined?(this._first=$e.Undefined,this._last=$e.Undefined):e.next===$e.Undefined?(this._last=this._last.prev,this._last.next=$e.Undefined):e.prev===$e.Undefined&&(this._first=this._first.next,this._first.prev=$e.Undefined);this._size-=1},e.prototype.iterator=function(){var e,t=this._first;return{next:function(){return t===$e.Undefined?Ke:(e?e.value=t.element:e={done:!1,value:t.element},t=t.next,e)}}},e.prototype.toArray=function(){for(var e=[],t=this._first;t!==$e.Undefined;t=t.next)e.push(t.element);return e},e}(),Je=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();!function(e){function t(e){return function(t,n,i){void 0===n&&(n=null);var o,r=!1;return o=e((function(e){if(!r)return o?o.dispose():r=!0,t.call(n,e)}),null,i),r&&o.dispose(),o}}function n(e,t){return s((function(n,i,o){return void 0===i&&(i=null),e((function(e){return n.call(i,t(e))}),null,o)}))}function i(e,t){return s((function(n,i,o){return void 0===i&&(i=null),e((function(e){t(e),n.call(i,e)}),null,o)}))}function o(e,t){return s((function(n,i,o){return void 0===i&&(i=null),e((function(e){return t(e)&&n.call(i,e)}),null,o)}))}function r(e,t,i){var o=i;return n(e,(function(e){return o=t(o,e)}))}function s(e){var t,n=new nt({onFirstListenerAdd:function(){t=e(n.fire,n)},onLastListenerRemove:function(){t.dispose()}});return n.event}function a(e,t,n,i,o){var r;void 0===n&&(n=100),void 0===i&&(i=!1);var s=void 0,a=void 0,u=0,l=new nt({leakWarningThreshold:o,onFirstListenerAdd:function(){r=e((function(e){u++,s=t(s,e),i&&!a&&(l.fire(s),s=void 0),clearTimeout(a),a=setTimeout((function(){var e=s;s=void 0,a=void 0,(!i||u>1)&&l.fire(e),u=0}),n)}))},onLastListenerRemove:function(){r.dispose()}});return l.event}function u(e){var t,n=!0;return o(e,(function(e){var i=n||e!==t;return n=!1,t=e,i}))}e.None=function(){return He.None},e.once=t,e.map=n,e.forEach=i,e.filter=o,e.signal=function(e){return e},e.any=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(t,n,i){return void 0===n&&(n=null),Fe.apply(void 0,e.map((function(e){return e((function(e){return t.call(n,e)}),null,i)})))}},e.reduce=r,e.snapshot=s,e.debounce=a,e.stopwatch=function(e){var i=(new Date).getTime();return n(t(e),(function(e){return(new Date).getTime()-i}))},e.latch=u,e.buffer=function(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=[]);var i=n.slice(),o=e((function(e){i?i.push(e):s.fire(e)})),r=function(){i&&i.forEach((function(e){return s.fire(e)})),i=null},s=new nt({onFirstListenerAdd:function(){o||(o=e((function(e){return s.fire(e)})))},onFirstListenerDidAdd:function(){i&&(t?setTimeout(r):r())},onLastListenerRemove:function(){o&&o.dispose(),o=null}});return s.event};var l=function(){function e(e){this.event=e}return e.prototype.map=function(t){return new e(n(this.event,t))},e.prototype.forEach=function(t){return new e(i(this.event,t))},e.prototype.filter=function(t){return new e(o(this.event,t))},e.prototype.reduce=function(t,n){return new e(r(this.event,t,n))},e.prototype.latch=function(){return new e(u(this.event))},e.prototype.debounce=function(t,n,i,o){return void 0===n&&(n=100),void 0===i&&(i=!1),new e(a(this.event,t,n,i,o))},e.prototype.on=function(e,t,n){return this.event(e,t,n)},e.prototype.once=function(e,n,i){return t(this.event)(e,n,i)},e}();e.chain=function(e){return new l(e)},e.fromNodeEventEmitter=function(e,t,n){void 0===n&&(n=function(e){return e});var i=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return o.fire(n.apply(void 0,e))},o=new nt({onFirstListenerAdd:function(){return e.on(t,i)},onLastListenerRemove:function(){return e.removeListener(t,i)}});return o.event},e.fromDOMEventEmitter=function(e,t,n){void 0===n&&(n=function(e){return e});var i=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return o.fire(n.apply(void 0,e))},o=new nt({onFirstListenerAdd:function(){return e.addEventListener(t,i)},onLastListenerRemove:function(){return e.removeEventListener(t,i)}});return o.event},e.fromPromise=function(e){var t=new nt,n=!1;return e.then(void 0,(function(){return null})).then((function(){n?t.fire(void 0):setTimeout((function(){return t.fire(void 0)}),0)})),n=!0,t.event},e.toPromise=function(e){return new Promise((function(n){return t(e)(n)}))}}(Ge||(Ge={}));!function(){function e(e,t){void 0===t&&(t=Math.random().toString(18).slice(2,5)),this.customThreshold=e,this.name=t,this._warnCountdown=0}e.prototype.dispose=function(){this._stacks&&this._stacks.clear()},e.prototype.check=function(e){var t=this,n=-1;if("number"==typeof this.customThreshold&&(n=this.customThreshold),!(n<=0||e<n)){this._stacks||(this._stacks=new Map);var i=(new Error).stack.split("\n").slice(3).join("\n"),o=this._stacks.get(i)||0;if(this._stacks.set(i,o+1),this._warnCountdown-=1,this._warnCountdown<=0){var r;this._warnCountdown=.5*n;var s=0;this._stacks.forEach((function(e,t){(!r||s<e)&&(r=t,s=e)})),console.warn("["+this.name+"] potential listener LEAK detected, having "+e+" listeners already. MOST frequent listener ("+s+"):"),console.warn(r)}return function(){var e=t._stacks.get(i)||0;t._stacks.set(i,e-1)}}}}();var et,tt,nt=function(){function e(e){this._disposed=!1,this._options=e,this._leakageMon=void 0}return Object.defineProperty(e.prototype,"event",{get:function(){var t=this;return this._event||(this._event=function(n,i,o){t._listeners||(t._listeners=new Qe);var r=t._listeners.isEmpty();r&&t._options&&t._options.onFirstListenerAdd&&t._options.onFirstListenerAdd(t);var s,a,u=t._listeners.push(i?[n,i]:n);return r&&t._options&&t._options.onFirstListenerDidAdd&&t._options.onFirstListenerDidAdd(t),t._options&&t._options.onListenerDidAdd&&t._options.onListenerDidAdd(t,n,i),t._leakageMon&&(s=t._leakageMon.check(t._listeners.size)),a={dispose:function(){(s&&s(),a.dispose=e._noop,t._disposed)||(u(),t._options&&t._options.onLastListenerRemove&&(t._listeners&&!t._listeners.isEmpty()||t._options.onLastListenerRemove(t)))}},o instanceof Be?o.add(a):Array.isArray(o)&&o.push(a),a}),this._event},enumerable:!0,configurable:!0}),e.prototype.fire=function(e){if(this._listeners){this._deliveryQueue||(this._deliveryQueue=new Qe);for(var t=this._listeners.iterator(),n=t.next();!n.done;n=t.next())this._deliveryQueue.push([n.value,e]);for(;this._deliveryQueue.size>0;){var i=this._deliveryQueue.shift(),o=i[0],r=i[1];try{"function"==typeof o?o.call(void 0,r):o[0].call(o[1],r)}catch(n){De(n)}}}},e.prototype.dispose=function(){this._listeners&&this._listeners.clear(),this._deliveryQueue&&this._deliveryQueue.clear(),this._leakageMon&&this._leakageMon.dispose(),this._disposed=!0},e._noop=function(){},e}(),it=function(e){function t(t){var n=e.call(this,t)||this;return n._isPaused=0,n._eventQueue=new Qe,n._mergeFn=t&&t.merge,n}return Je(t,e),t.prototype.pause=function(){this._isPaused++},t.prototype.resume=function(){if(0!==this._isPaused&&0==--this._isPaused)if(this._mergeFn){var t=this._eventQueue.toArray();this._eventQueue.clear(),e.prototype.fire.call(this,this._mergeFn(t))}else for(;!this._isPaused&&0!==this._eventQueue.size;)e.prototype.fire.call(this,this._eventQueue.shift())},t.prototype.fire=function(t){this._listeners&&(0!==this._isPaused?this._eventQueue.push(t):e.prototype.fire.call(this,t))},t}(nt),ot=function(){function e(){var e=this;this.hasListeners=!1,this.events=[],this.emitter=new nt({onFirstListenerAdd:function(){return e.onFirstListenerAdd()},onLastListenerRemove:function(){return e.onLastListenerRemove()}})}return Object.defineProperty(e.prototype,"event",{get:function(){return this.emitter.event},enumerable:!0,configurable:!0}),e.prototype.add=function(e){var t=this,n={event:e,listener:null};this.events.push(n),this.hasListeners&&this.hook(n);return We(Te((function(){t.hasListeners&&t.unhook(n);var e=t.events.indexOf(n);t.events.splice(e,1)})))},e.prototype.onFirstListenerAdd=function(){var e=this;this.hasListeners=!0,this.events.forEach((function(t){return e.hook(t)}))},e.prototype.onLastListenerRemove=function(){var e=this;this.hasListeners=!1,this.events.forEach((function(t){return e.unhook(t)}))},e.prototype.hook=function(e){var t=this;e.listener=e.event((function(e){return t.emitter.fire(e)}))},e.prototype.unhook=function(e){e.listener&&e.listener.dispose(),e.listener=null},e.prototype.dispose=function(){this.emitter.dispose()},e}(),rt=function(){function e(){this.buffers=[]}return e.prototype.wrapEvent=function(e){var t=this;return function(n,i,o){return e((function(e){var o=t.buffers[t.buffers.length-1];o?o.push((function(){return n.call(i,e)})):n.call(i,e)}),void 0,o)}},e.prototype.bufferEvents=function(e){var t=[];this.buffers.push(t);var n=e();return this.buffers.pop(),t.forEach((function(e){return e()})),n},e}(),st=function(){function e(){var e=this;this.listening=!1,this.inputEvent=Ge.None,this.inputEventListener=He.None,this.emitter=new nt({onFirstListenerDidAdd:function(){e.listening=!0,e.inputEventListener=e.inputEvent(e.emitter.fire,e.emitter)},onLastListenerRemove:function(){e.listening=!1,e.inputEventListener.dispose()}}),this.event=this.emitter.event}return Object.defineProperty(e.prototype,"input",{set:function(e){this.inputEvent=e,this.listening&&(this.inputEventListener.dispose(),this.inputEventListener=e(this.emitter.fire,this.emitter))},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){this.inputEventListener.dispose(),this.emitter.dispose()},e}(),at=Object.freeze((function(e,t){var n=setTimeout(e.bind(t),0);return{dispose:function(){clearTimeout(n)}}}));(tt=et||(et={})).isCancellationToken=function(e){return e===tt.None||e===tt.Cancelled||e instanceof lt||!(!e||"object"!=typeof e)&&"boolean"==typeof e.isCancellationRequested&&"function"==typeof e.onCancellationRequested},tt.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:Ge.None}),tt.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:at});var ut,lt=function(){function e(){this._isCancelled=!1,this._emitter=null}return e.prototype.cancel=function(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))},Object.defineProperty(e.prototype,"isCancellationRequested",{get:function(){return this._isCancelled},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onCancellationRequested",{get:function(){return this._isCancelled?at:(this._emitter||(this._emitter=new nt),this._emitter.event)},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){this._emitter&&(this._emitter.dispose(),this._emitter=null)},e}(),ct=function(){function e(e){this._token=void 0,this._parentListener=void 0,this._parentListener=e&&e.onCancellationRequested(this.cancel,this)}return Object.defineProperty(e.prototype,"token",{get:function(){return this._token||(this._token=new lt),this._token},enumerable:!0,configurable:!0}),e.prototype.cancel=function(){this._token?this._token instanceof lt&&this._token.cancel():this._token=et.Cancelled},e.prototype.dispose=function(e){void 0===e&&(e=!1),e&&this.cancel(),this._parentListener&&this._parentListener.dispose(),this._token?this._token instanceof lt&&this._token.dispose():this._token=et.None},e}(),dt=function(){function e(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}return e.prototype.define=function(e,t){this._keyCodeToStr[e]=t,this._strToKeyCode[t.toLowerCase()]=e},e.prototype.keyCodeToStr=function(e){return this._keyCodeToStr[e]},e.prototype.strToKeyCode=function(e){return this._strToKeyCode[e.toLowerCase()]||0},e}(),ht=new dt,pt=new dt,ft=new dt;function gt(e,t){return(e|(65535&t)<<16>>>0)>>>0}function mt(e,t){if(0===e)return null;var n=(65535&e)>>>0,i=(4294901760&e)>>>16;return new bt(0!==i?[vt(n,t),vt(i,t)]:[vt(n,t)])}function vt(e,t){var n=!!(2048&e),i=!!(256&e);return new yt(2===t?i:n,!!(1024&e),!!(512&e),2===t?n:i,255&e)}!function(){function e(e,t,n,i){void 0===n&&(n=t),void 0===i&&(i=n),ht.define(e,t),pt.define(e,n),ft.define(e,i)}e(0,"unknown"),e(1,"Backspace"),e(2,"Tab"),e(3,"Enter"),e(4,"Shift"),e(5,"Ctrl"),e(6,"Alt"),e(7,"PauseBreak"),e(8,"CapsLock"),e(9,"Escape"),e(10,"Space"),e(11,"PageUp"),e(12,"PageDown"),e(13,"End"),e(14,"Home"),e(15,"LeftArrow","Left"),e(16,"UpArrow","Up"),e(17,"RightArrow","Right"),e(18,"DownArrow","Down"),e(19,"Insert"),e(20,"Delete"),e(21,"0"),e(22,"1"),e(23,"2"),e(24,"3"),e(25,"4"),e(26,"5"),e(27,"6"),e(28,"7"),e(29,"8"),e(30,"9"),e(31,"A"),e(32,"B"),e(33,"C"),e(34,"D"),e(35,"E"),e(36,"F"),e(37,"G"),e(38,"H"),e(39,"I"),e(40,"J"),e(41,"K"),e(42,"L"),e(43,"M"),e(44,"N"),e(45,"O"),e(46,"P"),e(47,"Q"),e(48,"R"),e(49,"S"),e(50,"T"),e(51,"U"),e(52,"V"),e(53,"W"),e(54,"X"),e(55,"Y"),e(56,"Z"),e(57,"Meta"),e(58,"ContextMenu"),e(59,"F1"),e(60,"F2"),e(61,"F3"),e(62,"F4"),e(63,"F5"),e(64,"F6"),e(65,"F7"),e(66,"F8"),e(67,"F9"),e(68,"F10"),e(69,"F11"),e(70,"F12"),e(71,"F13"),e(72,"F14"),e(73,"F15"),e(74,"F16"),e(75,"F17"),e(76,"F18"),e(77,"F19"),e(78,"NumLock"),e(79,"ScrollLock"),e(80,";",";","OEM_1"),e(81,"=","=","OEM_PLUS"),e(82,",",",","OEM_COMMA"),e(83,"-","-","OEM_MINUS"),e(84,".",".","OEM_PERIOD"),e(85,"/","/","OEM_2"),e(86,"`","`","OEM_3"),e(110,"ABNT_C1"),e(111,"ABNT_C2"),e(87,"[","[","OEM_4"),e(88,"\\","\\","OEM_5"),e(89,"]","]","OEM_6"),e(90,"'","'","OEM_7"),e(91,"OEM_8"),e(92,"OEM_102"),e(93,"NumPad0"),e(94,"NumPad1"),e(95,"NumPad2"),e(96,"NumPad3"),e(97,"NumPad4"),e(98,"NumPad5"),e(99,"NumPad6"),e(100,"NumPad7"),e(101,"NumPad8"),e(102,"NumPad9"),e(103,"NumPad_Multiply"),e(104,"NumPad_Add"),e(105,"NumPad_Separator"),e(106,"NumPad_Subtract"),e(107,"NumPad_Decimal"),e(108,"NumPad_Divide")}(),function(e){e.toString=function(e){return ht.keyCodeToStr(e)},e.fromString=function(e){return ht.strToKeyCode(e)},e.toUserSettingsUS=function(e){return pt.keyCodeToStr(e)},e.toUserSettingsGeneral=function(e){return ft.keyCodeToStr(e)},e.fromUserSettings=function(e){return pt.strToKeyCode(e)||ft.strToKeyCode(e)}}(ut||(ut={}));var _t,yt=function(){function e(e,t,n,i,o){this.ctrlKey=e,this.shiftKey=t,this.altKey=n,this.metaKey=i,this.keyCode=o}return e.prototype.equals=function(e){return this.ctrlKey===e.ctrlKey&&this.shiftKey===e.shiftKey&&this.altKey===e.altKey&&this.metaKey===e.metaKey&&this.keyCode===e.keyCode},e.prototype.isModifierKey=function(){return 0===this.keyCode||5===this.keyCode||57===this.keyCode||6===this.keyCode||4===this.keyCode},e.prototype.toChord=function(){return new bt([this])},e.prototype.isDuplicateModifierCase=function(){return this.ctrlKey&&5===this.keyCode||this.shiftKey&&4===this.keyCode||this.altKey&&6===this.keyCode||this.metaKey&&57===this.keyCode},e}(),bt=function(){function e(e){if(0===e.length)throw Oe("parts");this.parts=e}return e.prototype.equals=function(e){if(null===e)return!1;if(this.parts.length!==e.parts.length)return!1;for(var t=0;t<this.parts.length;t++)if(!this.parts[t].equals(e.parts[t]))return!1;return!0},e}(),wt=function(e,t,n,i,o,r){this.ctrlKey=e,this.shiftKey=t,this.altKey=n,this.metaKey=i,this.keyLabel=o,this.keyAriaLabel=r},Ct=function(){},St=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Lt=/^\w[\w\d+.-]*$/,xt=/^\//,Dt=/^\/\//;var Nt="/",kt=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,Et=function(){function e(e,t,n,i,o,r){void 0===r&&(r=!1),"object"==typeof e?(this.scheme=e.scheme||"",this.authority=e.authority||"",this.path=e.path||"",this.query=e.query||"",this.fragment=e.fragment||""):(this.scheme=function(e,t){return e||t?e:"file"}(e,r),this.authority=t||"",this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==Nt&&(t=Nt+t):t=Nt}return t}(this.scheme,n||""),this.query=i||"",this.fragment=o||"",function(e,t){if(!e.scheme&&t)throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'+e.authority+'", path: "'+e.path+'", query: "'+e.query+'", fragment: "'+e.fragment+'"}');if(e.scheme&&!Lt.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!xt.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(Dt.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}(this,r))}return e.isUri=function(t){return t instanceof e||!!t&&("string"==typeof t.authority&&"string"==typeof t.fragment&&"string"==typeof t.path&&"string"==typeof t.query&&"string"==typeof t.scheme&&"function"==typeof t.fsPath&&"function"==typeof t.with&&"function"==typeof t.toString)},Object.defineProperty(e.prototype,"fsPath",{get:function(){return Rt(this)},enumerable:!0,configurable:!0}),e.prototype.with=function(e){if(!e)return this;var t=e.scheme,n=e.authority,i=e.path,o=e.query,r=e.fragment;return void 0===t?t=this.scheme:null===t&&(t=""),void 0===n?n=this.authority:null===n&&(n=""),void 0===i?i=this.path:null===i&&(i=""),void 0===o?o=this.query:null===o&&(o=""),void 0===r?r=this.fragment:null===r&&(r=""),t===this.scheme&&n===this.authority&&i===this.path&&o===this.query&&r===this.fragment?this:new Ot(t,n,i,o,r)},e.parse=function(e,t){void 0===t&&(t=!1);var n=kt.exec(e);return n?new Ot(n[2]||"",Wt(n[4]||""),Wt(n[5]||""),Wt(n[7]||""),Wt(n[9]||""),t):new Ot("","","","","")},e.file=function(e){var t="";if(v&&(e=e.replace(/\\/g,Nt)),e[0]===Nt&&e[1]===Nt){var n=e.indexOf(Nt,2);-1===n?(t=e.substring(2),e=Nt):(t=e.substring(2,n),e=e.substring(n)||Nt)}return new Ot("file",t,e,"","")},e.from=function(e){return new Ot(e.scheme,e.authority,e.path,e.query,e.fragment)},e.prototype.toString=function(e){return void 0===e&&(e=!1),At(this,e)},e.prototype.toJSON=function(){return this},e.revive=function(t){if(t){if(t instanceof e)return t;var n=new Ot(t);return n._formatted=t.external,n._fsPath=t._sep===It?t.fsPath:null,n}return t},e}(),It=v?1:void 0,Ot=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._formatted=null,t._fsPath=null,t}return St(t,e),Object.defineProperty(t.prototype,"fsPath",{get:function(){return this._fsPath||(this._fsPath=Rt(this)),this._fsPath},enumerable:!0,configurable:!0}),t.prototype.toString=function(e){return void 0===e&&(e=!1),e?At(this,!0):(this._formatted||(this._formatted=At(this,!1)),this._formatted)},t.prototype.toJSON=function(){var e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=It),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e},t}(Et),Mt=((_t={})[58]="%3A",_t[47]="%2F",_t[63]="%3F",_t[35]="%23",_t[91]="%5B",_t[93]="%5D",_t[64]="%40",_t[33]="%21",_t[36]="%24",_t[38]="%26",_t[39]="%27",_t[40]="%28",_t[41]="%29",_t[42]="%2A",_t[43]="%2B",_t[44]="%2C",_t[59]="%3B",_t[61]="%3D",_t[32]="%20",_t);function Tt(e,t){for(var n=void 0,i=-1,o=0;o<e.length;o++){var r=e.charCodeAt(o);if(r>=97&&r<=122||r>=65&&r<=90||r>=48&&r<=57||45===r||46===r||95===r||126===r||t&&47===r)-1!==i&&(n+=encodeURIComponent(e.substring(i,o)),i=-1),void 0!==n&&(n+=e.charAt(o));else{void 0===n&&(n=e.substr(0,o));var s=Mt[r];void 0!==s?(-1!==i&&(n+=encodeURIComponent(e.substring(i,o)),i=-1),n+=s):-1===i&&(i=o)}}return-1!==i&&(n+=encodeURIComponent(e.substring(i))),void 0!==n?n:e}function Pt(e){for(var t=void 0,n=0;n<e.length;n++){var i=e.charCodeAt(n);35===i||63===i?(void 0===t&&(t=e.substr(0,n)),t+=Mt[i]):void 0!==t&&(t+=e[n])}return void 0!==t?t:e}function Rt(e){var t;return t=e.authority&&e.path.length>1&&"file"===e.scheme?"//"+e.authority+e.path:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?e.path[1].toLowerCase()+e.path.substr(2):e.path,v&&(t=t.replace(/\//g,"\\")),t}function At(e,t){var n=t?Pt:Tt,i="",o=e.scheme,r=e.authority,s=e.path,a=e.query,u=e.fragment;if(o&&(i+=o,i+=":"),(r||"file"===o)&&(i+=Nt,i+=Nt),r){var l=r.indexOf("@");if(-1!==l){var c=r.substr(0,l);r=r.substr(l+1),-1===(l=c.indexOf(":"))?i+=n(c,!1):(i+=n(c.substr(0,l),!1),i+=":",i+=n(c.substr(l+1),!1)),i+="@"}-1===(l=(r=r.toLowerCase()).indexOf(":"))?i+=n(r,!1):(i+=n(r.substr(0,l),!1),i+=r.substr(l))}if(s){if(s.length>=3&&47===s.charCodeAt(0)&&58===s.charCodeAt(2))(d=s.charCodeAt(1))>=65&&d<=90&&(s="/"+String.fromCharCode(d+32)+":"+s.substr(3));else if(s.length>=2&&58===s.charCodeAt(1)){var d;(d=s.charCodeAt(0))>=65&&d<=90&&(s=String.fromCharCode(d+32)+":"+s.substr(2))}i+=n(s,!0)}return a&&(i+="?",i+=n(a,!1)),u&&(i+="#",i+=t?u:Tt(u,!1)),i}var Ft=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function Wt(e){return e.match(Ft)?e.replace(Ft,(function(e){return function e(t){try{return decodeURIComponent(t)}catch(n){return t.length>3?t.substr(0,3)+e(t.substr(3)):t}}(e)})):e}var Vt,Bt,Ht,zt,jt,Ut,Kt,qt,Gt,Zt,Yt,Xt,$t,Qt,Jt,en,tn,nn,on,rn,sn,an,un,ln,cn,dn,hn,pn,fn,gn,mn,vn,_n,yn,bn=function(){function e(e,t){this.lineNumber=e,this.column=t}return e.prototype.with=function(t,n){return void 0===t&&(t=this.lineNumber),void 0===n&&(n=this.column),t===this.lineNumber&&n===this.column?this:new e(t,n)},e.prototype.delta=function(e,t){return void 0===e&&(e=0),void 0===t&&(t=0),this.with(this.lineNumber+e,this.column+t)},e.prototype.equals=function(t){return e.equals(this,t)},e.equals=function(e,t){return!e&&!t||!!e&&!!t&&e.lineNumber===t.lineNumber&&e.column===t.column},e.prototype.isBefore=function(t){return e.isBefore(this,t)},e.isBefore=function(e,t){return e.lineNumber<t.lineNumber||!(t.lineNumber<e.lineNumber)&&e.column<t.column},e.prototype.isBeforeOrEqual=function(t){return e.isBeforeOrEqual(this,t)},e.isBeforeOrEqual=function(e,t){return e.lineNumber<t.lineNumber||!(t.lineNumber<e.lineNumber)&&e.column<=t.column},e.compare=function(e,t){var n=0|e.lineNumber,i=0|t.lineNumber;return n===i?(0|e.column)-(0|t.column):n-i},e.prototype.clone=function(){return new e(this.lineNumber,this.column)},e.prototype.toString=function(){return"("+this.lineNumber+","+this.column+")"},e.lift=function(t){return new e(t.lineNumber,t.column)},e.isIPosition=function(e){return e&&"number"==typeof e.lineNumber&&"number"==typeof e.column},e}(),wn=function(){function e(e,t,n,i){e>n||e===n&&t>i?(this.startLineNumber=n,this.startColumn=i,this.endLineNumber=e,this.endColumn=t):(this.startLineNumber=e,this.startColumn=t,this.endLineNumber=n,this.endColumn=i)}return e.prototype.isEmpty=function(){return e.isEmpty(this)},e.isEmpty=function(e){return e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn},e.prototype.containsPosition=function(t){return e.containsPosition(this,t)},e.containsPosition=function(e,t){return!(t.lineNumber<e.startLineNumber||t.lineNumber>e.endLineNumber)&&(!(t.lineNumber===e.startLineNumber&&t.column<e.startColumn)&&!(t.lineNumber===e.endLineNumber&&t.column>e.endColumn))},e.prototype.containsRange=function(t){return e.containsRange(this,t)},e.containsRange=function(e,t){return!(t.startLineNumber<e.startLineNumber||t.endLineNumber<e.startLineNumber)&&(!(t.startLineNumber>e.endLineNumber||t.endLineNumber>e.endLineNumber)&&(!(t.startLineNumber===e.startLineNumber&&t.startColumn<e.startColumn)&&!(t.endLineNumber===e.endLineNumber&&t.endColumn>e.endColumn)))},e.prototype.strictContainsRange=function(t){return e.strictContainsRange(this,t)},e.strictContainsRange=function(e,t){return!(t.startLineNumber<e.startLineNumber||t.endLineNumber<e.startLineNumber)&&(!(t.startLineNumber>e.endLineNumber||t.endLineNumber>e.endLineNumber)&&(!(t.startLineNumber===e.startLineNumber&&t.startColumn<=e.startColumn)&&!(t.endLineNumber===e.endLineNumber&&t.endColumn>=e.endColumn)))},e.prototype.plusRange=function(t){return e.plusRange(this,t)},e.plusRange=function(t,n){var i,o,r,s;return n.startLineNumber<t.startLineNumber?(i=n.startLineNumber,o=n.startColumn):n.startLineNumber===t.startLineNumber?(i=n.startLineNumber,o=Math.min(n.startColumn,t.startColumn)):(i=t.startLineNumber,o=t.startColumn),n.endLineNumber>t.endLineNumber?(r=n.endLineNumber,s=n.endColumn):n.endLineNumber===t.endLineNumber?(r=n.endLineNumber,s=Math.max(n.endColumn,t.endColumn)):(r=t.endLineNumber,s=t.endColumn),new e(i,o,r,s)},e.prototype.intersectRanges=function(t){return e.intersectRanges(this,t)},e.intersectRanges=function(t,n){var i=t.startLineNumber,o=t.startColumn,r=t.endLineNumber,s=t.endColumn,a=n.startLineNumber,u=n.startColumn,l=n.endLineNumber,c=n.endColumn;return i<a?(i=a,o=u):i===a&&(o=Math.max(o,u)),r>l?(r=l,s=c):r===l&&(s=Math.min(s,c)),i>r||i===r&&o>s?null:new e(i,o,r,s)},e.prototype.equalsRange=function(t){return e.equalsRange(this,t)},e.equalsRange=function(e,t){return!!e&&!!t&&e.startLineNumber===t.startLineNumber&&e.startColumn===t.startColumn&&e.endLineNumber===t.endLineNumber&&e.endColumn===t.endColumn},e.prototype.getEndPosition=function(){return new bn(this.endLineNumber,this.endColumn)},e.prototype.getStartPosition=function(){return new bn(this.startLineNumber,this.startColumn)},e.prototype.toString=function(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"},e.prototype.setEndPosition=function(t,n){return new e(this.startLineNumber,this.startColumn,t,n)},e.prototype.setStartPosition=function(t,n){return new e(t,n,this.endLineNumber,this.endColumn)},e.prototype.collapseToStart=function(){return e.collapseToStart(this)},e.collapseToStart=function(t){return new e(t.startLineNumber,t.startColumn,t.startLineNumber,t.startColumn)},e.fromPositions=function(t,n){return void 0===n&&(n=t),new e(t.lineNumber,t.column,n.lineNumber,n.column)},e.lift=function(t){return t?new e(t.startLineNumber,t.startColumn,t.endLineNumber,t.endColumn):null},e.isIRange=function(e){return e&&"number"==typeof e.startLineNumber&&"number"==typeof e.startColumn&&"number"==typeof e.endLineNumber&&"number"==typeof e.endColumn},e.areIntersectingOrTouching=function(e,t){return!(e.endLineNumber<t.startLineNumber||e.endLineNumber===t.startLineNumber&&e.endColumn<t.startColumn)&&!(t.endLineNumber<e.startLineNumber||t.endLineNumber===e.startLineNumber&&t.endColumn<e.startColumn)},e.areIntersecting=function(e,t){return!(e.endLineNumber<t.startLineNumber||e.endLineNumber===t.startLineNumber&&e.endColumn<=t.startColumn)&&!(t.endLineNumber<e.startLineNumber||t.endLineNumber===e.startLineNumber&&t.endColumn<=e.startColumn)},e.compareRangesUsingStarts=function(e,t){if(e&&t){var n=0|e.startLineNumber,i=0|t.startLineNumber;if(n===i){var o=0|e.startColumn,r=0|t.startColumn;if(o===r){var s=0|e.endLineNumber,a=0|t.endLineNumber;return s===a?(0|e.endColumn)-(0|t.endColumn):s-a}return o-r}return n-i}return(e?1:0)-(t?1:0)},e.compareRangesUsingEnds=function(e,t){return e.endLineNumber===t.endLineNumber?e.endColumn===t.endColumn?e.startLineNumber===t.startLineNumber?e.startColumn-t.startColumn:e.startLineNumber-t.startLineNumber:e.endColumn-t.endColumn:e.endLineNumber-t.endLineNumber},e.spansMultipleLines=function(e){return e.endLineNumber>e.startLineNumber},e}(),Cn=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Sn=function(e){function t(t,n,i,o){var r=e.call(this,t,n,i,o)||this;return r.selectionStartLineNumber=t,r.selectionStartColumn=n,r.positionLineNumber=i,r.positionColumn=o,r}return Cn(t,e),t.prototype.toString=function(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"},t.prototype.equalsSelection=function(e){return t.selectionsEqual(this,e)},t.selectionsEqual=function(e,t){return e.selectionStartLineNumber===t.selectionStartLineNumber&&e.selectionStartColumn===t.selectionStartColumn&&e.positionLineNumber===t.positionLineNumber&&e.positionColumn===t.positionColumn},t.prototype.getDirection=function(){return this.selectionStartLineNumber===this.startLineNumber&&this.selectionStartColumn===this.startColumn?0:1},t.prototype.setEndPosition=function(e,n){return 0===this.getDirection()?new t(this.startLineNumber,this.startColumn,e,n):new t(e,n,this.startLineNumber,this.startColumn)},t.prototype.getPosition=function(){return new bn(this.positionLineNumber,this.positionColumn)},t.prototype.setStartPosition=function(e,n){return 0===this.getDirection()?new t(e,n,this.endLineNumber,this.endColumn):new t(this.endLineNumber,this.endColumn,e,n)},t.fromPositions=function(e,n){return void 0===n&&(n=e),new t(e.lineNumber,e.column,n.lineNumber,n.column)},t.liftSelection=function(e){return new t(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn)},t.selectionsArrEqual=function(e,t){if(e&&!t||!e&&t)return!1;if(!e&&!t)return!0;if(e.length!==t.length)return!1;for(var n=0,i=e.length;n<i;n++)if(!this.selectionsEqual(e[n],t[n]))return!1;return!0},t.isISelection=function(e){return e&&"number"==typeof e.selectionStartLineNumber&&"number"==typeof e.selectionStartColumn&&"number"==typeof e.positionLineNumber&&"number"==typeof e.positionColumn},t.createWithDirection=function(e,n,i,o,r){return 0===r?new t(e,n,i,o):new t(i,o,e,n)},t}(wn),Ln=function(){function e(e,t,n){this.offset=0|e,this.type=t,this.language=n}return e.prototype.toString=function(){return"("+this.offset+", "+this.type+")"},e}(),xn=function(e,t){this.tokens=e,this.endState=t},Dn=function(e,t){this.tokens=e,this.endState=t};!function(e){e[e.Unknown=0]="Unknown",e[e.Disabled=1]="Disabled",e[e.Enabled=2]="Enabled"}(Vt||(Vt={})),function(e){e[e.KeepWhitespace=1]="KeepWhitespace",e[e.InsertAsSnippet=4]="InsertAsSnippet"}(Bt||(Bt={})),function(e){e[e.Method=0]="Method",e[e.Function=1]="Function",e[e.Constructor=2]="Constructor",e[e.Field=3]="Field",e[e.Variable=4]="Variable",e[e.Class=5]="Class",e[e.Struct=6]="Struct",e[e.Interface=7]="Interface",e[e.Module=8]="Module",e[e.Property=9]="Property",e[e.Event=10]="Event",e[e.Operator=11]="Operator",e[e.Unit=12]="Unit",e[e.Value=13]="Value",e[e.Constant=14]="Constant",e[e.Enum=15]="Enum",e[e.EnumMember=16]="EnumMember",e[e.Keyword=17]="Keyword",e[e.Text=18]="Text",e[e.Color=19]="Color",e[e.File=20]="File",e[e.Reference=21]="Reference",e[e.Customcolor=22]="Customcolor",e[e.Folder=23]="Folder",e[e.TypeParameter=24]="TypeParameter",e[e.Snippet=25]="Snippet"}(Ht||(Ht={})),function(e){e[e.Deprecated=1]="Deprecated"}(zt||(zt={})),function(e){e[e.Invoke=0]="Invoke",e[e.TriggerCharacter=1]="TriggerCharacter",e[e.TriggerForIncompleteCompletions=2]="TriggerForIncompleteCompletions"}(jt||(jt={})),function(e){e[e.EXACT=0]="EXACT",e[e.ABOVE=1]="ABOVE",e[e.BELOW=2]="BELOW"}(Ut||(Ut={})),function(e){e[e.NotSet=0]="NotSet",e[e.ContentFlush=1]="ContentFlush",e[e.RecoverFromMarkers=2]="RecoverFromMarkers",e[e.Explicit=3]="Explicit",e[e.Paste=4]="Paste",e[e.Undo=5]="Undo",e[e.Redo=6]="Redo"}(Kt||(Kt={})),function(e){e[e.LF=1]="LF",e[e.CRLF=2]="CRLF"}(qt||(qt={})),function(e){e[e.Text=0]="Text",e[e.Read=1]="Read",e[e.Write=2]="Write"}(Gt||(Gt={})),function(e){e[e.None=0]="None",e[e.Keep=1]="Keep",e[e.Brackets=2]="Brackets",e[e.Advanced=3]="Advanced",e[e.Full=4]="Full"}(Zt||(Zt={})),function(e){e[e.acceptSuggestionOnCommitCharacter=0]="acceptSuggestionOnCommitCharacter",e[e.acceptSuggestionOnEnter=1]="acceptSuggestionOnEnter",e[e.accessibilitySupport=2]="accessibilitySupport",e[e.accessibilityPageSize=3]="accessibilityPageSize",e[e.ariaLabel=4]="ariaLabel",e[e.autoClosingBrackets=5]="autoClosingBrackets",e[e.autoClosingOvertype=6]="autoClosingOvertype",e[e.autoClosingQuotes=7]="autoClosingQuotes",e[e.autoIndent=8]="autoIndent",e[e.automaticLayout=9]="automaticLayout",e[e.autoSurround=10]="autoSurround",e[e.codeLens=11]="codeLens",e[e.colorDecorators=12]="colorDecorators",e[e.comments=13]="comments",e[e.contextmenu=14]="contextmenu",e[e.copyWithSyntaxHighlighting=15]="copyWithSyntaxHighlighting",e[e.cursorBlinking=16]="cursorBlinking",e[e.cursorSmoothCaretAnimation=17]="cursorSmoothCaretAnimation",e[e.cursorStyle=18]="cursorStyle",e[e.cursorSurroundingLines=19]="cursorSurroundingLines",e[e.cursorSurroundingLinesStyle=20]="cursorSurroundingLinesStyle",e[e.cursorWidth=21]="cursorWidth",e[e.disableLayerHinting=22]="disableLayerHinting",e[e.disableMonospaceOptimizations=23]="disableMonospaceOptimizations",e[e.dragAndDrop=24]="dragAndDrop",e[e.emptySelectionClipboard=25]="emptySelectionClipboard",e[e.extraEditorClassName=26]="extraEditorClassName",e[e.fastScrollSensitivity=27]="fastScrollSensitivity",e[e.find=28]="find",e[e.fixedOverflowWidgets=29]="fixedOverflowWidgets",e[e.folding=30]="folding",e[e.foldingStrategy=31]="foldingStrategy",e[e.foldingHighlight=32]="foldingHighlight",e[e.fontFamily=33]="fontFamily",e[e.fontInfo=34]="fontInfo",e[e.fontLigatures=35]="fontLigatures",e[e.fontSize=36]="fontSize",e[e.fontWeight=37]="fontWeight",e[e.formatOnPaste=38]="formatOnPaste",e[e.formatOnType=39]="formatOnType",e[e.glyphMargin=40]="glyphMargin",e[e.gotoLocation=41]="gotoLocation",e[e.hideCursorInOverviewRuler=42]="hideCursorInOverviewRuler",e[e.highlightActiveIndentGuide=43]="highlightActiveIndentGuide",e[e.hover=44]="hover",e[e.inDiffEditor=45]="inDiffEditor",e[e.letterSpacing=46]="letterSpacing",e[e.lightbulb=47]="lightbulb",e[e.lineDecorationsWidth=48]="lineDecorationsWidth",e[e.lineHeight=49]="lineHeight",e[e.lineNumbers=50]="lineNumbers",e[e.lineNumbersMinChars=51]="lineNumbersMinChars",e[e.links=52]="links",e[e.matchBrackets=53]="matchBrackets",e[e.minimap=54]="minimap",e[e.mouseStyle=55]="mouseStyle",e[e.mouseWheelScrollSensitivity=56]="mouseWheelScrollSensitivity",e[e.mouseWheelZoom=57]="mouseWheelZoom",e[e.multiCursorMergeOverlapping=58]="multiCursorMergeOverlapping",e[e.multiCursorModifier=59]="multiCursorModifier",e[e.multiCursorPaste=60]="multiCursorPaste",e[e.occurrencesHighlight=61]="occurrencesHighlight",e[e.overviewRulerBorder=62]="overviewRulerBorder",e[e.overviewRulerLanes=63]="overviewRulerLanes",e[e.parameterHints=64]="parameterHints",e[e.peekWidgetDefaultFocus=65]="peekWidgetDefaultFocus",e[e.quickSuggestions=66]="quickSuggestions",e[e.quickSuggestionsDelay=67]="quickSuggestionsDelay",e[e.readOnly=68]="readOnly",e[e.renderControlCharacters=69]="renderControlCharacters",e[e.renderIndentGuides=70]="renderIndentGuides",e[e.renderFinalNewline=71]="renderFinalNewline",e[e.renderLineHighlight=72]="renderLineHighlight",e[e.renderValidationDecorations=73]="renderValidationDecorations",e[e.renderWhitespace=74]="renderWhitespace",e[e.revealHorizontalRightPadding=75]="revealHorizontalRightPadding",e[e.roundedSelection=76]="roundedSelection",e[e.rulers=77]="rulers",e[e.scrollbar=78]="scrollbar",e[e.scrollBeyondLastColumn=79]="scrollBeyondLastColumn",e[e.scrollBeyondLastLine=80]="scrollBeyondLastLine",e[e.selectionClipboard=81]="selectionClipboard",e[e.selectionHighlight=82]="selectionHighlight",e[e.selectOnLineNumbers=83]="selectOnLineNumbers",e[e.showFoldingControls=84]="showFoldingControls",e[e.showUnused=85]="showUnused",e[e.snippetSuggestions=86]="snippetSuggestions",e[e.smoothScrolling=87]="smoothScrolling",e[e.stopRenderingLineAfter=88]="stopRenderingLineAfter",e[e.suggest=89]="suggest",e[e.suggestFontSize=90]="suggestFontSize",e[e.suggestLineHeight=91]="suggestLineHeight",e[e.suggestOnTriggerCharacters=92]="suggestOnTriggerCharacters",e[e.suggestSelection=93]="suggestSelection",e[e.tabCompletion=94]="tabCompletion",e[e.useTabStops=95]="useTabStops",e[e.wordSeparators=96]="wordSeparators",e[e.wordWrap=97]="wordWrap",e[e.wordWrapBreakAfterCharacters=98]="wordWrapBreakAfterCharacters",e[e.wordWrapBreakBeforeCharacters=99]="wordWrapBreakBeforeCharacters",e[e.wordWrapColumn=100]="wordWrapColumn",e[e.wordWrapMinified=101]="wordWrapMinified",e[e.wrappingIndent=102]="wrappingIndent",e[e.wrappingStrategy=103]="wrappingStrategy",e[e.editorClassName=104]="editorClassName",e[e.pixelRatio=105]="pixelRatio",e[e.tabFocusMode=106]="tabFocusMode",e[e.layoutInfo=107]="layoutInfo",e[e.wrappingInfo=108]="wrappingInfo"}(Yt||(Yt={})),function(e){e[e.TextDefined=0]="TextDefined",e[e.LF=1]="LF",e[e.CRLF=2]="CRLF"}(Xt||(Xt={})),function(e){e[e.LF=0]="LF",e[e.CRLF=1]="CRLF"}($t||($t={})),function(e){e[e.None=0]="None",e[e.Indent=1]="Indent",e[e.IndentOutdent=2]="IndentOutdent",e[e.Outdent=3]="Outdent"}(Qt||(Qt={})),function(e){e[e.Unknown=0]="Unknown",e[e.Backspace=1]="Backspace",e[e.Tab=2]="Tab",e[e.Enter=3]="Enter",e[e.Shift=4]="Shift",e[e.Ctrl=5]="Ctrl",e[e.Alt=6]="Alt",e[e.PauseBreak=7]="PauseBreak",e[e.CapsLock=8]="CapsLock",e[e.Escape=9]="Escape",e[e.Space=10]="Space",e[e.PageUp=11]="PageUp",e[e.PageDown=12]="PageDown",e[e.End=13]="End",e[e.Home=14]="Home",e[e.LeftArrow=15]="LeftArrow",e[e.UpArrow=16]="UpArrow",e[e.RightArrow=17]="RightArrow",e[e.DownArrow=18]="DownArrow",e[e.Insert=19]="Insert",e[e.Delete=20]="Delete",e[e.KEY_0=21]="KEY_0",e[e.KEY_1=22]="KEY_1",e[e.KEY_2=23]="KEY_2",e[e.KEY_3=24]="KEY_3",e[e.KEY_4=25]="KEY_4",e[e.KEY_5=26]="KEY_5",e[e.KEY_6=27]="KEY_6",e[e.KEY_7=28]="KEY_7",e[e.KEY_8=29]="KEY_8",e[e.KEY_9=30]="KEY_9",e[e.KEY_A=31]="KEY_A",e[e.KEY_B=32]="KEY_B",e[e.KEY_C=33]="KEY_C",e[e.KEY_D=34]="KEY_D",e[e.KEY_E=35]="KEY_E",e[e.KEY_F=36]="KEY_F",e[e.KEY_G=37]="KEY_G",e[e.KEY_H=38]="KEY_H",e[e.KEY_I=39]="KEY_I",e[e.KEY_J=40]="KEY_J",e[e.KEY_K=41]="KEY_K",e[e.KEY_L=42]="KEY_L",e[e.KEY_M=43]="KEY_M",e[e.KEY_N=44]="KEY_N",e[e.KEY_O=45]="KEY_O",e[e.KEY_P=46]="KEY_P",e[e.KEY_Q=47]="KEY_Q",e[e.KEY_R=48]="KEY_R",e[e.KEY_S=49]="KEY_S",e[e.KEY_T=50]="KEY_T",e[e.KEY_U=51]="KEY_U",e[e.KEY_V=52]="KEY_V",e[e.KEY_W=53]="KEY_W",e[e.KEY_X=54]="KEY_X",e[e.KEY_Y=55]="KEY_Y",e[e.KEY_Z=56]="KEY_Z",e[e.Meta=57]="Meta",e[e.ContextMenu=58]="ContextMenu",e[e.F1=59]="F1",e[e.F2=60]="F2",e[e.F3=61]="F3",e[e.F4=62]="F4",e[e.F5=63]="F5",e[e.F6=64]="F6",e[e.F7=65]="F7",e[e.F8=66]="F8",e[e.F9=67]="F9",e[e.F10=68]="F10",e[e.F11=69]="F11",e[e.F12=70]="F12",e[e.F13=71]="F13",e[e.F14=72]="F14",e[e.F15=73]="F15",e[e.F16=74]="F16",e[e.F17=75]="F17",e[e.F18=76]="F18",e[e.F19=77]="F19",e[e.NumLock=78]="NumLock",e[e.ScrollLock=79]="ScrollLock",e[e.US_SEMICOLON=80]="US_SEMICOLON",e[e.US_EQUAL=81]="US_EQUAL",e[e.US_COMMA=82]="US_COMMA",e[e.US_MINUS=83]="US_MINUS",e[e.US_DOT=84]="US_DOT",e[e.US_SLASH=85]="US_SLASH",e[e.US_BACKTICK=86]="US_BACKTICK",e[e.US_OPEN_SQUARE_BRACKET=87]="US_OPEN_SQUARE_BRACKET",e[e.US_BACKSLASH=88]="US_BACKSLASH",e[e.US_CLOSE_SQUARE_BRACKET=89]="US_CLOSE_SQUARE_BRACKET",e[e.US_QUOTE=90]="US_QUOTE",e[e.OEM_8=91]="OEM_8",e[e.OEM_102=92]="OEM_102",e[e.NUMPAD_0=93]="NUMPAD_0",e[e.NUMPAD_1=94]="NUMPAD_1",e[e.NUMPAD_2=95]="NUMPAD_2",e[e.NUMPAD_3=96]="NUMPAD_3",e[e.NUMPAD_4=97]="NUMPAD_4",e[e.NUMPAD_5=98]="NUMPAD_5",e[e.NUMPAD_6=99]="NUMPAD_6",e[e.NUMPAD_7=100]="NUMPAD_7",e[e.NUMPAD_8=101]="NUMPAD_8",e[e.NUMPAD_9=102]="NUMPAD_9",e[e.NUMPAD_MULTIPLY=103]="NUMPAD_MULTIPLY",e[e.NUMPAD_ADD=104]="NUMPAD_ADD",e[e.NUMPAD_SEPARATOR=105]="NUMPAD_SEPARATOR",e[e.NUMPAD_SUBTRACT=106]="NUMPAD_SUBTRACT",e[e.NUMPAD_DECIMAL=107]="NUMPAD_DECIMAL",e[e.NUMPAD_DIVIDE=108]="NUMPAD_DIVIDE",e[e.KEY_IN_COMPOSITION=109]="KEY_IN_COMPOSITION",e[e.ABNT_C1=110]="ABNT_C1",e[e.ABNT_C2=111]="ABNT_C2",e[e.MAX_VALUE=112]="MAX_VALUE"}(Jt||(Jt={})),(tn=en||(en={}))[tn.Hint=1]="Hint",tn[tn.Info=2]="Info",tn[tn.Warning=4]="Warning",tn[tn.Error=8]="Error",function(e){e[e.Unnecessary=1]="Unnecessary",e[e.Deprecated=2]="Deprecated"}(nn||(nn={})),function(e){e[e.Inline=1]="Inline",e[e.Gutter=2]="Gutter"}(on||(on={})),function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.TEXTAREA=1]="TEXTAREA",e[e.GUTTER_GLYPH_MARGIN=2]="GUTTER_GLYPH_MARGIN",e[e.GUTTER_LINE_NUMBERS=3]="GUTTER_LINE_NUMBERS",e[e.GUTTER_LINE_DECORATIONS=4]="GUTTER_LINE_DECORATIONS",e[e.GUTTER_VIEW_ZONE=5]="GUTTER_VIEW_ZONE",e[e.CONTENT_TEXT=6]="CONTENT_TEXT",e[e.CONTENT_EMPTY=7]="CONTENT_EMPTY",e[e.CONTENT_VIEW_ZONE=8]="CONTENT_VIEW_ZONE",e[e.CONTENT_WIDGET=9]="CONTENT_WIDGET",e[e.OVERVIEW_RULER=10]="OVERVIEW_RULER",e[e.SCROLLBAR=11]="SCROLLBAR",e[e.OVERLAY_WIDGET=12]="OVERLAY_WIDGET",e[e.OUTSIDE_EDITOR=13]="OUTSIDE_EDITOR"}(rn||(rn={})),function(e){e[e.TOP_RIGHT_CORNER=0]="TOP_RIGHT_CORNER",e[e.BOTTOM_RIGHT_CORNER=1]="BOTTOM_RIGHT_CORNER",e[e.TOP_CENTER=2]="TOP_CENTER"}(sn||(sn={})),function(e){e[e.Left=1]="Left",e[e.Center=2]="Center",e[e.Right=4]="Right",e[e.Full=7]="Full"}(an||(an={})),function(e){e[e.Off=0]="Off",e[e.On=1]="On",e[e.Relative=2]="Relative",e[e.Interval=3]="Interval",e[e.Custom=4]="Custom"}(un||(un={})),function(e){e[e.None=0]="None",e[e.Text=1]="Text",e[e.Blocks=2]="Blocks"}(ln||(ln={})),function(e){e[e.Smooth=0]="Smooth",e[e.Immediate=1]="Immediate"}(cn||(cn={})),function(e){e[e.Auto=1]="Auto",e[e.Hidden=2]="Hidden",e[e.Visible=3]="Visible"}(dn||(dn={})),function(e){e[e.LTR=0]="LTR",e[e.RTL=1]="RTL"}(hn||(hn={})),function(e){e[e.Invoke=1]="Invoke",e[e.TriggerCharacter=2]="TriggerCharacter",e[e.ContentChange=3]="ContentChange"}(pn||(pn={})),function(e){e[e.File=0]="File",e[e.Module=1]="Module",e[e.Namespace=2]="Namespace",e[e.Package=3]="Package",e[e.Class=4]="Class",e[e.Method=5]="Method",e[e.Property=6]="Property",e[e.Field=7]="Field",e[e.Constructor=8]="Constructor",e[e.Enum=9]="Enum",e[e.Interface=10]="Interface",e[e.Function=11]="Function",e[e.Variable=12]="Variable",e[e.Constant=13]="Constant",e[e.String=14]="String",e[e.Number=15]="Number",e[e.Boolean=16]="Boolean",e[e.Array=17]="Array",e[e.Object=18]="Object",e[e.Key=19]="Key",e[e.Null=20]="Null",e[e.EnumMember=21]="EnumMember",e[e.Struct=22]="Struct",e[e.Event=23]="Event",e[e.Operator=24]="Operator",e[e.TypeParameter=25]="TypeParameter"}(fn||(fn={})),function(e){e[e.Deprecated=1]="Deprecated"}(gn||(gn={})),function(e){e[e.Hidden=0]="Hidden",e[e.Blink=1]="Blink",e[e.Smooth=2]="Smooth",e[e.Phase=3]="Phase",e[e.Expand=4]="Expand",e[e.Solid=5]="Solid"}(mn||(mn={})),function(e){e[e.Line=1]="Line",e[e.Block=2]="Block",e[e.Underline=3]="Underline",e[e.LineThin=4]="LineThin",e[e.BlockOutline=5]="BlockOutline",e[e.UnderlineThin=6]="UnderlineThin"}(vn||(vn={})),function(e){e[e.AlwaysGrowsWhenTypingAtEdges=0]="AlwaysGrowsWhenTypingAtEdges",e[e.NeverGrowsWhenTypingAtEdges=1]="NeverGrowsWhenTypingAtEdges",e[e.GrowsOnlyWhenTypingBefore=2]="GrowsOnlyWhenTypingBefore",e[e.GrowsOnlyWhenTypingAfter=3]="GrowsOnlyWhenTypingAfter"}(_n||(_n={})),function(e){e[e.None=0]="None",e[e.Same=1]="Same",e[e.Indent=2]="Indent",e[e.DeepIndent=3]="DeepIndent"}(yn||(yn={}));var Nn=function(){function e(){}return e.chord=function(e,t){return gt(e,t)},e.CtrlCmd=2048,e.Shift=1024,e.Alt=512,e.WinCtrl=256,e}();function kn(){return{editor:void 0,languages:void 0,CancellationTokenSource:ct,Emitter:nt,KeyCode:Jt,KeyMod:Nn,Position:bn,Range:wn,Selection:Sn,SelectionDirection:hn,MarkerSeverity:en,MarkerTag:nn,Uri:Et,Token:Ln}}var En;n(370);!function(e){e.serviceIds=new Map,e.DI_TARGET="$di$target",e.DI_DEPENDENCIES="$di$dependencies",e.getServiceDependencies=function(t){return t[e.DI_DEPENDENCIES]||[]}}(En||(En={}));var In=Mn("instantiationService");function On(e,t,n,i){t[En.DI_TARGET]===t?t[En.DI_DEPENDENCIES].push({id:e,index:n,optional:i}):(t[En.DI_DEPENDENCIES]=[{id:e,index:n,optional:i}],t[En.DI_TARGET]=t)}function Mn(e){if(En.serviceIds.has(e))return En.serviceIds.get(e);var t=function(e,n,i){if(3!==arguments.length)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");On(t,e,i,!1)};return t.toString=function(){return e},En.serviceIds.set(e,t),t}function Tn(e){return function(t,n,i){if(3!==arguments.length)throw new Error("@optional-decorator can only be used to decorate a parameter");On(e,t,i,!0)}}var Pn=Mn("codeEditorService"),Rn=function(){function e(){this._zoomLevel=0,this._lastZoomLevelChangeTime=0,this._onDidChangeZoomLevel=new nt,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event}return e.prototype.getZoomLevel=function(){return this._zoomLevel},e.prototype.getTimeSinceLastZoomLevelChanged=function(){return Date.now()-this._lastZoomLevelChangeTime},e.prototype.getPixelRatio=function(){var e=document.createElement("canvas").getContext("2d");return(window.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1)},e.INSTANCE=new e,e}();function An(){return Rn.INSTANCE.getZoomLevel()}function Fn(e){return Rn.INSTANCE.onDidChangeZoomLevel(e)}var Wn=navigator.userAgent,Vn=Wn.indexOf("Trident")>=0,Bn=Wn.indexOf("Edge/")>=0,Hn=Vn||Bn,zn=Wn.indexOf("Firefox")>=0,jn=Wn.indexOf("AppleWebKit")>=0,Un=Wn.indexOf("Chrome")>=0,Kn=!Un&&Wn.indexOf("Safari")>=0,qn=!Un&&!Kn&&jn,Gn=Wn.indexOf("iPad")>=0||Kn&&navigator.maxTouchPoints>0,Zn=Bn&&Wn.indexOf("WebView/")>=0,Yn=window.matchMedia&&window.matchMedia("(display-mode: standalone)").matches,Xn=function(e,t,n){var i=function(e){return o.fire(e)},o=new nt({onFirstListenerAdd:function(){e.addEventListener(t,i,n)},onLastListenerRemove:function(){e.removeEventListener(t,i,n)}});return o.event};function $n(e){return Ge.map(e,(function(e){return e.preventDefault(),e.stopPropagation(),e}))}var Qn=new Array(230),Jn=new Array(112);!function(){for(var e=0;e<Jn.length;e++)Jn[e]=-1;function t(e,t){Qn[e]=t,Jn[t]=e}t(3,7),t(8,1),t(9,2),t(13,3),t(16,4),t(17,5),t(18,6),t(19,7),t(20,8),t(27,9),t(32,10),t(33,11),t(34,12),t(35,13),t(36,14),t(37,15),t(38,16),t(39,17),t(40,18),t(45,19),t(46,20),t(48,21),t(49,22),t(50,23),t(51,24),t(52,25),t(53,26),t(54,27),t(55,28),t(56,29),t(57,30),t(65,31),t(66,32),t(67,33),t(68,34),t(69,35),t(70,36),t(71,37),t(72,38),t(73,39),t(74,40),t(75,41),t(76,42),t(77,43),t(78,44),t(79,45),t(80,46),t(81,47),t(82,48),t(83,49),t(84,50),t(85,51),t(86,52),t(87,53),t(88,54),t(89,55),t(90,56),t(93,58),t(96,93),t(97,94),t(98,95),t(99,96),t(100,97),t(101,98),t(102,99),t(103,100),t(104,101),t(105,102),t(106,103),t(107,104),t(108,105),t(109,106),t(110,107),t(111,108),t(112,59),t(113,60),t(114,61),t(115,62),t(116,63),t(117,64),t(118,65),t(119,66),t(120,67),t(121,68),t(122,69),t(123,70),t(124,71),t(125,72),t(126,73),t(127,74),t(128,75),t(129,76),t(130,77),t(144,78),t(145,79),t(186,80),t(187,81),t(188,82),t(189,83),t(190,84),t(191,85),t(192,86),t(193,110),t(194,111),t(219,87),t(220,88),t(221,89),t(222,90),t(223,91),t(226,92),t(229,109),Vn?t(91,57):zn?(t(59,80),t(107,81),t(109,83),_&&t(224,57)):jn&&(t(91,57),t(_?93:92,57))}();var ei=_?256:2048,ti=_?2048:256,ni=function(){function e(e){this._standardKeyboardEventBrand=!0;var t=e;this.browserEvent=t,this.target=t.target,this.ctrlKey=t.ctrlKey,this.shiftKey=t.shiftKey,this.altKey=t.altKey,this.metaKey=t.metaKey,this.keyCode=function(e){if(e.charCode){var t=String.fromCharCode(e.charCode).toUpperCase();return ut.fromString(t)}return Qn[e.keyCode]||0}(t),this.code=t.code,this.ctrlKey=this.ctrlKey||5===this.keyCode,this.altKey=this.altKey||6===this.keyCode,this.shiftKey=this.shiftKey||4===this.keyCode,this.metaKey=this.metaKey||57===this.keyCode,this._asKeybinding=this._computeKeybinding(),this._asRuntimeKeybinding=this._computeRuntimeKeybinding()}return e.prototype.preventDefault=function(){this.browserEvent&&this.browserEvent.preventDefault&&this.browserEvent.preventDefault()},e.prototype.stopPropagation=function(){this.browserEvent&&this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()},e.prototype.toKeybinding=function(){return this._asRuntimeKeybinding},e.prototype.equals=function(e){return this._asKeybinding===e},e.prototype._computeKeybinding=function(){var e=0;5!==this.keyCode&&4!==this.keyCode&&6!==this.keyCode&&57!==this.keyCode&&(e=this.keyCode);var t=0;return this.ctrlKey&&(t|=ei),this.altKey&&(t|=512),this.shiftKey&&(t|=1024),this.metaKey&&(t|=ti),t|=e},e.prototype._computeRuntimeKeybinding=function(){var e=0;return 5!==this.keyCode&&4!==this.keyCode&&6!==this.keyCode&&57!==this.keyCode&&(e=this.keyCode),new yt(this.ctrlKey,this.shiftKey,this.altKey,this.metaKey,e)},e}(),ii=!1,oi=null;function ri(e){if(!e.parent||e.parent===e)return null;try{var t=e.location,n=e.parent.location;if(t.protocol!==n.protocol||t.hostname!==n.hostname||t.port!==n.port)return ii=!0,null}catch(e){return ii=!0,null}return e.parent}function si(e,t){for(var n,i=e.document.getElementsByTagName("iframe"),o=0,r=i.length;o<r;o++)if((n=i[o]).contentWindow===t)return n;return null}var ai=function(){function e(){}return e.getSameOriginWindowChain=function(){if(!oi){oi=[];var e,t=window;do{(e=ri(t))?oi.push({window:t,iframeElement:si(e,t)}):oi.push({window:t,iframeElement:null}),t=e}while(t)}return oi.slice(0)},e.hasDifferentOriginAncestor=function(){return oi||this.getSameOriginWindowChain(),ii},e.getPositionOfChildWindowRelativeToAncestorWindow=function(e,t){if(!t||e===t)return{top:0,left:0};for(var n=0,i=0,o=0,r=this.getSameOriginWindowChain();o<r.length;o++){var s=r[o];if(s.window===t)break;if(!s.iframeElement)break;var a=s.iframeElement.getBoundingClientRect();n+=a.top,i+=a.left}return{top:n,left:i}},e}(),ui=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),li=function(){function e(e){this.timestamp=Date.now(),this.browserEvent=e,this.leftButton=0===e.button,this.middleButton=1===e.button,this.rightButton=2===e.button,this.buttons=e.buttons,this.target=e.target,this.detail=e.detail||1,"dblclick"===e.type&&(this.detail=2),this.ctrlKey=e.ctrlKey,this.shiftKey=e.shiftKey,this.altKey=e.altKey,this.metaKey=e.metaKey,"number"==typeof e.pageX?(this.posx=e.pageX,this.posy=e.pageY):(this.posx=e.clientX+document.body.scrollLeft+document.documentElement.scrollLeft,this.posy=e.clientY+document.body.scrollTop+document.documentElement.scrollTop);var t=ai.getPositionOfChildWindowRelativeToAncestorWindow(self,e.view);this.posx-=t.left,this.posy-=t.top}return e.prototype.preventDefault=function(){this.browserEvent.preventDefault&&this.browserEvent.preventDefault()},e.prototype.stopPropagation=function(){this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()},e}(),ci=function(e){function t(t){var n=e.call(this,t)||this;return n.dataTransfer=t.dataTransfer,n}return ui(t,e),t}(li),di=function(){function e(e,t,n){if(void 0===t&&(t=0),void 0===n&&(n=0),this.browserEvent=e||null,this.target=e?e.target||e.targetNode||e.srcElement:null,this.deltaY=n,this.deltaX=t,e){var i=e,o=e;if(void 0!==i.wheelDeltaY)this.deltaY=i.wheelDeltaY/120;else if(void 0!==o.VERTICAL_AXIS&&o.axis===o.VERTICAL_AXIS)this.deltaY=-o.detail/3;else if("wheel"===e.type){(r=e).deltaMode===r.DOM_DELTA_LINE?this.deltaY=-e.deltaY:this.deltaY=-e.deltaY/40}if(void 0!==i.wheelDeltaX)this.deltaX=Kn&&v?-i.wheelDeltaX/120:i.wheelDeltaX/120;else if(void 0!==o.HORIZONTAL_AXIS&&o.axis===o.HORIZONTAL_AXIS)this.deltaX=-e.detail/3;else if("wheel"===e.type){var r;(r=e).deltaMode===r.DOM_DELTA_LINE?this.deltaX=-e.deltaX:this.deltaX=-e.deltaX/40}0===this.deltaY&&0===this.deltaX&&e.wheelDelta&&(this.deltaY=e.wheelDelta/120)}}return e.prototype.preventDefault=function(){this.browserEvent&&this.browserEvent.preventDefault&&this.browserEvent.preventDefault()},e.prototype.stopPropagation=function(){this.browserEvent&&this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()},e}();function hi(e){var t=new ct,n=e(t.token),i=new Promise((function(e,i){t.token.onCancellationRequested((function(){i(Ie())})),Promise.resolve(n).then((function(n){t.dispose(),e(n)}),(function(e){t.dispose(),i(e)}))}));return new(function(){function e(){}return e.prototype.cancel=function(){t.cancel()},e.prototype.then=function(e,t){return i.then(e,t)},e.prototype.catch=function(e){return this.then(void 0,e)},e.prototype.finally=function(e){return i.finally(e)},e}())}function pi(e,t,n){return Promise.race([e,new Promise((function(e){return t.onCancellationRequested((function(){return e(n)}))}))])}var fi=function(){function e(e){this.defaultDelay=e,this.timeout=null,this.completionPromise=null,this.doResolve=null,this.doReject=null,this.task=null}return e.prototype.trigger=function(e,t){var n=this;return void 0===t&&(t=this.defaultDelay),this.task=e,this.cancelTimeout(),this.completionPromise||(this.completionPromise=new Promise((function(e,t){n.doResolve=e,n.doReject=t})).then((function(){if(n.completionPromise=null,n.doResolve=null,n.task){var e=n.task;return n.task=null,e()}}))),this.timeout=setTimeout((function(){n.timeout=null,n.doResolve&&n.doResolve(null)}),t),this.completionPromise},e.prototype.isTriggered=function(){return null!==this.timeout},e.prototype.cancel=function(){this.cancelTimeout(),this.completionPromise&&(this.doReject&&this.doReject(Ie()),this.completionPromise=null)},e.prototype.cancelTimeout=function(){null!==this.timeout&&(clearTimeout(this.timeout),this.timeout=null)},e.prototype.dispose=function(){this.cancelTimeout()},e}();function gi(e,t){return t?new Promise((function(n,i){var o=setTimeout(n,e);t.onCancellationRequested((function(){clearTimeout(o),i(Ie())}))})):hi((function(t){return gi(e,t)}))}function mi(e,t){void 0===t&&(t=0);var n=setTimeout(e,t);return We((function(){return clearTimeout(n)}))}function vi(e,t,n){void 0===t&&(t=function(e){return!!e}),void 0===n&&(n=null);var i=0,o=e.length,r=function(){if(i>=o)return Promise.resolve(n);var s=e[i++];return Promise.resolve(s()).then((function(e){return t(e)?Promise.resolve(e):r()}))};return r()}var _i,yi=function(){function e(e,t){this._token=-1,"function"==typeof e&&"number"==typeof t&&this.setIfNotSet(e,t)}return e.prototype.dispose=function(){this.cancel()},e.prototype.cancel=function(){-1!==this._token&&(clearTimeout(this._token),this._token=-1)},e.prototype.cancelAndSet=function(e,t){var n=this;this.cancel(),this._token=setTimeout((function(){n._token=-1,e()}),t)},e.prototype.setIfNotSet=function(e,t){var n=this;-1===this._token&&(this._token=setTimeout((function(){n._token=-1,e()}),t))},e}(),bi=function(){function e(){this._token=-1}return e.prototype.dispose=function(){this.cancel()},e.prototype.cancel=function(){-1!==this._token&&(clearInterval(this._token),this._token=-1)},e.prototype.cancelAndSet=function(e,t){this.cancel(),this._token=setInterval((function(){e()}),t)},e}(),wi=function(){function e(e,t){this.timeoutToken=-1,this.runner=e,this.timeout=t,this.timeoutHandler=this.onTimeout.bind(this)}return e.prototype.dispose=function(){this.cancel(),this.runner=null},e.prototype.cancel=function(){this.isScheduled()&&(clearTimeout(this.timeoutToken),this.timeoutToken=-1)},e.prototype.schedule=function(e){void 0===e&&(e=this.timeout),this.cancel(),this.timeoutToken=setTimeout(this.timeoutHandler,e)},e.prototype.isScheduled=function(){return-1!==this.timeoutToken},e.prototype.onTimeout=function(){this.timeoutToken=-1,this.runner&&this.doRun()},e.prototype.doRun=function(){this.runner&&this.runner()},e}();!function(){if("function"!=typeof requestIdleCallback||"function"!=typeof cancelIdleCallback){var e=Object.freeze({didTimeout:!0,timeRemaining:function(){return 15}});_i=function(t){var n=setTimeout((function(){return t(e)})),i=!1;return{dispose:function(){i||(i=!0,clearTimeout(n))}}}}else _i=function(e,t){var n=requestIdleCallback(e,"number"==typeof t?{timeout:t}:void 0),i=!1;return{dispose:function(){i||(i=!0,cancelIdleCallback(n))}}}}();var Ci,Si=function(){function e(e){var t=this;this._didRun=!1,this._executor=function(){try{t._value=e()}catch(e){t._error=e}finally{t._didRun=!0}},this._handle=_i((function(){return t._executor()}))}return e.prototype.dispose=function(){this._handle.dispose()},e.prototype.getValue=function(){if(this._didRun||(this._handle.dispose(),this._executor()),this._error)throw this._error;return this._value},e}();function Li(e,t){return void 0===t&&(t=0),e[e.length-(1+t)]}function xi(e,t,n){if(void 0===n&&(n=function(e,t){return e===t}),e===t)return!0;if(!e||!t)return!1;if(e.length!==t.length)return!1;for(var i=0,o=e.length;i<o;i++)if(!n(e[i],t[i]))return!1;return!0}function Di(e,t,n){for(var i=0,o=e.length-1;i<=o;){var r=(i+o)/2|0,s=n(e[r],t);if(s<0)i=r+1;else{if(!(s>0))return r;o=r-1}}return-(i+1)}function Ni(e,t){return function e(t,n,i,o,r){if(o<=i)return;var s=i+(o-i)/2|0;if(e(t,n,i,s,r),e(t,n,s+1,o,r),n(t[s],t[s+1])<=0)return;!function(e,t,n,i,o,r){for(var s=n,a=i+1,u=n;u<=o;u++)r[u]=e[u];for(u=n;u<=o;u++)s>i?e[u]=r[a++]:a>o?e[u]=r[s++]:t(r[a],r[s])<0?e[u]=r[a++]:e[u]=r[s++]}(t,n,i,s,o,r)}(e,t,0,e.length-1,[]),e}function ki(e,t){for(var n=[],i=void 0,o=0,r=Ni(e.slice(0),t);o<r.length;o++){var s=r[o];i&&0===t(i[0],s)?i.push(s):(i=[s],n.push(i))}return n}function Ei(e){return e.filter((function(e){return!!e}))}function Ii(e){return!Array.isArray(e)||0===e.length}function Oi(e){return Array.isArray(e)&&e.length>0}function Mi(e,t){if(!t)return e.filter((function(t,n){return e.indexOf(t)===n}));var n=Object.create(null);return e.filter((function(e){var i=t(e);return!n[i]&&(n[i]=!0,!0)}))}function Ti(e){var t=new Set;return e.filter((function(e){return!t.has(e)&&(t.add(e),!0)}))}function Pi(e,t){for(var n=0;n<e.length;n++){if(t(e[n]))return n}return-1}function Ri(e,t,n){void 0===n&&(n=void 0);var i=Pi(e,t);return i<0?n:e[i]}function Ai(e,t){return e.length>0?e[0]:t}function Fi(e){var t;return(t=[]).concat.apply(t,e)}function Wi(e,t){var n="number"==typeof t?e:0;"number"==typeof t?n=e:(n=0,t=e);var i=[];if(n<=t)for(var o=n;o<t;o++)i.push(o);else for(o=n;o>t;o--)i.push(o);return i}function Vi(e,t,n){var i=e.slice(0,t),o=e.slice(t);return i.concat(n,o)}function Bi(e,t){var n=e.indexOf(t);n>-1&&(e.splice(n,1),e.unshift(t))}function Hi(e,t){var n=e.indexOf(t);n>-1&&(e.splice(n,1),e.push(t))}function zi(e,t){for(var n=0;n<e.length;n++){var i=e[n];if(t(i,n,e))return i}}function ji(e){return Array.isArray(e)?e:[e]}!function(e){e.inMemory="inmemory",e.vscode="vscode",e.internal="private",e.walkThrough="walkThrough",e.walkThroughSnippet="walkThroughSnippet",e.http="http",e.https="https",e.file="file",e.mailto="mailto",e.untitled="untitled",e.data="data",e.command="command",e.vscodeRemote="vscode-remote",e.vscodeRemoteResource="vscode-remote-resource",e.userData="vscode-userdata"}(Ci||(Ci={}));var Ui=new(function(){function e(){this._hosts=Object.create(null),this._ports=Object.create(null),this._connectionTokens=Object.create(null),this._preferredWebSchema="http",this._delegate=null}return e.prototype.setPreferredWebSchema=function(e){this._preferredWebSchema=e},e.prototype.rewrite=function(e){if(this._delegate)return this._delegate(e);var t=e.authority,n=this._hosts[t];n&&-1!==n.indexOf(":")&&(n="["+n+"]");var i=this._ports[t],o=this._connectionTokens[t],r="path="+encodeURIComponent(e.path);return"string"==typeof o&&(r+="&tkn="+encodeURIComponent(o)),Et.from({scheme:w?this._preferredWebSchema:Ci.vscodeRemoteResource,authority:n+":"+i,path:"/vscode-remote-resource",query:r})},e}()),Ki={clipboard:{writeText:b||document.queryCommandSupported&&document.queryCommandSupported("copy")||!!(navigator&&navigator.clipboard&&navigator.clipboard.writeText),readText:b||!!(navigator&&navigator.clipboard&&navigator.clipboard.readText),richText:function(){if(Vn)return!1;if(Bn){var e=navigator.userAgent.indexOf("Edge/"),t=parseInt(navigator.userAgent.substring(e+5,navigator.userAgent.indexOf(".",e)),10);if(!t||t>=12&&t<=16)return!1}return!0}()},keyboard:b||Yn?0:navigator.keyboard||Kn?1:2,touch:"ontouchstart"in window||navigator.maxTouchPoints>0||window.navigator.msMaxTouchPoints>0,pointerEvents:window.PointerEvent&&("ontouchstart"in window||window.navigator.maxTouchPoints>0||navigator.maxTouchPoints>0||window.navigator.msMaxTouchPoints>0)},qi=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Gi=function(){return(Gi=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},Zi=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i};function Yi(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function Xi(e){e.parentNode&&e.parentNode.removeChild(e)}function $i(e){for(;e;){if(e===document.body)return!0;e=e.parentNode||e.host}return!1}var Qi=new(function(){function e(){this._lastStart=-1,this._lastEnd=-1}return e.prototype._findClassName=function(e,t){var n=e.className;if(n){t=t.trim();var i=n.length,o=t.length;if(0!==o)if(i<o)this._lastStart=-1;else{if(n===t)return this._lastStart=0,void(this._lastEnd=i);for(var r,s=-1;(s=n.indexOf(t,s+1))>=0;){if(r=s+o,(0===s||32===n.charCodeAt(s-1))&&32===n.charCodeAt(r))return this._lastStart=s,void(this._lastEnd=r+1);if(s>0&&32===n.charCodeAt(s-1)&&r===i)return this._lastStart=s-1,void(this._lastEnd=r);if(0===s&&r===i)return this._lastStart=0,void(this._lastEnd=r)}this._lastStart=-1}else this._lastStart=-1}else this._lastStart=-1},e.prototype.hasClass=function(e,t){return this._findClassName(e,t),-1!==this._lastStart},e.prototype.addClasses=function(e){for(var t=this,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];n.forEach((function(n){return n.split(" ").forEach((function(n){return t.addClass(e,n)}))}))},e.prototype.addClass=function(e,t){e.className?(this._findClassName(e,t),-1===this._lastStart&&(e.className=e.className+" "+t)):e.className=t},e.prototype.removeClass=function(e,t){this._findClassName(e,t),-1!==this._lastStart&&(e.className=e.className.substring(0,this._lastStart)+e.className.substring(this._lastEnd))},e.prototype.removeClasses=function(e){for(var t=this,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];n.forEach((function(n){return n.split(" ").forEach((function(n){return t.removeClass(e,n)}))}))},e.prototype.toggleClass=function(e,t,n){this._findClassName(e,t),-1===this._lastStart||void 0!==n&&n||this.removeClass(e,t),-1!==this._lastStart||void 0!==n&&!n||this.addClass(e,t)},e}()),Ji=new(function(){function e(){}return e.prototype.hasClass=function(e,t){return Boolean(t)&&e.classList&&e.classList.contains(t)},e.prototype.addClasses=function(e){for(var t=this,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];n.forEach((function(n){return n.split(" ").forEach((function(n){return t.addClass(e,n)}))}))},e.prototype.addClass=function(e,t){t&&e.classList&&e.classList.add(t)},e.prototype.removeClass=function(e,t){t&&e.classList&&e.classList.remove(t)},e.prototype.removeClasses=function(e){for(var t=this,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];n.forEach((function(n){return n.split(" ").forEach((function(n){return t.removeClass(e,n)}))}))},e.prototype.toggleClass=function(e,t,n){e.classList&&e.classList.toggle(t,n)},e}()),eo=Vn?Qi:Ji,to=eo.hasClass.bind(eo),no=eo.addClass.bind(eo),io=eo.addClasses.bind(eo),oo=eo.removeClass.bind(eo),ro=eo.removeClasses.bind(eo),so=eo.toggleClass.bind(eo),ao=function(){function e(e,t,n,i){this._node=e,this._type=t,this._handler=n,this._options=i||!1,this._node.addEventListener(this._type,this._handler,this._options)}return e.prototype.dispose=function(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)},e}();function uo(e,t,n,i){return new ao(e,t,n,i)}function lo(e){return function(t){return e(new li(t))}}var co=function(e,t,n,i){var o=n;return"click"===t||"mousedown"===t?o=lo(n):"keydown"!==t&&"keypress"!==t&&"keyup"!==t||(o=function(e){return function(t){return e(new ni(t))}}(n)),uo(e,t,o,i)};function ho(e,t,n){return uo(e,C&&Ki.pointerEvents?qo.POINTER_DOWN:qo.MOUSE_DOWN,t,n)}function po(e,t,n){return uo(e,C&&Ki.pointerEvents?qo.POINTER_UP:qo.MOUSE_UP,t,n)}function fo(e,t){return uo(e,"mouseout",(function(n){for(var i=n.relatedTarget;i&&i!==e;)i=i.parentNode;i!==e&&t(n)}))}var go,mo,vo=null;var _o,yo,bo,wo,Co,So=function(){function e(e,t){void 0===t&&(t=0),this._runner=e,this.priority=t,this._canceled=!1}return e.prototype.dispose=function(){this._canceled=!0},e.prototype.execute=function(){if(!this._canceled)try{this._runner()}catch(e){De(e)}},e.sort=function(e,t){return t.priority-e.priority},e}();_o=[],yo=null,bo=!1,wo=!1,Co=function(){for(bo=!1,yo=_o,_o=[],wo=!0;yo.length>0;)yo.sort(So.sort),yo.shift().execute();wo=!1},mo=function(e,t){void 0===t&&(t=0);var n,i=new So(e,t);return _o.push(i),bo||(bo=!0,n=Co,vo||(vo=self.requestAnimationFrame||self.msRequestAnimationFrame||self.webkitRequestAnimationFrame||self.mozRequestAnimationFrame||self.oRequestAnimationFrame||function(e){return setTimeout((function(){return e((new Date).getTime())}),0)}),vo.call(self,n)),i},go=function(e,t){if(wo){var n=new So(e,t);return yo.push(n),n}return mo(e,t)};var Lo=function(e,t){return t},xo=function(e){function t(t,n,i,o,r){void 0===o&&(o=Lo),void 0===r&&(r=16);var s=e.call(this)||this,a=null,u=0,l=s._register(new yi),c=function(){u=(new Date).getTime(),i(a),a=null};return s._register(uo(t,n,(function(e){a=o(a,e);var t=(new Date).getTime()-u;t>=r?(l.cancel(),c()):l.setIfNotSet(c,r-t)}))),s}return qi(t,e),t}(He);function Do(e,t,n,i,o){return new xo(e,t,n,i,o)}function No(e){return document.defaultView.getComputedStyle(e,null)}var ko=function(){function e(){}return e.convertToPixels=function(e,t){return parseFloat(t)||0},e.getDimension=function(t,n,i){var o=No(t),r="0";return o&&(r=o.getPropertyValue?o.getPropertyValue(n):o.getAttribute(i)),e.convertToPixels(t,r)},e.getBorderLeftWidth=function(t){return e.getDimension(t,"border-left-width","borderLeftWidth")},e.getBorderRightWidth=function(t){return e.getDimension(t,"border-right-width","borderRightWidth")},e.getBorderTopWidth=function(t){return e.getDimension(t,"border-top-width","borderTopWidth")},e.getBorderBottomWidth=function(t){return e.getDimension(t,"border-bottom-width","borderBottomWidth")},e.getPaddingLeft=function(t){return e.getDimension(t,"padding-left","paddingLeft")},e.getPaddingRight=function(t){return e.getDimension(t,"padding-right","paddingRight")},e.getPaddingTop=function(t){return e.getDimension(t,"padding-top","paddingTop")},e.getPaddingBottom=function(t){return e.getDimension(t,"padding-bottom","paddingBottom")},e.getMarginLeft=function(t){return e.getDimension(t,"margin-left","marginLeft")},e.getMarginTop=function(t){return e.getDimension(t,"margin-top","marginTop")},e.getMarginRight=function(t){return e.getDimension(t,"margin-right","marginRight")},e.getMarginBottom=function(t){return e.getDimension(t,"margin-bottom","marginBottom")},e}(),Eo=function(e,t){this.width=e,this.height=t};function Io(e){for(var t=e.offsetParent,n=e.offsetTop,i=e.offsetLeft;null!==(e=e.parentNode)&&e!==document.body&&e!==document.documentElement;){n-=e.scrollTop;var o=Vo(e)?null:No(e);o&&(i-="rtl"!==o.direction?e.scrollLeft:-e.scrollLeft),e===t&&(i+=ko.getBorderLeftWidth(e),n+=ko.getBorderTopWidth(e),n+=e.offsetTop,i+=e.offsetLeft,t=e.offsetParent)}return{left:i,top:n}}function Oo(e){var t=e.getBoundingClientRect();return{left:t.left+Mo.scrollX,top:t.top+Mo.scrollY,width:t.width,height:t.height}}var Mo=new(function(){function e(){}return Object.defineProperty(e.prototype,"scrollX",{get:function(){return"number"==typeof window.scrollX?window.scrollX:document.body.scrollLeft+document.documentElement.scrollLeft},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"scrollY",{get:function(){return"number"==typeof window.scrollY?window.scrollY:document.body.scrollTop+document.documentElement.scrollTop},enumerable:!0,configurable:!0}),e}());function To(e){var t=ko.getMarginLeft(e)+ko.getMarginRight(e);return e.offsetWidth+t}function Po(e){var t=ko.getBorderLeftWidth(e)+ko.getBorderRightWidth(e),n=ko.getPaddingLeft(e)+ko.getPaddingRight(e);return e.offsetWidth-t-n}function Ro(e){var t=ko.getBorderTopWidth(e)+ko.getBorderBottomWidth(e),n=ko.getPaddingTop(e)+ko.getPaddingBottom(e);return e.offsetHeight-t-n}function Ao(e){var t=ko.getMarginTop(e)+ko.getMarginBottom(e);return e.offsetHeight+t}function Fo(e,t){for(;e;){if(e===t)return!0;e=e.parentNode}return!1}function Wo(e,t,n){for(;e&&e.nodeType===e.ELEMENT_NODE;){if(to(e,t))return e;if(n)if("string"==typeof n){if(to(e,n))return null}else if(e===n)return null;e=e.parentNode}return null}function Vo(e){return e&&!!e.host&&!!e.mode}function Bo(e){return!!Ho(e)}function Ho(e){for(;e.parentNode;){if(e===document.body)return null;e=e.parentNode}return Vo(e)?e:null}function zo(e){void 0===e&&(e=document.getElementsByTagName("head")[0]);var t=document.createElement("style");return t.type="text/css",t.media="screen",e.appendChild(t),t}var jo=null;function Uo(){return jo||(jo=zo()),jo}function Ko(e,t){if(void 0===t&&(t=Uo()),t){for(var n=function(e){return e&&e.sheet&&e.sheet.rules?e.sheet.rules:e&&e.sheet&&e.sheet.cssRules?e.sheet.cssRules:[]}(t),i=[],o=0;o<n.length;o++){-1!==n[o].selectorText.indexOf(e)&&i.push(o)}for(o=i.length-1;o>=0;o--)t.sheet.deleteRule(i[o])}}var qo={CLICK:"click",DBLCLICK:"dblclick",MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_MOVE:"mousemove",MOUSE_OUT:"mouseout",MOUSE_ENTER:"mouseenter",MOUSE_LEAVE:"mouseleave",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",CONTEXT_MENU:"contextmenu",WHEEL:"wheel",KEY_DOWN:"keydown",KEY_PRESS:"keypress",KEY_UP:"keyup",LOAD:"load",BEFORE_UNLOAD:"beforeunload",UNLOAD:"unload",ABORT:"abort",ERROR:"error",RESIZE:"resize",SCROLL:"scroll",FULLSCREEN_CHANGE:"fullscreenchange",WK_FULLSCREEN_CHANGE:"webkitfullscreenchange",SELECT:"select",CHANGE:"change",SUBMIT:"submit",RESET:"reset",FOCUS:"focus",FOCUS_IN:"focusin",FOCUS_OUT:"focusout",BLUR:"blur",INPUT:"input",STORAGE:"storage",DRAG_START:"dragstart",DRAG:"drag",DRAG_ENTER:"dragenter",DRAG_LEAVE:"dragleave",DRAG_OVER:"dragover",DROP:"drop",DRAG_END:"dragend",ANIMATION_START:jn?"webkitAnimationStart":"animationstart",ANIMATION_END:jn?"webkitAnimationEnd":"animationend",ANIMATION_ITERATION:jn?"webkitAnimationIteration":"animationiteration"},Go=function(e,t){e.preventDefault?e.preventDefault():e.returnValue=!1,t&&(e.stopPropagation?e.stopPropagation():e.cancelBubble=!0)};var Zo=function(e){function t(t){var n=e.call(this)||this;n._onDidFocus=n._register(new nt),n.onDidFocus=n._onDidFocus.event,n._onDidBlur=n._register(new nt),n.onDidBlur=n._onDidBlur.event;var i=Fo(document.activeElement,t),o=!1,r=function(){o=!1,i||(i=!0,n._onDidFocus.fire())},s=function(){i&&(o=!0,window.setTimeout((function(){o&&(o=!1,i=!1,n._onDidBlur.fire())}),0))};return n._refreshStateHandler=function(){Fo(document.activeElement,t)!==i&&(i?s():r())},n._register(Xn(t,qo.FOCUS,!0)(r)),n._register(Xn(t,qo.BLUR,!0)(s)),n}return qi(t,e),t}(He);function Yo(e){return new Zo(e)}function Xo(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];return t.forEach((function(t){return e.appendChild(t)})),t[t.length-1]}var $o,Qo=/([\w\-]+)?(#([\w\-]+))?((.([\w\-]+))*)/;function Jo(e,t,n){for(var i=[],o=3;o<arguments.length;o++)i[o-3]=arguments[o];var r=Qo.exec(t);if(!r)throw new Error("Bad use of emmet");n=Gi({},n||{});var s,a=r[1]||"div";return s=e!==$o.HTML?document.createElementNS(e,a):document.createElement(a),r[3]&&(s.id=r[3]),r[4]&&(s.className=r[4].replace(/\./g," ").trim()),Object.keys(n).forEach((function(e){var t=n[e];void 0!==t&&(/^on\w+$/.test(e)?s[e]=t:"selected"===e?t&&s.setAttribute(e,"true"):s.setAttribute(e,t))})),Ei(i).forEach((function(e){e instanceof Node?s.appendChild(e):s.appendChild(document.createTextNode(e))})),s}function er(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return Jo.apply(void 0,Zi([$o.HTML,e,t],n))}function tr(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n=0,i=e;n<i.length;n++){var o=i[n];o.style.display="",o.removeAttribute("aria-hidden")}}function nr(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n=0,i=e;n<i.length;n++){var o=i[n];o.style.display="none",o.setAttribute("aria-hidden","true")}}function ir(e){if(e&&e.hasAttribute("tabIndex")){if(document.activeElement===e){var t=function(e,t){for(;e&&e.nodeType===e.ELEMENT_NODE;){if(e instanceof HTMLElement&&e.hasAttribute(t))return e;e=e.parentNode}return null}(e.parentElement,"tabIndex");t&&t.focus()}e.removeAttribute("tabindex")}}function or(e){return Array.prototype.slice.call(document.getElementsByTagName(e),0)}function rr(e){var t=window.devicePixelRatio*e;return Math.max(1,Math.floor(t))/window.devicePixelRatio}function sr(e){if(b||Zn)window.open(e);else{var t=window.open();t&&(t.opener=null,t.location.href=e)}}function ar(e){return e&&Ci.vscodeRemote===e.scheme?Ui.rewrite(e):e}function ur(e){return e?"url('"+ar(e).toString(!0).replace(/'/g,"%27")+"')":"url('')"}function lr(e){var t=JSON.parse(e);return t=function e(t,n){void 0===n&&(n=0);if(!t||n>200)return t;if("object"==typeof t){switch(t.$mid){case 1:return Et.revive(t);case 2:return new RegExp(t.source,t.flags)}for(var i in t)Object.hasOwnProperty.call(t,i)&&(t[i]=e(t[i],n+1))}return t}(t)}function cr(e){return!e||"string"!=typeof e||0===e.trim().length}function dr(e,t,n){void 0===n&&(n="0");for(var i=""+e,o=[i],r=i.length;r<t;r++)o.push(n);return o.reverse().join("")}!function(e){e.HTML="http://www.w3.org/1999/xhtml",e.SVG="http://www.w3.org/2000/svg"}($o||($o={})),er.SVG=function(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return Jo.apply(void 0,Zi([$o.SVG,e,t],n))},Ui.setPreferredWebSchema(/^https:/.test(window.location.href)?"https":"http");var hr=/{(\d+)}/g;function pr(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];return 0===t.length?e:e.replace(hr,(function(e,n){var i=parseInt(n,10);return isNaN(i)||i<0||i>=t.length?e:t[i]}))}function fr(e){return e.replace(/[<>&]/g,(function(e){switch(e){case"<":return"<";case">":return">";case"&":return"&";default:return e}}))}function gr(e){return e.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function mr(e,t){if(!e||!t)return e;var n=t.length,i=e.length;if(0===n||0===i)return e;for(var o=i,r=-1;-1!==(r=e.lastIndexOf(t,o-1))&&r+n===o;){if(0===r)return"";o=r}return e.substring(0,o)}function vr(e,t){if(e.length<t.length)return!1;if(e===t)return!0;for(var n=0;n<t.length;n++)if(e[n]!==t[n])return!1;return!0}function _r(e,t){var n=e.length-t.length;return n>0?e.indexOf(t,n)===n:0===n&&e===t}function yr(e,t,n){if(void 0===n&&(n={}),!e)throw new Error("Cannot create regex from empty string");t||(e=gr(e)),n.wholeWord&&(/\B/.test(e.charAt(0))||(e="\\b"+e),/\B/.test(e.charAt(e.length-1))||(e+="\\b"));var i="";return n.global&&(i+="g"),n.matchCase||(i+="i"),n.multiline&&(i+="m"),n.unicode&&(i+="u"),new RegExp(e,i)}function br(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")}function wr(e){for(var t=0,n=e.length;t<n;t++){var i=e.charCodeAt(t);if(32!==i&&9!==i)return t}return-1}function Cr(e,t,n){void 0===t&&(t=0),void 0===n&&(n=e.length);for(var i=t;i<n;i++){var o=e.charCodeAt(i);if(32!==o&&9!==o)return e.substring(t,i)}return e.substring(t,n)}function Sr(e,t){void 0===t&&(t=e.length-1);for(var n=t;n>=0;n--){var i=e.charCodeAt(n);if(32!==i&&9!==i)return n}return-1}function Lr(e,t){return e<t?-1:e>t?1:0}function xr(e,t){for(var n=Math.min(e.length,t.length),i=0;i<n;i++){var o=e.charCodeAt(i),r=t.charCodeAt(i);if(o!==r){Nr(o)&&(o+=32),Nr(r)&&(r+=32);var s=o-r;if(0!==s)return Dr(o)&&Dr(r)?s:Lr(e.toLowerCase(),t.toLowerCase())}}return e.length<t.length?-1:e.length>t.length?1:0}function Dr(e){return e>=97&&e<=122}function Nr(e){return e>=65&&e<=90}function kr(e){return Dr(e)||Nr(e)}function Er(e,t){return e.length===t.length&&Ir(e,t)}function Ir(e,t,n){void 0===n&&(n=e.length);for(var i=0;i<n;i++){var o=e.charCodeAt(i),r=t.charCodeAt(i);if(o!==r)if(kr(o)&&kr(r)){var s=Math.abs(o-r);if(0!==s&&32!==s)return!1}else if(String.fromCharCode(o).toLowerCase()!==String.fromCharCode(r).toLowerCase())return!1}return!0}function Or(e,t){var n=t.length;return!(t.length>e.length)&&Ir(e,t,n)}function Mr(e,t){var n,i=Math.min(e.length,t.length);for(n=0;n<i;n++)if(e.charCodeAt(n)!==t.charCodeAt(n))return n;return i}function Tr(e){return 55296<=e&&e<=56319}function Pr(e){return 56320<=e&&e<=57343}function Rr(e,t,n){var i=e.charCodeAt(n);if(Tr(i)&&n+1<t){var o=e.charCodeAt(n+1);if(Pr(o))return o-56320+(i-55296<<10)+65536}return i}function Ar(e,t){var n=e.charCodeAt(t-1);if(Pr(n)&&t>1){var i=e.charCodeAt(t-2);if(Tr(i))return n-56320+(i-55296<<10)+65536}return n}function Fr(e,t){var n=Qr.getInstance(),i=t,o=e.length,r=Rr(e,o,t);t+=r>=65536?2:1;for(var s=n.getGraphemeBreakType(r);t<o;){var a=Rr(e,o,t),u=n.getGraphemeBreakType(a);if($r(s,u))break;t+=a>=65536?2:1,s=u}return t-i}var Wr=/(?:[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05F4\u0608\u060B\u060D\u061B-\u064A\u066D-\u066F\u0671-\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u0710\u0712-\u072F\u074D-\u07A5\u07B1-\u07EA\u07F4\u07F5\u07FA-\u0815\u081A\u0824\u0828\u0830-\u0858\u085E-\u08BD\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFD3D\uFD50-\uFDFC\uFE70-\uFEFC]|\uD802[\uDC00-\uDD1B\uDD20-\uDE00\uDE10-\uDE33\uDE40-\uDEE4\uDEEB-\uDF35\uDF40-\uDFFF]|\uD803[\uDC00-\uDCFF]|\uD83A[\uDC00-\uDCCF\uDD00-\uDD43\uDD50-\uDFFF]|\uD83B[\uDC00-\uDEBB])/;function Vr(e){return Wr.test(e)}var Br=/(?:[\u231A\u231B\u23F0\u23F3\u2600-\u27BF\u2B50\u2B55]|\uD83C[\uDDE6-\uDDFF\uDF00-\uDFFF]|\uD83D[\uDC00-\uDE4F\uDE80-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD00-\uDDFF\uDE70-\uDE73\uDE78-\uDE82\uDE90-\uDE95])/;var Hr=/^[\t\n\r\x20-\x7E]*$/;function zr(e){return Hr.test(e)}function jr(e){return(e=+e)>=11904&&e<=55215||e>=63744&&e<=64255||e>=65281&&e<=65374}function Ur(e){return e>=127462&&e<=127487||e>=9728&&e<=10175||e>=127744&&e<=128591||e>=128640&&e<=128764||e>=128992&&e<=129003||e>=129280&&e<=129535||e>=129648&&e<=129651||e>=129656&&e<=129666||e>=129680&&e<=129685}var Kr=String.fromCharCode(65279);function qr(e){return!!(e&&e.length>0&&65279===e.charCodeAt(0))}function Gr(e){return btoa(encodeURIComponent(e))}function Zr(e,t){for(var n="",i=0;i<t;i++)n+=e;return n}function Yr(e){return(e%=52)<26?String.fromCharCode(97+e):String.fromCharCode(65+e-26)}function Xr(e){return Qr.getInstance().getGraphemeBreakType(e)}function $r(e,t){return 0===e?5!==t&&7!==t:(2!==e||3!==t)&&(4===e||2===e||3===e||(4===t||2===t||3===t||(8!==e||8!==t&&9!==t&&11!==t&&12!==t)&&((11!==e&&9!==e||9!==t&&10!==t)&&((12!==e&&10!==e||10!==t)&&(5!==t&&13!==t&&(7!==t&&(1!==e&&((13!==e||14!==t)&&(6!==e||6!==t)))))))))}var Qr=function(){function e(){this._data=JSON.parse("[0,0,0,51592,51592,11,44424,44424,11,72251,72254,5,7150,7150,7,48008,48008,11,55176,55176,11,128420,128420,14,3276,3277,5,9979,9980,14,46216,46216,11,49800,49800,11,53384,53384,11,70726,70726,5,122915,122916,5,129320,129327,14,2558,2558,5,5906,5908,5,9762,9763,14,43360,43388,8,45320,45320,11,47112,47112,11,48904,48904,11,50696,50696,11,52488,52488,11,54280,54280,11,70082,70083,1,71350,71350,7,73111,73111,5,127892,127893,14,128726,128727,14,129473,129474,14,2027,2035,5,2901,2902,5,3784,3789,5,6754,6754,5,8418,8420,5,9877,9877,14,11088,11088,14,44008,44008,5,44872,44872,11,45768,45768,11,46664,46664,11,47560,47560,11,48456,48456,11,49352,49352,11,50248,50248,11,51144,51144,11,52040,52040,11,52936,52936,11,53832,53832,11,54728,54728,11,69811,69814,5,70459,70460,5,71096,71099,7,71998,71998,5,72874,72880,5,119149,119149,7,127374,127374,14,128335,128335,14,128482,128482,14,128765,128767,14,129399,129400,14,129680,129685,14,1476,1477,5,2377,2380,7,2759,2760,5,3137,3140,7,3458,3459,7,4153,4154,5,6432,6434,5,6978,6978,5,7675,7679,5,9723,9726,14,9823,9823,14,9919,9923,14,10035,10036,14,42736,42737,5,43596,43596,5,44200,44200,11,44648,44648,11,45096,45096,11,45544,45544,11,45992,45992,11,46440,46440,11,46888,46888,11,47336,47336,11,47784,47784,11,48232,48232,11,48680,48680,11,49128,49128,11,49576,49576,11,50024,50024,11,50472,50472,11,50920,50920,11,51368,51368,11,51816,51816,11,52264,52264,11,52712,52712,11,53160,53160,11,53608,53608,11,54056,54056,11,54504,54504,11,54952,54952,11,68108,68111,5,69933,69940,5,70197,70197,7,70498,70499,7,70845,70845,5,71229,71229,5,71727,71735,5,72154,72155,5,72344,72345,5,73023,73029,5,94095,94098,5,121403,121452,5,126981,127182,14,127538,127546,14,127990,127990,14,128391,128391,14,128445,128449,14,128500,128505,14,128752,128752,14,129160,129167,14,129356,129356,14,129432,129442,14,129648,129651,14,129751,131069,14,173,173,4,1757,1757,1,2274,2274,1,2494,2494,5,2641,2641,5,2876,2876,5,3014,3016,7,3262,3262,7,3393,3396,5,3570,3571,7,3968,3972,5,4228,4228,7,6086,6086,5,6679,6680,5,6912,6915,5,7080,7081,5,7380,7392,5,8252,8252,14,9096,9096,14,9748,9749,14,9784,9786,14,9833,9850,14,9890,9894,14,9938,9938,14,9999,9999,14,10085,10087,14,12349,12349,14,43136,43137,7,43454,43456,7,43755,43755,7,44088,44088,11,44312,44312,11,44536,44536,11,44760,44760,11,44984,44984,11,45208,45208,11,45432,45432,11,45656,45656,11,45880,45880,11,46104,46104,11,46328,46328,11,46552,46552,11,46776,46776,11,47000,47000,11,47224,47224,11,47448,47448,11,47672,47672,11,47896,47896,11,48120,48120,11,48344,48344,11,48568,48568,11,48792,48792,11,49016,49016,11,49240,49240,11,49464,49464,11,49688,49688,11,49912,49912,11,50136,50136,11,50360,50360,11,50584,50584,11,50808,50808,11,51032,51032,11,51256,51256,11,51480,51480,11,51704,51704,11,51928,51928,11,52152,52152,11,52376,52376,11,52600,52600,11,52824,52824,11,53048,53048,11,53272,53272,11,53496,53496,11,53720,53720,11,53944,53944,11,54168,54168,11,54392,54392,11,54616,54616,11,54840,54840,11,55064,55064,11,65438,65439,5,69633,69633,5,69837,69837,1,70018,70018,7,70188,70190,7,70368,70370,7,70465,70468,7,70712,70719,5,70835,70840,5,70850,70851,5,71132,71133,5,71340,71340,7,71458,71461,5,71985,71989,7,72002,72002,7,72193,72202,5,72281,72283,5,72766,72766,7,72885,72886,5,73104,73105,5,92912,92916,5,113824,113827,4,119173,119179,5,121505,121519,5,125136,125142,5,127279,127279,14,127489,127490,14,127570,127743,14,127900,127901,14,128254,128254,14,128369,128370,14,128400,128400,14,128425,128432,14,128468,128475,14,128489,128494,14,128715,128720,14,128745,128745,14,128759,128760,14,129004,129023,14,129296,129304,14,129340,129342,14,129388,129392,14,129404,129407,14,129454,129455,14,129485,129487,14,129659,129663,14,129719,129727,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2363,2363,7,2402,2403,5,2507,2508,7,2622,2624,7,2691,2691,7,2786,2787,5,2881,2884,5,3006,3006,5,3072,3072,5,3170,3171,5,3267,3268,7,3330,3331,7,3406,3406,1,3538,3540,5,3655,3662,5,3897,3897,5,4038,4038,5,4184,4185,5,4352,4447,8,6068,6069,5,6155,6157,5,6448,6449,7,6742,6742,5,6783,6783,5,6966,6970,5,7042,7042,7,7143,7143,7,7212,7219,5,7412,7412,5,8206,8207,4,8294,8303,4,8596,8601,14,9410,9410,14,9742,9742,14,9757,9757,14,9770,9770,14,9794,9794,14,9828,9828,14,9855,9855,14,9882,9882,14,9900,9903,14,9929,9933,14,9963,9967,14,9987,9988,14,10006,10006,14,10062,10062,14,10175,10175,14,11744,11775,5,42607,42607,5,43043,43044,7,43263,43263,5,43444,43445,7,43569,43570,5,43698,43700,5,43766,43766,5,44032,44032,11,44144,44144,11,44256,44256,11,44368,44368,11,44480,44480,11,44592,44592,11,44704,44704,11,44816,44816,11,44928,44928,11,45040,45040,11,45152,45152,11,45264,45264,11,45376,45376,11,45488,45488,11,45600,45600,11,45712,45712,11,45824,45824,11,45936,45936,11,46048,46048,11,46160,46160,11,46272,46272,11,46384,46384,11,46496,46496,11,46608,46608,11,46720,46720,11,46832,46832,11,46944,46944,11,47056,47056,11,47168,47168,11,47280,47280,11,47392,47392,11,47504,47504,11,47616,47616,11,47728,47728,11,47840,47840,11,47952,47952,11,48064,48064,11,48176,48176,11,48288,48288,11,48400,48400,11,48512,48512,11,48624,48624,11,48736,48736,11,48848,48848,11,48960,48960,11,49072,49072,11,49184,49184,11,49296,49296,11,49408,49408,11,49520,49520,11,49632,49632,11,49744,49744,11,49856,49856,11,49968,49968,11,50080,50080,11,50192,50192,11,50304,50304,11,50416,50416,11,50528,50528,11,50640,50640,11,50752,50752,11,50864,50864,11,50976,50976,11,51088,51088,11,51200,51200,11,51312,51312,11,51424,51424,11,51536,51536,11,51648,51648,11,51760,51760,11,51872,51872,11,51984,51984,11,52096,52096,11,52208,52208,11,52320,52320,11,52432,52432,11,52544,52544,11,52656,52656,11,52768,52768,11,52880,52880,11,52992,52992,11,53104,53104,11,53216,53216,11,53328,53328,11,53440,53440,11,53552,53552,11,53664,53664,11,53776,53776,11,53888,53888,11,54000,54000,11,54112,54112,11,54224,54224,11,54336,54336,11,54448,54448,11,54560,54560,11,54672,54672,11,54784,54784,11,54896,54896,11,55008,55008,11,55120,55120,11,64286,64286,5,66272,66272,5,68900,68903,5,69762,69762,7,69817,69818,5,69927,69931,5,70003,70003,5,70070,70078,5,70094,70094,7,70194,70195,7,70206,70206,5,70400,70401,5,70463,70463,7,70475,70477,7,70512,70516,5,70722,70724,5,70832,70832,5,70842,70842,5,70847,70848,5,71088,71089,7,71102,71102,7,71219,71226,5,71231,71232,5,71342,71343,7,71453,71455,5,71463,71467,5,71737,71738,5,71995,71996,5,72000,72000,7,72145,72147,7,72160,72160,5,72249,72249,7,72273,72278,5,72330,72342,5,72752,72758,5,72850,72871,5,72882,72883,5,73018,73018,5,73031,73031,5,73109,73109,5,73461,73462,7,94031,94031,5,94192,94193,7,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,126976,126979,14,127184,127231,14,127344,127345,14,127405,127461,14,127514,127514,14,127561,127567,14,127778,127779,14,127896,127896,14,127985,127986,14,127995,127999,5,128326,128328,14,128360,128366,14,128378,128378,14,128394,128397,14,128405,128406,14,128422,128423,14,128435,128443,14,128453,128464,14,128479,128480,14,128484,128487,14,128496,128498,14,128640,128709,14,128723,128724,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129096,129103,14,129292,129292,14,129311,129311,14,129329,129330,14,129344,129349,14,129360,129374,14,129394,129394,14,129402,129402,14,129413,129425,14,129445,129450,14,129466,129471,14,129483,129483,14,129511,129535,14,129653,129655,14,129667,129670,14,129705,129711,14,129731,129743,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2307,2307,7,2366,2368,7,2382,2383,7,2434,2435,7,2497,2500,5,2519,2519,5,2563,2563,7,2631,2632,5,2677,2677,5,2750,2752,7,2763,2764,7,2817,2817,5,2879,2879,5,2891,2892,7,2914,2915,5,3008,3008,5,3021,3021,5,3076,3076,5,3146,3149,5,3202,3203,7,3264,3265,7,3271,3272,7,3298,3299,5,3390,3390,5,3402,3404,7,3426,3427,5,3535,3535,5,3544,3550,7,3635,3635,7,3763,3763,7,3893,3893,5,3953,3966,5,3981,3991,5,4145,4145,7,4157,4158,5,4209,4212,5,4237,4237,5,4520,4607,10,5970,5971,5,6071,6077,5,6089,6099,5,6277,6278,5,6439,6440,5,6451,6456,7,6683,6683,5,6744,6750,5,6765,6770,7,6846,6846,5,6964,6964,5,6972,6972,5,7019,7027,5,7074,7077,5,7083,7085,5,7146,7148,7,7154,7155,7,7222,7223,5,7394,7400,5,7416,7417,5,8204,8204,5,8233,8233,4,8288,8292,4,8413,8416,5,8482,8482,14,8986,8987,14,9193,9203,14,9654,9654,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9775,14,9792,9792,14,9800,9811,14,9825,9826,14,9831,9831,14,9852,9853,14,9872,9873,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9936,9936,14,9941,9960,14,9974,9974,14,9982,9985,14,9992,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10145,10145,14,11013,11015,14,11503,11505,5,12334,12335,5,12951,12951,14,42612,42621,5,43014,43014,5,43047,43047,7,43204,43205,5,43335,43345,5,43395,43395,7,43450,43451,7,43561,43566,5,43573,43574,5,43644,43644,5,43710,43711,5,43758,43759,7,44005,44005,5,44012,44012,7,44060,44060,11,44116,44116,11,44172,44172,11,44228,44228,11,44284,44284,11,44340,44340,11,44396,44396,11,44452,44452,11,44508,44508,11,44564,44564,11,44620,44620,11,44676,44676,11,44732,44732,11,44788,44788,11,44844,44844,11,44900,44900,11,44956,44956,11,45012,45012,11,45068,45068,11,45124,45124,11,45180,45180,11,45236,45236,11,45292,45292,11,45348,45348,11,45404,45404,11,45460,45460,11,45516,45516,11,45572,45572,11,45628,45628,11,45684,45684,11,45740,45740,11,45796,45796,11,45852,45852,11,45908,45908,11,45964,45964,11,46020,46020,11,46076,46076,11,46132,46132,11,46188,46188,11,46244,46244,11,46300,46300,11,46356,46356,11,46412,46412,11,46468,46468,11,46524,46524,11,46580,46580,11,46636,46636,11,46692,46692,11,46748,46748,11,46804,46804,11,46860,46860,11,46916,46916,11,46972,46972,11,47028,47028,11,47084,47084,11,47140,47140,11,47196,47196,11,47252,47252,11,47308,47308,11,47364,47364,11,47420,47420,11,47476,47476,11,47532,47532,11,47588,47588,11,47644,47644,11,47700,47700,11,47756,47756,11,47812,47812,11,47868,47868,11,47924,47924,11,47980,47980,11,48036,48036,11,48092,48092,11,48148,48148,11,48204,48204,11,48260,48260,11,48316,48316,11,48372,48372,11,48428,48428,11,48484,48484,11,48540,48540,11,48596,48596,11,48652,48652,11,48708,48708,11,48764,48764,11,48820,48820,11,48876,48876,11,48932,48932,11,48988,48988,11,49044,49044,11,49100,49100,11,49156,49156,11,49212,49212,11,49268,49268,11,49324,49324,11,49380,49380,11,49436,49436,11,49492,49492,11,49548,49548,11,49604,49604,11,49660,49660,11,49716,49716,11,49772,49772,11,49828,49828,11,49884,49884,11,49940,49940,11,49996,49996,11,50052,50052,11,50108,50108,11,50164,50164,11,50220,50220,11,50276,50276,11,50332,50332,11,50388,50388,11,50444,50444,11,50500,50500,11,50556,50556,11,50612,50612,11,50668,50668,11,50724,50724,11,50780,50780,11,50836,50836,11,50892,50892,11,50948,50948,11,51004,51004,11,51060,51060,11,51116,51116,11,51172,51172,11,51228,51228,11,51284,51284,11,51340,51340,11,51396,51396,11,51452,51452,11,51508,51508,11,51564,51564,11,51620,51620,11,51676,51676,11,51732,51732,11,51788,51788,11,51844,51844,11,51900,51900,11,51956,51956,11,52012,52012,11,52068,52068,11,52124,52124,11,52180,52180,11,52236,52236,11,52292,52292,11,52348,52348,11,52404,52404,11,52460,52460,11,52516,52516,11,52572,52572,11,52628,52628,11,52684,52684,11,52740,52740,11,52796,52796,11,52852,52852,11,52908,52908,11,52964,52964,11,53020,53020,11,53076,53076,11,53132,53132,11,53188,53188,11,53244,53244,11,53300,53300,11,53356,53356,11,53412,53412,11,53468,53468,11,53524,53524,11,53580,53580,11,53636,53636,11,53692,53692,11,53748,53748,11,53804,53804,11,53860,53860,11,53916,53916,11,53972,53972,11,54028,54028,11,54084,54084,11,54140,54140,11,54196,54196,11,54252,54252,11,54308,54308,11,54364,54364,11,54420,54420,11,54476,54476,11,54532,54532,11,54588,54588,11,54644,54644,11,54700,54700,11,54756,54756,11,54812,54812,11,54868,54868,11,54924,54924,11,54980,54980,11,55036,55036,11,55092,55092,11,55148,55148,11,55216,55238,9,65056,65071,5,65529,65531,4,68097,68099,5,68159,68159,5,69446,69456,5,69688,69702,5,69808,69810,7,69815,69816,7,69821,69821,1,69888,69890,5,69932,69932,7,69957,69958,7,70016,70017,5,70067,70069,7,70079,70080,7,70089,70092,5,70095,70095,5,70191,70193,5,70196,70196,5,70198,70199,5,70367,70367,5,70371,70378,5,70402,70403,7,70462,70462,5,70464,70464,5,70471,70472,7,70487,70487,5,70502,70508,5,70709,70711,7,70720,70721,7,70725,70725,7,70750,70750,5,70833,70834,7,70841,70841,7,70843,70844,7,70846,70846,7,70849,70849,7,71087,71087,5,71090,71093,5,71100,71101,5,71103,71104,5,71216,71218,7,71227,71228,7,71230,71230,7,71339,71339,5,71341,71341,5,71344,71349,5,71351,71351,5,71456,71457,7,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123628,123631,5,125252,125258,5,126980,126980,14,127183,127183,14,127245,127247,14,127340,127343,14,127358,127359,14,127377,127386,14,127462,127487,6,127491,127503,14,127535,127535,14,127548,127551,14,127568,127569,14,127744,127777,14,127780,127891,14,127894,127895,14,127897,127899,14,127902,127984,14,127987,127989,14,127991,127994,14,128000,128253,14,128255,128317,14,128329,128334,14,128336,128359,14,128367,128368,14,128371,128377,14,128379,128390,14,128392,128393,14,128398,128399,14,128401,128404,14,128407,128419,14,128421,128421,14,128424,128424,14,128433,128434,14,128444,128444,14,128450,128452,14,128465,128467,14,128476,128478,14,128481,128481,14,128483,128483,14,128488,128488,14,128495,128495,14,128499,128499,14,128506,128591,14,128710,128714,14,128721,128722,14,128725,128725,14,128728,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129664,129666,14,129671,129679,14,129686,129704,14,129712,129718,14,129728,129730,14,129744,129750,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2259,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3134,3136,5,3142,3144,5,3157,3158,5,3201,3201,5,3260,3260,5,3263,3263,5,3266,3266,5,3270,3270,5,3274,3275,7,3285,3286,5,3328,3329,5,3387,3388,5,3391,3392,7,3398,3400,7,3405,3405,5,3415,3415,5,3457,3457,5,3530,3530,5,3536,3537,7,3542,3542,5,3551,3551,5,3633,3633,5,3636,3642,5,3761,3761,5,3764,3772,5,3864,3865,5,3895,3895,5,3902,3903,7,3967,3967,7,3974,3975,5,3993,4028,5,4141,4144,5,4146,4151,5,4155,4156,7,4182,4183,7,4190,4192,5,4226,4226,5,4229,4230,5,4253,4253,5,4448,4519,9,4957,4959,5,5938,5940,5,6002,6003,5,6070,6070,7,6078,6085,7,6087,6088,7,6109,6109,5,6158,6158,4,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6848,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7673,5,8203,8203,4,8205,8205,13,8232,8232,4,8234,8238,4,8265,8265,14,8293,8293,4,8400,8412,5,8417,8417,5,8421,8432,5,8505,8505,14,8617,8618,14,9000,9000,14,9167,9167,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9776,9783,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9935,14,9937,9937,14,9939,9940,14,9961,9962,14,9968,9973,14,9975,9978,14,9981,9981,14,9986,9986,14,9989,9989,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10084,14,10133,10135,14,10160,10160,14,10548,10549,14,11035,11036,14,11093,11093,14,11647,11647,5,12330,12333,5,12336,12336,14,12441,12442,5,12953,12953,14,42608,42610,5,42654,42655,5,43010,43010,5,43019,43019,5,43045,43046,5,43052,43052,5,43188,43203,7,43232,43249,5,43302,43309,5,43346,43347,7,43392,43394,5,43443,43443,5,43446,43449,5,43452,43453,5,43493,43493,5,43567,43568,7,43571,43572,7,43587,43587,5,43597,43597,7,43696,43696,5,43703,43704,5,43713,43713,5,43756,43757,5,43765,43765,7,44003,44004,7,44006,44007,7,44009,44010,7,44013,44013,5,44033,44059,12,44061,44087,12,44089,44115,12,44117,44143,12,44145,44171,12,44173,44199,12,44201,44227,12,44229,44255,12,44257,44283,12,44285,44311,12,44313,44339,12,44341,44367,12,44369,44395,12,44397,44423,12,44425,44451,12,44453,44479,12,44481,44507,12,44509,44535,12,44537,44563,12,44565,44591,12,44593,44619,12,44621,44647,12,44649,44675,12,44677,44703,12,44705,44731,12,44733,44759,12,44761,44787,12,44789,44815,12,44817,44843,12,44845,44871,12,44873,44899,12,44901,44927,12,44929,44955,12,44957,44983,12,44985,45011,12,45013,45039,12,45041,45067,12,45069,45095,12,45097,45123,12,45125,45151,12,45153,45179,12,45181,45207,12,45209,45235,12,45237,45263,12,45265,45291,12,45293,45319,12,45321,45347,12,45349,45375,12,45377,45403,12,45405,45431,12,45433,45459,12,45461,45487,12,45489,45515,12,45517,45543,12,45545,45571,12,45573,45599,12,45601,45627,12,45629,45655,12,45657,45683,12,45685,45711,12,45713,45739,12,45741,45767,12,45769,45795,12,45797,45823,12,45825,45851,12,45853,45879,12,45881,45907,12,45909,45935,12,45937,45963,12,45965,45991,12,45993,46019,12,46021,46047,12,46049,46075,12,46077,46103,12,46105,46131,12,46133,46159,12,46161,46187,12,46189,46215,12,46217,46243,12,46245,46271,12,46273,46299,12,46301,46327,12,46329,46355,12,46357,46383,12,46385,46411,12,46413,46439,12,46441,46467,12,46469,46495,12,46497,46523,12,46525,46551,12,46553,46579,12,46581,46607,12,46609,46635,12,46637,46663,12,46665,46691,12,46693,46719,12,46721,46747,12,46749,46775,12,46777,46803,12,46805,46831,12,46833,46859,12,46861,46887,12,46889,46915,12,46917,46943,12,46945,46971,12,46973,46999,12,47001,47027,12,47029,47055,12,47057,47083,12,47085,47111,12,47113,47139,12,47141,47167,12,47169,47195,12,47197,47223,12,47225,47251,12,47253,47279,12,47281,47307,12,47309,47335,12,47337,47363,12,47365,47391,12,47393,47419,12,47421,47447,12,47449,47475,12,47477,47503,12,47505,47531,12,47533,47559,12,47561,47587,12,47589,47615,12,47617,47643,12,47645,47671,12,47673,47699,12,47701,47727,12,47729,47755,12,47757,47783,12,47785,47811,12,47813,47839,12,47841,47867,12,47869,47895,12,47897,47923,12,47925,47951,12,47953,47979,12,47981,48007,12,48009,48035,12,48037,48063,12,48065,48091,12,48093,48119,12,48121,48147,12,48149,48175,12,48177,48203,12,48205,48231,12,48233,48259,12,48261,48287,12,48289,48315,12,48317,48343,12,48345,48371,12,48373,48399,12,48401,48427,12,48429,48455,12,48457,48483,12,48485,48511,12,48513,48539,12,48541,48567,12,48569,48595,12,48597,48623,12,48625,48651,12,48653,48679,12,48681,48707,12,48709,48735,12,48737,48763,12,48765,48791,12,48793,48819,12,48821,48847,12,48849,48875,12,48877,48903,12,48905,48931,12,48933,48959,12,48961,48987,12,48989,49015,12,49017,49043,12,49045,49071,12,49073,49099,12,49101,49127,12,49129,49155,12,49157,49183,12,49185,49211,12,49213,49239,12,49241,49267,12,49269,49295,12,49297,49323,12,49325,49351,12,49353,49379,12,49381,49407,12,49409,49435,12,49437,49463,12,49465,49491,12,49493,49519,12,49521,49547,12,49549,49575,12,49577,49603,12,49605,49631,12,49633,49659,12,49661,49687,12,49689,49715,12,49717,49743,12,49745,49771,12,49773,49799,12,49801,49827,12,49829,49855,12,49857,49883,12,49885,49911,12,49913,49939,12,49941,49967,12,49969,49995,12,49997,50023,12,50025,50051,12,50053,50079,12,50081,50107,12,50109,50135,12,50137,50163,12,50165,50191,12,50193,50219,12,50221,50247,12,50249,50275,12,50277,50303,12,50305,50331,12,50333,50359,12,50361,50387,12,50389,50415,12,50417,50443,12,50445,50471,12,50473,50499,12,50501,50527,12,50529,50555,12,50557,50583,12,50585,50611,12,50613,50639,12,50641,50667,12,50669,50695,12,50697,50723,12,50725,50751,12,50753,50779,12,50781,50807,12,50809,50835,12,50837,50863,12,50865,50891,12,50893,50919,12,50921,50947,12,50949,50975,12,50977,51003,12,51005,51031,12,51033,51059,12,51061,51087,12,51089,51115,12,51117,51143,12,51145,51171,12,51173,51199,12,51201,51227,12,51229,51255,12,51257,51283,12,51285,51311,12,51313,51339,12,51341,51367,12,51369,51395,12,51397,51423,12,51425,51451,12,51453,51479,12,51481,51507,12,51509,51535,12,51537,51563,12,51565,51591,12,51593,51619,12,51621,51647,12,51649,51675,12,51677,51703,12,51705,51731,12,51733,51759,12,51761,51787,12,51789,51815,12,51817,51843,12,51845,51871,12,51873,51899,12,51901,51927,12,51929,51955,12,51957,51983,12,51985,52011,12,52013,52039,12,52041,52067,12,52069,52095,12,52097,52123,12,52125,52151,12,52153,52179,12,52181,52207,12,52209,52235,12,52237,52263,12,52265,52291,12,52293,52319,12,52321,52347,12,52349,52375,12,52377,52403,12,52405,52431,12,52433,52459,12,52461,52487,12,52489,52515,12,52517,52543,12,52545,52571,12,52573,52599,12,52601,52627,12,52629,52655,12,52657,52683,12,52685,52711,12,52713,52739,12,52741,52767,12,52769,52795,12,52797,52823,12,52825,52851,12,52853,52879,12,52881,52907,12,52909,52935,12,52937,52963,12,52965,52991,12,52993,53019,12,53021,53047,12,53049,53075,12,53077,53103,12,53105,53131,12,53133,53159,12,53161,53187,12,53189,53215,12,53217,53243,12,53245,53271,12,53273,53299,12,53301,53327,12,53329,53355,12,53357,53383,12,53385,53411,12,53413,53439,12,53441,53467,12,53469,53495,12,53497,53523,12,53525,53551,12,53553,53579,12,53581,53607,12,53609,53635,12,53637,53663,12,53665,53691,12,53693,53719,12,53721,53747,12,53749,53775,12,53777,53803,12,53805,53831,12,53833,53859,12,53861,53887,12,53889,53915,12,53917,53943,12,53945,53971,12,53973,53999,12,54001,54027,12,54029,54055,12,54057,54083,12,54085,54111,12,54113,54139,12,54141,54167,12,54169,54195,12,54197,54223,12,54225,54251,12,54253,54279,12,54281,54307,12,54309,54335,12,54337,54363,12,54365,54391,12,54393,54419,12,54421,54447,12,54449,54475,12,54477,54503,12,54505,54531,12,54533,54559,12,54561,54587,12,54589,54615,12,54617,54643,12,54645,54671,12,54673,54699,12,54701,54727,12,54729,54755,12,54757,54783,12,54785,54811,12,54813,54839,12,54841,54867,12,54869,54895,12,54897,54923,12,54925,54951,12,54953,54979,12,54981,55007,12,55009,55035,12,55037,55063,12,55065,55091,12,55093,55119,12,55121,55147,12,55149,55175,12,55177,55203,12,55243,55291,10,65024,65039,5,65279,65279,4,65520,65528,4,66045,66045,5,66422,66426,5,68101,68102,5,68152,68154,5,68325,68326,5,69291,69292,5,69632,69632,7,69634,69634,7,69759,69761,5]")}return e.getInstance=function(){return e._INSTANCE||(e._INSTANCE=new e),e._INSTANCE},e.prototype.getGraphemeBreakType=function(e){if(e<32)return 10===e?3:13===e?2:4;if(e<127)return 0;for(var t=this._data,n=t.length/3,i=1;i<=n;)if(e<t[3*i])i*=2;else{if(!(e>t[3*i+1]))return t[3*i+2];i=2*i+1}return 0},e._INSTANCE=null,e}();var Jr="undefined"==typeof process?{cwd:function(){return"/"},env:Object.create(null),get platform(){return v?"win32":_?"darwin":"linux"},nextTick:function(e){return L(e)}}:process,es=Jr.cwd,ts=Jr.env,ns=Jr.platform,is=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),os=function(e){function t(t,n,i){var o,r=this;"string"==typeof n&&0===n.indexOf("not ")?(o="must not be",n=n.replace(/^not /,"")):o="must be";var s=-1!==t.indexOf(".")?"property":"argument",a='The "'+t+'" '+s+" "+o+" of type "+n;return a+=". Received type "+typeof i,(r=e.call(this,a)||this).code="ERR_INVALID_ARG_TYPE",r}return is(t,e),t}(Error);function rs(e,t){if("string"!=typeof e)throw new os(t,"string",e)}function ss(e){return 47===e||92===e}function as(e){return 47===e}function us(e){return e>=65&&e<=90||e>=97&&e<=122}function ls(e,t,n,i){for(var o,r="",s=0,a=-1,u=0,l=0;l<=e.length;++l){if(l<e.length)o=e.charCodeAt(l);else{if(i(o))break;o=47}if(i(o)){if(a===l-1||1===u);else if(a!==l-1&&2===u){if(r.length<2||2!==s||46!==r.charCodeAt(r.length-1)||46!==r.charCodeAt(r.length-2)){if(r.length>2){var c=r.lastIndexOf(n);-1===c?(r="",s=0):s=(r=r.slice(0,c)).length-1-r.lastIndexOf(n),a=l,u=0;continue}if(2===r.length||1===r.length){r="",s=0,a=l,u=0;continue}}t&&(r.length>0?r+=n+"..":r="..",s=2)}else r.length>0?r+=n+e.slice(a+1,l):r=e.slice(a+1,l),s=l-a-1;a=l,u=0}else 46===o&&-1!==u?++u:u=-1}return r}function cs(e,t){var n=t.dir||t.root,i=t.base||(t.name||"")+(t.ext||"");return n?n===t.root?n+i:n+e+i:i}var ds={resolve:function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n="",i="",o=!1,r=e.length-1;r>=-1;r--){var s=void 0;if(r>=0?s=e[r]:n?void 0!==(s=ts["="+n]||es())&&s.slice(0,3).toLowerCase()===n.toLowerCase()+"\\"||(s=n+"\\"):s=es(),rs(s,"path"),0!==s.length){var a=s.length,u=0,l="",c=!1,d=s.charCodeAt(0);if(a>1)if(ss(d))if(c=!0,ss(s.charCodeAt(1))){for(var h=2,p=h;h<a&&!ss(s.charCodeAt(h));++h);if(h<a&&h!==p){var f=s.slice(p,h);for(p=h;h<a&&ss(s.charCodeAt(h));++h);if(h<a&&h!==p){for(p=h;h<a&&!ss(s.charCodeAt(h));++h);h===a?(l="\\\\"+f+"\\"+s.slice(p),u=h):h!==p&&(l="\\\\"+f+"\\"+s.slice(p,h),u=h)}}}else u=1;else us(d)&&58===s.charCodeAt(1)&&(l=s.slice(0,2),u=2,a>2&&ss(s.charCodeAt(2))&&(c=!0,u=3));else ss(d)&&(u=1,c=!0);if(!(l.length>0&&n.length>0&&l.toLowerCase()!==n.toLowerCase())&&(0===n.length&&l.length>0&&(n=l),o||(i=s.slice(u)+"\\"+i,o=c),n.length>0&&o))break}}return n+(o?"\\":"")+(i=ls(i,!o,"\\",ss))||"."},normalize:function(e){rs(e,"path");var t=e.length;if(0===t)return".";var n,i,o=0,r=!1,s=e.charCodeAt(0);if(t>1)if(ss(s))if(r=!0,ss(e.charCodeAt(1))){for(var a=2,u=a;a<t&&!ss(e.charCodeAt(a));++a);if(a<t&&a!==u){var l=e.slice(u,a);for(u=a;a<t&&ss(e.charCodeAt(a));++a);if(a<t&&a!==u){for(u=a;a<t&&!ss(e.charCodeAt(a));++a);if(a===t)return"\\\\"+l+"\\"+e.slice(u)+"\\";a!==u&&(n="\\\\"+l+"\\"+e.slice(u,a),o=a)}}}else o=1;else us(s)&&58===e.charCodeAt(1)&&(n=e.slice(0,2),o=2,t>2&&ss(e.charCodeAt(2))&&(r=!0,o=3));else if(ss(s))return"\\";return 0!==(i=o<t?ls(e.slice(o),!r,"\\",ss):"").length||r||(i="."),i.length>0&&ss(e.charCodeAt(t-1))&&(i+="\\"),void 0===n?r?i.length>0?"\\"+i:"\\":i.length>0?i:"":r?i.length>0?n+"\\"+i:n+"\\":i.length>0?n+i:n},isAbsolute:function(e){rs(e,"path");var t=e.length;if(0===t)return!1;var n=e.charCodeAt(0);return!!ss(n)||!!(us(n)&&t>2&&58===e.charCodeAt(1)&&ss(e.charCodeAt(2)))},join:function(){for(var e,t,n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];if(0===n.length)return".";for(var o=0;o<n.length;++o){var r=n[o];rs(r,"path"),r.length>0&&(void 0===e?e=t=r:e+="\\"+r)}if(void 0===e)return".";var s=!0,a=0;if("string"==typeof t&&ss(t.charCodeAt(0))){++a;var u=t.length;u>1&&ss(t.charCodeAt(1))&&(++a,u>2&&(ss(t.charCodeAt(2))?++a:s=!1))}if(s){for(;a<e.length&&ss(e.charCodeAt(a));++a);a>=2&&(e="\\"+e.slice(a))}return ds.normalize(e)},relative:function(e,t){if(rs(e,"from"),rs(t,"to"),e===t)return"";var n=ds.resolve(e),i=ds.resolve(t);if(n===i)return"";if((e=n.toLowerCase())===(t=i.toLowerCase()))return"";for(var o=0;o<e.length&&92===e.charCodeAt(o);++o);for(var r=e.length;r-1>o&&92===e.charCodeAt(r-1);--r);for(var s=r-o,a=0;a<t.length&&92===t.charCodeAt(a);++a);for(var u=t.length;u-1>a&&92===t.charCodeAt(u-1);--u);for(var l=u-a,c=s<l?s:l,d=-1,h=0;h<=c;++h){if(h===c){if(l>c){if(92===t.charCodeAt(a+h))return i.slice(a+h+1);if(2===h)return i.slice(a+h)}s>c&&(92===e.charCodeAt(o+h)?d=h:2===h&&(d=3));break}var p=e.charCodeAt(o+h);if(p!==t.charCodeAt(a+h))break;92===p&&(d=h)}if(h!==c&&-1===d)return i;var f="";for(-1===d&&(d=0),h=o+d+1;h<=r;++h)h!==r&&92!==e.charCodeAt(h)||(0===f.length?f+="..":f+="\\..");return f.length>0?f+i.slice(a+d,u):(a+=d,92===i.charCodeAt(a)&&++a,i.slice(a,u))},toNamespacedPath:function(e){if("string"!=typeof e)return e;if(0===e.length)return"";var t=ds.resolve(e);if(t.length>=3)if(92===t.charCodeAt(0)){if(92===t.charCodeAt(1)){var n=t.charCodeAt(2);if(63!==n&&46!==n)return"\\\\?\\UNC\\"+t.slice(2)}}else if(us(t.charCodeAt(0))&&58===t.charCodeAt(1)&&92===t.charCodeAt(2))return"\\\\?\\"+t;return e},dirname:function(e){rs(e,"path");var t=e.length;if(0===t)return".";var n=-1,i=-1,o=!0,r=0,s=e.charCodeAt(0);if(t>1)if(ss(s)){if(n=r=1,ss(e.charCodeAt(1))){for(var a=2,u=a;a<t&&!ss(e.charCodeAt(a));++a);if(a<t&&a!==u){for(u=a;a<t&&ss(e.charCodeAt(a));++a);if(a<t&&a!==u){for(u=a;a<t&&!ss(e.charCodeAt(a));++a);if(a===t)return e;a!==u&&(n=r=a+1)}}}}else us(s)&&58===e.charCodeAt(1)&&(n=r=2,t>2&&ss(e.charCodeAt(2))&&(n=r=3));else if(ss(s))return e;for(var l=t-1;l>=r;--l)if(ss(e.charCodeAt(l))){if(!o){i=l;break}}else o=!1;if(-1===i){if(-1===n)return".";i=n}return e.slice(0,i)},basename:function(e,t){void 0!==t&&rs(t,"ext"),rs(e,"path");var n,i=0,o=-1,r=!0;e.length>=2&&(us(e.charCodeAt(0))&&58===e.charCodeAt(1)&&(i=2));if(void 0!==t&&t.length>0&&t.length<=e.length){if(t.length===e.length&&t===e)return"";var s=t.length-1,a=-1;for(n=e.length-1;n>=i;--n){var u=e.charCodeAt(n);if(ss(u)){if(!r){i=n+1;break}}else-1===a&&(r=!1,a=n+1),s>=0&&(u===t.charCodeAt(s)?-1==--s&&(o=n):(s=-1,o=a))}return i===o?o=a:-1===o&&(o=e.length),e.slice(i,o)}for(n=e.length-1;n>=i;--n)if(ss(e.charCodeAt(n))){if(!r){i=n+1;break}}else-1===o&&(r=!1,o=n+1);return-1===o?"":e.slice(i,o)},extname:function(e){rs(e,"path");var t=0,n=-1,i=0,o=-1,r=!0,s=0;e.length>=2&&58===e.charCodeAt(1)&&us(e.charCodeAt(0))&&(t=i=2);for(var a=e.length-1;a>=t;--a){var u=e.charCodeAt(a);if(ss(u)){if(!r){i=a+1;break}}else-1===o&&(r=!1,o=a+1),46===u?-1===n?n=a:1!==s&&(s=1):-1!==n&&(s=-1)}return-1===n||-1===o||0===s||1===s&&n===o-1&&n===i+1?"":e.slice(n,o)},format:function(e){if(null===e||"object"!=typeof e)throw new os("pathObject","Object",e);return cs("\\",e)},parse:function(e){rs(e,"path");var t={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return t;var n=e.length,i=0,o=e.charCodeAt(0);if(n>1){if(ss(o)){if(i=1,ss(e.charCodeAt(1))){for(var r=2,s=r;r<n&&!ss(e.charCodeAt(r));++r);if(r<n&&r!==s){for(s=r;r<n&&ss(e.charCodeAt(r));++r);if(r<n&&r!==s){for(s=r;r<n&&!ss(e.charCodeAt(r));++r);r===n?i=r:r!==s&&(i=r+1)}}}}else if(us(o)&&58===e.charCodeAt(1)){if(i=2,!(n>2))return t.root=t.dir=e,t;if(ss(e.charCodeAt(2))){if(3===n)return t.root=t.dir=e,t;i=3}}}else if(ss(o))return t.root=t.dir=e,t;i>0&&(t.root=e.slice(0,i));for(var a=-1,u=i,l=-1,c=!0,d=e.length-1,h=0;d>=i;--d)if(ss(o=e.charCodeAt(d))){if(!c){u=d+1;break}}else-1===l&&(c=!1,l=d+1),46===o?-1===a?a=d:1!==h&&(h=1):-1!==a&&(h=-1);return-1===a||-1===l||0===h||1===h&&a===l-1&&a===u+1?-1!==l&&(t.base=t.name=e.slice(u,l)):(t.name=e.slice(u,a),t.base=e.slice(u,l),t.ext=e.slice(a,l)),t.dir=u>0&&u!==i?e.slice(0,u-1):t.root,t},sep:"\\",delimiter:";",win32:null,posix:null},hs={resolve:function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n="",i=!1,o=e.length-1;o>=-1&&!i;o--){var r=void 0;rs(r=o>=0?e[o]:es(),"path"),0!==r.length&&(n=r+"/"+n,i=47===r.charCodeAt(0))}return n=ls(n,!i,"/",as),i?n.length>0?"/"+n:"/":n.length>0?n:"."},normalize:function(e){if(rs(e,"path"),0===e.length)return".";var t=47===e.charCodeAt(0),n=47===e.charCodeAt(e.length-1);return 0!==(e=ls(e,!t,"/",as)).length||t||(e="."),e.length>0&&n&&(e+="/"),t?"/"+e:e},isAbsolute:function(e){return rs(e,"path"),e.length>0&&47===e.charCodeAt(0)},join:function(){for(var e,t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];if(0===t.length)return".";for(var i=0;i<t.length;++i){var o=arguments[i];rs(o,"path"),o.length>0&&(void 0===e?e=o:e+="/"+o)}return void 0===e?".":hs.normalize(e)},relative:function(e,t){if(rs(e,"from"),rs(t,"to"),e===t)return"";if((e=hs.resolve(e))===(t=hs.resolve(t)))return"";for(var n=1;n<e.length&&47===e.charCodeAt(n);++n);for(var i=e.length,o=i-n,r=1;r<t.length&&47===t.charCodeAt(r);++r);for(var s=t.length-r,a=o<s?o:s,u=-1,l=0;l<=a;++l){if(l===a){if(s>a){if(47===t.charCodeAt(r+l))return t.slice(r+l+1);if(0===l)return t.slice(r+l)}else o>a&&(47===e.charCodeAt(n+l)?u=l:0===l&&(u=0));break}var c=e.charCodeAt(n+l);if(c!==t.charCodeAt(r+l))break;47===c&&(u=l)}var d="";for(l=n+u+1;l<=i;++l)l!==i&&47!==e.charCodeAt(l)||(0===d.length?d+="..":d+="/..");return d.length>0?d+t.slice(r+u):(r+=u,47===t.charCodeAt(r)&&++r,t.slice(r))},toNamespacedPath:function(e){return e},dirname:function(e){if(rs(e,"path"),0===e.length)return".";for(var t=47===e.charCodeAt(0),n=-1,i=!0,o=e.length-1;o>=1;--o)if(47===e.charCodeAt(o)){if(!i){n=o;break}}else i=!1;return-1===n?t?"/":".":t&&1===n?"//":e.slice(0,n)},basename:function(e,t){void 0!==t&&rs(t,"ext"),rs(e,"path");var n,i=0,o=-1,r=!0;if(void 0!==t&&t.length>0&&t.length<=e.length){if(t.length===e.length&&t===e)return"";var s=t.length-1,a=-1;for(n=e.length-1;n>=0;--n){var u=e.charCodeAt(n);if(47===u){if(!r){i=n+1;break}}else-1===a&&(r=!1,a=n+1),s>=0&&(u===t.charCodeAt(s)?-1==--s&&(o=n):(s=-1,o=a))}return i===o?o=a:-1===o&&(o=e.length),e.slice(i,o)}for(n=e.length-1;n>=0;--n)if(47===e.charCodeAt(n)){if(!r){i=n+1;break}}else-1===o&&(r=!1,o=n+1);return-1===o?"":e.slice(i,o)},extname:function(e){rs(e,"path");for(var t=-1,n=0,i=-1,o=!0,r=0,s=e.length-1;s>=0;--s){var a=e.charCodeAt(s);if(47!==a)-1===i&&(o=!1,i=s+1),46===a?-1===t?t=s:1!==r&&(r=1):-1!==t&&(r=-1);else if(!o){n=s+1;break}}return-1===t||-1===i||0===r||1===r&&t===i-1&&t===n+1?"":e.slice(t,i)},format:function(e){if(null===e||"object"!=typeof e)throw new os("pathObject","Object",e);return cs("/",e)},parse:function(e){rs(e,"path");var t={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return t;var n,i=47===e.charCodeAt(0);i?(t.root="/",n=1):n=0;for(var o=-1,r=0,s=-1,a=!0,u=e.length-1,l=0;u>=n;--u){var c=e.charCodeAt(u);if(47!==c)-1===s&&(a=!1,s=u+1),46===c?-1===o?o=u:1!==l&&(l=1):-1!==o&&(l=-1);else if(!a){r=u+1;break}}return-1===o||-1===s||0===l||1===l&&o===s-1&&o===r+1?-1!==s&&(t.base=t.name=0===r&&i?e.slice(1,s):e.slice(r,s)):(0===r&&i?(t.name=e.slice(1,o),t.base=e.slice(1,s)):(t.name=e.slice(r,o),t.base=e.slice(r,s)),t.ext=e.slice(o,s)),r>0?t.dir=e.slice(0,r-1):i&&(t.dir="/"),t},sep:"/",delimiter:":",win32:null,posix:null};hs.win32=ds.win32=ds,hs.posix=ds.posix=hs;var ps="win32"===ns?ds.normalize:hs.normalize,fs="win32"===ns?ds.join:hs.join,gs="win32"===ns?ds.relative:hs.relative,ms="win32"===ns?ds.dirname:hs.dirname,vs="win32"===ns?ds.basename:hs.basename,_s="win32"===ns?ds.extname:hs.extname,ys="win32"===ns?ds.sep:hs.sep;var bs,ws=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i};function Cs(e){return!e||e.scheme!==Ci.file||!y}function Ss(e){return Ds(e)||e.authority}function Ls(e,t){return e===t||Er(e,t)}function xs(e,t,n){if(void 0===n&&(n=Cs(e)),e===t)return!0;if(!e||!t)return!1;if(e.scheme!==t.scheme||!Ls(e.authority,t.authority))return!1;var i=e.path||"/",o=t.path||"/";return i===o||n&&Er(i||"/",o||"/")}function Ds(e){return hs.basename(e.path)}function Ns(e){if(0===e.path.length)return e;if(e.scheme===Ci.file)return Et.file(ms(ks(e)));var t=hs.dirname(e.path);return e.authority&&t.length&&47!==t.charCodeAt(0)&&(console.error('dirname("'+e.toString+")) resulted in a relative path"),t="/"),e.with({path:t})}function ks(e){var t,n,i=e.path;return t=e.authority&&i.length>1&&e.scheme===Ci.file?"//"+e.authority+i:v&&47===i.charCodeAt(0)&&((n=i.charCodeAt(1))>=65&&n<=90||n>=97&&n<=122)&&58===i.charCodeAt(2)?i.substr(1):i,v&&(t=t.replace(/\//g,"\\")),t}function Es(e,t,n){if(void 0===n&&(n=Cs(e)),e.scheme===t.scheme&&Ls(e.authority,t.authority)){if(e.scheme===Ci.file){var i=gs(e.path,t.path);return v?i.replace(/[\\/]/g,hs.sep):i}var o=e.path||"/",r=t.path||"/";if(n){for(var s=0,a=Math.min(o.length,r.length);s<a&&(o.charCodeAt(s)===r.charCodeAt(s)||o.charAt(s).toLowerCase()===r.charAt(s).toLowerCase());s++);o=r.substr(0,s)+o.substr(s)}return hs.relative(o,r)}}!function(e){e.META_DATA_LABEL="label",e.META_DATA_DESCRIPTION="description",e.META_DATA_SIZE="size",e.META_DATA_MIME="mime",e.parseMetaData=function(t){var n=new Map;t.path.substring(t.path.indexOf(";")+1,t.path.lastIndexOf(";")).split(";").forEach((function(e){var t=e.split(":"),i=t[0],o=t[1];i&&o&&n.set(i,o)}));var i=t.path.substring(0,t.path.indexOf(";"));return i&&n.set(e.META_DATA_MIME,i),n}}(bs||(bs={}));var Is="number",Os="string",Ms="undefined",Ts="object",Ps="function";function Rs(e){return Array.isArray?Array.isArray(e):!(!e||typeof e.length!==Is||e.constructor!==Array)}function As(e){return typeof e===Os||e instanceof String}function Fs(e){return!(typeof e!==Ts||null===e||Array.isArray(e)||e instanceof RegExp||e instanceof Date)}function Ws(e){return(typeof e===Is||e instanceof Number)&&!isNaN(e)}function Vs(e){return!0===e||!1===e}function Bs(e){return typeof e===Ms}function Hs(e){return Bs(e)||null===e}function zs(e,t){if(!e)throw new Error(t?"Unexpected type, expected '"+t+"'":"Unexpected type")}var js=Object.prototype.hasOwnProperty;function Us(e){if(!Fs(e))return!1;for(var t in e)if(js.call(e,t))return!1;return!0}function Ks(e){return typeof e===Ps}function qs(e,t){for(var n=Math.min(e.length,t.length),i=0;i<n;i++)Gs(e[i],t[i])}function Gs(e,t){if(As(t)){if(typeof e!==t)throw new Error("argument does not match constraint: typeof "+t)}else if(Ks(t)){try{if(e instanceof t)return}catch(e){}if(!Hs(e)&&e.constructor===t)return;if(1===t.length&&!0===t.call(void 0,e))return;throw new Error("argument does not match one of these constraints: arg instanceof constraint, arg.constructor === constraint, nor constraint(arg) === true")}}function Zs(e){for(var t=[],n=0,i=function(e){for(var t=[],n=Object.getPrototypeOf(e);Object.prototype!==n;)t=t.concat(Object.getOwnPropertyNames(n)),n=Object.getPrototypeOf(n);return t}(e);n<i.length;n++){var o=i[n];"function"==typeof e[o]&&t.push(o)}return t}function Ys(e,t){for(var n=function(e){return function(){var n=Array.prototype.slice.call(arguments,0);return t(e,n)}},i={},o=0,r=e;o<r.length;o++){var s=r[o];i[s]=n(s)}return i}function Xs(e){return null===e?void 0:e}function $s(e){return void 0===e?null:e}var Qs=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function Js(e){var t=[];return e.forEach((function(e){return t.push(e)})),t}function ea(e){var t=[];return e.forEach((function(e,n){return t.push(n)})),t}var ta,na=function(){function e(){this._value="",this._pos=0}return e.prototype.reset=function(e){return this._value=e,this._pos=0,this},e.prototype.next=function(){return this._pos+=1,this},e.prototype.hasNext=function(){return this._pos<this._value.length-1},e.prototype.cmp=function(e){return e.charCodeAt(0)-this._value.charCodeAt(this._pos)},e.prototype.value=function(){return this._value[this._pos]},e}(),ia=function(){function e(e){void 0===e&&(e=!0),this._splitOnBackslash=e}return e.prototype.reset=function(e){return this._value=e.replace(/\\$|\/$/,""),this._from=0,this._to=0,this.next()},e.prototype.hasNext=function(){return this._to<this._value.length},e.prototype.next=function(){this._from=this._to;for(var e=!0;this._to<this._value.length;this._to++){var t=this._value.charCodeAt(this._to);if(47===t||this._splitOnBackslash&&92===t){if(!e)break;this._from++}else e=!1}return this},e.prototype.cmp=function(e){for(var t=0,n=e.length,i=this._from;t<n&&i<this._to;){var o=e.charCodeAt(t)-this._value.charCodeAt(i);if(0!==o)return o;t+=1,i+=1}return n===this._to-this._from?0:t<n?-1:1},e.prototype.value=function(){return this._value.substring(this._from,this._to)},e}(),oa=function(){},ra=function(){function e(e){this._iter=e}return e.forPaths=function(){return new e(new ia)},e.forStrings=function(){return new e(new na)},e.prototype.clear=function(){this._root=void 0},e.prototype.set=function(e,t){var n,i=this._iter.reset(e);for(this._root||(this._root=new oa,this._root.segment=i.value()),n=this._root;;){var o=i.cmp(n.segment);if(o>0)n.left||(n.left=new oa,n.left.segment=i.value()),n=n.left;else if(o<0)n.right||(n.right=new oa,n.right.segment=i.value()),n=n.right;else{if(!i.hasNext())break;i.next(),n.mid||(n.mid=new oa,n.mid.segment=i.value()),n=n.mid}}var r=n.value;return n.value=t,n.key=e,r},e.prototype.get=function(e){for(var t=this._iter.reset(e),n=this._root;n;){var i=t.cmp(n.segment);if(i>0)n=n.left;else if(i<0)n=n.right;else{if(!t.hasNext())break;t.next(),n=n.mid}}return n?n.value:void 0},e.prototype.findSubstr=function(e){for(var t=this._iter.reset(e),n=this._root,i=void 0;n;){var o=t.cmp(n.segment);if(o>0)n=n.left;else if(o<0)n=n.right;else{if(!t.hasNext())break;t.next(),i=n.value||i,n=n.mid}}return n&&n.value||i},e.prototype.forEach=function(e){this._forEach(this._root,e)},e.prototype._forEach=function(e,t){e&&(this._forEach(e.left,t),e.value&&t(e.value,e.key),this._forEach(e.mid,t),this._forEach(e.right,t))},e}(),sa=function(){function e(){this.map=new Map,this.ignoreCase=!1}return e.prototype.set=function(e,t){this.map.set(this.toKey(e),t)},e.prototype.get=function(e){return this.map.get(this.toKey(e))},e.prototype.toKey=function(e){var t=e.toString();return this.ignoreCase&&(t=t.toLowerCase()),t},e}(),aa=function(e){function t(t,n){void 0===n&&(n=1);var i=e.call(this)||this;return i._limit=t,i._ratio=Math.min(Math.max(0,n),1),i}return Qs(t,e),t.prototype.get=function(t){return e.prototype.get.call(this,t,2)},t.prototype.peek=function(t){return e.prototype.get.call(this,t,0)},t.prototype.set=function(t,n){e.prototype.set.call(this,t,n,2),this.checkTrim()},t.prototype.checkTrim=function(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))},t}(function(){function e(){this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0}return e.prototype.clear=function(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0},Object.defineProperty(e.prototype,"size",{get:function(){return this._size},enumerable:!0,configurable:!0}),e.prototype.get=function(e,t){void 0===t&&(t=0);var n=this._map.get(e);if(n)return 0!==t&&this.touch(n,t),n.value},e.prototype.set=function(e,t,n){void 0===n&&(n=0);var i=this._map.get(e);if(i)i.value=t,0!==n&&this.touch(i,n);else{switch(i={key:e,value:t,next:void 0,previous:void 0},n){case 0:this.addItemLast(i);break;case 1:this.addItemFirst(i);break;case 2:default:this.addItemLast(i)}this._map.set(e,i),this._size++}},e.prototype.delete=function(e){return!!this.remove(e)},e.prototype.remove=function(e){var t=this._map.get(e);if(t)return this._map.delete(e),this.removeItem(t),this._size--,t.value},e.prototype.forEach=function(e,t){for(var n=this._head;n;)t?e.bind(t)(n.value,n.key,this):e(n.value,n.key,this),n=n.next},e.prototype.trimOld=function(e){if(!(e>=this.size))if(0!==e){for(var t=this._head,n=this.size;t&&n>e;)this._map.delete(t.key),t=t.next,n--;this._head=t,this._size=n,t&&(t.previous=void 0)}else this.clear()},e.prototype.addItemFirst=function(e){if(this._head||this._tail){if(!this._head)throw new Error("Invalid list");e.next=this._head,this._head.previous=e}else this._tail=e;this._head=e},e.prototype.addItemLast=function(e){if(this._head||this._tail){if(!this._tail)throw new Error("Invalid list");e.previous=this._tail,this._tail.next=e}else this._head=e;this._tail=e},e.prototype.removeItem=function(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{var t=e.next,n=e.previous;if(!t||!n)throw new Error("Invalid list");t.previous=n,n.next=t}e.next=void 0,e.previous=void 0},e.prototype.touch=function(e,t){if(!this._head||!this._tail)throw new Error("Invalid list");if(1===t||2===t)if(1===t){if(e===this._head)return;var n=e.next,i=e.previous;e===this._tail?(i.next=void 0,this._tail=i):(n.previous=i,i.next=n),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e}else if(2===t){if(e===this._tail)return;n=e.next,i=e.previous;e===this._head?(n.previous=void 0,this._head=n):(n.previous=i,i.next=n),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e}},e.prototype.toJSON=function(){var e=[];return this.forEach((function(t,n){e.push([n,t])})),e},e}()),ua=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},la=Mn("commandService"),ca=new(function(){function e(){this._commands=new Map,this._onDidRegisterCommand=new nt,this.onDidRegisterCommand=this._onDidRegisterCommand.event}return e.prototype.registerCommand=function(e,t){var n=this;if(!e)throw new Error("invalid command");if("string"==typeof e){if(!t)throw new Error("invalid command");return this.registerCommand({id:e,handler:t})}if(e.description){for(var i=[],o=0,r=e.description.args;o<r.length;o++){var s=r[o];i.push(s.constraint)}var a=e.handler;e.handler=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];return qs(t,i),a.apply(void 0,ua([e],t))}}var u=e.id,l=this._commands.get(u);l||(l=new Qe,this._commands.set(u,l));var c=l.unshift(e),d=We((function(){c();var e=n._commands.get(u);(null==e?void 0:e.isEmpty())&&n._commands.delete(u)}));return this._onDidRegisterCommand.fire(u),d},e.prototype.registerCommandAlias=function(e,t){return ca.registerCommand(e,(function(e){for(var n,i=[],o=1;o<arguments.length;o++)i[o-1]=arguments[o];return(n=e.get(la)).executeCommand.apply(n,ua([t],i))}))},e.prototype.getCommand=function(e){var t=this._commands.get(e);if(t&&!t.isEmpty())return t.iterator().next().value},e.prototype.getCommands=function(){for(var e=new Map,t=0,n=ea(this._commands);t<n.length;t++){var i=n[t],o=this.getCommand(i);o&&e.set(i,o)}return e},e}()),da=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},ha=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},pa=Mn("openerService"),fa=Object.freeze({_serviceBrand:void 0,registerOpener:function(){return He.None},registerValidator:function(){return He.None},registerExternalUriResolver:function(){return He.None},setExternalOpener:function(){},open:function(){return da(this,void 0,void 0,(function(){return ha(this,(function(e){return[2,!1]}))}))},resolveExternalUri:function(e){return da(this,void 0,void 0,(function(){return ha(this,(function(t){return[2,{resolved:e,dispose:function(){}}]}))}))}});function ga(e,t){return Et.isUri(e)?Er(e.scheme,t):Or(e,t+":")}!function(e){e[e.API=0]="API",e[e.USER=1]="USER"}(ta||(ta={}));var ma=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},va=function(e,t){return function(n,i){t(n,i,e)}},_a=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},ya=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},ba=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},wa=function(){function e(e){this._commandService=e}return e.prototype.open=function(e){return _a(this,void 0,void 0,(function(){var t,n;return ya(this,(function(i){switch(i.label){case 0:if(!ga(e,Ci.command))return[2,!1];if("string"==typeof e&&(e=Et.parse(e)),!ca.getCommand(e.path))throw new Error("command '"+e.path+"' NOT known");t=[];try{t=lr(decodeURIComponent(e.query))}catch(n){try{t=lr(e.query)}catch(e){}}return Array.isArray(t)||(t=[t]),[4,(n=this._commandService).executeCommand.apply(n,ba([e.path],t))];case 1:return i.sent(),[2,!0]}}))}))},e=ma([va(0,la)],e)}(),Ca=function(){function e(e){this._editorService=e}return e.prototype.open=function(e,t){return _a(this,void 0,void 0,(function(){var n,i;return ya(this,(function(o){switch(o.label){case 0:return"string"==typeof e&&(e=Et.parse(e)),n=void 0,(i=/^L?(\d+)(?:,(\d+))?/.exec(e.fragment))&&(n={startLineNumber:parseInt(i[1]),startColumn:i[2]?parseInt(i[2]):1},e=e.with({fragment:""})),e.scheme===Ci.file&&(e=(r=e).path.length?(s=r.scheme===Ci.file?Et.file(ps(ks(r))).path:hs.normalize(r.path),r.with({path:s})):r),[4,this._editorService.openCodeEditor({resource:e,options:{selection:n,context:(null==t?void 0:t.fromUserGesture)?ta.USER:ta.API}},this._editorService.getFocusedCodeEditor(),null==t?void 0:t.openToSide)];case 1:return o.sent(),[2,!0]}var r,s}))}))},e=ma([va(0,Pn)],e)}(),Sa=function(){function e(e,t){var n=this;this._openers=new Qe,this._validators=new Qe,this._resolvers=new Qe,this._externalOpener={openExternal:function(e){return sr(e),Promise.resolve(!0)}},this._openers.push({open:function(e,t){return _a(n,void 0,void 0,(function(){return ya(this,(function(n){switch(n.label){case 0:return(null==t?void 0:t.openExternal)||ga(e,Ci.mailto)||ga(e,Ci.http)||ga(e,Ci.https)?[4,this._doOpenExternal(e,t)]:[3,2];case 1:return n.sent(),[2,!0];case 2:return[2,!1]}}))}))}}),this._openers.push(new wa(t)),this._openers.push(new Ca(e))}return e.prototype.open=function(e,t){return _a(this,void 0,void 0,(function(){var n,i,o,r;return ya(this,(function(s){switch(s.label){case 0:n=0,i=this._validators.toArray(),s.label=1;case 1:return n<i.length?[4,i[n].shouldOpen(e)]:[3,4];case 2:if(!s.sent())return[2,!1];s.label=3;case 3:return n++,[3,1];case 4:o=0,r=this._openers.toArray(),s.label=5;case 5:return o<r.length?[4,r[o].open(e,t)]:[3,8];case 6:if(s.sent())return[2,!0];s.label=7;case 7:return o++,[3,5];case 8:return[2,!1]}}))}))},e.prototype.resolveExternalUri=function(e,t){return _a(this,void 0,void 0,(function(){var n,i,o;return ya(this,(function(r){switch(r.label){case 0:n=0,i=this._resolvers.toArray(),r.label=1;case 1:return n<i.length?[4,i[n].resolveExternalUri(e,t)]:[3,4];case 2:if(o=r.sent())return[2,o];r.label=3;case 3:return n++,[3,1];case 4:return[2,{resolved:e,dispose:function(){}}]}}))}))},e.prototype._doOpenExternal=function(e,t){return _a(this,void 0,void 0,(function(){var n,i;return ya(this,(function(o){switch(o.label){case 0:return n="string"==typeof e?Et.parse(e):e,[4,this.resolveExternalUri(n,t)];case 1:return i=o.sent().resolved,"string"==typeof e&&n.toString()===i.toString()?[2,this._externalOpener.openExternal(e)]:[2,this._externalOpener.openExternal(encodeURI(i.toString(!0)))]}}))}))},e.prototype.dispose=function(){this._validators.clear()},e=ma([va(0,Pn),va(1,la)],e)}();function La(e,t){if(!e)throw new Error(t?"Assertion failed ("+t+")":"Assertion Failed")}function xa(e){if(!e||"object"!=typeof e)return e;if(e instanceof RegExp)return e;var t=Array.isArray(e)?[]:{};return Object.keys(e).forEach((function(n){e[n]&&"object"==typeof e[n]?t[n]=xa(e[n]):t[n]=e[n]})),t}var Da=Object.prototype.hasOwnProperty;function Na(e,t){return function e(t,n,i){if(Hs(t))return t;var o=n(t);if(void 0!==o)return o;if(Rs(t)){for(var r=[],s=0,a=t;s<a.length;s++){var u=a[s];r.push(e(u,n,i))}return r}if(Fs(t)){if(i.has(t))throw new Error("Cannot clone recursive data-structure");i.add(t);var l={};for(var c in t)Da.call(t,c)&&(l[c]=e(t[c],n,i));return i.delete(t),l}return t}(e,t,new Set)}function ka(e,t,n){return void 0===n&&(n=!0),Fs(e)?(Fs(t)&&Object.keys(t).forEach((function(i){i in e?n&&(Fs(e[i])&&Fs(t[i])?ka(e[i],t[i],n):e[i]=t[i]):e[i]=t[i]})),e):t}function Ea(e,t){if(e===t)return!0;if(null==e||null==t)return!1;if(typeof e!=typeof t)return!1;if("object"!=typeof e)return!1;if(Array.isArray(e)!==Array.isArray(t))return!1;var n,i;if(Array.isArray(e)){if(e.length!==t.length)return!1;for(n=0;n<e.length;n++)if(!Ea(e[n],t[n]))return!1}else{var o=[];for(i in e)o.push(i);o.sort();var r=[];for(i in t)r.push(i);if(r.sort(),!Ea(o,r))return!1;for(n=0;n<o.length;n++)if(!Ea(e[o[n]],t[o[n]]))return!1}return!0}function Ia(e,t,n){var i=t(e);return void 0===i?n:i}var Oa=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Ma={followsCaret:!0,ignoreCharChanges:!0,alwaysRevealFirst:!0},Ta=function(e){function t(t,n){void 0===n&&(n={});var i=e.call(this)||this;return i._onDidUpdate=i._register(new nt),i._editor=t,i._options=ka(n,Ma,!1),i.disposed=!1,i.nextIdx=-1,i.ranges=[],i.ignoreSelectionChange=!1,i.revealFirst=Boolean(i._options.alwaysRevealFirst),i._register(i._editor.onDidDispose((function(){return i.dispose()}))),i._register(i._editor.onDidUpdateDiff((function(){return i._onDiffUpdated()}))),i._options.followsCaret&&i._register(i._editor.getModifiedEditor().onDidChangeCursorPosition((function(e){i.ignoreSelectionChange||(i.nextIdx=-1)}))),i._options.alwaysRevealFirst&&i._register(i._editor.getModifiedEditor().onDidChangeModel((function(e){i.revealFirst=!0}))),i._init(),i}return Oa(t,e),t.prototype._init=function(){this._editor.getLineChanges()},t.prototype._onDiffUpdated=function(){this._init(),this._compute(this._editor.getLineChanges()),this.revealFirst&&null!==this._editor.getLineChanges()&&(this.revealFirst=!1,this.nextIdx=-1,this.next(1))},t.prototype._compute=function(e){var t=this;this.ranges=[],e&&e.forEach((function(e){!t._options.ignoreCharChanges&&e.charChanges?e.charChanges.forEach((function(e){t.ranges.push({rhs:!0,range:new wn(e.modifiedStartLineNumber,e.modifiedStartColumn,e.modifiedEndLineNumber,e.modifiedEndColumn)})})):t.ranges.push({rhs:!0,range:new wn(e.modifiedStartLineNumber,1,e.modifiedStartLineNumber,1)})})),this.ranges.sort((function(e,t){return e.range.getStartPosition().isBeforeOrEqual(t.range.getStartPosition())?-1:t.range.getStartPosition().isBeforeOrEqual(e.range.getStartPosition())?1:0})),this._onDidUpdate.fire(this)},t.prototype._initIdx=function(e){var t=!1,n=this._editor.getPosition();if(n){for(var i=0,o=this.ranges.length;i<o&&!t;i++){var r=this.ranges[i].range;n.isBeforeOrEqual(r.getStartPosition())&&(this.nextIdx=i+(e?0:-1),t=!0)}t||(this.nextIdx=e?0:this.ranges.length-1),this.nextIdx<0&&(this.nextIdx=this.ranges.length-1)}else this.nextIdx=0},t.prototype._move=function(e,t){if(La(!this.disposed,"Illegal State - diff navigator has been disposed"),this.canNavigate()){-1===this.nextIdx?this._initIdx(e):e?(this.nextIdx+=1,this.nextIdx>=this.ranges.length&&(this.nextIdx=0)):(this.nextIdx-=1,this.nextIdx<0&&(this.nextIdx=this.ranges.length-1));var n=this.ranges[this.nextIdx];this.ignoreSelectionChange=!0;try{var i=n.range.getStartPosition();this._editor.setPosition(i),this._editor.revealPositionInCenter(i,t)}finally{this.ignoreSelectionChange=!1}}},t.prototype.canNavigate=function(){return this.ranges&&this.ranges.length>0},t.prototype.next=function(e){void 0===e&&(e=0),this._move(!0,e)},t.prototype.previous=function(e){void 0===e&&(e=0),this._move(!1,e)},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.ranges=[],this.disposed=!0},t}(He),Pa=new(function(){function e(){this._zoomLevel=0,this._onDidChangeZoomLevel=new nt,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event}return e.prototype.getZoomLevel=function(){return this._zoomLevel},e.prototype.setZoomLevel=function(e){e=Math.min(Math.max(-5,e),20),this._zoomLevel!==e&&(this._zoomLevel=e,this._onDidChangeZoomLevel.fire(this._zoomLevel))},e}()),Ra=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Aa=_?1.5:1.35,Fa=function(){function e(e){this.zoomLevel=e.zoomLevel,this.fontFamily=String(e.fontFamily),this.fontWeight=String(e.fontWeight),this.fontSize=e.fontSize,this.fontFeatureSettings=e.fontFeatureSettings,this.lineHeight=0|e.lineHeight,this.letterSpacing=e.letterSpacing}return e.createFromValidatedSettings=function(t,n,i){var o=t.get(33),r=t.get(37),s=t.get(36),a=t.get(35),u=t.get(49),l=t.get(46);return e._create(o,r,s,a,u,l,n,i)},e._create=function(t,n,i,o,r,s,a,u){0===r?r=Math.round(Aa*i):r<8&&(r=8);var l=1+(u?0:.1*Pa.getZoomLevel());return new e({zoomLevel:a,fontFamily:t,fontWeight:n,fontSize:i*=l,fontFeatureSettings:o,lineHeight:r*=l,letterSpacing:s})},e.prototype.getId=function(){return this.zoomLevel+"-"+this.fontFamily+"-"+this.fontWeight+"-"+this.fontSize+"-"+this.fontFeatureSettings+"-"+this.lineHeight+"-"+this.letterSpacing},e.prototype.getMassagedFontFamily=function(){return/[,"']/.test(this.fontFamily)?this.fontFamily:/[+ ]/.test(this.fontFamily)?'"'+this.fontFamily+'"':this.fontFamily},e}(),Wa=function(e){function t(t,n){var i=e.call(this,t)||this;return i.isTrusted=n,i.isMonospace=t.isMonospace,i.typicalHalfwidthCharacterWidth=t.typicalHalfwidthCharacterWidth,i.typicalFullwidthCharacterWidth=t.typicalFullwidthCharacterWidth,i.canUseHalfwidthRightwardsArrow=t.canUseHalfwidthRightwardsArrow,i.spaceWidth=t.spaceWidth,i.middotWidth=t.middotWidth,i.maxDigitWidth=t.maxDigitWidth,i}return Ra(t,e),t.prototype.equals=function(e){return this.fontFamily===e.fontFamily&&this.fontWeight===e.fontWeight&&this.fontSize===e.fontSize&&this.fontFeatureSettings===e.fontFeatureSettings&&this.lineHeight===e.lineHeight&&this.letterSpacing===e.letterSpacing&&this.typicalHalfwidthCharacterWidth===e.typicalHalfwidthCharacterWidth&&this.typicalFullwidthCharacterWidth===e.typicalFullwidthCharacterWidth&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.spaceWidth===e.spaceWidth&&this.middotWidth===e.middotWidth&&this.maxDigitWidth===e.maxDigitWidth},t}(Fa);var Va,Ba,Ha={ICodeEditor:"vs.editor.ICodeEditor",IDiffEditor:"vs.editor.IDiffEditor"},za={ExecuteCommand:"executeCommand",ExecuteCommands:"executeCommands",Type:"type",ReplacePreviousChar:"replacePreviousChar",CompositionStart:"compositionStart",CompositionEnd:"compositionEnd",Paste:"paste",Cut:"cut",Undo:"undo",Redo:"redo"};!function(e){e[e.Left=1]="Left",e[e.Center=2]="Center",e[e.Right=4]="Right",e[e.Full=7]="Full"}(Va||(Va={})),function(e){e[e.Inline=1]="Inline",e[e.Gutter=2]="Gutter"}(Ba||(Ba={}));var ja=function(){function e(e){this.tabSize=Math.max(1,0|e.tabSize),this.indentSize=0|e.tabSize,this.insertSpaces=Boolean(e.insertSpaces),this.defaultEOL=0|e.defaultEOL,this.trimAutoWhitespace=Boolean(e.trimAutoWhitespace)}return e.prototype.equals=function(e){return this.tabSize===e.tabSize&&this.indentSize===e.indentSize&&this.insertSpaces===e.insertSpaces&&this.defaultEOL===e.defaultEOL&&this.trimAutoWhitespace===e.trimAutoWhitespace},e.prototype.createChangeEvent=function(e){return{tabSize:this.tabSize!==e.tabSize,indentSize:this.indentSize!==e.indentSize,insertSpaces:this.insertSpaces!==e.insertSpaces,trimAutoWhitespace:this.trimAutoWhitespace!==e.trimAutoWhitespace}},e}(),Ua=function(e,t){this.range=e,this.matches=t},Ka=function(e,t,n){this.reverseEdits=e,this.changes=t,this.trimAutoWhitespaceLineNumbers=n},qa=/\//g;function Ga(e){switch(e){case 0:return"";case 1:return"[^/\\\\]*?";default:return"(?:[/\\\\]|[^/\\\\]+[/\\\\]|[/\\\\][^/\\\\]+)*?"}}function Za(e,t){if(!e)return[];for(var n=[],i=!1,o=!1,r="",s=0,a=e;s<a.length;s++){var u=a[s];switch(u){case t:if(!i&&!o){n.push(r),r="";continue}break;case"{":i=!0;break;case"}":i=!1;break;case"[":o=!0;break;case"]":o=!1}r+=u}return r&&n.push(r),n}var Ya=/^\*\*\/\*\.[\w\.-]+$/,Xa=/^\*\*\/([\w\.-]+)\/?$/,$a=/^{\*\*\/[\*\.]?[\w\.-]+\/?(,\*\*\/[\*\.]?[\w\.-]+\/?)*}$/,Qa=/^{\*\*\/[\*\.]?[\w\.-]+(\/(\*\*)?)?(,\*\*\/[\*\.]?[\w\.-]+(\/(\*\*)?)?)*}$/,Ja=/^\*\*((\/[\w\.-]+)+)\/?$/,eu=/^([\w\.-]+(\/[\w\.-]+)*)\/?$/,tu=new aa(1e4),nu=function(){return!1},iu=function(){return null};function ou(e,t){if(!e)return iu;var n,i,o=(n=(n="string"!=typeof e?e.pattern:e).trim())+"_"+!!t.trimForExclusions,r=tu.get(o);if(r)return ru(r,e);if(Ya.test(n)){var s=n.substr(4);r=function(e,t){return"string"==typeof e&&_r(e,s)?n:null}}else r=(i=Xa.exec(su(n,t)))?function(e,t){var n="/"+e,i="\\"+e,o=function(o,r){return"string"!=typeof o?null:r?r===e?t:null:o===e||_r(o,n)||_r(o,i)?t:null},r=[e];return o.basenames=r,o.patterns=[t],o.allBasenames=r,o}(i[1],n):(t.trimForExclusions?Qa:$a).test(n)?function(e,t){var n=lu(e.slice(1,-1).split(",").map((function(e){return ou(e,t)})).filter((function(e){return e!==iu})),e),i=n.length;if(!i)return iu;if(1===i)return n[0];var o=function(t,i){for(var o=0,r=n.length;o<r;o++)if(n[o](t,i))return e;return null},r=Ri(n,(function(e){return!!e.allBasenames}));r&&(o.allBasenames=r.allBasenames);var s=n.reduce((function(e,t){return t.allPaths?e.concat(t.allPaths):e}),[]);s.length&&(o.allPaths=s);return o}(n,t):(i=Ja.exec(su(n,t)))?au(i[1].substr(1),n,!0):(i=eu.exec(su(n,t)))?au(i[1],n,!1):function(e){try{var t=new RegExp("^"+function e(t){if(!t)return"";var n="",i=Za(t,"/");if(i.every((function(e){return"**"===e})))n=".*";else{var o=!1;i.forEach((function(t,r){if("**"!==t){for(var s=!1,a="",u=!1,l="",c=0,d=t;c<d.length;c++){var h=d[c];if("}"!==h&&s)a+=h;else if(!u||"]"===h&&l)switch(h){case"{":s=!0;continue;case"[":u=!0;continue;case"}":var p="(?:"+Za(a,",").map((function(t){return e(t)})).join("|")+")";n+=p,s=!1,a="";break;case"]":n+="["+l+"]",u=!1,l="";break;case"?":n+="[^/\\\\]";continue;case"*":n+=Ga(1);continue;default:n+=gr(h)}else{l+="-"===h?h:"^"!==h&&"!"!==h||l?"/"===h?"":gr(h):"^"}}r<i.length-1&&("**"!==i[r+1]||r+2<i.length)&&(n+="[/\\\\]"),o=!1}else o||(n+=Ga(2),o=!0)}))}return n}(e)+"$");return function(n,i){return t.lastIndex=0,"string"==typeof n&&t.test(n)?e:null}}catch(e){return iu}}(n);return tu.set(o,r),ru(r,e)}function ru(e,t){return"string"==typeof t?e:function(n,i){return function(e,t,n,i){if(void 0===i&&(i=ys),e===t)return!0;if(!e||!t)return!1;if(t.length>e.length)return!1;if(n){if(!Or(e,t))return!1;if(t.length===e.length)return!0;var o=t.length;return t.charAt(t.length-1)===i&&o--,e.charAt(o)===i}return t.charAt(t.length-1)!==i&&(t+=i),0===e.indexOf(t)}(n,t.base)?e(gs(t.base,n),i):null}}function su(e,t){return t.trimForExclusions&&_r(e,"/**")?e.substr(0,e.length-2):e}function au(e,t,n){var i=ys!==hs.sep?e.replace(qa,ys):e,o=ys+i,r=n?function(e,n){return"string"!=typeof e||e!==i&&!_r(e,o)?null:t}:function(e,n){return"string"==typeof e&&e===i?t:null};return r.allPaths=[(n?"*/":"./")+e],r}function uu(e,t,n){return!(!e||"string"!=typeof t)&&function(e,t){void 0===t&&(t={});if(!e)return nu;if("string"==typeof e||(o=e,r=o,r&&"string"==typeof r.base&&"string"==typeof r.pattern)){var n=ou(e,t);if(n===iu)return nu;var i=function(e,t){return!!n(e,t)};return n.allBasenames&&(i.allBasenames=n.allBasenames),n.allPaths&&(i.allPaths=n.allPaths),i}var o,r;return function(e,t){var n=lu(Object.getOwnPropertyNames(e).map((function(n){return function(e,t,n){if(!1===t)return iu;var i=ou(e,n);if(i===iu)return iu;if("boolean"==typeof t)return i;if(t){var o=t.when;if("string"==typeof o){var r=function(t,n,r,s){if(!s||!i(t,n))return null;var a,u=s(o.replace("$(basename)",r));return(a=u)&&"function"==typeof a.then?u.then((function(t){return t?e:null})):u?e:null};return r.requiresSiblings=!0,r}}return i}(n,e[n],t)})).filter((function(e){return e!==iu}))),i=n.length;if(!i)return iu;if(!n.some((function(e){return!!e.requiresSiblings}))){if(1===i)return n[0];var o=function(e,t){for(var i=0,o=n.length;i<o;i++){var r=n[i](e,t);if(r)return r}return null},r=Ri(n,(function(e){return!!e.allBasenames}));r&&(o.allBasenames=r.allBasenames);var s=n.reduce((function(e,t){return t.allPaths?e.concat(t.allPaths):e}),[]);return s.length&&(o.allPaths=s),o}var a=function(e,t,i){for(var o=void 0,r=0,s=n.length;r<s;r++){var a=n[r];a.requiresSiblings&&i&&(t||(t=vs(e)),o||(o=t.substr(0,t.length-_s(e).length)));var u=a(e,t,o,i);if(u)return u}return null},u=Ri(n,(function(e){return!!e.allBasenames}));u&&(a.allBasenames=u.allBasenames);var l=n.reduce((function(e,t){return t.allPaths?e.concat(t.allPaths):e}),[]);l.length&&(a.allPaths=l);return a}(e,t)}(e)(t,void 0,n)}function lu(e,t){var n=e.filter((function(e){return!!e.basenames}));if(n.length<2)return e;var i,o=n.reduce((function(e,t){var n=t.basenames;return n?e.concat(n):e}),[]);if(t){i=[];for(var r=0,s=o.length;r<s;r++)i.push(t)}else i=n.reduce((function(e,t){var n=t.patterns;return n?e.concat(n):e}),[]);var a=function(e,t){if("string"!=typeof e)return null;if(!t){var n=void 0;for(n=e.length;n>0;n--){var r=e.charCodeAt(n-1);if(47===r||92===r)break}t=e.substr(n)}var s=o.indexOf(t);return-1!==s?i[s]:null};a.basenames=o,a.patterns=i,a.allBasenames=o;var u=e.filter((function(e){return!e.basenames}));return u.push(a),u}function cu(e,t,n,i){if(Array.isArray(e)){for(var o=0,r=0,s=e;r<s.length;r++){var a=cu(s[r],t,n,i);if(10===a)return a;a>o&&(o=a)}return o}if("string"==typeof e)return i?"*"===e?5:e===n?10:0:0;if(e){var u=e.language,l=e.pattern,c=e.scheme,d=e.hasAccessToAllModels;if(!i&&!d)return 0;o=0;if(c)if(c===t.scheme)o=10;else{if("*"!==c)return 0;o=5}if(u)if(u===n)o=10;else{if("*"!==u)return 0;o=Math.max(o,5)}if(l){if(l!==t.fsPath&&!uu(l,t.fsPath))return 0;o=10}return o}return 0}var du=Mn("modelService");function hu(e){return!e.isTooLargeForSyncing()&&!e.isForSimpleWidget}function pu(e){return"string"!=typeof e&&(Array.isArray(e)?e.every(pu):!!e.exclusive)}var fu,gu,mu,vu,_u=function(){function e(){this._clock=0,this._entries=[],this._onDidChange=new nt}return Object.defineProperty(e.prototype,"onDidChange",{get:function(){return this._onDidChange.event},enumerable:!0,configurable:!0}),e.prototype.register=function(e,t){var n=this,i={selector:e,provider:t,_score:-1,_time:this._clock++};return this._entries.push(i),this._lastCandidate=void 0,this._onDidChange.fire(this._entries.length),We((function(){if(i){var e=n._entries.indexOf(i);e>=0&&(n._entries.splice(e,1),n._lastCandidate=void 0,n._onDidChange.fire(n._entries.length),i=void 0)}}))},e.prototype.has=function(e){return this.all(e).length>0},e.prototype.all=function(e){if(!e)return[];this._updateScores(e);for(var t=[],n=0,i=this._entries;n<i.length;n++){var o=i[n];o._score>0&&t.push(o.provider)}return t},e.prototype.ordered=function(e){var t=[];return this._orderedForEach(e,(function(e){return t.push(e.provider)})),t},e.prototype.orderedGroups=function(e){var t,n,i=[];return this._orderedForEach(e,(function(e){t&&n===e._score?t.push(e.provider):(n=e._score,t=[e.provider],i.push(t))})),i},e.prototype._orderedForEach=function(e,t){if(e){this._updateScores(e);for(var n=0,i=this._entries;n<i.length;n++){var o=i[n];o._score>0&&t(o)}}},e.prototype._updateScores=function(t){var n={uri:t.uri.toString(),language:t.getLanguageIdentifier().language};if(!this._lastCandidate||this._lastCandidate.language!==n.language||this._lastCandidate.uri!==n.uri){this._lastCandidate=n;for(var i=0,o=this._entries;i<o.length;i++){var r=o[i];if(r._score=cu(r.selector,t.uri,t.getLanguageIdentifier().language,hu(t)),pu(r.selector)&&r._score>0){for(var s=0,a=this._entries;s<a.length;s++){a[s]._score=0}r._score=1e3;break}}this._entries.sort(e._compareByScoreAndTime)}},e._compareByScoreAndTime=function(e,t){return e._score<t._score?1:e._score>t._score?-1:e._time<t._time?1:e._time>t._time?-1:0},e}(),yu=function(){function e(){this._map=new Map,this._promises=new Map,this._onDidChange=new nt,this.onDidChange=this._onDidChange.event,this._colorMap=null}return e.prototype.fire=function(e){this._onDidChange.fire({changedLanguages:e,changedColorMap:!1})},e.prototype.register=function(e,t){var n=this;return this._map.set(e,t),this.fire([e]),We((function(){n._map.get(e)===t&&(n._map.delete(e),n.fire([e]))}))},e.prototype.registerPromise=function(e,t){var n=this,i=null,o=!1;return this._promises.set(e,t.then((function(t){n._promises.delete(e),!o&&t&&(i=n.register(e,t))}))),We((function(){o=!0,i&&i.dispose()}))},e.prototype.getPromise=function(e){var t=this,n=this.get(e);if(n)return Promise.resolve(n);var i=this._promises.get(e);return i?i.then((function(n){return t.get(e)})):null},e.prototype.get=function(e){return $s(this._map.get(e))},e.prototype.setColorMap=function(e){this._colorMap=e,this._onDidChange.fire({changedLanguages:ea(this._map),changedColorMap:!0})},e.prototype.getColorMap=function(){return this._colorMap},e.prototype.getDefaultBackground=function(){return this._colorMap&&this._colorMap.length>2?this._colorMap[2]:null},e}(),bu=function(e,t){this.language=e,this.id=t},wu=function(){function e(){}return e.getLanguageId=function(e){return(255&e)>>>0},e.getTokenType=function(e){return(1792&e)>>>8},e.getFontStyle=function(e){return(14336&e)>>>11},e.getForeground=function(e){return(8372224&e)>>>14},e.getBackground=function(e){return(4286578688&e)>>>23},e.getClassNameFromMetadata=function(e){var t="mtk"+this.getForeground(e),n=this.getFontStyle(e);return 1&n&&(t+=" mtki"),2&n&&(t+=" mtkb"),4&n&&(t+=" mtku"),t},e.getInlineStyleFromMetadata=function(e,t){var n=this.getForeground(e),i=this.getFontStyle(e),o="color: "+t[n]+";";return 1&i&&(o+="font-style: italic;"),2&i&&(o+="font-weight: bold;"),4&i&&(o+="text-decoration: underline;"),o},e}(),Cu=((fu=Object.create(null))[0]="method",fu[1]="function",fu[2]="constructor",fu[3]="field",fu[4]="variable",fu[5]="class",fu[6]="struct",fu[7]="interface",fu[8]="module",fu[9]="property",fu[10]="event",fu[11]="operator",fu[12]="unit",fu[13]="value",fu[14]="constant",fu[15]="enum",fu[16]="enum-member",fu[17]="keyword",fu[25]="snippet",fu[18]="text",fu[19]="color",fu[20]="file",fu[21]="reference",fu[22]="customcolor",fu[23]="folder",fu[24]="type-parameter",function(e){return fu[e]||"property"}),Su=function(){var e=Object.create(null);return e.method=0,e.function=1,e.constructor=2,e.field=3,e.variable=4,e.class=5,e.struct=6,e.interface=7,e.module=8,e.property=9,e.event=10,e.operator=11,e.unit=12,e.value=13,e.constant=14,e.enum=15,e["enum-member"]=16,e.enumMember=16,e.keyword=17,e.snippet=25,e.text=18,e.color=19,e.file=20,e.reference=21,e.customcolor=22,e.folder=23,e["type-parameter"]=24,e.typeParameter=24,function(t,n){var i=e[t];return void 0!==i||n||(i=9),i}}();!function(e){e[e.Invoke=1]="Invoke",e[e.TriggerCharacter=2]="TriggerCharacter",e[e.ContentChange=3]="ContentChange"}(gu||(gu={})),function(e){e[e.Text=0]="Text",e[e.Read=1]="Read",e[e.Write=2]="Write"}(mu||(mu={})),function(e){var t=new Map;t.set("file",0),t.set("module",1),t.set("namespace",2),t.set("package",3),t.set("class",4),t.set("method",5),t.set("property",6),t.set("field",7),t.set("constructor",8),t.set("enum",9),t.set("interface",10),t.set("function",11),t.set("variable",12),t.set("constant",13),t.set("string",14),t.set("number",15),t.set("boolean",16),t.set("array",17),t.set("object",18),t.set("key",19),t.set("null",20),t.set("enum-member",21),t.set("struct",22),t.set("event",23),t.set("operator",24),t.set("type-parameter",25);var n=new Map;n.set(0,"file"),n.set(1,"module"),n.set(2,"namespace"),n.set(3,"package"),n.set(4,"class"),n.set(5,"method"),n.set(6,"property"),n.set(7,"field"),n.set(8,"constructor"),n.set(9,"enum"),n.set(10,"interface"),n.set(11,"function"),n.set(12,"variable"),n.set(13,"constant"),n.set(14,"string"),n.set(15,"number"),n.set(16,"boolean"),n.set(17,"array"),n.set(18,"object"),n.set(19,"key"),n.set(20,"null"),n.set(21,"enum-member"),n.set(22,"struct"),n.set(23,"event"),n.set(24,"operator"),n.set(25,"type-parameter"),e.fromString=function(e){return t.get(e)},e.toString=function(e){return n.get(e)},e.toCssClassName=function(e,t){return"codicon "+(t?"inline":"block")+" codicon-symbol-"+(n.get(e)||"property")}}(vu||(vu={}));var Lu,xu,Du=function(){function e(e){this.value=e}return e.Comment=new e("comment"),e.Imports=new e("imports"),e.Region=new e("region"),e}();(Lu||(Lu={})).is=function(e){return Fs(e)&&(Boolean(e.newUri)||Boolean(e.oldUri))},(xu||(xu={})).is=function(e){return Fs(e)&&Et.isUri(e.resource)&&Fs(e.edit)};var Nu=new _u,ku=new _u,Eu=new _u,Iu=new _u,Ou=new _u,Mu=new _u,Tu=new _u,Pu=new _u,Ru=new _u,Au=new _u,Fu=new _u,Wu=new _u,Vu=new _u,Bu=new _u,Hu=new _u,zu=new _u,ju=new _u,Uu=new _u,Ku=new _u,qu=new _u,Gu=new _u,Zu=new _u,Yu=new yu,Xu=new(function(){function e(){}return e.prototype.clone=function(){return this},e.prototype.equals=function(e){return this===e},e}()),$u=new bu("vs.editor.nullMode",0);function Qu(e,t,n,i){return new xn([new Ln(i,"",e)],n)}function Ju(e,t,n,i){var o=new Uint32Array(2);return o[0]=i,o[1]=(16384|e<<0|2<<23)>>>0,new Dn(o,null===n?Xu:n)}var el=Mn("editorWorkerService"),tl=Mn("textModelService"),nl=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),il=!1;function ol(e){w&&(il||(il=!0,console.warn("Could not create web worker(s). Falling back to loading web worker code in main thread, which might cause UI freezes. Please see https://github.com/Microsoft/monaco-editor#faq")),console.warn(e.message))}var rl=function(){function e(e){this._workerId=-1,this._handler=e,this._lastSentReq=0,this._pendingReplies=Object.create(null)}return e.prototype.setWorkerId=function(e){this._workerId=e},e.prototype.sendMessage=function(e,t){var n=this,i=String(++this._lastSentReq);return new Promise((function(o,r){n._pendingReplies[i]={resolve:o,reject:r},n._send({vsWorker:n._workerId,req:i,method:e,args:t})}))},e.prototype.handleMessage=function(e){e&&e.vsWorker&&(-1!==this._workerId&&e.vsWorker!==this._workerId||this._handleMessage(e))},e.prototype._handleMessage=function(e){var t=this;if(e.seq){var n=e;if(!this._pendingReplies[n.seq])return void console.warn("Got reply to unknown seq");var i=this._pendingReplies[n.seq];if(delete this._pendingReplies[n.seq],n.err){var o=n.err;return n.err.$isError&&((o=new Error).name=n.err.name,o.message=n.err.message,o.stack=n.err.stack),void i.reject(o)}i.resolve(n.res)}else{var r=e,s=r.req;this._handler.handleMessage(r.method,r.args).then((function(e){t._send({vsWorker:t._workerId,seq:s,res:e,err:void 0})}),(function(e){e.detail instanceof Error&&(e.detail=ke(e.detail)),t._send({vsWorker:t._workerId,seq:s,res:void 0,err:ke(e)})}))}},e.prototype._send=function(e){var t=[];if(e.req)for(var n=e,i=0;i<n.args.length;i++)n.args[i]instanceof ArrayBuffer&&t.push(n.args[i]);else(n=e).res instanceof ArrayBuffer&&t.push(n.res);this._handler.sendMessage(e,t)},e}(),sl=function(e){function t(t,n,i){var o=e.call(this)||this,r=null;o._worker=o._register(t.create("vs/base/common/worker/simpleWorker",(function(e){o._protocol.handleMessage(e)}),(function(e){r&&r(e)}))),o._protocol=new rl({sendMessage:function(e,t){o._worker.postMessage(e,t)},handleMessage:function(e,t){if("function"!=typeof i[e])return Promise.reject(new Error("Missing method "+e+" on main thread host."));try{return Promise.resolve(i[e].apply(i,t))}catch(e){return Promise.reject(e)}}}),o._protocol.setWorkerId(o._worker.getId());var s=null;void 0!==self.require&&"function"==typeof self.require.getConfig?s=self.require.getConfig():void 0!==self.requirejs&&(s=self.requirejs.s.contexts._.config);var a=Zs(i);o._onModuleLoaded=o._protocol.sendMessage("$initialize",[o._worker.getId(),JSON.parse(JSON.stringify(s)),n,a]);var u=function(e,t){return o._request(e,t)};return o._lazyProxy=new Promise((function(e,t){r=t,o._onModuleLoaded.then((function(t){e(Ys(t,u))}),(function(e){t(e),o._onError("Worker failed to load "+n,e)}))})),o}return nl(t,e),t.prototype.getProxyObject=function(){return this._lazyProxy},t.prototype._request=function(e,t){var n=this;return new Promise((function(i,o){n._onModuleLoaded.then((function(){n._protocol.sendMessage(e,t).then(i,o)}),o)}))},t.prototype._onError=function(e,t){console.error(e),console.info(t)},t}(He);!function(){function e(e,t){var n=this;this._requestHandlerFactory=t,this._requestHandler=null,this._protocol=new rl({sendMessage:function(t,n){e(t,n)},handleMessage:function(e,t){return n._handleMessage(e,t)}})}e.prototype.onmessage=function(e){this._protocol.handleMessage(e)},e.prototype._handleMessage=function(e,t){if("$initialize"===e)return this.initialize(t[0],t[1],t[2],t[3]);if(!this._requestHandler||"function"!=typeof this._requestHandler[e])return Promise.reject(new Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._requestHandler[e].apply(this._requestHandler,t))}catch(e){return Promise.reject(e)}},e.prototype.initialize=function(e,t,n,i){var o=this;this._protocol.setWorkerId(e);var r=Ys(i,(function(e,t){return o._protocol.sendMessage(e,t)}));return this._requestHandlerFactory?(this._requestHandler=this._requestHandlerFactory(r),Promise.resolve(Zs(this._requestHandler))):(t&&(void 0!==t.baseUrl&&delete t.baseUrl,void 0!==t.paths&&void 0!==t.paths.vs&&delete t.paths.vs,t.catchError=!0,self.require.config(t)),new Promise((function(e,t){self.require([n],(function(n){o._requestHandler=n.create(r),o._requestHandler?e(Zs(o._requestHandler)):t(new Error("No RequestHandler!"))}),t)})))}}();var al,ul=function(){function e(e,t,n,i,o){this.id=t;var r=function(e,t){if(S.MonacoEnvironment){if("function"==typeof S.MonacoEnvironment.getWorker)return S.MonacoEnvironment.getWorker(e,t);if("function"==typeof S.MonacoEnvironment.getWorkerUrl)return new Worker(S.MonacoEnvironment.getWorkerUrl(e,t))}throw new Error("You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker")}("workerMain.js",n);"function"==typeof r.then?this.worker=r:this.worker=Promise.resolve(r),this.postMessage(e,[]),this.worker.then((function(e){e.onmessage=function(e){i(e.data)},e.onmessageerror=o,"function"==typeof e.addEventListener&&e.addEventListener("error",o)}))}return e.prototype.getId=function(){return this.id},e.prototype.postMessage=function(e,t){this.worker&&this.worker.then((function(n){return n.postMessage(e,t)}))},e.prototype.dispose=function(){this.worker&&this.worker.then((function(e){return e.terminate()})),this.worker=null},e}(),ll=function(){function e(e){this._label=e,this._webWorkerFailedBeforeError=!1}return e.prototype.create=function(t,n,i){var o=this,r=++e.LAST_WORKER_ID;if(this._webWorkerFailedBeforeError)throw this._webWorkerFailedBeforeError;return new ul(t,r,this._label||"anonymous"+r,n,(function(e){ol(e),o._webWorkerFailedBeforeError=e,i(e)}))},e.LAST_WORKER_ID=0,e}();!function(e){e[e.None=0]="None",e[e.Indent=1]="Indent",e[e.IndentOutdent=2]="IndentOutdent",e[e.Outdent=3]="Outdent"}(al||(al={}));var cl=function(){function e(e){if(this.open=e.open,this.close=e.close,this._standardTokenMask=0,Array.isArray(e.notIn))for(var t=0,n=e.notIn.length;t<n;t++){switch(e.notIn[t]){case"string":this._standardTokenMask|=2;break;case"comment":this._standardTokenMask|=1;break;case"regex":this._standardTokenMask|=4}}}return e.prototype.isOK=function(e){return 0==(this._standardTokenMask&e)},e}();function dl(e,t){for(var n=e.getCount(),i=e.findTokenIndexAtOffset(t),o=e.getLanguageId(i),r=i;r+1<n&&e.getLanguageId(r+1)===o;)r++;for(var s=i;s>0&&e.getLanguageId(s-1)===o;)s--;return new hl(e,o,s,r+1,e.getStartOffset(s),e.getEndOffset(r))}var hl=function(){function e(e,t,n,i,o,r){this._actual=e,this.languageId=t,this._firstTokenIndex=n,this._lastTokenIndex=i,this.firstCharOffset=o,this._lastCharOffset=r}return e.prototype.getLineContent=function(){return this._actual.getLineContent().substring(this.firstCharOffset,this._lastCharOffset)},e.prototype.getActualLineContentBefore=function(e){return this._actual.getLineContent().substring(0,this.firstCharOffset+e)},e.prototype.getTokenCount=function(){return this._lastTokenIndex-this._firstTokenIndex},e.prototype.findTokenIndexAtOffset=function(e){return this._actual.findTokenIndexAtOffset(e+this.firstCharOffset)-this._firstTokenIndex},e.prototype.getStandardTokenType=function(e){return this._actual.getStandardTokenType(e+this._firstTokenIndex)},e}();function pl(e){return 0!=(7&e)}var fl=function(){function e(t){if(t.autoClosingPairs?this._autoClosingPairs=t.autoClosingPairs.map((function(e){return new cl(e)})):t.brackets?this._autoClosingPairs=t.brackets.map((function(e){return new cl({open:e[0],close:e[1]})})):this._autoClosingPairs=[],t.__electricCharacterSupport&&t.__electricCharacterSupport.docComment){var n=t.__electricCharacterSupport.docComment;this._autoClosingPairs.push(new cl({open:n.open,close:n.close||""}))}this._autoCloseBefore="string"==typeof t.autoCloseBefore?t.autoCloseBefore:e.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED,this._surroundingPairs=t.surroundingPairs||this._autoClosingPairs}return e.prototype.getAutoClosingPairs=function(){return this._autoClosingPairs},e.prototype.getAutoCloseBeforeSet=function(){return this._autoCloseBefore},e.shouldAutoClosePair=function(e,t,n){if(0===t.getTokenCount())return!0;var i=t.findTokenIndexAtOffset(n-2),o=t.getStandardTokenType(i);return e.isOK(o)},e.prototype.getSurroundingPairs=function(){return this._surroundingPairs},e.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED=";:.,=}])> \n\t",e}(),gl=function(){function e(t,n,i,o,r,s){this.languageIdentifier=t,this.index=n,this.open=i,this.close=o,this.forwardRegex=r,this.reversedRegex=s,this._openSet=e._toSet(this.open),this._closeSet=e._toSet(this.close)}return e.prototype.isOpen=function(e){return this._openSet.has(e)},e.prototype.isClose=function(e){return this._closeSet.has(e)},e._toSet=function(e){for(var t=new Set,n=0,i=e;n<i.length;n++){var o=i[n];t.add(o)}return t},e}();var ml=function(e,t){var n=function(e){var t=e.length;e=e.map((function(e){return[e[0].toLowerCase(),e[1].toLowerCase()]}));for(var n=[],i=0;i<t;i++)n[i]=i;var o=function(e,t){var n=e[0],i=e[1],o=t[0],r=t[1];return n===o||n===r||i===o||i===r},r=function(e,i){for(var o=Math.min(e,i),r=Math.max(e,i),s=0;s<t;s++)n[s]===r&&(n[s]=o)};for(i=0;i<t;i++)for(var s=e[i],a=i+1;a<t;a++)o(s,e[a])&&r(n[i],n[a]);for(var u=[],l=0;l<t;l++){var c=[],d=[];for(i=0;i<t;i++)if(n[i]===l){var h=e[i],p=h[0],f=h[1];c.push(p),d.push(f)}c.length>0&&u.push({open:c,close:d})}return u}(t);this.brackets=n.map((function(t,i){return new gl(e,i,t.open,t.close,function(e,t,n,i){var o=[];o=(o=o.concat(e)).concat(t);for(var r=0,s=o.length;r<s;r++)vl(o[r],n,i,o);return(o=yl(o)).sort(_l),o.reverse(),wl(o)}(t.open,t.close,n,i),function(e,t,n,i){var o=[];o=(o=o.concat(e)).concat(t);for(var r=0,s=o.length;r<s;r++)vl(o[r],n,i,o);return(o=yl(o)).sort(_l),o.reverse(),wl(o.map(Ll))}(t.open,t.close,n,i))})),this.forwardRegex=function(e){for(var t=[],n=0,i=e;n<i.length;n++){for(var o=i[n],r=0,s=o.open;r<s.length;r++){var a=s[r];t.push(a)}for(var u=0,l=o.close;u<l.length;u++){var c=l[u];t.push(c)}}return wl(t=yl(t))}(this.brackets),this.reversedRegex=function(e){for(var t=[],n=0,i=e;n<i.length;n++){for(var o=i[n],r=0,s=o.open;r<s.length;r++){var a=s[r];t.push(a)}for(var u=0,l=o.close;u<l.length;u++){var c=l[u];t.push(c)}}return wl((t=yl(t)).map(Ll))}(this.brackets),this.textIsBracket={},this.textIsOpenBracket={},this.maxBracketLength=0;for(var i=0,o=this.brackets;i<o.length;i++){for(var r=o[i],s=0,a=r.open;s<a.length;s++){var u=a[s];this.textIsBracket[u]=r,this.textIsOpenBracket[u]=!0,this.maxBracketLength=Math.max(this.maxBracketLength,u.length)}for(var l=0,c=r.close;l<c.length;l++){var d=c[l];this.textIsBracket[d]=r,this.textIsOpenBracket[d]=!1,this.maxBracketLength=Math.max(this.maxBracketLength,d.length)}}};function vl(e,t,n,i){for(var o=0,r=t.length;o<r;o++)if(o!==n){for(var s=t[o],a=0,u=s.open;a<u.length;a++){var l=u[a];l.indexOf(e)>=0&&i.push(l)}for(var c=0,d=s.close;c<d.length;c++){var h=d[c];h.indexOf(e)>=0&&i.push(h)}}}function _l(e,t){return e.length-t.length}function yl(e){if(e.length<=1)return e;for(var t=[],n=new Set,i=0,o=e;i<o.length;i++){var r=o[i];n.has(r)||(t.push(r),n.add(r))}return t}function bl(e){var t=/^[\w ]+$/.test(e);return e=gr(e),t?"\\b"+e+"\\b":e}function wl(e){return yr("("+e.map(bl).join(")|(")+")",!0)}var Cl,Sl,Ll=(Cl=null,Sl=null,function(e){return Cl!==e&&(Sl=function(e){for(var t="",n=e.length-1;n>=0;n--)t+=e.charAt(n);return t}(Cl=e)),Sl}),xl=function(){function e(){}return e._findPrevBracketInText=function(e,t,n,i){var o=n.match(e);if(!o)return null;var r=n.length-(o.index||0),s=o[0].length,a=i+r;return new wn(t,a-s+1,t,a+1)},e.findPrevBracketInRange=function(e,t,n,i,o){var r=Ll(n).substring(n.length-o,n.length-i);return this._findPrevBracketInText(e,t,r,i)},e.findNextBracketInText=function(e,t,n,i){var o=n.match(e);if(!o)return null;var r=o.index||0,s=o[0].length;if(0===s)return null;var a=i+r;return new wn(t,a+1,t,a+1+s)},e.findNextBracketInRange=function(e,t,n,i,o){var r=n.substring(i,o);return this.findNextBracketInText(e,t,r,i)},e}(),Dl=function(){function e(e){this._richEditBrackets=e}return e.prototype.getElectricCharacters=function(){var e=[];if(this._richEditBrackets)for(var t=0,n=this._richEditBrackets.brackets;t<n.length;t++)for(var i=0,o=n[t].close;i<o.length;i++){var r=o[i],s=r.charAt(r.length-1);e.push(s)}return e=e.filter((function(e,t,n){return n.indexOf(e)===t}))},e.prototype.onElectricCharacter=function(e,t,n){if(!this._richEditBrackets||0===this._richEditBrackets.brackets.length)return null;var i=t.findTokenIndexAtOffset(n-1);if(pl(t.getStandardTokenType(i)))return null;var o=this._richEditBrackets.reversedRegex,r=t.getLineContent().substring(0,n-1)+e,s=xl.findPrevBracketInRange(o,1,r,0,r.length);if(!s)return null;var a=r.substring(s.startColumn-1,s.endColumn-1).toLowerCase();if(this._richEditBrackets.textIsOpenBracket[a])return null;var u=t.getActualLineContentBefore(s.startColumn-1);return/^\s*$/.test(u)?{matchOpenBracket:a}:null},e}(),Nl=function(){function e(e){this._indentationRules=e}return e.prototype.shouldIncrease=function(e){return!!(this._indentationRules&&this._indentationRules.increaseIndentPattern&&this._indentationRules.increaseIndentPattern.test(e))},e.prototype.shouldDecrease=function(e){return!!(this._indentationRules&&this._indentationRules.decreaseIndentPattern&&this._indentationRules.decreaseIndentPattern.test(e))},e.prototype.shouldIndentNextLine=function(e){return!!(this._indentationRules&&this._indentationRules.indentNextLinePattern&&this._indentationRules.indentNextLinePattern.test(e))},e.prototype.shouldIgnore=function(e){return!!(this._indentationRules&&this._indentationRules.unIndentedLinePattern&&this._indentationRules.unIndentedLinePattern.test(e))},e.prototype.getIndentMetadata=function(e){var t=0;return this.shouldIncrease(e)&&(t+=1),this.shouldDecrease(e)&&(t+=2),this.shouldIndentNextLine(e)&&(t+=4),this.shouldIgnore(e)&&(t+=8),t},e}(),kl=function(){function e(t){var n=this;(t=t||{}).brackets=t.brackets||[["(",")"],["{","}"],["[","]"]],this._brackets=[],t.brackets.forEach((function(t){var i=e._createOpenBracketRegExp(t[0]),o=e._createCloseBracketRegExp(t[1]);i&&o&&n._brackets.push({open:t[0],openRegExp:i,close:t[1],closeRegExp:o})})),this._regExpRules=t.onEnterRules||[]}return e.prototype.onEnter=function(e,t,n,i){if(e>=3)for(var o=0,r=this._regExpRules.length;o<r;o++){var s=this._regExpRules[o];if([{reg:s.beforeText,text:n},{reg:s.afterText,text:i},{reg:s.oneLineAboveText,text:t}].every((function(e){return!e.reg||e.reg.test(e.text)})))return s.action}if(e>=2&&n.length>0&&i.length>0)for(o=0,r=this._brackets.length;o<r;o++){if((a=this._brackets[o]).openRegExp.test(n)&&a.closeRegExp.test(i))return{indentAction:al.IndentOutdent}}if(e>=2&&n.length>0)for(o=0,r=this._brackets.length;o<r;o++){var a;if((a=this._brackets[o]).openRegExp.test(n))return{indentAction:al.Indent}}return null},e._createOpenBracketRegExp=function(t){var n=gr(t);return/\B/.test(n.charAt(0))||(n="\\b"+n),n+="\\s*$",e._safeRegExp(n)},e._createCloseBracketRegExp=function(t){var n=gr(t);return/\B/.test(n.charAt(n.length-1))||(n+="\\b"),n="^\\s*"+n,e._safeRegExp(n)},e._safeRegExp=function(e){try{return new RegExp(e)}catch(e){return De(e),null}},e}(),El=function(){function e(t,n,i){this._languageIdentifier=t,this._brackets=null,this._electricCharacter=null;var o=null;n&&(o=n._conf),this._conf=e._mergeConf(o,i),this._onEnterSupport=this._conf.brackets||this._conf.indentationRules||this._conf.onEnterRules?new kl(this._conf):null,this.comments=e._handleComments(this._conf),this.characterPair=new fl(this._conf),this.wordDefinition=this._conf.wordPattern||D,this.indentationRules=this._conf.indentationRules,this._conf.indentationRules?this.indentRulesSupport=new Nl(this._conf.indentationRules):this.indentRulesSupport=null,this.foldingRules=this._conf.folding||{}}return Object.defineProperty(e.prototype,"brackets",{get:function(){return!this._brackets&&this._conf.brackets&&(this._brackets=new ml(this._languageIdentifier,this._conf.brackets)),this._brackets},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"electricCharacter",{get:function(){return this._electricCharacter||(this._electricCharacter=new Dl(this.brackets)),this._electricCharacter},enumerable:!0,configurable:!0}),e.prototype.onEnter=function(e,t,n,i){return this._onEnterSupport?this._onEnterSupport.onEnter(e,t,n,i):null},e._mergeConf=function(e,t){return{comments:e?t.comments||e.comments:t.comments,brackets:e?t.brackets||e.brackets:t.brackets,wordPattern:e?t.wordPattern||e.wordPattern:t.wordPattern,indentationRules:e?t.indentationRules||e.indentationRules:t.indentationRules,onEnterRules:e?t.onEnterRules||e.onEnterRules:t.onEnterRules,autoClosingPairs:e?t.autoClosingPairs||e.autoClosingPairs:t.autoClosingPairs,surroundingPairs:e?t.surroundingPairs||e.surroundingPairs:t.surroundingPairs,autoCloseBefore:e?t.autoCloseBefore||e.autoCloseBefore:t.autoCloseBefore,folding:e?t.folding||e.folding:t.folding,__electricCharacterSupport:e?t.__electricCharacterSupport||e.__electricCharacterSupport:t.__electricCharacterSupport}},e._handleComments=function(e){var t=e.comments;if(!t)return null;var n={};if(t.lineComment&&(n.lineCommentToken=t.lineComment),t.blockComment){var i=t.blockComment,o=i[0],r=i[1];n.blockCommentStartToken=o,n.blockCommentEndToken=r}return n},e}(),Il=function(e){this.languageIdentifier=e},Ol=new(function(){function e(){this._entries=new Map,this._onDidChange=new nt,this.onDidChange=this._onDidChange.event}return e.prototype.register=function(e,t){var n=this,i=this._getRichEditSupport(e.id),o=new El(e,i,t);return this._entries.set(e.id,o),this._onDidChange.fire(new Il(e)),We((function(){n._entries.get(e.id)===o&&(n._entries.set(e.id,i),n._onDidChange.fire(new Il(e)))}))},e.prototype._getRichEditSupport=function(e){return this._entries.get(e)},e.prototype._getElectricCharacterSupport=function(e){var t=this._getRichEditSupport(e);return t&&t.electricCharacter||null},e.prototype.getElectricCharacters=function(e){var t=this._getElectricCharacterSupport(e);return t?t.getElectricCharacters():[]},e.prototype.onElectricCharacter=function(e,t,n){var i=dl(t,n-1),o=this._getElectricCharacterSupport(i.languageId);return o?o.onElectricCharacter(e,i,n-i.firstCharOffset):null},e.prototype.getComments=function(e){var t=this._getRichEditSupport(e);return t&&t.comments||null},e.prototype._getCharacterPairSupport=function(e){var t=this._getRichEditSupport(e);return t&&t.characterPair||null},e.prototype.getAutoClosingPairs=function(e){var t=this._getCharacterPairSupport(e);return t?t.getAutoClosingPairs():[]},e.prototype.getAutoCloseBeforeSet=function(e){var t=this._getCharacterPairSupport(e);return t?t.getAutoCloseBeforeSet():fl.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED},e.prototype.getSurroundingPairs=function(e){var t=this._getCharacterPairSupport(e);return t?t.getSurroundingPairs():[]},e.prototype.shouldAutoClosePair=function(e,t,n){var i=dl(t,n-1);return fl.shouldAutoClosePair(e,i,n-i.firstCharOffset)},e.prototype.getWordDefinition=function(e){var t=this._getRichEditSupport(e);return N(t&&t.wordDefinition||null)},e.prototype.getFoldingRules=function(e){var t=this._getRichEditSupport(e);return t?t.foldingRules:{}},e.prototype.getIndentRulesSupport=function(e){var t=this._getRichEditSupport(e);return t&&t.indentRulesSupport||null},e.prototype.getPrecedingValidLine=function(e,t,n){var i=e.getLanguageIdAtPosition(t,0);if(t>1){var o=void 0,r=-1;for(o=t-1;o>=1;o--){if(e.getLanguageIdAtPosition(o,0)!==i)return r;var s=e.getLineContent(o);if(!n.shouldIgnore(s)&&!/^\s+$/.test(s)&&""!==s)return o;r=o}}return-1},e.prototype.getInheritIndentForLine=function(e,t,n,i){if(void 0===i&&(i=!0),e<4)return null;var o=this.getIndentRulesSupport(t.getLanguageIdentifier().id);if(!o)return null;if(n<=1)return{indentation:"",action:null};var r=this.getPrecedingValidLine(t,n,o);if(r<0)return null;if(r<1)return{indentation:"",action:null};var s=t.getLineContent(r);if(o.shouldIncrease(s)||o.shouldIndentNextLine(s))return{indentation:Cr(s),action:al.Indent,line:r};if(o.shouldDecrease(s))return{indentation:Cr(s),action:null,line:r};if(1===r)return{indentation:Cr(t.getLineContent(r)),action:null,line:r};var a=r-1,u=o.getIndentMetadata(t.getLineContent(a));if(!(3&u)&&4&u){for(var l=0,c=a-1;c>0;c--)if(!o.shouldIndentNextLine(t.getLineContent(c))){l=c;break}return{indentation:Cr(t.getLineContent(l+1)),action:null,line:l+1}}if(i)return{indentation:Cr(t.getLineContent(r)),action:null,line:r};for(c=r;c>0;c--){var d=t.getLineContent(c);if(o.shouldIncrease(d))return{indentation:Cr(d),action:al.Indent,line:c};if(o.shouldIndentNextLine(d)){l=0;for(var h=c-1;h>0;h--)if(!o.shouldIndentNextLine(t.getLineContent(c))){l=h;break}return{indentation:Cr(t.getLineContent(l+1)),action:null,line:l+1}}if(o.shouldDecrease(d))return{indentation:Cr(d),action:null,line:c}}return{indentation:Cr(t.getLineContent(1)),action:null,line:1}},e.prototype.getGoodIndentForLine=function(e,t,n,i,o){if(e<4)return null;var r=this._getRichEditSupport(n);if(!r)return null;var s=this.getIndentRulesSupport(n);if(!s)return null;var a=this.getInheritIndentForLine(e,t,i),u=t.getLineContent(i);if(a){var l=a.line;if(void 0!==l){var c=r.onEnter(e,"",t.getLineContent(l),"");if(c){var d=Cr(t.getLineContent(l));return c.removeText&&(d=d.substring(0,d.length-c.removeText)),c.indentAction===al.Indent||c.indentAction===al.IndentOutdent?d=o.shiftIndent(d):c.indentAction===al.Outdent&&(d=o.unshiftIndent(d)),s.shouldDecrease(u)&&(d=o.unshiftIndent(d)),c.appendText&&(d+=c.appendText),Cr(d)}}return s.shouldDecrease(u)?a.action===al.Indent?a.indentation:o.unshiftIndent(a.indentation):a.action===al.Indent?o.shiftIndent(a.indentation):a.indentation}return null},e.prototype.getIndentForEnter=function(e,t,n,i){if(e<4)return null;t.forceTokenization(n.startLineNumber);var o,r,s=t.getLineTokens(n.startLineNumber),a=dl(s,n.startColumn-1),u=a.getLineContent(),l=!1;(a.firstCharOffset>0&&s.getLanguageId(0)!==a.languageId?(l=!0,o=u.substr(0,n.startColumn-1-a.firstCharOffset)):o=s.getLineContent().substring(0,n.startColumn-1),n.isEmpty())?r=u.substr(n.startColumn-1-a.firstCharOffset):r=this.getScopedLineTokens(t,n.endLineNumber,n.endColumn).getLineContent().substr(n.endColumn-1-a.firstCharOffset);var c=this.getIndentRulesSupport(a.languageId);if(!c)return null;var d=o,h=Cr(o),p={getLineTokens:function(e){return t.getLineTokens(e)},getLanguageIdentifier:function(){return t.getLanguageIdentifier()},getLanguageIdAtPosition:function(e,n){return t.getLanguageIdAtPosition(e,n)},getLineContent:function(e){return e===n.startLineNumber?d:t.getLineContent(e)}},f=Cr(s.getLineContent()),g=this.getInheritIndentForLine(e,p,n.startLineNumber+1);if(!g){var m=l?f:h;return{beforeEnter:m,afterEnter:m}}var v=l?f:g.indentation;return g.action===al.Indent&&(v=i.shiftIndent(v)),c.shouldDecrease(r)&&(v=i.unshiftIndent(v)),{beforeEnter:l?f:h,afterEnter:v}},e.prototype.getIndentActionForType=function(e,t,n,i,o){if(e<4)return null;var r=this.getScopedLineTokens(t,n.startLineNumber,n.startColumn),s=this.getIndentRulesSupport(r.languageId);if(!s)return null;var a,u=r.getLineContent(),l=u.substr(0,n.startColumn-1-r.firstCharOffset);n.isEmpty()?a=u.substr(n.startColumn-1-r.firstCharOffset):a=this.getScopedLineTokens(t,n.endLineNumber,n.endColumn).getLineContent().substr(n.endColumn-1-r.firstCharOffset);if(!s.shouldDecrease(l+a)&&s.shouldDecrease(l+i+a)){var c=this.getInheritIndentForLine(e,t,n.startLineNumber,!1);if(!c)return null;var d=c.indentation;return c.action!==al.Indent&&(d=o.unshiftIndent(d)),d}return null},e.prototype.getIndentMetadata=function(e,t){var n=this.getIndentRulesSupport(e.getLanguageIdentifier().id);return n?t<1||t>e.getLineCount()?null:n.getIndentMetadata(e.getLineContent(t)):null},e.prototype.getEnterAction=function(e,t,n){var i=this.getScopedLineTokens(t,n.startLineNumber,n.startColumn),o=this._getRichEditSupport(i.languageId);if(!o)return null;var r,s=i.getLineContent(),a=s.substr(0,n.startColumn-1-i.firstCharOffset);n.isEmpty()?r=s.substr(n.startColumn-1-i.firstCharOffset):r=this.getScopedLineTokens(t,n.endLineNumber,n.endColumn).getLineContent().substr(n.endColumn-1-i.firstCharOffset);var u="";if(n.startLineNumber>1&&0===i.firstCharOffset){var l=this.getScopedLineTokens(t,n.startLineNumber-1);l.languageId===i.languageId&&(u=l.getLineContent())}var c=o.onEnter(e,u,a,r);if(!c)return null;var d=c.indentAction,h=c.appendText,p=c.removeText||0;h||(h=d===al.Indent||d===al.IndentOutdent?"\t":"");var f=this.getIndentationAtPosition(t,n.startLineNumber,n.startColumn);return p&&(f=f.substring(0,f.length-p)),{indentAction:d,appendText:h,removeText:p,indentation:f}},e.prototype.getIndentationAtPosition=function(e,t,n){var i=Cr(e.getLineContent(t));return i.length>n-1&&(i=i.substring(0,n-1)),i},e.prototype.getScopedLineTokens=function(e,t,n){return e.forceTokenization(t),dl(e.getLineTokens(t),void 0===n?e.getLineMaxColumn(t)-1:n-1)},e.prototype.getBracketsSupport=function(e){var t=this._getRichEditSupport(e);return t&&t.brackets||null},e}()),Ml=function(){function e(e,t,n,i){this.originalStart=e,this.originalLength=t,this.modifiedStart=n,this.modifiedLength=i}return e.prototype.getOriginalEnd=function(){return this.originalStart+this.originalLength},e.prototype.getModifiedEnd=function(){return this.modifiedStart+this.modifiedLength},e}();function Tl(e,t){switch(void 0===t&&(t=0),typeof e){case"object":return null===e?Pl(349,t):Array.isArray(e)?(n=e,i=Pl(104579,i=t),n.reduce((function(e,t){return Tl(t,e)}),i)):function(e,t){return t=Pl(181387,t),Object.keys(e).sort().reduce((function(t,n){return t=Rl(n,t),Tl(e[n],t)}),t)}(e,t);case"string":return Rl(e,t);case"boolean":return function(e,t){return Pl(e?433:863,t)}(e,t);case"number":return Pl(e,t);case"undefined":return Pl(0,937);default:return Pl(0,617)}var n,i}function Pl(e,t){return(t<<5)-t+e|0}function Rl(e,t){t=Pl(149417,t);for(var n=0,i=e.length;n<i;n++)t=Pl(e.charCodeAt(n),t);return t}var Al=function(){function e(e){this.source=e}return e.prototype.getElements=function(){for(var e=this.source,t=new Int32Array(e.length),n=0,i=e.length;n<i;n++)t[n]=e.charCodeAt(n);return t},e}();function Fl(e,t,n){return new Hl(new Al(e),new Al(t)).ComputeDiff(n).changes}var Wl=function(){function e(){}return e.Assert=function(e,t){if(!e)throw new Error(t)},e}(),Vl=function(){function e(){}return e.Copy=function(e,t,n,i,o){for(var r=0;r<o;r++)n[i+r]=e[t+r]},e.Copy2=function(e,t,n,i,o){for(var r=0;r<o;r++)n[i+r]=e[t+r]},e}(),Bl=function(){function e(){this.m_changes=[],this.m_originalStart=1073741824,this.m_modifiedStart=1073741824,this.m_originalCount=0,this.m_modifiedCount=0}return e.prototype.MarkNextChange=function(){(this.m_originalCount>0||this.m_modifiedCount>0)&&this.m_changes.push(new Ml(this.m_originalStart,this.m_originalCount,this.m_modifiedStart,this.m_modifiedCount)),this.m_originalCount=0,this.m_modifiedCount=0,this.m_originalStart=1073741824,this.m_modifiedStart=1073741824},e.prototype.AddOriginalElement=function(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_originalCount++},e.prototype.AddModifiedElement=function(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_modifiedCount++},e.prototype.getChanges=function(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes},e.prototype.getReverseChanges=function(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes.reverse(),this.m_changes},e}(),Hl=function(){function e(t,n,i){void 0===i&&(i=null),this.ContinueProcessingPredicate=i;var o=e._getElements(t),r=o[0],s=o[1],a=o[2],u=e._getElements(n),l=u[0],c=u[1],d=u[2];this._hasStrings=a&&d,this._originalStringElements=r,this._originalElementsOrHash=s,this._modifiedStringElements=l,this._modifiedElementsOrHash=c,this.m_forwardHistory=[],this.m_reverseHistory=[]}return e._isStringArray=function(e){return e.length>0&&"string"==typeof e[0]},e._getElements=function(t){var n=t.getElements();if(e._isStringArray(n)){for(var i=new Int32Array(n.length),o=0,r=n.length;o<r;o++)i[o]=Rl(n[o],0);return[n,i,!0]}return n instanceof Int32Array?[[],n,!1]:[[],new Int32Array(n),!1]},e.prototype.ElementsAreEqual=function(e,t){return this._originalElementsOrHash[e]===this._modifiedElementsOrHash[t]&&(!this._hasStrings||this._originalStringElements[e]===this._modifiedStringElements[t])},e.prototype.OriginalElementsAreEqual=function(e,t){return this._originalElementsOrHash[e]===this._originalElementsOrHash[t]&&(!this._hasStrings||this._originalStringElements[e]===this._originalStringElements[t])},e.prototype.ModifiedElementsAreEqual=function(e,t){return this._modifiedElementsOrHash[e]===this._modifiedElementsOrHash[t]&&(!this._hasStrings||this._modifiedStringElements[e]===this._modifiedStringElements[t])},e.prototype.ComputeDiff=function(e){return this._ComputeDiff(0,this._originalElementsOrHash.length-1,0,this._modifiedElementsOrHash.length-1,e)},e.prototype._ComputeDiff=function(e,t,n,i,o){var r=[!1],s=this.ComputeDiffRecursive(e,t,n,i,r);return o&&(s=this.PrettifyChanges(s)),{quitEarly:r[0],changes:s}},e.prototype.ComputeDiffRecursive=function(e,t,n,i,o){for(o[0]=!1;e<=t&&n<=i&&this.ElementsAreEqual(e,n);)e++,n++;for(;t>=e&&i>=n&&this.ElementsAreEqual(t,i);)t--,i--;if(e>t||n>i){var r=void 0;return n<=i?(Wl.Assert(e===t+1,"originalStart should only be one more than originalEnd"),r=[new Ml(e,0,n,i-n+1)]):e<=t?(Wl.Assert(n===i+1,"modifiedStart should only be one more than modifiedEnd"),r=[new Ml(e,t-e+1,n,0)]):(Wl.Assert(e===t+1,"originalStart should only be one more than originalEnd"),Wl.Assert(n===i+1,"modifiedStart should only be one more than modifiedEnd"),r=[]),r}var s=[0],a=[0],u=this.ComputeRecursionPoint(e,t,n,i,s,a,o),l=s[0],c=a[0];if(null!==u)return u;if(!o[0]){var d=this.ComputeDiffRecursive(e,l,n,c,o),h=[];return h=o[0]?[new Ml(l+1,t-(l+1)+1,c+1,i-(c+1)+1)]:this.ComputeDiffRecursive(l+1,t,c+1,i,o),this.ConcatenateChanges(d,h)}return[new Ml(e,t-e+1,n,i-n+1)]},e.prototype.WALKTRACE=function(e,t,n,i,o,r,s,a,u,l,c,d,h,p,f,g,m,v){var _,y=null,b=new Bl,w=t,C=n,S=h[0]-g[0]-i,L=-1073741824,x=this.m_forwardHistory.length-1;do{(E=S+e)===w||E<C&&u[E-1]<u[E+1]?(p=(c=u[E+1])-S-i,c<L&&b.MarkNextChange(),L=c,b.AddModifiedElement(c+1,p),S=E+1-e):(p=(c=u[E-1]+1)-S-i,c<L&&b.MarkNextChange(),L=c-1,b.AddOriginalElement(c,p+1),S=E-1-e),x>=0&&(e=(u=this.m_forwardHistory[x])[0],w=1,C=u.length-1)}while(--x>=-1);if(_=b.getReverseChanges(),v[0]){var D=h[0]+1,N=g[0]+1;if(null!==_&&_.length>0){var k=_[_.length-1];D=Math.max(D,k.getOriginalEnd()),N=Math.max(N,k.getModifiedEnd())}y=[new Ml(D,d-D+1,N,f-N+1)]}else{b=new Bl,w=r,C=s,S=h[0]-g[0]-a,L=1073741824,x=m?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{var E;(E=S+o)===w||E<C&&l[E-1]>=l[E+1]?(p=(c=l[E+1]-1)-S-a,c>L&&b.MarkNextChange(),L=c+1,b.AddOriginalElement(c+1,p+1),S=E+1-o):(p=(c=l[E-1])-S-a,c>L&&b.MarkNextChange(),L=c,b.AddModifiedElement(c+1,p+1),S=E-1-o),x>=0&&(o=(l=this.m_reverseHistory[x])[0],w=1,C=l.length-1)}while(--x>=-1);y=b.getChanges()}return this.ConcatenateChanges(_,y)},e.prototype.ComputeRecursionPoint=function(e,t,n,i,o,r,s){var a=0,u=0,l=0,c=0,d=0,h=0;e--,n--,o[0]=0,r[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];var p=t-e+(i-n),f=p+1,g=new Int32Array(f),m=new Int32Array(f),v=i-n,_=t-e,y=e-n,b=t-i,w=(_-v)%2==0;g[v]=e,m[_]=t,s[0]=!1;for(var C=1;C<=p/2+1;C++){var S=0,L=0;l=this.ClipDiagonalBound(v-C,C,v,f),c=this.ClipDiagonalBound(v+C,C,v,f);for(var x=l;x<=c;x+=2){u=(a=x===l||x<c&&g[x-1]<g[x+1]?g[x+1]:g[x-1]+1)-(x-v)-y;for(var D=a;a<t&&u<i&&this.ElementsAreEqual(a+1,u+1);)a++,u++;if(g[x]=a,a+u>S+L&&(S=a,L=u),!w&&Math.abs(x-_)<=C-1&&a>=m[x])return o[0]=a,r[0]=u,D<=m[x]&&C<=1448?this.WALKTRACE(v,l,c,y,_,d,h,b,g,m,a,t,o,u,i,r,w,s):null}var N=(S-e+(L-n)-C)/2;if(null!==this.ContinueProcessingPredicate&&!this.ContinueProcessingPredicate(S,N))return s[0]=!0,o[0]=S,r[0]=L,N>0&&C<=1448?this.WALKTRACE(v,l,c,y,_,d,h,b,g,m,a,t,o,u,i,r,w,s):(e++,n++,[new Ml(e,t-e+1,n,i-n+1)]);d=this.ClipDiagonalBound(_-C,C,_,f),h=this.ClipDiagonalBound(_+C,C,_,f);for(x=d;x<=h;x+=2){u=(a=x===d||x<h&&m[x-1]>=m[x+1]?m[x+1]-1:m[x-1])-(x-_)-b;for(D=a;a>e&&u>n&&this.ElementsAreEqual(a,u);)a--,u--;if(m[x]=a,w&&Math.abs(x-v)<=C&&a<=g[x])return o[0]=a,r[0]=u,D>=g[x]&&C<=1448?this.WALKTRACE(v,l,c,y,_,d,h,b,g,m,a,t,o,u,i,r,w,s):null}if(C<=1447){var k=new Int32Array(c-l+2);k[0]=v-l+1,Vl.Copy2(g,l,k,1,c-l+1),this.m_forwardHistory.push(k),(k=new Int32Array(h-d+2))[0]=_-d+1,Vl.Copy2(m,d,k,1,h-d+1),this.m_reverseHistory.push(k)}}return this.WALKTRACE(v,l,c,y,_,d,h,b,g,m,a,t,o,u,i,r,w,s)},e.prototype.PrettifyChanges=function(e){for(var t=0;t<e.length;t++){for(var n=e[t],i=t<e.length-1?e[t+1].originalStart:this._originalElementsOrHash.length,o=t<e.length-1?e[t+1].modifiedStart:this._modifiedElementsOrHash.length,r=n.originalLength>0,s=n.modifiedLength>0;n.originalStart+n.originalLength<i&&n.modifiedStart+n.modifiedLength<o&&(!r||this.OriginalElementsAreEqual(n.originalStart,n.originalStart+n.originalLength))&&(!s||this.ModifiedElementsAreEqual(n.modifiedStart,n.modifiedStart+n.modifiedLength));)n.originalStart++,n.modifiedStart++;var a=[null];t<e.length-1&&this.ChangesOverlap(e[t],e[t+1],a)&&(e[t]=a[0],e.splice(t+1,1),t--)}for(t=e.length-1;t>=0;t--){n=e[t],i=0,o=0;if(t>0){var u=e[t-1];u.originalLength>0&&(i=u.originalStart+u.originalLength),u.modifiedLength>0&&(o=u.modifiedStart+u.modifiedLength)}r=n.originalLength>0,s=n.modifiedLength>0;for(var l=0,c=this._boundaryScore(n.originalStart,n.originalLength,n.modifiedStart,n.modifiedLength),d=1;;d++){var h=n.originalStart-d,p=n.modifiedStart-d;if(h<i||p<o)break;if(r&&!this.OriginalElementsAreEqual(h,h+n.originalLength))break;if(s&&!this.ModifiedElementsAreEqual(p,p+n.modifiedLength))break;var f=this._boundaryScore(h,n.originalLength,p,n.modifiedLength);f>c&&(c=f,l=d)}n.originalStart-=l,n.modifiedStart-=l}return e},e.prototype._OriginalIsBoundary=function(e){return e<=0||e>=this._originalElementsOrHash.length-1||this._hasStrings&&/^\s*$/.test(this._originalStringElements[e])},e.prototype._OriginalRegionIsBoundary=function(e,t){if(this._OriginalIsBoundary(e)||this._OriginalIsBoundary(e-1))return!0;if(t>0){var n=e+t;if(this._OriginalIsBoundary(n-1)||this._OriginalIsBoundary(n))return!0}return!1},e.prototype._ModifiedIsBoundary=function(e){return e<=0||e>=this._modifiedElementsOrHash.length-1||this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[e])},e.prototype._ModifiedRegionIsBoundary=function(e,t){if(this._ModifiedIsBoundary(e)||this._ModifiedIsBoundary(e-1))return!0;if(t>0){var n=e+t;if(this._ModifiedIsBoundary(n-1)||this._ModifiedIsBoundary(n))return!0}return!1},e.prototype._boundaryScore=function(e,t,n,i){return(this._OriginalRegionIsBoundary(e,t)?1:0)+(this._ModifiedRegionIsBoundary(n,i)?1:0)},e.prototype.ConcatenateChanges=function(e,t){var n=[];if(0===e.length||0===t.length)return t.length>0?t:e;if(this.ChangesOverlap(e[e.length-1],t[0],n)){var i=new Array(e.length+t.length-1);return Vl.Copy(e,0,i,0,e.length-1),i[e.length-1]=n[0],Vl.Copy(t,1,i,e.length,t.length-1),i}i=new Array(e.length+t.length);return Vl.Copy(e,0,i,0,e.length),Vl.Copy(t,0,i,e.length,t.length),i},e.prototype.ChangesOverlap=function(e,t,n){if(Wl.Assert(e.originalStart<=t.originalStart,"Left change is not less than or equal to right change"),Wl.Assert(e.modifiedStart<=t.modifiedStart,"Left change is not less than or equal to right change"),e.originalStart+e.originalLength>=t.originalStart||e.modifiedStart+e.modifiedLength>=t.modifiedStart){var i=e.originalStart,o=e.originalLength,r=e.modifiedStart,s=e.modifiedLength;return e.originalStart+e.originalLength>=t.originalStart&&(o=t.originalStart+t.originalLength-e.originalStart),e.modifiedStart+e.modifiedLength>=t.modifiedStart&&(s=t.modifiedStart+t.modifiedLength-e.modifiedStart),n[0]=new Ml(i,o,r,s),!0}return n[0]=null,!1},e.prototype.ClipDiagonalBound=function(e,t,n,i){if(e>=0&&e<i)return e;var o=t%2==0;return e<0?o===(n%2==0)?0:1:o===((i-n-1)%2==0)?i-1:i-2},e}();function zl(e,t,n,i){return new Hl(e,t,n).ComputeDiff(i)}var jl=function(){function e(e){for(var t=[],n=[],i=0,o=e.length;i<o;i++)t[i]=Zl(e[i],1),n[i]=Yl(e[i],1);this.lines=e,this._startColumns=t,this._endColumns=n}return e.prototype.getElements=function(){for(var e=[],t=0,n=this.lines.length;t<n;t++)e[t]=this.lines[t].substring(this._startColumns[t]-1,this._endColumns[t]-1);return e},e.prototype.getStartLineNumber=function(e){return e+1},e.prototype.getEndLineNumber=function(e){return e+1},e.prototype.createCharSequence=function(e,t,n){for(var i=[],o=[],r=[],s=0,a=t;a<=n;a++)for(var u=this.lines[a],l=e?this._startColumns[a]:1,c=e?this._endColumns[a]:u.length+1,d=l;d<c;d++)i[s]=u.charCodeAt(d-1),o[s]=a+1,r[s]=d,s++;return new Ul(i,o,r)},e}(),Ul=function(){function e(e,t,n){this._charCodes=e,this._lineNumbers=t,this._columns=n}return e.prototype.getElements=function(){return this._charCodes},e.prototype.getStartLineNumber=function(e){return this._lineNumbers[e]},e.prototype.getStartColumn=function(e){return this._columns[e]},e.prototype.getEndLineNumber=function(e){return this._lineNumbers[e]},e.prototype.getEndColumn=function(e){return this._columns[e]+1},e}(),Kl=function(){function e(e,t,n,i,o,r,s,a){this.originalStartLineNumber=e,this.originalStartColumn=t,this.originalEndLineNumber=n,this.originalEndColumn=i,this.modifiedStartLineNumber=o,this.modifiedStartColumn=r,this.modifiedEndLineNumber=s,this.modifiedEndColumn=a}return e.createFromDiffChange=function(t,n,i){var o,r,s,a,u,l,c,d;return 0===t.originalLength?(o=0,r=0,s=0,a=0):(o=n.getStartLineNumber(t.originalStart),r=n.getStartColumn(t.originalStart),s=n.getEndLineNumber(t.originalStart+t.originalLength-1),a=n.getEndColumn(t.originalStart+t.originalLength-1)),0===t.modifiedLength?(u=0,l=0,c=0,d=0):(u=i.getStartLineNumber(t.modifiedStart),l=i.getStartColumn(t.modifiedStart),c=i.getEndLineNumber(t.modifiedStart+t.modifiedLength-1),d=i.getEndColumn(t.modifiedStart+t.modifiedLength-1)),new e(o,r,s,a,u,l,c,d)},e}();var ql=function(){function e(e,t,n,i,o){this.originalStartLineNumber=e,this.originalEndLineNumber=t,this.modifiedStartLineNumber=n,this.modifiedEndLineNumber=i,this.charChanges=o}return e.createFromDiffResult=function(t,n,i,o,r,s,a){var u,l,c,d,h=void 0;if(0===n.originalLength?(u=i.getStartLineNumber(n.originalStart)-1,l=0):(u=i.getStartLineNumber(n.originalStart),l=i.getEndLineNumber(n.originalStart+n.originalLength-1)),0===n.modifiedLength?(c=o.getStartLineNumber(n.modifiedStart)-1,d=0):(c=o.getStartLineNumber(n.modifiedStart),d=o.getEndLineNumber(n.modifiedStart+n.modifiedLength-1)),s&&n.originalLength>0&&n.originalLength<20&&n.modifiedLength>0&&n.modifiedLength<20&&r()){var p=i.createCharSequence(t,n.originalStart,n.originalStart+n.originalLength-1),f=o.createCharSequence(t,n.modifiedStart,n.modifiedStart+n.modifiedLength-1),g=zl(p,f,r,!0).changes;a&&(g=function(e){if(e.length<=1)return e;for(var t=[e[0]],n=t[0],i=1,o=e.length;i<o;i++){var r=e[i],s=r.originalStart-(n.originalStart+n.originalLength),a=r.modifiedStart-(n.modifiedStart+n.modifiedLength);Math.min(s,a)<3?(n.originalLength=r.originalStart+r.originalLength-n.originalStart,n.modifiedLength=r.modifiedStart+r.modifiedLength-n.modifiedStart):(t.push(r),n=r)}return t}(g)),h=[];for(var m=0,v=g.length;m<v;m++)h.push(Kl.createFromDiffChange(g[m],p,f))}return new e(u,l,c,d,h)},e}(),Gl=function(){function e(e,t,n){this.shouldComputeCharChanges=n.shouldComputeCharChanges,this.shouldPostProcessCharChanges=n.shouldPostProcessCharChanges,this.shouldIgnoreTrimWhitespace=n.shouldIgnoreTrimWhitespace,this.shouldMakePrettyDiff=n.shouldMakePrettyDiff,this.originalLines=e,this.modifiedLines=t,this.original=new jl(e),this.modified=new jl(t),this.continueLineDiff=Xl(n.maxComputationTime),this.continueCharDiff=Xl(0===n.maxComputationTime?0:Math.min(n.maxComputationTime,5e3))}return e.prototype.computeDiff=function(){if(1===this.original.lines.length&&0===this.original.lines[0].length)return{quitEarly:!1,changes:[{originalStartLineNumber:1,originalEndLineNumber:1,modifiedStartLineNumber:1,modifiedEndLineNumber:this.modified.lines.length,charChanges:[{modifiedEndColumn:0,modifiedEndLineNumber:0,modifiedStartColumn:0,modifiedStartLineNumber:0,originalEndColumn:0,originalEndLineNumber:0,originalStartColumn:0,originalStartLineNumber:0}]}]};if(1===this.modified.lines.length&&0===this.modified.lines[0].length)return{quitEarly:!1,changes:[{originalStartLineNumber:1,originalEndLineNumber:this.original.lines.length,modifiedStartLineNumber:1,modifiedEndLineNumber:1,charChanges:[{modifiedEndColumn:0,modifiedEndLineNumber:0,modifiedStartColumn:0,modifiedStartLineNumber:0,originalEndColumn:0,originalEndLineNumber:0,originalStartColumn:0,originalStartLineNumber:0}]}]};var e=zl(this.original,this.modified,this.continueLineDiff,this.shouldMakePrettyDiff),t=e.changes,n=e.quitEarly;if(this.shouldIgnoreTrimWhitespace){for(var i=[],o=0,r=t.length;o<r;o++)i.push(ql.createFromDiffResult(this.shouldIgnoreTrimWhitespace,t[o],this.original,this.modified,this.continueCharDiff,this.shouldComputeCharChanges,this.shouldPostProcessCharChanges));return{quitEarly:n,changes:i}}for(var s=[],a=0,u=0,l=(o=-1,t.length);o<l;o++){for(var c=o+1<l?t[o+1]:null,d=c?c.originalStart:this.originalLines.length,h=c?c.modifiedStart:this.modifiedLines.length;a<d&&u<h;){var p=this.originalLines[a],f=this.modifiedLines[u];if(p!==f){for(var g=Zl(p,1),m=Zl(f,1);g>1&&m>1;){if(p.charCodeAt(g-2)!==f.charCodeAt(m-2))break;g--,m--}(g>1||m>1)&&this._pushTrimWhitespaceCharChange(s,a+1,1,g,u+1,1,m);for(var v=Yl(p,1),_=Yl(f,1),y=p.length+1,b=f.length+1;v<y&&_<b;){if(p.charCodeAt(v-1)!==p.charCodeAt(_-1))break;v++,_++}(v<y||_<b)&&this._pushTrimWhitespaceCharChange(s,a+1,v,y,u+1,_,b)}a++,u++}c&&(s.push(ql.createFromDiffResult(this.shouldIgnoreTrimWhitespace,c,this.original,this.modified,this.continueCharDiff,this.shouldComputeCharChanges,this.shouldPostProcessCharChanges)),a+=c.originalLength,u+=c.modifiedLength)}return{quitEarly:n,changes:s}},e.prototype._pushTrimWhitespaceCharChange=function(e,t,n,i,o,r,s){if(!this._mergeTrimWhitespaceCharChange(e,t,n,i,o,r,s)){var a=void 0;this.shouldComputeCharChanges&&(a=[new Kl(t,n,t,i,o,r,o,s)]),e.push(new ql(t,t,o,o,a))}},e.prototype._mergeTrimWhitespaceCharChange=function(e,t,n,i,o,r,s){var a=e.length;if(0===a)return!1;var u=e[a-1];return 0!==u.originalEndLineNumber&&0!==u.modifiedEndLineNumber&&(u.originalEndLineNumber+1===t&&u.modifiedEndLineNumber+1===o&&(u.originalEndLineNumber=t,u.modifiedEndLineNumber=o,this.shouldComputeCharChanges&&u.charChanges&&u.charChanges.push(new Kl(t,n,t,i,o,r,o,s)),!0))},e}();function Zl(e,t){var n=wr(e);return-1===n?t:n+1}function Yl(e,t){var n=Sr(e);return-1===n?t:n+2}function Xl(e){if(0===e)return function(){return!0};var t=Date.now();return function(){return Date.now()-t<e}}function $l(e){return e<0?0:e>255?255:0|e}function Ql(e){return e<0?0:e>4294967295?4294967295:0|e}var Jl=function(e,t){this.index=e,this.remainder=t},ec=function(){function e(e){this.values=e,this.prefixSum=new Uint32Array(e.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}return e.prototype.insertValues=function(e,t){e=Ql(e);var n=this.values,i=this.prefixSum,o=t.length;return 0!==o&&(this.values=new Uint32Array(n.length+o),this.values.set(n.subarray(0,e),0),this.values.set(n.subarray(e),e+o),this.values.set(t,e),e-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=e-1),this.prefixSum=new Uint32Array(this.values.length),this.prefixSumValidIndex[0]>=0&&this.prefixSum.set(i.subarray(0,this.prefixSumValidIndex[0]+1)),!0)},e.prototype.changeValue=function(e,t){return e=Ql(e),t=Ql(t),this.values[e]!==t&&(this.values[e]=t,e-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=e-1),!0)},e.prototype.removeValues=function(e,t){e=Ql(e),t=Ql(t);var n=this.values,i=this.prefixSum;if(e>=n.length)return!1;var o=n.length-e;return t>=o&&(t=o),0!==t&&(this.values=new Uint32Array(n.length-t),this.values.set(n.subarray(0,e),0),this.values.set(n.subarray(e+t),e),this.prefixSum=new Uint32Array(this.values.length),e-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=e-1),this.prefixSumValidIndex[0]>=0&&this.prefixSum.set(i.subarray(0,this.prefixSumValidIndex[0]+1)),!0)},e.prototype.getTotalValue=function(){return 0===this.values.length?0:this._getAccumulatedValue(this.values.length-1)},e.prototype.getAccumulatedValue=function(e){return e<0?0:(e=Ql(e),this._getAccumulatedValue(e))},e.prototype._getAccumulatedValue=function(e){if(e<=this.prefixSumValidIndex[0])return this.prefixSum[e];var t=this.prefixSumValidIndex[0]+1;0===t&&(this.prefixSum[0]=this.values[0],t++),e>=this.values.length&&(e=this.values.length-1);for(var n=t;n<=e;n++)this.prefixSum[n]=this.prefixSum[n-1]+this.values[n];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],e),this.prefixSum[e]},e.prototype.getIndexOf=function(e){e=Math.floor(e),this.getTotalValue();for(var t=0,n=this.values.length-1,i=0,o=0,r=0;t<=n;)if(i=t+(n-t)/2|0,e<(r=(o=this.prefixSum[i])-this.values[i]))n=i-1;else{if(!(e>=o))break;t=i+1}return new Jl(i,e-r)},e}(),tc=function(){function e(e,t,n,i){this._uri=e,this._lines=t,this._eol=n,this._versionId=i,this._lineStarts=null}return e.prototype.dispose=function(){this._lines.length=0},e.prototype.getText=function(){return this._lines.join(this._eol)},e.prototype.onEvents=function(e){e.eol&&e.eol!==this._eol&&(this._eol=e.eol,this._lineStarts=null);for(var t=0,n=e.changes;t<n.length;t++){var i=n[t];this._acceptDeleteRange(i.range),this._acceptInsertText(new bn(i.range.startLineNumber,i.range.startColumn),i.text)}this._versionId=e.versionId},e.prototype._ensureLineStarts=function(){if(!this._lineStarts){for(var e=this._eol.length,t=this._lines.length,n=new Uint32Array(t),i=0;i<t;i++)n[i]=this._lines[i].length+e;this._lineStarts=new ec(n)}},e.prototype._setLineText=function(e,t){this._lines[e]=t,this._lineStarts&&this._lineStarts.changeValue(e,this._lines[e].length+this._eol.length)},e.prototype._acceptDeleteRange=function(e){if(e.startLineNumber!==e.endLineNumber)this._setLineText(e.startLineNumber-1,this._lines[e.startLineNumber-1].substring(0,e.startColumn-1)+this._lines[e.endLineNumber-1].substring(e.endColumn-1)),this._lines.splice(e.startLineNumber,e.endLineNumber-e.startLineNumber),this._lineStarts&&this._lineStarts.removeValues(e.startLineNumber,e.endLineNumber-e.startLineNumber);else{if(e.startColumn===e.endColumn)return;this._setLineText(e.startLineNumber-1,this._lines[e.startLineNumber-1].substring(0,e.startColumn-1)+this._lines[e.startLineNumber-1].substring(e.endColumn-1))}},e.prototype._acceptInsertText=function(e,t){if(0!==t.length){var n=t.split(/\r\n|\r|\n/);if(1!==n.length){n[n.length-1]+=this._lines[e.lineNumber-1].substring(e.column-1),this._setLineText(e.lineNumber-1,this._lines[e.lineNumber-1].substring(0,e.column-1)+n[0]);for(var i=new Uint32Array(n.length-1),o=1;o<n.length;o++)this._lines.splice(e.lineNumber+o-1,0,n[o]),i[o-1]=n[o].length+this._eol.length;this._lineStarts&&this._lineStarts.insertValues(e.lineNumber,i)}else this._setLineText(e.lineNumber-1,this._lines[e.lineNumber-1].substring(0,e.column-1)+n[0]+this._lines[e.lineNumber-1].substring(e.column-1))}},e}(),nc=function(){function e(t){var n=$l(t);this._defaultValue=n,this._asciiMap=e._createAsciiMap(n),this._map=new Map}return e._createAsciiMap=function(e){for(var t=new Uint8Array(256),n=0;n<256;n++)t[n]=e;return t},e.prototype.set=function(e,t){var n=$l(t);e>=0&&e<256?this._asciiMap[e]=n:this._map.set(e,n)},e.prototype.get=function(e){return e>=0&&e<256?this._asciiMap[e]:this._map.get(e)||this._defaultValue},e}(),ic=function(){function e(){this._actual=new nc(0)}return e.prototype.add=function(e){this._actual.set(e,1)},e.prototype.has=function(e){return 1===this._actual.get(e)},e}(),oc=function(){function e(e,t,n){for(var i=new Uint8Array(e*t),o=0,r=e*t;o<r;o++)i[o]=n;this._data=i,this.rows=e,this.cols=t}return e.prototype.get=function(e,t){return this._data[e*this.cols+t]},e.prototype.set=function(e,t,n){this._data[e*this.cols+t]=n},e}(),rc=function(){function e(e){for(var t=0,n=0,i=0,o=e.length;i<o;i++){var r=e[i],s=r[0];(l=r[1])>t&&(t=l),s>n&&(n=s),(c=r[2])>n&&(n=c)}t++,n++;var a=new oc(n,t,0);for(i=0,o=e.length;i<o;i++){var u=e[i],l=(s=u[0],u[1]),c=u[2];a.set(s,l,c)}this._states=a,this._maxCharCode=t}return e.prototype.nextState=function(e,t){return t<0||t>=this._maxCharCode?0:this._states.get(e,t)},e}(),sc=null;var ac=null;var uc=function(){function e(){}return e._createLink=function(e,t,n,i,o){var r=o-1;do{var s=t.charCodeAt(r);if(2!==e.get(s))break;r--}while(r>i);if(i>0){var a=t.charCodeAt(i-1),u=t.charCodeAt(r);(40===a&&41===u||91===a&&93===u||123===a&&125===u)&&r--}return{range:{startLineNumber:n,startColumn:i+1,endLineNumber:n,endColumn:r+2},url:t.substring(i,r+1)}},e.computeLinks=function(t,n){void 0===n&&(null===sc&&(sc=new rc([[1,104,2],[1,72,2],[1,102,6],[1,70,6],[2,116,3],[2,84,3],[3,116,4],[3,84,4],[4,112,5],[4,80,5],[5,115,9],[5,83,9],[5,58,10],[6,105,7],[6,73,7],[7,108,8],[7,76,8],[8,101,9],[8,69,9],[9,58,10],[10,47,11],[11,47,12]])),n=sc);for(var i=function(){if(null===ac){ac=new nc(0);for(var e=0;e<" \t<>'\"、。。、,.:;?!@#$%&*‘“〈《「『【〔([{「」}])〕】』」》〉”’`~…".length;e++)ac.set(" \t<>'\"、。。、,.:;?!@#$%&*‘“〈《「『【〔([{「」}])〕】』」》〉”’`~…".charCodeAt(e),1);for(e=0;e<".,;".length;e++)ac.set(".,;".charCodeAt(e),2)}return ac}(),o=[],r=1,s=t.getLineCount();r<=s;r++){for(var a=t.getLineContent(r),u=a.length,l=0,c=0,d=0,h=1,p=!1,f=!1,g=!1;l<u;){var m=!1,v=a.charCodeAt(l);if(13===h){var _=void 0;switch(v){case 40:p=!0,_=0;break;case 41:_=p?0:1;break;case 91:f=!0,_=0;break;case 93:_=f?0:1;break;case 123:g=!0,_=0;break;case 125:_=g?0:1;break;case 39:_=34===d||96===d?0:1;break;case 34:_=39===d||96===d?0:1;break;case 96:_=39===d||34===d?0:1;break;case 42:_=42===d?1:0;break;case 124:_=124===d?1:0;break;default:_=i.get(v)}1===_&&(o.push(e._createLink(i,a,r,c,l)),m=!0)}else if(12===h){_=void 0;91===v?(f=!0,_=0):_=i.get(v),1===_?m=!0:h=13}else 0===(h=n.nextState(h,v))&&(m=!0);m&&(h=1,p=!1,f=!1,g=!1,c=l+1,d=v),l++}13===h&&o.push(e._createLink(i,a,r,c,u))}return o},e}();function lc(e){return e&&"function"==typeof e.getLineCount&&"function"==typeof e.getLineContent?uc.computeLinks(e):[]}var cc=function(){function e(){this._defaultValueSet=[["true","false"],["True","False"],["Private","Public","Friend","ReadOnly","Partial","Protected","WriteOnly"],["public","protected","private"]]}return e.prototype.navigateValueSet=function(e,t,n,i,o){var r;if(e&&t&&(r=this.doNavigateValueSet(t,o)))return{range:e,value:r};if(n&&i&&(r=this.doNavigateValueSet(i,o)))return{range:n,value:r};return null},e.prototype.doNavigateValueSet=function(e,t){var n=this.numberReplace(e,t);return null!==n?n:this.textReplace(e,t)},e.prototype.numberReplace=function(e,t){var n=Math.pow(10,e.length-(e.lastIndexOf(".")+1)),i=Number(e),o=parseFloat(e);return isNaN(i)||isNaN(o)||i!==o?null:0!==i||t?(i=Math.floor(i*n),i+=t?n:-n,String(i/n)):null},e.prototype.textReplace=function(e,t){return this.valueSetsReplace(this._defaultValueSet,e,t)},e.prototype.valueSetsReplace=function(e,t,n){for(var i=null,o=0,r=e.length;null===i&&o<r;o++)i=this.valueSetReplace(e[o],t,n);return i},e.prototype.valueSetReplace=function(e,t,n){var i=e.indexOf(t);return i>=0?((i+=n?1:-1)<0?i=e.length-1:i%=e.length,e[i]):null},e.INSTANCE=new e,e}(),dc=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),hc=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},pc=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},fc=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return dc(t,e),Object.defineProperty(t.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"version",{get:function(){return this._versionId},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"eol",{get:function(){return this._eol},enumerable:!0,configurable:!0}),t.prototype.getValue=function(){return this.getText()},t.prototype.getLinesContent=function(){return this._lines.slice(0)},t.prototype.getLineCount=function(){return this._lines.length},t.prototype.getLineContent=function(e){return this._lines[e-1]},t.prototype.getWordAtPosition=function(e,t){var n=k(e.column,N(t),this._lines[e.lineNumber-1],0);return n?new wn(e.lineNumber,n.startColumn,e.lineNumber,n.endColumn):null},t.prototype.createWordIterator=function(e){var t,n,i=this,o=0,r=0,s=[],a=function(){if(r<s.length){var u=n.substring(s[r].start,s[r].end);return r+=1,t?t.value=u:t={done:!1,value:u},t}return o>=i._lines.length?Ke:(n=i._lines[o],s=i._wordenize(n,e),r=0,o+=1,a())};return{next:a}},t.prototype.getLineWords=function(e,t){for(var n=this._lines[e-1],i=[],o=0,r=this._wordenize(n,t);o<r.length;o++){var s=r[o];i.push({word:n.substring(s.start,s.end),startColumn:s.start+1,endColumn:s.end+1})}return i},t.prototype._wordenize=function(e,t){var n,i=[];for(t.lastIndex=0;(n=t.exec(e))&&0!==n[0].length;)i.push({start:n.index,end:n.index+n[0].length});return i},t.prototype.getValueInRange=function(e){if((e=this._validateRange(e)).startLineNumber===e.endLineNumber)return this._lines[e.startLineNumber-1].substring(e.startColumn-1,e.endColumn-1);var t=this._eol,n=e.startLineNumber-1,i=e.endLineNumber-1,o=[];o.push(this._lines[n].substring(e.startColumn-1));for(var r=n+1;r<i;r++)o.push(this._lines[r]);return o.push(this._lines[i].substring(0,e.endColumn-1)),o.join(t)},t.prototype.offsetAt=function(e){return e=this._validatePosition(e),this._ensureLineStarts(),this._lineStarts.getAccumulatedValue(e.lineNumber-2)+(e.column-1)},t.prototype.positionAt=function(e){e=Math.floor(e),e=Math.max(0,e),this._ensureLineStarts();var t=this._lineStarts.getIndexOf(e),n=this._lines[t.index].length;return{lineNumber:1+t.index,column:1+Math.min(t.remainder,n)}},t.prototype._validateRange=function(e){var t=this._validatePosition({lineNumber:e.startLineNumber,column:e.startColumn}),n=this._validatePosition({lineNumber:e.endLineNumber,column:e.endColumn});return t.lineNumber!==e.startLineNumber||t.column!==e.startColumn||n.lineNumber!==e.endLineNumber||n.column!==e.endColumn?{startLineNumber:t.lineNumber,startColumn:t.column,endLineNumber:n.lineNumber,endColumn:n.column}:e},t.prototype._validatePosition=function(e){if(!bn.isIPosition(e))throw new Error("bad position");var t=e.lineNumber,n=e.column,i=!1;if(t<1)t=1,n=1,i=!0;else if(t>this._lines.length)t=this._lines.length,n=this._lines[t-1].length+1,i=!0;else{var o=this._lines[t-1].length+1;n<1?(n=1,i=!0):n>o&&(n=o,i=!0)}return i?{lineNumber:t,column:n}:e},t}(tc),gc=function(){function e(e,t){this._host=e,this._models=Object.create(null),this._foreignModuleFactory=t,this._foreignModule=null}return e.prototype.dispose=function(){this._models=Object.create(null)},e.prototype._getModel=function(e){return this._models[e]},e.prototype._getModels=function(){var e=this,t=[];return Object.keys(this._models).forEach((function(n){return t.push(e._models[n])})),t},e.prototype.acceptNewModel=function(e){this._models[e.url]=new fc(Et.parse(e.url),e.lines,e.EOL,e.versionId)},e.prototype.acceptModelChanged=function(e,t){this._models[e]&&this._models[e].onEvents(t)},e.prototype.acceptRemovedModel=function(e){this._models[e]&&delete this._models[e]},e.prototype.computeDiff=function(e,t,n,i){return hc(this,void 0,void 0,(function(){var o,r,s,a,u,l,c;return pc(this,(function(d){return o=this._getModel(e),r=this._getModel(t),o&&r?(s=o.getLinesContent(),a=r.getLinesContent(),u=new Gl(s,a,{shouldComputeCharChanges:!0,shouldPostProcessCharChanges:!0,shouldIgnoreTrimWhitespace:n,shouldMakePrettyDiff:!0,maxComputationTime:i}),l=u.computeDiff(),c=!(l.changes.length>0)&&this._modelsAreIdentical(o,r),[2,{quitEarly:l.quitEarly,identical:c,changes:l.changes}]):[2,null]}))}))},e.prototype._modelsAreIdentical=function(e,t){var n=e.getLineCount();if(n!==t.getLineCount())return!1;for(var i=1;i<=n;i++){if(e.getLineContent(i)!==t.getLineContent(i))return!1}return!0},e.prototype.computeMoreMinimalEdits=function(t,n){return hc(this,void 0,void 0,(function(){var i,o,r,s,a,u,l,c,d,h,p,f,g,m,v,_,y,b;return pc(this,(function(w){if(!(i=this._getModel(t)))return[2,n];for(o=[],r=void 0,n=Ni(n,(function(e,t){return e.range&&t.range?wn.compareRangesUsingStarts(e.range,t.range):(e.range?0:1)-(t.range?0:1)})),s=0,a=n;s<a.length;s++)if(u=a[s],l=u.range,c=u.text,"number"==typeof(d=u.eol)&&(r=d),(!wn.isEmpty(l)||c)&&(h=i.getValueInRange(l),c=c.replace(/\r\n|\n|\r/g,i.eol),h!==c))if(Math.max(c.length,h.length)>e._diffLimit)o.push({range:l,text:c});else for(p=Fl(h,c,!1),f=i.offsetAt(wn.lift(l).getStartPosition()),g=0,m=p;g<m.length;g++)v=m[g],_=i.positionAt(f+v.originalStart),y=i.positionAt(f+v.originalStart+v.originalLength),b={text:c.substr(v.modifiedStart,v.modifiedLength),range:{startLineNumber:_.lineNumber,startColumn:_.column,endLineNumber:y.lineNumber,endColumn:y.column}},i.getValueInRange(b.range)!==b.text&&o.push(b);return"number"==typeof r&&o.push({eol:r,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),[2,o]}))}))},e.prototype.computeLinks=function(e){return hc(this,void 0,void 0,(function(){var t;return pc(this,(function(n){return(t=this._getModel(e))?[2,lc(t)]:[2,null]}))}))},e.prototype.textualSuggest=function(t,n,i,o){return hc(this,void 0,void 0,(function(){var r,s,a,u,l,c,d,h;return pc(this,(function(p){if(!(r=this._getModel(t)))return[2,null];for(s=[],a=new Set,u=new RegExp(i,o),(l=r.getWordAtPosition(n,u))&&a.add(r.getValueInRange(l)),c=r.createWordIterator(u),d=c.next();!d.done&&a.size<=e._suggestionsLimit;d=c.next())h=d.value,a.has(h)||(a.add(h),isNaN(Number(h))&&s.push(h));return[2,s]}))}))},e.prototype.computeWordRanges=function(e,t,n,i){return hc(this,void 0,void 0,(function(){var o,r,s,a,u,l,c,d,h;return pc(this,(function(p){if(!(o=this._getModel(e)))return[2,Object.create(null)];for(r=new RegExp(n,i),s=Object.create(null),a=t.startLineNumber;a<t.endLineNumber;a++)for(u=o.getLineWords(a,r),l=0,c=u;l<c.length;l++)d=c[l],isNaN(Number(d.word))&&((h=s[d.word])||(h=[],s[d.word]=h),h.push({startLineNumber:a,startColumn:d.startColumn,endLineNumber:a,endColumn:d.endColumn}));return[2,s]}))}))},e.prototype.navigateValueSet=function(e,t,n,i,o){return hc(this,void 0,void 0,(function(){var r,s,a,u,l;return pc(this,(function(c){return(r=this._getModel(e))?(s=new RegExp(i,o),t.startColumn===t.endColumn&&(t={startLineNumber:t.startLineNumber,startColumn:t.startColumn,endLineNumber:t.endLineNumber,endColumn:t.endColumn+1}),a=r.getValueInRange(t),(u=r.getWordAtPosition({lineNumber:t.startLineNumber,column:t.startColumn},s))?(l=r.getValueInRange(u),[2,cc.INSTANCE.navigateValueSet(t,a,u,l,n)]):[2,null]):[2,null]}))}))},e.prototype.loadForeignModule=function(e,t,n){var i=this,o={host:Ys(n,(function(e,t){return i._host.fhr(e,t)})),getMirrorModels:function(){return i._getModels()}};return this._foreignModuleFactory?(this._foreignModule=this._foreignModuleFactory(o,t),Promise.resolve(Zs(this._foreignModule))):Promise.reject(new Error("Unexpected usage"))},e.prototype.fmr=function(e,t){if(!this._foreignModule||"function"!=typeof this._foreignModule[e])return Promise.reject(new Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._foreignModule[e].apply(this._foreignModule,t))}catch(e){return Promise.reject(e)}},e._diffLimit=1e5,e._suggestionsLimit=1e4,e}();"function"==typeof importScripts&&(S.monaco=kn());var mc,vc=Mn("textResourceConfigurationService"),_c=Mn("textResourcePropertiesService"),yc=Mn("logService");!function(e){e[e.Trace=0]="Trace",e[e.Debug=1]="Debug",e[e.Info=2]="Info",e[e.Warning=3]="Warning",e[e.Error=4]="Error",e[e.Critical=5]="Critical",e[e.Off=6]="Off"}(mc||(mc={}));var bc=function(){function e(){}return e.prototype.getLevel=function(){return mc.Info},e.prototype.trace=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n]},e.prototype.error=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n]},e.prototype.dispose=function(){},e}(),wc=S.performance&&"function"==typeof S.performance.now,Cc=function(){function e(e){this._highResolution=wc&&e,this._startTime=this._now(),this._stopTime=-1}return e.create=function(t){return void 0===t&&(t=!0),new e(t)},e.prototype.stop=function(){this._stopTime=this._now()},e.prototype.elapsed=function(){return-1!==this._stopTime?this._stopTime-this._startTime:this._now()-this._startTime},e.prototype._now=function(){return this._highResolution?S.performance.now():(new Date).getTime()},e}(),Sc=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Lc=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},xc=function(e,t){return function(n,i){t(n,i,e)}},Dc=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},Nc=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}};function kc(e,t){var n=e.getModel(t);return!!n&&!n.isTooLargeForSyncing()}var Ec=function(e){function t(t,n,i){var o=e.call(this)||this;return o._modelService=t,o._workerManager=o._register(new Oc(o._modelService)),o._logService=i,o._register(ju.register("*",{provideLinks:function(e,t){return kc(o._modelService,e.uri)?o._workerManager.withWorker().then((function(t){return t.computeLinks(e.uri)})).then((function(e){return e&&{links:e}})):Promise.resolve({links:[]})}})),o._register(Eu.register("*",new Ic(o._workerManager,n,o._modelService))),o}return Sc(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.canComputeDiff=function(e,t){return kc(this._modelService,e)&&kc(this._modelService,t)},t.prototype.computeDiff=function(e,t,n,i){return this._workerManager.withWorker().then((function(o){return o.computeDiff(e,t,n,i)}))},t.prototype.computeMoreMinimalEdits=function(e,t){var n=this;if(Oi(t)){if(!kc(this._modelService,e))return Promise.resolve(t);var i=Cc.create(!0),o=this._workerManager.withWorker().then((function(n){return n.computeMoreMinimalEdits(e,t)}));return o.finally((function(){return n._logService.trace("FORMAT#computeMoreMinimalEdits",e.toString(!0),i.elapsed())})),o}return Promise.resolve(void 0)},t.prototype.canNavigateValueSet=function(e){return kc(this._modelService,e)},t.prototype.navigateValueSet=function(e,t,n){return this._workerManager.withWorker().then((function(i){return i.navigateValueSet(e,t,n)}))},t.prototype.canComputeWordRanges=function(e){return kc(this._modelService,e)},t.prototype.computeWordRanges=function(e,t){return this._workerManager.withWorker().then((function(n){return n.computeWordRanges(e,t)}))},t=Lc([xc(0,du),xc(1,vc),xc(2,yc)],t)}(He),Ic=function(){function e(e,t,n){this._debugDisplayName="wordbasedCompletions",this._workerManager=e,this._configurationService=t,this._modelService=n}return e.prototype.provideCompletionItems=function(e,t){return Dc(this,void 0,void 0,(function(){var n,i,o,r;return Nc(this,(function(s){switch(s.label){case 0:return this._configurationService.getValue(e.uri,t,"editor").wordBasedSuggestions&&kc(this._modelService,e.uri)?(n=e.getWordAtPosition(t),i=n?new wn(t.lineNumber,n.startColumn,t.lineNumber,n.endColumn):wn.fromPositions(t),o=i.setEndPosition(t.lineNumber,t.column),[4,this._workerManager.withWorker()]):[2,void 0];case 1:return[4,s.sent().textualSuggest(e.uri,t)];case 2:return(r=s.sent())?[2,{suggestions:r.map((function(e){return{kind:18,label:e,insertText:e,range:{insert:o,replace:i}}}))}]:[2,void 0]}}))}))},e}(),Oc=function(e){function t(t){var n=e.call(this)||this;return n._modelService=t,n._editorWorkerClient=null,n._lastWorkerUsedTime=(new Date).getTime(),n._register(new bi).cancelAndSet((function(){return n._checkStopIdleWorker()}),Math.round(15e4)),n._register(n._modelService.onModelRemoved((function(e){return n._checkStopEmptyWorker()}))),n}return Sc(t,e),t.prototype.dispose=function(){this._editorWorkerClient&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null),e.prototype.dispose.call(this)},t.prototype._checkStopEmptyWorker=function(){this._editorWorkerClient&&(0===this._modelService.getModels().length&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null))},t.prototype._checkStopIdleWorker=function(){this._editorWorkerClient&&((new Date).getTime()-this._lastWorkerUsedTime>3e5&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null))},t.prototype.withWorker=function(){return this._lastWorkerUsedTime=(new Date).getTime(),this._editorWorkerClient||(this._editorWorkerClient=new Rc(this._modelService,!1,"editorWorkerService")),Promise.resolve(this._editorWorkerClient)},t}(He),Mc=function(e){function t(t,n,i){var o=e.call(this)||this;if(o._syncedModels=Object.create(null),o._syncedModelsLastUsedTime=Object.create(null),o._proxy=t,o._modelService=n,!i){var r=new bi;r.cancelAndSet((function(){return o._checkStopModelSync()}),Math.round(3e4)),o._register(r)}return o}return Sc(t,e),t.prototype.dispose=function(){for(var t in this._syncedModels)Ae(this._syncedModels[t]);this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),e.prototype.dispose.call(this)},t.prototype.ensureSyncedResources=function(e){for(var t=0,n=e;t<n.length;t++){var i=n[t],o=i.toString();this._syncedModels[o]||this._beginModelSync(i),this._syncedModels[o]&&(this._syncedModelsLastUsedTime[o]=(new Date).getTime())}},t.prototype._checkStopModelSync=function(){var e=(new Date).getTime(),t=[];for(var n in this._syncedModelsLastUsedTime){e-this._syncedModelsLastUsedTime[n]>6e4&&t.push(n)}for(var i=0,o=t;i<o.length;i++){var r=o[i];this._stopModelSync(r)}},t.prototype._beginModelSync=function(e){var t=this,n=this._modelService.getModel(e);if(n&&!n.isTooLargeForSyncing()){var i=e.toString();this._proxy.acceptNewModel({url:n.uri.toString(),lines:n.getLinesContent(),EOL:n.getEOL(),versionId:n.getVersionId()});var o=new Be;o.add(n.onDidChangeContent((function(e){t._proxy.acceptModelChanged(i.toString(),e)}))),o.add(n.onWillDispose((function(){t._stopModelSync(i)}))),o.add(We((function(){t._proxy.acceptRemovedModel(i)}))),this._syncedModels[i]=o}},t.prototype._stopModelSync=function(e){var t=this._syncedModels[e];delete this._syncedModels[e],delete this._syncedModelsLastUsedTime[e],Ae(t)},t}(He),Tc=function(){function e(e){this._instance=e,this._proxyObj=Promise.resolve(this._instance)}return e.prototype.dispose=function(){this._instance.dispose()},e.prototype.getProxyObject=function(){return this._proxyObj},e}(),Pc=function(){function e(e){this._workerClient=e}return e.prototype.fhr=function(e,t){return this._workerClient.fhr(e,t)},e}(),Rc=function(e){function t(t,n,i){var o=e.call(this)||this;return o._modelService=t,o._keepIdleModels=n,o._workerFactory=new ll(i),o._worker=null,o._modelManager=null,o}return Sc(t,e),t.prototype.fhr=function(e,t){throw new Error("Not implemented!")},t.prototype._getOrCreateWorker=function(){if(!this._worker)try{this._worker=this._register(new sl(this._workerFactory,"vs/editor/common/services/editorSimpleWorker",new Pc(this)))}catch(e){ol(e),this._worker=new Tc(new gc(new Pc(this),null))}return this._worker},t.prototype._getProxy=function(){var e=this;return this._getOrCreateWorker().getProxyObject().then(void 0,(function(t){return ol(t),e._worker=new Tc(new gc(new Pc(e),null)),e._getOrCreateWorker().getProxyObject()}))},t.prototype._getOrCreateModelManager=function(e){return this._modelManager||(this._modelManager=this._register(new Mc(e,this._modelService,this._keepIdleModels))),this._modelManager},t.prototype._withSyncedResources=function(e){var t=this;return this._getProxy().then((function(n){return t._getOrCreateModelManager(n).ensureSyncedResources(e),n}))},t.prototype.computeDiff=function(e,t,n,i){return this._withSyncedResources([e,t]).then((function(o){return o.computeDiff(e.toString(),t.toString(),n,i)}))},t.prototype.computeMoreMinimalEdits=function(e,t){return this._withSyncedResources([e]).then((function(n){return n.computeMoreMinimalEdits(e.toString(),t)}))},t.prototype.computeLinks=function(e){return this._withSyncedResources([e]).then((function(t){return t.computeLinks(e.toString())}))},t.prototype.textualSuggest=function(e,t){var n=this;return this._withSyncedResources([e]).then((function(i){var o=n._modelService.getModel(e);if(!o)return null;var r=Ol.getWordDefinition(o.getLanguageIdentifier().id),s=r.source,a=br(r);return i.textualSuggest(e.toString(),t,s,a)}))},t.prototype.computeWordRanges=function(e,t){var n=this;return this._withSyncedResources([e]).then((function(i){var o=n._modelService.getModel(e);if(!o)return Promise.resolve(null);var r=Ol.getWordDefinition(o.getLanguageIdentifier().id),s=r.source,a=br(r);return i.computeWordRanges(e.toString(),t,s,a)}))},t.prototype.navigateValueSet=function(e,t,n){var i=this;return this._withSyncedResources([e]).then((function(o){var r=i._modelService.getModel(e);if(!r)return null;var s=Ol.getWordDefinition(r.getLanguageIdentifier().id),a=s.source,u=br(s);return o.navigateValueSet(e.toString(),t,n,a,u)}))},t}(He),Ac=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();var Fc,Wc=function(e){function t(t,n){var i=e.call(this,t,n.keepIdleModels||!1,n.label)||this;return i._foreignModuleId=n.moduleId,i._foreignModuleCreateData=n.createData||null,i._foreignModuleHost=n.host||null,i._foreignProxy=null,i}return Ac(t,e),t.prototype.fhr=function(e,t){if(!this._foreignModuleHost||"function"!=typeof this._foreignModuleHost[e])return Promise.reject(new Error("Missing method "+e+" or missing main thread foreign host."));try{return Promise.resolve(this._foreignModuleHost[e].apply(this._foreignModuleHost,t))}catch(e){return Promise.reject(e)}},t.prototype._getForeignProxy=function(){var e=this;return this._foreignProxy||(this._foreignProxy=this._getProxy().then((function(t){var n=e._foreignModuleHost?Zs(e._foreignModuleHost):[];return t.loadForeignModule(e._foreignModuleId,e._foreignModuleCreateData,n).then((function(n){e._foreignModuleCreateData=null;for(var i=function(e,n){return t.fmr(e,n)},o=function(e,t){return function(){var n=Array.prototype.slice.call(arguments,0);return t(e,n)}},r={},s=0,a=n;s<a.length;s++){var u=a[s];r[u]=o(u,i)}return r}))}))),this._foreignProxy},t.prototype.getProxy=function(){return this._getForeignProxy()},t.prototype.withSyncedResources=function(e){var t=this;return this._withSyncedResources(e).then((function(e){return t.getProxy()}))},t}(Rc),Vc=function(){function e(e,t){this._tokens=e,this._tokensCount=this._tokens.length>>>1,this._text=t}return e.prototype.equals=function(t){return t instanceof e&&this.slicedEquals(t,0,this._tokensCount)},e.prototype.slicedEquals=function(e,t,n){if(this._text!==e._text)return!1;if(this._tokensCount!==e._tokensCount)return!1;for(var i=t<<1,o=i+(n<<1),r=i;r<o;r++)if(this._tokens[r]!==e._tokens[r])return!1;return!0},e.prototype.getLineContent=function(){return this._text},e.prototype.getCount=function(){return this._tokensCount},e.prototype.getStartOffset=function(e){return e>0?this._tokens[e-1<<1]:0},e.prototype.getMetadata=function(e){return this._tokens[1+(e<<1)]},e.prototype.getLanguageId=function(e){var t=this._tokens[1+(e<<1)];return wu.getLanguageId(t)},e.prototype.getStandardTokenType=function(e){var t=this._tokens[1+(e<<1)];return wu.getTokenType(t)},e.prototype.getForeground=function(e){var t=this._tokens[1+(e<<1)];return wu.getForeground(t)},e.prototype.getClassName=function(e){var t=this._tokens[1+(e<<1)];return wu.getClassNameFromMetadata(t)},e.prototype.getInlineStyle=function(e,t){var n=this._tokens[1+(e<<1)];return wu.getInlineStyleFromMetadata(n,t)},e.prototype.getEndOffset=function(e){return this._tokens[e<<1]},e.prototype.findTokenIndexAtOffset=function(t){return e.findIndexInTokensArray(this._tokens,t)},e.prototype.inflate=function(){return this},e.prototype.sliceAndInflate=function(e,t,n){return new Bc(this,e,t,n)},e.convertToEndOffset=function(e,t){for(var n=(e.length>>>1)-1,i=0;i<n;i++)e[i<<1]=e[i+1<<1];e[n<<1]=t},e.findIndexInTokensArray=function(e,t){if(e.length<=2)return 0;for(var n=0,i=(e.length>>>1)-1;n<i;){var o=n+Math.floor((i-n)/2),r=e[o<<1];if(r===t)return o+1;r<t?n=o+1:r>t&&(i=o)}return n},e}(),Bc=function(){function e(e,t,n,i){this._source=e,this._startOffset=t,this._endOffset=n,this._deltaOffset=i,this._firstTokenIndex=e.findTokenIndexAtOffset(t),this._tokensCount=0;for(var o=this._firstTokenIndex,r=e.getCount();o<r;o++){if(e.getStartOffset(o)>=n)break;this._tokensCount++}}return e.prototype.equals=function(t){return t instanceof e&&(this._startOffset===t._startOffset&&this._endOffset===t._endOffset&&this._deltaOffset===t._deltaOffset&&this._source.slicedEquals(t._source,this._firstTokenIndex,this._tokensCount))},e.prototype.getCount=function(){return this._tokensCount},e.prototype.getForeground=function(e){return this._source.getForeground(this._firstTokenIndex+e)},e.prototype.getEndOffset=function(e){var t=this._source.getEndOffset(this._firstTokenIndex+e);return Math.min(this._endOffset,t)-this._startOffset+this._deltaOffset},e.prototype.getClassName=function(e){return this._source.getClassName(this._firstTokenIndex+e)},e.prototype.getInlineStyle=function(e,t){return this._source.getInlineStyle(this._firstTokenIndex+e,t)},e.prototype.findTokenIndexAtOffset=function(e){return this._source.findTokenIndexAtOffset(e+this._startOffset-this._deltaOffset)-this._firstTokenIndex},e}();Fc="undefined"!=typeof TextDecoder?function(e){return new Hc(e)}:function(e){return new zc};var Hc=function(){function e(e){this._decoder=new TextDecoder("UTF-16LE"),this._capacity=0|e,this._buffer=new Uint16Array(this._capacity),this._completedStrings=null,this._bufferLength=0}return e.prototype.reset=function(){this._completedStrings=null,this._bufferLength=0},e.prototype.build=function(){return null!==this._completedStrings?(this._flushBuffer(),this._completedStrings.join("")):this._buildBuffer()},e.prototype._buildBuffer=function(){if(0===this._bufferLength)return"";var e=new Uint16Array(this._buffer.buffer,0,this._bufferLength);return this._decoder.decode(e)},e.prototype._flushBuffer=function(){var e=this._buildBuffer();this._bufferLength=0,null===this._completedStrings?this._completedStrings=[e]:this._completedStrings[this._completedStrings.length]=e},e.prototype.write1=function(e){var t=this._capacity-this._bufferLength;t<=1&&(0===t||Tr(e))&&this._flushBuffer(),this._buffer[this._bufferLength++]=e},e.prototype.appendASCII=function(e){this._bufferLength===this._capacity&&this._flushBuffer(),this._buffer[this._bufferLength++]=e},e.prototype.appendASCIIString=function(e){var t=e.length;if(this._bufferLength+t>=this._capacity)return this._flushBuffer(),void(this._completedStrings[this._completedStrings.length]=e);for(var n=0;n<t;n++)this._buffer[this._bufferLength++]=e.charCodeAt(n)},e}(),zc=function(){function e(){this._pieces=[],this._piecesLen=0}return e.prototype.reset=function(){this._pieces=[],this._piecesLen=0},e.prototype.build=function(){return this._pieces.join("")},e.prototype.write1=function(e){this._pieces[this._piecesLen++]=String.fromCharCode(e)},e.prototype.appendASCII=function(e){this._pieces[this._piecesLen++]=String.fromCharCode(e)},e.prototype.appendASCIIString=function(e){this._pieces[this._piecesLen++]=e},e}(),jc=function(){function e(e,t,n,i){this.startColumn=e,this.endColumn=t,this.className=n,this.type=i}return e._equals=function(e,t){return e.startColumn===t.startColumn&&e.endColumn===t.endColumn&&e.className===t.className&&e.type===t.type},e.equalsArr=function(t,n){var i=t.length;if(i!==n.length)return!1;for(var o=0;o<i;o++)if(!e._equals(t[o],n[o]))return!1;return!0},e.filter=function(t,n,i,o){if(0===t.length)return[];for(var r=[],s=0,a=0,u=t.length;a<u;a++){var l=t[a],c=l.range;if(!(c.endLineNumber<n||c.startLineNumber>n)&&(!c.isEmpty()||0!==l.type&&3!==l.type)){var d=c.startLineNumber===n?c.startColumn:i,h=c.endLineNumber===n?c.endColumn:o;r[s++]=new e(d,h,l.inlineClassName,l.type)}}return r},e.compare=function(e,t){return e.startColumn===t.startColumn?e.endColumn===t.endColumn?e.className<t.className?-1:e.className>t.className?1:0:e.endColumn-t.endColumn:e.startColumn-t.startColumn},e}(),Uc=function(e,t,n){this.startOffset=e,this.endOffset=t,this.className=n},Kc=function(){function e(){this.stopOffsets=[],this.classNames=[],this.count=0}return e.prototype.consumeLowerThan=function(e,t,n){for(;this.count>0&&this.stopOffsets[0]<e;){for(var i=0;i+1<this.count&&this.stopOffsets[i]===this.stopOffsets[i+1];)i++;n.push(new Uc(t,this.stopOffsets[i],this.classNames.join(" "))),t=this.stopOffsets[i]+1,this.stopOffsets.splice(0,i+1),this.classNames.splice(0,i+1),this.count-=i+1}return this.count>0&&t<e&&(n.push(new Uc(t,e-1,this.classNames.join(" "))),t=e),t},e.prototype.insert=function(e,t){if(0===this.count||this.stopOffsets[this.count-1]<=e)this.stopOffsets.push(e),this.classNames.push(t);else for(var n=0;n<this.count;n++)if(this.stopOffsets[n]>=e){this.stopOffsets.splice(n,0,e),this.classNames.splice(n,0,t);break}this.count++},e}(),qc=function(){function e(){}return e.normalize=function(e,t){if(0===t.length)return[];for(var n=[],i=new Kc,o=0,r=0,s=t.length;r<s;r++){var a=t[r],u=a.startColumn,l=a.endColumn,c=a.className;if(u>1)Tr(e.charCodeAt(u-2))&&u--;if(l>1)Tr(e.charCodeAt(l-2))&&l--;var d=u-1,h=l-2;o=i.consumeLowerThan(d,o,n),0===i.count&&(o=d),i.insert(h,c)}return i.consumeLowerThan(1073741824,o,n),n},e}(),Gc=function(e,t){this.endIndex=e,this.type=t},Zc=function(){function e(e,t){this.startOffset=e,this.endOffset=t}return e.prototype.equals=function(e){return this.startOffset===e.startOffset&&this.endOffset===e.endOffset},e}(),Yc=function(){function e(e,t,n,i,o,r,s,a,u,l,c,d,h,p,f,g,m,v){this.useMonospaceOptimizations=e,this.canUseHalfwidthRightwardsArrow=t,this.lineContent=n,this.continuesWithWrappedLine=i,this.isBasicASCII=o,this.containsRTL=r,this.fauxIndentLength=s,this.lineTokens=a,this.lineDecorations=u,this.tabSize=l,this.startVisibleColumn=c,this.spaceWidth=d,this.middotWidth=h,this.stopRenderingLineAfter=p,this.renderWhitespace="all"===f?3:"boundary"===f?1:"selection"===f?2:0,this.renderControlCharacters=g,this.fontLigatures=m,this.selectionsOnLine=v&&v.sort((function(e,t){return e.startOffset<t.startOffset?-1:1}))}return e.prototype.sameSelection=function(e){if(null===this.selectionsOnLine)return null===e;if(null===e)return!1;if(e.length!==this.selectionsOnLine.length)return!1;for(var t=0;t<this.selectionsOnLine.length;t++)if(!this.selectionsOnLine[t].equals(e[t]))return!1;return!0},e.prototype.equals=function(e){return this.useMonospaceOptimizations===e.useMonospaceOptimizations&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.lineContent===e.lineContent&&this.continuesWithWrappedLine===e.continuesWithWrappedLine&&this.isBasicASCII===e.isBasicASCII&&this.containsRTL===e.containsRTL&&this.fauxIndentLength===e.fauxIndentLength&&this.tabSize===e.tabSize&&this.startVisibleColumn===e.startVisibleColumn&&this.spaceWidth===e.spaceWidth&&this.stopRenderingLineAfter===e.stopRenderingLineAfter&&this.renderWhitespace===e.renderWhitespace&&this.renderControlCharacters===e.renderControlCharacters&&this.fontLigatures===e.fontLigatures&&jc.equalsArr(this.lineDecorations,e.lineDecorations)&&this.lineTokens.equals(e.lineTokens)&&this.sameSelection(e.selectionsOnLine)},e}(),Xc=function(){function e(e,t){this.length=e,this._data=new Uint32Array(this.length),this._absoluteOffsets=new Uint32Array(this.length)}return e.getPartIndex=function(e){return(4294901760&e)>>>16},e.getCharIndex=function(e){return(65535&e)>>>0},e.prototype.setPartData=function(e,t,n,i){var o=(t<<16|n<<0)>>>0;this._data[e]=o,this._absoluteOffsets[e]=i+n},e.prototype.getAbsoluteOffsets=function(){return this._absoluteOffsets},e.prototype.charOffsetToPartData=function(e){return 0===this.length?0:e<0?this._data[0]:e>=this.length?this._data[this.length-1]:this._data[e]},e.prototype.partDataToCharOffset=function(t,n,i){if(0===this.length)return 0;for(var o=(t<<16|i<<0)>>>0,r=0,s=this.length-1;r+1<s;){var a=r+s>>>1,u=this._data[a];if(u===o)return a;u>o?s=a:r=a}if(r===s)return r;var l=this._data[r],c=this._data[s];if(l===o)return r;if(c===o)return s;var d=e.getPartIndex(l);return i-e.getCharIndex(l)<=(d!==e.getPartIndex(c)?n:e.getCharIndex(c))-i?r:s},e}(),$c=function(e,t,n){this.characterMapping=e,this.containsRTL=t,this.containsForeignElements=n};function Qc(e,t){if(0===e.lineContent.length){var n=0,i="<span><span> </span></span>";if(e.lineDecorations.length>0){for(var o=[],r=[],s=0,a=e.lineDecorations.length;s<a;s++){var u=e.lineDecorations[s];1===u.type&&(o.push(e.lineDecorations[s].className),n|=1),2===u.type&&(r.push(e.lineDecorations[s].className),n|=2)}if(0!==n)i="<span>"+(o.length>0?'<span class="'+o.join(" ")+'"></span>':"")+(r.length>0?'<span class="'+r.join(" ")+'"></span>':"")+"</span>"}return t.appendASCIIString(i),new $c(new Xc(0,0),!1,n)}return function(e,t){var n=e.fontIsMonospace,i=e.canUseHalfwidthRightwardsArrow,o=e.containsForeignElements,r=e.lineContent,s=e.len,a=e.isOverflowing,u=e.parts,l=e.fauxIndentLength,c=e.tabSize,d=e.startVisibleColumn,h=e.containsRTL,p=e.spaceWidth,f=e.middotWidth,g=e.renderWhitespace,m=e.renderControlCharacters,v=f>p?11825:183,_=new Xc(s+1,u.length),y=0,b=d,w=0,C=0,S=0;t.appendASCIIString("<span>");for(var L=0,x=u.length;L<x;L++){S+=C;var D=u[L],N=D.endIndex,k=D.type,E=0!==g&&k.indexOf("vs-whitespace")>=0;if(w=0,t.appendASCIIString('<span class="'),t.appendASCIIString(k),t.appendASCII(34),E){for(var I=0,O=y,M=b;O<N;O++){var T=r.charCodeAt(O);I+=P=0|(9===T?c-M%c:1),O>=l&&(M+=P)}if(!n)!("vs-whitespace"===k)&&o||(t.appendASCIIString(' style="display:inline-block;width:'),t.appendASCIIString(String(p*I)),t.appendASCIIString('px"'));for(t.appendASCII(62);y<N;y++){_.setPartData(y,L,w,S);T=r.charCodeAt(y);var P=void 0;if(9===T){P=c-b%c|0,!i||P>1?t.write1(8594):t.write1(65515);for(var R=2;R<=P;R++)t.write1(160)}else P=1,t.write1(v);w+=P,y>=l&&(b+=P)}C=I}else{I=0;for(h&&t.appendASCIIString(' dir="ltr"'),t.appendASCII(62);y<N;y++){_.setPartData(y,L,w,S);T=r.charCodeAt(y);var A=1;P=1;switch(T){case 9:P=A=c-b%c;for(R=1;R<=A;R++)t.write1(160);break;case 32:t.write1(160);break;case 60:t.appendASCIIString("<");break;case 62:t.appendASCIIString(">");break;case 38:t.appendASCIIString("&");break;case 0:t.appendASCIIString("�");break;case 65279:case 8232:t.write1(65533);break;default:jr(T)&&P++,m&&T<32?t.write1(9216+T):t.write1(T)}w+=A,I+=A,y>=l&&(b+=P)}C=I}t.appendASCIIString("</span>")}_.setPartData(s,u.length-1,w,S),a&&t.appendASCIIString("<span>…</span>");return t.appendASCIIString("</span>"),new $c(_,h,o)}(function(e){var t,n,i=e.useMonospaceOptimizations,o=e.lineContent;-1!==e.stopRenderingLineAfter&&e.stopRenderingLineAfter<o.length?(t=!0,n=e.stopRenderingLineAfter):(t=!1,n=o.length);var r=function(e,t,n){var i=[],o=0;t>0&&(i[o++]=new Gc(t,""));for(var r=0,s=e.getCount();r<s;r++){var a=e.getEndOffset(r);if(!(a<=t)){var u=e.getClassName(r);if(a>=n){i[o++]=new Gc(n,u);break}i[o++]=new Gc(a,u)}}return i}(e.lineTokens,e.fauxIndentLength,n);(3===e.renderWhitespace||1===e.renderWhitespace||2===e.renderWhitespace&&e.selectionsOnLine)&&(r=function(e,t,n,i,o,r,s,a,u,l){var c,d=[],h=0,p=0,f=i[p].type,g=i[p].endIndex,m=i.length,v=wr(e);-1===v?(v=t,c=t):c=Sr(e);for(var _=!1,y=0,b=u&&u[y],w=s%r,C=o;C<t;C++){var S=e.charCodeAt(C);b&&C>=b.endOffset&&(y++,b=u&&u[y]);var L=void 0;if(C<v||C>c)L=!0;else if(9===S)L=!0;else if(32===S)if(l)if(_)L=!0;else{var x=C+1<t?e.charCodeAt(C+1):0;L=32===x||9===x}else L=!0;else L=!1;L&&u&&(L=!!b&&b.startOffset<=C&&b.endOffset>C),_?(!L||!a&&w>=r)&&(d[h++]=new Gc(C,"vs-whitespace"),w%=r):(C===g||L&&C>o)&&(d[h++]=new Gc(C,f),w%=r),9===S?w=r:jr(S)?w+=2:w++,_=L,C===g&&++p<m&&(f=i[p].type,g=i[p].endIndex)}var D=!1;if(_)if(n&&l){var N=t>0?e.charCodeAt(t-1):0,k=t>1?e.charCodeAt(t-2):0;32===N&&32!==k&&9!==k||(D=!0)}else D=!0;return d[h++]=new Gc(t,D?"vs-whitespace":f),d}(o,n,e.continuesWithWrappedLine,r,e.fauxIndentLength,e.tabSize,e.startVisibleColumn,i,e.selectionsOnLine,1===e.renderWhitespace));var s=0;if(e.lineDecorations.length>0){for(var a=0,u=e.lineDecorations.length;a<u;a++){var l=e.lineDecorations[a];3===l.type||1===l.type?s|=1:2===l.type&&(s|=2)}r=function(e,t,n,i){i.sort(jc.compare);for(var o=qc.normalize(e,i),r=o.length,s=0,a=[],u=0,l=0,c=0,d=n.length;c<d;c++){for(var h=n[c],p=h.endIndex,f=h.type;s<r&&o[s].startOffset<p;){var g=o[s];if(g.startOffset>l&&(l=g.startOffset,a[u++]=new Gc(l,f)),!(g.endOffset+1<=p)){l=p,a[u++]=new Gc(l,f+" "+g.className);break}l=g.endOffset+1,a[u++]=new Gc(l,f+" "+g.className),s++}p>l&&(l=p,a[u++]=new Gc(l,f))}var m=n[n.length-1].endIndex;if(s<r&&o[s].startOffset===m){for(var v=[];s<r&&o[s].startOffset===m;)v.push(o[s].className),s++;a[u++]=new Gc(l,v.join(" "))}return a}(o,0,r,e.lineDecorations)}e.containsRTL||(r=function(e,t,n){var i=0,o=[],r=0;if(n)for(var s=0,a=t.length;s<a;s++){var u=(p=t[s]).endIndex;if(i+50<u){for(var l=p.type,c=-1,d=i,h=i;h<u;h++)32===e.charCodeAt(h)&&(c=h),-1!==c&&h-d>=50&&(o[r++]=new Gc(c+1,l),d=c+1,c=-1);d!==u&&(o[r++]=new Gc(u,l))}else o[r++]=p;i=u}else for(s=0,a=t.length;s<a;s++){var p=t[s],f=(u=p.endIndex)-i;if(f>50){l=p.type;var g=Math.ceil(f/50);for(h=1;h<g;h++){var m=i+50*h;o[r++]=new Gc(m,l)}o[r++]=new Gc(u,l)}else o[r++]=p;i=u}return o}(o,r,!e.isBasicASCII||e.fontLigatures));return new td(i,e.canUseHalfwidthRightwardsArrow,o,n,t,r,s,e.fauxIndentLength,e.tabSize,e.startVisibleColumn,e.containsRTL,e.spaceWidth,e.middotWidth,e.renderWhitespace,e.renderControlCharacters)}(e),t)}var Jc=function(e,t,n,i){this.characterMapping=e,this.html=t,this.containsRTL=n,this.containsForeignElements=i};function ed(e){var t=Fc(1e4),n=Qc(e,t);return new Jc(n.characterMapping,t.build(),n.containsRTL,n.containsForeignElements)}var td=function(e,t,n,i,o,r,s,a,u,l,c,d,h,p,f){this.fontIsMonospace=e,this.canUseHalfwidthRightwardsArrow=t,this.lineContent=n,this.len=i,this.isOverflowing=o,this.parts=r,this.containsForeignElements=s,this.fauxIndentLength=a,this.tabSize=u,this.startVisibleColumn=l,this.containsRTL=c,this.spaceWidth=d,this.middotWidth=h,this.renderWhitespace=p,this.renderControlCharacters=f};var nd=function(e,t,n,i){this.top=0|e,this.left=0|t,this.width=0|n,this.height=0|i},id=function(e,t){this.tabSize=e,this.data=t},od=function(e,t,n,i,o,r){this.content=e,this.continuesWithWrappedLine=t,this.minColumn=n,this.maxColumn=i,this.startVisibleColumn=o,this.tokens=r},rd=function(){function e(t,n,i,o,r,s,a,u,l,c){this.minColumn=t,this.maxColumn=n,this.content=i,this.continuesWithWrappedLine=o,this.isBasicASCII=e.isBasicASCII(i,s),this.containsRTL=e.containsRTL(i,this.isBasicASCII,r),this.tokens=a,this.inlineDecorations=u,this.tabSize=l,this.startVisibleColumn=c}return e.isBasicASCII=function(e,t){return!t||zr(e)},e.containsRTL=function(e,t,n){return!(t||!n)&&Vr(e)},e}(),sd=function(e,t,n){this.range=e,this.inlineClassName=t,this.type=n},ad=function(e,t){this.range=e,this.options=t};function ud(e){return!function(e){return Array.isArray(e)}(e)}function ld(e){return"string"==typeof e}function cd(e){return!ld(e)}function dd(e){return!e}function hd(e,t){return e.ignoreCase&&t?t.toLowerCase():t}function pd(e){return e.replace(/[&<>'"_]/g,"-")}function fd(e,t){return new Error(e.languageId+": "+t)}function gd(e,t,n,i,o){var r=null;return t.replace(/\$((\$)|(#)|(\d\d?)|[sS](\d\d?)|@(\w+))/g,(function(t,s,a,u,l,c,d,h,p){return dd(a)?dd(u)?!dd(l)&&l<i.length?hd(e,i[l]):!dd(d)&&e&&"string"==typeof e[d]?e[d]:(null===r&&(r=o.split(".")).unshift(o),!dd(c)&&c<r.length?hd(e,r[c]):""):hd(e,n):"$"}))}function md(e,t){for(var n=t;n&&n.length>0;){var i=e.tokenizer[n];if(i)return i;var o=n.lastIndexOf(".");n=o<0?null:n.substr(0,o)}return null}var vd=function(){function e(e){this._maxCacheDepth=e,this._entries=Object.create(null)}return e.create=function(e,t){return this._INSTANCE.create(e,t)},e.prototype.create=function(e,t){if(null!==e&&e.depth>=this._maxCacheDepth)return new _d(e,t);var n=_d.getStackElementId(e);n.length>0&&(n+="|"),n+=t;var i=this._entries[n];return i||(i=new _d(e,t),this._entries[n]=i,i)},e._INSTANCE=new e(5),e}(),_d=function(){function e(e,t){this.parent=e,this.state=t,this.depth=(this.parent?this.parent.depth:0)+1}return e.getStackElementId=function(e){for(var t="";null!==e;)t.length>0&&(t+="|"),t+=e.state,e=e.parent;return t},e._equals=function(e,t){for(;null!==e&&null!==t;){if(e===t)return!0;if(e.state!==t.state)return!1;e=e.parent,t=t.parent}return null===e&&null===t},e.prototype.equals=function(t){return e._equals(this,t)},e.prototype.push=function(e){return vd.create(this,e)},e.prototype.pop=function(){return this.parent},e.prototype.popall=function(){for(var e=this;e.parent;)e=e.parent;return e},e.prototype.switchTo=function(e){return vd.create(this.parent,e)},e}(),yd=function(){function e(e,t){this.modeId=e,this.state=t}return e.prototype.equals=function(e){return this.modeId===e.modeId&&this.state.equals(e.state)},e.prototype.clone=function(){return this.state.clone()===this.state?this:new e(this.modeId,this.state)},e}(),bd=function(){function e(e){this._maxCacheDepth=e,this._entries=Object.create(null)}return e.create=function(e,t){return this._INSTANCE.create(e,t)},e.prototype.create=function(e,t){if(null!==t)return new wd(e,t);if(null!==e&&e.depth>=this._maxCacheDepth)return new wd(e,t);var n=_d.getStackElementId(e),i=this._entries[n];return i||(i=new wd(e,null),this._entries[n]=i,i)},e._INSTANCE=new e(5),e}(),wd=function(){function e(e,t){this.stack=e,this.embeddedModeData=t}return e.prototype.clone=function(){return(this.embeddedModeData?this.embeddedModeData.clone():null)===this.embeddedModeData?this:bd.create(this.stack,this.embeddedModeData)},e.prototype.equals=function(t){return t instanceof e&&(!!this.stack.equals(t.stack)&&(null===this.embeddedModeData&&null===t.embeddedModeData||null!==this.embeddedModeData&&null!==t.embeddedModeData&&this.embeddedModeData.equals(t.embeddedModeData)))},e}(),Cd=function(){function e(){this._tokens=[],this._language=null,this._lastTokenType=null,this._lastTokenLanguage=null}return e.prototype.enterMode=function(e,t){this._language=t},e.prototype.emit=function(e,t){this._lastTokenType===t&&this._lastTokenLanguage===this._language||(this._lastTokenType=t,this._lastTokenLanguage=this._language,this._tokens.push(new Ln(e,t,this._language)))},e.prototype.nestedModeTokenize=function(e,t,n){var i=t.modeId,o=t.state,r=Yu.get(i);if(!r)return this.enterMode(n,i),this.emit(n,""),o;var s=r.tokenize(e,o,n);return this._tokens=this._tokens.concat(s.tokens),this._lastTokenType=null,this._lastTokenLanguage=null,this._language=null,s.endState},e.prototype.finalize=function(e){return new xn(this._tokens,e)},e}(),Sd=function(){function e(e,t){this._modeService=e,this._theme=t,this._prependTokens=null,this._tokens=[],this._currentLanguageId=0,this._lastTokenMetadata=0}return e.prototype.enterMode=function(e,t){this._currentLanguageId=this._modeService.getLanguageIdentifier(t).id},e.prototype.emit=function(e,t){var n=this._theme.match(this._currentLanguageId,t);this._lastTokenMetadata!==n&&(this._lastTokenMetadata=n,this._tokens.push(e),this._tokens.push(n))},e._merge=function(e,t,n){var i=null!==e?e.length:0,o=t.length,r=null!==n?n.length:0;if(0===i&&0===o&&0===r)return new Uint32Array(0);if(0===i&&0===o)return n;if(0===o&&0===r)return e;var s=new Uint32Array(i+o+r);null!==e&&s.set(e);for(var a=0;a<o;a++)s[i+a]=t[a];return null!==n&&s.set(n,i+o),s},e.prototype.nestedModeTokenize=function(t,n,i){var o=n.modeId,r=n.state,s=Yu.get(o);if(!s)return this.enterMode(i,o),this.emit(i,""),r;var a=s.tokenize2(t,r,i);return this._prependTokens=e._merge(this._prependTokens,this._tokens,a.tokens),this._tokens=[],this._currentLanguageId=0,this._lastTokenMetadata=0,a.endState},e.prototype.finalize=function(t){return new Dn(e._merge(this._prependTokens,this._tokens,null),t)},e}(),Ld=function(){function e(e,t,n,i){var o=this;this._modeService=e,this._standaloneThemeService=t,this._modeId=n,this._lexer=i,this._embeddedModes=Object.create(null),this.embeddedLoaded=Promise.resolve(void 0);var r=!1;this._tokenizationRegistryListener=Yu.onDidChange((function(e){if(!r){for(var t=!1,n=0,i=e.changedLanguages.length;n<i;n++){var s=e.changedLanguages[n];if(o._embeddedModes[s]){t=!0;break}}t&&(r=!0,Yu.fire([o._modeId]),r=!1)}}))}return e.prototype.dispose=function(){this._tokenizationRegistryListener.dispose()},e.prototype.getLoadStatus=function(){var t=[];for(var n in this._embeddedModes){var i=Yu.get(n);if(i){if(i instanceof e){var o=i.getLoadStatus();!1===o.loaded&&t.push(o.promise)}}else{var r=Yu.getPromise(n);r&&t.push(r)}}return 0===t.length?{loaded:!0}:{loaded:!1,promise:Promise.all(t).then((function(e){}))}},e.prototype.getInitialState=function(){var e=vd.create(null,this._lexer.start);return bd.create(e,null)},e.prototype.tokenize=function(e,t,n){var i=new Cd,o=this._tokenize(e,t,n,i);return i.finalize(o)},e.prototype.tokenize2=function(e,t,n){var i=new Sd(this._modeService,this._standaloneThemeService.getTheme().tokenTheme),o=this._tokenize(e,t,n,i);return i.finalize(o)},e.prototype._tokenize=function(e,t,n,i){return t.embeddedModeData?this._nestedTokenize(e,t,n,i):this._myTokenize(e,t,n,i)},e.prototype._findLeavingNestedModeOffset=function(e,t){var n=this._lexer.tokenizer[t.stack.state];if(!n&&!(n=md(this._lexer,t.stack.state)))throw fd(this._lexer,"tokenizer state is not defined: "+t.stack.state);for(var i=-1,o=!1,r=0,s=n;r<s.length;r++){var a=s[r];if(cd(a.action)&&"@pop"===a.action.nextEmbedded){o=!0;var u=a.regex,l=a.regex.source;"^(?:"===l.substr(0,4)&&")"===l.substr(l.length-1,1)&&(u=new RegExp(l.substr(4,l.length-5),u.ignoreCase?"i":""));var c=e.search(u);-1===c||0!==c&&a.matchOnlyAtLineStart||(-1===i||c<i)&&(i=c)}}if(!o)throw fd(this._lexer,'no rule containing nextEmbedded: "@pop" in tokenizer embedded state: '+t.stack.state);return i},e.prototype._nestedTokenize=function(e,t,n,i){var o=this._findLeavingNestedModeOffset(e,t);if(-1===o){var r=i.nestedModeTokenize(e,t.embeddedModeData,n);return bd.create(t.stack,new yd(t.embeddedModeData.modeId,r))}var s=e.substring(0,o);s.length>0&&i.nestedModeTokenize(s,t.embeddedModeData,n);var a=e.substring(o);return this._myTokenize(a,t,n+o,i)},e.prototype._safeRuleName=function(e){return e?e.name:"(unknown)"},e.prototype._myTokenize=function(e,t,n,i){i.enterMode(n,this._modeId);for(var o,r,s=e.length,a=t.embeddedModeData,u=t.stack,l=0,c=null,d=!0;d||l<s;){var h=l,p=u.depth,f=c?c.groups.length:0,g=u.state,m=null,v=null,_=null,y=null,b=null;if(c){m=c.matches;var w=c.groups.shift();v=w.matched,_=w.action,y=c.rule,0===c.groups.length&&(c=null)}else{if(!d&&l>=s)break;d=!1;var C=this._lexer.tokenizer[g];if(!C&&!(C=md(this._lexer,g)))throw fd(this._lexer,"tokenizer state is not defined: "+g);for(var S=e.substr(l),L=0,x=C;L<x.length;L++){var D=x[L];if((0===l||!D.matchOnlyAtLineStart)&&(m=S.match(D.regex))){v=m[0],_=D.action;break}}}if(m||(m=[""],v=""),_||(l<s&&(v=(m=[e.charAt(l)])[0]),_=this._lexer.defaultToken),null===v)break;for(l+=v.length;ud(_)&&cd(_)&&_.test;)_=_.test(v,m,g,l===s);var N=null;if("string"==typeof _||Array.isArray(_))N=_;else if(_.group)N=_.group;else if(null!==_.token&&void 0!==_.token){if(N=_.tokenSubst?gd(this._lexer,_.token,v,m,g):_.token,_.nextEmbedded)if("@pop"===_.nextEmbedded){if(!a)throw fd(this._lexer,"cannot pop embedded mode if not inside one");a=null}else{if(a)throw fd(this._lexer,"cannot enter embedded mode from within an embedded mode");b=gd(this._lexer,_.nextEmbedded,v,m,g)}if(_.goBack&&(l=Math.max(0,l-_.goBack)),_.switchTo&&"string"==typeof _.switchTo){if("@"===(k=gd(this._lexer,_.switchTo,v,m,g))[0]&&(k=k.substr(1)),!md(this._lexer,k))throw fd(this._lexer,"trying to switch to a state '"+k+"' that is undefined in rule: "+this._safeRuleName(y));u=u.switchTo(k)}else{if(_.transform&&"function"==typeof _.transform)throw fd(this._lexer,"action.transform not supported");if(_.next)if("@push"===_.next){if(u.depth>=this._lexer.maxStack)throw fd(this._lexer,"maximum tokenizer stack size reached: ["+u.state+","+u.parent.state+",...]");u=u.push(g)}else if("@pop"===_.next){if(u.depth<=1)throw fd(this._lexer,"trying to pop an empty stack in rule: "+this._safeRuleName(y));u=u.pop()}else if("@popall"===_.next)u=u.popall();else{var k;if("@"===(k=gd(this._lexer,_.next,v,m,g))[0]&&(k=k.substr(1)),!md(this._lexer,k))throw fd(this._lexer,"trying to set a next state '"+k+"' that is undefined in rule: "+this._safeRuleName(y));u=u.push(k)}}_.log&&"string"==typeof _.log&&(o=this._lexer,r=this._lexer.languageId+": "+gd(this._lexer,_.log,v,m,g),console.log(o.languageId+": "+r))}if(null===N)throw fd(this._lexer,"lexer rule has no well-defined action in rule: "+this._safeRuleName(y));if(Array.isArray(N)){if(c&&c.groups.length>0)throw fd(this._lexer,"groups cannot be nested: "+this._safeRuleName(y));if(m.length!==N.length+1)throw fd(this._lexer,"matched number of groups does not match the number of actions in rule: "+this._safeRuleName(y));for(var E=0,I=1;I<m.length;I++)E+=m[I].length;if(E!==v.length)throw fd(this._lexer,"with groups, all characters should be matched in consecutive groups in rule: "+this._safeRuleName(y));c={rule:y,matches:m,groups:[]};for(I=0;I<N.length;I++)c.groups[I]={action:N[I],matched:m[I+1]};l-=v.length}else{if("@rematch"===N&&(l-=v.length,v="",m=null,N=""),0===v.length){if(0===s||p!==u.depth||g!==u.state||(c?c.groups.length:0)!==f)continue;throw fd(this._lexer,"no progress in tokenizer in rule: "+this._safeRuleName(y))}var O=null;if(ld(N)&&0===N.indexOf("@brackets")){var M=N.substr("@brackets".length),T=xd(this._lexer,v);if(!T)throw fd(this._lexer,"@brackets token returned but no bracket defined as: "+v);O=pd(T.token+M)}else{O=pd(""===N?"":N+this._lexer.tokenPostfix)}if(i.emit(h+n,O),null!==b){var P=this._modeService.getModeIdForLanguageName(b);P&&(b=P);var R=this._getNestedEmbeddedModeData(b);if(l<s){S=e.substr(l);return this._nestedTokenize(S,bd.create(u,R),n+l,i)}return bd.create(u,R)}}}return bd.create(u,a)},e.prototype._getNestedEmbeddedModeData=function(e){var t=this._locateMode(e);if(t){var n=Yu.get(t);if(n)return new yd(t,n.getInitialState())}return new yd(t||"vs.editor.nullMode",Xu)},e.prototype._locateMode=function(e){if(!e||!this._modeService.isRegisteredMode(e))return null;if(e===this._modeId)return e;var t=this._modeService.getModeId(e);return t&&(this._modeService.triggerMode(t),this._embeddedModes[t]=!0),t},e}();function xd(e,t){if(!t)return null;t=hd(e,t);for(var n=0,i=e.brackets;n<i.length;n++){var o=i[n];if(o.open===t)return{token:o.token,bracketType:1};if(o.close===t)return{token:o.token,bracketType:-1}}return null}var Dd,Nd,kd=function(){function e(){}return e.colorizeElement=function(e,t,n,i){var o=(i=i||{}).theme||"vs",r=i.mimeType||n.getAttribute("lang")||n.getAttribute("data-lang");if(!r)return console.error("Mode not detected"),Promise.resolve();e.setTheme(o);var s=n.firstChild?n.firstChild.nodeValue:"";n.className+=" "+o;return this.colorize(t,s||"",r,i).then((function(e){n.innerHTML=e}),(function(e){return console.error(e)}))},e.colorize=function(e,t,n,i){var o=4;i&&"number"==typeof i.tabSize&&(o=i.tabSize),qr(t)&&(t=t.substr(1));var r=t.split(/\r\n|\r|\n/),s=e.getModeId(n);if(!s)return Promise.resolve(Id(r,o));e.triggerMode(s);var a=Yu.get(s);if(a)return Ed(r,o,a);var u=Yu.getPromise(s);return new Promise(u?function(e,t){u.then((function(n){Ed(r,o,n).then(e,t)}),t)}:function(e,t){var n=null,i=null,a=function(){n&&(n.dispose(),n=null),i&&(i.dispose(),i=null);var a=Yu.get(s);a?Ed(r,o,a).then(e,t):e(Id(r,o))};(i=new yi).cancelAndSet(a,500),n=Yu.onDidChange((function(e){e.changedLanguages.indexOf(s)>=0&&a()}))})},e.colorizeLine=function(e,t,n,i,o){void 0===o&&(o=4);var r=rd.isBasicASCII(e,t),s=rd.containsRTL(e,r,n);return ed(new Yc(!1,!0,e,!1,r,s,0,i,[],o,0,0,0,-1,"none",!1,!1,null)).html},e.colorizeModelLine=function(e,t,n){void 0===n&&(n=4);var i=e.getLineContent(t);e.forceTokenization(t);var o=e.getLineTokens(t).inflate();return this.colorizeLine(i,e.mightContainNonBasicASCII(),e.mightContainRTL(),o,n)},e}();function Ed(e,t,n){return new Promise((function(i,o){var r=function(){var s=function(e,t,n){for(var i=[],o=n.getInitialState(),r=0,s=e.length;r<s;r++){var a=e[r],u=n.tokenize2(a,o,0);Vc.convertToEndOffset(u.tokens,a.length);var l=new Vc(u.tokens,a),c=rd.isBasicASCII(a,!0),d=rd.containsRTL(a,c,!0),h=ed(new Yc(!1,!0,a,!1,c,d,0,l.inflate(),[],t,0,0,0,-1,"none",!1,!1,null));(i=i.concat(h.html)).push("<br/>"),o=u.endState}return i.join("")}(e,t,n);if(n instanceof Ld){var a=n.getLoadStatus();if(!1===a.loaded)return void a.promise.then(r,o)}i(s)};r()}))}function Id(e,t){var n=[],i=new Uint32Array(2);i[0]=0,i[1]=16793600;for(var o=0,r=e.length;o<r;o++){var s=e[o];i[0]=s.length;var a=new Vc(i,s),u=rd.isBasicASCII(s,!0),l=rd.containsRTL(s,u,!0),c=ed(new Yc(!1,!0,s,!1,u,l,0,a,[],t,0,0,0,-1,"none",!1,!1,null));(n=n.concat(c.html)).push("<br/>")}return n.join("")}(Nd=Dd||(Dd={}))[Nd.Ignore=0]="Ignore",Nd[Nd.Info=1]="Info",Nd[Nd.Warning=2]="Warning",Nd[Nd.Error=3]="Error",function(e){var t=Object.create(null);t[e.Error]=r("sev.error","Error"),t[e.Warning]=r("sev.warning","Warning"),t[e.Info]=r("sev.info","Info"),e.fromValue=function(t){return t?Er("error",t)?e.Error:Er("warning",t)||Er("warn",t)?e.Warning:Er("info",t)?e.Info:e.Ignore:e.Ignore}}(Dd||(Dd={}));var Od=Dd;function Md(e){return!(!e||"function"!=typeof e.getEditorType)&&e.getEditorType()===Ha.ICodeEditor}var Td=new(function(){function e(){this.data=new Map}return e.prototype.add=function(e,t){La(As(e)),La(Fs(t)),La(!this.data.has(e),"There is already an extension with this id"),this.data.set(e,t)},e.prototype.as=function(e){return this.data.get(e)||null},e}()),Pd="base.contributions.json";var Rd=new(function(){function e(){this._onDidChangeSchema=new nt,this.schemasById={}}return e.prototype.registerSchema=function(e,t){var n;this.schemasById[(n=e,n.length>0&&"#"===n.charAt(n.length-1)?n.substring(0,n.length-1):n)]=t,this._onDidChangeSchema.fire(e)},e.prototype.notifySchemaChanged=function(e){this._onDidChangeSchema.fire(e)},e}());Td.add(Pd,Rd);var Ad="base.contributions.configuration",Fd={properties:{},patternProperties:{}},Wd={properties:{},patternProperties:{}},Vd={properties:{},patternProperties:{}},Bd={properties:{},patternProperties:{}},Hd={properties:{},patternProperties:{}},zd={properties:{},patternProperties:{}},jd=Td.as(Pd),Ud=function(){function e(){this.overrideIdentifiers=new Set,this._onDidSchemaChange=new nt,this._onDidUpdateConfiguration=new nt,this.defaultOverridesConfigurationNode={id:"defaultOverrides",title:r("defaultConfigurations.title","Default Configuration Overrides"),properties:{}},this.configurationContributors=[this.defaultOverridesConfigurationNode],this.resourceLanguageSettingsSchema={properties:{},patternProperties:{},additionalProperties:!1,errorMessage:"Unknown editor configuration setting",allowTrailingCommas:!0,allowComments:!0},this.configurationProperties={},this.excludedConfigurationProperties={},jd.registerSchema("vscode://schemas/settings/resourceLanguage",this.resourceLanguageSettingsSchema)}return e.prototype.registerConfiguration=function(e,t){void 0===t&&(t=!0),this.registerConfigurations([e],t)},e.prototype.registerConfigurations=function(e,t){var n=this;void 0===t&&(t=!0);var i=[];e.forEach((function(e){i.push.apply(i,n.validateAndRegisterProperties(e,t)),n.configurationContributors.push(e),n.registerJSONConfiguration(e)})),jd.registerSchema("vscode://schemas/settings/resourceLanguage",this.resourceLanguageSettingsSchema),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire(i)},e.prototype.registerOverrideIdentifiers=function(e){for(var t=0,n=e;t<n.length;t++){var i=n[t];this.overrideIdentifiers.add(i)}this.updateOverridePropertyPatternKey()},e.prototype.validateAndRegisterProperties=function(e,t,n){void 0===t&&(t=!0),void 0===n&&(n=3),n=Hs(e.scope)?n:e.scope;var i=[],o=e.properties;if(o)for(var r in o)if(t&&Zd(r))delete o[r];else{var s=o[r];Bs(s.default)&&(s.default=qd(s.type)),Kd.test(r)?s.scope=void 0:s.scope=Hs(s.scope)?n:s.scope,!o[r].hasOwnProperty("included")||o[r].included?(this.configurationProperties[r]=o[r],i.push(r)):(this.excludedConfigurationProperties[r]=o[r],delete o[r])}var a=e.allOf;if(a)for(var u=0,l=a;u<l.length;u++){var c=l[u];i.push.apply(i,this.validateAndRegisterProperties(c,t,n))}return i},e.prototype.getConfigurationProperties=function(){return this.configurationProperties},e.prototype.registerJSONConfiguration=function(e){var t=this,n=function(e){var i=e.properties;if(i)for(var o in i)switch(Fd.properties[o]=i[o],i[o].scope){case 1:Wd.properties[o]=i[o];break;case 2:Vd.properties[o]=i[o];break;case 6:Bd.properties[o]=i[o];break;case 3:Hd.properties[o]=i[o];break;case 4:zd.properties[o]=i[o];break;case 5:zd.properties[o]=i[o],t.resourceLanguageSettingsSchema.properties[o]=i[o]}var r=e.allOf;r&&r.forEach(n)};n(e)},e.prototype.updateOverridePropertyPatternKey=function(){for(var e,t=0,n=Js(this.overrideIdentifiers);t<n.length;t++){var i="["+n[t]+"]",o={type:"object",description:r("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),errorMessage:r("overrideSettings.errorMessage","This setting does not support per-language configuration."),$ref:"vscode://schemas/settings/resourceLanguage",default:null===(e=this.defaultOverridesConfigurationNode.properties[i])||void 0===e?void 0:e.default};Fd.properties[i]=o,Wd.properties[i]=o,Vd.properties[i]=o,Bd.properties[i]=o,Hd.properties[i]=o,zd.properties[i]=o}this._onDidSchemaChange.fire()},e}(),Kd=new RegExp("\\[.*\\]$");function qd(e){switch(Array.isArray(e)?e[0]:e){case"boolean":return!1;case"integer":case"number":return 0;case"string":return"";case"array":return[];case"object":return{};default:return null}}var Gd=new Ud;function Zd(e){return Kd.test(e)?r("config.property.languageDefault","Cannot register '{0}'. This matches property pattern '\\\\[.*\\\\]$' for describing language specific editor settings. Use 'configurationDefaults' contribution.",e):void 0!==Gd.getConfigurationProperties()[e]?r("config.property.duplicate","Cannot register '{0}'. This property is already registered.",e):null}Td.add(Ad,Gd);var Yd=Object.prototype.hasOwnProperty;function Xd(e){var t=[];for(var n in e)Yd.call(e,n)&&t.push(e[n]);return t}function $d(e){for(var t in e)if(Yd.call(e,t))return e[t]}function Qd(e,t){var n=function(n){if(Yd.call(e,n)&&!1===t({key:n,value:e[n]},(function(){delete e[n]})))return{value:void 0}};for(var i in e){var o=n(i);if("object"==typeof o)return o.value}}var Jd=function(){function e(){this.map=new Map}return e.prototype.add=function(e,t){var n=this.map.get(e);n||(n=new Set,this.map.set(e,n)),n.add(t)},e.prototype.delete=function(e,t){var n=this.map.get(e);n&&(n.delete(t),0===n.size&&this.map.delete(e))},e.prototype.forEach=function(e,t){var n=this.map.get(e);n&&n.forEach(t)},e}(),eh=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),th=function(){return(th=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},nh=new(function(){function e(){this._tabFocus=!1,this._onDidChangeTabFocus=new nt,this.onDidChangeTabFocus=this._onDidChangeTabFocus.event}return e.prototype.getTabFocusMode=function(){return this._tabFocus},e.prototype.setTabFocusMode=function(e){this._tabFocus!==e&&(this._tabFocus=e,this._onDidChangeTabFocus.fire(this._tabFocus))},e}()),ih=Object.hasOwnProperty,oh=function(){function e(){this._values=[]}return e.prototype._read=function(e){return this._values[e]},e.prototype.get=function(e){return this._values[e]},e.prototype._write=function(e,t){this._values[e]=t},e}(),rh=function(){function e(){this._values=[]}return e.prototype._read=function(e){return this._values[e]},e.prototype._write=function(e,t){this._values[e]=t},e}(),sh=function(){function e(){}return e.readOptions=function(e){for(var t=e,n=new rh,i=0,o=Ce;i<o.length;i++){var r=o[i],s="_never_"===r.name?void 0:t[r.name];n._write(r.id,s)}return n},e.validateOptions=function(e){for(var t=new T,n=0,i=Ce;n<i.length;n++){var o=i[n];t._write(o.id,o.validate(e._read(o.id)))}return t},e.computeOptions=function(e,t){for(var n=new oh,i=0,o=Ce;i<o.length;i++){var r=o[i];n._write(r.id,r.compute(t,n,e._read(r.id)))}return n},e._deepEquals=function(t,n){if("object"!=typeof t||"object"!=typeof n)return t===n;if(Array.isArray(t)||Array.isArray(n))return!(!Array.isArray(t)||!Array.isArray(n))&&xi(t,n);for(var i in t)if(!e._deepEquals(t[i],n[i]))return!1;return!0},e.checkEquals=function(t,n){for(var i=[],o=!1,r=0,s=Ce;r<s.length;r++){var a=s[r],u=!e._deepEquals(t._read(a.id),n._read(a.id));i[a.id]=u,u&&(o=!0)}return o?new M(i):null},e}();function ah(e){var t=xa(e);return function(e){var t=e.wordWrap;!0===t?e.wordWrap="on":!1===t&&(e.wordWrap="off");var n=e.lineNumbers;!0===n?e.lineNumbers="on":!1===n&&(e.lineNumbers="off"),!1===e.autoClosingBrackets&&(e.autoClosingBrackets="never",e.autoClosingQuotes="never",e.autoSurround="never"),"visible"===e.cursorBlinking&&(e.cursorBlinking="solid");var i=e.renderWhitespace;!0===i?e.renderWhitespace="boundary":!1===i&&(e.renderWhitespace="none");var o=e.renderLineHighlight;!0===o?e.renderLineHighlight="line":!1===o&&(e.renderLineHighlight="none");var r=e.acceptSuggestionOnEnter;!0===r?e.acceptSuggestionOnEnter="on":!1===r&&(e.acceptSuggestionOnEnter="off");var s=e.tabCompletion;!1===s?e.tabCompletion="off":!0===s&&(e.tabCompletion="onlySnippets");var a=e.suggest;if(a&&"object"==typeof a.filteredTypes&&a.filteredTypes){var u={method:"showMethods",function:"showFunctions",constructor:"showConstructors",field:"showFields",variable:"showVariables",class:"showClasses",struct:"showStructs",interface:"showInterfaces",module:"showModules",property:"showProperties",event:"showEvents",operator:"showOperators",unit:"showUnits",value:"showValues",constant:"showConstants",enum:"showEnums",enumMember:"showEnumMembers",keyword:"showKeywords",text:"showWords",color:"showColors",file:"showFiles",reference:"showReferences",folder:"showFolders",typeParameter:"showTypeParameters",snippet:"showSnippets"};Qd(u,(function(e){var t=a.filteredTypes[e.key];!1===t&&(a[e.value]=t)}))}var l=e.hover;!0===l?e.hover={enabled:!0}:!1===l&&(e.hover={enabled:!1});var c=e.parameterHints;!0===c?e.parameterHints={enabled:!0}:!1===c&&(e.parameterHints={enabled:!1});var d=e.autoIndent;!0===d?e.autoIndent="full":!1===d&&(e.autoIndent="advanced");var h=e.matchBrackets;!0===h?e.matchBrackets="always":!1===h&&(e.matchBrackets="never")}(t),t}var uh,lh=function(e){function t(t,n){var i=e.call(this)||this;return i._onDidChange=i._register(new nt),i.onDidChange=i._onDidChange.event,i.isSimpleWidget=t,i._isDominatedByLongLines=!1,i._lineNumbersDigitCount=1,i._rawOptions=ah(n),i._readOptions=sh.readOptions(i._rawOptions),i._validatedOptions=sh.validateOptions(i._readOptions),i._register(Pa.onDidChangeZoomLevel((function(e){return i._recomputeOptions()}))),i._register(nh.onDidChangeTabFocus((function(e){return i._recomputeOptions()}))),i}return eh(t,e),t.prototype.observeReferenceElement=function(e){},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._recomputeOptions=function(){var e=this.options,t=this._computeInternalOptions();if(e){var n=sh.checkEquals(e,t);if(null===n)return;this.options=t,this._onDidChange.fire(n)}else this.options=t},t.prototype.getRawOptions=function(){return this._rawOptions},t.prototype._computeInternalOptions=function(){var e=this._getEnvConfiguration(),t=Fa.createFromValidatedSettings(this._validatedOptions,e.zoomLevel,this.isSimpleWidget),n={outerWidth:e.outerWidth,outerHeight:e.outerHeight,fontInfo:this.readConfiguration(t),extraEditorClassName:e.extraEditorClassName,isDominatedByLongLines:this._isDominatedByLongLines,lineNumbersDigitCount:this._lineNumbersDigitCount,emptySelectionClipboard:e.emptySelectionClipboard,pixelRatio:e.pixelRatio,tabFocusMode:nh.getTabFocusMode(),accessibilitySupport:e.accessibilitySupport};return sh.computeOptions(this._validatedOptions,n)},t._subsetEquals=function(e,t){for(var n in t)if(ih.call(t,n)){var i=t[n],o=e[n];if(o===i)continue;if(Array.isArray(o)&&Array.isArray(i)){if(!xi(o,i))return!1;continue}if("object"==typeof o&&"object"==typeof i){if(!this._subsetEquals(o,i))return!1;continue}return!1}return!0},t.prototype.updateOptions=function(e){if(void 0!==e){var n=ah(e);t._subsetEquals(this._rawOptions,n)||(this._rawOptions=ka(this._rawOptions,n||{}),this._readOptions=sh.readOptions(this._rawOptions),this._validatedOptions=sh.validateOptions(this._readOptions),this._recomputeOptions())}},t.prototype.setIsDominatedByLongLines=function(e){this._isDominatedByLongLines=e,this._recomputeOptions()},t.prototype.setMaxLineNumber=function(e){var n=t._digitCount(e);this._lineNumbersDigitCount!==n&&(this._lineNumbersDigitCount=n,this._recomputeOptions())},t._digitCount=function(e){for(var t=0;e;)e=Math.floor(e/10),t++;return t||1},t}(He),ch=Object.freeze({id:"editor",order:5,type:"object",title:r("editorConfigurationTitle","Editor"),scope:5}),dh=Td.as(Ad),hh=th(th({},ch),{properties:{"editor.tabSize":{type:"number",default:me,minimum:1,markdownDescription:r("tabSize","The number of spaces a tab is equal to. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.")},"editor.insertSpaces":{type:"boolean",default:_e,markdownDescription:r("insertSpaces","Insert spaces when pressing `Tab`. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.")},"editor.detectIndentation":{type:"boolean",default:ye,markdownDescription:r("detectIndentation","Controls whether `#editor.tabSize#` and `#editor.insertSpaces#` will be automatically detected when a file is opened based on the file contents.")},"editor.trimAutoWhitespace":{type:"boolean",default:be,description:r("trimAutoWhitespace","Remove trailing auto inserted whitespace.")},"editor.largeFileOptimizations":{type:"boolean",default:we,description:r("largeFileOptimizations","Special handling for large files to disable certain memory intensive features.")},"editor.wordBasedSuggestions":{type:"boolean",default:!0,description:r("wordBasedSuggestions","Controls whether completions should be computed based on words in the document.")},"editor.semanticHighlighting.enabled":{type:"boolean",default:!1,description:r("semanticHighlighting.enabled","Controls whether the semanticHighlighting is shown for the languages that support it.")},"editor.stablePeek":{type:"boolean",default:!1,markdownDescription:r("stablePeek","Keep peek editors open even when double clicking their content or when hitting `Escape`.")},"editor.maxTokenizationLineLength":{type:"integer",default:2e4,description:r("maxTokenizationLineLength","Lines above this length will not be tokenized for performance reasons")},"diffEditor.maxComputationTime":{type:"number",default:5e3,description:r("maxComputationTime","Timeout in milliseconds after which diff computation is cancelled. Use 0 for no timeout.")},"diffEditor.renderSideBySide":{type:"boolean",default:!0,description:r("sideBySide","Controls whether the diff editor shows the diff side by side or inline.")},"diffEditor.ignoreTrimWhitespace":{type:"boolean",default:!0,description:r("ignoreTrimWhitespace","Controls whether the diff editor shows changes in leading or trailing whitespace as diffs.")},"diffEditor.renderIndicators":{type:"boolean",default:!0,description:r("renderIndicators","Controls whether the diff editor shows +/- indicators for added/removed changes.")}}});for(var ph=0,fh=Ce;ph<fh.length;ph++){var gh=fh[ph],mh=gh.schema;if(void 0!==mh)if(void 0!==(uh=mh).type||void 0!==uh.anyOf)hh.properties["editor."+gh.name]=mh;else for(var vh in mh)ih.call(mh,vh)&&(hh.properties[vh]=mh[vh])}var _h=null;function yh(){return null===_h&&(_h=Object.create(null),Object.keys(hh.properties).forEach((function(e){_h[e]=!0}))),_h}dh.registerConfiguration(hh);var bh=function(){function e(){}return e.insert=function(e,t){return{range:new wn(e.lineNumber,e.column,e.lineNumber,e.column),text:t,forceMoveMarkers:!0}},e.delete=function(e){return{range:e,text:null}},e.replace=function(e,t){return{range:e,text:t}},e.replaceMove=function(e,t){return{range:e,text:t,forceMoveMarkers:!0}},e}(),wh=Mn("configurationService");function Ch(e,t){var n=Object.create(null);for(var i in e)Sh(n,i,e[i],t);return n}function Sh(e,t,n,i){for(var o=t.split("."),r=o.pop(),s=e,a=0;a<o.length;a++){var u=o[a],l=s[u];switch(typeof l){case"undefined":l=s[u]=Object.create(null);break;case"object":break;default:return void i("Ignoring "+t+" as "+o.slice(0,a+1).join(".")+" is "+JSON.stringify(l))}s=l}"object"==typeof s?s[r]=n:i("Ignoring "+t+" as "+o.join(".")+" is "+JSON.stringify(s))}function Lh(e,t){!function e(t,n){var i=n.shift();if(0===n.length)return void delete t[i];if(-1!==Object.keys(t).indexOf(i)){var o=t[i];"object"!=typeof o||Array.isArray(o)||(e(o,n),0===Object.keys(o).length&&delete t[i])}}(e,t.split("."))}function xh(e,t,n){var i=function(e,t){for(var n=e,i=0,o=t;i<o.length;i++){var r=o[i];if("object"!=typeof n||null===n)return;n=n[r]}return n}(e,t.split("."));return void 0===i?n:i}function Dh(e){return e.substring(1,e.length-1)}var Nh=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),kh=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},Eh=function(){function e(e,t,n){void 0===e&&(e={}),void 0===t&&(t=[]),void 0===n&&(n=[]),this._contents=e,this._keys=t,this._overrides=n,this.isFrozen=!1}return Object.defineProperty(e.prototype,"contents",{get:function(){return this.checkAndFreeze(this._contents)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"overrides",{get:function(){return this.checkAndFreeze(this._overrides)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"keys",{get:function(){return this.checkAndFreeze(this._keys)},enumerable:!0,configurable:!0}),e.prototype.isEmpty=function(){return 0===this._keys.length&&0===Object.keys(this._contents).length&&0===this._overrides.length},e.prototype.getValue=function(e){return e?xh(this.contents,e):this.contents},e.prototype.getOverrideValue=function(e,t){var n=this.getContentsForOverrideIdentifer(t);return n?e?xh(n,e):n:void 0},e.prototype.override=function(t){var n=this.getContentsForOverrideIdentifer(t);if(!n||"object"!=typeof n||!Object.keys(n).length)return this;for(var i={},o=0,r=Mi(kh(Object.keys(this.contents),Object.keys(n)));o<r.length;o++){var s=r[o],a=this.contents[s],u=n[s];u&&("object"==typeof a&&"object"==typeof u?(a=xa(a),this.mergeContents(a,u)):a=u),i[s]=a}return new e(i,this.keys,this.overrides)},e.prototype.merge=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];for(var i=xa(this.contents),o=xa(this.overrides),r=kh(this.keys),s=0,a=t;s<a.length;s++){var u=a[s];this.mergeContents(i,u.contents);for(var l=function(e){var t=o.filter((function(t){return xi(t.identifiers,e.identifiers)}))[0];t?c.mergeContents(t.contents,e.contents):o.push(xa(e))},c=this,d=0,h=u.overrides;d<h.length;d++){var p=h[d];l(p)}for(var f=0,g=u.keys;f<g.length;f++){var m=g[f];-1===r.indexOf(m)&&r.push(m)}}return new e(i,r,o)},e.prototype.freeze=function(){return this.isFrozen=!0,this},e.prototype.mergeContents=function(e,t){for(var n=0,i=Object.keys(t);n<i.length;n++){var o=i[n];o in e&&Fs(e[o])&&Fs(t[o])?this.mergeContents(e[o],t[o]):e[o]=xa(t[o])}},e.prototype.checkAndFreeze=function(e){return this.isFrozen&&!Object.isFrozen(e)?function(e){if(!e||"object"!=typeof e)return e;for(var t=[e];t.length>0;){var n=t.shift();for(var i in Object.freeze(n),n)if(Da.call(n,i)){var o=n[i];"object"!=typeof o||Object.isFrozen(o)||t.push(o)}}return e}(e):e},e.prototype.getContentsForOverrideIdentifer=function(e){for(var t=0,n=this.overrides;t<n.length;t++){var i=n[t];if(-1!==i.identifiers.indexOf(e))return i.contents}return null},e.prototype.toJSON=function(){return{contents:this.contents,overrides:this.overrides,keys:this.keys}},e.prototype.setValue=function(e,t){this.addKey(e),Sh(this.contents,e,t,(function(e){throw new Error(e)}))},e.prototype.removeValue=function(e){this.removeKey(e)&&Lh(this.contents,e)},e.prototype.addKey=function(e){for(var t=this.keys.length,n=0;n<t;n++)0===e.indexOf(this.keys[n])&&(t=n);this.keys.splice(t,1,e)},e.prototype.removeKey=function(e){var t=this.keys.indexOf(e);return-1!==t&&(this.keys.splice(t,1),!0)},e}(),Ih=function(e){function t(){for(var t,n=function(){var e=Object.create(null),t=Td.as(Ad).getConfigurationProperties();for(var n in t){Sh(e,n,t[n].default,(function(e){return console.error("Conflict in default settings: "+e)}))}return e}(),i=(t=Td.as(Ad).getConfigurationProperties(),Object.keys(t)),o=[],r=0,s=Object.keys(n);r<s.length;r++){var a=s[r];Kd.test(a)&&o.push({identifiers:[Dh(a).trim()],keys:Object.keys(n[a]),contents:Ch(n[a],(function(e){return console.error("Conflict in default settings file: "+e)}))})}return e.call(this,n,i,o)||this}return Nh(t,e),t}(Eh),Oh=function(){function e(e,t,n,i,o,r,s,a){void 0===n&&(n=new Eh),void 0===i&&(i=new Eh),void 0===o&&(o=new sa),void 0===r&&(r=new Eh),void 0===s&&(s=new sa),void 0===a&&(a=!0),this._defaultConfiguration=e,this._localUserConfiguration=t,this._remoteUserConfiguration=n,this._workspaceConfiguration=i,this._folderConfigurations=o,this._memoryConfiguration=r,this._memoryConfigurationByResource=s,this._freeze=a,this._workspaceConsolidatedConfiguration=null,this._foldersConsolidatedConfigurations=new sa,this._userConfiguration=null}return e.prototype.getValue=function(e,t,n){return this.getConsolidateConfigurationModel(t,n).getValue(e)},e.prototype.updateValue=function(e,t,n){var i;void 0===n&&(n={}),n.resource?(i=this._memoryConfigurationByResource.get(n.resource))||(i=new Eh,this._memoryConfigurationByResource.set(n.resource,i)):i=this._memoryConfiguration,void 0===t?i.removeValue(e):i.setValue(e,t),n.resource||(this._workspaceConsolidatedConfiguration=null)},e.prototype.inspect=function(e,t,n){var i=this.getConsolidateConfigurationModel(t,n),o=this.getFolderConfigurationModelForResource(t.resource,n),r=t.resource&&this._memoryConfigurationByResource.get(t.resource)||this._memoryConfiguration,s=t.overrideIdentifier?this._defaultConfiguration.freeze().override(t.overrideIdentifier).getValue(e):this._defaultConfiguration.freeze().getValue(e),a=t.overrideIdentifier?this.userConfiguration.freeze().override(t.overrideIdentifier).getValue(e):this.userConfiguration.freeze().getValue(e),u=t.overrideIdentifier?this.localUserConfiguration.freeze().override(t.overrideIdentifier).getValue(e):this.localUserConfiguration.freeze().getValue(e),l=t.overrideIdentifier?this.remoteUserConfiguration.freeze().override(t.overrideIdentifier).getValue(e):this.remoteUserConfiguration.freeze().getValue(e),c=n?t.overrideIdentifier?this._workspaceConfiguration.freeze().override(t.overrideIdentifier).getValue(e):this._workspaceConfiguration.freeze().getValue(e):void 0,d=o?t.overrideIdentifier?o.freeze().override(t.overrideIdentifier).getValue(e):o.freeze().getValue(e):void 0,h=t.overrideIdentifier?r.override(t.overrideIdentifier).getValue(e):r.getValue(e),p=i.getValue(e),f=Mi(Fi(i.overrides.map((function(e){return e.identifiers})))).filter((function(t){return void 0!==i.getOverrideValue(e,t)}));return{defaultValue:s,userValue:a,userLocalValue:u,userRemoteValue:l,workspaceValue:c,workspaceFolderValue:d,memoryValue:h,value:p,default:void 0!==s?{value:this._defaultConfiguration.freeze().getValue(e),override:t.overrideIdentifier?this._defaultConfiguration.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,user:void 0!==a?{value:this.userConfiguration.freeze().getValue(e),override:t.overrideIdentifier?this.userConfiguration.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,userLocal:void 0!==u?{value:this.localUserConfiguration.freeze().getValue(e),override:t.overrideIdentifier?this.localUserConfiguration.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,userRemote:void 0!==l?{value:this.remoteUserConfiguration.freeze().getValue(e),override:t.overrideIdentifier?this.remoteUserConfiguration.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,workspace:void 0!==c?{value:this._workspaceConfiguration.freeze().getValue(e),override:t.overrideIdentifier?this._workspaceConfiguration.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,workspaceFolder:void 0!==d?{value:null==o?void 0:o.freeze().getValue(e),override:t.overrideIdentifier?null==o?void 0:o.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,memory:void 0!==h?{value:r.getValue(e),override:t.overrideIdentifier?r.getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,overrideIdentifiers:f.length?f:void 0}},Object.defineProperty(e.prototype,"userConfiguration",{get:function(){return this._userConfiguration||(this._userConfiguration=this._remoteUserConfiguration.isEmpty()?this._localUserConfiguration:this._localUserConfiguration.merge(this._remoteUserConfiguration),this._freeze&&this._userConfiguration.freeze()),this._userConfiguration},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"localUserConfiguration",{get:function(){return this._localUserConfiguration},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"remoteUserConfiguration",{get:function(){return this._remoteUserConfiguration},enumerable:!0,configurable:!0}),e.prototype.getConsolidateConfigurationModel=function(e,t){var n=this.getConsolidatedConfigurationModelForResource(e,t);return e.overrideIdentifier?n.override(e.overrideIdentifier):n},e.prototype.getConsolidatedConfigurationModelForResource=function(e,t){var n=e.resource,i=this.getWorkspaceConsolidatedConfiguration();if(t&&n){var o=t.getFolder(n);o&&(i=this.getFolderConsolidatedConfiguration(o.uri)||i);var r=this._memoryConfigurationByResource.get(n);r&&(i=i.merge(r))}return i},e.prototype.getWorkspaceConsolidatedConfiguration=function(){return this._workspaceConsolidatedConfiguration||(this._workspaceConsolidatedConfiguration=this._defaultConfiguration.merge(this.userConfiguration,this._workspaceConfiguration,this._memoryConfiguration),this._freeze&&(this._workspaceConfiguration=this._workspaceConfiguration.freeze())),this._workspaceConsolidatedConfiguration},e.prototype.getFolderConsolidatedConfiguration=function(e){var t=this._foldersConsolidatedConfigurations.get(e);if(!t){var n=this.getWorkspaceConsolidatedConfiguration(),i=this._folderConfigurations.get(e);i?(t=n.merge(i),this._freeze&&(t=t.freeze()),this._foldersConsolidatedConfigurations.set(e,t)):t=n}return t},e.prototype.getFolderConfigurationModelForResource=function(e,t){if(t&&e){var n=t.getFolder(e);if(n)return this._folderConfigurations.get(n.uri)}},e}(),Mh=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Th=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r._contextKeyService=t,r._commandService=n,r._telemetryService=i,r._notificationService=o,r._onDidUpdateKeybindings=r._register(new nt),r._currentChord=null,r._currentChordChecker=new bi,r._currentChordStatusMessage=null,r}return Mh(t,e),Object.defineProperty(t.prototype,"onDidUpdateKeybindings",{get:function(){return this._onDidUpdateKeybindings?this._onDidUpdateKeybindings.event:Ge.None},enumerable:!0,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.getKeybindings=function(){return this._getResolver().getKeybindings()},t.prototype.lookupKeybinding=function(e){var t=this._getResolver().lookupPrimaryKeybinding(e);if(t)return t.resolvedKeybinding},t.prototype.softDispatch=function(e,t){var n=this.resolveKeyboardEvent(e);if(n.isChord())return console.warn("Unexpected keyboard event mapped to a chord"),null;var i=n.getDispatchParts()[0];if(null===i)return null;var o=this._contextKeyService.getContext(t),r=this._currentChord?this._currentChord.keypress:null;return this._getResolver().resolve(o,r,i)},t.prototype._enterChordMode=function(e,t){var n=this;this._currentChord={keypress:e,label:t},this._currentChordStatusMessage=this._notificationService.status(r("first.chord","({0}) was pressed. Waiting for second key of chord...",t));var i=Date.now();this._currentChordChecker.cancelAndSet((function(){n._documentHasFocus()?Date.now()-i>5e3&&n._leaveChordMode():n._leaveChordMode()}),500)},t.prototype._leaveChordMode=function(){this._currentChordStatusMessage&&(this._currentChordStatusMessage.dispose(),this._currentChordStatusMessage=null),this._currentChordChecker.cancel(),this._currentChord=null},t.prototype._dispatch=function(e,t){return this._doDispatch(this.resolveKeyboardEvent(e),t)},t.prototype._doDispatch=function(e,t){var n=this,i=!1;if(e.isChord())return console.warn("Unexpected keyboard event mapped to a chord"),!1;var o=e.getDispatchParts()[0];if(null===o)return i;var s=this._contextKeyService.getContext(t),a=this._currentChord?this._currentChord.keypress:null,u=e.getLabel(),l=this._getResolver().resolve(s,a,o);return l&&l.enterChord?(i=!0,this._enterChordMode(o,u),i):(this._currentChord&&(l&&l.commandId||(this._notificationService.status(r("missing.chord","The key combination ({0}, {1}) is not a command.",this._currentChord.label,u),{hideAfter:1e4}),i=!0)),this._leaveChordMode(),l&&l.commandId&&(l.bubble||(i=!0),void 0===l.commandArgs?this._commandService.executeCommand(l.commandId).then(void 0,(function(e){return n._notificationService.warn(e)})):this._commandService.executeCommand(l.commandId,l.commandArgs).then(void 0,(function(e){return n._notificationService.warn(e)})),this._telemetryService.publicLog2("workbenchActionExecuted",{id:l.commandId,from:"keybinding"})),i)},t.prototype.mightProducePrintableCharacter=function(e){return!e.ctrlKey&&!e.metaKey&&(e.keyCode>=31&&e.keyCode<=56||e.keyCode>=21&&e.keyCode<=30)},t}(He),Ph=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Rh=function(){function e(){}return e.has=function(e){return Fh.create(e)},e.equals=function(e,t){return Wh.create(e,t)},e.regex=function(e,t){return Hh.create(e,t)},e.not=function(e){return Bh.create(e)},e.and=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return jh.create(e)},e.or=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return Uh.create(e)},e.deserialize=function(e,t){if(void 0===t&&(t=!1),e)return this._deserializeOrExpression(e,t)},e._deserializeOrExpression=function(e,t){var n=this,i=e.split("||");return Uh.create(i.map((function(e){return n._deserializeAndExpression(e,t)})))},e._deserializeAndExpression=function(e,t){var n=this,i=e.split("&&");return jh.create(i.map((function(e){return n._deserializeOne(e,t)})))},e._deserializeOne=function(e,t){if((e=e.trim()).indexOf("!=")>=0){var n=e.split("!=");return Vh.create(n[0].trim(),this._deserializeValue(n[1],t))}if(e.indexOf("==")>=0){n=e.split("==");return Wh.create(n[0].trim(),this._deserializeValue(n[1],t))}if(e.indexOf("=~")>=0){n=e.split("=~");return Hh.create(n[0].trim(),this._deserializeRegexValue(n[1],t))}return/^\!\s*/.test(e)?Bh.create(e.substr(1).trim()):Fh.create(e)},e._deserializeValue=function(e,t){if("true"===(e=e.trim()))return!0;if("false"===e)return!1;var n=/^'([^']*)'$/.exec(e);return n?n[1].trim():e},e._deserializeRegexValue=function(e,t){if(cr(e)){if(t)throw new Error("missing regexp-value for =~-expression");return console.warn("missing regexp-value for =~-expression"),null}var n=e.indexOf("/"),i=e.lastIndexOf("/");if(n===i||n<0){if(t)throw new Error("bad regexp-value '"+e+"', missing /-enclosure");return console.warn("bad regexp-value '"+e+"', missing /-enclosure"),null}var o=e.slice(n+1,i),r="i"===e[i+1]?"i":"";try{return new RegExp(o,r)}catch(n){if(t)throw new Error("bad regexp-value '"+e+"', parse error: "+n);return console.warn("bad regexp-value '"+e+"', parse error: "+n),null}},e}();function Ah(e,t){var n=e.getType(),i=t.getType();if(n!==i)return n-i;switch(n){case 1:case 2:case 3:case 4:case 6:case 7:case 5:return e.cmp(t);default:throw new Error("Unknown ContextKeyExpr!")}}var Fh=function(){function e(e){this.key=e}return e.create=function(t){return new e(t)},e.prototype.getType=function(){return 1},e.prototype.cmp=function(e){return this.key<e.key?-1:this.key>e.key?1:0},e.prototype.equals=function(t){return t instanceof e&&this.key===t.key},e.prototype.evaluate=function(e){return!!e.getValue(this.key)},e.prototype.keys=function(){return[this.key]},e.prototype.negate=function(){return Bh.create(this.key)},e}(),Wh=function(){function e(e,t){this.key=e,this.value=t}return e.create=function(t,n){return"boolean"==typeof n?n?Fh.create(t):Bh.create(t):new e(t,n)},e.prototype.getType=function(){return 3},e.prototype.cmp=function(e){return this.key<e.key?-1:this.key>e.key?1:this.value<e.value?-1:this.value>e.value?1:0},e.prototype.equals=function(t){return t instanceof e&&(this.key===t.key&&this.value===t.value)},e.prototype.evaluate=function(e){return e.getValue(this.key)==this.value},e.prototype.keys=function(){return[this.key]},e.prototype.negate=function(){return Vh.create(this.key,this.value)},e}(),Vh=function(){function e(e,t){this.key=e,this.value=t}return e.create=function(t,n){return"boolean"==typeof n?n?Bh.create(t):Fh.create(t):new e(t,n)},e.prototype.getType=function(){return 4},e.prototype.cmp=function(e){return this.key<e.key?-1:this.key>e.key?1:this.value<e.value?-1:this.value>e.value?1:0},e.prototype.equals=function(t){return t instanceof e&&(this.key===t.key&&this.value===t.value)},e.prototype.evaluate=function(e){return e.getValue(this.key)!=this.value},e.prototype.keys=function(){return[this.key]},e.prototype.negate=function(){return Wh.create(this.key,this.value)},e}(),Bh=function(){function e(e){this.key=e}return e.create=function(t){return new e(t)},e.prototype.getType=function(){return 2},e.prototype.cmp=function(e){return this.key<e.key?-1:this.key>e.key?1:0},e.prototype.equals=function(t){return t instanceof e&&this.key===t.key},e.prototype.evaluate=function(e){return!e.getValue(this.key)},e.prototype.keys=function(){return[this.key]},e.prototype.negate=function(){return Fh.create(this.key)},e}(),Hh=function(){function e(e,t){this.key=e,this.regexp=t}return e.create=function(t,n){return new e(t,n)},e.prototype.getType=function(){return 6},e.prototype.cmp=function(e){if(this.key<e.key)return-1;if(this.key>e.key)return 1;var t=this.regexp?this.regexp.source:"",n=e.regexp?e.regexp.source:"";return t<n?-1:t>n?1:0},e.prototype.equals=function(t){if(t instanceof e){var n=this.regexp?this.regexp.source:"",i=t.regexp?t.regexp.source:"";return this.key===t.key&&n===i}return!1},e.prototype.evaluate=function(e){var t=e.getValue(this.key);return!!this.regexp&&this.regexp.test(t)},e.prototype.keys=function(){return[this.key]},e.prototype.negate=function(){return zh.create(this)},e}(),zh=function(){function e(e){this._actual=e}return e.create=function(t){return new e(t)},e.prototype.getType=function(){return 7},e.prototype.cmp=function(e){return this._actual.cmp(e._actual)},e.prototype.equals=function(t){return t instanceof e&&this._actual.equals(t._actual)},e.prototype.evaluate=function(e){return!this._actual.evaluate(e)},e.prototype.keys=function(){return this._actual.keys()},e.prototype.negate=function(){return this._actual},e}(),jh=function(){function e(e){this.expr=e}return e.create=function(t){var n=e._normalizeArr(t);if(0!==n.length)return 1===n.length?n[0]:new e(n)},e.prototype.getType=function(){return 5},e.prototype.cmp=function(e){if(this.expr.length<e.expr.length)return-1;if(this.expr.length>e.expr.length)return 1;for(var t=0,n=this.expr.length;t<n;t++){var i=Ah(this.expr[t],e.expr[t]);if(0!==i)return i}return 0},e.prototype.equals=function(t){if(t instanceof e){if(this.expr.length!==t.expr.length)return!1;for(var n=0,i=this.expr.length;n<i;n++)if(!this.expr[n].equals(t.expr[n]))return!1;return!0}return!1},e.prototype.evaluate=function(e){for(var t=0,n=this.expr.length;t<n;t++)if(!this.expr[t].evaluate(e))return!1;return!0},e._normalizeArr=function(t){var n=[];if(t){for(var i=0,o=t.length;i<o;i++){var r=t[i];if(r)if(r instanceof e)n=n.concat(r.expr);else{if(r instanceof Uh)throw new Error('It is not allowed to have an or expression here due to lack of parens! For example "a && (b||c)" is not supported, use "(a&&b) || (a&&c)" instead.');n.push(r)}}n.sort(Ah)}return n},e.prototype.keys=function(){for(var e=[],t=0,n=this.expr;t<n.length;t++){var i=n[t];e.push.apply(e,i.keys())}return e},e.prototype.negate=function(){for(var e=[],t=0,n=this.expr;t<n.length;t++){var i=n[t];e.push(i.negate())}return Uh.create(e)},e}(),Uh=function(){function e(e){this.expr=e}return e.create=function(t){var n=e._normalizeArr(t);if(0!==n.length)return 1===n.length?n[0]:new e(n)},e.prototype.getType=function(){return 8},e.prototype.equals=function(t){if(t instanceof e){if(this.expr.length!==t.expr.length)return!1;for(var n=0,i=this.expr.length;n<i;n++)if(!this.expr[n].equals(t.expr[n]))return!1;return!0}return!1},e.prototype.evaluate=function(e){for(var t=0,n=this.expr.length;t<n;t++)if(this.expr[t].evaluate(e))return!0;return!1},e._normalizeArr=function(t){var n=[];if(t){for(var i=0,o=t.length;i<o;i++){var r=t[i];r&&(r instanceof e?n=n.concat(r.expr):n.push(r))}n.sort(Ah)}return n},e.prototype.keys=function(){for(var e=[],t=0,n=this.expr;t<n.length;t++){var i=n[t];e.push.apply(e,i.keys())}return e},e.prototype.negate=function(){for(var t=[],n=0,i=this.expr;n<i.length;n++){var o=i[n];t.push(o.negate())}for(var r=function(t){return t instanceof e?t.expr:[t]};t.length>1;){for(var s=t.shift(),a=t.shift(),u=[],l=0,c=r(s);l<c.length;l++)for(var d=c[l],h=0,p=r(a);h<p.length;h++){var f=p[h];u.push(Rh.and(d,f))}t.unshift(Rh.or.apply(Rh,u))}return t[0]},e}(),Kh=function(e){function t(t,n){var i=e.call(this,t)||this;return i._defaultValue=n,i}return Ph(t,e),t.prototype.bindTo=function(e){return e.createKey(this.key,this._defaultValue)},t.prototype.getValue=function(e){return e.getContextKeyValue(this.key)},t.prototype.toNegated=function(){return Rh.not(this.key)},t}(Fh),qh=Mn("contextKeyService"),Gh=function(){function e(t,n){this._defaultKeybindings=t,this._defaultBoundCommands=new Map;for(var i=0,o=t.length;i<o;i++){var r=t[i].command;r&&this._defaultBoundCommands.set(r,!0)}this._map=new Map,this._lookupMap=new Map,this._keybindings=e.combine(t,n);for(i=0,o=this._keybindings.length;i<o;i++){var s=this._keybindings[i];0!==s.keypressParts.length&&this._addKeyPress(s.keypressParts[0],s)}}return e._isTargetedForRemoval=function(e,t,n,i,o){if(e.command!==i)return!1;if(t&&e.keypressParts[0]!==t)return!1;if(n&&e.keypressParts[1]!==n)return!1;if(o){if(!e.when)return!1;if(!o.equals(e.when))return!1}return!0},e.combine=function(e,t){e=e.slice(0);for(var n=[],i=0,o=t;i<o.length;i++){var r=o[i];if(r.command&&0!==r.command.length&&"-"===r.command.charAt(0))for(var s=r.command.substr(1),a=r.keypressParts[0],u=r.keypressParts[1],l=r.when,c=e.length-1;c>=0;c--)this._isTargetedForRemoval(e[c],a,u,s,l)&&e.splice(c,1);else n.push(r)}return e.concat(n)},e.prototype._addKeyPress=function(t,n){var i=this._map.get(t);if(void 0===i)return this._map.set(t,[n]),void this._addToLookupMap(n);for(var o=i.length-1;o>=0;o--){var r=i[o];if(r.command!==n.command){var s=r.keypressParts.length>1,a=n.keypressParts.length>1;s&&a&&r.keypressParts[1]!==n.keypressParts[1]||e.whenIsEntirelyIncluded(r.when,n.when)&&this._removeFromLookupMap(r)}}i.push(n),this._addToLookupMap(n)},e.prototype._addToLookupMap=function(e){if(e.command){var t=this._lookupMap.get(e.command);void 0===t?(t=[e],this._lookupMap.set(e.command,t)):t.push(e)}},e.prototype._removeFromLookupMap=function(e){if(e.command){var t=this._lookupMap.get(e.command);if(void 0!==t)for(var n=0,i=t.length;n<i;n++)if(t[n]===e)return void t.splice(n,1)}},e.whenIsEntirelyIncluded=function(e,t){return!t||!!e&&this._implies(e,t)},e._implies=function(e,t){for(var n=function(e){return e instanceof Uh?e.expr:[e]},i=n(e.negate()).concat(n(t)),o=0;o<i.length;o++)for(var r=i[o].negate(),s=o+1;s<i.length;s++){var a=i[s];if(r.equals(a))return!0}return!1},e.prototype.getKeybindings=function(){return this._keybindings},e.prototype.lookupPrimaryKeybinding=function(e){var t=this._lookupMap.get(e);return void 0===t||0===t.length?null:t[t.length-1]},e.prototype.resolve=function(e,t,n){var i=null;if(null!==t){if(void 0===(a=this._map.get(t)))return null;i=[];for(var o=0,r=a.length;o<r;o++){var s=a[o];s.keypressParts[1]===n&&i.push(s)}}else{var a;if(void 0===(a=this._map.get(n)))return null;i=a}var u=this._findCommand(e,i);return u?null===t&&u.keypressParts.length>1&&null!==u.keypressParts[1]?{enterChord:!0,commandId:null,commandArgs:null,bubble:!1}:{enterChord:!1,commandId:u.command,commandArgs:u.commandArgs,bubble:u.bubble}:null},e.prototype._findCommand=function(t,n){for(var i=n.length-1;i>=0;i--){var o=n[i];if(e.contextMatchesRules(t,o.when))return o}return null},e.contextMatchesRules=function(e,t){return!t||t.evaluate(e)},e}(),Zh=new(function(){function e(){this._coreKeybindings=[],this._extensionKeybindings=[],this._cachedMergedKeybindings=null}return e.bindToCurrentPlatform=function(e){if(1===x){if(e&&e.win)return e.win}else if(2===x){if(e&&e.mac)return e.mac}else if(e&&e.linux)return e.linux;return e},e.prototype.registerKeybindingRule=function(t){var n=e.bindToCurrentPlatform(t);n&&n.primary&&((r=mt(n.primary,x))&&this._registerDefaultKeybinding(r,t.id,t.args,t.weight,0,t.when));if(n&&Array.isArray(n.secondary))for(var i=0,o=n.secondary.length;i<o;i++){var r;(r=mt(n.secondary[i],x))&&this._registerDefaultKeybinding(r,t.id,t.args,t.weight,-i-1,t.when)}},e.prototype.registerCommandAndKeybindingRule=function(e){this.registerKeybindingRule(e),ca.registerCommand(e)},e._mightProduceChar=function(e){return e>=21&&e<=30||(e>=31&&e<=56||(80===e||81===e||82===e||83===e||84===e||85===e||86===e||110===e||111===e||87===e||88===e||89===e||90===e||91===e||92===e))},e.prototype._assertNoCtrlAlt=function(t,n){t.ctrlKey&&t.altKey&&!t.metaKey&&e._mightProduceChar(t.keyCode)&&console.warn("Ctrl+Alt+ keybindings should not be used by default under Windows. Offender: ",t," for ",n)},e.prototype._registerDefaultKeybinding=function(e,t,n,i,o,r){1===x&&this._assertNoCtrlAlt(e.parts[0],t),this._coreKeybindings.push({keybinding:e,command:t,commandArgs:n,when:r,weight1:i,weight2:o}),this._cachedMergedKeybindings=null},e.prototype.getDefaultKeybindings=function(){return this._cachedMergedKeybindings||(this._cachedMergedKeybindings=[].concat(this._coreKeybindings).concat(this._extensionKeybindings),this._cachedMergedKeybindings.sort(Yh)),this._cachedMergedKeybindings.slice(0)},e}());function Yh(e,t){return e.weight1!==t.weight1?e.weight1-t.weight1:e.command<t.command?-1:e.command>t.command?1:e.weight2-t.weight2}Td.add("platform.keybindingsRegistry",Zh);var Xh=function(e,t,n,i,o){this.resolvedKeybinding=e,this.keypressParts=e?function(e){for(var t=[],n=0,i=e.length;n<i;n++){var o=e[n];if(!o)return t;t.push(o)}return t}(e.getDispatchParts()):[],this.bubble=!!t&&94===t.charCodeAt(0),this.command=this.bubble?t.substr(1):t,this.commandArgs=n,this.when=i,this.isDefault=o};var $h=function(){function e(e,t,n){void 0===n&&(n=t),this.modifierLabels=[null],this.modifierLabels[2]=e,this.modifierLabels[1]=t,this.modifierLabels[3]=n}return e.prototype.toLabel=function(e,t,n){if(0===t.length)return null;for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=n(s);if(null===a)return null;i[o]=ep(s,a,this.modifierLabels[e])}return i.join(" ")},e}(),Qh=new $h({ctrlKey:"⌃",shiftKey:"⇧",altKey:"⌥",metaKey:"⌘",separator:""},{ctrlKey:r({key:"ctrlKey",comment:["This is the short form for the Control key on the keyboard"]},"Ctrl"),shiftKey:r({key:"shiftKey",comment:["This is the short form for the Shift key on the keyboard"]},"Shift"),altKey:r({key:"altKey",comment:["This is the short form for the Alt key on the keyboard"]},"Alt"),metaKey:r({key:"windowsKey",comment:["This is the short form for the Windows key on the keyboard"]},"Windows"),separator:"+"},{ctrlKey:r({key:"ctrlKey",comment:["This is the short form for the Control key on the keyboard"]},"Ctrl"),shiftKey:r({key:"shiftKey",comment:["This is the short form for the Shift key on the keyboard"]},"Shift"),altKey:r({key:"altKey",comment:["This is the short form for the Alt key on the keyboard"]},"Alt"),metaKey:r({key:"superKey",comment:["This is the short form for the Super key on the keyboard"]},"Super"),separator:"+"}),Jh=new $h({ctrlKey:r({key:"ctrlKey.long",comment:["This is the long form for the Control key on the keyboard"]},"Control"),shiftKey:r({key:"shiftKey.long",comment:["This is the long form for the Shift key on the keyboard"]},"Shift"),altKey:r({key:"altKey.long",comment:["This is the long form for the Alt key on the keyboard"]},"Alt"),metaKey:r({key:"cmdKey.long",comment:["This is the long form for the Command key on the keyboard"]},"Command"),separator:"+"},{ctrlKey:r({key:"ctrlKey.long",comment:["This is the long form for the Control key on the keyboard"]},"Control"),shiftKey:r({key:"shiftKey.long",comment:["This is the long form for the Shift key on the keyboard"]},"Shift"),altKey:r({key:"altKey.long",comment:["This is the long form for the Alt key on the keyboard"]},"Alt"),metaKey:r({key:"windowsKey.long",comment:["This is the long form for the Windows key on the keyboard"]},"Windows"),separator:"+"},{ctrlKey:r({key:"ctrlKey.long",comment:["This is the long form for the Control key on the keyboard"]},"Control"),shiftKey:r({key:"shiftKey.long",comment:["This is the long form for the Shift key on the keyboard"]},"Shift"),altKey:r({key:"altKey.long",comment:["This is the long form for the Alt key on the keyboard"]},"Alt"),metaKey:r({key:"superKey.long",comment:["This is the long form for the Super key on the keyboard"]},"Super"),separator:"+"});function ep(e,t,n){if(null===t)return"";var i=[];return e.ctrlKey&&i.push(n.ctrlKey),e.shiftKey&&i.push(n.shiftKey),e.altKey&&i.push(n.altKey),e.metaKey&&i.push(n.metaKey),i.push(t),i.join(n.separator)}var tp,np,ip=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),op=function(e){function t(t,n){var i=e.call(this)||this;if(0===n.length)throw Oe("parts");return i._os=t,i._parts=n,i}return ip(t,e),t.prototype.getLabel=function(){var e=this;return Qh.toLabel(this._os,this._parts,(function(t){return e._getLabel(t)}))},t.prototype.getAriaLabel=function(){var e=this;return Jh.toLabel(this._os,this._parts,(function(t){return e._getAriaLabel(t)}))},t.prototype.isChord=function(){return this._parts.length>1},t.prototype.getParts=function(){var e=this;return this._parts.map((function(t){return e._getPart(t)}))},t.prototype._getPart=function(e){return new wt(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,this._getLabel(e),this._getAriaLabel(e))},t.prototype.getDispatchParts=function(){var e=this;return this._parts.map((function(t){return e._getDispatchPart(t)}))},t}(Ct),rp=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),sp=function(e){function t(t,n){return e.call(this,n,t.parts)||this}return rp(t,e),t.prototype._keyCodeToUILabel=function(e){if(2===this._os)switch(e){case 15:return"←";case 16:return"↑";case 17:return"→";case 18:return"↓"}return ut.toString(e)},t.prototype._getLabel=function(e){return e.isDuplicateModifierCase()?"":this._keyCodeToUILabel(e.keyCode)},t.prototype._getAriaLabel=function(e){return e.isDuplicateModifierCase()?"":ut.toString(e.keyCode)},t.prototype._getDispatchPart=function(e){return t.getDispatchStr(e)},t.getDispatchStr=function(e){if(e.isModifierKey())return null;var t="";return e.ctrlKey&&(t+="ctrl+"),e.shiftKey&&(t+="shift+"),e.altKey&&(t+="alt+"),e.metaKey&&(t+="meta+"),t+=ut.toString(e.keyCode)},t}(op),ap=Mn("notificationService"),up=function(){},lp=Mn("contextService");!function(e){e.isIWorkspace=function(e){return e&&"object"==typeof e&&"string"==typeof e.id&&Array.isArray(e.folders)}}(tp||(tp={})),(np||(np={})).isIWorkspaceFolder=function(e){return e&&"object"==typeof e&&Et.isUri(e.uri)&&"string"==typeof e.name&&"function"==typeof e.toResource};!function(){function e(e,t,n){void 0===t&&(t=[]),void 0===n&&(n=null),this._id=e,this._configuration=n,this._foldersMap=ra.forPaths(),this.folders=t}Object.defineProperty(e.prototype,"folders",{get:function(){return this._folders},set:function(e){this._folders=e,this.updateFoldersMap()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"id",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"configuration",{get:function(){return this._configuration},set:function(e){this._configuration=e},enumerable:!0,configurable:!0}),e.prototype.getFolder=function(e){return e&&this._foldersMap.findSubstr(e.with({scheme:e.scheme,authority:e.authority,path:e.path}).toString())||null},e.prototype.updateFoldersMap=function(){this._foldersMap=ra.forPaths();for(var e=0,t=this.folders;e<t.length;e++){var n=t[e];this._foldersMap.set(n.uri.toString(),n)}},e.prototype.toJSON=function(){return{id:this.id,folders:this.folders,configuration:this.configuration}}}();var cp,dp,hp,pp,fp,gp,mp,vp,_p,yp,bp,wp,Cp,Sp=function(){function e(e,t){this.raw=t,this.uri=e.uri,this.index=e.index,this.name=e.name}return e.prototype.toResource=function(e){return function(e){for(var t,n,o=[],r=1;r<arguments.length;r++)o[r-1]=arguments[r];return n=e.scheme===Ci.file?Et.file(fs.apply(i,ws([ks(e)],o))).path:(t=hs).join.apply(t,ws([e.path||"/"],o)),e.with({path:n})}(this.uri,e)},e.prototype.toJSON=function(){return{uri:this.uri,name:this.name,index:this.index}},e}();(dp=cp||(cp={})).noSelection=r("noSelection","No selection"),dp.singleSelectionRange=r("singleSelectionRange","Line {0}, Column {1} ({2} selected)"),dp.singleSelection=r("singleSelection","Line {0}, Column {1}"),dp.multiSelectionRange=r("multiSelectionRange","{0} selections ({1} characters selected)"),dp.multiSelection=r("multiSelection","{0} selections"),dp.emergencyConfOn=r("emergencyConfOn","Now changing the setting `accessibilitySupport` to 'on'."),dp.openingDocs=r("openingDocs","Now opening the Editor Accessibility documentation page."),dp.readonlyDiffEditor=r("readonlyDiffEditor"," in a read-only pane of a diff editor."),dp.editableDiffEditor=r("editableDiffEditor"," in a pane of a diff editor."),dp.readonlyEditor=r("readonlyEditor"," in a read-only code editor"),dp.editableEditor=r("editableEditor"," in a code editor"),dp.changeConfigToOnMac=r("changeConfigToOnMac","To configure the editor to be optimized for usage with a Screen Reader press Command+E now."),dp.changeConfigToOnWinLinux=r("changeConfigToOnWinLinux","To configure the editor to be optimized for usage with a Screen Reader press Control+E now."),dp.auto_on=r("auto_on","The editor is configured to be optimized for usage with a Screen Reader."),dp.auto_off=r("auto_off","The editor is configured to never be optimized for usage with a Screen Reader, which is not the case at this time."),dp.tabFocusModeOnMsg=r("tabFocusModeOnMsg","Pressing Tab in the current editor will move focus to the next focusable element. Toggle this behavior by pressing {0}."),dp.tabFocusModeOnMsgNoKb=r("tabFocusModeOnMsgNoKb","Pressing Tab in the current editor will move focus to the next focusable element. The command {0} is currently not triggerable by a keybinding."),dp.tabFocusModeOffMsg=r("tabFocusModeOffMsg","Pressing Tab in the current editor will insert the tab character. Toggle this behavior by pressing {0}."),dp.tabFocusModeOffMsgNoKb=r("tabFocusModeOffMsgNoKb","Pressing Tab in the current editor will insert the tab character. The command {0} is currently not triggerable by a keybinding."),dp.openDocMac=r("openDocMac","Press Command+H now to open a browser window with more information related to editor accessibility."),dp.openDocWinLinux=r("openDocWinLinux","Press Control+H now to open a browser window with more information related to editor accessibility."),dp.outroMsg=r("outroMsg","You can dismiss this tooltip and return to the editor by pressing Escape or Shift+Escape."),dp.showAccessibilityHelpAction=r("showAccessibilityHelpAction","Show Accessibility Help"),(hp||(hp={})).inspectTokensAction=r("inspectTokens","Developer: Inspect Tokens"),(fp=pp||(pp={})).gotoLineLabelValidLineAndColumn=r("gotoLineLabelValidLineAndColumn","Go to line {0} and character {1}"),fp.gotoLineLabelValidLine=r("gotoLineLabelValidLine","Go to line {0}"),fp.gotoLineLabelEmptyWithLineLimit=r("gotoLineLabelEmptyWithLineLimit","Type a line number between 1 and {0} to navigate to"),fp.gotoLineLabelEmptyWithLineAndColumnLimit=r("gotoLineLabelEmptyWithLineAndColumnLimit","Type a character between 1 and {0} to navigate to"),fp.gotoLineAriaLabel=r("gotoLineAriaLabel","Current Line: {0}. Go to line {1}."),fp.gotoLineActionInput=r("gotoLineActionInput","Type a line number, followed by an optional colon and a character number to navigate to"),fp.gotoLineActionLabel=r("gotoLineActionLabel","Go to Line..."),(mp=gp||(gp={})).ariaLabelEntryWithKey=r("ariaLabelEntryWithKey","{0}, {1}, commands"),mp.ariaLabelEntry=r("ariaLabelEntry","{0}, commands"),mp.quickCommandActionInput=r("quickCommandActionInput","Type the name of an action you want to execute"),mp.quickCommandActionLabel=r("quickCommandActionLabel","Command Palette"),(_p=vp||(vp={})).entryAriaLabel=r("entryAriaLabel","{0}, symbols"),_p.quickOutlineActionInput=r("quickOutlineActionInput","Type the name of an identifier you wish to navigate to"),_p.quickOutlineActionLabel=r("quickOutlineActionLabel","Go to Symbol..."),_p._symbols_=r("symbols","symbols ({0})"),_p._modules_=r("modules","modules ({0})"),_p._class_=r("class","classes ({0})"),_p._interface_=r("interface","interfaces ({0})"),_p._method_=r("method","methods ({0})"),_p._function_=r("function","functions ({0})"),_p._property_=r("property","properties ({0})"),_p._variable_=r("variable","variables ({0})"),_p._variable2_=r("variable2","variables ({0})"),_p._constructor_=r("_constructor","constructors ({0})"),_p._call_=r("call","calls ({0})"),(bp=yp||(yp={})).editorViewAccessibleLabel=r("editorViewAccessibleLabel","Editor content"),bp.accessibilityHelpMessageIE=r("accessibilityHelpMessageIE","Press Ctrl+F1 for Accessibility Options."),bp.accessibilityHelpMessage=r("accessibilityHelpMessage","Press Alt+F1 for Accessibility Options."),(wp||(wp={})).toggleHighContrast=r("toggleHighContrast","Toggle High Contrast Theme"),(Cp||(Cp={})).bulkEditServiceSummary=r("bulkEditServiceSummary","Made {0} edits in {1} files");var Lp=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),xp=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Dp=function(e,t){return function(n,i){t(n,i,e)}},Np=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},kp=function(){function e(e){this.model=e,this._onDispose=new nt}return Object.defineProperty(e.prototype,"textEditorModel",{get:function(){return this.model},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){this._onDispose.fire()},e}();var Ep=function(){function e(e){this.modelService=e}return e.prototype.setEditor=function(e){this.editor=e},e.prototype.createModelReference=function(e){var t,n,i,o=this,r=null;return this.editor&&(t=this.editor,n=function(t){return o.findModel(t,e)},i=function(t){return o.findModel(t.getOriginalEditor(),e)||o.findModel(t.getModifiedEditor(),e)},r=Md(t)?n(t):i(t)),r?Promise.resolve(new je(new kp(r))):Promise.reject(new Error("Model not found"))},e.prototype.findModel=function(e,t){var n=this.modelService?this.modelService.getModel(t):e.getModel();return n&&n.uri.toString()!==t.toString()?null:n},e}(),Ip=function(){function e(){}return e.prototype.show=function(){return e.NULL_PROGRESS_RUNNER},e.prototype.showWhile=function(e,t){return Promise.resolve(void 0)},e.NULL_PROGRESS_RUNNER={done:function(){},total:function(){},worked:function(){}},e}(),Op=function(){},Mp=function(){function e(){}return e.prototype.info=function(e){return this.notify({severity:Od.Info,message:e})},e.prototype.warn=function(e){return this.notify({severity:Od.Warning,message:e})},e.prototype.error=function(e){return this.notify({severity:Od.Error,message:e})},e.prototype.notify=function(t){switch(t.severity){case Od.Error:console.error(t.message);break;case Od.Warning:console.warn(t.message);break;default:console.log(t.message)}return e.NO_OP},e.prototype.status=function(e,t){return He.None},e.NO_OP=new up,e}(),Tp=function(){function e(e){this._onWillExecuteCommand=new nt,this._onDidExecuteCommand=new nt,this._instantiationService=e,this._dynamicCommands=Object.create(null)}return e.prototype.addCommand=function(e){var t=this,n=e.id;return this._dynamicCommands[n]=e,We((function(){delete t._dynamicCommands[n]}))},e.prototype.executeCommand=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=ca.getCommand(e)||this._dynamicCommands[e];if(!i)return Promise.reject(new Error("command '"+e+"' not found"));try{this._onWillExecuteCommand.fire({commandId:e,args:t});var o=this._instantiationService.invokeFunction.apply(this._instantiationService,Np([i.handler],t));return this._onDidExecuteCommand.fire({commandId:e,args:t}),Promise.resolve(o)}catch(e){return Promise.reject(e)}},e}(),Pp=function(e){function t(t,n,i,o,r){var s=e.call(this,t,n,i,o)||this;return s._cachedResolver=null,s._dynamicKeybindings=[],s._register(uo(r,qo.KEY_DOWN,(function(e){var t=new ni(e);s._dispatch(t,t.target)&&(t.preventDefault(),t.stopPropagation())}))),s}return Lp(t,e),t.prototype.addDynamicKeybinding=function(e,t,n,i){var o=this,r=mt(t,x),s=new Be;r&&(this._dynamicKeybindings.push({keybinding:r,command:e,when:i,weight1:1e3,weight2:0}),s.add(We((function(){for(var t=0;t<o._dynamicKeybindings.length;t++){if(o._dynamicKeybindings[t].command===e)return o._dynamicKeybindings.splice(t,1),void o.updateResolver({source:1})}}))));var a=this._commandService;if(!(a instanceof Tp))throw new Error("Unknown command service!");return s.add(a.addCommand({id:e,handler:n})),this.updateResolver({source:1}),s},t.prototype.updateResolver=function(e){this._cachedResolver=null,this._onDidUpdateKeybindings.fire(e)},t.prototype._getResolver=function(){if(!this._cachedResolver){var e=this._toNormalizedKeybindingItems(Zh.getDefaultKeybindings(),!0),t=this._toNormalizedKeybindingItems(this._dynamicKeybindings,!1);this._cachedResolver=new Gh(e,t)}return this._cachedResolver},t.prototype._documentHasFocus=function(){return document.hasFocus()},t.prototype._toNormalizedKeybindingItems=function(e,t){for(var n=[],i=0,o=0,r=e;o<r.length;o++){var s=r[o],a=s.when||void 0,u=s.keybinding;if(u)for(var l=0,c=this.resolveKeybinding(u);l<c.length;l++){var d=c[l];n[i++]=new Xh(d,s.command,s.commandArgs,a,t)}else n[i++]=new Xh(void 0,s.command,s.commandArgs,a,t)}return n},t.prototype.resolveKeybinding=function(e){return[new sp(e,x)]},t.prototype.resolveKeyboardEvent=function(e){var t=new yt(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,e.keyCode).toChord();return new sp(t,x)},t}(Th);function Rp(e){return e&&"object"==typeof e&&(!e.overrideIdentifier||"string"==typeof e.overrideIdentifier)&&(!e.resource||e.resource instanceof Et)}var Ap=function(){function e(){this._onDidChangeConfiguration=new nt,this.onDidChangeConfiguration=this._onDidChangeConfiguration.event,this._configuration=new Oh(new Ih,new Eh)}return e.prototype.configuration=function(){return this._configuration},e.prototype.getValue=function(e,t){var n="string"==typeof e?e:void 0,i=Rp(e)?e:Rp(t)?t:{};return this.configuration().getValue(n,i,void 0)},e.prototype.updateValue=function(e,t,n,i){return this.configuration().updateValue(e,t),Promise.resolve()},e.prototype.inspect=function(e,t){return void 0===t&&(t={}),this.configuration().inspect(e,t,void 0)},e}(),Fp=function(){function e(e){var t=this;this.configurationService=e,this._onDidChangeConfiguration=new nt,this.configurationService.onDidChangeConfiguration((function(e){t._onDidChangeConfiguration.fire({affectedKeys:e.affectedKeys,affectsConfiguration:function(t,n){return e.affectsConfiguration(n)}})}))}return e.prototype.getValue=function(e,t,n){var i=(bn.isIPosition(t)?t:null)?"string"==typeof n?n:void 0:"string"==typeof t?t:void 0;return void 0===i?this.configurationService.getValue():this.configurationService.getValue(i)},e}(),Wp=function(){function e(e){this.configurationService=e}return e.prototype.getEOL=function(e,t){var n=this.configurationService.getValue("files.eol",{overrideIdentifier:t,resource:e});return n&&"auto"!==n?n:y||_?"\n":"\r\n"},e=xp([Dp(0,wh)],e)}(),Vp=function(){function e(){}return e.prototype.publicLog=function(e,t){return Promise.resolve(void 0)},e.prototype.publicLog2=function(e,t){return this.publicLog(e,t)},e}(),Bp=function(){function e(){var t=Et.from({scheme:e.SCHEME,authority:"model",path:"/"});this.workspace={id:"4064f6ec-cb38-4ad0-af64-ee6467e63c82",folders:[new Sp({uri:t,name:"",index:0})]}}return e.prototype.getWorkspace=function(){return this.workspace},e.prototype.getWorkspaceFolder=function(t){return t&&t.scheme===e.SCHEME?this.workspace.folders[0]:null},e.SCHEME="inmemory",e}();function Hp(e,t,n){t&&e instanceof Ap&&Object.keys(t).forEach((function(i){(function(e){return yh()["editor."+e]||!1})(i)&&e.updateValue("editor."+i,t[i]),n&&function(e){return yh()["diffEditor."+e]||!1}(i)&&e.updateValue("diffEditor."+i,t[i])}))}var zp,jp,Up,Kp=function(){function e(e){this._modelService=e}return e.prototype.hasPreviewHandler=function(){return!1},e.prototype.apply=function(e,t){var n=new Map;if(e.edits)for(var i=0,o=e.edits;i<o.length;i++){var r=o[i];if(!xu.is(r))return Promise.reject(new Error("bad edit - only text edits are supported"));var s=this._modelService.getModel(r.resource);if(!s)return Promise.reject(new Error("bad edit - model not found"));var a=n.get(s);a||(a=[],n.set(s,a)),a.push(r.edit)}var u=0,l=0;return n.forEach((function(e,t){t.pushStackElement(),t.pushEditOperations([],e.map((function(e){return bh.replaceMove(wn.lift(e.range),e.text)})),(function(){return[]})),t.pushStackElement(),l+=1,u+=e.length})),Promise.resolve({selection:void 0,ariaSummary:pr(Cp.bulkEditServiceSummary,u,l)})},e}(),qp=function(){function e(){}return e.prototype.getUriLabel=function(e,t){return"file"===e.scheme?e.fsPath:e.path},e}(),Gp=function(){function e(e){this._container=e,this.onLayout=Ge.None}return Object.defineProperty(e.prototype,"container",{get:function(){return this._container},enumerable:!0,configurable:!0}),e}();n(371);function Zp(e,t){Qp(jp,e,t)}function Yp(e,t){_?Zp(e,t):Qp(Up,e,t)}var Xp=0,$p=void 0;function Qp(e,t,n){if(zp){if(!n)switch($p===t?Xp++:($p=t,Xp=0),Xp){case 0:break;case 1:t=r("repeated","{0} (occurred again)",t);break;default:t=r("repeatedNtimes","{0} (occurred {1} times)",t,Xp)}Yi(e),e.textContent=t,e.style.visibility="hidden",e.style.visibility="visible"}}n(372);var Jp=function(){function e(e,t){this.chr=e,this.type=t,this.width=0}return e.prototype.fulfill=function(e){this.width=e},e}(),ef=function(){function e(e,t){this._bareFontInfo=e,this._requests=t,this._container=null,this._testElements=null}return e.prototype.read=function(){this._createDomElements(),document.body.appendChild(this._container),this._readFromDomElements(),document.body.removeChild(this._container),this._container=null,this._testElements=null},e.prototype._createDomElements=function(){var t=document.createElement("div");t.style.position="absolute",t.style.top="-50000px",t.style.width="50000px";var n=document.createElement("div");n.style.fontFamily=this._bareFontInfo.getMassagedFontFamily(),n.style.fontWeight=this._bareFontInfo.fontWeight,n.style.fontSize=this._bareFontInfo.fontSize+"px",n.style.fontFeatureSettings=this._bareFontInfo.fontFeatureSettings,n.style.lineHeight=this._bareFontInfo.lineHeight+"px",n.style.letterSpacing=this._bareFontInfo.letterSpacing+"px",t.appendChild(n);var i=document.createElement("div");i.style.fontFamily=this._bareFontInfo.getMassagedFontFamily(),i.style.fontWeight="bold",i.style.fontSize=this._bareFontInfo.fontSize+"px",i.style.fontFeatureSettings=this._bareFontInfo.fontFeatureSettings,i.style.lineHeight=this._bareFontInfo.lineHeight+"px",i.style.letterSpacing=this._bareFontInfo.letterSpacing+"px",t.appendChild(i);var o=document.createElement("div");o.style.fontFamily=this._bareFontInfo.getMassagedFontFamily(),o.style.fontWeight=this._bareFontInfo.fontWeight,o.style.fontSize=this._bareFontInfo.fontSize+"px",o.style.fontFeatureSettings=this._bareFontInfo.fontFeatureSettings,o.style.lineHeight=this._bareFontInfo.lineHeight+"px",o.style.letterSpacing=this._bareFontInfo.letterSpacing+"px",o.style.fontStyle="italic",t.appendChild(o);for(var r=[],s=0,a=this._requests;s<a.length;s++){var u=a[s],l=void 0;0===u.type&&(l=n),2===u.type&&(l=i),1===u.type&&(l=o),l.appendChild(document.createElement("br"));var c=document.createElement("span");e._render(c,u),l.appendChild(c),r.push(c)}this._container=t,this._testElements=r},e._render=function(e,t){if(" "===t.chr){for(var n=" ",i=0;i<8;i++)n+=n;e.innerHTML=n}else{var o=t.chr;for(i=0;i<8;i++)o+=o;e.textContent=o}},e.prototype._readFromDomElements=function(){for(var e=0,t=this._requests.length;e<t;e++){var n=this._requests[e],i=this._testElements[e];n.fulfill(i.offsetWidth/256)}},e}();var tf=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),nf=function(e){function t(t,n,i){var o=e.call(this)||this;return o.referenceDomElement=t,o.changeCallback=i,o.width=-1,o.height=-1,o.mutationObserver=null,o.windowSizeListener=null,o.measureReferenceDomElement(!1,n),o}return tf(t,e),t.prototype.dispose=function(){this.stopObserving(),e.prototype.dispose.call(this)},t.prototype.getWidth=function(){return this.width},t.prototype.getHeight=function(){return this.height},t.prototype.startObserving=function(){var e=this;!this.mutationObserver&&this.referenceDomElement&&(this.mutationObserver=new MutationObserver((function(){return e._onDidMutate()})),this.mutationObserver.observe(this.referenceDomElement,{attributes:!0})),this.windowSizeListener||(this.windowSizeListener=uo(window,"resize",(function(){return e._onDidResizeWindow()})))},t.prototype.stopObserving=function(){this.mutationObserver&&(this.mutationObserver.disconnect(),this.mutationObserver=null),this.windowSizeListener&&(this.windowSizeListener.dispose(),this.windowSizeListener=null)},t.prototype.observe=function(e){this.measureReferenceDomElement(!0,e)},t.prototype._onDidMutate=function(){this.measureReferenceDomElement(!0)},t.prototype._onDidResizeWindow=function(){this.measureReferenceDomElement(!0)},t.prototype.measureReferenceDomElement=function(e,t){var n=0,i=0;t?(n=t.width,i=t.height):this.referenceDomElement&&(n=this.referenceDomElement.clientWidth,i=this.referenceDomElement.clientHeight),n=Math.max(5,n),i=Math.max(5,i),this.width===n&&this.height===i||(this.width=n,this.height=i,e&&this.changeCallback())},t}(He),of=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),rf=function(){function e(){this._keys=Object.create(null),this._values=Object.create(null)}return e.prototype.has=function(e){var t=e.getId();return!!this._values[t]},e.prototype.get=function(e){var t=e.getId();return this._values[t]},e.prototype.put=function(e,t){var n=e.getId();this._keys[n]=e,this._values[n]=t},e.prototype.remove=function(e){var t=e.getId();delete this._keys[t],delete this._values[t]},e.prototype.getValues=function(){var e=this;return Object.keys(this._keys).map((function(t){return e._values[t]}))},e}();var sf=function(e){function t(){var t=e.call(this)||this;return t._onDidChange=t._register(new nt),t.onDidChange=t._onDidChange.event,t._cache=new rf,t._evictUntrustedReadingsTimeout=-1,t}return of(t,e),t.prototype.dispose=function(){-1!==this._evictUntrustedReadingsTimeout&&(clearTimeout(this._evictUntrustedReadingsTimeout),this._evictUntrustedReadingsTimeout=-1),e.prototype.dispose.call(this)},t.prototype.clearCache=function(){this._cache=new rf,this._onDidChange.fire()},t.prototype._writeToCache=function(e,t){var n=this;this._cache.put(e,t),t.isTrusted||-1!==this._evictUntrustedReadingsTimeout||(this._evictUntrustedReadingsTimeout=setTimeout((function(){n._evictUntrustedReadingsTimeout=-1,n._evictUntrustedReadings()}),5e3))},t.prototype._evictUntrustedReadings=function(){for(var e=this._cache.getValues(),t=!1,n=0,i=e.length;n<i;n++){var o=e[n];o.isTrusted||(t=!0,this._cache.remove(o))}t&&this._onDidChange.fire()},t.prototype.readConfiguration=function(e){if(!this._cache.has(e)){var n=t._actualReadConfiguration(e);(n.typicalHalfwidthCharacterWidth<=2||n.typicalFullwidthCharacterWidth<=2||n.spaceWidth<=2||n.maxDigitWidth<=2)&&(n=new Wa({zoomLevel:An(),fontFamily:n.fontFamily,fontWeight:n.fontWeight,fontSize:n.fontSize,fontFeatureSettings:n.fontFeatureSettings,lineHeight:n.lineHeight,letterSpacing:n.letterSpacing,isMonospace:n.isMonospace,typicalHalfwidthCharacterWidth:Math.max(n.typicalHalfwidthCharacterWidth,5),typicalFullwidthCharacterWidth:Math.max(n.typicalFullwidthCharacterWidth,5),canUseHalfwidthRightwardsArrow:n.canUseHalfwidthRightwardsArrow,spaceWidth:Math.max(n.spaceWidth,5),middotWidth:Math.max(n.middotWidth,5),maxDigitWidth:Math.max(n.maxDigitWidth,5)},!1)),this._writeToCache(e,n)}return this._cache.get(e)},t.createRequest=function(e,t,n,i){var o=new Jp(e,t);return n.push(o),i&&i.push(o),o},t._actualReadConfiguration=function(e){var t=[],n=[],i=this.createRequest("n",0,t,n),o=this.createRequest("m",0,t,null),r=this.createRequest(" ",0,t,n),s=this.createRequest("0",0,t,n),a=this.createRequest("1",0,t,n),u=this.createRequest("2",0,t,n),l=this.createRequest("3",0,t,n),c=this.createRequest("4",0,t,n),d=this.createRequest("5",0,t,n),h=this.createRequest("6",0,t,n),p=this.createRequest("7",0,t,n),f=this.createRequest("8",0,t,n),g=this.createRequest("9",0,t,n),m=this.createRequest("→",0,t,n),v=this.createRequest("→",0,t,null),_=this.createRequest("·",0,t,n);this.createRequest("|",0,t,n),this.createRequest("/",0,t,n),this.createRequest("-",0,t,n),this.createRequest("_",0,t,n),this.createRequest("i",0,t,n),this.createRequest("l",0,t,n),this.createRequest("m",0,t,n),this.createRequest("|",1,t,n),this.createRequest("_",1,t,n),this.createRequest("i",1,t,n),this.createRequest("l",1,t,n),this.createRequest("m",1,t,n),this.createRequest("n",1,t,n),this.createRequest("|",2,t,n),this.createRequest("_",2,t,n),this.createRequest("i",2,t,n),this.createRequest("l",2,t,n),this.createRequest("m",2,t,n),this.createRequest("n",2,t,n),function(e,t){new ef(e,t).read()}(e,t);for(var y=Math.max(s.width,a.width,u.width,l.width,c.width,d.width,h.width,p.width,f.width,g.width),b=e.fontFeatureSettings===Y.OFF,w=n[0].width,C=1,S=n.length;b&&C<S;C++){var L=w-n[C].width;if(L<-.001||L>.001){b=!1;break}}var x=!0;b&&v.width!==w&&(x=!1),v.width>m.width&&(x=!1);var D=Rn.INSTANCE.getTimeSinceLastZoomLevelChanged()>2e3;return new Wa({zoomLevel:An(),fontFamily:e.fontFamily,fontWeight:e.fontWeight,fontSize:e.fontSize,fontFeatureSettings:e.fontFeatureSettings,lineHeight:e.lineHeight,letterSpacing:e.letterSpacing,isMonospace:b,typicalHalfwidthCharacterWidth:i.width,typicalFullwidthCharacterWidth:o.width,canUseHalfwidthRightwardsArrow:x,spaceWidth:r.width,middotWidth:_.width,maxDigitWidth:y},D)},t.INSTANCE=new t,t}(He),af=function(e){function t(t,n,i,o){void 0===i&&(i=null);var r=e.call(this,t,n)||this;return r.accessibilityService=o,r._elementSizeObserver=r._register(new nf(i,n.dimension,(function(){return r._onReferenceDomElementSizeChanged()}))),r._register(sf.INSTANCE.onDidChange((function(){return r._onCSSBasedConfigurationChanged()}))),r._validatedOptions.get(9)&&r._elementSizeObserver.startObserving(),r._register(Fn((function(e){return r._recomputeOptions()}))),r._register(r.accessibilityService.onDidChangeScreenReaderOptimized((function(){return r._recomputeOptions()}))),r._recomputeOptions(),r}return of(t,e),t.applyFontInfoSlow=function(e,t){e.style.fontFamily=t.getMassagedFontFamily(),e.style.fontWeight=t.fontWeight,e.style.fontSize=t.fontSize+"px",e.style.fontFeatureSettings=t.fontFeatureSettings,e.style.lineHeight=t.lineHeight+"px",e.style.letterSpacing=t.letterSpacing+"px"},t.applyFontInfo=function(e,t){e.setFontFamily(t.getMassagedFontFamily()),e.setFontWeight(t.fontWeight),e.setFontSize(t.fontSize),e.setFontFeatureSettings(t.fontFeatureSettings),e.setLineHeight(t.lineHeight),e.setLetterSpacing(t.letterSpacing)},t.prototype._onReferenceDomElementSizeChanged=function(){this._recomputeOptions()},t.prototype._onCSSBasedConfigurationChanged=function(){this._recomputeOptions()},t.prototype.observeReferenceElement=function(e){this._elementSizeObserver.observe(e)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._getExtraEditorClassName=function(){var e="";return Kn||qn||(e+="no-user-select "),_&&(e+="mac "),e},t.prototype._getEnvConfiguration=function(){return{extraEditorClassName:this._getExtraEditorClassName(),outerWidth:this._elementSizeObserver.getWidth(),outerHeight:this._elementSizeObserver.getHeight(),emptySelectionClipboard:jn||zn,pixelRatio:Rn.INSTANCE.getPixelRatio(),zoomLevel:An(),accessibilitySupport:this.accessibilityService.isScreenReaderOptimized()?2:this.accessibilityService.getAccessibilitySupport()}},t.prototype.readConfiguration=function(e){return sf.INSTANCE.readConfiguration(e)},t}(lh),uf=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),lf=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},cf=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},df=function(e){function t(t,n,i,o,r){void 0===n&&(n=""),void 0===i&&(i=""),void 0===o&&(o=!0);var s=e.call(this)||this;return s._onDidChange=s._register(new nt),s.onDidChange=s._onDidChange.event,s._enabled=!0,s._checked=!1,s._id=t,s._label=n,s._cssClass=i,s._enabled=o,s._actionCallback=r,s}return uf(t,e),Object.defineProperty(t.prototype,"id",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"label",{get:function(){return this._label},set:function(e){this._setLabel(e)},enumerable:!0,configurable:!0}),t.prototype._setLabel=function(e){this._label!==e&&(this._label=e,this._onDidChange.fire({label:e}))},Object.defineProperty(t.prototype,"tooltip",{get:function(){return this._tooltip||""},set:function(e){this._setTooltip(e)},enumerable:!0,configurable:!0}),t.prototype._setTooltip=function(e){this._tooltip!==e&&(this._tooltip=e,this._onDidChange.fire({tooltip:e}))},Object.defineProperty(t.prototype,"class",{get:function(){return this._cssClass},set:function(e){this._setClass(e)},enumerable:!0,configurable:!0}),t.prototype._setClass=function(e){this._cssClass!==e&&(this._cssClass=e,this._onDidChange.fire({class:e}))},Object.defineProperty(t.prototype,"enabled",{get:function(){return this._enabled},set:function(e){this._setEnabled(e)},enumerable:!0,configurable:!0}),t.prototype._setEnabled=function(e){this._enabled!==e&&(this._enabled=e,this._onDidChange.fire({enabled:e}))},Object.defineProperty(t.prototype,"checked",{get:function(){return this._checked},set:function(e){this._setChecked(e)},enumerable:!0,configurable:!0}),t.prototype._setChecked=function(e){this._checked!==e&&(this._checked=e,this._onDidChange.fire({checked:e}))},t.prototype.run=function(e,t){return this._actionCallback?this._actionCallback(e):Promise.resolve(!0)},t}(He),hf=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._onDidBeforeRun=t._register(new nt),t.onDidBeforeRun=t._onDidBeforeRun.event,t._onDidRun=t._register(new nt),t.onDidRun=t._onDidRun.event,t}return uf(t,e),t.prototype.run=function(e,t){return lf(this,void 0,void 0,(function(){var n,i;return cf(this,(function(o){switch(o.label){case 0:if(!e.enabled)return[2,Promise.resolve(null)];this._onDidBeforeRun.fire({action:e}),o.label=1;case 1:return o.trys.push([1,3,,4]),[4,this.runAction(e,t)];case 2:return n=o.sent(),this._onDidRun.fire({action:e,result:n}),[3,4];case 3:return i=o.sent(),this._onDidRun.fire({action:e,error:i}),[3,4];case 4:return[2]}}))}))},t.prototype.runAction=function(e,t){var n=t?e.run(t):e.run();return Promise.resolve(n)},t}(He),pf=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),ff=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},gf=function(e,t){return function(n,i){t(n,i,e)}},mf=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i};function vf(e){return void 0!==e.command}var _f,yf=Mn("menuService"),bf=new(function(){function e(){this._commands=new Map,this._menuItems=new Map,this._onDidChangeMenu=new nt,this.onDidChangeMenu=this._onDidChangeMenu.event}return e.prototype.addCommand=function(e){var t=this;return this._commands.set(e.id,e),this._onDidChangeMenu.fire(0),{dispose:function(){t._commands.delete(e.id)&&t._onDidChangeMenu.fire(0)}}},e.prototype.getCommand=function(e){return this._commands.get(e)},e.prototype.getCommands=function(){var e=new Map;return this._commands.forEach((function(t,n){return e.set(n,t)})),e},e.prototype.appendMenuItem=function(e,t){var n=this,i=this._menuItems.get(e);return i?i.push(t):(i=[t],this._menuItems.set(e,i)),this._onDidChangeMenu.fire(e),{dispose:function(){var o=i.indexOf(t);o>=0&&(i.splice(o,1),n._onDidChangeMenu.fire(e))}}},e.prototype.getMenuItems=function(e){var t=(this._menuItems.get(e)||[]).slice(0);return 0===e&&this._appendImplicitItems(t),t},e.prototype._appendImplicitItems=function(e){for(var t=new Set,n=0,i=e.filter((function(e){return vf(e)}));n<i.length;n++){var o=i[n],r=o.command,s=o.alt;t.add(r.id),s&&t.add(s.id)}this._commands.forEach((function(n,i){t.has(i)||e.push({command:n})}))},e}()),wf=function(e){function t(t,n,i){var o=e.call(this,t,n)||this;return o._commandService=i,o}return pf(t,e),t.prototype.run=function(){for(var e,t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return(e=this._commandService).executeCommand.apply(e,mf([this.id],t))},t=ff([gf(2,la)],t)}(df),Cf=function(e){function t(t){var n=this;return(n="string"==typeof t.title?e.call(this,"",t.title,"submenu")||this:e.call(this,"",t.title.value,"submenu")||this).item=t,n}return pf(t,e),t}(df),Sf=function(e){function t(n,i,o,r,s){var a=this;return(a="string"==typeof n.title?e.call(this,n.id,n.title,s)||this:e.call(this,n.id,n.title.value,s)||this)._cssClass=void 0,a._enabled=!n.precondition||r.contextMatchesRules(n.precondition),a._checked=Boolean(n.toggled&&r.contextMatchesRules(n.toggled)),a._options=o||{},a.item=n,a.alt=i?new t(i,void 0,a._options,r,s):void 0,a}return pf(t,e),t.prototype.dispose=function(){this.alt&&this.alt.dispose(),e.prototype.dispose.call(this)},t.prototype.run=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var i=[];return this._options.arg&&(i=mf(i,[this._options.arg])),this._options.shouldForwardArgs&&(i=mf(i,t)),e.prototype.run.apply(this,i)},t=ff([gf(3,qh),gf(4,la)],t)}(wf),Lf=Mn("telemetryService"),xf=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Df=function(){function e(e){this.id=e.id,this.precondition=e.precondition,this._kbOpts=e.kbOpts,this._menuOpts=e.menuOpts,this._description=e.description}return e.prototype.register=function(){var e=this;if(Array.isArray(this._menuOpts)?this._menuOpts.forEach(this._registerMenuItem,this):this._menuOpts&&this._registerMenuItem(this._menuOpts),this._kbOpts){var t=this._kbOpts.kbExpr;this.precondition&&(t=t?Rh.and(t,this.precondition):this.precondition),Zh.registerCommandAndKeybindingRule({id:this.id,handler:function(t,n){return e.runCommand(t,n)},weight:this._kbOpts.weight,when:t,primary:this._kbOpts.primary,secondary:this._kbOpts.secondary,win:this._kbOpts.win,linux:this._kbOpts.linux,mac:this._kbOpts.mac,description:this._description})}else ca.registerCommand({id:this.id,handler:function(t,n){return e.runCommand(t,n)},description:this._description})},e.prototype._registerMenuItem=function(e){bf.appendMenuItem(e.menuId,{group:e.group,command:{id:this.id,title:e.title},when:e.when,order:e.order})},e}(),Nf=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return xf(t,e),t.bindToContribution=function(e){return function(t){function n(e){var n=t.call(this,e)||this;return n._callback=e.handler,n}return xf(n,t),n.prototype.runEditorCommand=function(t,n,i){e(n)&&this._callback(e(n),i)},n}(t)},t.prototype.runCommand=function(e,t){var n=this,i=e.get(Pn),o=i.getFocusedCodeEditor()||i.getActiveCodeEditor();if(o)return o.invokeWithinContext((function(e){if(e.get(qh).contextMatchesRules(Xs(n.precondition)))return n.runEditorCommand(e,o,t)}))},t}(Df),kf=function(e){function t(n){var i=e.call(this,t.convertOptions(n))||this;return i.label=n.label,i.alias=n.alias,i}return xf(t,e),t.convertOptions=function(e){var t;function n(t){return t.menuId||(t.menuId=7),t.title||(t.title=e.label),t.when=Rh.and(e.precondition,t.when),t}return t=Array.isArray(e.menuOpts)?e.menuOpts:e.menuOpts?[e.menuOpts]:[],Array.isArray(e.contextMenuOpts)?t.push.apply(t,e.contextMenuOpts.map(n)):e.contextMenuOpts&&t.push(n(e.contextMenuOpts)),e.menuOpts=t,e},t.prototype.runEditorCommand=function(e,t,n){return this.reportTelemetry(e,t),this.run(e,t,n||{})},t.prototype.reportTelemetry=function(e,t){e.get(Lf).publicLog2("editorActionInvoked",{name:this.label,id:this.id})},t}(Nf);function Ef(e,t){ca.registerCommand(e,(function(e,n){return t(e,n||{})}))}function If(e,t){Ef(e,(function(e,n){var i=n.resource,o=n.position;if(!(i instanceof Et))throw Oe("resource");if(!bn.isIPosition(o))throw Oe("position");var r=e.get(du).getModel(i);if(r){var s=bn.lift(o);return t(r,s,n)}return e.get(tl).createModelReference(i).then((function(e){return new Promise((function(i,r){try{i(t(e.object.textEditorModel,bn.lift(o),n))}catch(e){r(e)}})).finally((function(){e.dispose()}))}))}))}function Of(e,t){ca.registerCommand(e,(function(e){for(var n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];var o=n[0],r=n[1];zs(Et.isUri(o)),zs(bn.isIPosition(r));var s=e.get(du).getModel(o);if(s){var a=bn.lift(r);return t(s,a,n.slice(2))}return e.get(tl).createModelReference(o).then((function(e){return new Promise((function(i,o){try{i(t(e.object.textEditorModel,bn.lift(r),n.slice(2)))}catch(e){o(e)}})).finally((function(){e.dispose()}))}))}))}function Mf(e){return Rf.INSTANCE.registerEditorCommand(e),e}function Tf(e){Rf.INSTANCE.registerEditorAction(new e)}function Pf(e,t){Rf.INSTANCE.registerEditorContribution(e,t)}!function(e){e.getEditorCommand=function(e){return Rf.INSTANCE.getEditorCommand(e)},e.getEditorActions=function(){return Rf.INSTANCE.getEditorActions()},e.getEditorContributions=function(){return Rf.INSTANCE.getEditorContributions()},e.getSomeEditorContributions=function(e){return Rf.INSTANCE.getEditorContributions().filter((function(t){return e.indexOf(t.id)>=0}))},e.getDiffEditorContributions=function(){return Rf.INSTANCE.getDiffEditorContributions()}}(_f||(_f={}));var Rf=function(){function e(){this.editorContributions=[],this.diffEditorContributions=[],this.editorActions=[],this.editorCommands=Object.create(null)}return e.prototype.registerEditorContribution=function(e,t){this.editorContributions.push({id:e,ctor:t})},e.prototype.getEditorContributions=function(){return this.editorContributions.slice(0)},e.prototype.getDiffEditorContributions=function(){return this.diffEditorContributions.slice(0)},e.prototype.registerEditorAction=function(e){e.register(),this.editorActions.push(e)},e.prototype.getEditorActions=function(){return this.editorActions.slice(0)},e.prototype.registerEditorCommand=function(e){e.register(),this.editorCommands[e.id]=e},e.prototype.getEditorCommand=function(e){return this.editorCommands[e]||null},e.INSTANCE=new e,e}();Td.add("editor.contributions",Rf.INSTANCE);var Af=function(){function e(e){this.domNode=e,this._maxWidth=-1,this._width=-1,this._height=-1,this._top=-1,this._left=-1,this._bottom=-1,this._right=-1,this._fontFamily="",this._fontWeight="",this._fontSize=-1,this._fontFeatureSettings="",this._lineHeight=-1,this._letterSpacing=-100,this._className="",this._display="",this._position="",this._visibility="",this._backgroundColor="",this._layerHint=!1,this._contain="none"}return e.prototype.setMaxWidth=function(e){this._maxWidth!==e&&(this._maxWidth=e,this.domNode.style.maxWidth=this._maxWidth+"px")},e.prototype.setWidth=function(e){this._width!==e&&(this._width=e,this.domNode.style.width=this._width+"px")},e.prototype.setHeight=function(e){this._height!==e&&(this._height=e,this.domNode.style.height=this._height+"px")},e.prototype.setTop=function(e){this._top!==e&&(this._top=e,this.domNode.style.top=this._top+"px")},e.prototype.unsetTop=function(){-1!==this._top&&(this._top=-1,this.domNode.style.top="")},e.prototype.setLeft=function(e){this._left!==e&&(this._left=e,this.domNode.style.left=this._left+"px")},e.prototype.setBottom=function(e){this._bottom!==e&&(this._bottom=e,this.domNode.style.bottom=this._bottom+"px")},e.prototype.setRight=function(e){this._right!==e&&(this._right=e,this.domNode.style.right=this._right+"px")},e.prototype.setFontFamily=function(e){this._fontFamily!==e&&(this._fontFamily=e,this.domNode.style.fontFamily=this._fontFamily)},e.prototype.setFontWeight=function(e){this._fontWeight!==e&&(this._fontWeight=e,this.domNode.style.fontWeight=this._fontWeight)},e.prototype.setFontSize=function(e){this._fontSize!==e&&(this._fontSize=e,this.domNode.style.fontSize=this._fontSize+"px")},e.prototype.setFontFeatureSettings=function(e){this._fontFeatureSettings!==e&&(this._fontFeatureSettings=e,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)},e.prototype.setLineHeight=function(e){this._lineHeight!==e&&(this._lineHeight=e,this.domNode.style.lineHeight=this._lineHeight+"px")},e.prototype.setLetterSpacing=function(e){this._letterSpacing!==e&&(this._letterSpacing=e,this.domNode.style.letterSpacing=this._letterSpacing+"px")},e.prototype.setClassName=function(e){this._className!==e&&(this._className=e,this.domNode.className=this._className)},e.prototype.toggleClassName=function(e,t){so(this.domNode,e,t),this._className=this.domNode.className},e.prototype.setDisplay=function(e){this._display!==e&&(this._display=e,this.domNode.style.display=this._display)},e.prototype.setPosition=function(e){this._position!==e&&(this._position=e,this.domNode.style.position=this._position)},e.prototype.setVisibility=function(e){this._visibility!==e&&(this._visibility=e,this.domNode.style.visibility=this._visibility)},e.prototype.setBackgroundColor=function(e){this._backgroundColor!==e&&(this._backgroundColor=e,this.domNode.style.backgroundColor=this._backgroundColor)},e.prototype.setLayerHinting=function(e){this._layerHint!==e&&(this._layerHint=e,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")},e.prototype.setContain=function(e){this._contain!==e&&(this._contain=e,this.domNode.style.contain=this._contain)},e.prototype.setAttribute=function(e,t){this.domNode.setAttribute(e,t)},e.prototype.removeAttribute=function(e){this.domNode.removeAttribute(e)},e.prototype.appendChild=function(e){this.domNode.appendChild(e.domNode)},e.prototype.removeChild=function(e){this.domNode.removeChild(e.domNode)},e}();function Ff(e){return new Af(e)}var Wf=0;function Vf(e,t,n){return function(){var e="$memoize"+Wf++,t=void 0,n=function(n,i,o){var r=null,s=null;if("function"==typeof o.value?(r="value",0!==(s=o.value).length&&console.warn("Memoize should only be used in functions with zero parameters")):"function"==typeof o.get&&(r="get",s=o.get),!s)throw new Error("not supported");var a=e+":"+i;o[r]=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return t=this,this.hasOwnProperty(a)||Object.defineProperty(this,a,{configurable:!0,enumerable:!1,writable:!0,value:s.apply(this,e)}),this[a]}};return n.clear=function(){void 0!==t&&Object.getOwnPropertyNames(t).forEach((function(n){0===n.indexOf(e)&&delete t[n]}))},n}()(e,t,n)}var Bf,Hf=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),zf=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s};!function(e){e.Tap="-monaco-gesturetap",e.Change="-monaco-gesturechange",e.Start="-monaco-gesturestart",e.End="-monaco-gesturesend",e.Contextmenu="-monaco-gesturecontextmenu"}(Bf||(Bf={}));var jf=function(e){function t(){var t=e.call(this)||this;return t.dispatched=!1,t.activeTouches={},t.handle=null,t.targets=[],t.ignoreTargets=[],t._lastSetTapCountTime=0,t._register(uo(document,"touchstart",(function(e){return t.onTouchStart(e)}))),t._register(uo(document,"touchend",(function(e){return t.onTouchEnd(e)}))),t._register(uo(document,"touchmove",(function(e){return t.onTouchMove(e)}))),t}return Hf(t,e),t.addTarget=function(e){return t.isTouchDevice()?(t.INSTANCE||(t.INSTANCE=new t),t.INSTANCE.targets.push(e),{dispose:function(){t.INSTANCE.targets=t.INSTANCE.targets.filter((function(t){return t!==e}))}}):He.None},t.ignoreTarget=function(e){return t.isTouchDevice()?(t.INSTANCE||(t.INSTANCE=new t),t.INSTANCE.ignoreTargets.push(e),{dispose:function(){t.INSTANCE.ignoreTargets=t.INSTANCE.ignoreTargets.filter((function(t){return t!==e}))}}):He.None},t.isTouchDevice=function(){return"ontouchstart"in window||navigator.maxTouchPoints>0||window.navigator.msMaxTouchPoints>0},t.prototype.dispose=function(){this.handle&&(this.handle.dispose(),this.handle=null),e.prototype.dispose.call(this)},t.prototype.onTouchStart=function(e){var t=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(var n=0,i=e.targetTouches.length;n<i;n++){var o=e.targetTouches.item(n);this.activeTouches[o.identifier]={id:o.identifier,initialTarget:o.target,initialTimeStamp:t,initialPageX:o.pageX,initialPageY:o.pageY,rollingTimestamps:[t],rollingPageX:[o.pageX],rollingPageY:[o.pageY]};var r=this.newGestureEvent(Bf.Start,o.target);r.pageX=o.pageX,r.pageY=o.pageY,this.dispatchEvent(r)}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)},t.prototype.onTouchEnd=function(e){for(var n=Date.now(),i=Object.keys(this.activeTouches).length,o=function(o,s){var a=e.changedTouches.item(o);if(!r.activeTouches.hasOwnProperty(String(a.identifier)))return console.warn("move of an UNKNOWN touch",a),"continue";var u=r.activeTouches[a.identifier],l=Date.now()-u.initialTimeStamp;if(l<t.HOLD_DELAY&&Math.abs(u.initialPageX-Li(u.rollingPageX))<30&&Math.abs(u.initialPageY-Li(u.rollingPageY))<30)(c=r.newGestureEvent(Bf.Tap,u.initialTarget)).pageX=Li(u.rollingPageX),c.pageY=Li(u.rollingPageY),r.dispatchEvent(c);else if(l>=t.HOLD_DELAY&&Math.abs(u.initialPageX-Li(u.rollingPageX))<30&&Math.abs(u.initialPageY-Li(u.rollingPageY))<30){var c;(c=r.newGestureEvent(Bf.Contextmenu,u.initialTarget)).pageX=Li(u.rollingPageX),c.pageY=Li(u.rollingPageY),r.dispatchEvent(c)}else if(1===i){var d=Li(u.rollingPageX),h=Li(u.rollingPageY),p=Li(u.rollingTimestamps)-u.rollingTimestamps[0],f=d-u.rollingPageX[0],g=h-u.rollingPageY[0],m=r.targets.filter((function(e){return u.initialTarget instanceof Node&&e.contains(u.initialTarget)}));r.inertia(m,n,Math.abs(f)/p,f>0?1:-1,d,Math.abs(g)/p,g>0?1:-1,h)}r.dispatchEvent(r.newGestureEvent(Bf.End,u.initialTarget)),delete r.activeTouches[a.identifier]},r=this,s=0,a=e.changedTouches.length;s<a;s++)o(s);this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)},t.prototype.newGestureEvent=function(e,t){var n=document.createEvent("CustomEvent");return n.initEvent(e,!1,!0),n.initialTarget=t,n.tapCount=0,n},t.prototype.dispatchEvent=function(e){var n=this;if(e.type===Bf.Tap){var i=(new Date).getTime(),o=0;o=i-this._lastSetTapCountTime>t.CLEAR_TAP_COUNT_TIME?1:2,this._lastSetTapCountTime=i,e.tapCount=o}else e.type!==Bf.Change&&e.type!==Bf.Contextmenu||(this._lastSetTapCountTime=0);for(var r=0;r<this.ignoreTargets.length;r++)if(e.initialTarget instanceof Node&&this.ignoreTargets[r].contains(e.initialTarget))return;this.targets.forEach((function(t){e.initialTarget instanceof Node&&t.contains(e.initialTarget)&&(t.dispatchEvent(e),n.dispatched=!0)}))},t.prototype.inertia=function(e,n,i,o,r,s,a,u){var l=this;this.handle=mo((function(){var c=Date.now(),d=c-n,h=0,p=0,f=!0;i+=t.SCROLL_FRICTION*d,s+=t.SCROLL_FRICTION*d,i>0&&(f=!1,h=o*i*d),s>0&&(f=!1,p=a*s*d);var g=l.newGestureEvent(Bf.Change);g.translationX=h,g.translationY=p,e.forEach((function(e){return e.dispatchEvent(g)})),f||l.inertia(e,c,i,o,r+h,s,a,u+p)}))},t.prototype.onTouchMove=function(e){for(var t=Date.now(),n=0,i=e.changedTouches.length;n<i;n++){var o=e.changedTouches.item(n);if(this.activeTouches.hasOwnProperty(String(o.identifier))){var r=this.activeTouches[o.identifier],s=this.newGestureEvent(Bf.Change,r.initialTarget);s.translationX=o.pageX-Li(r.rollingPageX),s.translationY=o.pageY-Li(r.rollingPageY),s.pageX=o.pageX,s.pageY=o.pageY,this.dispatchEvent(s),r.rollingPageX.length>3&&(r.rollingPageX.shift(),r.rollingPageY.shift(),r.rollingTimestamps.shift()),r.rollingPageX.push(o.pageX),r.rollingPageY.push(o.pageY),r.rollingTimestamps.push(t)}else console.warn("end of an UNKNOWN touch",o)}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)},t.SCROLL_FRICTION=-.005,t.HOLD_DELAY=700,t.CLEAR_TAP_COUNT_TIME=400,zf([Vf],t,"isTouchDevice",null),t}(He);function Uf(e,t){var n=new li(t);return n.preventDefault(),{leftButton:n.leftButton,buttons:n.buttons,posx:n.posx,posy:n.posy}}var Kf=function(){function e(){this._hooks=new Be,this._mouseMoveEventMerger=null,this._mouseMoveCallback=null,this._onStopCallback=null}return e.prototype.dispose=function(){this.stopMonitoring(!1),this._hooks.dispose()},e.prototype.stopMonitoring=function(e){if(this.isMonitoring()){this._hooks.clear(),this._mouseMoveEventMerger=null,this._mouseMoveCallback=null;var t=this._onStopCallback;this._onStopCallback=null,e&&t&&t()}},e.prototype.isMonitoring=function(){return!!this._mouseMoveEventMerger},e.prototype.startMonitoring=function(e,t,n,i,o){var r=this;if(!this.isMonitoring()){this._mouseMoveEventMerger=n,this._mouseMoveCallback=i,this._onStopCallback=o;var s=ai.getSameOriginWindowChain(),a=C&&Ki.pointerEvents?"pointermove":"mousemove",u=C&&Ki.pointerEvents?"pointerup":"mouseup",l=s.map((function(e){return e.window.document})),c=Ho(e);c&&l.unshift(c);for(var d=0,h=l;d<h.length;d++){var p=h[d];this._hooks.add(Do(p,a,(function(e){Vn||e.buttons===t?r._mouseMoveCallback(e):r.stopMonitoring(!0)}),(function(e,t){return r._mouseMoveEventMerger(e,t)}))),this._hooks.add(uo(p,u,(function(e){return r.stopMonitoring(!0)})))}if(ai.hasDifferentOriginAncestor()){var f=s[s.length-1];this._hooks.add(uo(f.window.document,"mouseout",(function(e){"html"===new li(e).target.tagName.toLowerCase()&&r.stopMonitoring(!0)}))),this._hooks.add(uo(f.window.document,"mouseover",(function(e){"html"===new li(e).target.tagName.toLowerCase()&&r.stopMonitoring(!0)}))),this._hooks.add(uo(f.window.document.body,"mouseleave",(function(e){r.stopMonitoring(!0)})))}}},e}(),qf=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Gf=function(){function e(e,t){this.x=e,this.y=t}return e.prototype.toClientCoordinates=function(){return new Zf(this.x-Mo.scrollX,this.y-Mo.scrollY)},e}(),Zf=function(){function e(e,t){this.clientX=e,this.clientY=t}return e.prototype.toPageCoordinates=function(){return new Gf(this.clientX+Mo.scrollX,this.clientY+Mo.scrollY)},e}(),Yf=function(e,t,n,i){this.x=e,this.y=t,this.width=n,this.height=i};function Xf(e){var t=Oo(e);return new Yf(t.left,t.top,t.width,t.height)}var $f=function(e){function t(t,n){var i=e.call(this,t)||this;return i.pos=new Gf(i.posx,i.posy),i.editorPos=Xf(n),i}return qf(t,e),t}(li),Qf=function(){function e(e){this._editorViewDomNode=e}return e.prototype._create=function(e){return new $f(e,this._editorViewDomNode)},e.prototype.onContextMenu=function(e,t){var n=this;return uo(e,"contextmenu",(function(e){t(n._create(e))}))},e.prototype.onMouseUp=function(e,t){var n=this;return uo(e,"mouseup",(function(e){t(n._create(e))}))},e.prototype.onMouseDown=function(e,t){var n=this;return uo(e,"mousedown",(function(e){t(n._create(e))}))},e.prototype.onMouseLeave=function(e,t){var n=this;return fo(e,(function(e){t(n._create(e))}))},e.prototype.onMouseMoveThrottled=function(e,t,n,i){var o=this;return Do(e,"mousemove",t,(function(e,t){return n(e,o._create(t))}),i)},e}(),Jf=function(){function e(e){this._editorViewDomNode=e}return e.prototype._create=function(e){return new $f(e,this._editorViewDomNode)},e.prototype.onPointerUp=function(e,t){var n=this;return uo(e,"pointerup",(function(e){t(n._create(e))}))},e.prototype.onPointerDown=function(e,t){var n=this;return uo(e,"pointerdown",(function(e){t(n._create(e))}))},e.prototype.onPointerLeave=function(e,t){var n,i,o=this;return i=function(e){t(o._create(e))},uo(n=e,"pointerout",(function(e){for(var t=e.relatedTarget;t&&t!==n;)t=t.parentNode;t!==n&&i(e)}))},e.prototype.onPointerMoveThrottled=function(e,t,n,i){var o=this;return Do(e,"pointermove",t,(function(e,t){return n(e,o._create(t))}),i)},e}(),eg=function(e){function t(t){var n=e.call(this)||this;return n._editorViewDomNode=t,n._globalMouseMoveMonitor=n._register(new Kf),n._keydownListener=null,n}return qf(t,e),t.prototype.startMonitoring=function(e,t,n,i,o){var r=this;this._keydownListener=co(document,"keydown",(function(e){e.toKeybinding().isModifierKey()||r._globalMouseMoveMonitor.stopMonitoring(!0)}),!0);this._globalMouseMoveMonitor.startMonitoring(e,t,(function(e,t){return n(e,new $f(t,r._editorViewDomNode))}),i,(function(){r._keydownListener.dispose(),o()}))},t}(He),tg=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),ng=function(e){function t(){var t=e.call(this)||this;return t._shouldRender=!0,t}return tg(t,e),t.prototype.shouldRender=function(){return this._shouldRender},t.prototype.forceShouldRender=function(){this._shouldRender=!0},t.prototype.setShouldRender=function(){this._shouldRender=!0},t.prototype.onDidRender=function(){this._shouldRender=!1},t.prototype.onConfigurationChanged=function(e){return!1},t.prototype.onContentSizeChanged=function(e){return!1},t.prototype.onCursorStateChanged=function(e){return!1},t.prototype.onDecorationsChanged=function(e){return!1},t.prototype.onFlushed=function(e){return!1},t.prototype.onFocusChanged=function(e){return!1},t.prototype.onLanguageConfigurationChanged=function(e){return!1},t.prototype.onLineMappingChanged=function(e){return!1},t.prototype.onLinesChanged=function(e){return!1},t.prototype.onLinesDeleted=function(e){return!1},t.prototype.onLinesInserted=function(e){return!1},t.prototype.onRevealRangeRequest=function(e){return!1},t.prototype.onScrollChanged=function(e){return!1},t.prototype.onThemeChanged=function(e){return!1},t.prototype.onTokensChanged=function(e){return!1},t.prototype.onTokensColorsChanged=function(e){return!1},t.prototype.onZonesChanged=function(e){return!1},t.prototype.handleEvents=function(e){for(var t=!1,n=0,i=e.length;n<i;n++){var o=e[n];switch(o.type){case 1:this.onConfigurationChanged(o)&&(t=!0);break;case 2:this.onContentSizeChanged(o)&&(t=!0);break;case 3:this.onCursorStateChanged(o)&&(t=!0);break;case 4:this.onDecorationsChanged(o)&&(t=!0);break;case 5:this.onFlushed(o)&&(t=!0);break;case 6:this.onFocusChanged(o)&&(t=!0);break;case 7:this.onLanguageConfigurationChanged(o)&&(t=!0);break;case 8:this.onLineMappingChanged(o)&&(t=!0);break;case 9:this.onLinesChanged(o)&&(t=!0);break;case 10:this.onLinesDeleted(o)&&(t=!0);break;case 11:this.onLinesInserted(o)&&(t=!0);break;case 12:this.onRevealRangeRequest(o)&&(t=!0);break;case 13:this.onScrollChanged(o)&&(t=!0);break;case 15:this.onTokensChanged(o)&&(t=!0);break;case 14:this.onThemeChanged(o)&&(t=!0);break;case 16:this.onTokensColorsChanged(o)&&(t=!0);break;case 17:this.onZonesChanged(o)&&(t=!0);break;default:console.info("View received unknown event: "),console.info(o)}}t&&(this._shouldRender=!0)},t}(He),ig=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),og=function(e){function t(t){var n=e.call(this)||this;return n._context=t,n._context.addEventHandler(n),n}return ig(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),e.prototype.dispose.call(this)},t}(ng),rg=function(){function e(){}return e.write=function(e,t){e.setAttribute("data-mprt",String(t))},e.read=function(e){var t=e.getAttribute("data-mprt");return null===t?0:parseInt(t,10)},e.collect=function(e,t){for(var n=[],i=0;e&&e!==document.body&&e!==t;)e.nodeType===e.ELEMENT_NODE&&(n[i++]=this.read(e)),e=e.parentElement;for(var o=new Uint8Array(i),r=0;r<i;r++)o[r]=n[i-r-1];return o},e}(),sg=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),ag=function(e){function t(t,n,i){var o=e.call(this,t,n)||this;return o._viewLines=i,o}return sg(t,e),t.prototype.linesVisibleRangesForRange=function(e,t){return this._viewLines.linesVisibleRangesForRange(e,t)},t.prototype.visibleRangeForPosition=function(e){return this._viewLines.visibleRangeForPosition(e)},t}(function(){function e(e,t){this._viewLayout=e,this.viewportData=t,this.scrollWidth=this._viewLayout.getScrollWidth(),this.scrollHeight=this._viewLayout.getScrollHeight(),this.visibleRange=this.viewportData.visibleRange,this.bigNumbersDelta=this.viewportData.bigNumbersDelta;var n=this._viewLayout.getCurrentViewport();this.scrollTop=n.top,this.scrollLeft=n.left,this.viewportWidth=n.width,this.viewportHeight=n.height}return e.prototype.getScrolledTopFromAbsoluteTop=function(e){return e-this.scrollTop},e.prototype.getVerticalOffsetForLineNumber=function(e){return this._viewLayout.getVerticalOffsetForLineNumber(e)},e.prototype.getDecorationsInViewport=function(){return this.viewportData.getDecorationsInViewport()},e}()),ug=function(e,t,n){this.outsideRenderedLine=e,this.lineNumber=t,this.ranges=n},lg=function(){function e(e,t){this.left=Math.round(e),this.width=Math.round(t)}return e.prototype.toString=function(){return"["+this.left+","+this.width+"]"},e}(),cg=function(e,t){this.outsideRenderedLine=e,this.left=Math.round(t)},dg=function(e,t){this.outsideRenderedLine=e,this.ranges=t},hg=function(){function e(e,t){this.left=e,this.width=t}return e.prototype.toString=function(){return"["+this.left+","+this.width+"]"},e.compare=function(e,t){return e.left-t.left},e}(),pg=function(){function e(){}return e._createRange=function(){return this._handyReadyRange||(this._handyReadyRange=document.createRange()),this._handyReadyRange},e._detachRange=function(e,t){e.selectNodeContents(t)},e._readClientRects=function(e,t,n,i,o){var r=this._createRange();try{return r.setStart(e,t),r.setEnd(n,i),r.getClientRects()}catch(e){return null}finally{this._detachRange(r,o)}},e._mergeAdjacentRanges=function(e){if(1===e.length)return[new lg(e[0].left,e[0].width)];e.sort(hg.compare);for(var t=[],n=0,i=e[0].left,o=e[0].width,r=1,s=e.length;r<s;r++){var a=e[r],u=a.left,l=a.width;i+o+.9>=u?o=Math.max(o,u+l-i):(t[n++]=new lg(i,o),i=u,o=l)}return t[n++]=new lg(i,o),t},e._createHorizontalRangesFromClientRects=function(e,t){if(!e||0===e.length)return null;for(var n=[],i=0,o=e.length;i<o;i++){var r=e[i];n[i]=new hg(Math.max(0,r.left-t),r.width)}return this._mergeAdjacentRanges(n)},e.readHorizontalRanges=function(e,t,n,i,o,r,s){var a=e.children.length-1;if(0>a)return null;(t=Math.min(a,Math.max(0,t)))!==(i=Math.min(a,Math.max(0,i)))&&i>0&&0===o&&(i--,o=1073741824);var u=e.children[t].firstChild,l=e.children[i].firstChild;if(u&&l||(!u&&0===n&&t>0&&(u=e.children[t-1].firstChild,n=1073741824),!l&&0===o&&i>0&&(l=e.children[i-1].firstChild,o=1073741824)),!u||!l)return null;n=Math.min(u.textContent.length,Math.max(0,n)),o=Math.min(l.textContent.length,Math.max(0,o));var c=this._readClientRects(u,n,l,o,s);return this._createHorizontalRangesFromClientRects(c,r)},e}(),fg=Mn("themeService");function gg(e){return{id:e}}function mg(e){switch(e){case"dark":return"vs-dark";case"hc":return"hc-black";default:return"vs"}}var vg="base.contributions.theming",_g=new(function(){function e(){this.themingParticipants=[],this.themingParticipants=[],this.onThemingParticipantAddedEmitter=new nt}return e.prototype.onThemeChange=function(e){var t=this;return this.themingParticipants.push(e),this.onThemingParticipantAddedEmitter.fire(e),We((function(){var n=t.themingParticipants.indexOf(e);t.themingParticipants.splice(n,1)}))},e.prototype.getThemingParticipants=function(){return this.themingParticipants},e}());function yg(e){return _g.onThemeChange(e)}Td.add(vg,_g);var bg=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),wg=!!b||!(y||zn||Kn),Cg=Hn,Sg=function(){function e(e,t){this._domNode=e,this._clientRectDeltaLeft=0,this._clientRectDeltaLeftRead=!1,this.endNode=t}return Object.defineProperty(e.prototype,"clientRectDeltaLeft",{get:function(){return this._clientRectDeltaLeftRead||(this._clientRectDeltaLeftRead=!0,this._clientRectDeltaLeft=this._domNode.getBoundingClientRect().left),this._clientRectDeltaLeft},enumerable:!0,configurable:!0}),e}(),Lg=function(){function e(e,t){this.themeType=t;var n=e.options,i=n.get(34);this.renderWhitespace=n.get(74),this.renderControlCharacters=n.get(69),this.spaceWidth=i.spaceWidth,this.middotWidth=i.middotWidth,this.useMonospaceOptimizations=i.isMonospace&&!n.get(23),this.canUseHalfwidthRightwardsArrow=i.canUseHalfwidthRightwardsArrow,this.lineHeight=n.get(49),this.stopRenderingLineAfter=n.get(88),this.fontLigatures=n.get(35)}return e.prototype.equals=function(e){return this.themeType===e.themeType&&this.renderWhitespace===e.renderWhitespace&&this.renderControlCharacters===e.renderControlCharacters&&this.spaceWidth===e.spaceWidth&&this.middotWidth===e.middotWidth&&this.useMonospaceOptimizations===e.useMonospaceOptimizations&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.lineHeight===e.lineHeight&&this.stopRenderingLineAfter===e.stopRenderingLineAfter&&this.fontLigatures===e.fontLigatures},e}(),xg=function(){function e(e){this._options=e,this._isMaybeInvalid=!0,this._renderedViewLine=null}return e.prototype.getDomNode=function(){return this._renderedViewLine&&this._renderedViewLine.domNode?this._renderedViewLine.domNode.domNode:null},e.prototype.setDomNode=function(e){if(!this._renderedViewLine)throw new Error("I have no rendered view line to set the dom node to...");this._renderedViewLine.domNode=Ff(e)},e.prototype.onContentChanged=function(){this._isMaybeInvalid=!0},e.prototype.onTokensChanged=function(){this._isMaybeInvalid=!0},e.prototype.onDecorationsChanged=function(){this._isMaybeInvalid=!0},e.prototype.onOptionsChanged=function(e){this._isMaybeInvalid=!0,this._options=e},e.prototype.onSelectionChanged=function(){return!(!Cg&&"hc"!==this._options.themeType&&"selection"!==this._options.renderWhitespace)&&(this._isMaybeInvalid=!0,!0)},e.prototype.renderLine=function(t,n,i,o){if(!1===this._isMaybeInvalid)return!1;this._isMaybeInvalid=!1;var r=i.getViewLineRenderingData(t),s=this._options,a=jc.filter(r.inlineDecorations,t,r.minColumn,r.maxColumn),u=null;if(Cg||"hc"===s.themeType||"selection"===this._options.renderWhitespace)for(var l=0,c=i.selections;l<c.length;l++){var d=c[l];if(!(d.endLineNumber<t||d.startLineNumber>t)){var h=d.startLineNumber===t?d.startColumn:r.minColumn,p=d.endLineNumber===t?d.endColumn:r.maxColumn;h<p&&("selection"!==this._options.renderWhitespace?a.push(new jc(h,p,"inline-selected-text",0)):(u||(u=[]),u.push(new Zc(h-1,p-1))))}}var f=new Yc(s.useMonospaceOptimizations,s.canUseHalfwidthRightwardsArrow,r.content,r.continuesWithWrappedLine,r.isBasicASCII,r.containsRTL,r.minColumn-1,r.tokens,a,r.tabSize,r.startVisibleColumn,s.spaceWidth,s.middotWidth,s.stopRenderingLineAfter,s.renderWhitespace,s.renderControlCharacters,s.fontLigatures!==Y.OFF,u);if(this._renderedViewLine&&this._renderedViewLine.input.equals(f))return!1;o.appendASCIIString('<div style="top:'),o.appendASCIIString(String(n)),o.appendASCIIString("px;height:"),o.appendASCIIString(String(this._options.lineHeight)),o.appendASCIIString('px;" class="'),o.appendASCIIString(e.CLASS_NAME),o.appendASCIIString('">');var g=Qc(f,o);o.appendASCIIString("</div>");var m=null;return wg&&r.isBasicASCII&&s.useMonospaceOptimizations&&0===g.containsForeignElements&&r.content.length<300&&f.lineTokens.getCount()<100&&(m=new Dg(this._renderedViewLine?this._renderedViewLine.domNode:null,f,g.characterMapping)),m||(m=Eg(this._renderedViewLine?this._renderedViewLine.domNode:null,f,g.characterMapping,g.containsRTL,g.containsForeignElements)),this._renderedViewLine=m,!0},e.prototype.layoutLine=function(e,t){this._renderedViewLine&&this._renderedViewLine.domNode&&(this._renderedViewLine.domNode.setTop(t),this._renderedViewLine.domNode.setHeight(this._options.lineHeight))},e.prototype.getWidth=function(){return this._renderedViewLine?this._renderedViewLine.getWidth():0},e.prototype.getWidthIsFast=function(){return!this._renderedViewLine||this._renderedViewLine.getWidthIsFast()},e.prototype.getVisibleRangesForRange=function(e,t,n){if(!this._renderedViewLine)return null;e|=0,t|=0,e=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,e)),t=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,t));var i=0|this._renderedViewLine.input.stopRenderingLineAfter,o=!1;-1!==i&&e>i+1&&t>i+1&&(o=!0),-1!==i&&e>i+1&&(e=i+1),-1!==i&&t>i+1&&(t=i+1);var r=this._renderedViewLine.getVisibleRangesForRange(e,t,n);return r&&r.length>0?new dg(o,r):null},e.prototype.getColumnOfNodeOffset=function(e,t,n){return this._renderedViewLine?this._renderedViewLine.getColumnOfNodeOffset(e,t,n):1},e.CLASS_NAME="view-line",e}(),Dg=function(){function e(e,t,n){this.domNode=e,this.input=t,this._characterMapping=n,this._charWidth=t.spaceWidth}return e.prototype.getWidth=function(){return this._getCharPosition(this._characterMapping.length)},e.prototype.getWidthIsFast=function(){return!0},e.prototype.getVisibleRangesForRange=function(e,t,n){var i=this._getCharPosition(e),o=this._getCharPosition(t);return[new lg(i,o-i)]},e.prototype._getCharPosition=function(e){var t=this._characterMapping.getAbsoluteOffsets();return 0===t.length?0:Math.round(this._charWidth*t[e-1])},e.prototype.getColumnOfNodeOffset=function(e,t,n){for(var i=t.textContent.length,o=-1;t;)t=t.previousSibling,o++;return this._characterMapping.partDataToCharOffset(o,i,n)+1},e}(),Ng=function(){function e(e,t,n,i,o){if(this.domNode=e,this.input=t,this._characterMapping=n,this._isWhitespaceOnly=/^\s*$/.test(t.lineContent),this._containsForeignElements=o,this._cachedWidth=-1,this._pixelOffsetCache=null,!i||0===this._characterMapping.length){this._pixelOffsetCache=new Int32Array(Math.max(2,this._characterMapping.length+1));for(var r=0,s=this._characterMapping.length;r<=s;r++)this._pixelOffsetCache[r]=-1}}return e.prototype._getReadingTarget=function(e){return e.domNode.firstChild},e.prototype.getWidth=function(){return this.domNode?(-1===this._cachedWidth&&(this._cachedWidth=this._getReadingTarget(this.domNode).offsetWidth),this._cachedWidth):0},e.prototype.getWidthIsFast=function(){return-1!==this._cachedWidth},e.prototype.getVisibleRangesForRange=function(e,t,n){if(!this.domNode)return null;if(null!==this._pixelOffsetCache){var i=this._readPixelOffset(this.domNode,e,n);if(-1===i)return null;var o=this._readPixelOffset(this.domNode,t,n);return-1===o?null:[new lg(i,o-i)]}return this._readVisibleRangesForRange(this.domNode,e,t,n)},e.prototype._readVisibleRangesForRange=function(e,t,n,i){if(t===n){var o=this._readPixelOffset(e,t,i);return-1===o?null:[new lg(o,0)]}return this._readRawVisibleRangesForRange(e,t,n,i)},e.prototype._readPixelOffset=function(e,t,n){if(0===this._characterMapping.length){if(0===this._containsForeignElements)return 0;if(2===this._containsForeignElements)return 0;if(1===this._containsForeignElements)return this.getWidth();var i=this._getReadingTarget(e);return i.firstChild?i.firstChild.offsetWidth:0}if(null!==this._pixelOffsetCache){var o=this._pixelOffsetCache[t];if(-1!==o)return o;var r=this._actualReadPixelOffset(e,t,n);return this._pixelOffsetCache[t]=r,r}return this._actualReadPixelOffset(e,t,n)},e.prototype._actualReadPixelOffset=function(e,t,n){if(0===this._characterMapping.length){var i=pg.readHorizontalRanges(this._getReadingTarget(e),0,0,0,0,n.clientRectDeltaLeft,n.endNode);return i&&0!==i.length?i[0].left:-1}if(t===this._characterMapping.length&&this._isWhitespaceOnly&&0===this._containsForeignElements)return this.getWidth();var o=this._characterMapping.charOffsetToPartData(t-1),r=Xc.getPartIndex(o),s=Xc.getCharIndex(o),a=pg.readHorizontalRanges(this._getReadingTarget(e),r,s,r,s,n.clientRectDeltaLeft,n.endNode);return a&&0!==a.length?a[0].left:-1},e.prototype._readRawVisibleRangesForRange=function(e,t,n,i){if(1===t&&n===this._characterMapping.length)return[new lg(0,this.getWidth())];var o=this._characterMapping.charOffsetToPartData(t-1),r=Xc.getPartIndex(o),s=Xc.getCharIndex(o),a=this._characterMapping.charOffsetToPartData(n-1),u=Xc.getPartIndex(a),l=Xc.getCharIndex(a);return pg.readHorizontalRanges(this._getReadingTarget(e),r,s,u,l,i.clientRectDeltaLeft,i.endNode)},e.prototype.getColumnOfNodeOffset=function(e,t,n){for(var i=t.textContent.length,o=-1;t;)t=t.previousSibling,o++;return this._characterMapping.partDataToCharOffset(o,i,n)+1},e}(),kg=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return bg(t,e),t.prototype._readVisibleRangesForRange=function(t,n,i,o){var r=e.prototype._readVisibleRangesForRange.call(this,t,n,i,o);if(!r||0===r.length||n===i||1===n&&i===this._characterMapping.length)return r;if(!this.input.containsRTL){var s=this._readPixelOffset(t,i,o);if(-1!==s){var a=r[r.length-1];a.left<s&&(a.width=s-a.left)}}return r},t}(Ng),Eg=jn?Ig:Og;function Ig(e,t,n,i,o){return new kg(e,t,n,i,o)}function Og(e,t,n,i,o){return new Ng(e,t,n,i,o)}var Mg=function(){function e(e,t){this.beforeVersionId=e,this.beforeCursorState=t,this.afterCursorState=null,this.afterVersionId=-1,this.editOperations=[]}return e.prototype.undo=function(e){for(var t=this.editOperations.length-1;t>=0;t--)this.editOperations[t]={operations:e.applyEdits(this.editOperations[t].operations)}},e.prototype.redo=function(e){for(var t=0;t<this.editOperations.length;t++)this.editOperations[t]={operations:e.applyEdits(this.editOperations[t].operations)}},e}();function Tg(e){return"\n"===e.getEOL()?0:1}var Pg=function(){function e(e,t){this.beforeVersionId=e,this.beforeCursorState=null,this.afterCursorState=null,this.afterVersionId=-1,this.eol=t}return e.prototype.undo=function(e){var t=Tg(e);e.setEOL(this.eol),this.eol=t},e.prototype.redo=function(e){var t=Tg(e);e.setEOL(this.eol),this.eol=t},e}(),Rg=function(){function e(e){this.model=e,this.currentOpenStackElement=null,this.past=[],this.future=[]}return e.prototype.pushStackElement=function(){null!==this.currentOpenStackElement&&(this.past.push(this.currentOpenStackElement),this.currentOpenStackElement=null)},e.prototype.clear=function(){this.currentOpenStackElement=null,this.past=[],this.future=[]},e.prototype.pushEOL=function(e){this.future=[],this.currentOpenStackElement&&this.pushStackElement();var t=Tg(this.model),n=new Pg(this.model.getAlternativeVersionId(),t);this.model.setEOL(e),n.afterVersionId=this.model.getVersionId(),this.currentOpenStackElement=n,this.pushStackElement()},e.prototype.pushEditOperation=function(t,n,i){this.future=[];var o=null;this.currentOpenStackElement&&(this.currentOpenStackElement instanceof Mg?o=this.currentOpenStackElement:this.pushStackElement()),this.currentOpenStackElement||(o=new Mg(this.model.getAlternativeVersionId(),t),this.currentOpenStackElement=o);var r={operations:this.model.applyEdits(n)};return o.editOperations.push(r),o.afterCursorState=e._computeCursorState(i,r.operations),o.afterVersionId=this.model.getVersionId(),o.afterCursorState},e._computeCursorState=function(e,t){try{return e?e(t):null}catch(e){return De(e),null}},e.prototype.undo=function(){if(this.pushStackElement(),this.past.length>0){var e=this.past.pop();try{e.undo(this.model)}catch(e){return De(e),this.clear(),null}return this.future.push(e),{selections:e.beforeCursorState,recordedVersionId:e.beforeVersionId}}return null},e.prototype.canUndo=function(){return this.past.length>0||null!==this.currentOpenStackElement},e.prototype.redo=function(){if(this.future.length>0){var e=this.future.pop();try{e.redo(this.model)}catch(e){return De(e),this.clear(),null}return this.past.push(e),{selections:e.afterCursorState,recordedVersionId:e.afterVersionId}}return null},e.prototype.canRedo=function(){return this.future.length>0},e}(),Ag=function(){this.spacesDiff=0,this.looksLikeAlignment=!1};function Fg(e,t,n,i,o){var r;for(o.spacesDiff=0,o.looksLikeAlignment=!1,r=0;r<t&&r<i;r++){if(e.charCodeAt(r)!==n.charCodeAt(r))break}for(var s=0,a=0,u=r;u<t;u++){32===e.charCodeAt(u)?s++:a++}var l=0,c=0;for(u=r;u<i;u++){32===n.charCodeAt(u)?l++:c++}if(!(s>0&&a>0||l>0&&c>0)){var d=Math.abs(a-c),h=Math.abs(s-l);if(0===d)return o.spacesDiff=h,void(h>0&&0<=l-1&&l-1<e.length&&l<n.length&&32!==n.charCodeAt(l)&&32===e.charCodeAt(l-1)&&44===e.charCodeAt(e.length-1)&&(o.looksLikeAlignment=!0));h%d!=0||(o.spacesDiff=h/d)}}function Wg(e,t,n){for(var i=Math.min(e.getLineCount(),1e4),o=0,r=0,s="",a=0,u=[0,0,0,0,0,0,0,0,0],l=new Ag,c=1;c<=i;c++){for(var d=e.getLineLength(c),h=e.getLineContent(c),p=d<=65536,f=!1,g=0,m=0,v=0,_=0,y=d;_<y;_++){var b=p?h.charCodeAt(_):e.getLineCharCode(c,_);if(9===b)v++;else{if(32!==b){f=!0,g=_;break}m++}}if(f&&(v>0?o++:m>1&&r++,Fg(s,a,h,g,l),!l.looksLikeAlignment||n&&t===l.spacesDiff)){var w=l.spacesDiff;w<=8&&u[w]++,s=h,a=g}}var C=n;o!==r&&(C=o<r);var S=t;if(C){var L=C?0:.1*i;[2,4,6,8,3,5,7].forEach((function(e){var t=u[e];t>L&&(L=t,S=e)})),4===S&&u[4]>0&&u[2]>0&&u[2]>=u[4]/2&&(S=2)}return{insertSpaces:C,tabSize:S}}function Vg(e){return(1&e.metadata)>>>0}function Bg(e,t){e.metadata=254&e.metadata|t<<0}function Hg(e){return(2&e.metadata)>>>1==1}function zg(e,t){e.metadata=253&e.metadata|(t?1:0)<<1}function jg(e){return(4&e.metadata)>>>2==1}function Ug(e,t){e.metadata=251&e.metadata|(t?1:0)<<2}function Kg(e){return(8&e.metadata)>>>3==1}function qg(e,t){e.metadata=247&e.metadata|(t?1:0)<<3}function Gg(e,t){e.metadata=207&e.metadata|t<<4}function Zg(e,t){e.metadata=191&e.metadata|(t?1:0)<<6}var Yg=function(){function e(e,t,n){this.metadata=0,this.parent=this,this.left=this,this.right=this,Bg(this,1),this.start=t,this.end=n,this.delta=0,this.maxEnd=n,this.id=e,this.ownerId=0,this.options=null,Ug(this,!1),Gg(this,1),qg(this,!1),Zg(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=n,this.range=null,zg(this,!1)}return e.prototype.reset=function(e,t,n,i){this.start=t,this.end=n,this.maxEnd=n,this.cachedVersionId=e,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=n,this.range=i},e.prototype.setOptions=function(e){this.options=e;var t=this.options.className;Ug(this,"squiggly-error"===t||"squiggly-warning"===t||"squiggly-info"===t),Gg(this,this.options.stickiness),qg(this,!(!this.options.overviewRuler||!this.options.overviewRuler.color)),Zg(this,this.options.collapseOnReplaceEdit)},e.prototype.setCachedOffsets=function(e,t,n){this.cachedVersionId!==n&&(this.range=null),this.cachedVersionId=n,this.cachedAbsoluteStart=e,this.cachedAbsoluteEnd=t},e.prototype.detach=function(){this.parent=null,this.left=null,this.right=null},e}(),Xg=new Yg(null,0,0);Xg.parent=Xg,Xg.left=Xg,Xg.right=Xg,Bg(Xg,0);var $g=function(){function e(){this.root=Xg,this.requestNormalizeDelta=!1}return e.prototype.intervalSearch=function(e,t,n,i,o){return this.root===Xg?[]:function(e,t,n,i,o,r){var s=e.root,a=0,u=0,l=0,c=[],d=0;for(;s!==Xg;)if(Hg(s))zg(s.left,!1),zg(s.right,!1),s===s.parent.right&&(a-=s.parent.delta),s=s.parent;else{if(!Hg(s.left)){if(a+s.maxEnd<t){zg(s,!0);continue}if(s.left!==Xg){s=s.left;continue}}if((u=a+s.start)>n)zg(s,!0);else{if((l=a+s.end)>=t){s.setCachedOffsets(u,l,r);var h=!0;i&&s.ownerId&&s.ownerId!==i&&(h=!1),o&&jg(s)&&(h=!1),h&&(c[d++]=s)}zg(s,!0),s.right===Xg||Hg(s.right)||(a+=s.delta,s=s.right)}}return zg(e.root,!1),c}(this,e,t,n,i,o)},e.prototype.search=function(e,t,n){return this.root===Xg?[]:function(e,t,n,i){var o=e.root,r=0,s=0,a=0,u=[],l=0;for(;o!==Xg;)if(Hg(o))zg(o.left,!1),zg(o.right,!1),o===o.parent.right&&(r-=o.parent.delta),o=o.parent;else if(o.left===Xg||Hg(o.left)){s=r+o.start,a=r+o.end,o.setCachedOffsets(s,a,i);var c=!0;t&&o.ownerId&&o.ownerId!==t&&(c=!1),n&&jg(o)&&(c=!1),c&&(u[l++]=o),zg(o,!0),o.right===Xg||Hg(o.right)||(r+=o.delta,o=o.right)}else o=o.left;return zg(e.root,!1),u}(this,e,t,n)},e.prototype.collectNodesFromOwner=function(e){return function(e,t){var n=e.root,i=[],o=0;for(;n!==Xg;)Hg(n)?(zg(n.left,!1),zg(n.right,!1),n=n.parent):n.left===Xg||Hg(n.left)?(n.ownerId===t&&(i[o++]=n),zg(n,!0),n.right===Xg||Hg(n.right)||(n=n.right)):n=n.left;return zg(e.root,!1),i}(this,e)},e.prototype.collectNodesPostOrder=function(){return function(e){var t=e.root,n=[],i=0;for(;t!==Xg;)Hg(t)?(zg(t.left,!1),zg(t.right,!1),t=t.parent):t.left===Xg||Hg(t.left)?t.right===Xg||Hg(t.right)?(n[i++]=t,zg(t,!0)):t=t.right:t=t.left;return zg(e.root,!1),n}(this)},e.prototype.insert=function(e){em(this,e),this._normalizeDeltaIfNecessary()},e.prototype.delete=function(e){tm(this,e),this._normalizeDeltaIfNecessary()},e.prototype.resolveNode=function(e,t){for(var n=e,i=0;e!==this.root;)e===e.parent.right&&(i+=e.parent.delta),e=e.parent;var o=n.start+i,r=n.end+i;n.setCachedOffsets(o,r,t)},e.prototype.acceptReplace=function(e,t,n,i){for(var o=function(e,t,n){var i=e.root,o=0,r=0,s=0,a=[],u=0;for(;i!==Xg;)if(Hg(i))zg(i.left,!1),zg(i.right,!1),i===i.parent.right&&(o-=i.parent.delta),i=i.parent;else{if(!Hg(i.left)){if(o+i.maxEnd<t){zg(i,!0);continue}if(i.left!==Xg){i=i.left;continue}}(r=o+i.start)>n?zg(i,!0):((s=o+i.end)>=t&&(i.setCachedOffsets(r,s,0),a[u++]=i),zg(i,!0),i.right===Xg||Hg(i.right)||(o+=i.delta,i=i.right))}return zg(e.root,!1),a}(this,e,e+t),r=0,s=o.length;r<s;r++){tm(this,a=o[r])}this._normalizeDeltaIfNecessary(),function(e,t,n,i){var o=e.root,r=0,s=i-(n-t);for(;o!==Xg;)if(Hg(o))zg(o.left,!1),zg(o.right,!1),o===o.parent.right&&(r-=o.parent.delta),sm(o),o=o.parent;else{if(!Hg(o.left)){if(r+o.maxEnd<t){zg(o,!0);continue}if(o.left!==Xg){o=o.left;continue}}r+o.start>n?(o.start+=s,o.end+=s,o.delta+=s,(o.delta<-1073741824||o.delta>1073741824)&&(e.requestNormalizeDelta=!0),zg(o,!0)):(zg(o,!0),o.right===Xg||Hg(o.right)||(r+=o.delta,o=o.right))}zg(e.root,!1)}(this,e,e+t,n),this._normalizeDeltaIfNecessary();for(r=0,s=o.length;r<s;r++){var a;(a=o[r]).start=a.cachedAbsoluteStart,a.end=a.cachedAbsoluteEnd,Jg(a,e,e+t,n,i),a.maxEnd=a.end,em(this,a)}this._normalizeDeltaIfNecessary()},e.prototype._normalizeDeltaIfNecessary=function(){this.requestNormalizeDelta&&(this.requestNormalizeDelta=!1,function(e){var t=e.root,n=0;for(;t!==Xg;)t.left===Xg||Hg(t.left)?t.right===Xg||Hg(t.right)?(t.start=n+t.start,t.end=n+t.end,t.delta=0,sm(t),zg(t,!0),zg(t.left,!1),zg(t.right,!1),t===t.parent.right&&(n-=t.parent.delta),t=t.parent):(n+=t.delta,t=t.right):t=t.left;zg(e.root,!1)}(this))},e}();function Qg(e,t,n,i){return e<n||!(e>n)&&(1!==i&&(2===i||t))}function Jg(e,t,n,i,o){var r=function(e){return(48&e.metadata)>>>4}(e),s=0===r||2===r,a=1===r||2===r,u=n-t,l=i,c=Math.min(u,l),d=e.start,h=!1,p=e.end,f=!1;t<=d&&p<=n&&function(e){return(64&e.metadata)>>>6==1}(e)&&(e.start=t,h=!0,e.end=t,f=!0);var g=o?1:u>0?2:0;if(!h&&Qg(d,s,t,g)&&(h=!0),!f&&Qg(p,a,t,g)&&(f=!0),c>0&&!o){g=u>l?2:0;!h&&Qg(d,s,t+c,g)&&(h=!0),!f&&Qg(p,a,t+c,g)&&(f=!0)}g=o?1:0;!h&&Qg(d,s,n,g)&&(e.start=t+l,h=!0),!f&&Qg(p,a,n,g)&&(e.end=t+l,f=!0);var m=l-u;h||(e.start=Math.max(0,d+m)),f||(e.end=Math.max(0,p+m)),e.start>e.end&&(e.end=e.start)}function em(e,t){if(e.root===Xg)return t.parent=Xg,t.left=Xg,t.right=Xg,Bg(t,0),e.root=t,e.root;!function(e,t){var n=0,i=e.root,o=t.start,r=t.end;for(;;){if(um(o,r,i.start+n,i.end+n)<0){if(i.left===Xg){t.start-=n,t.end-=n,t.maxEnd-=n,i.left=t;break}i=i.left}else{if(i.right===Xg){t.start-=n+i.delta,t.end-=n+i.delta,t.maxEnd-=n+i.delta,i.right=t;break}n+=i.delta,i=i.right}}t.parent=i,t.left=Xg,t.right=Xg,Bg(t,1)}(e,t),am(t.parent);for(var n=t;n!==e.root&&1===Vg(n.parent);){var i;if(n.parent===n.parent.parent.left)1===Vg(i=n.parent.parent.right)?(Bg(n.parent,0),Bg(i,0),Bg(n.parent.parent,1),n=n.parent.parent):(n===n.parent.right&&im(e,n=n.parent),Bg(n.parent,0),Bg(n.parent.parent,1),om(e,n.parent.parent));else 1===Vg(i=n.parent.parent.left)?(Bg(n.parent,0),Bg(i,0),Bg(n.parent.parent,1),n=n.parent.parent):(n===n.parent.left&&om(e,n=n.parent),Bg(n.parent,0),Bg(n.parent.parent,1),im(e,n.parent.parent))}return Bg(e.root,0),t}function tm(e,t){var n,i;if(t.left===Xg?(i=t,(n=t.right).delta+=t.delta,(n.delta<-1073741824||n.delta>1073741824)&&(e.requestNormalizeDelta=!0),n.start+=t.delta,n.end+=t.delta):t.right===Xg?(n=t.left,i=t):((n=(i=function(e){for(;e.left!==Xg;)e=e.left;return e}(t.right)).right).start+=i.delta,n.end+=i.delta,n.delta+=i.delta,(n.delta<-1073741824||n.delta>1073741824)&&(e.requestNormalizeDelta=!0),i.start+=t.delta,i.end+=t.delta,i.delta=t.delta,(i.delta<-1073741824||i.delta>1073741824)&&(e.requestNormalizeDelta=!0)),i===e.root)return e.root=n,Bg(n,0),t.detach(),nm(),sm(n),void(e.root.parent=Xg);var o,r=1===Vg(i);if(i===i.parent.left?i.parent.left=n:i.parent.right=n,i===t?n.parent=i.parent:(i.parent===t?n.parent=i:n.parent=i.parent,i.left=t.left,i.right=t.right,i.parent=t.parent,Bg(i,Vg(t)),t===e.root?e.root=i:t===t.parent.left?t.parent.left=i:t.parent.right=i,i.left!==Xg&&(i.left.parent=i),i.right!==Xg&&(i.right.parent=i)),t.detach(),r)return am(n.parent),i!==t&&(am(i),am(i.parent)),void nm();for(am(n),am(n.parent),i!==t&&(am(i),am(i.parent));n!==e.root&&0===Vg(n);)n===n.parent.left?(1===Vg(o=n.parent.right)&&(Bg(o,0),Bg(n.parent,1),im(e,n.parent),o=n.parent.right),0===Vg(o.left)&&0===Vg(o.right)?(Bg(o,1),n=n.parent):(0===Vg(o.right)&&(Bg(o.left,0),Bg(o,1),om(e,o),o=n.parent.right),Bg(o,Vg(n.parent)),Bg(n.parent,0),Bg(o.right,0),im(e,n.parent),n=e.root)):(1===Vg(o=n.parent.left)&&(Bg(o,0),Bg(n.parent,1),om(e,n.parent),o=n.parent.left),0===Vg(o.left)&&0===Vg(o.right)?(Bg(o,1),n=n.parent):(0===Vg(o.left)&&(Bg(o.right,0),Bg(o,1),im(e,o),o=n.parent.left),Bg(o,Vg(n.parent)),Bg(n.parent,0),Bg(o.left,0),om(e,n.parent),n=e.root));Bg(n,0),nm()}function nm(){Xg.parent=Xg,Xg.delta=0,Xg.start=0,Xg.end=0}function im(e,t){var n=t.right;n.delta+=t.delta,(n.delta<-1073741824||n.delta>1073741824)&&(e.requestNormalizeDelta=!0),n.start+=t.delta,n.end+=t.delta,t.right=n.left,n.left!==Xg&&(n.left.parent=t),n.parent=t.parent,t.parent===Xg?e.root=n:t===t.parent.left?t.parent.left=n:t.parent.right=n,n.left=t,t.parent=n,sm(t),sm(n)}function om(e,t){var n=t.left;t.delta-=n.delta,(t.delta<-1073741824||t.delta>1073741824)&&(e.requestNormalizeDelta=!0),t.start-=n.delta,t.end-=n.delta,t.left=n.right,n.right!==Xg&&(n.right.parent=t),n.parent=t.parent,t.parent===Xg?e.root=n:t===t.parent.right?t.parent.right=n:t.parent.left=n,n.right=t,t.parent=n,sm(t),sm(n)}function rm(e){var t=e.end;if(e.left!==Xg){var n=e.left.maxEnd;n>t&&(t=n)}if(e.right!==Xg){var i=e.right.maxEnd+e.delta;i>t&&(t=i)}return t}function sm(e){e.maxEnd=rm(e)}function am(e){for(;e!==Xg;){var t=rm(e);if(e.maxEnd===t)return;e.maxEnd=t,e=e.parent}}function um(e,t,n,i){return e===n?t-i:e-n}var lm=function(){function e(e,t){this.piece=e,this.color=t,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}return e.prototype.next=function(){if(this.right!==cm)return dm(this.right);for(var e=this;e.parent!==cm&&e.parent.left!==e;)e=e.parent;return e.parent===cm?cm:e.parent},e.prototype.prev=function(){if(this.left!==cm)return hm(this.left);for(var e=this;e.parent!==cm&&e.parent.right!==e;)e=e.parent;return e.parent===cm?cm:e.parent},e.prototype.detach=function(){this.parent=null,this.left=null,this.right=null},e}(),cm=new lm(null,0);function dm(e){for(;e.left!==cm;)e=e.left;return e}function hm(e){for(;e.right!==cm;)e=e.right;return e}function pm(e){return e===cm?0:e.size_left+e.piece.length+pm(e.right)}function fm(e){return e===cm?0:e.lf_left+e.piece.lineFeedCnt+fm(e.right)}function gm(){cm.parent=cm}function mm(e,t){var n=t.right;n.size_left+=t.size_left+(t.piece?t.piece.length:0),n.lf_left+=t.lf_left+(t.piece?t.piece.lineFeedCnt:0),t.right=n.left,n.left!==cm&&(n.left.parent=t),n.parent=t.parent,t.parent===cm?e.root=n:t.parent.left===t?t.parent.left=n:t.parent.right=n,n.left=t,t.parent=n}function vm(e,t){var n=t.left;t.left=n.right,n.right!==cm&&(n.right.parent=t),n.parent=t.parent,t.size_left-=n.size_left+(n.piece?n.piece.length:0),t.lf_left-=n.lf_left+(n.piece?n.piece.lineFeedCnt:0),t.parent===cm?e.root=n:t===t.parent.right?t.parent.right=n:t.parent.left=n,n.right=t,t.parent=n}function _m(e,t){var n,i;if(n=t.left===cm?(i=t).right:t.right===cm?(i=t).left:(i=dm(t.right)).right,i===e.root)return e.root=n,n.color=0,t.detach(),gm(),void(e.root.parent=cm);var o=1===i.color;if(i===i.parent.left?i.parent.left=n:i.parent.right=n,i===t?(n.parent=i.parent,wm(e,n)):(i.parent===t?n.parent=i:n.parent=i.parent,wm(e,n),i.left=t.left,i.right=t.right,i.parent=t.parent,i.color=t.color,t===e.root?e.root=i:t===t.parent.left?t.parent.left=i:t.parent.right=i,i.left!==cm&&(i.left.parent=i),i.right!==cm&&(i.right.parent=i),i.size_left=t.size_left,i.lf_left=t.lf_left,wm(e,i)),t.detach(),n.parent.left===n){var r=pm(n),s=fm(n);if(r!==n.parent.size_left||s!==n.parent.lf_left){var a=r-n.parent.size_left,u=s-n.parent.lf_left;n.parent.size_left=r,n.parent.lf_left=s,bm(e,n.parent,a,u)}}if(wm(e,n.parent),o)gm();else{for(var l;n!==e.root&&0===n.color;)n===n.parent.left?(1===(l=n.parent.right).color&&(l.color=0,n.parent.color=1,mm(e,n.parent),l=n.parent.right),0===l.left.color&&0===l.right.color?(l.color=1,n=n.parent):(0===l.right.color&&(l.left.color=0,l.color=1,vm(e,l),l=n.parent.right),l.color=n.parent.color,n.parent.color=0,l.right.color=0,mm(e,n.parent),n=e.root)):(1===(l=n.parent.left).color&&(l.color=0,n.parent.color=1,vm(e,n.parent),l=n.parent.left),0===l.left.color&&0===l.right.color?(l.color=1,n=n.parent):(0===l.left.color&&(l.right.color=0,l.color=1,mm(e,l),l=n.parent.left),l.color=n.parent.color,n.parent.color=0,l.left.color=0,vm(e,n.parent),n=e.root));n.color=0,gm()}}function ym(e,t){for(wm(e,t);t!==e.root&&1===t.parent.color;){var n;if(t.parent===t.parent.parent.left)1===(n=t.parent.parent.right).color?(t.parent.color=0,n.color=0,t.parent.parent.color=1,t=t.parent.parent):(t===t.parent.right&&mm(e,t=t.parent),t.parent.color=0,t.parent.parent.color=1,vm(e,t.parent.parent));else 1===(n=t.parent.parent.left).color?(t.parent.color=0,n.color=0,t.parent.parent.color=1,t=t.parent.parent):(t===t.parent.left&&vm(e,t=t.parent),t.parent.color=0,t.parent.parent.color=1,mm(e,t.parent.parent))}e.root.color=0}function bm(e,t,n,i){for(;t!==e.root&&t!==cm;)t.parent.left===t&&(t.parent.size_left+=n,t.parent.lf_left+=i),t=t.parent}function wm(e,t){var n=0,i=0;if(t!==e.root){if(0===n){for(;t!==e.root&&t===t.parent.right;)t=t.parent;if(t===e.root)return;n=pm((t=t.parent).left)-t.size_left,i=fm(t.left)-t.lf_left,t.size_left+=n,t.lf_left+=i}for(;t!==e.root&&(0!==n||0!==i);)t.parent.left===t&&(t.parent.size_left+=n,t.parent.lf_left+=i),t=t.parent}}cm.parent=cm,cm.left=cm,cm.right=cm,cm.color=0;var Cm=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Sm=function(e){function t(t){for(var n=e.call(this,0)||this,i=0,o=t.length;i<o;i++)n.set(t.charCodeAt(i),2);return n.set(32,1),n.set(9,1),n}return Cm(t,e),t}(nc);var Lm,xm,Dm=(Lm=function(e){return new Sm(e)},xm={},function(e){return xm.hasOwnProperty(e)||(xm[e]=Lm(e)),xm[e]}),Nm=function(){function e(e,t,n,i){this.searchString=e,this.isRegex=t,this.matchCase=n,this.wordSeparators=i}return e.prototype.parseSearchRequest=function(){if(""===this.searchString)return null;var e;e=this.isRegex?function(e){if(!e||0===e.length)return!1;for(var t=0,n=e.length;t<n;t++){if(92===e.charCodeAt(t)){if(++t>=n)break;var i=e.charCodeAt(t);if(110===i||114===i||87===i||119===i)return!0}}return!1}(this.searchString):this.searchString.indexOf("\n")>=0;var t=null;try{t=yr(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:!1,multiline:e,global:!0,unicode:!0})}catch(e){return null}if(!t)return null;var n=!this.isRegex&&!e;return n&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()&&(n=this.matchCase),new km(t,this.wordSeparators?Dm(this.wordSeparators):null,n?this.searchString:null)},e}();var km=function(e,t,n){this.regex=e,this.wordSeparators=t,this.simpleSearch=n};function Em(e,t,n){if(!n)return new Ua(e,null);for(var i=[],o=0,r=t.length;o<r;o++)i[o]=t[o];return new Ua(e,i)}var Im=function(){function e(e){for(var t=[],n=0,i=0,o=e.length;i<o;i++)10===e.charCodeAt(i)&&(t[n++]=i);this._lineFeedsOffsets=t}return e.prototype.findLineFeedCountBeforeOffset=function(e){var t=this._lineFeedsOffsets,n=0,i=t.length-1;if(-1===i)return 0;if(e<=t[0])return 0;for(;n<i;){var o=n+((i-n)/2>>0);t[o]>=e?i=o-1:t[o+1]>=e?(n=o,i=o):n=o+1}return n+1},e}(),Om=function(){function e(){}return e.findMatches=function(e,t,n,i,o){var r=t.parseSearchRequest();return r?r.regex.multiline?this._doFindMatchesMultiline(e,n,new Tm(r.wordSeparators,r.regex),i,o):this._doFindMatchesLineByLine(e,n,r,i,o):[]},e._getMultilineMatchRange=function(e,t,n,i,o,r){var s,a,u=0;if(s=i?t+o+(u=i.findLineFeedCountBeforeOffset(o)):t+o,i){var l=i.findLineFeedCountBeforeOffset(o+r.length)-u;a=s+r.length+l}else a=s+r.length;var c=e.getPositionAt(s),d=e.getPositionAt(a);return new wn(c.lineNumber,c.column,d.lineNumber,d.column)},e._doFindMatchesMultiline=function(e,t,n,i,o){var r,s=e.getOffsetAt(t.getStartPosition()),a=e.getValueInRange(t,1),u="\r\n"===e.getEOL()?new Im(a):null,l=[],c=0;for(n.reset(0);r=n.next(a);)if(l[c++]=Em(this._getMultilineMatchRange(e,s,a,u,r.index,r[0]),r,i),c>=o)return l;return l},e._doFindMatchesLineByLine=function(e,t,n,i,o){var r=[],s=0;if(t.startLineNumber===t.endLineNumber){var a=e.getLineContent(t.startLineNumber).substring(t.startColumn-1,t.endColumn-1);return s=this._findMatchesInLine(n,a,t.startLineNumber,t.startColumn-1,s,r,i,o),r}var u=e.getLineContent(t.startLineNumber).substring(t.startColumn-1);s=this._findMatchesInLine(n,u,t.startLineNumber,t.startColumn-1,s,r,i,o);for(var l=t.startLineNumber+1;l<t.endLineNumber&&s<o;l++)s=this._findMatchesInLine(n,e.getLineContent(l),l,0,s,r,i,o);if(s<o){var c=e.getLineContent(t.endLineNumber).substring(0,t.endColumn-1);s=this._findMatchesInLine(n,c,t.endLineNumber,0,s,r,i,o)}return r},e._findMatchesInLine=function(e,t,n,i,o,r,s,a){var u=e.wordSeparators;if(!s&&e.simpleSearch){for(var l=e.simpleSearch,c=l.length,d=t.length,h=-c;-1!==(h=t.indexOf(l,h+c));)if((!u||Mm(u,t,d,h,c))&&(r[o++]=new Ua(new wn(n,h+1+i,n,h+1+c+i),null),o>=a))return o;return o}var p,f=new Tm(e.wordSeparators,e.regex);f.reset(0);do{if((p=f.next(t))&&(r[o++]=Em(new wn(n,p.index+1+i,n,p.index+1+p[0].length+i),p,s),o>=a))return o}while(p);return o},e.findNextMatch=function(e,t,n,i){var o=t.parseSearchRequest();if(!o)return null;var r=new Tm(o.wordSeparators,o.regex);return o.regex.multiline?this._doFindNextMatchMultiline(e,n,r,i):this._doFindNextMatchLineByLine(e,n,r,i)},e._doFindNextMatchMultiline=function(e,t,n,i){var o=new bn(t.lineNumber,1),r=e.getOffsetAt(o),s=e.getLineCount(),a=e.getValueInRange(new wn(o.lineNumber,o.column,s,e.getLineMaxColumn(s)),1),u="\r\n"===e.getEOL()?new Im(a):null;n.reset(t.column-1);var l=n.next(a);return l?Em(this._getMultilineMatchRange(e,r,a,u,l.index,l[0]),l,i):1!==t.lineNumber||1!==t.column?this._doFindNextMatchMultiline(e,new bn(1,1),n,i):null},e._doFindNextMatchLineByLine=function(e,t,n,i){var o=e.getLineCount(),r=t.lineNumber,s=e.getLineContent(r),a=this._findFirstMatchInLine(n,s,r,t.column,i);if(a)return a;for(var u=1;u<=o;u++){var l=(r+u-1)%o,c=e.getLineContent(l+1),d=this._findFirstMatchInLine(n,c,l+1,1,i);if(d)return d}return null},e._findFirstMatchInLine=function(e,t,n,i,o){e.reset(i-1);var r=e.next(t);return r?Em(new wn(n,r.index+1,n,r.index+1+r[0].length),r,o):null},e.findPreviousMatch=function(e,t,n,i){var o=t.parseSearchRequest();if(!o)return null;var r=new Tm(o.wordSeparators,o.regex);return o.regex.multiline?this._doFindPreviousMatchMultiline(e,n,r,i):this._doFindPreviousMatchLineByLine(e,n,r,i)},e._doFindPreviousMatchMultiline=function(e,t,n,i){var o=this._doFindMatchesMultiline(e,new wn(1,1,t.lineNumber,t.column),n,i,9990);if(o.length>0)return o[o.length-1];var r=e.getLineCount();return t.lineNumber!==r||t.column!==e.getLineMaxColumn(r)?this._doFindPreviousMatchMultiline(e,new bn(r,e.getLineMaxColumn(r)),n,i):null},e._doFindPreviousMatchLineByLine=function(e,t,n,i){var o=e.getLineCount(),r=t.lineNumber,s=e.getLineContent(r).substring(0,t.column-1),a=this._findLastMatchInLine(n,s,r,i);if(a)return a;for(var u=1;u<=o;u++){var l=(o+r-u-1)%o,c=e.getLineContent(l+1),d=this._findLastMatchInLine(n,c,l+1,i);if(d)return d}return null},e._findLastMatchInLine=function(e,t,n,i){var o,r=null;for(e.reset(0);o=e.next(t);)r=Em(new wn(n,o.index+1,n,o.index+1+o[0].length),o,i);return r},e}();function Mm(e,t,n,i,o){return function(e,t,n,i,o){if(0===i)return!0;var r=t.charCodeAt(i-1);if(0!==e.get(r))return!0;if(13===r||10===r)return!0;if(o>0){var s=t.charCodeAt(i);if(0!==e.get(s))return!0}return!1}(e,t,0,i,o)&&function(e,t,n,i,o){if(i+o===n)return!0;var r=t.charCodeAt(i+o);if(0!==e.get(r))return!0;if(13===r||10===r)return!0;if(o>0){var s=t.charCodeAt(i+o-1);if(0!==e.get(s))return!0}return!1}(e,t,n,i,o)}var Tm=function(){function e(e,t){this._wordSeparators=e,this._searchRegex=t,this._prevMatchStartIndex=-1,this._prevMatchLength=0}return e.prototype.reset=function(e){this._searchRegex.lastIndex=e,this._prevMatchStartIndex=-1,this._prevMatchLength=0},e.prototype.next=function(e){var t,n=e.length;do{if(this._prevMatchStartIndex+this._prevMatchLength===n)return null;if(!(t=this._searchRegex.exec(e)))return null;var i=t.index,o=t[0].length;if(i===this._prevMatchStartIndex&&o===this._prevMatchLength){if(0===o){this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=i,this._prevMatchLength=o,!this._wordSeparators||Mm(this._wordSeparators,e,n,i,o))return t}while(t);return null},e}();function Pm(e){var t;return(t=e[e.length-1]<65536?new Uint16Array(e.length):new Uint32Array(e.length)).set(e,0),t}var Rm=function(e,t,n,i,o){this.lineStarts=e,this.cr=t,this.lf=n,this.crlf=i,this.isBasicASCII=o};function Am(e,t){void 0===t&&(t=!0);for(var n=[0],i=1,o=0,r=e.length;o<r;o++){var s=e.charCodeAt(o);13===s?o+1<r&&10===e.charCodeAt(o+1)?(n[i++]=o+2,o++):n[i++]=o+1:10===s&&(n[i++]=o+1)}return t?Pm(n):n}var Fm=function(e,t,n,i,o){this.bufferIndex=e,this.start=t,this.end=n,this.lineFeedCnt=i,this.length=o},Wm=function(e,t){this.buffer=e,this.lineStarts=t},Vm=function(){function e(e){this._limit=e,this._cache=[]}return e.prototype.get=function(e){for(var t=this._cache.length-1;t>=0;t--){var n=this._cache[t];if(n.nodeStartOffset<=e&&n.nodeStartOffset+n.node.piece.length>=e)return n}return null},e.prototype.get2=function(e){for(var t=this._cache.length-1;t>=0;t--){var n=this._cache[t];if(n.nodeStartLineNumber&&n.nodeStartLineNumber<e&&n.nodeStartLineNumber+n.node.piece.lineFeedCnt>=e)return n}return null},e.prototype.set=function(e){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(e)},e.prototype.valdiate=function(e){for(var t=!1,n=this._cache,i=0;i<n.length;i++){var o=n[i];(null===o.node.parent||o.nodeStartOffset>=e)&&(n[i]=null,t=!0)}if(t){for(var r=[],s=0,a=n;s<a.length;s++){var u=a[s];null!==u&&r.push(u)}this._cache=r}},e}(),Bm=function(){function e(e,t,n){this.create(e,t,n)}return e.prototype.create=function(e,t,n){this._buffers=[new Wm("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=cm,this._lineCnt=1,this._length=0,this._EOL=t,this._EOLLength=t.length,this._EOLNormalized=n;for(var i=null,o=0,r=e.length;o<r;o++)if(e[o].buffer.length>0){e[o].lineStarts||(e[o].lineStarts=Am(e[o].buffer));var s=new Fm(o+1,{line:0,column:0},{line:e[o].lineStarts.length-1,column:e[o].buffer.length-e[o].lineStarts[e[o].lineStarts.length-1]},e[o].lineStarts.length-1,e[o].buffer.length);this._buffers.push(e[o]),i=this.rbInsertRight(i,s)}this._searchCache=new Vm(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()},e.prototype.normalizeEOL=function(e){var t=this,n=65535-Math.floor(21845),i=2*n,o="",r=0,s=[];if(this.iterate(this.root,(function(a){var u=t.getNodeContent(a),l=u.length;if(r<=n||r+l<i)return o+=u,r+=l,!0;var c=o.replace(/\r\n|\r|\n/g,e);return s.push(new Wm(c,Am(c))),o=u,r=l,!0})),r>0){var a=o.replace(/\r\n|\r|\n/g,e);s.push(new Wm(a,Am(a)))}this.create(s,e,!0)},e.prototype.getEOL=function(){return this._EOL},e.prototype.setEOL=function(e){this._EOL=e,this._EOLLength=this._EOL.length,this.normalizeEOL(e)},e.prototype.getOffsetAt=function(e,t){for(var n=0,i=this.root;i!==cm;)if(i.left!==cm&&i.lf_left+1>=e)i=i.left;else{if(i.lf_left+i.piece.lineFeedCnt+1>=e)return(n+=i.size_left)+(this.getAccumulatedValue(i,e-i.lf_left-2)+t-1);e-=i.lf_left+i.piece.lineFeedCnt,n+=i.size_left+i.piece.length,i=i.right}return n},e.prototype.getPositionAt=function(e){e=Math.floor(e),e=Math.max(0,e);for(var t=this.root,n=0,i=e;t!==cm;)if(0!==t.size_left&&t.size_left>=e)t=t.left;else{if(t.size_left+t.piece.length>=e){var o=this.getIndexOf(t,e-t.size_left);if(n+=t.lf_left+o.index,0===o.index){var r=this.getOffsetAt(n+1,1);return new bn(n+1,i-r+1)}return new bn(n+1,o.remainder+1)}if(e-=t.size_left+t.piece.length,n+=t.lf_left+t.piece.lineFeedCnt,t.right===cm){r=this.getOffsetAt(n+1,1);return new bn(n+1,i-e-r+1)}t=t.right}return new bn(1,1)},e.prototype.getValueInRange=function(e,t){if(e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn)return"";var n=this.nodeAt2(e.startLineNumber,e.startColumn),i=this.nodeAt2(e.endLineNumber,e.endColumn),o=this.getValueInRange2(n,i);return t?t===this._EOL&&this._EOLNormalized&&t===this.getEOL()&&this._EOLNormalized?o:o.replace(/\r\n|\r|\n/g,t):o},e.prototype.getValueInRange2=function(e,t){if(e.node===t.node){var n=e.node,i=this._buffers[n.piece.bufferIndex].buffer,o=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);return i.substring(o+e.remainder,o+t.remainder)}var r=e.node,s=this._buffers[r.piece.bufferIndex].buffer,a=this.offsetInBuffer(r.piece.bufferIndex,r.piece.start),u=s.substring(a+e.remainder,a+r.piece.length);for(r=r.next();r!==cm;){var l=this._buffers[r.piece.bufferIndex].buffer,c=this.offsetInBuffer(r.piece.bufferIndex,r.piece.start);if(r===t.node){u+=l.substring(c,c+t.remainder);break}u+=l.substr(c,r.piece.length),r=r.next()}return u},e.prototype.getLinesContent=function(){var e=this,t=[],n=0,i="",o=!1;return this.iterate(this.root,(function(r){if(r===cm)return!0;var s=r.piece,a=s.length;if(0===a)return!0;var u=e._buffers[s.bufferIndex].buffer,l=e._buffers[s.bufferIndex].lineStarts,c=s.start.line,d=s.end.line,h=l[c]+s.start.column;if(o&&(10===u.charCodeAt(h)&&(h++,a--),t[n++]=i,i="",o=!1,0===a))return!0;if(c===d)return e._EOLNormalized||13!==u.charCodeAt(h+a-1)?i+=u.substr(h,a):(o=!0,i+=u.substr(h,a-1)),!0;i+=e._EOLNormalized?u.substring(h,Math.max(h,l[c+1]-e._EOLLength)):u.substring(h,l[c+1]).replace(/(\r\n|\r|\n)$/,""),t[n++]=i;for(var p=c+1;p<d;p++)i=e._EOLNormalized?u.substring(l[p],l[p+1]-e._EOLLength):u.substring(l[p],l[p+1]).replace(/(\r\n|\r|\n)$/,""),t[n++]=i;return e._EOLNormalized||13!==u.charCodeAt(l[d]+s.end.column-1)?i=u.substr(l[d],s.end.column):(o=!0,0===s.end.column?n--:i=u.substr(l[d],s.end.column-1)),!0})),o&&(t[n++]=i,i=""),t[n++]=i,t},e.prototype.getLength=function(){return this._length},e.prototype.getLineCount=function(){return this._lineCnt},e.prototype.getLineContent=function(e){return this._lastVisitedLine.lineNumber===e||(this._lastVisitedLine.lineNumber=e,e===this._lineCnt?this._lastVisitedLine.value=this.getLineRawContent(e):this._EOLNormalized?this._lastVisitedLine.value=this.getLineRawContent(e,this._EOLLength):this._lastVisitedLine.value=this.getLineRawContent(e).replace(/(\r\n|\r|\n)$/,"")),this._lastVisitedLine.value},e.prototype.getLineCharCode=function(e,t){var n=this.nodeAt2(e,t+1);if(n.remainder===n.node.piece.length){var i=n.node.next();if(!i)return 0;var o=this._buffers[i.piece.bufferIndex],r=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);return o.buffer.charCodeAt(r)}o=this._buffers[n.node.piece.bufferIndex];var s=(r=this.offsetInBuffer(n.node.piece.bufferIndex,n.node.piece.start))+n.remainder;return o.buffer.charCodeAt(s)},e.prototype.getLineLength=function(e){if(e===this.getLineCount()){var t=this.getOffsetAt(e,1);return this.getLength()-t}return this.getOffsetAt(e+1,1)-this.getOffsetAt(e,1)-this._EOLLength},e.prototype.findMatchesInNode=function(e,t,n,i,o,r,s,a,u,l,c){var d,h,p,f=this._buffers[e.piece.bufferIndex],g=this.offsetInBuffer(e.piece.bufferIndex,e.piece.start),m=this.offsetInBuffer(e.piece.bufferIndex,o),v=this.offsetInBuffer(e.piece.bufferIndex,r),_={line:0,column:0};t._wordSeparators?(h=f.buffer.substring(m,v),p=function(e){return e+m},t.reset(-1)):(h=f.buffer,p=function(e){return e},t.reset(m));do{if(d=t.next(h)){if(p(d.index)>=v)return l;this.positionInBuffer(e,p(d.index)-g,_);var y=this.getLineFeedCnt(e.piece.bufferIndex,o,_),b=_.line===o.line?_.column-o.column+i:_.column+1,w=b+d[0].length;if(c[l++]=Em(new wn(n+y,b,n+y,w),d,a),p(d.index)+d[0].length>=v)return l;if(l>=u)return l}}while(d);return l},e.prototype.findMatchesLineByLine=function(e,t,n,i){var o=[],r=0,s=new Tm(t.wordSeparators,t.regex),a=this.nodeAt2(e.startLineNumber,e.startColumn);if(null===a)return[];var u=this.nodeAt2(e.endLineNumber,e.endColumn);if(null===u)return[];var l=this.positionInBuffer(a.node,a.remainder),c=this.positionInBuffer(u.node,u.remainder);if(a.node===u.node)return this.findMatchesInNode(a.node,s,e.startLineNumber,e.startColumn,l,c,t,n,i,r,o),o;for(var d=e.startLineNumber,h=a.node;h!==u.node;){var p=this.getLineFeedCnt(h.piece.bufferIndex,l,h.piece.end);if(p>=1){var f=this._buffers[h.piece.bufferIndex].lineStarts,g=this.offsetInBuffer(h.piece.bufferIndex,h.piece.start),m=f[l.line+p],v=d===e.startLineNumber?e.startColumn:1;if((r=this.findMatchesInNode(h,s,d,v,l,this.positionInBuffer(h,m-g),t,n,i,r,o))>=i)return o;d+=p}var _=d===e.startLineNumber?e.startColumn-1:0;if(d===e.endLineNumber){var y=this.getLineContent(d).substring(_,e.endColumn-1);return r=this._findMatchesInLine(t,s,y,e.endLineNumber,_,r,o,n,i),o}if((r=this._findMatchesInLine(t,s,this.getLineContent(d).substr(_),d,_,r,o,n,i))>=i)return o;d++,h=(a=this.nodeAt2(d,1)).node,l=this.positionInBuffer(a.node,a.remainder)}if(d===e.endLineNumber){var b=d===e.startLineNumber?e.startColumn-1:0;y=this.getLineContent(d).substring(b,e.endColumn-1);return r=this._findMatchesInLine(t,s,y,e.endLineNumber,b,r,o,n,i),o}var w=d===e.startLineNumber?e.startColumn:1;return r=this.findMatchesInNode(u.node,s,d,w,l,c,t,n,i,r,o),o},e.prototype._findMatchesInLine=function(e,t,n,i,o,r,s,a,u){var l,c=e.wordSeparators;if(!a&&e.simpleSearch){for(var d=e.simpleSearch,h=d.length,p=n.length,f=-h;-1!==(f=n.indexOf(d,f+h));)if((!c||Mm(c,n,p,f,h))&&(s[r++]=new Ua(new wn(i,f+1+o,i,f+1+h+o),null),r>=u))return r;return r}t.reset(0);do{if((l=t.next(n))&&(s[r++]=Em(new wn(i,l.index+1+o,i,l.index+1+l[0].length+o),l,a),r>=u))return r}while(l);return r},e.prototype.insert=function(e,t,n){if(void 0===n&&(n=!1),this._EOLNormalized=this._EOLNormalized&&n,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==cm){var i=this.nodeAt(e),o=i.node,r=i.remainder,s=i.nodeStartOffset,a=o.piece,u=a.bufferIndex,l=this.positionInBuffer(o,r);if(0===o.piece.bufferIndex&&a.end.line===this._lastChangeBufferPos.line&&a.end.column===this._lastChangeBufferPos.column&&s+a.length===e&&t.length<65535)return this.appendToNode(o,t),void this.computeBufferMetadata();if(s===e)this.insertContentToNodeLeft(t,o),this._searchCache.valdiate(e);else if(s+o.piece.length>e){var c=[],d=new Fm(a.bufferIndex,l,a.end,this.getLineFeedCnt(a.bufferIndex,l,a.end),this.offsetInBuffer(u,a.end)-this.offsetInBuffer(u,l));if(this.shouldCheckCRLF()&&this.endWithCR(t))if(10===this.nodeCharCodeAt(o,r)){var h={line:d.start.line+1,column:0};d=new Fm(d.bufferIndex,h,d.end,this.getLineFeedCnt(d.bufferIndex,h,d.end),d.length-1),t+="\n"}if(this.shouldCheckCRLF()&&this.startWithLF(t))if(13===this.nodeCharCodeAt(o,r-1)){var p=this.positionInBuffer(o,r-1);this.deleteNodeTail(o,p),t="\r"+t,0===o.piece.length&&c.push(o)}else this.deleteNodeTail(o,l);else this.deleteNodeTail(o,l);var f=this.createNewPieces(t);d.length>0&&this.rbInsertRight(o,d);for(var g=o,m=0;m<f.length;m++)g=this.rbInsertRight(g,f[m]);this.deleteNodes(c)}else this.insertContentToNodeRight(t,o)}else{var v=this.createNewPieces(t);for(o=this.rbInsertLeft(null,v[0]),m=1;m<v.length;m++)o=this.rbInsertRight(o,v[m])}this.computeBufferMetadata()},e.prototype.delete=function(e,t){if(this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",!(t<=0||this.root===cm)){var n=this.nodeAt(e),i=this.nodeAt(e+t),o=n.node,r=i.node;if(o===r){var s=this.positionInBuffer(o,n.remainder),a=this.positionInBuffer(o,i.remainder);if(n.nodeStartOffset===e){if(t===o.piece.length){var u=o.next();return _m(this,o),this.validateCRLFWithPrevNode(u),void this.computeBufferMetadata()}return this.deleteNodeHead(o,a),this._searchCache.valdiate(e),this.validateCRLFWithPrevNode(o),void this.computeBufferMetadata()}return n.nodeStartOffset+o.piece.length===e+t?(this.deleteNodeTail(o,s),this.validateCRLFWithNextNode(o),void this.computeBufferMetadata()):(this.shrinkNode(o,s,a),void this.computeBufferMetadata())}var l=[],c=this.positionInBuffer(o,n.remainder);this.deleteNodeTail(o,c),this._searchCache.valdiate(e),0===o.piece.length&&l.push(o);var d=this.positionInBuffer(r,i.remainder);this.deleteNodeHead(r,d),0===r.piece.length&&l.push(r);for(var h=o.next();h!==cm&&h!==r;h=h.next())l.push(h);var p=0===o.piece.length?o.prev():o;this.deleteNodes(l),this.validateCRLFWithNextNode(p),this.computeBufferMetadata()}},e.prototype.insertContentToNodeLeft=function(e,t){var n=[];if(this.shouldCheckCRLF()&&this.endWithCR(e)&&this.startWithLF(t)){var i=t.piece,o={line:i.start.line+1,column:0},r=new Fm(i.bufferIndex,o,i.end,this.getLineFeedCnt(i.bufferIndex,o,i.end),i.length-1);t.piece=r,e+="\n",bm(this,t,-1,-1),0===t.piece.length&&n.push(t)}for(var s=this.createNewPieces(e),a=this.rbInsertLeft(t,s[s.length-1]),u=s.length-2;u>=0;u--)a=this.rbInsertLeft(a,s[u]);this.validateCRLFWithPrevNode(a),this.deleteNodes(n)},e.prototype.insertContentToNodeRight=function(e,t){this.adjustCarriageReturnFromNext(e,t)&&(e+="\n");for(var n=this.createNewPieces(e),i=this.rbInsertRight(t,n[0]),o=i,r=1;r<n.length;r++)o=this.rbInsertRight(o,n[r]);this.validateCRLFWithPrevNode(i)},e.prototype.positionInBuffer=function(e,t,n){for(var i=e.piece,o=e.piece.bufferIndex,r=this._buffers[o].lineStarts,s=r[i.start.line]+i.start.column+t,a=i.start.line,u=i.end.line,l=0,c=0,d=0;a<=u&&(d=r[l=a+(u-a)/2|0],l!==u);)if(c=r[l+1],s<d)u=l-1;else{if(!(s>=c))break;a=l+1}return n?(n.line=l,n.column=s-d,null):{line:l,column:s-d}},e.prototype.getLineFeedCnt=function(e,t,n){if(0===n.column)return n.line-t.line;var i=this._buffers[e].lineStarts;if(n.line===i.length-1)return n.line-t.line;var o=i[n.line+1],r=i[n.line]+n.column;if(o>r+1)return n.line-t.line;var s=r-1;return 13===this._buffers[e].buffer.charCodeAt(s)?n.line-t.line+1:n.line-t.line},e.prototype.offsetInBuffer=function(e,t){return this._buffers[e].lineStarts[t.line]+t.column},e.prototype.deleteNodes=function(e){for(var t=0;t<e.length;t++)_m(this,e[t])},e.prototype.createNewPieces=function(e){if(e.length>65535){for(var t=[];e.length>65535;){var n=e.charCodeAt(65534),i=void 0;13===n||n>=55296&&n<=56319?(i=e.substring(0,65534),e=e.substring(65534)):(i=e.substring(0,65535),e=e.substring(65535));var o=Am(i);t.push(new Fm(this._buffers.length,{line:0,column:0},{line:o.length-1,column:i.length-o[o.length-1]},o.length-1,i.length)),this._buffers.push(new Wm(i,o))}var r=Am(e);return t.push(new Fm(this._buffers.length,{line:0,column:0},{line:r.length-1,column:e.length-r[r.length-1]},r.length-1,e.length)),this._buffers.push(new Wm(e,r)),t}var s=this._buffers[0].buffer.length,a=Am(e,!1),u=this._lastChangeBufferPos;if(this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-1]===s&&0!==s&&this.startWithLF(e)&&this.endWithCR(this._buffers[0].buffer)){this._lastChangeBufferPos={line:this._lastChangeBufferPos.line,column:this._lastChangeBufferPos.column+1},u=this._lastChangeBufferPos;for(var l=0;l<a.length;l++)a[l]+=s+1;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(a.slice(1)),this._buffers[0].buffer+="_"+e,s+=1}else{if(0!==s)for(l=0;l<a.length;l++)a[l]+=s;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(a.slice(1)),this._buffers[0].buffer+=e}var c=this._buffers[0].buffer.length,d=this._buffers[0].lineStarts.length-1,h={line:d,column:c-this._buffers[0].lineStarts[d]},p=new Fm(0,u,h,this.getLineFeedCnt(0,u,h),c-s);return this._lastChangeBufferPos=h,[p]},e.prototype.getLineRawContent=function(e,t){void 0===t&&(t=0);var n=this.root,i="",o=this._searchCache.get2(e);if(o){n=o.node;var r=this.getAccumulatedValue(n,e-o.nodeStartLineNumber-1),s=this._buffers[n.piece.bufferIndex].buffer,a=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);if(o.nodeStartLineNumber+n.piece.lineFeedCnt!==e){var u=this.getAccumulatedValue(n,e-o.nodeStartLineNumber);return s.substring(a+r,a+u-t)}i=s.substring(a+r,a+n.piece.length)}else for(var l=0,c=e;n!==cm;)if(n.left!==cm&&n.lf_left>=e-1)n=n.left;else{if(n.lf_left+n.piece.lineFeedCnt>e-1){r=this.getAccumulatedValue(n,e-n.lf_left-2),u=this.getAccumulatedValue(n,e-n.lf_left-1),s=this._buffers[n.piece.bufferIndex].buffer,a=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);return l+=n.size_left,this._searchCache.set({node:n,nodeStartOffset:l,nodeStartLineNumber:c-(e-1-n.lf_left)}),s.substring(a+r,a+u-t)}if(n.lf_left+n.piece.lineFeedCnt===e-1){r=this.getAccumulatedValue(n,e-n.lf_left-2),s=this._buffers[n.piece.bufferIndex].buffer,a=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);i=s.substring(a+r,a+n.piece.length);break}e-=n.lf_left+n.piece.lineFeedCnt,l+=n.size_left+n.piece.length,n=n.right}for(n=n.next();n!==cm;){s=this._buffers[n.piece.bufferIndex].buffer;if(n.piece.lineFeedCnt>0){u=this.getAccumulatedValue(n,0),a=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);return i+=s.substring(a,a+u-t)}a=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);i+=s.substr(a,n.piece.length),n=n.next()}return i},e.prototype.computeBufferMetadata=function(){for(var e=this.root,t=1,n=0;e!==cm;)t+=e.lf_left+e.piece.lineFeedCnt,n+=e.size_left+e.piece.length,e=e.right;this._lineCnt=t,this._length=n,this._searchCache.valdiate(this._length)},e.prototype.getIndexOf=function(e,t){var n=e.piece,i=this.positionInBuffer(e,t),o=i.line-n.start.line;if(this.offsetInBuffer(n.bufferIndex,n.end)-this.offsetInBuffer(n.bufferIndex,n.start)===t){var r=this.getLineFeedCnt(e.piece.bufferIndex,n.start,i);if(r!==o)return{index:r,remainder:0}}return{index:o,remainder:i.column}},e.prototype.getAccumulatedValue=function(e,t){if(t<0)return 0;var n=e.piece,i=this._buffers[n.bufferIndex].lineStarts,o=n.start.line+t+1;return o>n.end.line?i[n.end.line]+n.end.column-i[n.start.line]-n.start.column:i[o]-i[n.start.line]-n.start.column},e.prototype.deleteNodeTail=function(e,t){var n=e.piece,i=n.lineFeedCnt,o=this.offsetInBuffer(n.bufferIndex,n.end),r=t,s=this.offsetInBuffer(n.bufferIndex,r),a=this.getLineFeedCnt(n.bufferIndex,n.start,r),u=a-i,l=s-o,c=n.length+l;e.piece=new Fm(n.bufferIndex,n.start,r,a,c),bm(this,e,l,u)},e.prototype.deleteNodeHead=function(e,t){var n=e.piece,i=n.lineFeedCnt,o=this.offsetInBuffer(n.bufferIndex,n.start),r=t,s=this.getLineFeedCnt(n.bufferIndex,r,n.end),a=s-i,u=o-this.offsetInBuffer(n.bufferIndex,r),l=n.length+u;e.piece=new Fm(n.bufferIndex,r,n.end,s,l),bm(this,e,u,a)},e.prototype.shrinkNode=function(e,t,n){var i=e.piece,o=i.start,r=i.end,s=i.length,a=i.lineFeedCnt,u=t,l=this.getLineFeedCnt(i.bufferIndex,i.start,u),c=this.offsetInBuffer(i.bufferIndex,t)-this.offsetInBuffer(i.bufferIndex,o);e.piece=new Fm(i.bufferIndex,i.start,u,l,c),bm(this,e,c-s,l-a);var d=new Fm(i.bufferIndex,n,r,this.getLineFeedCnt(i.bufferIndex,n,r),this.offsetInBuffer(i.bufferIndex,r)-this.offsetInBuffer(i.bufferIndex,n)),h=this.rbInsertRight(e,d);this.validateCRLFWithPrevNode(h)},e.prototype.appendToNode=function(e,t){this.adjustCarriageReturnFromNext(t,e)&&(t+="\n");var n=this.shouldCheckCRLF()&&this.startWithLF(t)&&this.endWithCR(e),i=this._buffers[0].buffer.length;this._buffers[0].buffer+=t;for(var o=Am(t,!1),r=0;r<o.length;r++)o[r]+=i;if(n){var s=this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-2];this._buffers[0].lineStarts.pop(),this._lastChangeBufferPos={line:this._lastChangeBufferPos.line-1,column:i-s}}this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(o.slice(1));var a=this._buffers[0].lineStarts.length-1,u={line:a,column:this._buffers[0].buffer.length-this._buffers[0].lineStarts[a]},l=e.piece.length+t.length,c=e.piece.lineFeedCnt,d=this.getLineFeedCnt(0,e.piece.start,u),h=d-c;e.piece=new Fm(e.piece.bufferIndex,e.piece.start,u,d,l),this._lastChangeBufferPos=u,bm(this,e,t.length,h)},e.prototype.nodeAt=function(e){var t=this.root,n=this._searchCache.get(e);if(n)return{node:n.node,nodeStartOffset:n.nodeStartOffset,remainder:e-n.nodeStartOffset};for(var i=0;t!==cm;)if(t.size_left>e)t=t.left;else{if(t.size_left+t.piece.length>=e){i+=t.size_left;var o={node:t,remainder:e-t.size_left,nodeStartOffset:i};return this._searchCache.set(o),o}e-=t.size_left+t.piece.length,i+=t.size_left+t.piece.length,t=t.right}return null},e.prototype.nodeAt2=function(e,t){for(var n=this.root,i=0;n!==cm;)if(n.left!==cm&&n.lf_left>=e-1)n=n.left;else{if(n.lf_left+n.piece.lineFeedCnt>e-1){var o=this.getAccumulatedValue(n,e-n.lf_left-2),r=this.getAccumulatedValue(n,e-n.lf_left-1);return i+=n.size_left,{node:n,remainder:Math.min(o+t-1,r),nodeStartOffset:i}}if(n.lf_left+n.piece.lineFeedCnt===e-1){if((o=this.getAccumulatedValue(n,e-n.lf_left-2))+t-1<=n.piece.length)return{node:n,remainder:o+t-1,nodeStartOffset:i};t-=n.piece.length-o;break}e-=n.lf_left+n.piece.lineFeedCnt,i+=n.size_left+n.piece.length,n=n.right}for(n=n.next();n!==cm;){if(n.piece.lineFeedCnt>0){r=this.getAccumulatedValue(n,0);var s=this.offsetOfNode(n);return{node:n,remainder:Math.min(t-1,r),nodeStartOffset:s}}if(n.piece.length>=t-1)return{node:n,remainder:t-1,nodeStartOffset:this.offsetOfNode(n)};t-=n.piece.length,n=n.next()}return null},e.prototype.nodeCharCodeAt=function(e,t){if(e.piece.lineFeedCnt<1)return-1;var n=this._buffers[e.piece.bufferIndex],i=this.offsetInBuffer(e.piece.bufferIndex,e.piece.start)+t;return n.buffer.charCodeAt(i)},e.prototype.offsetOfNode=function(e){if(!e)return 0;for(var t=e.size_left;e!==this.root;)e.parent.right===e&&(t+=e.parent.size_left+e.parent.piece.length),e=e.parent;return t},e.prototype.shouldCheckCRLF=function(){return!(this._EOLNormalized&&"\n"===this._EOL)},e.prototype.startWithLF=function(e){if("string"==typeof e)return 10===e.charCodeAt(0);if(e===cm||0===e.piece.lineFeedCnt)return!1;var t=e.piece,n=this._buffers[t.bufferIndex].lineStarts,i=t.start.line,o=n[i]+t.start.column;return i!==n.length-1&&(!(n[i+1]>o+1)&&10===this._buffers[t.bufferIndex].buffer.charCodeAt(o))},e.prototype.endWithCR=function(e){return"string"==typeof e?13===e.charCodeAt(e.length-1):e!==cm&&0!==e.piece.lineFeedCnt&&13===this.nodeCharCodeAt(e,e.piece.length-1)},e.prototype.validateCRLFWithPrevNode=function(e){if(this.shouldCheckCRLF()&&this.startWithLF(e)){var t=e.prev();this.endWithCR(t)&&this.fixCRLF(t,e)}},e.prototype.validateCRLFWithNextNode=function(e){if(this.shouldCheckCRLF()&&this.endWithCR(e)){var t=e.next();this.startWithLF(t)&&this.fixCRLF(e,t)}},e.prototype.fixCRLF=function(e,t){var n,i=[],o=this._buffers[e.piece.bufferIndex].lineStarts;n=0===e.piece.end.column?{line:e.piece.end.line-1,column:o[e.piece.end.line]-o[e.piece.end.line-1]-1}:{line:e.piece.end.line,column:e.piece.end.column-1};var r=e.piece.length-1,s=e.piece.lineFeedCnt-1;e.piece=new Fm(e.piece.bufferIndex,e.piece.start,n,s,r),bm(this,e,-1,-1),0===e.piece.length&&i.push(e);var a={line:t.piece.start.line+1,column:0},u=t.piece.length-1,l=this.getLineFeedCnt(t.piece.bufferIndex,a,t.piece.end);t.piece=new Fm(t.piece.bufferIndex,a,t.piece.end,l,u),bm(this,t,-1,-1),0===t.piece.length&&i.push(t);var c=this.createNewPieces("\r\n");this.rbInsertRight(e,c[0]);for(var d=0;d<i.length;d++)_m(this,i[d])},e.prototype.adjustCarriageReturnFromNext=function(e,t){if(this.shouldCheckCRLF()&&this.endWithCR(e)){var n=t.next();if(this.startWithLF(n)){if(e+="\n",1===n.piece.length)_m(this,n);else{var i=n.piece,o={line:i.start.line+1,column:0},r=i.length-1,s=this.getLineFeedCnt(i.bufferIndex,o,i.end);n.piece=new Fm(i.bufferIndex,o,i.end,s,r),bm(this,n,-1,-1)}return!0}}return!1},e.prototype.iterate=function(e,t){if(e===cm)return t(cm);var n=this.iterate(e.left,t);return n?t(e)&&this.iterate(e.right,t):n},e.prototype.getNodeContent=function(e){if(e===cm)return"";var t=this._buffers[e.piece.bufferIndex],n=e.piece,i=this.offsetInBuffer(n.bufferIndex,n.start),o=this.offsetInBuffer(n.bufferIndex,n.end);return t.buffer.substring(i,o)},e.prototype.rbInsertRight=function(e,t){var n=new lm(t,1);if(n.left=cm,n.right=cm,n.parent=cm,n.size_left=0,n.lf_left=0,this.root===cm)this.root=n,n.color=0;else if(e.right===cm)e.right=n,n.parent=e;else{var i=dm(e.right);i.left=n,n.parent=i}return ym(this,n),n},e.prototype.rbInsertLeft=function(e,t){var n=new lm(t,1);if(n.left=cm,n.right=cm,n.parent=cm,n.size_left=0,n.lf_left=0,this.root===cm)this.root=n,n.color=0;else if(e.left===cm)e.left=n,n.parent=e;else{var i=hm(e.left);i.right=n,n.parent=i}return ym(this,n),n},e}(),Hm=function(){function e(e,t,n,i,o,r){this._BOM=t,this._mightContainNonBasicASCII=!o,this._mightContainRTL=i,this._pieceTree=new Bm(e,n,r)}return e.prototype.mightContainRTL=function(){return this._mightContainRTL},e.prototype.mightContainNonBasicASCII=function(){return this._mightContainNonBasicASCII},e.prototype.getBOM=function(){return this._BOM},e.prototype.getEOL=function(){return this._pieceTree.getEOL()},e.prototype.getOffsetAt=function(e,t){return this._pieceTree.getOffsetAt(e,t)},e.prototype.getPositionAt=function(e){return this._pieceTree.getPositionAt(e)},e.prototype.getRangeAt=function(e,t){var n=e+t,i=this.getPositionAt(e),o=this.getPositionAt(n);return new wn(i.lineNumber,i.column,o.lineNumber,o.column)},e.prototype.getValueInRange=function(e,t){if(void 0===t&&(t=0),e.isEmpty())return"";var n=this._getEndOfLine(t);return this._pieceTree.getValueInRange(e,n)},e.prototype.getValueLengthInRange=function(e,t){if(void 0===t&&(t=0),e.isEmpty())return 0;if(e.startLineNumber===e.endLineNumber)return e.endColumn-e.startColumn;var n=this.getOffsetAt(e.startLineNumber,e.startColumn);return this.getOffsetAt(e.endLineNumber,e.endColumn)-n},e.prototype.getCharacterCountInRange=function(e,t){if(void 0===t&&(t=0),this._mightContainNonBasicASCII){for(var n=0,i=e.startLineNumber,o=e.endLineNumber,r=i;r<=o;r++)for(var s=this.getLineContent(r),a=r===i?e.startColumn-1:0,u=r===o?e.endColumn-1:s.length,l=a;l<u;l++)Tr(s.charCodeAt(l))?(n+=1,l+=1):n+=1;return n+=this._getEndOfLine(t).length*(o-i)}return this.getValueLengthInRange(e,t)},e.prototype.getLength=function(){return this._pieceTree.getLength()},e.prototype.getLineCount=function(){return this._pieceTree.getLineCount()},e.prototype.getLinesContent=function(){return this._pieceTree.getLinesContent()},e.prototype.getLineContent=function(e){return this._pieceTree.getLineContent(e)},e.prototype.getLineCharCode=function(e,t){return this._pieceTree.getLineCharCode(e,t)},e.prototype.getLineLength=function(e){return this._pieceTree.getLineLength(e)},e.prototype.getLineFirstNonWhitespaceColumn=function(e){var t=wr(this.getLineContent(e));return-1===t?0:t+1},e.prototype.getLineLastNonWhitespaceColumn=function(e){var t=Sr(this.getLineContent(e));return-1===t?0:t+2},e.prototype._getEndOfLine=function(e){switch(e){case 1:return"\n";case 2:return"\r\n";case 0:return this.getEOL()}throw new Error("Unknown EOL preference")},e.prototype.setEOL=function(e){this._pieceTree.setEOL(e)},e.prototype.applyEdits=function(t,n){for(var i=this._mightContainRTL,o=this._mightContainNonBasicASCII,r=!0,s=[],a=0;a<t.length;a++){var u=t[a];r&&u._isTracked&&(r=!1);var l=u.range;!i&&u.text&&(i=Vr(u.text)),!o&&u.text&&(o=!zr(u.text)),s[a]={sortIndex:a,identifier:u.identifier||null,range:l,rangeOffset:this.getOffsetAt(l.startLineNumber,l.startColumn),rangeLength:this.getValueLengthInRange(l),lines:u.text?u.text.split(/\r\n|\r|\n/):null,forceMoveMarkers:Boolean(u.forceMoveMarkers),isAutoWhitespaceEdit:u.isAutoWhitespaceEdit||!1}}s.sort(e._sortOpsAscending);for(var c=!1,d=(a=0,s.length-1);a<d;a++){var h=s[a].range.getEndPosition(),p=s[a+1].range.getStartPosition();if(p.isBeforeOrEqual(h)){if(p.isBefore(h))throw new Error("Overlapping ranges are not allowed!");c=!0}}r&&(s=this._reduceOperations(s));var f=e._getInverseEditRanges(s),g=[];for(a=0;a<s.length;a++){u=s[a];var m=f[a];if(n&&u.isAutoWhitespaceEdit&&u.range.isEmpty())for(var v=m.startLineNumber;v<=m.endLineNumber;v++){var _="";v===m.startLineNumber&&-1!==wr(_=this.getLineContent(u.range.startLineNumber))||g.push({lineNumber:v,oldContent:_})}}var y=[];for(a=0;a<s.length;a++){u=s[a],m=f[a];y[a]={sortIndex:u.sortIndex,identifier:u.identifier,range:m,text:this.getValueInRange(u.range),forceMoveMarkers:u.forceMoveMarkers}}c||y.sort((function(e,t){return e.sortIndex-t.sortIndex})),this._mightContainRTL=i,this._mightContainNonBasicASCII=o;var b=this._doApplyEdits(s),w=null;if(n&&g.length>0){g.sort((function(e,t){return t.lineNumber-e.lineNumber})),w=[];a=0;for(var C=g.length;a<C;a++){v=g[a].lineNumber;if(!(a>0&&g[a-1].lineNumber===v)){var S=g[a].oldContent,L=this.getLineContent(v);0!==L.length&&L!==S&&-1===wr(L)&&w.push(v)}}}return new Ka(y,b,w)},e.prototype._reduceOperations=function(e){return e.length<1e3?e:[this._toSingleEditOperation(e)]},e.prototype._toSingleEditOperation=function(e){for(var t=!1,n=e[0].range,i=e[e.length-1].range,o=new wn(n.startLineNumber,n.startColumn,i.endLineNumber,i.endColumn),r=n.startLineNumber,s=n.startColumn,a=[],u=0,l=e.length;u<l;u++){var c=e[u],d=c.range;t=t||c.forceMoveMarkers;for(var h=r;h<d.startLineNumber;h++)h===r?a.push(this.getLineContent(h).substring(s-1)):(a.push("\n"),a.push(this.getLineContent(h)));if(d.startLineNumber===r?a.push(this.getLineContent(d.startLineNumber).substring(s-1,d.startColumn-1)):(a.push("\n"),a.push(this.getLineContent(d.startLineNumber).substring(0,d.startColumn-1))),c.lines)for(var p=0,f=c.lines.length;p<f;p++)0!==p&&a.push("\n"),a.push(c.lines[p]);r=c.range.endLineNumber,s=c.range.endColumn}return{sortIndex:0,identifier:e[0].identifier,range:o,rangeOffset:this.getOffsetAt(o.startLineNumber,o.startColumn),rangeLength:this.getValueLengthInRange(o,0),lines:a.join("").split("\n"),forceMoveMarkers:t,isAutoWhitespaceEdit:!1}},e.prototype._doApplyEdits=function(t){t.sort(e._sortOpsDescending);for(var n=[],i=0;i<t.length;i++){var o=t[i],r=o.range.startLineNumber,s=o.range.startColumn,a=o.range.endLineNumber,u=o.range.endColumn;if(r!==a||s!==u||o.lines&&0!==o.lines.length){var l=a-r,c=o.lines?o.lines.length-1:0,d=Math.min(l,c),h=o.lines?o.lines.join(this.getEOL()):"";if(h?(this._pieceTree.delete(o.rangeOffset,o.rangeLength),this._pieceTree.insert(o.rangeOffset,h,!0)):this._pieceTree.delete(o.rangeOffset,o.rangeLength),d<c){for(var p=[],f=d+1;f<=c;f++)p.push(o.lines[f]);p[p.length-1]=this.getLineContent(r+c-1)}var g=new wn(r,s,a,u);n.push({range:g,rangeLength:o.rangeLength,text:h,rangeOffset:o.rangeOffset,forceMoveMarkers:o.forceMoveMarkers})}}return n},e.prototype.findMatchesLineByLine=function(e,t,n,i){return this._pieceTree.findMatchesLineByLine(e,t,n,i)},e._getInverseEditRanges=function(e){for(var t=[],n=0,i=0,o=null,r=0,s=e.length;r<s;r++){var a=e[r],u=void 0,l=void 0;o?o.range.endLineNumber===a.range.startLineNumber?(u=n,l=i+(a.range.startColumn-o.range.endColumn)):(u=n+(a.range.startLineNumber-o.range.endLineNumber),l=a.range.startColumn):(u=a.range.startLineNumber,l=a.range.startColumn);var c=void 0;if(a.lines&&a.lines.length>0){var d=a.lines.length,h=a.lines[0],p=a.lines[d-1];c=1===d?new wn(u,l,u,l+h.length):new wn(u,l,u+d-1,p.length+1)}else c=new wn(u,l,u,l);n=c.endLineNumber,i=c.endColumn,t.push(c),o=a}return t},e._sortOpsAscending=function(e,t){var n=wn.compareRangesUsingEnds(e.range,t.range);return 0===n?e.sortIndex-t.sortIndex:n},e._sortOpsDescending=function(e,t){var n=wn.compareRangesUsingEnds(e.range,t.range);return 0===n?t.sortIndex-e.sortIndex:-n},e}(),zm=function(){function e(e,t,n,i,o,r,s,a){this._chunks=e,this._bom=t,this._cr=n,this._lf=i,this._crlf=o,this._containsRTL=r,this._isBasicASCII=s,this._normalizeEOL=a}return e.prototype._getEOL=function(e){var t=this._cr+this._lf+this._crlf,n=this._cr+this._crlf;return 0===t?1===e?"\n":"\r\n":n>t/2?"\r\n":"\n"},e.prototype.create=function(e){var t=this._getEOL(e),n=this._chunks;if(this._normalizeEOL&&("\r\n"===t&&(this._cr>0||this._lf>0)||"\n"===t&&(this._cr>0||this._crlf>0)))for(var i=0,o=n.length;i<o;i++){var r=n[i].buffer.replace(/\r\n|\r|\n/g,t),s=Am(r);n[i]=new Wm(r,s)}return new Hm(n,this._bom,t,this._containsRTL,this._isBasicASCII,this._normalizeEOL)},e}(),jm=function(){function e(){this.chunks=[],this.BOM="",this._hasPreviousChar=!1,this._previousChar=0,this._tmpLineStarts=[],this.cr=0,this.lf=0,this.crlf=0,this.containsRTL=!1,this.isBasicASCII=!0}return e.prototype.acceptChunk=function(e){if(0!==e.length){0===this.chunks.length&&qr(e)&&(this.BOM=Kr,e=e.substr(1));var t=e.charCodeAt(e.length-1);13===t||t>=55296&&t<=56319?(this._acceptChunk1(e.substr(0,e.length-1),!1),this._hasPreviousChar=!0,this._previousChar=t):(this._acceptChunk1(e,!1),this._hasPreviousChar=!1,this._previousChar=t)}},e.prototype._acceptChunk1=function(e,t){(t||0!==e.length)&&(this._hasPreviousChar?this._acceptChunk2(String.fromCharCode(this._previousChar)+e):this._acceptChunk2(e))},e.prototype._acceptChunk2=function(e){var t=function(e,t){e.length=0,e[0]=0;for(var n=1,i=0,o=0,r=0,s=!0,a=0,u=t.length;a<u;a++){var l=t.charCodeAt(a);13===l?a+1<u&&10===t.charCodeAt(a+1)?(r++,e[n++]=a+2,a++):(i++,e[n++]=a+1):10===l?(o++,e[n++]=a+1):s&&9!==l&&(l<32||l>126)&&(s=!1)}var c=new Rm(Pm(e),i,o,r,s);return e.length=0,c}(this._tmpLineStarts,e);this.chunks.push(new Wm(e,t.lineStarts)),this.cr+=t.cr,this.lf+=t.lf,this.crlf+=t.crlf,this.isBasicASCII&&(this.isBasicASCII=t.isBasicASCII),this.isBasicASCII||this.containsRTL||(this.containsRTL=Vr(e))},e.prototype.finish=function(e){return void 0===e&&(e=!0),this._finish(),new zm(this.chunks,this.BOM,this.cr,this.lf,this.crlf,this.containsRTL,this.isBasicASCII,e)},e.prototype._finish=function(){if(0===this.chunks.length&&this._acceptChunk1("",!0),this._hasPreviousChar){this._hasPreviousChar=!1;var e=this.chunks[this.chunks.length-1];e.buffer+=String.fromCharCode(this._previousChar);var t=Am(e.buffer);e.lineStarts=t,13===this._previousChar&&this.cr++}},e}(),Um=function(){this.changeType=1},Km=function(e,t){this.changeType=2,this.lineNumber=e,this.detail=t},qm=function(e,t){this.changeType=3,this.fromLineNumber=e,this.toLineNumber=t},Gm=function(e,t,n){this.changeType=4,this.fromLineNumber=e,this.toLineNumber=t,this.detail=n},Zm=function(){this.changeType=5},Ym=function(){function e(e,t,n,i){this.changes=e,this.versionId=t,this.isUndoing=n,this.isRedoing=i}return e.prototype.containsEvent=function(e){for(var t=0,n=this.changes.length;t<n;t++){if(this.changes[t].changeType===e)return!0}return!1},e.merge=function(t,n){return new e([].concat(t.changes).concat(n.changes),n.versionId,t.isUndoing||n.isUndoing,t.isRedoing||n.isRedoing)},e}(),Xm=function(){function e(e,t){this.rawContentChangedEvent=e,this.contentChangedEvent=t}return e.prototype.merge=function(t){var n=Ym.merge(this.rawContentChangedEvent,t.rawContentChangedEvent),i=e._mergeChangeEvents(this.contentChangedEvent,t.contentChangedEvent);return new e(n,i)},e._mergeChangeEvents=function(e,t){return{changes:[].concat(e.changes).concat(t.changes),eol:t.eol,versionId:t.versionId,isUndoing:e.isUndoing||t.isUndoing,isRedoing:e.isRedoing||t.isRedoing,isFlush:e.isFlush||t.isFlush}},e}();function $m(e){for(var t=0,n=0,i=0,o=0,r=e.length;o<r;o++){var s=e.charCodeAt(o);13===s?(0===t&&(n=o),t++,o+1<r&&10===e.charCodeAt(o+1)&&o++,i=o+1):10===s&&(0===t&&(n=o),t++,i=o+1)}return 0===t&&(n=e.length),[t,n,e.length-i]}function Qm(e){return(16384|e<<0|2<<23)>>>0}var Jm=new Uint32Array(0).buffer,ev=function(){function e(){this.tokens=[]}return e.prototype.add=function(e,t){if(this.tokens.length>0){var n=this.tokens[this.tokens.length-1];if(n.startLineNumber+n.tokens.length-1+1===e)return void n.tokens.push(t)}this.tokens.push(new ov(e,[t]))},e}(),tv=function(){function e(e){this._tokens=e,this._tokenCount=e.length/4}return e.prototype.getMaxDeltaLine=function(){var e=this.getTokenCount();return 0===e?-1:this.getDeltaLine(e-1)},e.prototype.getTokenCount=function(){return this._tokenCount},e.prototype.getDeltaLine=function(e){return this._tokens[4*e]},e.prototype.getStartCharacter=function(e){return this._tokens[4*e+1]},e.prototype.getEndCharacter=function(e){return this._tokens[4*e+2]},e.prototype.getMetadata=function(e){return this._tokens[4*e+3]},e.prototype.clear=function(){this._tokenCount=0},e.prototype.acceptDeleteRange=function(e,t,n,i,o){for(var r=this._tokens,s=this._tokenCount,a=i-t,u=0,l=!1,c=0;c<s;c++){var d=4*c,h=r[d],p=r[d+1],f=r[d+2],g=r[d+3];if(h<t||h===t&&f<=n)u++;else{if(h===t&&p<n)h===i&&f>o?f-=o-n:f=n;else if(h===t&&p===n){if(!(h===i&&f>o)){l=!0;continue}f-=o-n}else if(h<i||h===i&&p<o){if(!(h===i&&f>o)){l=!0;continue}f=h===t?(p=n)+(f-o):(p=0)+(f-o)}else if(h>i){if(0===a&&!l){u=s;break}h-=a}else{if(!(h===i&&p>=o))throw new Error("Not possible!");e&&0===h&&(p+=e,f+=e),h-=a,p-=o-n,f-=o-n}var m=4*u;r[m]=h,r[m+1]=p,r[m+2]=f,r[m+3]=g,u++}}this._tokenCount=u},e.prototype.acceptInsertText=function(e,t,n,i,o,r){for(var s=0===n&&1===i&&(r>=48&&r<=57||r>=65&&r<=90||r>=97&&r<=122),a=this._tokens,u=this._tokenCount,l=0;l<u;l++){var c=4*l,d=a[c],h=a[c+1],p=a[c+2];if(!(d<e||d===e&&p<t)){if(d===e&&p===t){if(!s)continue;p+=1}else if(d===e&&h<t&&t<p)0===n?p+=i:p=t;else{if(d===e&&h===t&&s)continue;if(d===e)if(d+=n,0===n)h+=i,p+=i;else{var f=p-h;p=(h=o+(h-t))+f}else d+=n}a[c]=d,a[c+1]=h,a[c+2]=p}}},e}(),nv=function(){function e(e,t,n){this._actual=e,this._startTokenIndex=t,this._endTokenIndex=n}return e.prototype.getCount=function(){return this._endTokenIndex-this._startTokenIndex+1},e.prototype.getStartCharacter=function(e){return this._actual.getStartCharacter(this._startTokenIndex+e)},e.prototype.getEndCharacter=function(e){return this._actual.getEndCharacter(this._startTokenIndex+e)},e.prototype.getMetadata=function(e){return this._actual.getMetadata(this._startTokenIndex+e)},e}(),iv=function(){function e(e,t){this.startLineNumber=e,this.tokens=t,this.endLineNumber=this.startLineNumber+this.tokens.getMaxDeltaLine()}return e.prototype._updateEndLineNumber=function(){this.endLineNumber=this.startLineNumber+this.tokens.getMaxDeltaLine()},e.prototype.getLineTokens=function(t){if(this.startLineNumber<=t&&t<=this.endLineNumber){var n=e._findTokensWithLine(this.tokens,t-this.startLineNumber);if(n){var i=n[0],o=n[1];return new nv(this.tokens,i,o)}}return null},e._findTokensWithLine=function(e,t){for(var n=0,i=e.getTokenCount()-1;n<i;){var o=n+Math.floor((i-n)/2),r=e.getDeltaLine(o);if(r<t)n=o+1;else{if(!(r>t)){for(var s=o;s>n&&e.getDeltaLine(s-1)===t;)s--;for(var a=o;a<i&&e.getDeltaLine(a+1)===t;)a++;return[s,a]}i=o-1}}return e.getDeltaLine(n)===t?[n,n]:null},e.prototype.applyEdit=function(e,t){var n=$m(t),i=n[0],o=n[1],r=n[2];this.acceptEdit(e,i,o,r,t.length>0?t.charCodeAt(0):0)},e.prototype.acceptEdit=function(e,t,n,i,o){this._acceptDeleteRange(e),this._acceptInsertText(new bn(e.startLineNumber,e.startColumn),t,n,i,o),this._updateEndLineNumber()},e.prototype._acceptDeleteRange=function(e){if(e.startLineNumber!==e.endLineNumber||e.startColumn!==e.endColumn){var t=e.startLineNumber-this.startLineNumber,n=e.endLineNumber-this.startLineNumber;if(n<0){var i=n-t;this.startLineNumber-=i}else{var o=this.tokens.getMaxDeltaLine();if(!(t>=o+1)){if(t<0&&n>=o+1)return this.startLineNumber=0,void this.tokens.clear();if(t<0){var r=-t;this.startLineNumber-=r,this.tokens.acceptDeleteRange(e.startColumn-1,0,0,n,e.endColumn-1)}else this.tokens.acceptDeleteRange(0,t,e.startColumn-1,n,e.endColumn-1)}}}},e.prototype._acceptInsertText=function(e,t,n,i,o){if(0!==t||0!==n){var r=e.lineNumber-this.startLineNumber;if(r<0)this.startLineNumber+=t;else r>=this.tokens.getMaxDeltaLine()+1||this.tokens.acceptInsertText(r,e.column-1,t,n,i,o)}},e}(),ov=function(e,t){this.startLineNumber=e,this.tokens=t};function rv(e){return e instanceof Uint32Array?e:new Uint32Array(e)}var sv=function(){function e(){this._pieces=[]}return e.prototype.flush=function(){this._pieces=[]},e.prototype.set=function(e){this._pieces=e||[]},e.prototype.addSemanticTokens=function(t,n){var i=this._pieces;if(0===i.length)return n;var o=e._findFirstPieceWithLine(i,t),r=this._pieces[o].getLineTokens(t);if(!r)return n;for(var s=n.getCount(),a=r.getCount(),u=0,l=[],c=0,d=0;d<a;d++){for(var h=r.getStartCharacter(d),p=r.getEndCharacter(d),f=r.getMetadata(d),g=((1&f?2048:0)|(2&f?4096:0)|(4&f?8192:0)|(8&f?8372224:0)|(16&f?4286578688:0))>>>0,m=~g>>>0;u<s&&n.getEndOffset(u)<=h;)l[c++]=n.getEndOffset(u),l[c++]=n.getMetadata(u),u++;for(u<s&&n.getStartOffset(u)<h&&(l[c++]=h,l[c++]=n.getMetadata(u));u<s&&n.getEndOffset(u)<p;)l[c++]=n.getEndOffset(u),l[c++]=n.getMetadata(u)&m|f&g,u++;if(u<s&&n.getEndOffset(u)===p)l[c++]=n.getEndOffset(u),l[c++]=n.getMetadata(u)&m|f&g,u++;else{var v=Math.min(Math.max(0,u-1),s-1);l[c++]=p,l[c++]=n.getMetadata(v)&m|f&g}}for(;u<s;)l[c++]=n.getEndOffset(u),l[c++]=n.getMetadata(u),u++;return new Vc(new Uint32Array(l),n.getLineContent())},e._findFirstPieceWithLine=function(e,t){for(var n=0,i=e.length-1;n<i;){var o=n+Math.floor((i-n)/2);if(e[o].endLineNumber<t)n=o+1;else{if(!(e[o].startLineNumber>t)){for(;o>n&&e[o-1].startLineNumber<=t&&t<=e[o-1].endLineNumber;)o--;return o}i=o-1}}return n},e.prototype.acceptEdit=function(e,t,n,i,o){for(var r=0,s=this._pieces;r<s.length;r++){s[r].acceptEdit(e,t,n,i,o)}},e}(),av=function(){function e(){this._lineTokens=[],this._len=0}return e.prototype.flush=function(){this._lineTokens=[],this._len=0},e.prototype.getTokens=function(e,t,n){var i=null;if(t<this._len&&(i=this._lineTokens[t]),null!==i&&i!==Jm)return new Vc(rv(i),n);var o=new Uint32Array(2);return o[0]=n.length,o[1]=Qm(e),new Vc(o,n)},e._massageTokens=function(e,t,n){var i=n?rv(n):null;if(0===t){var o=!1;if(i&&i.length>1&&(o=wu.getLanguageId(i[1])!==e),!o)return Jm}if(!i||0===i.length){var r=new Uint32Array(2);return r[0]=t,r[1]=Qm(e),r.buffer}return i[i.length-2]=t,0===i.byteOffset&&i.byteLength===i.buffer.byteLength?i.buffer:i},e.prototype._ensureLine=function(e){for(;e>=this._len;)this._lineTokens[this._len]=null,this._len++},e.prototype._deleteLines=function(e,t){0!==t&&(e+t>this._len&&(t=this._len-e),this._lineTokens.splice(e,t),this._len-=t)},e.prototype._insertLines=function(e,t){if(0!==t){for(var n=[],i=0;i<t;i++)n[i]=null;this._lineTokens=Vi(this._lineTokens,e,n),this._len+=t}},e.prototype.setTokens=function(t,n,i,o){var r=e._massageTokens(t,i,o);this._ensureLine(n),this._lineTokens[n]=r},e.prototype.acceptEdit=function(e,t,n){this._acceptDeleteRange(e),this._acceptInsertText(new bn(e.startLineNumber,e.startColumn),t,n)},e.prototype._acceptDeleteRange=function(t){var n=t.startLineNumber-1;if(!(n>=this._len))if(t.startLineNumber!==t.endLineNumber){this._lineTokens[n]=e._deleteEnding(this._lineTokens[n],t.startColumn-1);var i=t.endLineNumber-1,o=null;i<this._len&&(o=e._deleteBeginning(this._lineTokens[i],t.endColumn-1)),this._lineTokens[n]=e._append(this._lineTokens[n],o),this._deleteLines(t.startLineNumber,t.endLineNumber-t.startLineNumber)}else{if(t.startColumn===t.endColumn)return;this._lineTokens[n]=e._delete(this._lineTokens[n],t.startColumn-1,t.endColumn-1)}},e.prototype._acceptInsertText=function(t,n,i){if(0!==n||0!==i){var o=t.lineNumber-1;o>=this._len||(0!==n?(this._lineTokens[o]=e._deleteEnding(this._lineTokens[o],t.column-1),this._lineTokens[o]=e._insert(this._lineTokens[o],t.column-1,i),this._insertLines(t.lineNumber,n)):this._lineTokens[o]=e._insert(this._lineTokens[o],t.column-1,i))}},e._deleteBeginning=function(t,n){return null===t||t===Jm?t:e._delete(t,0,n)},e._deleteEnding=function(t,n){if(null===t||t===Jm)return t;var i=rv(t),o=i[i.length-2];return e._delete(t,n,o)},e._delete=function(e,t,n){if(null===e||e===Jm||t===n)return e;var i=rv(e),o=i.length>>>1;if(0===t&&i[i.length-2]===n)return Jm;var r,s,a=Vc.findIndexInTokensArray(i,t),u=a>0?i[a-1<<1]:0;if(n<i[a<<1]){for(var l=n-t,c=a;c<o;c++)i[c<<1]-=l;return e}u!==t?(i[a<<1]=t,r=a+1<<1,s=t):(r=a<<1,s=u);for(var d=n-t,h=a+1;h<o;h++){var p=i[h<<1]-d;p>s&&(i[r++]=p,i[r++]=i[1+(h<<1)],s=p)}if(r===i.length)return e;var f=new Uint32Array(r);return f.set(i.subarray(0,r),0),f.buffer},e._append=function(e,t){if(t===Jm)return e;if(e===Jm)return t;if(null===e)return e;if(null===t)return null;var n=rv(e),i=rv(t),o=i.length>>>1,r=new Uint32Array(n.length+i.length);r.set(n,0);for(var s=n.length,a=n[n.length-2],u=0;u<o;u++)r[s++]=i[u<<1]+a,r[s++]=i[1+(u<<1)];return r.buffer},e._insert=function(e,t,n){if(null===e||e===Jm)return e;var i=rv(e),o=i.length>>>1,r=Vc.findIndexInTokensArray(i,t);r>0&&(i[r-1<<1]===t&&r--);for(var s=r;s<o;s++)i[s<<1]+=n;return e},e}(),uv=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),lv=function(){function e(){this._beginState=[],this._valid=[],this._len=0,this._invalidLineStartIndex=0}return e.prototype._reset=function(e){this._beginState=[],this._valid=[],this._len=0,this._invalidLineStartIndex=0,e&&this._setBeginState(0,e)},e.prototype.flush=function(e){this._reset(e)},Object.defineProperty(e.prototype,"invalidLineStartIndex",{get:function(){return this._invalidLineStartIndex},enumerable:!0,configurable:!0}),e.prototype._invalidateLine=function(e){e<this._len&&(this._valid[e]=!1),e<this._invalidLineStartIndex&&(this._invalidLineStartIndex=e)},e.prototype._isValid=function(e){return e<this._len&&this._valid[e]},e.prototype.getBeginState=function(e){return e<this._len?this._beginState[e]:null},e.prototype._ensureLine=function(e){for(;e>=this._len;)this._beginState[this._len]=null,this._valid[this._len]=!1,this._len++},e.prototype._deleteLines=function(e,t){0!==t&&(e+t>this._len&&(t=this._len-e),this._beginState.splice(e,t),this._valid.splice(e,t),this._len-=t)},e.prototype._insertLines=function(e,t){if(0!==t){for(var n=[],i=[],o=0;o<t;o++)n[o]=null,i[o]=!1;this._beginState=Vi(this._beginState,e,n),this._valid=Vi(this._valid,e,i),this._len+=t}},e.prototype._setValid=function(e,t){this._ensureLine(e),this._valid[e]=t},e.prototype._setBeginState=function(e,t){this._ensureLine(e),this._beginState[e]=t},e.prototype.setEndState=function(e,t,n){if(this._setValid(t,!0),this._invalidLineStartIndex=t+1,t!==e-1){var i=this.getBeginState(t+1);if(null===i||!n.equals(i))return this._setBeginState(t+1,n),void this._invalidateLine(t+1);for(var o=t+1;o<e&&this._isValid(o);)o++;this._invalidLineStartIndex=o}},e.prototype.setFakeTokens=function(e){this._setValid(e,!1)},e.prototype.applyEdits=function(e,t){for(var n=e.endLineNumber-e.startLineNumber,i=t,o=Math.min(n,i);o>=0;o--)this._invalidateLine(e.startLineNumber+o-1);this._acceptDeleteRange(e),this._acceptInsertText(new bn(e.startLineNumber,e.startColumn),t)},e.prototype._acceptDeleteRange=function(e){e.startLineNumber-1>=this._len||this._deleteLines(e.startLineNumber,e.endLineNumber-e.startLineNumber)},e.prototype._acceptInsertText=function(e,t){e.lineNumber-1>=this._len||this._insertLines(e.lineNumber,t)},e}(),cv=function(e){function t(t){var n=e.call(this)||this;return n._isDisposed=!1,n._textModel=t,n._tokenizationStateStore=new lv,n._tokenizationSupport=null,n._register(Yu.onDidChange((function(e){var t=n._textModel.getLanguageIdentifier();-1!==e.changedLanguages.indexOf(t.language)&&(n._resetTokenizationState(),n._textModel.clearTokens())}))),n._register(n._textModel.onDidChangeRawContentFast((function(e){e.containsEvent(1)&&n._resetTokenizationState()}))),n._register(n._textModel.onDidChangeContentFast((function(e){for(var t=0,i=e.changes.length;t<i;t++){var o=e.changes[t],r=$m(o.text)[0];n._tokenizationStateStore.applyEdits(o.range,r)}n._beginBackgroundTokenization()}))),n._register(n._textModel.onDidChangeAttached((function(){n._beginBackgroundTokenization()}))),n._register(n._textModel.onDidChangeLanguage((function(){n._resetTokenizationState(),n._textModel.clearTokens()}))),n._resetTokenizationState(),n}return uv(t,e),t.prototype.dispose=function(){this._isDisposed=!0,e.prototype.dispose.call(this)},t.prototype._resetTokenizationState=function(){var e=function(e){var t=e.getLanguageIdentifier(),n=e.isTooLargeForTokenization()?null:Yu.get(t.language),i=null;if(n)try{i=n.getInitialState()}catch(e){De(e),n=null}return[n,i]}(this._textModel),t=e[0],n=e[1];this._tokenizationSupport=t,this._tokenizationStateStore.flush(n),this._beginBackgroundTokenization()},t.prototype._beginBackgroundTokenization=function(){var e=this;this._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&L((function(){e._isDisposed||e._revalidateTokensNow()}))},t.prototype._revalidateTokensNow=function(e){void 0===e&&(e=this._textModel.getLineCount());for(var t=new ev,n=Cc.create(!1);this._hasLinesToTokenize()&&!(n.elapsed()>1);){if(this._tokenizeOneInvalidLine(t)>=e)break}this._beginBackgroundTokenization(),this._textModel.setTokens(t.tokens)},t.prototype.tokenizeViewport=function(e,t){var n=new ev;this._tokenizeViewport(n,e,t),this._textModel.setTokens(n.tokens)},t.prototype.reset=function(){this._resetTokenizationState(),this._textModel.clearTokens()},t.prototype.forceTokenization=function(e){var t=new ev;this._updateTokensUntilLine(t,e),this._textModel.setTokens(t.tokens)},t.prototype.isCheapToTokenize=function(e){if(!this._tokenizationSupport)return!0;var t=this._tokenizationStateStore.invalidLineStartIndex+1;return!(e>t)&&(e<t||this._textModel.getLineLength(e)<2048)},t.prototype._hasLinesToTokenize=function(){return!!this._tokenizationSupport&&this._tokenizationStateStore.invalidLineStartIndex<this._textModel.getLineCount()},t.prototype._tokenizeOneInvalidLine=function(e){if(!this._hasLinesToTokenize())return this._textModel.getLineCount()+1;var t=this._tokenizationStateStore.invalidLineStartIndex+1;return this._updateTokensUntilLine(e,t),t},t.prototype._updateTokensUntilLine=function(e,t){if(this._tokenizationSupport)for(var n=this._textModel.getLanguageIdentifier(),i=this._textModel.getLineCount(),o=t-1,r=this._tokenizationStateStore.invalidLineStartIndex;r<=o;r++){var s=this._textModel.getLineContent(r+1),a=this._tokenizationStateStore.getBeginState(r),u=dv(n,this._tokenizationSupport,s,a);e.add(r+1,u.tokens),this._tokenizationStateStore.setEndState(i,r,u.endState),r=this._tokenizationStateStore.invalidLineStartIndex-1}},t.prototype._tokenizeViewport=function(e,t,n){if(this._tokenizationSupport&&!(n<=this._tokenizationStateStore.invalidLineStartIndex))if(t<=this._tokenizationStateStore.invalidLineStartIndex)this._updateTokensUntilLine(e,n);else{for(var i=this._textModel.getLineFirstNonWhitespaceColumn(t),o=[],r=null,s=t-1;i>0&&s>=1;s--){var a=this._textModel.getLineFirstNonWhitespaceColumn(s);if(0!==a&&a<i){if(r=this._tokenizationStateStore.getBeginState(s-1))break;o.push(this._textModel.getLineContent(s)),i=a}}r||(r=this._tokenizationSupport.getInitialState());var u=this._textModel.getLanguageIdentifier(),l=r;for(s=o.length-1;s>=0;s--){l=(h=dv(u,this._tokenizationSupport,o[s],l)).endState}for(var c=t;c<=n;c++){var d=this._textModel.getLineContent(c),h=dv(u,this._tokenizationSupport,d,l);e.add(c,h.tokens),this._tokenizationStateStore.setFakeTokens(c-1),l=h.endState}}},t}(He);function dv(e,t,n,i){var o=null;if(t)try{o=t.tokenize2(n,i.clone(),0)}catch(e){De(e)}return o||(o=Ju(e.id,0,i,0)),Vc.convertToEndOffset(o.tokens,n.length),o}function hv(e,t){var n=Math.pow(10,t);return Math.round(e*n)/n}var pv=function(){function e(e,t,n,i){void 0===i&&(i=1),this.r=0|Math.min(255,Math.max(0,e)),this.g=0|Math.min(255,Math.max(0,t)),this.b=0|Math.min(255,Math.max(0,n)),this.a=hv(Math.max(Math.min(1,i),0),3)}return e.equals=function(e,t){return e.r===t.r&&e.g===t.g&&e.b===t.b&&e.a===t.a},e}(),fv=function(){function e(e,t,n,i){this.h=0|Math.max(Math.min(360,e),0),this.s=hv(Math.max(Math.min(1,t),0),3),this.l=hv(Math.max(Math.min(1,n),0),3),this.a=hv(Math.max(Math.min(1,i),0),3)}return e.equals=function(e,t){return e.h===t.h&&e.s===t.s&&e.l===t.l&&e.a===t.a},e.fromRGBA=function(t){var n=t.r/255,i=t.g/255,o=t.b/255,r=t.a,s=Math.max(n,i,o),a=Math.min(n,i,o),u=0,l=0,c=(a+s)/2,d=s-a;if(d>0){switch(l=Math.min(c<=.5?d/(2*c):d/(2-2*c),1),s){case n:u=(i-o)/d+(i<o?6:0);break;case i:u=(o-n)/d+2;break;case o:u=(n-i)/d+4}u*=60,u=Math.round(u)}return new e(u,l,c,r)},e._hue2rgb=function(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e},e.toRGBA=function(t){var n,i,o,r=t.h/360,s=t.s,a=t.l,u=t.a;if(0===s)n=i=o=a;else{var l=a<.5?a*(1+s):a+s-a*s,c=2*a-l;n=e._hue2rgb(c,l,r+1/3),i=e._hue2rgb(c,l,r),o=e._hue2rgb(c,l,r-1/3)}return new pv(Math.round(255*n),Math.round(255*i),Math.round(255*o),u)},e}(),gv=function(){function e(e,t,n,i){this.h=0|Math.max(Math.min(360,e),0),this.s=hv(Math.max(Math.min(1,t),0),3),this.v=hv(Math.max(Math.min(1,n),0),3),this.a=hv(Math.max(Math.min(1,i),0),3)}return e.equals=function(e,t){return e.h===t.h&&e.s===t.s&&e.v===t.v&&e.a===t.a},e.fromRGBA=function(t){var n,i=t.r/255,o=t.g/255,r=t.b/255,s=Math.max(i,o,r),a=s-Math.min(i,o,r),u=0===s?0:a/s;return n=0===a?0:s===i?((o-r)/a%6+6)%6:s===o?(r-i)/a+2:(i-o)/a+4,new e(Math.round(60*n),u,s,t.a)},e.toRGBA=function(e){var t=e.h,n=e.s,i=e.v,o=e.a,r=i*n,s=r*(1-Math.abs(t/60%2-1)),a=i-r,u=[0,0,0],l=u[0],c=u[1],d=u[2];return t<60?(l=r,c=s):t<120?(l=s,c=r):t<180?(c=r,d=s):t<240?(c=s,d=r):t<300?(l=s,d=r):t<360&&(l=r,d=s),l=Math.round(255*(l+a)),c=Math.round(255*(c+a)),d=Math.round(255*(d+a)),new pv(l,c,d,o)},e}(),mv=function(){function e(e){if(!e)throw new Error("Color needs a value");if(e instanceof pv)this.rgba=e;else if(e instanceof fv)this._hsla=e,this.rgba=fv.toRGBA(e);else{if(!(e instanceof gv))throw new Error("Invalid color ctor argument");this._hsva=e,this.rgba=gv.toRGBA(e)}}return e.fromHex=function(t){return e.Format.CSS.parseHex(t)||e.red},Object.defineProperty(e.prototype,"hsla",{get:function(){return this._hsla?this._hsla:fv.fromRGBA(this.rgba)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hsva",{get:function(){return this._hsva?this._hsva:gv.fromRGBA(this.rgba)},enumerable:!0,configurable:!0}),e.prototype.equals=function(e){return!!e&&pv.equals(this.rgba,e.rgba)&&fv.equals(this.hsla,e.hsla)&&gv.equals(this.hsva,e.hsva)},e.prototype.getRelativeLuminance=function(){return hv(.2126*e._relativeLuminanceForComponent(this.rgba.r)+.7152*e._relativeLuminanceForComponent(this.rgba.g)+.0722*e._relativeLuminanceForComponent(this.rgba.b),4)},e._relativeLuminanceForComponent=function(e){var t=e/255;return t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)},e.prototype.isLighter=function(){return(299*this.rgba.r+587*this.rgba.g+114*this.rgba.b)/1e3>=128},e.prototype.isLighterThan=function(e){return this.getRelativeLuminance()>e.getRelativeLuminance()},e.prototype.isDarkerThan=function(e){return this.getRelativeLuminance()<e.getRelativeLuminance()},e.prototype.lighten=function(t){return new e(new fv(this.hsla.h,this.hsla.s,this.hsla.l+this.hsla.l*t,this.hsla.a))},e.prototype.darken=function(t){return new e(new fv(this.hsla.h,this.hsla.s,this.hsla.l-this.hsla.l*t,this.hsla.a))},e.prototype.transparent=function(t){var n=this.rgba,i=n.r,o=n.g,r=n.b,s=n.a;return new e(new pv(i,o,r,s*t))},e.prototype.isTransparent=function(){return 0===this.rgba.a},e.prototype.isOpaque=function(){return 1===this.rgba.a},e.prototype.opposite=function(){return new e(new pv(255-this.rgba.r,255-this.rgba.g,255-this.rgba.b,this.rgba.a))},e.prototype.toString=function(){return""+e.Format.CSS.format(this)},e.getLighterColor=function(e,t,n){if(e.isLighterThan(t))return e;n=n||.5;var i=e.getRelativeLuminance(),o=t.getRelativeLuminance();return n=n*(o-i)/o,e.lighten(n)},e.getDarkerColor=function(e,t,n){if(e.isDarkerThan(t))return e;n=n||.5;var i=e.getRelativeLuminance();return n=n*(i-t.getRelativeLuminance())/i,e.darken(n)},e.white=new e(new pv(255,255,255,1)),e.black=new e(new pv(0,0,0,1)),e.red=new e(new pv(255,0,0,1)),e.blue=new e(new pv(0,0,255,1)),e.cyan=new e(new pv(0,255,255,1)),e.lightgrey=new e(new pv(211,211,211,1)),e.transparent=new e(new pv(0,0,0,0)),e}();!function(e){!function(t){!function(t){function n(e){var t=e.toString(16);return 2!==t.length?"0"+t:t}function i(e){switch(e){case 48:return 0;case 49:return 1;case 50:return 2;case 51:return 3;case 52:return 4;case 53:return 5;case 54:return 6;case 55:return 7;case 56:return 8;case 57:return 9;case 97:case 65:return 10;case 98:case 66:return 11;case 99:case 67:return 12;case 100:case 68:return 13;case 101:case 69:return 14;case 102:case 70:return 15}return 0}t.formatRGB=function(t){return 1===t.rgba.a?"rgb("+t.rgba.r+", "+t.rgba.g+", "+t.rgba.b+")":e.Format.CSS.formatRGBA(t)},t.formatRGBA=function(e){return"rgba("+e.rgba.r+", "+e.rgba.g+", "+e.rgba.b+", "+ +e.rgba.a.toFixed(2)+")"},t.formatHSL=function(t){return 1===t.hsla.a?"hsl("+t.hsla.h+", "+(100*t.hsla.s).toFixed(2)+"%, "+(100*t.hsla.l).toFixed(2)+"%)":e.Format.CSS.formatHSLA(t)},t.formatHSLA=function(e){return"hsla("+e.hsla.h+", "+(100*e.hsla.s).toFixed(2)+"%, "+(100*e.hsla.l).toFixed(2)+"%, "+e.hsla.a.toFixed(2)+")"},t.formatHex=function(e){return"#"+n(e.rgba.r)+n(e.rgba.g)+n(e.rgba.b)},t.formatHexA=function(t,i){return void 0===i&&(i=!1),i&&1===t.rgba.a?e.Format.CSS.formatHex(t):"#"+n(t.rgba.r)+n(t.rgba.g)+n(t.rgba.b)+n(Math.round(255*t.rgba.a))},t.format=function(t){return t.isOpaque()?e.Format.CSS.formatHex(t):e.Format.CSS.formatRGBA(t)},t.parseHex=function(t){var n=t.length;if(0===n)return null;if(35!==t.charCodeAt(0))return null;if(7===n){var o=16*i(t.charCodeAt(1))+i(t.charCodeAt(2)),r=16*i(t.charCodeAt(3))+i(t.charCodeAt(4)),s=16*i(t.charCodeAt(5))+i(t.charCodeAt(6));return new e(new pv(o,r,s,1))}if(9===n){o=16*i(t.charCodeAt(1))+i(t.charCodeAt(2)),r=16*i(t.charCodeAt(3))+i(t.charCodeAt(4)),s=16*i(t.charCodeAt(5))+i(t.charCodeAt(6));var a=16*i(t.charCodeAt(7))+i(t.charCodeAt(8));return new e(new pv(o,r,s,a/255))}if(4===n){o=i(t.charCodeAt(1)),r=i(t.charCodeAt(2)),s=i(t.charCodeAt(3));return new e(new pv(16*o+o,16*r+r,16*s+s))}if(5===n){o=i(t.charCodeAt(1)),r=i(t.charCodeAt(2)),s=i(t.charCodeAt(3)),a=i(t.charCodeAt(4));return new e(new pv(16*o+o,16*r+r,16*s+s,(16*a+a)/255))}return null}}(t.CSS||(t.CSS={}))}(e.Format||(e.Format={}))}(mv||(mv={}));var vv=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function _v(e){var t=new jm;return t.acceptChunk(e),t.finish()}function yv(e,t){return("string"==typeof e?_v(e):e).create(t)}var bv=0,wv=function(){throw new Error("Invalid change accessor")},Cv=function(e){function t(n,i,o,r){void 0===r&&(r=null);var s=e.call(this)||this;s._onWillDispose=s._register(new nt),s.onWillDispose=s._onWillDispose.event,s._onDidChangeDecorations=s._register(new Ov),s.onDidChangeDecorations=s._onDidChangeDecorations.event,s._onDidChangeLanguage=s._register(new nt),s.onDidChangeLanguage=s._onDidChangeLanguage.event,s._onDidChangeLanguageConfiguration=s._register(new nt),s.onDidChangeLanguageConfiguration=s._onDidChangeLanguageConfiguration.event,s._onDidChangeTokens=s._register(new nt),s.onDidChangeTokens=s._onDidChangeTokens.event,s._onDidChangeOptions=s._register(new nt),s.onDidChangeOptions=s._onDidChangeOptions.event,s._onDidChangeAttached=s._register(new nt),s.onDidChangeAttached=s._onDidChangeAttached.event,s._eventEmitter=s._register(new Mv),bv++,s.id="$model"+bv,s.isForSimpleWidget=i.isForSimpleWidget,s._associatedResource=null==r?Et.parse("inmemory://model/"+bv):r,s._attachedEditorCount=0,s._buffer=yv(n,i.defaultEOL),s._options=t.resolveOptions(s._buffer,i);var a=s._buffer.getLineCount(),u=s._buffer.getValueLengthInRange(new wn(1,1,a,s._buffer.getLineLength(a)+1),0);return i.largeFileOptimizations?s._isTooLargeForTokenization=u>t.LARGE_FILE_SIZE_THRESHOLD||a>t.LARGE_FILE_LINE_COUNT_THRESHOLD:s._isTooLargeForTokenization=!1,s._isTooLargeForSyncing=u>t.MODEL_SYNC_LIMIT,s._versionId=1,s._alternativeVersionId=1,s._isDisposed=!1,s._isDisposing=!1,s._languageIdentifier=o||$u,s._languageRegistryListener=Ol.onDidChange((function(e){e.languageIdentifier.id===s._languageIdentifier.id&&s._onDidChangeLanguageConfiguration.fire({})})),s._instanceId=Yr(bv),s._lastDecorationId=0,s._decorations=Object.create(null),s._decorationsTree=new Sv,s._commandManager=new Rg(s),s._isUndoing=!1,s._isRedoing=!1,s._trimAutoWhitespaceLines=null,s._tokens=new av,s._tokens2=new sv,s._tokenization=new cv(s),s}return vv(t,e),t.createFromString=function(e,n,i,o){return void 0===n&&(n=t.DEFAULT_CREATION_OPTIONS),void 0===i&&(i=null),void 0===o&&(o=null),new t(e,n,i,o)},t.resolveOptions=function(e,t){if(t.detectIndentation){var n=Wg(e,t.tabSize,t.insertSpaces);return new ja({tabSize:n.tabSize,indentSize:n.tabSize,insertSpaces:n.insertSpaces,trimAutoWhitespace:t.trimAutoWhitespace,defaultEOL:t.defaultEOL})}return new ja({tabSize:t.tabSize,indentSize:t.indentSize,insertSpaces:t.insertSpaces,trimAutoWhitespace:t.trimAutoWhitespace,defaultEOL:t.defaultEOL})},t.prototype.onDidChangeRawContentFast=function(e){return this._eventEmitter.fastEvent((function(t){return e(t.rawContentChangedEvent)}))},t.prototype.onDidChangeRawContent=function(e){return this._eventEmitter.slowEvent((function(t){return e(t.rawContentChangedEvent)}))},t.prototype.onDidChangeContentFast=function(e){return this._eventEmitter.fastEvent((function(t){return e(t.contentChangedEvent)}))},t.prototype.onDidChangeContent=function(e){return this._eventEmitter.slowEvent((function(t){return e(t.contentChangedEvent)}))},t.prototype.dispose=function(){this._isDisposing=!0,this._onWillDispose.fire(),this._languageRegistryListener.dispose(),this._tokenization.dispose(),this._isDisposed=!0,e.prototype.dispose.call(this),this._isDisposing=!1},t.prototype._assertNotDisposed=function(){if(this._isDisposed)throw new Error("Model is disposed!")},t.prototype._emitContentChangedEvent=function(e,t){this._isDisposing||this._eventEmitter.fire(new Xm(e,t))},t.prototype.setValue=function(e){if(this._assertNotDisposed(),null!==e){var t=yv(e,this._options.defaultEOL);this.setValueFromTextBuffer(t)}},t.prototype._createContentChanged2=function(e,t,n,i,o,r,s){return{changes:[{range:e,rangeOffset:t,rangeLength:n,text:i}],eol:this._buffer.getEOL(),versionId:this.getVersionId(),isUndoing:o,isRedoing:r,isFlush:s}},t.prototype.setValueFromTextBuffer=function(e){if(this._assertNotDisposed(),null!==e){var t=this.getFullModelRange(),n=this.getValueLengthInRange(t),i=this.getLineCount(),o=this.getLineMaxColumn(i);this._buffer=e,this._increaseVersionId(),this._tokens.flush(),this._tokens2.flush(),this._decorations=Object.create(null),this._decorationsTree=new Sv,this._commandManager=new Rg(this),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new Ym([new Um],this._versionId,!1,!1),this._createContentChanged2(new wn(1,1,i,o),0,n,this.getValue(),!1,!1,!0))}},t.prototype.setEOL=function(e){this._assertNotDisposed();var t=1===e?"\r\n":"\n";if(this._buffer.getEOL()!==t){var n=this.getFullModelRange(),i=this.getValueLengthInRange(n),o=this.getLineCount(),r=this.getLineMaxColumn(o);this._onBeforeEOLChange(),this._buffer.setEOL(t),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new Ym([new Zm],this._versionId,!1,!1),this._createContentChanged2(new wn(1,1,o,r),0,i,this.getValue(),!1,!1,!1))}},t.prototype._onBeforeEOLChange=function(){var e=this.getVersionId(),t=this._decorationsTree.search(0,!1,!1,e);this._ensureNodesHaveRanges(t)},t.prototype._onAfterEOLChange=function(){for(var e=this.getVersionId(),t=this._decorationsTree.collectNodesPostOrder(),n=0,i=t.length;n<i;n++){var o=t[n],r=o.cachedAbsoluteStart-o.start,s=this._buffer.getOffsetAt(o.range.startLineNumber,o.range.startColumn),a=this._buffer.getOffsetAt(o.range.endLineNumber,o.range.endColumn);o.cachedAbsoluteStart=s,o.cachedAbsoluteEnd=a,o.cachedVersionId=e,o.start=s-r,o.end=a-r,sm(o)}},t.prototype.onBeforeAttached=function(){this._attachedEditorCount++,1===this._attachedEditorCount&&this._onDidChangeAttached.fire(void 0)},t.prototype.onBeforeDetached=function(){this._attachedEditorCount--,0===this._attachedEditorCount&&this._onDidChangeAttached.fire(void 0)},t.prototype.isAttachedToEditor=function(){return this._attachedEditorCount>0},t.prototype.getAttachedEditorCount=function(){return this._attachedEditorCount},t.prototype.isTooLargeForSyncing=function(){return this._isTooLargeForSyncing},t.prototype.isTooLargeForTokenization=function(){return this._isTooLargeForTokenization},t.prototype.isDisposed=function(){return this._isDisposed},t.prototype.isDominatedByLongLines=function(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;for(var e=0,t=0,n=this._buffer.getLineCount(),i=1;i<=n;i++){var o=this._buffer.getLineLength(i);o>=1e4?t+=o:e+=o}return t>e},Object.defineProperty(t.prototype,"uri",{get:function(){return this._associatedResource},enumerable:!0,configurable:!0}),t.prototype.getOptions=function(){return this._assertNotDisposed(),this._options},t.prototype.getFormattingOptions=function(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}},t.prototype.updateOptions=function(e){this._assertNotDisposed();var t=void 0!==e.tabSize?e.tabSize:this._options.tabSize,n=void 0!==e.indentSize?e.indentSize:this._options.indentSize,i=void 0!==e.insertSpaces?e.insertSpaces:this._options.insertSpaces,o=void 0!==e.trimAutoWhitespace?e.trimAutoWhitespace:this._options.trimAutoWhitespace,r=new ja({tabSize:t,indentSize:n,insertSpaces:i,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:o});if(!this._options.equals(r)){var s=this._options.createChangeEvent(r);this._options=r,this._onDidChangeOptions.fire(s)}},t.prototype.detectIndentation=function(e,t){this._assertNotDisposed();var n=Wg(this._buffer,t,e);this.updateOptions({insertSpaces:n.insertSpaces,tabSize:n.tabSize,indentSize:n.tabSize})},t._normalizeIndentationFromWhitespace=function(e,t,n){for(var i=0,o=0;o<e.length;o++)"\t"===e.charAt(o)?i+=t:i++;var r="";if(!n){var s=Math.floor(i/t);i%=t;for(o=0;o<s;o++)r+="\t"}for(o=0;o<i;o++)r+=" ";return r},t.normalizeIndentation=function(e,n,i){var o=wr(e);return-1===o&&(o=e.length),t._normalizeIndentationFromWhitespace(e.substring(0,o),n,i)+e.substring(o)},t.prototype.normalizeIndentation=function(e){return this._assertNotDisposed(),t.normalizeIndentation(e,this._options.indentSize,this._options.insertSpaces)},t.prototype.getVersionId=function(){return this._assertNotDisposed(),this._versionId},t.prototype.mightContainRTL=function(){return this._buffer.mightContainRTL()},t.prototype.mightContainNonBasicASCII=function(){return this._buffer.mightContainNonBasicASCII()},t.prototype.getAlternativeVersionId=function(){return this._assertNotDisposed(),this._alternativeVersionId},t.prototype.getOffsetAt=function(e){this._assertNotDisposed();var t=this._validatePosition(e.lineNumber,e.column,0);return this._buffer.getOffsetAt(t.lineNumber,t.column)},t.prototype.getPositionAt=function(e){this._assertNotDisposed();var t=Math.min(this._buffer.getLength(),Math.max(0,e));return this._buffer.getPositionAt(t)},t.prototype._increaseVersionId=function(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId},t.prototype._overwriteAlternativeVersionId=function(e){this._alternativeVersionId=e},t.prototype.getValue=function(e,t){void 0===t&&(t=!1),this._assertNotDisposed();var n=this.getFullModelRange(),i=this.getValueInRange(n,e);return t?this._buffer.getBOM()+i:i},t.prototype.getValueLength=function(e,t){void 0===t&&(t=!1),this._assertNotDisposed();var n=this.getFullModelRange(),i=this.getValueLengthInRange(n,e);return t?this._buffer.getBOM().length+i:i},t.prototype.getValueInRange=function(e,t){return void 0===t&&(t=0),this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(e),t)},t.prototype.getValueLengthInRange=function(e,t){return void 0===t&&(t=0),this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(e),t)},t.prototype.getCharacterCountInRange=function(e,t){return void 0===t&&(t=0),this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(e),t)},t.prototype.getLineCount=function(){return this._assertNotDisposed(),this._buffer.getLineCount()},t.prototype.getLineContent=function(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineContent(e)},t.prototype.getLineLength=function(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineLength(e)},t.prototype.getLinesContent=function(){return this._assertNotDisposed(),this._buffer.getLinesContent()},t.prototype.getEOL=function(){return this._assertNotDisposed(),this._buffer.getEOL()},t.prototype.getLineMinColumn=function(e){return this._assertNotDisposed(),1},t.prototype.getLineMaxColumn=function(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineLength(e)+1},t.prototype.getLineFirstNonWhitespaceColumn=function(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(e)},t.prototype.getLineLastNonWhitespaceColumn=function(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(e)},t.prototype._validateRangeRelaxedNoAllocations=function(e){var t,n,i=this._buffer.getLineCount(),o=e.startLineNumber,r=e.startColumn;if(o<1)t=1,n=1;else if(o>i)t=i,n=this.getLineMaxColumn(t);else{if(t=0|o,r<=1)n=1;else n=r>=(c=this.getLineMaxColumn(t))?c:0|r}var s,a,u=e.endLineNumber,l=e.endColumn;if(u<1)s=1,a=1;else if(u>i)s=i,a=this.getLineMaxColumn(s);else{var c;if(s=0|u,l<=1)a=1;else a=l>=(c=this.getLineMaxColumn(s))?c:0|l}return o===t&&r===n&&u===s&&l===a&&e instanceof wn&&!(e instanceof Sn)?e:new wn(t,n,s,a)},t.prototype._isValidPosition=function(e,t,n){if("number"!=typeof e||"number"!=typeof t)return!1;if(isNaN(e)||isNaN(t))return!1;if(e<1||t<1)return!1;if((0|e)!==e||(0|t)!==t)return!1;if(e>this._buffer.getLineCount())return!1;if(1===t)return!0;if(t>this.getLineMaxColumn(e))return!1;if(1===n&&Tr(this._buffer.getLineCharCode(e,t-2)))return!1;return!0},t.prototype._validatePosition=function(e,t,n){var i=Math.floor("number"!=typeof e||isNaN(e)?1:e),o=Math.floor("number"!=typeof t||isNaN(t)?1:t),r=this._buffer.getLineCount();if(i<1)return new bn(1,1);if(i>r)return new bn(r,this.getLineMaxColumn(r));if(o<=1)return new bn(i,1);var s=this.getLineMaxColumn(i);if(o>=s)return new bn(i,s);if(1===n&&Tr(this._buffer.getLineCharCode(i,o-2)))return new bn(i,o-1);return new bn(i,o)},t.prototype.validatePosition=function(e){return this._assertNotDisposed(),e instanceof bn&&this._isValidPosition(e.lineNumber,e.column,1)?e:this._validatePosition(e.lineNumber,e.column,1)},t.prototype._isValidRange=function(e,t){var n=e.startLineNumber,i=e.startColumn,o=e.endLineNumber,r=e.endColumn;if(!this._isValidPosition(n,i,0))return!1;if(!this._isValidPosition(o,r,0))return!1;if(1===t){var s=i>1?this._buffer.getLineCharCode(n,i-2):0,a=r>1&&r<=this._buffer.getLineLength(o)?this._buffer.getLineCharCode(o,r-2):0,u=Tr(s),l=Tr(a);return!u&&!l}return!0},t.prototype.validateRange=function(e){if(this._assertNotDisposed(),e instanceof wn&&!(e instanceof Sn)&&this._isValidRange(e,1))return e;var t=this._validatePosition(e.startLineNumber,e.startColumn,0),n=this._validatePosition(e.endLineNumber,e.endColumn,0),i=t.lineNumber,o=t.column,r=n.lineNumber,s=n.column,a=o>1?this._buffer.getLineCharCode(i,o-2):0,u=s>1&&s<=this._buffer.getLineLength(r)?this._buffer.getLineCharCode(r,s-2):0,l=Tr(a),c=Tr(u);return l||c?i===r&&o===s?new wn(i,o-1,r,s-1):l&&c?new wn(i,o-1,r,s+1):l?new wn(i,o-1,r,s):new wn(i,o,r,s+1):new wn(i,o,r,s)},t.prototype.modifyPosition=function(e,t){this._assertNotDisposed();var n=this.getOffsetAt(e)+t;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,n)))},t.prototype.getFullModelRange=function(){this._assertNotDisposed();var e=this.getLineCount();return new wn(1,1,e,this.getLineMaxColumn(e))},t.prototype.findMatchesLineByLine=function(e,t,n,i){return this._buffer.findMatchesLineByLine(e,t,n,i)},t.prototype.findMatches=function(e,t,n,i,o,r,s){var a;if(void 0===s&&(s=999),this._assertNotDisposed(),a=wn.isIRange(t)?this.validateRange(t):this.getFullModelRange(),!n&&e.indexOf("\n")<0){var u=new Nm(e,n,i,o).parseSearchRequest();return u?this.findMatchesLineByLine(a,u,r,s):[]}return Om.findMatches(this,new Nm(e,n,i,o),a,r,s)},t.prototype.findNextMatch=function(e,t,n,i,o,r){this._assertNotDisposed();var s=this.validatePosition(t);if(!n&&e.indexOf("\n")<0){var a=new Nm(e,n,i,o).parseSearchRequest();if(!a)return null;var u=this.getLineCount(),l=new wn(s.lineNumber,s.column,u,this.getLineMaxColumn(u)),c=this.findMatchesLineByLine(l,a,r,1);return Om.findNextMatch(this,new Nm(e,n,i,o),s,r),c.length>0?c[0]:(l=new wn(1,1,s.lineNumber,this.getLineMaxColumn(s.lineNumber)),(c=this.findMatchesLineByLine(l,a,r,1)).length>0?c[0]:null)}return Om.findNextMatch(this,new Nm(e,n,i,o),s,r)},t.prototype.findPreviousMatch=function(e,t,n,i,o,r){this._assertNotDisposed();var s=this.validatePosition(t);return Om.findPreviousMatch(this,new Nm(e,n,i,o),s,r)},t.prototype.pushStackElement=function(){this._commandManager.pushStackElement()},t.prototype.pushEOL=function(e){if(("\n"===this.getEOL()?0:1)!==e)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._commandManager.pushEOL(e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}},t.prototype.pushEditOperations=function(e,t,n){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._pushEditOperations(e,t,n)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}},t.prototype._pushEditOperations=function(e,t,n){var i=this;if(this._options.trimAutoWhitespace&&this._trimAutoWhitespaceLines){for(var o=t.map((function(e){return{range:i.validateRange(e.range),text:e.text}})),r=!0,s=0,a=e.length;s<a;s++){for(var u=e[s],l=!1,c=0,d=o.length;c<d;c++){var h=(v=o[c].range).startLineNumber>u.endLineNumber,p=u.startLineNumber>v.endLineNumber;if(!h&&!p){l=!0;break}}if(!l){r=!1;break}}if(r)for(s=0,a=this._trimAutoWhitespaceLines.length;s<a;s++){var f=this._trimAutoWhitespaceLines[s],g=this.getLineMaxColumn(f),m=!0;for(c=0,d=o.length;c<d;c++){var v=o[c].range,_=o[c].text;if(!(f<v.startLineNumber||f>v.endLineNumber)&&!(f===v.startLineNumber&&v.startColumn===g&&v.isEmpty()&&_&&_.length>0&&"\n"===_.charAt(0)||f===v.startLineNumber&&1===v.startColumn&&v.isEmpty()&&_&&_.length>0&&"\n"===_.charAt(_.length-1))){m=!1;break}}m&&t.push({range:new wn(f,1,f,g),text:null})}this._trimAutoWhitespaceLines=null}return this._commandManager.pushEditOperation(e,t,n)},t.prototype.applyEdits=function(e){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._applyEdits(e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}},t.prototype._applyEdits=function(e){for(var t=0,n=e.length;t<n;t++)e[t].range=this.validateRange(e[t].range);var i=this._buffer.getLineCount(),o=this._buffer.applyEdits(e,this._options.trimAutoWhitespace),r=this._buffer.getLineCount(),s=o.changes;if(this._trimAutoWhitespaceLines=o.trimAutoWhitespaceLineNumbers,0!==s.length){var a=[],u=i;for(t=0,n=s.length;t<n;t++){var l=s[t],c=$m(l.text),d=c[0],h=c[1],p=c[2];this._tokens.acceptEdit(l.range,d,h),this._tokens2.acceptEdit(l.range,d,h,p,l.text.length>0?l.text.charCodeAt(0):0),this._onDidChangeDecorations.fire(),this._decorationsTree.acceptReplace(l.rangeOffset,l.rangeLength,l.text.length,l.forceMoveMarkers);for(var f=l.range.startLineNumber,g=l.range.endLineNumber,m=g-f,v=d,_=Math.min(m,v),y=v-m,b=_;b>=0;b--){var w=f+b,C=r-u-y+w;a.push(new Km(w,this.getLineContent(C)))}if(_<m){var S=f+_;a.push(new qm(S+1,g))}if(_<v){for(var L=f+_,x=v-_,D=r-u-x+L+1,N=[],k=0;k<x;k++){var E=D+k;N[E-D]=this.getLineContent(E)}a.push(new Gm(L+1,f+v,N))}u+=y}this._increaseVersionId(),this._emitContentChangedEvent(new Ym(a,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:s,eol:this._buffer.getEOL(),versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1})}return o.reverseEdits},t.prototype._undo=function(){this._isUndoing=!0;var e=this._commandManager.undo();return this._isUndoing=!1,e?(this._overwriteAlternativeVersionId(e.recordedVersionId),e.selections):null},t.prototype.undo=function(){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._undo()}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}},t.prototype.canUndo=function(){return this._commandManager.canUndo()},t.prototype._redo=function(){this._isRedoing=!0;var e=this._commandManager.redo();return this._isRedoing=!1,e?(this._overwriteAlternativeVersionId(e.recordedVersionId),e.selections):null},t.prototype.redo=function(){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._redo()}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}},t.prototype.canRedo=function(){return this._commandManager.canRedo()},t.prototype.changeDecorations=function(e,t){void 0===t&&(t=0),this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(t,e)}finally{this._onDidChangeDecorations.endDeferredEmit()}},t.prototype._changeDecorations=function(e,t){var n=this,i={addDecoration:function(t,i){return n._onDidChangeDecorations.fire(),n._deltaDecorationsImpl(e,[],[{range:t,options:i}])[0]},changeDecoration:function(e,t){n._onDidChangeDecorations.fire(),n._changeDecorationImpl(e,t)},changeDecorationOptions:function(e,t){n._onDidChangeDecorations.fire(),n._changeDecorationOptionsImpl(e,Iv(t))},removeDecoration:function(t){n._onDidChangeDecorations.fire(),n._deltaDecorationsImpl(e,[t],[])},deltaDecorations:function(t,i){return 0===t.length&&0===i.length?[]:(n._onDidChangeDecorations.fire(),n._deltaDecorationsImpl(e,t,i))}},o=null;try{o=t(i)}catch(e){De(e)}return i.addDecoration=wv,i.changeDecoration=wv,i.changeDecorationOptions=wv,i.removeDecoration=wv,i.deltaDecorations=wv,o},t.prototype.deltaDecorations=function(e,t,n){if(void 0===n&&(n=0),this._assertNotDisposed(),e||(e=[]),0===e.length&&0===t.length)return[];try{return this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._deltaDecorationsImpl(n,e,t)}finally{this._onDidChangeDecorations.endDeferredEmit()}},t.prototype._getTrackedRange=function(e){return this.getDecorationRange(e)},t.prototype._setTrackedRange=function(e,t,n){var i=e?this._decorations[e]:null;if(!i)return t?this._deltaDecorationsImpl(0,[],[{range:t,options:Ev[n]}])[0]:null;if(!t)return this._decorationsTree.delete(i),delete this._decorations[i.id],null;var o=this._validateRangeRelaxedNoAllocations(t),r=this._buffer.getOffsetAt(o.startLineNumber,o.startColumn),s=this._buffer.getOffsetAt(o.endLineNumber,o.endColumn);return this._decorationsTree.delete(i),i.reset(this.getVersionId(),r,s,o),i.setOptions(Ev[n]),this._decorationsTree.insert(i),i.id},t.prototype.removeAllDecorationsWithOwnerId=function(e){if(!this._isDisposed)for(var t=this._decorationsTree.collectNodesFromOwner(e),n=0,i=t.length;n<i;n++){var o=t[n];this._decorationsTree.delete(o),delete this._decorations[o.id]}},t.prototype.getDecorationOptions=function(e){var t=this._decorations[e];return t?t.options:null},t.prototype.getDecorationRange=function(e){var t=this._decorations[e];if(!t)return null;var n=this.getVersionId();return t.cachedVersionId!==n&&this._decorationsTree.resolveNode(t,n),null===t.range&&(t.range=this._getRangeAt(t.cachedAbsoluteStart,t.cachedAbsoluteEnd)),t.range},t.prototype.getLineDecorations=function(e,t,n){return void 0===t&&(t=0),void 0===n&&(n=!1),e<1||e>this.getLineCount()?[]:this.getLinesDecorations(e,e,t,n)},t.prototype.getLinesDecorations=function(e,t,n,i){void 0===n&&(n=0),void 0===i&&(i=!1);var o=this.getLineCount(),r=Math.min(o,Math.max(1,e)),s=Math.min(o,Math.max(1,t)),a=this.getLineMaxColumn(s);return this._getDecorationsInRange(new wn(r,1,s,a),n,i)},t.prototype.getDecorationsInRange=function(e,t,n){void 0===t&&(t=0),void 0===n&&(n=!1);var i=this.validateRange(e);return this._getDecorationsInRange(i,t,n)},t.prototype.getOverviewRulerDecorations=function(e,t){void 0===e&&(e=0),void 0===t&&(t=!1);var n=this.getVersionId(),i=this._decorationsTree.search(e,t,!0,n);return this._ensureNodesHaveRanges(i)},t.prototype.getAllDecorations=function(e,t){void 0===e&&(e=0),void 0===t&&(t=!1);var n=this.getVersionId(),i=this._decorationsTree.search(e,t,!1,n);return this._ensureNodesHaveRanges(i)},t.prototype._getDecorationsInRange=function(e,t,n){var i=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),o=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn),r=this.getVersionId(),s=this._decorationsTree.intervalSearch(i,o,t,n,r);return this._ensureNodesHaveRanges(s)},t.prototype._ensureNodesHaveRanges=function(e){for(var t=0,n=e.length;t<n;t++){var i=e[t];null===i.range&&(i.range=this._getRangeAt(i.cachedAbsoluteStart,i.cachedAbsoluteEnd))}return e},t.prototype._getRangeAt=function(e,t){return this._buffer.getRangeAt(e,t-e)},t.prototype._changeDecorationImpl=function(e,t){var n=this._decorations[e];if(n){var i=this._validateRangeRelaxedNoAllocations(t),o=this._buffer.getOffsetAt(i.startLineNumber,i.startColumn),r=this._buffer.getOffsetAt(i.endLineNumber,i.endColumn);this._decorationsTree.delete(n),n.reset(this.getVersionId(),o,r,i),this._decorationsTree.insert(n)}},t.prototype._changeDecorationOptionsImpl=function(e,t){var n=this._decorations[e];n&&(!(!n.options.overviewRuler||!n.options.overviewRuler.color)!==!(!t.overviewRuler||!t.overviewRuler.color)?(this._decorationsTree.delete(n),n.setOptions(t),this._decorationsTree.insert(n)):n.setOptions(t))},t.prototype._deltaDecorationsImpl=function(e,t,n){for(var i=this.getVersionId(),o=t.length,r=0,s=n.length,a=0,u=new Array(s);r<o||a<s;){var l=null;if(r<o){do{l=this._decorations[t[r++]]}while(!l&&r<o);l&&this._decorationsTree.delete(l)}if(a<s){if(!l){var c=++this._lastDecorationId,d=this._instanceId+";"+c;l=new Yg(d,0,0),this._decorations[d]=l}var h=n[a],p=this._validateRangeRelaxedNoAllocations(h.range),f=Iv(h.options),g=this._buffer.getOffsetAt(p.startLineNumber,p.startColumn),m=this._buffer.getOffsetAt(p.endLineNumber,p.endColumn);l.ownerId=e,l.reset(i,g,m,p),l.setOptions(f),this._decorationsTree.insert(l),u[a]=l.id,a++}else l&&delete this._decorations[l.id]}return u},t.prototype.setLineTokens=function(e,t){if(e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");this._tokens.setTokens(this._languageIdentifier.id,e-1,this._buffer.getLineLength(e),t)},t.prototype.setTokens=function(e){if(0!==e.length){for(var t=[],n=0,i=e.length;n<i;n++){var o=e[n];t.push({fromLineNumber:o.startLineNumber,toLineNumber:o.startLineNumber+o.tokens.length-1});for(var r=0,s=o.tokens.length;r<s;r++)this.setLineTokens(o.startLineNumber+r,o.tokens[r])}this._emitModelTokensChangedEvent({tokenizationSupportChanged:!1,ranges:t})}},t.prototype.setSemanticTokens=function(e){this._tokens2.set(e),this._emitModelTokensChangedEvent({tokenizationSupportChanged:!1,ranges:[{fromLineNumber:1,toLineNumber:this.getLineCount()}]})},t.prototype.tokenizeViewport=function(e,t){e=Math.max(1,e),t=Math.min(this._buffer.getLineCount(),t),this._tokenization.tokenizeViewport(e,t)},t.prototype.clearTokens=function(){this._tokens.flush(),this._emitModelTokensChangedEvent({tokenizationSupportChanged:!0,ranges:[{fromLineNumber:1,toLineNumber:this._buffer.getLineCount()}]})},t.prototype._emitModelTokensChangedEvent=function(e){this._isDisposing||this._onDidChangeTokens.fire(e)},t.prototype.resetTokenization=function(){this._tokenization.reset()},t.prototype.forceTokenization=function(e){if(e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");this._tokenization.forceTokenization(e)},t.prototype.isCheapToTokenize=function(e){return this._tokenization.isCheapToTokenize(e)},t.prototype.tokenizeIfCheap=function(e){this.isCheapToTokenize(e)&&this.forceTokenization(e)},t.prototype.getLineTokens=function(e){if(e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._getLineTokens(e)},t.prototype._getLineTokens=function(e){var t=this.getLineContent(e),n=this._tokens.getTokens(this._languageIdentifier.id,e-1,t);return this._tokens2.addSemanticTokens(e,n)},t.prototype.getLanguageIdentifier=function(){return this._languageIdentifier},t.prototype.getModeId=function(){return this._languageIdentifier.language},t.prototype.setMode=function(e){if(this._languageIdentifier.id!==e.id){var t={oldLanguage:this._languageIdentifier.language,newLanguage:e.language};this._languageIdentifier=e,this._onDidChangeLanguage.fire(t),this._onDidChangeLanguageConfiguration.fire({})}},t.prototype.getLanguageIdAtPosition=function(e,t){var n=this.validatePosition(new bn(e,t)),i=this.getLineTokens(n.lineNumber);return i.getLanguageId(i.findTokenIndexAtOffset(n.column-1))},t.prototype.getWordAtPosition=function(e){this._assertNotDisposed();var n=this.validatePosition(e),i=this.getLineContent(n.lineNumber),o=this._getLineTokens(n.lineNumber),r=o.findTokenIndexAtOffset(n.column-1),s=t._findLanguageBoundaries(o,r),a=s[0],u=s[1],l=k(n.column,Ol.getWordDefinition(o.getLanguageId(r)),i.substring(a,u),a);if(l&&l.startColumn<=e.column&&e.column<=l.endColumn)return l;if(r>0&&a===n.column-1){var c=t._findLanguageBoundaries(o,r-1),d=c[0],h=c[1],p=k(n.column,Ol.getWordDefinition(o.getLanguageId(r-1)),i.substring(d,h),d);if(p&&p.startColumn<=e.column&&e.column<=p.endColumn)return p}return null},t._findLanguageBoundaries=function(e,t){for(var n=e.getLanguageId(t),i=0,o=t;o>=0&&e.getLanguageId(o)===n;o--)i=e.getStartOffset(o);for(var r=e.getLineContent().length,s=(o=t,e.getCount());o<s&&e.getLanguageId(o)===n;o++)r=e.getEndOffset(o);return[i,r]},t.prototype.getWordUntilPosition=function(e){var t=this.getWordAtPosition(e);return t?{word:t.word.substr(0,e.column-t.startColumn),startColumn:t.startColumn,endColumn:e.column}:{word:"",startColumn:e.column,endColumn:e.column}},t.prototype.findMatchingBracketUp=function(e,t){var n=e.toLowerCase(),i=this.validatePosition(t),o=this._getLineTokens(i.lineNumber),r=o.getLanguageId(o.findTokenIndexAtOffset(i.column-1)),s=Ol.getBracketsSupport(r);if(!s)return null;var a=s.textIsBracket[n];return a?this._findMatchingBracketUp(a,i):null},t.prototype.matchBracket=function(e){return this._matchBracket(this.validatePosition(e))},t.prototype._matchBracket=function(e){var t=e.lineNumber,n=this._getLineTokens(t),i=n.getCount(),o=this._buffer.getLineContent(t),r=n.findTokenIndexAtOffset(e.column-1);if(r<0)return null;var s=Ol.getBracketsSupport(n.getLanguageId(r));if(s&&!pl(n.getStandardTokenType(r))){for(var a=Math.max(0,e.column-1-s.maxBracketLength),u=r-1;u>=0;u--){var l=n.getEndOffset(u);if(l<=a)break;pl(n.getStandardTokenType(u))&&(a=l)}for(var c=Math.min(o.length,e.column-1+s.maxBracketLength),d=null;;){if(!(m=xl.findNextBracketInRange(s.forwardRegex,t,o,a,c)))break;if(m.startColumn<=e.column&&e.column<=m.endColumn){var h=o.substring(m.startColumn-1,m.endColumn-1).toLowerCase();(v=this._matchFoundBracket(m,s.textIsBracket[h],s.textIsOpenBracket[h]))&&(d=v)}a=m.endColumn-1}if(d)return d}if(r>0&&n.getStartOffset(r)===e.column-1){var p=r-1,f=Ol.getBracketsSupport(n.getLanguageId(p));if(f&&!pl(n.getStandardTokenType(p))){for(a=Math.max(0,e.column-1-f.maxBracketLength),c=Math.min(o.length,e.column-1+f.maxBracketLength),u=p+1;u<i;u++){var g=n.getStartOffset(u);if(g>=c)break;pl(n.getStandardTokenType(u))&&(c=g)}var m;if((m=xl.findPrevBracketInRange(f.reversedRegex,t,o,a,c))&&m.startColumn<=e.column&&e.column<=m.endColumn){var v;h=o.substring(m.startColumn-1,m.endColumn-1).toLowerCase();if(v=this._matchFoundBracket(m,f.textIsBracket[h],f.textIsOpenBracket[h]))return v}}}return null},t.prototype._matchFoundBracket=function(e,t,n){if(!t)return null;var i;if(n){if(i=this._findMatchingBracketDown(t,e.getEndPosition()))return[e,i]}else if(i=this._findMatchingBracketUp(t,e.getStartPosition()))return[e,i];return null},t.prototype._findMatchingBracketUp=function(e,t){for(var n=e.languageIdentifier.id,i=e.reversedRegex,o=-1,r=function(t,n,r,s){for(;;){var a=xl.findPrevBracketInRange(i,t,n,r,s);if(!a)break;var u=n.substring(a.startColumn-1,a.endColumn-1).toLowerCase();if(e.isOpen(u)?o++:e.isClose(u)&&o--,0===o)return a;s=a.startColumn-1}return null},s=t.lineNumber;s>=1;s--){var a=this._getLineTokens(s),u=a.getCount(),l=this._buffer.getLineContent(s),c=u-1,d=l.length,h=l.length;s===t.lineNumber&&(c=a.findTokenIndexAtOffset(t.column-1),d=t.column-1,h=t.column-1);for(var p=!0;c>=0;c--){var f,g=a.getLanguageId(c)===n&&!pl(a.getStandardTokenType(c));if(g)p?d=a.getStartOffset(c):(d=a.getStartOffset(c),h=a.getEndOffset(c));else if(p&&d!==h)if(f=r(s,l,d,h))return f;p=g}if(p&&d!==h)if(f=r(s,l,d,h))return f}return null},t.prototype._findMatchingBracketDown=function(e,t){for(var n=e.languageIdentifier.id,i=e.forwardRegex,o=1,r=function(t,n,r,s){for(;;){var a=xl.findNextBracketInRange(i,t,n,r,s);if(!a)break;var u=n.substring(a.startColumn-1,a.endColumn-1).toLowerCase();if(e.isOpen(u)?o++:e.isClose(u)&&o--,0===o)return a;r=a.endColumn-1}return null},s=this.getLineCount(),a=t.lineNumber;a<=s;a++){var u=this._getLineTokens(a),l=u.getCount(),c=this._buffer.getLineContent(a),d=0,h=0,p=0;a===t.lineNumber&&(d=u.findTokenIndexAtOffset(t.column-1),h=t.column-1,p=t.column-1);for(var f=!0;d<l;d++){var g,m=u.getLanguageId(d)===n&&!pl(u.getStandardTokenType(d));if(m)f||(h=u.getStartOffset(d)),p=u.getEndOffset(d);else if(f&&h!==p)if(g=r(a,c,h,p))return g;f=m}if(f&&h!==p)if(g=r(a,c,h,p))return g}return null},t.prototype.findPrevBracket=function(e){for(var t=this.validatePosition(e),n=-1,i=null,o=t.lineNumber;o>=1;o--){var r=this._getLineTokens(o),s=r.getCount(),a=this._buffer.getLineContent(o),u=s-1,l=a.length,c=a.length;if(o===t.lineNumber)u=r.findTokenIndexAtOffset(t.column-1),l=t.column-1,c=t.column-1,n!==(h=r.getLanguageId(u))&&(n=h,i=Ol.getBracketsSupport(n));for(var d=!0;u>=0;u--){var h;if(n!==(h=r.getLanguageId(u))){if(i&&d&&l!==c){if(p=xl.findPrevBracketInRange(i.reversedRegex,o,a,l,c))return this._toFoundBracket(i,p);d=!1}n=h,i=Ol.getBracketsSupport(n)}var p,f=!!i&&!pl(r.getStandardTokenType(u));if(f)d?l=r.getStartOffset(u):(l=r.getStartOffset(u),c=r.getEndOffset(u));else if(i&&d&&l!==c)if(p=xl.findPrevBracketInRange(i.reversedRegex,o,a,l,c))return this._toFoundBracket(i,p);d=f}if(i&&d&&l!==c)if(p=xl.findPrevBracketInRange(i.reversedRegex,o,a,l,c))return this._toFoundBracket(i,p)}return null},t.prototype.findNextBracket=function(e){for(var t=this.validatePosition(e),n=this.getLineCount(),i=-1,o=null,r=t.lineNumber;r<=n;r++){var s=this._getLineTokens(r),a=s.getCount(),u=this._buffer.getLineContent(r),l=0,c=0,d=0;if(r===t.lineNumber)l=s.findTokenIndexAtOffset(t.column-1),c=t.column-1,d=t.column-1,i!==(p=s.getLanguageId(l))&&(i=p,o=Ol.getBracketsSupport(i));for(var h=!0;l<a;l++){var p;if(i!==(p=s.getLanguageId(l))){if(o&&h&&c!==d){if(f=xl.findNextBracketInRange(o.forwardRegex,r,u,c,d))return this._toFoundBracket(o,f);h=!1}i=p,o=Ol.getBracketsSupport(i)}var f,g=!!o&&!pl(s.getStandardTokenType(l));if(g)h||(c=s.getStartOffset(l)),d=s.getEndOffset(l);else if(o&&h&&c!==d)if(f=xl.findNextBracketInRange(o.forwardRegex,r,u,c,d))return this._toFoundBracket(o,f);h=g}if(o&&h&&c!==d)if(f=xl.findNextBracketInRange(o.forwardRegex,r,u,c,d))return this._toFoundBracket(o,f)}return null},t.prototype.findEnclosingBrackets=function(e,t){var n=this;void 0===t&&(t=1073741824);for(var i=this.validatePosition(e),o=this.getLineCount(),r=new Map,s=[],a=function(e,t){if(!r.has(e)){for(var n=[],i=0,o=t?t.brackets.length:0;i<o;i++)n[i]=0;r.set(e,n)}s=r.get(e)},u=function(e,t,i,o,r){for(;;){var a=xl.findNextBracketInRange(e.forwardRegex,t,i,o,r);if(!a)break;var u=i.substring(a.startColumn-1,a.endColumn-1).toLowerCase(),l=e.textIsBracket[u];if(l&&(l.isOpen(u)?s[l.index]++:l.isClose(u)&&s[l.index]--,-1===s[l.index]))return n._matchFoundBracket(a,l,!1);o=a.endColumn-1}return null},l=-1,c=null,d=Date.now(),h=i.lineNumber;h<=o;h++){if(Date.now()-d>t)return null;var p=this._getLineTokens(h),f=p.getCount(),g=this._buffer.getLineContent(h),m=0,v=0,_=0;if(h===i.lineNumber)m=p.findTokenIndexAtOffset(i.column-1),v=i.column-1,_=i.column-1,l!==(b=p.getLanguageId(m))&&a(l=b,c=Ol.getBracketsSupport(l));for(var y=!0;m<f;m++){var b;if(l!==(b=p.getLanguageId(m))){if(c&&y&&v!==_){if(w=u(c,h,g,v,_))return w;y=!1}a(l=b,c=Ol.getBracketsSupport(l))}var w,C=!!c&&!pl(p.getStandardTokenType(m));if(C)y||(v=p.getStartOffset(m)),_=p.getEndOffset(m);else if(c&&y&&v!==_)if(w=u(c,h,g,v,_))return w;y=C}if(c&&y&&v!==_)if(w=u(c,h,g,v,_))return w}return null},t.prototype._toFoundBracket=function(e,t){if(!t)return null;var n=this.getValueInRange(t);n=n.toLowerCase();var i=e.textIsBracket[n];return i?{range:t,open:i.open,close:i.close,isOpen:e.textIsOpenBracket[n]}:null},t.computeIndentLevel=function(e,t){for(var n=0,i=0,o=e.length;i<o;){var r=e.charCodeAt(i);if(32===r)n++;else{if(9!==r)break;n=n-n%t+t}i++}return i===o?-1:n},t.prototype._computeIndentLevel=function(e){return t.computeIndentLevel(this._buffer.getLineContent(e+1),this._options.tabSize)},t.prototype.getActiveIndentGuide=function(e,t,n){var i=this;this._assertNotDisposed();var o=this.getLineCount();if(e<1||e>o)throw new Error("Illegal value for lineNumber");for(var r=Ol.getFoldingRules(this._languageIdentifier.id),s=Boolean(r&&r.offSide),a=-2,u=-1,l=-2,c=-1,d=function(e){if(-1!==a&&(-2===a||a>e-1)){a=-1,u=-1;for(var t=e-2;t>=0;t--){var n=i._computeIndentLevel(t);if(n>=0){a=t,u=n;break}}}if(-2===l){l=-1,c=-1;for(t=e;t<o;t++){var r=i._computeIndentLevel(t);if(r>=0){l=t,c=r;break}}}},h=-2,p=-1,f=-2,g=-1,m=function(e){if(-2===h){h=-1,p=-1;for(var t=e-2;t>=0;t--){var n=i._computeIndentLevel(t);if(n>=0){h=t,p=n;break}}}if(-1!==f&&(-2===f||f<e-1)){f=-1,g=-1;for(t=e;t<o;t++){var r=i._computeIndentLevel(t);if(r>=0){f=t,g=r;break}}}},v=0,_=!0,y=0,b=!0,w=0,C=0;_||b;C++){var S=e-C,L=e+C;if(0!==C&&(S<1||S<t)&&(_=!1),0!==C&&(L>o||L>n)&&(b=!1),C>5e4&&(_=!1,b=!1),_){var x=void 0;if((D=this._computeIndentLevel(S-1))>=0?(l=S-1,c=D,x=Math.ceil(D/this._options.indentSize)):(d(S),x=this._getIndentLevelForWhitespaceLine(s,u,c)),0===C){if(v=S,y=L,0===(w=x))return{startLineNumber:v,endLineNumber:y,indent:w};continue}x>=w?v=S:_=!1}if(b){var D,N=void 0;(D=this._computeIndentLevel(L-1))>=0?(h=L-1,p=D,N=Math.ceil(D/this._options.indentSize)):(m(L),N=this._getIndentLevelForWhitespaceLine(s,p,g)),N>=w?y=L:b=!1}}return{startLineNumber:v,endLineNumber:y,indent:w}},t.prototype.getLinesIndentGuides=function(e,t){this._assertNotDisposed();var n=this.getLineCount();if(e<1||e>n)throw new Error("Illegal value for startLineNumber");if(t<1||t>n)throw new Error("Illegal value for endLineNumber");for(var i=Ol.getFoldingRules(this._languageIdentifier.id),o=Boolean(i&&i.offSide),r=new Array(t-e+1),s=-2,a=-1,u=-2,l=-1,c=e;c<=t;c++){var d=c-e,h=this._computeIndentLevel(c-1);if(h>=0)s=c-1,a=h,r[d]=Math.ceil(h/this._options.indentSize);else{if(-2===s){s=-1,a=-1;for(var p=c-2;p>=0;p--){if((f=this._computeIndentLevel(p))>=0){s=p,a=f;break}}}if(-1!==u&&(-2===u||u<c-1)){u=-1,l=-1;for(p=c;p<n;p++){var f;if((f=this._computeIndentLevel(p))>=0){u=p,l=f;break}}}r[d]=this._getIndentLevelForWhitespaceLine(o,a,l)}}return r},t.prototype._getIndentLevelForWhitespaceLine=function(e,t,n){return-1===t||-1===n?0:t<n?1+Math.floor(t/this._options.indentSize):t===n||e?Math.ceil(n/this._options.indentSize):1+Math.floor(n/this._options.indentSize)},t.MODEL_SYNC_LIMIT=52428800,t.LARGE_FILE_SIZE_THRESHOLD=20971520,t.LARGE_FILE_LINE_COUNT_THRESHOLD=3e5,t.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:me,indentSize:ve,insertSpaces:_e,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:be,largeFileOptimizations:we},t}(He),Sv=function(){function e(){this._decorationsTree0=new $g,this._decorationsTree1=new $g}return e.prototype.intervalSearch=function(e,t,n,i,o){var r=this._decorationsTree0.intervalSearch(e,t,n,i,o),s=this._decorationsTree1.intervalSearch(e,t,n,i,o);return r.concat(s)},e.prototype.search=function(e,t,n,i){if(n)return this._decorationsTree1.search(e,t,i);var o=this._decorationsTree0.search(e,t,i),r=this._decorationsTree1.search(e,t,i);return o.concat(r)},e.prototype.collectNodesFromOwner=function(e){var t=this._decorationsTree0.collectNodesFromOwner(e),n=this._decorationsTree1.collectNodesFromOwner(e);return t.concat(n)},e.prototype.collectNodesPostOrder=function(){var e=this._decorationsTree0.collectNodesPostOrder(),t=this._decorationsTree1.collectNodesPostOrder();return e.concat(t)},e.prototype.insert=function(e){Kg(e)?this._decorationsTree1.insert(e):this._decorationsTree0.insert(e)},e.prototype.delete=function(e){Kg(e)?this._decorationsTree1.delete(e):this._decorationsTree0.delete(e)},e.prototype.resolveNode=function(e,t){Kg(e)?this._decorationsTree1.resolveNode(e,t):this._decorationsTree0.resolveNode(e,t)},e.prototype.acceptReplace=function(e,t,n,i){this._decorationsTree0.acceptReplace(e,t,n,i),this._decorationsTree1.acceptReplace(e,t,n,i)},e}();function Lv(e){return e.replace(/[^a-z0-9\-_]/gi," ")}var xv=function(e){this.color=e.color||"",this.darkColor=e.darkColor||""},Dv=function(e){function t(t){var n=e.call(this,t)||this;return n._resolvedColor=null,n.position="number"==typeof t.position?t.position:Va.Center,n}return vv(t,e),t.prototype.getColor=function(e){return this._resolvedColor||("light"!==e.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor},t.prototype.invalidateCachedColor=function(){this._resolvedColor=null},t.prototype._resolveColor=function(e,t){if("string"==typeof e)return e;var n=e?t.getColor(e.id):null;return n?n.toString():""},t}(xv),Nv=function(e){function t(t){var n=e.call(this,t)||this;return n.position=t.position,n}return vv(t,e),t.prototype.getColor=function(e){return this._resolvedColor||("light"!==e.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor},t.prototype.invalidateCachedColor=function(){this._resolvedColor=void 0},t.prototype._resolveColor=function(e,t){return"string"==typeof e?mv.fromHex(e):t.getColor(e.id)},t}(xv),kv=function(){function e(e){this.stickiness=e.stickiness||0,this.zIndex=e.zIndex||0,this.className=e.className?Lv(e.className):null,this.hoverMessage=$s(e.hoverMessage),this.glyphMarginHoverMessage=$s(e.glyphMarginHoverMessage),this.isWholeLine=e.isWholeLine||!1,this.showIfCollapsed=e.showIfCollapsed||!1,this.collapseOnReplaceEdit=e.collapseOnReplaceEdit||!1,this.overviewRuler=e.overviewRuler?new Dv(e.overviewRuler):null,this.minimap=e.minimap?new Nv(e.minimap):null,this.glyphMarginClassName=e.glyphMarginClassName?Lv(e.glyphMarginClassName):null,this.linesDecorationsClassName=e.linesDecorationsClassName?Lv(e.linesDecorationsClassName):null,this.marginClassName=e.marginClassName?Lv(e.marginClassName):null,this.inlineClassName=e.inlineClassName?Lv(e.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=e.beforeContentClassName?Lv(e.beforeContentClassName):null,this.afterContentClassName=e.afterContentClassName?Lv(e.afterContentClassName):null}return e.register=function(t){return new e(t)},e.createDynamic=function(t){return new e(t)},e}();kv.EMPTY=kv.register({});var Ev=[kv.register({stickiness:0}),kv.register({stickiness:1}),kv.register({stickiness:2}),kv.register({stickiness:3})];function Iv(e){return e instanceof kv?e:kv.createDynamic(e)}var Ov=function(e){function t(){var t=e.call(this)||this;return t._actual=t._register(new nt),t.event=t._actual.event,t._deferredCnt=0,t._shouldFire=!1,t}return vv(t,e),t.prototype.beginDeferredEmit=function(){this._deferredCnt++},t.prototype.endDeferredEmit=function(){this._deferredCnt--,0===this._deferredCnt&&this._shouldFire&&(this._shouldFire=!1,this._actual.fire({}))},t.prototype.fire=function(){this._shouldFire=!0},t}(He),Mv=function(e){function t(){var t=e.call(this)||this;return t._fastEmitter=t._register(new nt),t.fastEvent=t._fastEmitter.event,t._slowEmitter=t._register(new nt),t.slowEvent=t._slowEmitter.event,t._deferredCnt=0,t._deferredEvent=null,t}return vv(t,e),t.prototype.beginDeferredEmit=function(){this._deferredCnt++},t.prototype.endDeferredEmit=function(){if(this._deferredCnt--,0===this._deferredCnt&&null!==this._deferredEvent){var e=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(e),this._slowEmitter.fire(e)}},t.prototype.fire=function(e){this._deferredCnt>0?this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(e):this._deferredEvent=e:(this._fastEmitter.fire(e),this._slowEmitter.fire(e))},t}(He),Tv=function(){return!0},Pv=function(){return!1},Rv=function(e){return" "===e||"\t"===e};function Av(e,t,n){e.has(t)?e.get(t).push(n):e.set(t,[n])}var Fv=function(){function e(t,n,i){this._languageIdentifier=t;var o=i.options,r=o.get(107);this.readOnly=o.get(68),this.tabSize=n.tabSize,this.indentSize=n.indentSize,this.insertSpaces=n.insertSpaces,this.lineHeight=o.get(49),this.pageSize=Math.max(1,Math.floor(r.height/this.lineHeight)-2),this.useTabStops=o.get(95),this.wordSeparators=o.get(96),this.emptySelectionClipboard=o.get(25),this.copyWithSyntaxHighlighting=o.get(15),this.multiCursorMergeOverlapping=o.get(58),this.multiCursorPaste=o.get(60),this.autoClosingBrackets=o.get(5),this.autoClosingQuotes=o.get(7),this.autoClosingOvertype=o.get(6),this.autoSurround=o.get(10),this.autoIndent=o.get(8),this.autoClosingPairsOpen2=new Map,this.autoClosingPairsClose2=new Map,this.surroundingPairs={},this._electricChars=null,this.shouldAutoCloseBefore={quote:e._getShouldAutoClose(t,this.autoClosingQuotes),bracket:e._getShouldAutoClose(t,this.autoClosingBrackets)};var s=e._getAutoClosingPairs(t);if(s)for(var a=0,u=s;a<u.length;a++){var l=u[a];Av(this.autoClosingPairsOpen2,l.open.charAt(l.open.length-1),l),1===l.close.length&&Av(this.autoClosingPairsClose2,l.close,l)}var c=e._getSurroundingPairs(t);if(c)for(var d=0,h=c;d<h.length;d++){l=h[d];this.surroundingPairs[l.open]=l.close}}return e.shouldRecreate=function(e){return e.hasChanged(107)||e.hasChanged(96)||e.hasChanged(25)||e.hasChanged(58)||e.hasChanged(60)||e.hasChanged(5)||e.hasChanged(7)||e.hasChanged(6)||e.hasChanged(10)||e.hasChanged(95)||e.hasChanged(49)||e.hasChanged(68)},Object.defineProperty(e.prototype,"electricChars",{get:function(){if(!this._electricChars){this._electricChars={};var t=e._getElectricCharacters(this._languageIdentifier);if(t)for(var n=0,i=t;n<i.length;n++){var o=i[n];this._electricChars[o]=!0}}return this._electricChars},enumerable:!0,configurable:!0}),e.prototype.normalizeIndentation=function(e){return Cv.normalizeIndentation(e,this.indentSize,this.insertSpaces)},e._getElectricCharacters=function(e){try{return Ol.getElectricCharacters(e.id)}catch(e){return De(e),null}},e._getAutoClosingPairs=function(e){try{return Ol.getAutoClosingPairs(e.id)}catch(e){return De(e),null}},e._getShouldAutoClose=function(t,n){switch(n){case"beforeWhitespace":return Rv;case"languageDefined":return e._getLanguageDefinedShouldAutoClose(t);case"always":return Tv;case"never":return Pv}},e._getLanguageDefinedShouldAutoClose=function(e){try{var t=Ol.getAutoCloseBeforeSet(e.id);return function(e){return-1!==t.indexOf(e)}}catch(e){return De(e),Pv}},e._getSurroundingPairs=function(e){try{return Ol.getSurroundingPairs(e.id)}catch(e){return De(e),null}},e}(),Wv=function(){function e(t,n,i,o){this.selectionStart=t,this.selectionStartLeftoverVisibleColumns=n,this.position=i,this.leftoverVisibleColumns=o,this.selection=e._computeSelection(this.selectionStart,this.position)}return e.prototype.equals=function(e){return this.selectionStartLeftoverVisibleColumns===e.selectionStartLeftoverVisibleColumns&&this.leftoverVisibleColumns===e.leftoverVisibleColumns&&this.position.equals(e.position)&&this.selectionStart.equalsRange(e.selectionStart)},e.prototype.hasSelection=function(){return!this.selection.isEmpty()||!this.selectionStart.isEmpty()},e.prototype.move=function(t,n,i,o){return t?new e(this.selectionStart,this.selectionStartLeftoverVisibleColumns,new bn(n,i),o):new e(new wn(n,i,n,i),o,new bn(n,i),o)},e._computeSelection=function(e,t){var n,i,o,r;return e.isEmpty()?(n=e.startLineNumber,i=e.startColumn,o=t.lineNumber,r=t.column):t.isBeforeOrEqual(e.getStartPosition())?(n=e.endLineNumber,i=e.endColumn,o=t.lineNumber,r=t.column):(n=e.startLineNumber,i=e.startColumn,o=t.lineNumber,r=t.column),new Sn(n,i,o,r)},e}(),Vv=function(){function e(e,t,n){this.model=t,this.viewModel=n,this.config=new Fv(this.model.getLanguageIdentifier(),this.model.getOptions(),e)}return e.prototype.validateViewPosition=function(e,t){return this.viewModel.coordinatesConverter.validateViewPosition(e,t)},e.prototype.validateViewRange=function(e,t){return this.viewModel.coordinatesConverter.validateViewRange(e,t)},e.prototype.convertViewRangeToModelRange=function(e){return this.viewModel.coordinatesConverter.convertViewRangeToModelRange(e)},e.prototype.convertViewPositionToModelPosition=function(e,t){return this.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new bn(e,t))},e.prototype.convertModelPositionToViewPosition=function(e){return this.viewModel.coordinatesConverter.convertModelPositionToViewPosition(e)},e.prototype.convertModelRangeToViewRange=function(e){return this.viewModel.coordinatesConverter.convertModelRangeToViewRange(e)},e.prototype.getCurrentScrollTop=function(){return this.viewModel.viewLayout.getCurrentScrollTop()},e.prototype.getCompletelyVisibleViewRange=function(){return this.viewModel.getCompletelyVisibleViewRange()},e.prototype.getCompletelyVisibleModelRange=function(){var e=this.viewModel.getCompletelyVisibleViewRange();return this.viewModel.coordinatesConverter.convertViewRangeToModelRange(e)},e.prototype.getCompletelyVisibleViewRangeAtScrollTop=function(e){return this.viewModel.getCompletelyVisibleViewRangeAtScrollTop(e)},e.prototype.getVerticalOffsetForViewLine=function(e){return this.viewModel.viewLayout.getVerticalOffsetForLineNumber(e)},e}(),Bv=function(e){this.modelState=e,this.viewState=null},Hv=function(e){this.modelState=null,this.viewState=e},zv=function(){function e(e,t){this.modelState=e,this.viewState=t}return e.fromModelState=function(e){return new Bv(e)},e.fromViewState=function(e){return new Hv(e)},e.fromModelSelection=function(t){var n=t.selectionStartLineNumber,i=t.selectionStartColumn,o=t.positionLineNumber,r=t.positionColumn,s=new Wv(new wn(n,i,n,i),0,new bn(o,r),0);return e.fromModelState(s)},e.fromModelSelections=function(e){for(var t=[],n=0,i=e.length;n<i;n++)t[n]=this.fromModelSelection(e[n]);return t},e.prototype.equals=function(e){return this.viewState.equals(e.viewState)&&this.modelState.equals(e.modelState)},e}(),jv=function(e,t,n){this.type=e,this.commands=t,this.shouldPushStackElementBefore=n.shouldPushStackElementBefore,this.shouldPushStackElementAfter=n.shouldPushStackElementAfter},Uv=function(){function e(){}return e.visibleColumnFromColumn=function(t,n,i){for(var o=t.length,r=n-1<o?n-1:o,s=0,a=0;a<r;){var u=Rr(t,r,a);if(a+=u>=65536?2:1,9===u)s=e.nextRenderTabStop(s,i);else{for(var l=Xr(u);a<r;){var c=Rr(t,r,a),d=Xr(c);if($r(l,d))break;a+=c>=65536?2:1,l=d}jr(u)||Ur(u)?s+=2:s+=1}}return s},e.visibleColumnFromColumn2=function(e,t,n){return this.visibleColumnFromColumn(t.getLineContent(n.lineNumber),n.column,e.tabSize)},e.columnFromVisibleColumn=function(t,n,i){if(n<=0)return 1;for(var o=t.length,r=0,s=1,a=0;a<o;){var u=Rr(t,o,a);a+=u>=65536?2:1;var l=void 0;if(9===u)l=e.nextRenderTabStop(r,i);else{for(var c=Xr(u);a<o;){var d=Rr(t,o,a),h=Xr(d);if($r(c,h))break;a+=d>=65536?2:1,c=h}l=jr(u)||Ur(u)?r+2:r+1}var p=a+1;if(l>=n)return l-n<n-r?p:s;r=l,s=p}return o+1},e.columnFromVisibleColumn2=function(e,t,n,i){var o=this.columnFromVisibleColumn(t.getLineContent(n),i,e.tabSize),r=t.getLineMinColumn(n);if(o<r)return r;var s=t.getLineMaxColumn(n);return o>s?s:o},e.nextRenderTabStop=function(e,t){return e+t-e%t},e.nextIndentTabStop=function(e,t){return e+t-e%t},e.prevRenderTabStop=function(e,t){return e-1-(e-1)%t},e.prevIndentTabStop=function(e,t){return e-1-(e-1)%t},e}();function Kv(e){return"'"===e||'"'===e||"`"===e}var qv=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Gv=function(e,t){this.lastViewCursorsRenderData=e,this.lastTextareaPosition=t},Zv=function(){function e(e,t,n,i,o,r){void 0===n&&(n=0),void 0===i&&(i=null),void 0===o&&(o=null),void 0===r&&(r=null),this.element=e,this.type=t,this.mouseColumn=n,this.position=i,!o&&i&&(o=new wn(i.lineNumber,i.column,i.lineNumber,i.column)),this.range=o,this.detail=r}return e._typeToString=function(e){return 1===e?"TEXTAREA":2===e?"GUTTER_GLYPH_MARGIN":3===e?"GUTTER_LINE_NUMBERS":4===e?"GUTTER_LINE_DECORATIONS":5===e?"GUTTER_VIEW_ZONE":6===e?"CONTENT_TEXT":7===e?"CONTENT_EMPTY":8===e?"CONTENT_VIEW_ZONE":9===e?"CONTENT_WIDGET":10===e?"OVERVIEW_RULER":11===e?"SCROLLBAR":12===e?"OVERLAY_WIDGET":"UNKNOWN"},e.toString=function(e){return this._typeToString(e.type)+": "+e.position+" - "+e.range+" - "+e.detail},e.prototype.toString=function(){return e.toString(this)},e}(),Yv=function(){function e(){}return e.isTextArea=function(e){return 2===e.length&&3===e[0]&&6===e[1]},e.isChildOfViewLines=function(e){return e.length>=4&&3===e[0]&&7===e[3]},e.isStrictChildOfViewLines=function(e){return e.length>4&&3===e[0]&&7===e[3]},e.isChildOfScrollableElement=function(e){return e.length>=2&&3===e[0]&&5===e[1]},e.isChildOfMinimap=function(e){return e.length>=2&&3===e[0]&&8===e[1]},e.isChildOfContentWidgets=function(e){return e.length>=4&&3===e[0]&&1===e[3]},e.isChildOfOverflowingContentWidgets=function(e){return e.length>=1&&2===e[0]},e.isChildOfOverlayWidgets=function(e){return e.length>=2&&3===e[0]&&4===e[1]},e}(),Xv=function(){function e(e,t,n){this.model=e.model;var i=e.configuration.options;this.layoutInfo=i.get(107),this.viewDomNode=t.viewDomNode,this.lineHeight=i.get(49),this.typicalHalfwidthCharacterWidth=i.get(34).typicalHalfwidthCharacterWidth,this.lastRenderData=n,this._context=e,this._viewHelper=t}return e.prototype.getZoneAtCoord=function(t){return e.getZoneAtCoord(this._context,t)},e.getZoneAtCoord=function(e,t){var n=e.viewLayout.getWhitespaceAtVerticalOffset(t);if(n){var i=n.verticalOffset+n.height/2,o=e.model.getLineCount(),r=null,s=void 0,a=null;return n.afterLineNumber!==o&&(a=new bn(n.afterLineNumber+1,1)),n.afterLineNumber>0&&(r=new bn(n.afterLineNumber,e.model.getLineMaxColumn(n.afterLineNumber))),s=null===a?r:null===r?a:t<i?r:a,{viewZoneId:n.id,afterLineNumber:n.afterLineNumber,positionBefore:r,positionAfter:a,position:s}}return null},e.prototype.getFullLineRangeAtCoord=function(e){if(this._context.viewLayout.isAfterLines(e)){var t=this._context.model.getLineCount(),n=this._context.model.getLineMaxColumn(t);return{range:new wn(t,n,t,n),isAfterLines:!0}}var i=this._context.viewLayout.getLineNumberAtVerticalOffset(e),o=this._context.model.getLineMaxColumn(i);return{range:new wn(i,1,i,o),isAfterLines:!1}},e.prototype.getLineNumberAtVerticalOffset=function(e){return this._context.viewLayout.getLineNumberAtVerticalOffset(e)},e.prototype.isAfterLines=function(e){return this._context.viewLayout.isAfterLines(e)},e.prototype.getVerticalOffsetForLineNumber=function(e){return this._context.viewLayout.getVerticalOffsetForLineNumber(e)},e.prototype.findAttribute=function(t,n){return e._findAttribute(t,n,this._viewHelper.viewDomNode)},e._findAttribute=function(e,t,n){for(;e&&e!==document.body;){if(e.hasAttribute&&e.hasAttribute(t))return e.getAttribute(t);if(e===n)return null;e=e.parentNode}return null},e.prototype.getLineWidth=function(e){return this._viewHelper.getLineWidth(e)},e.prototype.visibleRangeForPosition=function(e,t){return this._viewHelper.visibleRangeForPosition(e,t)},e.prototype.getPositionFromDOMInfo=function(e,t){return this._viewHelper.getPositionFromDOMInfo(e,t)},e.prototype.getCurrentScrollTop=function(){return this._context.viewLayout.getCurrentScrollTop()},e.prototype.getCurrentScrollLeft=function(){return this._context.viewLayout.getCurrentScrollLeft()},e}(),$v=function(e){function t(t,n,i,o){var r=e.call(this,t,n,i)||this;return r._ctx=t,o?(r.target=o,r.targetPath=rg.collect(o,t.viewDomNode)):(r.target=null,r.targetPath=new Uint8Array(0)),r}return qv(t,e),t.prototype.toString=function(){return"pos("+this.pos.x+","+this.pos.y+"), editorPos("+this.editorPos.x+","+this.editorPos.y+"), mouseVerticalOffset: "+this.mouseVerticalOffset+", mouseContentHorizontalOffset: "+this.mouseContentHorizontalOffset+"\n\ttarget: "+(this.target?this.target.outerHTML:null)},t.prototype.fulfill=function(e,t,n,i){void 0===t&&(t=null),void 0===n&&(n=null),void 0===i&&(i=null);var o=this.mouseColumn;return t&&t.column<this._ctx.model.getLineMaxColumn(t.lineNumber)&&(o=Uv.visibleColumnFromColumn(this._ctx.model.getLineContent(t.lineNumber),t.column,this._ctx.model.getOptions().tabSize)+1),new Zv(this.target,e,o,t,n,i)},t.prototype.withTarget=function(e){return new t(this._ctx,this.editorPos,this.pos,e)},t}((function(e,t,n){this.editorPos=t,this.pos=n,this.mouseVerticalOffset=Math.max(0,e.getCurrentScrollTop()+n.y-t.y),this.mouseContentHorizontalOffset=e.getCurrentScrollLeft()+n.x-t.x-e.layoutInfo.contentLeft,this.isInMarginArea=n.x-t.x<e.layoutInfo.contentLeft&&n.x-t.x>=e.layoutInfo.glyphMarginLeft,this.isInContentArea=!this.isInMarginArea,this.mouseColumn=Math.max(0,e_._getMouseColumn(this.mouseContentHorizontalOffset,e.typicalHalfwidthCharacterWidth))})),Qv={isAfterLines:!0};function Jv(e){return{isAfterLines:!1,horizontalDistanceToText:e}}var e_=function(){function e(e,t){this._context=e,this._viewHelper=t}return e.prototype.mouseTargetIsWidget=function(e){var t=e.target,n=rg.collect(t,this._viewHelper.viewDomNode);return!(!Yv.isChildOfContentWidgets(n)&&!Yv.isChildOfOverflowingContentWidgets(n))||!!Yv.isChildOfOverlayWidgets(n)},e.prototype.createMouseTarget=function(t,n,i,o){var r=new Xv(this._context,this._viewHelper,t),s=new $v(r,n,i,o);try{return e._createMouseTarget(r,s,!1)}catch(e){return s.fulfill(0)}},e._createMouseTarget=function(t,n,i){if(null===n.target){if(i)return n.fulfill(0);var o=e._doHitTest(t,n);return o.position?e.createMouseTargetFromHitTestPosition(t,n,o.position.lineNumber,o.position.column):this._createMouseTarget(t,n.withTarget(o.hitTarget),!0)}var r=n,s=null;return(s=(s=(s=(s=(s=(s=(s=(s=(s=(s=s||e._hitTestContentWidget(t,r))||e._hitTestOverlayWidget(t,r))||e._hitTestMinimap(t,r))||e._hitTestScrollbarSlider(t,r))||e._hitTestViewZone(t,r))||e._hitTestMargin(t,r))||e._hitTestViewCursor(t,r))||e._hitTestTextArea(t,r))||e._hitTestViewLines(t,r,i))||e._hitTestScrollbar(t,r))||n.fulfill(0)},e._hitTestContentWidget=function(e,t){if(Yv.isChildOfContentWidgets(t.targetPath)||Yv.isChildOfOverflowingContentWidgets(t.targetPath)){var n=e.findAttribute(t.target,"widgetId");return n?t.fulfill(9,null,null,n):t.fulfill(0)}return null},e._hitTestOverlayWidget=function(e,t){if(Yv.isChildOfOverlayWidgets(t.targetPath)){var n=e.findAttribute(t.target,"widgetId");return n?t.fulfill(12,null,null,n):t.fulfill(0)}return null},e._hitTestViewCursor=function(e,t){if(t.target)for(var n=0,i=r=e.lastRenderData.lastViewCursorsRenderData;n<i.length;n++){var o=i[n];if(t.target===o.domNode)return t.fulfill(6,o.position)}if(t.isInContentArea)for(var r=e.lastRenderData.lastViewCursorsRenderData,s=t.mouseContentHorizontalOffset,a=t.mouseVerticalOffset,u=0,l=r;u<l.length;u++){if(!(s<(o=l[u]).contentLeft)&&!(s>o.contentLeft+o.width)){var c=e.getVerticalOffsetForLineNumber(o.position.lineNumber);if(c<=a&&a<=c+o.height)return t.fulfill(6,o.position)}}return null},e._hitTestViewZone=function(e,t){var n=e.getZoneAtCoord(t.mouseVerticalOffset);if(n){var i=t.isInContentArea?8:5;return t.fulfill(i,n.position,null,n)}return null},e._hitTestTextArea=function(e,t){return Yv.isTextArea(t.targetPath)?e.lastRenderData.lastTextareaPosition?t.fulfill(6,e.lastRenderData.lastTextareaPosition):t.fulfill(1,e.lastRenderData.lastTextareaPosition):null},e._hitTestMargin=function(e,t){if(t.isInMarginArea){var n=e.getFullLineRangeAtCoord(t.mouseVerticalOffset),i=n.range.getStartPosition(),o=Math.abs(t.pos.x-t.editorPos.x),r={isAfterLines:n.isAfterLines,glyphMarginLeft:e.layoutInfo.glyphMarginLeft,glyphMarginWidth:e.layoutInfo.glyphMarginWidth,lineNumbersWidth:e.layoutInfo.lineNumbersWidth,offsetX:o};return(o-=e.layoutInfo.glyphMarginLeft)<=e.layoutInfo.glyphMarginWidth?t.fulfill(2,i,n.range,r):(o-=e.layoutInfo.glyphMarginWidth)<=e.layoutInfo.lineNumbersWidth?t.fulfill(3,i,n.range,r):(o-=e.layoutInfo.lineNumbersWidth,t.fulfill(4,i,n.range,r))}return null},e._hitTestViewLines=function(t,n,i){if(!Yv.isChildOfViewLines(n.targetPath))return null;if(t.isAfterLines(n.mouseVerticalOffset)){var o=t.model.getLineCount(),r=t.model.getLineMaxColumn(o);return n.fulfill(7,new bn(o,r),void 0,Qv)}if(i){if(Yv.isStrictChildOfViewLines(n.targetPath)){var s=t.getLineNumberAtVerticalOffset(n.mouseVerticalOffset);if(0===t.model.getLineLength(s)){var a=t.getLineWidth(s),u=Jv(n.mouseContentHorizontalOffset-a);return n.fulfill(7,new bn(s,1),void 0,u)}var l=t.getLineWidth(s);if(n.mouseContentHorizontalOffset>=l){u=Jv(n.mouseContentHorizontalOffset-l);var c=new bn(s,t.model.getLineMaxColumn(s));return n.fulfill(7,c,void 0,u)}}return n.fulfill(0)}var d=e._doHitTest(t,n);return d.position?e.createMouseTargetFromHitTestPosition(t,n,d.position.lineNumber,d.position.column):this._createMouseTarget(t,n.withTarget(d.hitTarget),!0)},e._hitTestMinimap=function(e,t){if(Yv.isChildOfMinimap(t.targetPath)){var n=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),i=e.model.getLineMaxColumn(n);return t.fulfill(11,new bn(n,i))}return null},e._hitTestScrollbarSlider=function(e,t){if(Yv.isChildOfScrollableElement(t.targetPath)&&t.target&&1===t.target.nodeType){var n=t.target.className;if(n&&/\b(slider|scrollbar)\b/.test(n)){var i=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),o=e.model.getLineMaxColumn(i);return t.fulfill(11,new bn(i,o))}}return null},e._hitTestScrollbar=function(e,t){if(Yv.isChildOfScrollableElement(t.targetPath)){var n=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),i=e.model.getLineMaxColumn(n);return t.fulfill(11,new bn(n,i))}return null},e.prototype.getMouseColumn=function(t,n){var i=this._context.configuration.options,o=i.get(107),r=this._context.viewLayout.getCurrentScrollLeft()+n.x-t.x-o.contentLeft;return e._getMouseColumn(r,i.get(34).typicalHalfwidthCharacterWidth)},e._getMouseColumn=function(e,t){return e<0?1:Math.round(e/t)+1},e.createMouseTargetFromHitTestPosition=function(e,t,n,i){var o=new bn(n,i),r=e.getLineWidth(n);if(t.mouseContentHorizontalOffset>r){if(Bn&&1===o.column){var s=Jv(t.mouseContentHorizontalOffset-r);return t.fulfill(7,new bn(n,e.model.getLineMaxColumn(n)),void 0,s)}var a=Jv(t.mouseContentHorizontalOffset-r);return t.fulfill(7,o,void 0,a)}var u=e.visibleRangeForPosition(n,i);if(!u)return t.fulfill(0,o);var l=u.left;if(t.mouseContentHorizontalOffset===l)return t.fulfill(6,o);var c=[];if(c.push({offset:u.left,column:i}),i>1){var d=e.visibleRangeForPosition(n,i-1);d&&c.push({offset:d.left,column:i-1})}if(i<e.model.getLineMaxColumn(n)){var h=e.visibleRangeForPosition(n,i+1);h&&c.push({offset:h.left,column:i+1})}c.sort((function(e,t){return e.offset-t.offset}));for(var p=1;p<c.length;p++){var f=c[p-1],g=c[p];if(f.offset<=t.mouseContentHorizontalOffset&&t.mouseContentHorizontalOffset<=g.offset){var m=new wn(n,f.column,n,g.column);return t.fulfill(6,o,m)}}return t.fulfill(6,o)},e._doHitTestWithCaretRangeFromPoint=function(e,t){var n=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),i=e.getVerticalOffsetForLineNumber(n)+Math.floor(e.lineHeight/2),o=t.pos.y+(i-t.mouseVerticalOffset);o<=t.editorPos.y&&(o=t.editorPos.y+1),o>=t.editorPos.y+e.layoutInfo.height&&(o=t.editorPos.y+e.layoutInfo.height-1);var r=new Gf(t.pos.x,o),s=this._actualDoHitTestWithCaretRangeFromPoint(e,r.toClientCoordinates());return s.position?s:this._actualDoHitTestWithCaretRangeFromPoint(e,t.pos.toClientCoordinates())},e._actualDoHitTestWithCaretRangeFromPoint=function(e,t){var n,i=Ho(e.viewDomNode);if(!(n=i?void 0===i.caretRangeFromPoint?function(e,t,n){var i=document.createRange(),o=e.elementFromPoint(t,n);if(null!==o){for(;o&&o.firstChild&&o.firstChild.nodeType!==o.firstChild.TEXT_NODE;)o=o.lastChild;var r=o.getBoundingClientRect(),s=window.getComputedStyle(o,null).getPropertyValue("font"),a=o.innerText,u=r.left,l=0,c=void 0;if(t>r.left+r.width)l=a.length;else for(var d=t_.getInstance(),h=0;h<a.length+1;h++){if(c=d.getCharWidth(a.charAt(h),s)/2,t<(u+=c)){l=h;break}u+=c}i.setStart(o.firstChild,l),i.setEnd(o.firstChild,l)}return i}(i,t.clientX,t.clientY):i.caretRangeFromPoint(t.clientX,t.clientY):document.caretRangeFromPoint(t.clientX,t.clientY))||!n.startContainer)return{position:null,hitTarget:null};var o=n.startContainer,r=null;if(o.nodeType===o.TEXT_NODE){var s=(u=(a=o.parentNode)?a.parentNode:null)?u.parentNode:null;if((s&&s.nodeType===s.ELEMENT_NODE?s.className:null)===xg.CLASS_NAME)return{position:e.getPositionFromDOMInfo(a,n.startOffset),hitTarget:null};r=o.parentNode}else if(o.nodeType===o.ELEMENT_NODE){var a,u;if(((u=(a=o.parentNode)?a.parentNode:null)&&u.nodeType===u.ELEMENT_NODE?u.className:null)===xg.CLASS_NAME)return{position:e.getPositionFromDOMInfo(o,o.textContent.length),hitTarget:null};r=o}return{position:null,hitTarget:r}},e._doHitTestWithCaretPositionFromPoint=function(e,t){var n=document.caretPositionFromPoint(t.clientX,t.clientY);if(n.offsetNode.nodeType===n.offsetNode.TEXT_NODE){var i=n.offsetNode.parentNode,o=i?i.parentNode:null,r=o?o.parentNode:null;return(r&&r.nodeType===r.ELEMENT_NODE?r.className:null)===xg.CLASS_NAME?{position:e.getPositionFromDOMInfo(n.offsetNode.parentNode,n.offset),hitTarget:null}:{position:null,hitTarget:n.offsetNode.parentNode}}return{position:null,hitTarget:n.offsetNode}},e._doHitTestWithMoveToPoint=function(e,t){var n=null,i=null,o=document.body.createTextRange();try{o.moveToPoint(t.clientX,t.clientY)}catch(e){return{position:null,hitTarget:null}}o.collapse(!0);var r=o?o.parentElement():null,s=r?r.parentNode:null,a=s?s.parentNode:null;if((a&&a.nodeType===a.ELEMENT_NODE?a.className:"")===xg.CLASS_NAME){var u=o.duplicate();u.moveToElementText(r),u.setEndPoint("EndToStart",o),n=e.getPositionFromDOMInfo(r,u.text.length),u.moveToElementText(e.viewDomNode)}else i=r;return o.moveToElementText(e.viewDomNode),{position:n,hitTarget:i}},e._doHitTest=function(e,t){return"function"==typeof document.caretRangeFromPoint?this._doHitTestWithCaretRangeFromPoint(e,t):document.caretPositionFromPoint?this._doHitTestWithCaretPositionFromPoint(e,t.pos.toClientCoordinates()):document.body.createTextRange?this._doHitTestWithMoveToPoint(e,t.pos.toClientCoordinates()):{position:null,hitTarget:null}},e}();var t_=function(){function e(){this._cache={},this._canvas=document.createElement("canvas")}return e.getInstance=function(){return e._INSTANCE||(e._INSTANCE=new e),e._INSTANCE},e.prototype.getCharWidth=function(e,t){var n=e+t;if(this._cache[n])return this._cache[n];var i=this._canvas.getContext("2d");i.font=t;var o=i.measureText(e).width;return this._cache[n]=o,o},e._INSTANCE=null,e}(),n_=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function i_(e){return function(t,n){var i=!1;return e&&(i=e.mouseTargetIsWidget(n)),i||n.preventDefault(),n}}var o_=function(e){function t(n,i,o){var r=e.call(this)||this;r._isFocused=!1,r._context=n,r.viewController=i,r.viewHelper=o,r.mouseTargetFactory=new e_(r._context,o),r._mouseDownOperation=r._register(new r_(r._context,r.viewController,r.viewHelper,(function(e,t){return r._createMouseTarget(e,t)}),(function(e){return r._getMouseColumn(e)}))),r._asyncFocus=r._register(new wi((function(){return r.viewHelper.focusTextArea()}),0)),r.lastMouseLeaveTime=-1;var s=new Qf(r.viewHelper.viewDomNode);r._register(s.onContextMenu(r.viewHelper.viewDomNode,(function(e){return r._onContextMenu(e,!0)}))),r._register(s.onMouseMoveThrottled(r.viewHelper.viewDomNode,(function(e){return r._onMouseMove(e)}),i_(r.mouseTargetFactory),t.MOUSE_MOVE_MINIMUM_TIME)),r._register(s.onMouseUp(r.viewHelper.viewDomNode,(function(e){return r._onMouseUp(e)}))),r._register(s.onMouseLeave(r.viewHelper.viewDomNode,(function(e){return r._onMouseLeave(e)}))),r._register(s.onMouseDown(r.viewHelper.viewDomNode,(function(e){return r._onMouseDown(e)})));return r._register(uo(r.viewHelper.viewDomNode,Hn?"mousewheel":"wheel",(function(e){if(r.viewController.emitMouseWheel(e),r._context.configuration.options.get(57)){var t=new di(e);if(t.browserEvent.ctrlKey||t.browserEvent.metaKey){var n=Pa.getZoomLevel(),i=t.deltaY>0?1:-1;Pa.setZoomLevel(n+i),t.preventDefault(),t.stopPropagation()}}}),{capture:!0,passive:!1})),r._context.addEventHandler(r),r}return n_(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),e.prototype.dispose.call(this)},t.prototype.onCursorStateChanged=function(e){return this._mouseDownOperation.onCursorStateChanged(e),!1},t.prototype.onFocusChanged=function(e){return this._isFocused=e.isFocused,!1},t.prototype.onScrollChanged=function(e){return this._mouseDownOperation.onScrollChanged(),!1},t.prototype.getTargetAtClientPoint=function(e,t){var n=new Zf(e,t).toPageCoordinates(),i=Xf(this.viewHelper.viewDomNode);return n.y<i.y||n.y>i.y+i.height||n.x<i.x||n.x>i.x+i.width?null:this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),i,n,null)},t.prototype._createMouseTarget=function(e,t){return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),e.editorPos,e.pos,t?e.target:null)},t.prototype._getMouseColumn=function(e){return this.mouseTargetFactory.getMouseColumn(e.editorPos,e.pos)},t.prototype._onContextMenu=function(e,t){this.viewController.emitContextMenu({event:e,target:this._createMouseTarget(e,t)})},t.prototype._onMouseMove=function(e){this._mouseDownOperation.isActive()||(e.timestamp<this.lastMouseLeaveTime||this.viewController.emitMouseMove({event:e,target:this._createMouseTarget(e,!0)}))},t.prototype._onMouseLeave=function(e){this.lastMouseLeaveTime=(new Date).getTime(),this.viewController.emitMouseLeave({event:e,target:null})},t.prototype._onMouseUp=function(e){this.viewController.emitMouseUp({event:e,target:this._createMouseTarget(e,!0)})},t.prototype._onMouseDown=function(e){var t=this,n=this._createMouseTarget(e,!0),i=6===n.type||7===n.type,o=2===n.type||3===n.type||4===n.type,r=3===n.type,s=this._context.configuration.options.get(83),a=8===n.type||5===n.type,u=9===n.type,l=e.leftButton||e.middleButton;_&&e.leftButton&&e.ctrlKey&&(l=!1);var c=function(){Vn&&!t._isFocused?t._asyncFocus.schedule():(e.preventDefault(),t.viewHelper.focusTextArea())};if(l&&(i||r&&s))c(),this._mouseDownOperation.start(n.type,e);else if(o)e.preventDefault();else if(a){var d=n.detail;this.viewHelper.shouldSuppressMouseDownOnViewZone(d.viewZoneId)&&(c(),this._mouseDownOperation.start(n.type,e),e.preventDefault())}else u&&this.viewHelper.shouldSuppressMouseDownOnWidget(n.detail)&&(c(),e.preventDefault());this.viewController.emitMouseDown({event:e,target:n})},t.MOUSE_MOVE_MINIMUM_TIME=100,t}(ng),r_=function(e){function t(t,n,i,o,r){var s=e.call(this)||this;return s._context=t,s._viewController=n,s._viewHelper=i,s._createMouseTarget=o,s._getMouseColumn=r,s._mouseMoveMonitor=s._register(new eg(s._viewHelper.viewDomNode)),s._onScrollTimeout=s._register(new yi),s._mouseState=new s_,s._currentSelection=new Sn(1,1,1,1),s._isActive=!1,s._lastMouseEvent=null,s}return n_(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.isActive=function(){return this._isActive},t.prototype._onMouseDownThenMove=function(e){this._lastMouseEvent=e,this._mouseState.setModifiers(e);var t=this._findMousePosition(e,!0);t&&(this._mouseState.isDragAndDrop?this._viewController.emitMouseDrag({event:e,target:t}):this._dispatchMouse(t,!0))},t.prototype.start=function(e,t){var n=this;this._lastMouseEvent=t,this._mouseState.setStartedOnLineNumbers(3===e),this._mouseState.setStartButtons(t),this._mouseState.setModifiers(t);var i=this._findMousePosition(t,!0);if(i&&i.position){this._mouseState.trySetCount(t.detail,i.position),t.detail=this._mouseState.count;var o=this._context.configuration.options;if(!o.get(68)&&o.get(24)&&!this._mouseState.altKey&&t.detail<2&&!this._isActive&&!this._currentSelection.isEmpty()&&6===i.type&&i.position&&this._currentSelection.containsPosition(i.position))return this._mouseState.isDragAndDrop=!0,this._isActive=!0,void this._mouseMoveMonitor.startMonitoring(t.target,t.buttons,i_(null),(function(e){return n._onMouseDownThenMove(e)}),(function(){var e=n._findMousePosition(n._lastMouseEvent,!0);n._viewController.emitMouseDrop({event:n._lastMouseEvent,target:e?n._createMouseTarget(n._lastMouseEvent,!0):null}),n._stop()}));this._mouseState.isDragAndDrop=!1,this._dispatchMouse(i,t.shiftKey),this._isActive||(this._isActive=!0,this._mouseMoveMonitor.startMonitoring(t.target,t.buttons,i_(null),(function(e){return n._onMouseDownThenMove(e)}),(function(){return n._stop()})))}},t.prototype._stop=function(){this._isActive=!1,this._onScrollTimeout.cancel()},t.prototype.onScrollChanged=function(){var e=this;this._isActive&&this._onScrollTimeout.setIfNotSet((function(){if(e._lastMouseEvent){var t=e._findMousePosition(e._lastMouseEvent,!1);t&&(e._mouseState.isDragAndDrop||e._dispatchMouse(t,!0))}}),10)},t.prototype.onCursorStateChanged=function(e){this._currentSelection=e.selections[0]},t.prototype._getPositionOutsideEditor=function(e){var t=e.editorPos,n=this._context.model,i=this._context.viewLayout,o=this._getMouseColumn(e);if(e.posy<t.y){var r=Math.max(i.getCurrentScrollTop()-(t.y-e.posy),0);if(a=Xv.getZoneAtCoord(this._context,r))if(u=this._helpPositionJumpOverViewZone(a))return new Zv(null,13,o,u);var s=i.getLineNumberAtVerticalOffset(r);return new Zv(null,13,o,new bn(s,1))}if(e.posy>t.y+t.height){var a,u;r=i.getCurrentScrollTop()+(e.posy-t.y);if(a=Xv.getZoneAtCoord(this._context,r))if(u=this._helpPositionJumpOverViewZone(a))return new Zv(null,13,o,u);var l=i.getLineNumberAtVerticalOffset(r);return new Zv(null,13,o,new bn(l,n.getLineMaxColumn(l)))}var c=i.getLineNumberAtVerticalOffset(i.getCurrentScrollTop()+(e.posy-t.y));return e.posx<t.x?new Zv(null,13,o,new bn(c,1)):e.posx>t.x+t.width?new Zv(null,13,o,new bn(c,n.getLineMaxColumn(c))):null},t.prototype._findMousePosition=function(e,t){var n=this._getPositionOutsideEditor(e);if(n)return n;var i=this._createMouseTarget(e,t);if(!i.position)return null;if(8===i.type||5===i.type){var o=this._helpPositionJumpOverViewZone(i.detail);if(o)return new Zv(i.element,i.type,i.mouseColumn,o,null,i.detail)}return i},t.prototype._helpPositionJumpOverViewZone=function(e){var t=new bn(this._currentSelection.selectionStartLineNumber,this._currentSelection.selectionStartColumn),n=e.positionBefore,i=e.positionAfter;return n&&i?n.isBefore(t)?n:i:null},t.prototype._dispatchMouse=function(e,t){e.position&&this._viewController.dispatchMouse({position:e.position,mouseColumn:e.mouseColumn,startedOnLineNumbers:this._mouseState.startedOnLineNumbers,inSelectionMode:t,mouseDownCount:this._mouseState.count,altKey:this._mouseState.altKey,ctrlKey:this._mouseState.ctrlKey,metaKey:this._mouseState.metaKey,shiftKey:this._mouseState.shiftKey,leftButton:this._mouseState.leftButton,middleButton:this._mouseState.middleButton})},t}(He),s_=function(){function e(){this._altKey=!1,this._ctrlKey=!1,this._metaKey=!1,this._shiftKey=!1,this._leftButton=!1,this._middleButton=!1,this._startedOnLineNumbers=!1,this._lastMouseDownPosition=null,this._lastMouseDownPositionEqualCount=0,this._lastMouseDownCount=0,this._lastSetMouseDownCountTime=0,this.isDragAndDrop=!1}return Object.defineProperty(e.prototype,"altKey",{get:function(){return this._altKey},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"ctrlKey",{get:function(){return this._ctrlKey},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"metaKey",{get:function(){return this._metaKey},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"shiftKey",{get:function(){return this._shiftKey},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"leftButton",{get:function(){return this._leftButton},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"middleButton",{get:function(){return this._middleButton},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"startedOnLineNumbers",{get:function(){return this._startedOnLineNumbers},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"count",{get:function(){return this._lastMouseDownCount},enumerable:!0,configurable:!0}),e.prototype.setModifiers=function(e){this._altKey=e.altKey,this._ctrlKey=e.ctrlKey,this._metaKey=e.metaKey,this._shiftKey=e.shiftKey},e.prototype.setStartButtons=function(e){this._leftButton=e.leftButton,this._middleButton=e.middleButton},e.prototype.setStartedOnLineNumbers=function(e){this._startedOnLineNumbers=e},e.prototype.trySetCount=function(t,n){var i=(new Date).getTime();i-this._lastSetMouseDownCountTime>e.CLEAR_MOUSE_DOWN_COUNT_TIME&&(t=1),this._lastSetMouseDownCountTime=i,t>this._lastMouseDownCount+1&&(t=this._lastMouseDownCount+1),this._lastMouseDownPosition&&this._lastMouseDownPosition.equals(n)?this._lastMouseDownPositionEqualCount++:this._lastMouseDownPositionEqualCount=1,this._lastMouseDownPosition=n,this._lastMouseDownCount=Math.min(t,this._lastMouseDownPositionEqualCount)},e.CLEAR_MOUSE_DOWN_COUNT_TIME=400,e}(),a_=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function u_(e,t){var n={translationY:t.translationY,translationX:t.translationX};return e&&(n.translationY+=e.translationY,n.translationX+=e.translationX),n}var l_=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;return o.viewHelper.linesContentDomNode.style.msTouchAction="none",o.viewHelper.linesContentDomNode.style.msContentZooming="none",o._installGestureHandlerTimeout=window.setTimeout((function(){if(o._installGestureHandlerTimeout=-1,window.MSGesture){var e=new MSGesture,t=new MSGesture;e.target=o.viewHelper.linesContentDomNode,t.target=o.viewHelper.linesContentDomNode,o.viewHelper.linesContentDomNode.addEventListener("MSPointerDown",(function(n){var i=n.pointerType;i!==(n.MSPOINTER_TYPE_MOUSE||"mouse")?i===(n.MSPOINTER_TYPE_TOUCH||"touch")?(o._lastPointerType="touch",e.addPointer(n.pointerId)):(o._lastPointerType="pen",t.addPointer(n.pointerId)):o._lastPointerType="mouse"})),o._register(Do(o.viewHelper.linesContentDomNode,"MSGestureChange",(function(e){return o._onGestureChange(e)}),u_)),o._register(uo(o.viewHelper.linesContentDomNode,"MSGestureTap",(function(e){return o._onCaptureGestureTap(e)}),!0))}}),100),o._lastPointerType="mouse",o}return a_(t,e),t.prototype._onMouseDown=function(t){"mouse"===this._lastPointerType&&e.prototype._onMouseDown.call(this,t)},t.prototype._onCaptureGestureTap=function(e){var t=this,n=new $f(e,this.viewHelper.viewDomNode),i=this._createMouseTarget(n,!1);i.position&&this.viewController.moveTo(i.position),n.browserEvent.fromElement?(n.preventDefault(),this.viewHelper.focusTextArea()):setTimeout((function(){t.viewHelper.focusTextArea()}))},t.prototype._onGestureChange=function(e){this._context.viewLayout.deltaScrollNow(-e.translationX,-e.translationY)},t.prototype.dispose=function(){window.clearTimeout(this._installGestureHandlerTimeout),e.prototype.dispose.call(this)},t}(o_),c_=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;return o.viewHelper.linesContentDomNode.style.touchAction="none",o._installGestureHandlerTimeout=window.setTimeout((function(){if(o._installGestureHandlerTimeout=-1,window.MSGesture){var e=new MSGesture,t=new MSGesture;e.target=o.viewHelper.linesContentDomNode,t.target=o.viewHelper.linesContentDomNode,o.viewHelper.linesContentDomNode.addEventListener("pointerdown",(function(n){var i=n.pointerType;"mouse"!==i?"touch"===i?(o._lastPointerType="touch",e.addPointer(n.pointerId)):(o._lastPointerType="pen",t.addPointer(n.pointerId)):o._lastPointerType="mouse"})),o._register(Do(o.viewHelper.linesContentDomNode,"MSGestureChange",(function(e){return o._onGestureChange(e)}),u_)),o._register(uo(o.viewHelper.linesContentDomNode,"MSGestureTap",(function(e){return o._onCaptureGestureTap(e)}),!0))}}),100),o._lastPointerType="mouse",o}return a_(t,e),t.prototype._onMouseDown=function(t){"mouse"===this._lastPointerType&&e.prototype._onMouseDown.call(this,t)},t.prototype._onCaptureGestureTap=function(e){var t=this,n=new $f(e,this.viewHelper.viewDomNode),i=this._createMouseTarget(n,!1);i.position&&this.viewController.moveTo(i.position),n.browserEvent.fromElement?(n.preventDefault(),this.viewHelper.focusTextArea()):setTimeout((function(){t.viewHelper.focusTextArea()}))},t.prototype._onGestureChange=function(e){this._context.viewLayout.deltaScrollNow(-e.translationX,-e.translationY)},t.prototype.dispose=function(){window.clearTimeout(this._installGestureHandlerTimeout),e.prototype.dispose.call(this)},t}(o_),d_=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;o._register(jf.addTarget(o.viewHelper.linesContentDomNode)),o._register(uo(o.viewHelper.linesContentDomNode,Bf.Tap,(function(e){return o.onTap(e)}))),o._register(uo(o.viewHelper.linesContentDomNode,Bf.Change,(function(e){return o.onChange(e)}))),o._register(uo(o.viewHelper.linesContentDomNode,Bf.Contextmenu,(function(e){return o._onContextMenu(new $f(e,o.viewHelper.viewDomNode),!1)}))),o._lastPointerType="mouse",o._register(uo(o.viewHelper.linesContentDomNode,"pointerdown",(function(e){var t=e.pointerType;o._lastPointerType="mouse"!==t?"touch"===t?"touch":"pen":"mouse"})));var r=new Jf(o.viewHelper.viewDomNode);return o._register(r.onPointerMoveThrottled(o.viewHelper.viewDomNode,(function(e){return o._onMouseMove(e)}),i_(o.mouseTargetFactory),o_.MOUSE_MOVE_MINIMUM_TIME)),o._register(r.onPointerUp(o.viewHelper.viewDomNode,(function(e){return o._onMouseUp(e)}))),o._register(r.onPointerLeave(o.viewHelper.viewDomNode,(function(e){return o._onMouseLeave(e)}))),o._register(r.onPointerDown(o.viewHelper.viewDomNode,(function(e){return o._onMouseDown(e)}))),o}return a_(t,e),t.prototype.onTap=function(e){if(e.initialTarget&&this.viewHelper.linesContentDomNode.contains(e.initialTarget)){e.preventDefault(),this.viewHelper.focusTextArea();var t=this._createMouseTarget(new $f(e,this.viewHelper.viewDomNode),!1);t.position&&this.viewController.dispatchMouse({position:t.position,mouseColumn:t.position.column,startedOnLineNumbers:!1,mouseDownCount:e.tapCount,inSelectionMode:!1,altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1,leftButton:!1,middleButton:!1})}},t.prototype.onChange=function(e){"touch"===this._lastPointerType&&this._context.viewLayout.deltaScrollNow(-e.translationX,-e.translationY)},t.prototype._onMouseDown=function(t){t.target&&this.viewHelper.linesContentDomNode.contains(t.target)&&"touch"===this._lastPointerType||e.prototype._onMouseDown.call(this,t)},t}(o_),h_=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;return o._register(jf.addTarget(o.viewHelper.linesContentDomNode)),o._register(uo(o.viewHelper.linesContentDomNode,Bf.Tap,(function(e){return o.onTap(e)}))),o._register(uo(o.viewHelper.linesContentDomNode,Bf.Change,(function(e){return o.onChange(e)}))),o._register(uo(o.viewHelper.linesContentDomNode,Bf.Contextmenu,(function(e){return o._onContextMenu(new $f(e,o.viewHelper.viewDomNode),!1)}))),o}return a_(t,e),t.prototype.onTap=function(e){e.preventDefault(),this.viewHelper.focusTextArea();var t=this._createMouseTarget(new $f(e,this.viewHelper.viewDomNode),!1);t.position&&this.viewController.moveTo(t.position)},t.prototype.onChange=function(e){this._context.viewLayout.deltaScrollNow(-e.translationX,-e.translationY)},t}(o_),p_=function(e){function t(t,n,i){var o=e.call(this)||this;return window.navigator.msPointerEnabled?o.handler=o._register(new l_(t,n,i)):C&&Ki.pointerEvents?o.handler=o._register(new d_(t,n,i)):window.TouchEvent?o.handler=o._register(new h_(t,n,i)):window.navigator.pointerEnabled||window.PointerEvent?o.handler=o._register(new c_(t,n,i)):o.handler=o._register(new o_(t,n,i)),o}return a_(t,e),t.prototype.getTargetAtClientPoint=function(e,t){return this.handler.getTargetAtClientPoint(e,t)},t}(He),f_=(n(373),function(){function e(e,t,n,i,o){this.value=e,this.selectionStart=t,this.selectionEnd=n,this.selectionStartPosition=i,this.selectionEndPosition=o}return e.prototype.toString=function(){return"[ <"+this.value+">, selectionStart: "+this.selectionStart+", selectionEnd: "+this.selectionEnd+"]"},e.readFromTextArea=function(t){return new e(t.getValue(),t.getSelectionStart(),t.getSelectionEnd(),null,null)},e.prototype.collapseSelection=function(){return new e(this.value,this.value.length,this.value.length,null,null)},e.prototype.writeToTextArea=function(e,t,n){t.setValue(e,this.value),n&&t.setSelectionRange(e,this.selectionStart,this.selectionEnd)},e.prototype.deduceEditorPosition=function(e){if(e<=this.selectionStart){var t=this.value.substring(e,this.selectionStart);return this._finishDeduceEditorPosition(this.selectionStartPosition,t,-1)}if(e>=this.selectionEnd){t=this.value.substring(this.selectionEnd,e);return this._finishDeduceEditorPosition(this.selectionEndPosition,t,1)}var n=this.value.substring(this.selectionStart,e);if(-1===n.indexOf(String.fromCharCode(8230)))return this._finishDeduceEditorPosition(this.selectionStartPosition,n,1);var i=this.value.substring(e,this.selectionEnd);return this._finishDeduceEditorPosition(this.selectionEndPosition,i,-1)},e.prototype._finishDeduceEditorPosition=function(e,t,n){for(var i=0,o=-1;-1!==(o=t.indexOf("\n",o+1));)i++;return[e,n*t.length,i]},e.selectedText=function(t){return new e(t,0,t.length,null,null)},e.deduceInput=function(e,t,n){if(!e)return{text:"",replaceCharCnt:0};var i=e.value,o=e.selectionStart,r=e.selectionEnd,s=t.value,a=t.selectionStart,u=t.selectionEnd,l=function(e,t){var n,i=Math.min(e.length,t.length),o=e.length-1,r=t.length-1;for(n=0;n<i;n++)if(e.charCodeAt(o-n)!==t.charCodeAt(r-n))return n;return i}(i.substring(r),s.substring(u));s=s.substring(0,s.length-l);var c,d=(i=i.substring(0,i.length-l)).substring(0,o),h=Mr(d,s.substring(0,a));if(s=s.substring(h),i=i.substring(h),a-=h,o-=h,u-=h,r-=h,n&&a===u&&i.length>0){var p=null;if(a===s.length?vr(s,i)&&(p=s.substring(i.length)):_r(s,i)&&(p=s.substring(0,s.length-i.length)),null!==p&&p.length>0&&(/\uFE0F/.test(p)||(c=p,Br.test(c))))return{text:p,replaceCharCnt:0}}return a===u?i===s&&0===o&&r===i.length&&a===s.length&&-1===s.indexOf("\n")&&function(e){for(var t=0,n=e.length;t<n;t++)if(jr(e.charCodeAt(t)))return!0;return!1}(s)?{text:"",replaceCharCnt:0}:{text:s,replaceCharCnt:d.length-h}:{text:s,replaceCharCnt:r-o}},e.EMPTY=new e("",0,0,null,null),e}()),g_=function(){function e(){}return e._getPageOfLine=function(e,t){return Math.floor((e-1)/t)},e._getRangeForPage=function(e,t){var n=e*t;return new wn(n+1,1,n+t+1,1)},e.fromEditorSelection=function(t,n,i,o,r){var s,a=e._getPageOfLine(i.startLineNumber,o),u=e._getRangeForPage(a,o),l=e._getPageOfLine(i.endLineNumber,o),c=e._getRangeForPage(l,o),d=u.intersectRanges(new wn(1,1,i.startLineNumber,i.startColumn)),h=n.getValueInRange(d,1),p=n.getLineCount(),f=n.getLineMaxColumn(p),g=c.intersectRanges(new wn(i.endLineNumber,i.endColumn,p,f)),m=n.getValueInRange(g,1);if(a===l||a+1===l)s=n.getValueInRange(i,1);else{var v=u.intersectRanges(i),_=c.intersectRanges(i);s=n.getValueInRange(v,1)+String.fromCharCode(8230)+n.getValueInRange(_,1)}if(r){h.length>500&&(h=h.substring(h.length-500,h.length)),m.length>500&&(m=m.substring(0,500)),s.length>1e3&&(s=s.substring(0,500)+String.fromCharCode(8230)+s.substring(s.length-500,s.length))}return new f_(h+s+m,h.length,h.length+s.length,new bn(i.startLineNumber,i.startColumn),new bn(i.endLineNumber,i.endColumn))},e}(),m_=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),v_={forceCopyWithSyntaxHighlighting:!1},__=function(){function e(){this._lastState=null}return e.prototype.set=function(e,t){this._lastState={lastCopiedValue:e,data:t}},e.prototype.get=function(e){return this._lastState&&this._lastState.lastCopiedValue===e?this._lastState.data:(this._lastState=null,null)},e.INSTANCE=new e,e}(),y_=function(e){function t(t,n){var i=e.call(this)||this;i.textArea=n,i._onFocus=i._register(new nt),i.onFocus=i._onFocus.event,i._onBlur=i._register(new nt),i.onBlur=i._onBlur.event,i._onKeyDown=i._register(new nt),i.onKeyDown=i._onKeyDown.event,i._onKeyUp=i._register(new nt),i.onKeyUp=i._onKeyUp.event,i._onCut=i._register(new nt),i.onCut=i._onCut.event,i._onPaste=i._register(new nt),i.onPaste=i._onPaste.event,i._onType=i._register(new nt),i.onType=i._onType.event,i._onCompositionStart=i._register(new nt),i.onCompositionStart=i._onCompositionStart.event,i._onCompositionUpdate=i._register(new nt),i.onCompositionUpdate=i._onCompositionUpdate.event,i._onCompositionEnd=i._register(new nt),i.onCompositionEnd=i._onCompositionEnd.event,i._onSelectionChangeRequest=i._register(new nt),i.onSelectionChangeRequest=i._onSelectionChangeRequest.event,i._host=t,i._textArea=i._register(new w_(n)),i._asyncTriggerCut=i._register(new wi((function(){return i._onCut.fire()}),0)),i._textAreaState=f_.EMPTY,i._selectionChangeListener=null,i.writeScreenReaderContent("ctor"),i._hasFocus=!1,i._isDoingComposition=!1,i._nextCommand=0,i._register(co(n.domNode,"keydown",(function(e){!i._isDoingComposition||109!==e.keyCode&&1!==e.keyCode||e.stopPropagation(),e.equals(9)&&e.preventDefault(),i._onKeyDown.fire(e)}))),i._register(co(n.domNode,"keyup",(function(e){i._onKeyUp.fire(e)}))),i._register(uo(n.domNode,"compositionstart",(function(e){i._isDoingComposition||(i._isDoingComposition=!0,Hn||i._setAndWriteTextAreaState("compositionstart",f_.EMPTY),i._onCompositionStart.fire())})));var o=function(e){var t=i._textAreaState,n=f_.readFromTextArea(i._textArea);return[n,f_.deduceInput(t,n,e)]},r=function(e){var t=i._textAreaState,n=f_.selectedText(e);return[n,{text:n.value,replaceCharCnt:t.selectionEnd-t.selectionStart}]},s=function(e){return!(!Hn||"ja"!==e)||!(!Vn||0!==e.indexOf("zh-Han"))};return i._register(uo(n.domNode,"compositionupdate",(function(e){if(s(e.locale)){var t=o(!1),n=t[0],a=t[1];return i._textAreaState=n,i._onType.fire(a),void i._onCompositionUpdate.fire(e)}var u=r(e.data),l=u[0],c=u[1];i._textAreaState=l,i._onType.fire(c),i._onCompositionUpdate.fire(e)}))),i._register(uo(n.domNode,"compositionend",(function(e){if(i._isDoingComposition){if(s(e.locale)){var t=o(!1),n=t[0],a=t[1];i._textAreaState=n,i._onType.fire(a)}else{var u=r(e.data);n=u[0],a=u[1];i._textAreaState=n,i._onType.fire(a)}(Hn||Un)&&(i._textAreaState=f_.readFromTextArea(i._textArea)),i._isDoingComposition&&(i._isDoingComposition=!1,i._onCompositionEnd.fire())}}))),i._register(uo(n.domNode,"input",(function(){if(i._textArea.setIgnoreSelectionChangeTime("received input event"),!i._isDoingComposition){var e=o(_),t=e[0],n=e[1];0===n.replaceCharCnt&&1===n.text.length&&Tr(n.text.charCodeAt(0))||(i._textAreaState=t,0===i._nextCommand?""!==n.text&&i._onType.fire(n):(""===n.text&&0===n.replaceCharCnt||i._firePaste(n.text,null),i._nextCommand=0))}}))),i._register(uo(n.domNode,"cut",(function(e){i._textArea.setIgnoreSelectionChangeTime("received cut event"),i._ensureClipboardGetsEditorSelection(e),i._asyncTriggerCut.schedule()}))),i._register(uo(n.domNode,"copy",(function(e){i._ensureClipboardGetsEditorSelection(e)}))),i._register(uo(n.domNode,"paste",(function(e){if(i._textArea.setIgnoreSelectionChangeTime("received paste event"),b_.canUseTextData(e)){var t=b_.getTextData(e),n=t[0],o=t[1];""!==n&&i._firePaste(n,o)}else i._textArea.getSelectionStart()!==i._textArea.getSelectionEnd()&&i._setAndWriteTextAreaState("paste",f_.EMPTY),i._nextCommand=1}))),i._register(uo(n.domNode,"focus",(function(){i._setHasFocus(!0)}))),i._register(uo(n.domNode,"blur",(function(){i._setHasFocus(!1)}))),i}return m_(t,e),t.prototype._installSelectionChangeListener=function(){var e=this,t=0;return uo(document,"selectionchange",(function(n){if(e._hasFocus&&!e._isDoingComposition&&Un&&v){var i=Date.now(),o=i-t;if(t=i,!(o<5)){var r=i-e._textArea.getIgnoreSelectionChangeTime();if(e._textArea.resetSelectionChangeTime(),!(r<100)&&e._textAreaState.selectionStartPosition&&e._textAreaState.selectionEndPosition){var s=e._textArea.getValue();if(e._textAreaState.value===s){var a=e._textArea.getSelectionStart(),u=e._textArea.getSelectionEnd();if(e._textAreaState.selectionStart!==a||e._textAreaState.selectionEnd!==u){var l=e._textAreaState.deduceEditorPosition(a),c=e._host.deduceModelPosition(l[0],l[1],l[2]),d=e._textAreaState.deduceEditorPosition(u),h=e._host.deduceModelPosition(d[0],d[1],d[2]),p=new Sn(c.lineNumber,c.column,h.lineNumber,h.column);e._onSelectionChangeRequest.fire(p)}}}}}}))},t.prototype.dispose=function(){e.prototype.dispose.call(this),this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null)},t.prototype.focusTextArea=function(){this._setHasFocus(!0),this.refreshFocusState()},t.prototype.isFocused=function(){return this._hasFocus},t.prototype.refreshFocusState=function(){var e=Ho(this.textArea.domNode);e?this._setHasFocus(e.activeElement===this.textArea.domNode):$i(this.textArea.domNode)?this._setHasFocus(document.activeElement===this.textArea.domNode):this._setHasFocus(!1)},t.prototype._setHasFocus=function(e){this._hasFocus!==e&&(this._hasFocus=e,this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null),this._hasFocus&&(this._selectionChangeListener=this._installSelectionChangeListener()),this._hasFocus&&(Bn?this._setAndWriteTextAreaState("focusgain",f_.EMPTY):this.writeScreenReaderContent("focusgain")),this._hasFocus?this._onFocus.fire():this._onBlur.fire())},t.prototype._setAndWriteTextAreaState=function(e,t){this._hasFocus||(t=t.collapseSelection()),t.writeToTextArea(e,this._textArea,this._hasFocus),this._textAreaState=t},t.prototype.writeScreenReaderContent=function(e){this._isDoingComposition||this._setAndWriteTextAreaState(e,this._host.getScreenReaderContent(this._textAreaState))},t.prototype._ensureClipboardGetsEditorSelection=function(e){var t=this._host.getDataToCopy(b_.canUseTextData(e)&&Ki.clipboard.richText),n={version:1,isFromEmptySelection:t.isFromEmptySelection,multicursorText:t.multicursorText,mode:t.mode};__.INSTANCE.set(zn?t.text.replace(/\r\n/g,"\n"):t.text,n),b_.canUseTextData(e)?b_.setTextData(e,t.text,t.html,n):this._setAndWriteTextAreaState("copy or cut",f_.selectedText(t.text))},t.prototype._firePaste=function(e,t){t||(t=__.INSTANCE.get(e)),this._onPaste.fire({text:e,metadata:t})},t}(He),b_=function(){function e(){}return e.canUseTextData=function(e){return!!e.clipboardData||!!window.clipboardData},e.getTextData=function(e){if(e.clipboardData){e.preventDefault();var t=e.clipboardData.getData("text/plain"),n=null,i=e.clipboardData.getData("vscode-editor-data");if("string"==typeof i)try{1!==(n=JSON.parse(i)).version&&(n=null)}catch(e){}return[t,n]}if(window.clipboardData)return e.preventDefault(),[t=window.clipboardData.getData("Text"),null];throw new Error("ClipboardEventUtils.getTextData: Cannot use text data!")},e.setTextData=function(e,t,n,i){if(e.clipboardData)return e.clipboardData.setData("text/plain",t),"string"==typeof n&&e.clipboardData.setData("text/html",n),e.clipboardData.setData("vscode-editor-data",JSON.stringify(i)),void e.preventDefault();if(window.clipboardData)return window.clipboardData.setData("Text",t),void e.preventDefault();throw new Error("ClipboardEventUtils.setTextData: Cannot use text data!")},e}(),w_=function(e){function t(t){var n=e.call(this)||this;return n._actual=t,n._ignoreSelectionChangeTime=0,n}return m_(t,e),t.prototype.setIgnoreSelectionChangeTime=function(e){this._ignoreSelectionChangeTime=Date.now()},t.prototype.getIgnoreSelectionChangeTime=function(){return this._ignoreSelectionChangeTime},t.prototype.resetSelectionChangeTime=function(){this._ignoreSelectionChangeTime=0},t.prototype.getValue=function(){return this._actual.domNode.value},t.prototype.setValue=function(e,t){var n=this._actual.domNode;n.value!==t&&(this.setIgnoreSelectionChangeTime("setValue"),n.value=t)},t.prototype.getSelectionStart=function(){return this._actual.domNode.selectionStart},t.prototype.getSelectionEnd=function(){return this._actual.domNode.selectionEnd},t.prototype.setSelectionRange=function(e,t,n){var i=this._actual.domNode,o=Ho(i),r=(o?o.activeElement:document.activeElement)===i,s=i.selectionStart,a=i.selectionEnd;if(r&&s===t&&a===n)zn&&window.parent!==window&&i.focus();else{if(r)return this.setIgnoreSelectionChangeTime("setSelectionRange"),i.setSelectionRange(t,n),void(zn&&window.parent!==window&&i.focus());try{var u=function(e){for(var t=[],n=0;e&&e.nodeType===e.ELEMENT_NODE;n++)t[n]=e.scrollTop,e=e.parentNode;return t}(i);this.setIgnoreSelectionChangeTime("setSelectionRange"),i.focus(),i.setSelectionRange(t,n),function(e,t){for(var n=0;e&&e.nodeType===e.ELEMENT_NODE;n++)e.scrollTop!==t[n]&&(e.scrollTop=t[n]),e=e.parentNode}(i,u)}catch(e){}}},t}(He),C_=(n(374),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),S_=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return C_(t,e),t}(ng),L_="base.contributions.colors",x_=new(function(){function e(){this._onDidChangeSchema=new nt,this.onDidChangeSchema=this._onDidChangeSchema.event,this.colorSchema={type:"object",properties:{}},this.colorReferenceSchema={type:"string",enum:[],enumDescriptions:[]},this.colorsById={}}return e.prototype.registerColor=function(e,t,n,i,o){void 0===i&&(i=!1);var r={id:e,description:n,defaults:t,needsTransparency:i,deprecationMessage:o};this.colorsById[e]=r;var s={type:"string",description:n,format:"color-hex",defaultSnippets:[{body:"${1:#ff0000}"}]};return o&&(s.deprecationMessage=o),this.colorSchema.properties[e]=s,this.colorReferenceSchema.enum.push(e),this.colorReferenceSchema.enumDescriptions.push(n),this._onDidChangeSchema.fire(),e},e.prototype.resolveDefaultColor=function(e,t){var n=this.colorsById[e];if(n&&n.defaults)return Tb(n.defaults[t.type],t)},e.prototype.getColorSchema=function(){return this.colorSchema},e.prototype.toString=function(){var e=this;return Object.keys(this.colorsById).sort((function(e,t){var n=-1===e.indexOf(".")?0:1,i=-1===t.indexOf(".")?0:1;return n!==i?n-i:e.localeCompare(t)})).map((function(t){return"- `"+t+"`: "+e.colorsById[t].description})).join("\n")},e}());function D_(e,t,n,i,o){return x_.registerColor(e,t,n,i,o)}Td.add(L_,x_);var N_,k_,E_=D_("foreground",{dark:"#CCCCCC",light:"#616161",hc:"#FFFFFF"},r("foreground","Overall foreground color. This color is only used if not overridden by a component.")),I_=D_("errorForeground",{dark:"#F48771",light:"#A1260D",hc:"#F48771"},r("errorForeground","Overall foreground color for error messages. This color is only used if not overridden by a component.")),O_=D_("focusBorder",{dark:mv.fromHex("#0E639C").transparent(.8),light:mv.fromHex("#007ACC").transparent(.4),hc:"#F38518"},r("focusBorder","Overall border color for focused elements. This color is only used if not overridden by a component.")),M_=D_("contrastBorder",{light:null,dark:null,hc:"#6FC3DF"},r("contrastBorder","An extra border around elements to separate them from others for greater contrast.")),T_=D_("contrastActiveBorder",{light:null,dark:null,hc:O_},r("activeContrastBorder","An extra border around active elements to separate them from others for greater contrast.")),P_=D_("textLink.foreground",{light:"#006AB1",dark:"#3794FF",hc:"#3794FF"},r("textLinkForeground","Foreground color for links in text.")),R_=D_("textCodeBlock.background",{light:"#dcdcdc66",dark:"#0a0a0a66",hc:mv.black},r("textCodeBlockBackground","Background color for code blocks in text.")),A_=D_("widget.shadow",{dark:"#000000",light:"#A8A8A8",hc:null},r("widgetShadow","Shadow color of widgets such as find/replace inside the editor.")),F_=D_("input.background",{dark:"#3C3C3C",light:mv.white,hc:mv.black},r("inputBoxBackground","Input box background.")),W_=D_("input.foreground",{dark:E_,light:E_,hc:E_},r("inputBoxForeground","Input box foreground.")),V_=D_("input.border",{dark:null,light:null,hc:M_},r("inputBoxBorder","Input box border.")),B_=D_("inputOption.activeBorder",{dark:"#007ACC00",light:"#007ACC00",hc:M_},r("inputBoxActiveOptionBorder","Border color of activated options in input fields.")),H_=D_("inputOption.activeBackground",{dark:Ib(O_,.5),light:Ib(O_,.3),hc:null},r("inputOption.activeBackground","Background color of activated options in input fields.")),z_=D_("inputValidation.infoBackground",{dark:"#063B49",light:"#D6ECF2",hc:mv.black},r("inputValidationInfoBackground","Input validation background color for information severity.")),j_=D_("inputValidation.infoForeground",{dark:null,light:null,hc:null},r("inputValidationInfoForeground","Input validation foreground color for information severity.")),U_=D_("inputValidation.infoBorder",{dark:"#007acc",light:"#007acc",hc:M_},r("inputValidationInfoBorder","Input validation border color for information severity.")),K_=D_("inputValidation.warningBackground",{dark:"#352A05",light:"#F6F5D2",hc:mv.black},r("inputValidationWarningBackground","Input validation background color for warning severity.")),q_=D_("inputValidation.warningForeground",{dark:null,light:null,hc:null},r("inputValidationWarningForeground","Input validation foreground color for warning severity.")),G_=D_("inputValidation.warningBorder",{dark:"#B89500",light:"#B89500",hc:M_},r("inputValidationWarningBorder","Input validation border color for warning severity.")),Z_=D_("inputValidation.errorBackground",{dark:"#5A1D1D",light:"#F2DEDE",hc:mv.black},r("inputValidationErrorBackground","Input validation background color for error severity.")),Y_=D_("inputValidation.errorForeground",{dark:null,light:null,hc:null},r("inputValidationErrorForeground","Input validation foreground color for error severity.")),X_=D_("inputValidation.errorBorder",{dark:"#BE1100",light:"#BE1100",hc:M_},r("inputValidationErrorBorder","Input validation border color for error severity.")),$_=D_("dropdown.background",{dark:"#3C3C3C",light:mv.white,hc:mv.black},r("dropdownBackground","Dropdown background.")),Q_=D_("dropdown.foreground",{dark:"#F0F0F0",light:null,hc:mv.white},r("dropdownForeground","Dropdown foreground.")),J_=D_("pickerGroup.foreground",{dark:"#3794FF",light:"#0066BF",hc:mv.white},r("pickerGroupForeground","Quick picker color for grouping labels.")),ey=D_("pickerGroup.border",{dark:"#3F3F46",light:"#CCCEDB",hc:mv.white},r("pickerGroupBorder","Quick picker color for grouping borders.")),ty=D_("badge.background",{dark:"#4D4D4D",light:"#C4C4C4",hc:mv.black},r("badgeBackground","Badge background color. Badges are small information labels, e.g. for search results count.")),ny=D_("badge.foreground",{dark:mv.white,light:"#333",hc:mv.white},r("badgeForeground","Badge foreground color. Badges are small information labels, e.g. for search results count.")),iy=D_("scrollbar.shadow",{dark:"#000000",light:"#DDDDDD",hc:null},r("scrollbarShadow","Scrollbar shadow to indicate that the view is scrolled.")),oy=D_("scrollbarSlider.background",{dark:mv.fromHex("#797979").transparent(.4),light:mv.fromHex("#646464").transparent(.4),hc:Ib(M_,.6)},r("scrollbarSliderBackground","Scrollbar slider background color.")),ry=D_("scrollbarSlider.hoverBackground",{dark:mv.fromHex("#646464").transparent(.7),light:mv.fromHex("#646464").transparent(.7),hc:Ib(M_,.8)},r("scrollbarSliderHoverBackground","Scrollbar slider background color when hovering.")),sy=D_("scrollbarSlider.activeBackground",{dark:mv.fromHex("#BFBFBF").transparent(.4),light:mv.fromHex("#000000").transparent(.6),hc:M_},r("scrollbarSliderActiveBackground","Scrollbar slider background color when clicked on.")),ay=D_("progressBar.background",{dark:mv.fromHex("#0E70C0"),light:mv.fromHex("#0E70C0"),hc:M_},r("progressBarBackground","Background color of the progress bar that can show for long running operations.")),uy=D_("editorError.foreground",{dark:"#F48771",light:"#E51400",hc:null},r("editorError.foreground","Foreground color of error squigglies in the editor.")),ly=D_("editorError.border",{dark:null,light:null,hc:mv.fromHex("#E47777").transparent(.8)},r("errorBorder","Border color of error boxes in the editor.")),cy=D_("editorWarning.foreground",{dark:"#CCA700",light:"#E9A700",hc:null},r("editorWarning.foreground","Foreground color of warning squigglies in the editor.")),dy=D_("editorWarning.border",{dark:null,light:null,hc:mv.fromHex("#FFCC00").transparent(.8)},r("warningBorder","Border color of warning boxes in the editor.")),hy=D_("editorInfo.foreground",{dark:"#75BEFF",light:"#75BEFF",hc:null},r("editorInfo.foreground","Foreground color of info squigglies in the editor.")),py=D_("editorInfo.border",{dark:null,light:null,hc:mv.fromHex("#75BEFF").transparent(.8)},r("infoBorder","Border color of info boxes in the editor.")),fy=D_("editorHint.foreground",{dark:mv.fromHex("#eeeeee").transparent(.7),light:"#6c6c6c",hc:null},r("editorHint.foreground","Foreground color of hint squigglies in the editor.")),gy=D_("editorHint.border",{dark:null,light:null,hc:mv.fromHex("#eeeeee").transparent(.8)},r("hintBorder","Border color of hint boxes in the editor.")),my=D_("editor.background",{light:"#fffffe",dark:"#1E1E1E",hc:mv.black},r("editorBackground","Editor background color.")),vy=D_("editor.foreground",{light:"#333333",dark:"#BBBBBB",hc:mv.white},r("editorForeground","Editor default foreground color.")),_y=D_("editorWidget.background",{dark:"#252526",light:"#F3F3F3",hc:"#0C141F"},r("editorWidgetBackground","Background color of editor widgets, such as find/replace.")),yy=D_("editorWidget.foreground",{dark:E_,light:E_,hc:E_},r("editorWidgetForeground","Foreground color of editor widgets, such as find/replace.")),by=D_("editorWidget.border",{dark:"#454545",light:"#C8C8C8",hc:M_},r("editorWidgetBorder","Border color of editor widgets. The color is only used if the widget chooses to have a border and if the color is not overridden by a widget.")),wy=D_("editorWidget.resizeBorder",{light:null,dark:null,hc:null},r("editorWidgetResizeBorder","Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget.")),Cy=D_("editor.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hc:"#f3f518"},r("editorSelectionBackground","Color of the editor selection.")),Sy=D_("editor.selectionForeground",{light:null,dark:null,hc:"#000000"},r("editorSelectionForeground","Color of the selected text for high contrast.")),Ly=D_("editor.inactiveSelectionBackground",{light:Ib(Cy,.5),dark:Ib(Cy,.5),hc:Ib(Cy,.5)},r("editorInactiveSelection","Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations."),!0),xy=D_("editor.selectionHighlightBackground",{light:Mb(Cy,my,.3,.6),dark:Mb(Cy,my,.3,.6),hc:null},r("editorSelectionHighlight","Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations."),!0),Dy=D_("editor.selectionHighlightBorder",{light:null,dark:null,hc:T_},r("editorSelectionHighlightBorder","Border color for regions with the same content as the selection.")),Ny=D_("editor.findMatchBackground",{light:"#A8AC94",dark:"#515C6A",hc:null},r("editorFindMatch","Color of the current search match.")),ky=D_("editor.findMatchHighlightBackground",{light:"#EA5C0055",dark:"#EA5C0055",hc:null},r("findMatchHighlight","Color of the other search matches. The color must not be opaque so as not to hide underlying decorations."),!0),Ey=D_("editor.findRangeHighlightBackground",{dark:"#3a3d4166",light:"#b4b4b44d",hc:null},r("findRangeHighlight","Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),Iy=D_("editor.findMatchBorder",{light:null,dark:null,hc:T_},r("editorFindMatchBorder","Border color of the current search match.")),Oy=D_("editor.findMatchHighlightBorder",{light:null,dark:null,hc:T_},r("findMatchHighlightBorder","Border color of the other search matches.")),My=D_("editor.findRangeHighlightBorder",{dark:null,light:null,hc:Ib(T_,.4)},r("findRangeHighlightBorder","Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),Ty=D_("editor.hoverHighlightBackground",{light:"#ADD6FF26",dark:"#264f7840",hc:"#ADD6FF26"},r("hoverHighlight","Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations."),!0),Py=D_("editorHoverWidget.background",{light:_y,dark:_y,hc:_y},r("hoverBackground","Background color of the editor hover.")),Ry=D_("editorHoverWidget.foreground",{light:yy,dark:yy,hc:yy},r("hoverForeground","Foreground color of the editor hover.")),Ay=D_("editorHoverWidget.border",{light:by,dark:by,hc:by},r("hoverBorder","Border color of the editor hover.")),Fy=D_("editorHoverWidget.statusBarBackground",{dark:(N_=Py,k_=.2,function(e){var t=Tb(N_,e);if(t)return t.lighten(k_)}),light:Eb(Py,.05),hc:_y},r("statusBarBackground","Background color of the editor hover status bar.")),Wy=D_("editorLink.activeForeground",{dark:"#4E94CE",light:mv.blue,hc:mv.cyan},r("activeLinkForeground","Color of active links.")),Vy=D_("editorLightBulb.foreground",{dark:"#FFCC00",light:"#DDB100",hc:"#FFCC00"},r("editorLightBulbForeground","The color used for the lightbulb actions icon.")),By=D_("editorLightBulbAutoFix.foreground",{dark:"#75BEFF",light:"#007ACC",hc:"#75BEFF"},r("editorLightBulbAutoFixForeground","The color used for the lightbulb auto fix actions icon.")),Hy=new mv(new pv(155,185,85,.2)),zy=new mv(new pv(255,0,0,.2)),jy=D_("diffEditor.insertedTextBackground",{dark:Hy,light:Hy,hc:null},r("diffEditorInserted","Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),Uy=D_("diffEditor.removedTextBackground",{dark:zy,light:zy,hc:null},r("diffEditorRemoved","Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),Ky=D_("diffEditor.insertedTextBorder",{dark:null,light:null,hc:"#33ff2eff"},r("diffEditorInsertedOutline","Outline color for the text that got inserted.")),qy=D_("diffEditor.removedTextBorder",{dark:null,light:null,hc:"#FF008F"},r("diffEditorRemovedOutline","Outline color for text that got removed.")),Gy=D_("diffEditor.border",{dark:null,light:null,hc:M_},r("diffEditorBorder","Border color between the two text editors.")),Zy=D_("list.focusBackground",{dark:"#062F4A",light:"#D6EBFF",hc:null},r("listFocusBackground","List/Tree background color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Yy=D_("list.focusForeground",{dark:null,light:null,hc:null},r("listFocusForeground","List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Xy=D_("list.activeSelectionBackground",{dark:"#094771",light:"#0074E8",hc:null},r("listActiveSelectionBackground","List/Tree background color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),$y=D_("list.activeSelectionForeground",{dark:mv.white,light:mv.white,hc:null},r("listActiveSelectionForeground","List/Tree foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Qy=D_("list.inactiveSelectionBackground",{dark:"#37373D",light:"#E4E6F1",hc:null},r("listInactiveSelectionBackground","List/Tree background color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Jy=D_("list.inactiveSelectionForeground",{dark:null,light:null,hc:null},r("listInactiveSelectionForeground","List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),eb=D_("list.inactiveFocusBackground",{dark:null,light:null,hc:null},r("listInactiveFocusBackground","List/Tree background color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),tb=D_("list.hoverBackground",{dark:"#2A2D2E",light:"#F0F0F0",hc:null},r("listHoverBackground","List/Tree background when hovering over items using the mouse.")),nb=D_("list.hoverForeground",{dark:null,light:null,hc:null},r("listHoverForeground","List/Tree foreground when hovering over items using the mouse.")),ib=D_("list.dropBackground",{dark:Zy,light:Zy,hc:null},r("listDropBackground","List/Tree drag and drop background when moving items around using the mouse.")),ob=D_("list.highlightForeground",{dark:"#0097fb",light:"#0066BF",hc:O_},r("highlight","List/Tree foreground color of the match highlights when searching inside the list/tree.")),rb=D_("listFilterWidget.background",{light:"#efc1ad",dark:"#653723",hc:mv.black},r("listFilterWidgetBackground","Background color of the type filter widget in lists and trees.")),sb=D_("listFilterWidget.outline",{dark:mv.transparent,light:mv.transparent,hc:"#f38518"},r("listFilterWidgetOutline","Outline color of the type filter widget in lists and trees.")),ab=D_("listFilterWidget.noMatchesOutline",{dark:"#BE1100",light:"#BE1100",hc:M_},r("listFilterWidgetNoMatchesOutline","Outline color of the type filter widget in lists and trees, when there are no matches.")),ub=D_("tree.indentGuidesStroke",{dark:"#585858",light:"#a9a9a9",hc:"#a9a9a9"},r("treeIndentGuidesStroke","Tree stroke color for the indentation guides.")),lb=D_("menu.border",{dark:null,light:null,hc:M_},r("menuBorder","Border color of menus.")),cb=D_("menu.foreground",{dark:Q_,light:E_,hc:Q_},r("menuForeground","Foreground color of menu items.")),db=D_("menu.background",{dark:$_,light:$_,hc:$_},r("menuBackground","Background color of menu items.")),hb=D_("menu.selectionForeground",{dark:$y,light:$y,hc:$y},r("menuSelectionForeground","Foreground color of the selected menu item in menus.")),pb=D_("menu.selectionBackground",{dark:Xy,light:Xy,hc:Xy},r("menuSelectionBackground","Background color of the selected menu item in menus.")),fb=D_("menu.selectionBorder",{dark:null,light:null,hc:T_},r("menuSelectionBorder","Border color of the selected menu item in menus.")),gb=D_("menu.separatorBackground",{dark:"#BBBBBB",light:"#888888",hc:M_},r("menuSeparatorBackground","Color of a separator menu item in menus.")),mb=D_("editor.snippetTabstopHighlightBackground",{dark:new mv(new pv(124,124,124,.3)),light:new mv(new pv(10,50,100,.2)),hc:new mv(new pv(124,124,124,.3))},r("snippetTabstopHighlightBackground","Highlight background color of a snippet tabstop.")),vb=D_("editor.snippetTabstopHighlightBorder",{dark:null,light:null,hc:null},r("snippetTabstopHighlightBorder","Highlight border color of a snippet tabstop.")),_b=D_("editor.snippetFinalTabstopHighlightBackground",{dark:null,light:null,hc:null},r("snippetFinalTabstopHighlightBackground","Highlight background color of the final tabstop of a snippet.")),yb=D_("editor.snippetFinalTabstopHighlightBorder",{dark:"#525252",light:new mv(new pv(10,50,100,.5)),hc:"#525252"},r("snippetFinalTabstopHighlightBorder","Highlight border color of the final stabstop of a snippet.")),bb=D_("editorOverviewRuler.findMatchForeground",{dark:"#d186167e",light:"#d186167e",hc:"#AB5A00"},r("overviewRulerFindMatchForeground","Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations."),!0),wb=D_("editorOverviewRuler.selectionHighlightForeground",{dark:"#A0A0A0CC",light:"#A0A0A0CC",hc:"#A0A0A0CC"},r("overviewRulerSelectionHighlightForeground","Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations."),!0),Cb=D_("minimap.findMatchHighlight",{light:"#d18616",dark:"#d18616",hc:"#AB5A00"},r("minimapFindMatchHighlight","Minimap marker color for find matches."),!0),Sb=D_("minimap.selectionHighlight",{light:"#ADD6FF",dark:"#264F78",hc:"#ffffff"},r("minimapSelectionHighlight","Minimap marker color for the editor selection."),!0),Lb=D_("minimap.errorHighlight",{dark:new mv(new pv(255,18,18,.7)),light:new mv(new pv(255,18,18,.7)),hc:new mv(new pv(255,50,50,1))},r("minimapError","Minimap marker color for errors.")),xb=D_("minimap.warningHighlight",{dark:cy,light:cy,hc:dy},r("overviewRuleWarning","Minimap marker color for warnings.")),Db=D_("problemsErrorIcon.foreground",{dark:uy,light:uy,hc:uy},r("problemsErrorIconForeground","The color used for the problems error icon.")),Nb=D_("problemsWarningIcon.foreground",{dark:cy,light:cy,hc:cy},r("problemsWarningIconForeground","The color used for the problems warning icon.")),kb=D_("problemsInfoIcon.foreground",{dark:hy,light:hy,hc:hy},r("problemsInfoIconForeground","The color used for the problems info icon."));function Eb(e,t){return function(n){var i=Tb(e,n);if(i)return i.darken(t)}}function Ib(e,t){return function(n){var i=Tb(e,n);if(i)return i.transparent(t)}}function Ob(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(t){for(var n=0,i=e;n<i.length;n++){var o=Tb(i[n],t);if(o)return o}}}function Mb(e,t,n,i){return function(o){var r=Tb(e,o);if(r){var s=Tb(t,o);return s?r.isDarkerThan(s)?mv.getLighterColor(r,s,n).transparent(i):mv.getDarkerColor(r,s,n).transparent(i):r.transparent(n*i)}}}function Tb(e,t){if(null!==e)return"string"==typeof e?"#"===e[0]?mv.fromHex(e):t.getColor(e):e instanceof mv?e:"function"==typeof e?e(t):void 0}var Pb=Td.as(Pd);Pb.registerSchema("vscode://schemas/workbench-colors",x_.getColorSchema());var Rb=new wi((function(){return Pb.notifySchemaChanged("vscode://schemas/workbench-colors")}),200);x_.onDidChangeSchema((function(){Rb.isScheduled()||Rb.schedule()}));var Ab=D_("editor.lineHighlightBackground",{dark:null,light:null,hc:null},r("lineHighlight","Background color for the highlight of line at the cursor position.")),Fb=D_("editor.lineHighlightBorder",{dark:"#282828",light:"#eeeeee",hc:"#f38518"},r("lineHighlightBorderBox","Background color for the border around the line at the cursor position.")),Wb=D_("editor.rangeHighlightBackground",{dark:"#ffffff0b",light:"#fdff0033",hc:null},r("rangeHighlight","Background color of highlighted ranges, like by quick open and find features. The color must not be opaque so as not to hide underlying decorations."),!0),Vb=D_("editor.rangeHighlightBorder",{dark:null,light:null,hc:T_},r("rangeHighlightBorder","Background color of the border around highlighted ranges."),!0),Bb=D_("editor.symbolHighlightBackground",{dark:ky,light:ky,hc:null},r("symbolHighlight","Background color of highlighted symbol, like for go to definition or go next/previous symbol. The color must not be opaque so as not to hide underlying decorations."),!0),Hb=D_("editor.symbolHighlightBorder",{dark:null,light:null,hc:T_},r("symbolHighlightBorder","Background color of the border around highlighted symbols."),!0),zb=D_("editorCursor.foreground",{dark:"#AEAFAD",light:mv.black,hc:mv.white},r("caret","Color of the editor cursor.")),jb=D_("editorCursor.background",null,r("editorCursorBackground","The background color of the editor cursor. Allows customizing the color of a character overlapped by a block cursor.")),Ub=D_("editorWhitespace.foreground",{dark:"#e3e4e229",light:"#33333333",hc:"#e3e4e229"},r("editorWhitespaces","Color of whitespace characters in the editor.")),Kb=D_("editorIndentGuide.background",{dark:Ub,light:Ub,hc:Ub},r("editorIndentGuides","Color of the editor indentation guides.")),qb=D_("editorIndentGuide.activeBackground",{dark:Ub,light:Ub,hc:Ub},r("editorActiveIndentGuide","Color of the active editor indentation guides.")),Gb=D_("editorLineNumber.foreground",{dark:"#858585",light:"#237893",hc:mv.white},r("editorLineNumbers","Color of editor line numbers.")),Zb=D_("editorActiveLineNumber.foreground",{dark:"#c6c6c6",light:"#0B216F",hc:T_},r("editorActiveLineNumber","Color of editor active line number"),!1,r("deprecatedEditorActiveLineNumber","Id is deprecated. Use 'editorLineNumber.activeForeground' instead.")),Yb=D_("editorLineNumber.activeForeground",{dark:Zb,light:Zb,hc:Zb},r("editorActiveLineNumber","Color of editor active line number")),Xb=D_("editorRuler.foreground",{dark:"#5A5A5A",light:mv.lightgrey,hc:mv.white},r("editorRuler","Color of the editor rulers.")),$b=D_("editorCodeLens.foreground",{dark:"#999999",light:"#999999",hc:"#999999"},r("editorCodeLensForeground","Foreground color of editor code lenses")),Qb=D_("editorBracketMatch.background",{dark:"#0064001a",light:"#0064001a",hc:"#0064001a"},r("editorBracketMatchBackground","Background color behind matching brackets")),Jb=D_("editorBracketMatch.border",{dark:"#888",light:"#B9B9B9",hc:M_},r("editorBracketMatchBorder","Color for matching brackets boxes")),ew=D_("editorOverviewRuler.border",{dark:"#7f7f7f4d",light:"#7f7f7f4d",hc:"#7f7f7f4d"},r("editorOverviewRulerBorder","Color of the overview ruler border.")),tw=D_("editorGutter.background",{dark:my,light:my,hc:my},r("editorGutter","Background color of the editor gutter. The gutter contains the glyph margins and the line numbers.")),nw=D_("editorUnnecessaryCode.border",{dark:null,light:null,hc:mv.fromHex("#fff").transparent(.8)},r("unnecessaryCodeBorder","Border color of unnecessary (unused) source code in the editor.")),iw=D_("editorUnnecessaryCode.opacity",{dark:mv.fromHex("#000a"),light:mv.fromHex("#0007"),hc:null},r("unnecessaryCodeOpacity","Opacity of unnecessary (unused) source code in the editor. For example, \"#000000c0\" will render the code with 75% opacity. For high contrast themes, use the 'editorUnnecessaryCode.border' theme color to underline unnecessary code instead of fading it out.")),ow=D_("editorOverviewRuler.errorForeground",{dark:new mv(new pv(255,18,18,.7)),light:new mv(new pv(255,18,18,.7)),hc:new mv(new pv(255,50,50,1))},r("overviewRuleError","Overview ruler marker color for errors.")),rw=D_("editorOverviewRuler.warningForeground",{dark:cy,light:cy,hc:dy},r("overviewRuleWarning","Overview ruler marker color for warnings.")),sw=D_("editorOverviewRuler.infoForeground",{dark:hy,light:hy,hc:py},r("overviewRuleInfo","Overview ruler marker color for infos."));yg((function(e,t){var n=e.getColor(my);n&&t.addRule(".monaco-editor, .monaco-editor-background, .monaco-editor .inputarea.ime-input { background-color: "+n+"; }");var i=e.getColor(vy);i&&t.addRule(".monaco-editor, .monaco-editor .inputarea.ime-input { color: "+i+"; }");var o=e.getColor(tw);o&&t.addRule(".monaco-editor .margin { background-color: "+o+"; }");var r=e.getColor(Wb);r&&t.addRule(".monaco-editor .rangeHighlight { background-color: "+r+"; }");var s=e.getColor(Vb);s&&t.addRule(".monaco-editor .rangeHighlight { border: 1px "+("hc"===e.type?"dotted":"solid")+" "+s+"; }");var a=e.getColor(Bb);a&&t.addRule(".monaco-editor .symbolHighlight { background-color: "+a+"; }");var u=e.getColor(Hb);u&&t.addRule(".monaco-editor .symbolHighlight { border: 1px "+("hc"===e.type?"dotted":"solid")+" "+u+"; }");var l=e.getColor(Ub);l&&t.addRule(".vs-whitespace { color: "+l+" !important; }")}));var aw=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),uw=function(e){function t(t){var n=e.call(this)||this;return n._context=t,n._readConfig(),n._lastCursorModelPosition=new bn(1,1),n._renderResult=null,n._context.addEventHandler(n),n}return aw(t,e),t.prototype._readConfig=function(){var e=this._context.configuration.options;this._lineHeight=e.get(49);var t=e.get(50);this._renderLineNumbers=t.renderType,this._renderCustomLineNumbers=t.renderFn,this._renderFinalNewline=e.get(71);var n=e.get(107);this._lineNumbersLeft=n.lineNumbersLeft,this._lineNumbersWidth=n.lineNumbersWidth},t.prototype.dispose=function(){this._context.removeEventHandler(this),this._renderResult=null,e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){return this._readConfig(),!0},t.prototype.onCursorStateChanged=function(e){var t=e.selections[0].getPosition();return this._lastCursorModelPosition=this._context.model.coordinatesConverter.convertViewPositionToModelPosition(t),2===this._renderLineNumbers||3===this._renderLineNumbers},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollTopChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype._getLineRenderLineNumber=function(e){var t=this._context.model.coordinatesConverter.convertViewPositionToModelPosition(new bn(e,1));if(1!==t.column)return"";var n=t.lineNumber;if(this._renderCustomLineNumbers)return this._renderCustomLineNumbers(n);if(2===this._renderLineNumbers){var i=Math.abs(this._lastCursorModelPosition.lineNumber-n);return 0===i?'<span class="relative-current-line-number">'+n+"</span>":String(i)}return 3===this._renderLineNumbers?this._lastCursorModelPosition.lineNumber===n||n%10==0?String(n):"":String(n)},t.prototype.prepareRender=function(e){if(0!==this._renderLineNumbers){for(var n=y?this._lineHeight%2==0?" lh-even":" lh-odd":"",i=e.visibleRange.startLineNumber,o=e.visibleRange.endLineNumber,r='<div class="'+t.CLASS_NAME+n+'" style="left:'+this._lineNumbersLeft.toString()+"px;width:"+this._lineNumbersWidth.toString()+'px;">',s=this._context.model.getLineCount(),a=[],u=i;u<=o;u++){var l=u-i;if(this._renderFinalNewline||u!==s||0!==this._context.model.getLineLength(u)){var c=this._getLineRenderLineNumber(u);a[l]=c?r+c+"</div>":""}else a[l]=""}this._renderResult=a}else this._renderResult=null},t.prototype.render=function(e,t){if(!this._renderResult)return"";var n=t-e;return n<0||n>=this._renderResult.length?"":this._renderResult[n]},t.CLASS_NAME="line-numbers",t}(S_);yg((function(e,t){var n=e.getColor(Gb);n&&t.addRule(".monaco-editor .line-numbers { color: "+n+"; }");var i=e.getColor(Yb);i&&t.addRule(".monaco-editor .current-line ~ .line-numbers { color: "+i+"; }")}));var lw=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),cw=function(e){function t(n){var i=e.call(this,n)||this,o=i._context.configuration.options,r=o.get(107);return i._canUseLayerHinting=!o.get(22),i._contentLeft=r.contentLeft,i._glyphMarginLeft=r.glyphMarginLeft,i._glyphMarginWidth=r.glyphMarginWidth,i._domNode=Ff(document.createElement("div")),i._domNode.setClassName(t.OUTER_CLASS_NAME),i._domNode.setPosition("absolute"),i._domNode.setAttribute("role","presentation"),i._domNode.setAttribute("aria-hidden","true"),i._glyphMarginBackgroundDomNode=Ff(document.createElement("div")),i._glyphMarginBackgroundDomNode.setClassName(t.CLASS_NAME),i._domNode.appendChild(i._glyphMarginBackgroundDomNode),i}return lw(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.getDomNode=function(){return this._domNode},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options,n=t.get(107);return this._canUseLayerHinting=!t.get(22),this._contentLeft=n.contentLeft,this._glyphMarginLeft=n.glyphMarginLeft,this._glyphMarginWidth=n.glyphMarginWidth,!0},t.prototype.onScrollChanged=function(t){return e.prototype.onScrollChanged.call(this,t)||t.scrollTopChanged},t.prototype.prepareRender=function(e){},t.prototype.render=function(e){this._domNode.setLayerHinting(this._canUseLayerHinting),this._domNode.setContain("strict");var t=e.scrollTop-e.bigNumbersDelta;this._domNode.setTop(-t);var n=Math.min(e.scrollHeight,1e6);this._domNode.setHeight(n),this._domNode.setWidth(this._contentLeft),this._glyphMarginBackgroundDomNode.setLeft(this._glyphMarginLeft),this._glyphMarginBackgroundDomNode.setWidth(this._glyphMarginWidth),this._glyphMarginBackgroundDomNode.setHeight(n)},t.CLASS_NAME="glyph-margin",t.OUTER_CLASS_NAME="margin",t}(og),dw=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),hw=function(){function e(e){this.type=1,this._source=e}return e.prototype.hasChanged=function(e){return this._source.hasChanged(e)},e}(),pw=function(e){this.type=2,this.contentWidth=e.contentWidth,this.contentHeight=e.contentHeight,this.contentWidthChanged=e.contentWidthChanged,this.contentHeightChanged=e.contentHeightChanged},fw=function(e,t){this.type=3,this.selections=e,this.modelSelections=t},gw=function(){this.type=4},mw=function(){this.type=5},vw=function(e){this.type=6,this.isFocused=e},_w=function(){this.type=7},yw=function(){this.type=8},bw=function(e,t){this.type=9,this.fromLineNumber=e,this.toLineNumber=t},ww=function(e,t){this.type=10,this.fromLineNumber=e,this.toLineNumber=t},Cw=function(e,t){this.type=11,this.fromLineNumber=e,this.toLineNumber=t},Sw=function(e,t,n,i,o){this.type=12,this.source=e,this.range=t,this.verticalType=n,this.revealHorizontal=i,this.scrollType=o},Lw=function(e){this.type=13,this.scrollWidth=e.scrollWidth,this.scrollLeft=e.scrollLeft,this.scrollHeight=e.scrollHeight,this.scrollTop=e.scrollTop,this.scrollWidthChanged=e.scrollWidthChanged,this.scrollLeftChanged=e.scrollLeftChanged,this.scrollHeightChanged=e.scrollHeightChanged,this.scrollTopChanged=e.scrollTopChanged},xw=function(){this.type=14},Dw=function(e){this.type=15,this.ranges=e},Nw=function(){this.type=16},kw=function(){this.type=17},Ew=function(e){function t(){var t=e.call(this)||this;return t._listeners=[],t._collector=null,t._collectorCnt=0,t}return dw(t,e),t.prototype.dispose=function(){this._listeners=[],e.prototype.dispose.call(this)},t.prototype._beginEmit=function(){return this._collectorCnt++,1===this._collectorCnt&&(this._collector=new Iw),this._collector},t.prototype._endEmit=function(){if(this._collectorCnt--,0===this._collectorCnt){var e=this._collector.finalize();this._collector=null,e.length>0&&this._emit(e)}},t.prototype._emit=function(e){for(var t=this._listeners.slice(0),n=0,i=t.length;n<i;n++)Ow(t[n],e)},t.prototype.addEventListener=function(e){var t=this;return this._listeners.push(e),We((function(){for(var n=t._listeners,i=0,o=n.length;i<o;i++)if(n[i]===e){n.splice(i,1);break}}))},t}(He),Iw=function(){function e(){this._eventsLen=0,this._events=[],this._eventsLen=0}return e.prototype.emit=function(e){this._events[this._eventsLen++]=e},e.prototype.finalize=function(){var e=this._events;return this._events=[],e},e}();function Ow(e,t){try{e(t)}catch(e){De(e)}}var Mw=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Tw=function(){function e(e,t,n){this.top=e,this.left=t,this.width=n}return e.prototype.setWidth=function(t){return new e(this.top,this.left,t)},e}(),Pw=Hn||zn,Rw=function(e){function t(t,n,i){var o=e.call(this,t)||this;o._primaryCursorPosition=new bn(1,1),o._primaryCursorVisibleRange=null,o._viewController=n,o._viewHelper=i,o._scrollLeft=0,o._scrollTop=0;var r=o._context.configuration.options,s=r.get(107);o._setAccessibilityOptions(r),o._contentLeft=s.contentLeft,o._contentWidth=s.contentWidth,o._contentHeight=s.height,o._fontInfo=r.get(34),o._lineHeight=r.get(49),o._emptySelectionClipboard=r.get(25),o._copyWithSyntaxHighlighting=r.get(15),o._visibleTextArea=null,o._selections=[new Sn(1,1,1,1)],o._modelSelections=[new Sn(1,1,1,1)],o._lastRenderPosition=null,o.textArea=Ff(document.createElement("textarea")),rg.write(o.textArea,6),o.textArea.setClassName("inputarea"),o.textArea.setAttribute("wrap","off"),o.textArea.setAttribute("autocorrect","off"),o.textArea.setAttribute("autocapitalize","off"),o.textArea.setAttribute("autocomplete","off"),o.textArea.setAttribute("spellcheck","false"),o.textArea.setAttribute("aria-label",o._getAriaLabel(r)),o.textArea.setAttribute("role","textbox"),o.textArea.setAttribute("aria-multiline","true"),o.textArea.setAttribute("aria-haspopup","false"),o.textArea.setAttribute("aria-autocomplete","both"),w&&r.get(68)&&o.textArea.setAttribute("readonly","true"),o.textAreaCover=Ff(document.createElement("div")),o.textAreaCover.setPosition("absolute");var a={getLineCount:function(){return o._context.model.getLineCount()},getLineMaxColumn:function(e){return o._context.model.getLineMaxColumn(e)},getValueInRange:function(e,t){return o._context.model.getValueInRange(e,t)}},u={getDataToCopy:function(e){var t=o._context.model.getPlainTextToCopy(o._modelSelections,o._emptySelectionClipboard,v),n=o._context.model.getEOL(),i=o._emptySelectionClipboard&&1===o._modelSelections.length&&o._modelSelections[0].isEmpty(),r=Array.isArray(t)?t:null,s=Array.isArray(t)?t.join(n):t,a=void 0,u=null;if(e&&(v_.forceCopyWithSyntaxHighlighting||o._copyWithSyntaxHighlighting&&s.length<65536)){var l=o._context.model.getRichTextToCopy(o._modelSelections,o._emptySelectionClipboard);l&&(a=l.html,u=l.mode)}return{isFromEmptySelection:i,multicursorText:r,text:s,html:a,mode:u}},getScreenReaderContent:function(e){if(Gn)return f_.EMPTY;if(1===o._accessibilitySupport){if(_){var t=o._selections[0];if(t.isEmpty()){var n=t.getStartPosition(),i=o._getWordBeforePosition(n);if(0===i.length&&(i=o._getCharacterBeforePosition(n)),i.length>0)return new f_(i,i.length,i.length,n,n)}}return f_.EMPTY}return g_.fromEditorSelection(e,a,o._selections[0],o._accessibilityPageSize,0===o._accessibilitySupport)},deduceModelPosition:function(e,t,n){return o._context.model.deduceModelPositionRelativeToViewPosition(e,t,n)}};return o._textAreaInput=o._register(new y_(u,o.textArea)),o._register(o._textAreaInput.onKeyDown((function(e){o._viewController.emitKeyDown(e)}))),o._register(o._textAreaInput.onKeyUp((function(e){o._viewController.emitKeyUp(e)}))),o._register(o._textAreaInput.onPaste((function(e){var t=!1,n=null,i=null;e.metadata&&(t=o._emptySelectionClipboard&&!!e.metadata.isFromEmptySelection,n=void 0!==e.metadata.multicursorText?e.metadata.multicursorText:null,i=e.metadata.mode),o._viewController.paste("keyboard",e.text,t,n,i)}))),o._register(o._textAreaInput.onCut((function(){o._viewController.cut("keyboard")}))),o._register(o._textAreaInput.onType((function(e){e.replaceCharCnt?o._viewController.replacePreviousChar("keyboard",e.text,e.replaceCharCnt):o._viewController.type("keyboard",e.text)}))),o._register(o._textAreaInput.onSelectionChangeRequest((function(e){o._viewController.setSelection("keyboard",e)}))),o._register(o._textAreaInput.onCompositionStart((function(){var e=o._selections[0].startLineNumber,t=o._selections[0].startColumn;o._context.privateViewEventBus.emit(new Sw("keyboard",new wn(e,t,e,t),0,!0,1));var n=o._viewHelper.visibleRangeForPositionRelativeToEditor(e,t);n&&(o._visibleTextArea=new Tw(o._context.viewLayout.getVerticalOffsetForLineNumber(e),n.left,Pw?0:1),o._render()),o.textArea.setClassName("inputarea ime-input"),o._viewController.compositionStart("keyboard")}))),o._register(o._textAreaInput.onCompositionUpdate((function(e){o._visibleTextArea=Hn?o._visibleTextArea.setWidth(0):o._visibleTextArea.setWidth(function(e,t){var n=document.createElement("canvas").getContext("2d");n.font=(i=t,o="normal",r=i.fontWeight,s=i.fontSize,a=i.lineHeight,u=i.fontFamily,o+" normal "+r+" "+s+"px / "+a+"px "+u);var i,o,r,s,a,u;var l=n.measureText(e);return zn?l.width+2:l.width}(e.data,o._fontInfo)),o._render()}))),o._register(o._textAreaInput.onCompositionEnd((function(){o._visibleTextArea=null,o._render(),o.textArea.setClassName("inputarea"),o._viewController.compositionEnd("keyboard")}))),o._register(o._textAreaInput.onFocus((function(){o._context.privateViewEventBus.emit(new vw(!0))}))),o._register(o._textAreaInput.onBlur((function(){o._context.privateViewEventBus.emit(new vw(!1))}))),o}return Mw(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._getWordBeforePosition=function(e){for(var t=this._context.model.getLineContent(e.lineNumber),n=Dm(this._context.configuration.options.get(96)),i=e.column,o=0;i>1;){var r=t.charCodeAt(i-2);if(0!==n.get(r)||o>50)return t.substring(i-1,e.column-1);o++,i--}return t.substring(0,e.column-1)},t.prototype._getCharacterBeforePosition=function(e){if(e.column>1){var t=this._context.model.getLineContent(e.lineNumber).charAt(e.column-2);if(!Tr(t.charCodeAt(0)))return t}return""},t.prototype._getAriaLabel=function(e){return 1===e.get(2)?r("accessibilityOffAriaLabel","The editor is not accessible at this time. Press Alt+F1 for options."):e.get(4)},t.prototype._setAccessibilityOptions=function(e){this._accessibilitySupport=e.get(2);var t=e.get(3);2===this._accessibilitySupport&&t===Le.accessibilityPageSize.defaultValue?this._accessibilityPageSize=160:this._accessibilityPageSize=t},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options,n=t.get(107);return this._setAccessibilityOptions(t),this._contentLeft=n.contentLeft,this._contentWidth=n.contentWidth,this._contentHeight=n.height,this._fontInfo=t.get(34),this._lineHeight=t.get(49),this._emptySelectionClipboard=t.get(25),this._copyWithSyntaxHighlighting=t.get(15),this.textArea.setAttribute("aria-label",this._getAriaLabel(t)),w&&e.hasChanged(68)&&(t.get(68)?this.textArea.setAttribute("readonly","true"):this.textArea.removeAttribute("readonly")),e.hasChanged(2)&&this._textAreaInput.writeScreenReaderContent("strategy changed"),!0},t.prototype.onCursorStateChanged=function(e){return this._selections=e.selections.slice(0),this._modelSelections=e.modelSelections.slice(0),this._textAreaInput.writeScreenReaderContent("selection changed"),!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return this._scrollLeft=e.scrollLeft,this._scrollTop=e.scrollTop,!0},t.prototype.onZonesChanged=function(e){return!0},t.prototype.isFocused=function(){return this._textAreaInput.isFocused()},t.prototype.focusTextArea=function(){this._textAreaInput.focusTextArea()},t.prototype.getLastRenderData=function(){return this._lastRenderPosition},t.prototype.setAriaOptions=function(e){e.activeDescendant?(this.textArea.setAttribute("aria-haspopup","true"),this.textArea.setAttribute("aria-autocomplete","list"),this.textArea.setAttribute("aria-activedescendant",e.activeDescendant)):(this.textArea.setAttribute("aria-haspopup","false"),this.textArea.setAttribute("aria-autocomplete","both"),this.textArea.removeAttribute("aria-activedescendant"))},t.prototype.prepareRender=function(e){this._primaryCursorPosition=new bn(this._selections[0].positionLineNumber,this._selections[0].positionColumn),this._primaryCursorVisibleRange=e.visibleRangeForPosition(this._primaryCursorPosition)},t.prototype.render=function(e){this._textAreaInput.writeScreenReaderContent("render"),this._render()},t.prototype._render=function(){if(this._visibleTextArea)this._renderInsideEditor(null,this._visibleTextArea.top-this._scrollTop,this._contentLeft+this._visibleTextArea.left-this._scrollLeft,this._visibleTextArea.width,this._lineHeight);else if(this._primaryCursorVisibleRange){var e=this._contentLeft+this._primaryCursorVisibleRange.left-this._scrollLeft;if(e<this._contentLeft||e>this._contentLeft+this._contentWidth)this._renderAtTopLeft();else{var t=this._context.viewLayout.getVerticalOffsetForLineNumber(this._selections[0].positionLineNumber)-this._scrollTop;t<0||t>this._contentHeight?this._renderAtTopLeft():_?this._renderInsideEditor(this._primaryCursorPosition,t,e,Pw?0:1,this._lineHeight):this._renderInsideEditor(this._primaryCursorPosition,t,e,Pw?0:1,Pw?0:1)}}else this._renderAtTopLeft()},t.prototype._renderInsideEditor=function(e,t,n,i,o){this._lastRenderPosition=e;var r=this.textArea,s=this.textAreaCover;af.applyFontInfo(r,this._fontInfo),r.setTop(t),r.setLeft(n),r.setWidth(i),r.setHeight(o),s.setTop(0),s.setLeft(0),s.setWidth(0),s.setHeight(0)},t.prototype._renderAtTopLeft=function(){this._lastRenderPosition=null;var e=this.textArea,t=this.textAreaCover;if(af.applyFontInfo(e,this._fontInfo),e.setTop(0),e.setLeft(0),t.setTop(0),t.setLeft(0),Pw)return e.setWidth(0),e.setHeight(0),t.setWidth(0),void t.setHeight(0);e.setWidth(1),e.setHeight(1),t.setWidth(1),t.setHeight(1);var n=this._context.configuration.options;n.get(40)?t.setClassName("monaco-editor-background textAreaCover "+cw.OUTER_CLASS_NAME):0!==n.get(50).renderType?t.setClassName("monaco-editor-background textAreaCover "+uw.CLASS_NAME):t.setClassName("monaco-editor-background textAreaCover")},t}(og);var Aw=function(){function e(){}return e.columnSelect=function(e,t,n,i,o,r){for(var s=Math.abs(o-n)+1,a=n>o,u=i>r,l=i<r,c=[],d=0;d<s;d++){var h=n+(a?-d:d),p=Uv.columnFromVisibleColumn2(e,t,h,i),f=Uv.columnFromVisibleColumn2(e,t,h,r),g=Uv.visibleColumnFromColumn2(e,t,new bn(h,p)),m=Uv.visibleColumnFromColumn2(e,t,new bn(h,f));if(l){if(g>r)continue;if(m<i)continue}if(u){if(m>i)continue;if(g<r)continue}c.push(new Wv(new wn(h,p,h,p),0,new bn(h,f),0))}if(0===c.length)for(d=0;d<s;d++){h=n+(a?-d:d);var v=t.getLineMaxColumn(h);c.push(new Wv(new wn(h,v,h,v),0,new bn(h,v),0))}return{viewStates:c,reversed:a,fromLineNumber:n,fromVisualColumn:i,toLineNumber:o,toVisualColumn:r}},e.columnSelectLeft=function(t,n,i){var o=i.toViewVisualColumn;return o>1&&o--,e.columnSelect(t,n,i.fromViewLineNumber,i.fromViewVisualColumn,i.toViewLineNumber,o)},e.columnSelectRight=function(e,t,n){for(var i=0,o=Math.min(n.fromViewLineNumber,n.toViewLineNumber),r=Math.max(n.fromViewLineNumber,n.toViewLineNumber),s=o;s<=r;s++){var a=t.getLineMaxColumn(s),u=Uv.visibleColumnFromColumn2(e,t,new bn(s,a));i=Math.max(i,u)}var l=n.toViewVisualColumn;return l<i&&l++,this.columnSelect(e,t,n.fromViewLineNumber,n.fromViewVisualColumn,n.toViewLineNumber,l)},e.columnSelectUp=function(e,t,n,i){var o=i?e.pageSize:1,r=Math.max(1,n.toViewLineNumber-o);return this.columnSelect(e,t,n.fromViewLineNumber,n.fromViewVisualColumn,r,n.toViewVisualColumn)},e.columnSelectDown=function(e,t,n,i){var o=i?e.pageSize:1,r=Math.min(t.getLineCount(),n.toViewLineNumber+o);return this.columnSelect(e,t,n.fromViewLineNumber,n.fromViewVisualColumn,r,n.toViewVisualColumn)},e}(),Fw=function(){function e(e,t,n){void 0===n&&(n=!1),this._range=e,this._text=t,this.insertsAutoWhitespace=n}return e.prototype.getEditOperations=function(e,t){t.addTrackedEditOperation(this._range,this._text)},e.prototype.computeCursorState=function(e,t){var n=t.getInverseEditOperations()[0].range;return new Sn(n.endLineNumber,n.endColumn,n.endLineNumber,n.endColumn)},e}(),Ww=function(){function e(e,t){this._range=e,this._text=t}return e.prototype.getEditOperations=function(e,t){t.addTrackedEditOperation(this._range,this._text)},e.prototype.computeCursorState=function(e,t){var n=t.getInverseEditOperations()[0].range;return new Sn(n.startLineNumber,n.startColumn,n.endLineNumber,n.endColumn)},e}(),Vw=function(){function e(e,t,n){void 0===n&&(n=!1),this._range=e,this._text=t,this.insertsAutoWhitespace=n}return e.prototype.getEditOperations=function(e,t){t.addTrackedEditOperation(this._range,this._text)},e.prototype.computeCursorState=function(e,t){var n=t.getInverseEditOperations()[0].range;return new Sn(n.startLineNumber,n.startColumn,n.startLineNumber,n.startColumn)},e}(),Bw=function(){function e(e,t,n,i,o){void 0===o&&(o=!1),this._range=e,this._text=t,this._columnDeltaOffset=i,this._lineNumberDeltaOffset=n,this.insertsAutoWhitespace=o}return e.prototype.getEditOperations=function(e,t){t.addTrackedEditOperation(this._range,this._text)},e.prototype.computeCursorState=function(e,t){var n=t.getInverseEditOperations()[0].range;return new Sn(n.endLineNumber+this._lineNumberDeltaOffset,n.endColumn+this._columnDeltaOffset,n.endLineNumber+this._lineNumberDeltaOffset,n.endColumn+this._columnDeltaOffset)},e}(),Hw=function(){function e(e,t,n,i){void 0===i&&(i=!1),this._range=e,this._text=t,this._initialSelection=n,this._forceMoveMarkers=i,this._selectionId=null}return e.prototype.getEditOperations=function(e,t){t.addTrackedEditOperation(this._range,this._text,this._forceMoveMarkers),this._selectionId=t.trackSelection(this._initialSelection)},e.prototype.computeCursorState=function(e,t){return t.getTrackedSelection(this._selectionId)},e}(),zw=function(e,t,n){this.lineNumber=e,this.column=t,this.leftoverVisibleColumns=n},jw=function(){function e(){}return e.leftPosition=function(e,t,n){return n>e.getLineMinColumn(t)?n-=function(e,t){var n=Qr.getInstance(),i=t,o=Ar(e,t);t-=o>=65536?2:1;for(var r=n.getGraphemeBreakType(o);t>0;){var s=Ar(e,t),a=n.getGraphemeBreakType(s);if($r(a,r))break;t-=s>=65536?2:1,r=a}return i-t}(e.getLineContent(t),n-1):t>1&&(t-=1,n=e.getLineMaxColumn(t)),new bn(t,n)},e.left=function(t,n,i,o){var r=e.leftPosition(n,i,o);return new zw(r.lineNumber,r.column,0)},e.moveLeft=function(t,n,i,o,r){var s,a;if(i.hasSelection()&&!o)s=i.selection.startLineNumber,a=i.selection.startColumn;else{var u=e.left(t,n,i.position.lineNumber,i.position.column-(r-1));s=u.lineNumber,a=u.column}return i.move(o,s,a,0)},e.rightPosition=function(e,t,n){return n<e.getLineMaxColumn(t)?n+=Fr(e.getLineContent(t),n-1):t<e.getLineCount()&&(t+=1,n=e.getLineMinColumn(t)),new bn(t,n)},e.right=function(t,n,i,o){var r=e.rightPosition(n,i,o);return new zw(r.lineNumber,r.column,0)},e.moveRight=function(t,n,i,o,r){var s,a;if(i.hasSelection()&&!o)s=i.selection.endLineNumber,a=i.selection.endColumn;else{var u=e.right(t,n,i.position.lineNumber,i.position.column+(r-1));s=u.lineNumber,a=u.column}return i.move(o,s,a,0)},e.down=function(e,t,n,i,o,r,s){var a=Uv.visibleColumnFromColumn(t.getLineContent(n),i,e.tabSize)+o;n+=r;var u=t.getLineCount();return n>u?(n=u,i=s?t.getLineMaxColumn(n):Math.min(t.getLineMaxColumn(n),i)):i=Uv.columnFromVisibleColumn2(e,t,n,a),o=a-Uv.visibleColumnFromColumn(t.getLineContent(n),i,e.tabSize),new zw(n,i,o)},e.moveDown=function(t,n,i,o,r){var s,a;i.hasSelection()&&!o?(s=i.selection.endLineNumber,a=i.selection.endColumn):(s=i.position.lineNumber,a=i.position.column);var u=e.down(t,n,s,a,i.leftoverVisibleColumns,r,!0);return i.move(o,u.lineNumber,u.column,u.leftoverVisibleColumns)},e.translateDown=function(t,n,i){var o=i.selection,r=e.down(t,n,o.selectionStartLineNumber,o.selectionStartColumn,i.selectionStartLeftoverVisibleColumns,1,!1),s=e.down(t,n,o.positionLineNumber,o.positionColumn,i.leftoverVisibleColumns,1,!1);return new Wv(new wn(r.lineNumber,r.column,r.lineNumber,r.column),r.leftoverVisibleColumns,new bn(s.lineNumber,s.column),s.leftoverVisibleColumns)},e.up=function(e,t,n,i,o,r,s){var a=Uv.visibleColumnFromColumn(t.getLineContent(n),i,e.tabSize)+o;return(n-=r)<1?(n=1,i=s?t.getLineMinColumn(n):Math.min(t.getLineMaxColumn(n),i)):i=Uv.columnFromVisibleColumn2(e,t,n,a),o=a-Uv.visibleColumnFromColumn(t.getLineContent(n),i,e.tabSize),new zw(n,i,o)},e.moveUp=function(t,n,i,o,r){var s,a;i.hasSelection()&&!o?(s=i.selection.startLineNumber,a=i.selection.startColumn):(s=i.position.lineNumber,a=i.position.column);var u=e.up(t,n,s,a,i.leftoverVisibleColumns,r,!0);return i.move(o,u.lineNumber,u.column,u.leftoverVisibleColumns)},e.translateUp=function(t,n,i){var o=i.selection,r=e.up(t,n,o.selectionStartLineNumber,o.selectionStartColumn,i.selectionStartLeftoverVisibleColumns,1,!1),s=e.up(t,n,o.positionLineNumber,o.positionColumn,i.leftoverVisibleColumns,1,!1);return new Wv(new wn(r.lineNumber,r.column,r.lineNumber,r.column),r.leftoverVisibleColumns,new bn(s.lineNumber,s.column),s.leftoverVisibleColumns)},e.moveToBeginningOfLine=function(e,t,n,i){var o,r=n.position.lineNumber,s=t.getLineMinColumn(r),a=t.getLineFirstNonWhitespaceColumn(r)||s;return o=n.position.column===a?s:a,n.move(i,r,o,0)},e.moveToEndOfLine=function(e,t,n,i){var o=n.position.lineNumber,r=t.getLineMaxColumn(o);return n.move(i,o,r,0)},e.moveToBeginningOfBuffer=function(e,t,n,i){return n.move(i,1,1,0)},e.moveToEndOfBuffer=function(e,t,n,i){var o=t.getLineCount(),r=t.getLineMaxColumn(o);return n.move(i,o,r,0)},e}(),Uw=function(){function e(){}return e.deleteRight=function(e,t,n,i){for(var o=[],r=3!==e,s=0,a=i.length;s<a;s++){var u=i[s],l=u;if(l.isEmpty()){var c=u.getPosition(),d=jw.right(t,n,c.lineNumber,c.column);l=new wn(d.lineNumber,d.column,c.lineNumber,c.column)}l.isEmpty()?o[s]=null:(l.startLineNumber!==l.endLineNumber&&(r=!0),o[s]=new Fw(l,""))}return[r,o]},e._isAutoClosingPairDelete=function(e,t,n){if("never"===e.autoClosingBrackets&&"never"===e.autoClosingQuotes)return!1;for(var i=0,o=n.length;i<o;i++){var r=n[i],s=r.getPosition();if(!r.isEmpty())return!1;var a=t.getLineContent(s.lineNumber),u=a[s.column-2],l=e.autoClosingPairsOpen2.get(u);if(!l)return!1;if(Kv(u)){if("never"===e.autoClosingQuotes)return!1}else if("never"===e.autoClosingBrackets)return!1;for(var c=a[s.column-1],d=!1,h=0,p=l;h<p.length;h++){var f=p[h];f.open===u&&f.close===c&&(d=!0)}if(!d)return!1}return!0},e._runAutoClosingPairDelete=function(e,t,n){for(var i=[],o=0,r=n.length;o<r;o++){var s=n[o].getPosition(),a=new wn(s.lineNumber,s.column-1,s.lineNumber,s.column+1);i[o]=new Fw(a,"")}return[!0,i]},e.deleteLeft=function(e,t,n,i){if(this._isAutoClosingPairDelete(t,n,i))return this._runAutoClosingPairDelete(t,n,i);for(var o=[],r=2!==e,s=0,a=i.length;s<a;s++){var u=i[s],l=u;if(l.isEmpty()){var c=u.getPosition();if(t.useTabStops&&c.column>1){var d=n.getLineContent(c.lineNumber),h=wr(d),p=-1===h?d.length+1:h+1;if(c.column<=p){var f=Uv.visibleColumnFromColumn2(t,n,c),g=Uv.prevIndentTabStop(f,t.indentSize),m=Uv.columnFromVisibleColumn2(t,n,c.lineNumber,g);l=new wn(c.lineNumber,m,c.lineNumber,c.column)}else l=new wn(c.lineNumber,c.column-1,c.lineNumber,c.column)}else{var v=jw.left(t,n,c.lineNumber,c.column);l=new wn(v.lineNumber,v.column,c.lineNumber,c.column)}}l.isEmpty()?o[s]=null:(l.startLineNumber!==l.endLineNumber&&(r=!0),o[s]=new Fw(l,""))}return[r,o]},e.cut=function(e,t,n){for(var i=[],o=0,r=n.length;o<r;o++){var s=n[o];if(s.isEmpty())if(e.emptySelectionClipboard){var a=s.getPosition(),u=void 0,l=void 0,c=void 0,d=void 0;a.lineNumber<t.getLineCount()?(u=a.lineNumber,l=1,c=a.lineNumber+1,d=1):a.lineNumber>1?(u=a.lineNumber-1,l=t.getLineMaxColumn(a.lineNumber-1),c=a.lineNumber,d=t.getLineMaxColumn(a.lineNumber)):(u=a.lineNumber,l=1,c=a.lineNumber,d=t.getLineMaxColumn(a.lineNumber));var h=new wn(u,l,c,d);h.isEmpty()?i[o]=null:i[o]=new Fw(h,"")}else i[o]=null;else i[o]=new Fw(s,"")}return new jv(0,i,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})},e}(),Kw=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),qw=function(){function e(){}return e._createWord=function(e,t,n,i,o){return{start:i,end:o,wordType:t,nextCharClass:n}},e._findPreviousWordOnLine=function(e,t,n){var i=t.getLineContent(n.lineNumber);return this._doFindPreviousWordOnLine(i,e,n)},e._doFindPreviousWordOnLine=function(e,t,n){for(var i=0,o=n.column-2;o>=0;o--){var r=e.charCodeAt(o),s=t.get(r);if(0===s){if(2===i)return this._createWord(e,i,s,o+1,this._findEndOfWord(e,t,i,o+1));i=1}else if(2===s){if(1===i)return this._createWord(e,i,s,o+1,this._findEndOfWord(e,t,i,o+1));i=2}else if(1===s&&0!==i)return this._createWord(e,i,s,o+1,this._findEndOfWord(e,t,i,o+1))}return 0!==i?this._createWord(e,i,1,0,this._findEndOfWord(e,t,i,0)):null},e._findEndOfWord=function(e,t,n,i){for(var o=e.length,r=i;r<o;r++){var s=e.charCodeAt(r),a=t.get(s);if(1===a)return r;if(1===n&&2===a)return r;if(2===n&&0===a)return r}return o},e._findNextWordOnLine=function(e,t,n){var i=t.getLineContent(n.lineNumber);return this._doFindNextWordOnLine(i,e,n)},e._doFindNextWordOnLine=function(e,t,n){for(var i=0,o=e.length,r=n.column-1;r<o;r++){var s=e.charCodeAt(r),a=t.get(s);if(0===a){if(2===i)return this._createWord(e,i,a,this._findStartOfWord(e,t,i,r-1),r);i=1}else if(2===a){if(1===i)return this._createWord(e,i,a,this._findStartOfWord(e,t,i,r-1),r);i=2}else if(1===a&&0!==i)return this._createWord(e,i,a,this._findStartOfWord(e,t,i,r-1),r)}return 0!==i?this._createWord(e,i,1,this._findStartOfWord(e,t,i,o-1),o):null},e._findStartOfWord=function(e,t,n,i){for(var o=i;o>=0;o--){var r=e.charCodeAt(o),s=t.get(r);if(1===s)return o+1;if(1===n&&2===s)return o+1;if(2===n&&0===s)return o+1}return 0},e.moveWordLeft=function(t,n,i,o){var r=i.lineNumber,s=i.column,a=!1;1===s&&r>1&&(a=!0,r-=1,s=n.getLineMaxColumn(r));var u=e._findPreviousWordOnLine(t,n,new bn(r,s));if(0===o){if(u&&!a)if(n.getLineLastNonWhitespaceColumn(r)<s)return new bn(r,u.end+1);return new bn(r,u?u.start+1:1)}if(1===o)return u&&2===u.wordType&&u.end-u.start==1&&0===u.nextCharClass&&(u=e._findPreviousWordOnLine(t,n,new bn(r,u.start+1))),new bn(r,u?u.start+1:1);if(3===o){for(;u&&2===u.wordType;)u=e._findPreviousWordOnLine(t,n,new bn(r,u.start+1));return new bn(r,u?u.start+1:1)}return u&&s<=u.end+1&&(u=e._findPreviousWordOnLine(t,n,new bn(r,u.start+1))),new bn(r,u?u.end+1:1)},e._moveWordPartLeft=function(e,t){var n=t.lineNumber,i=e.getLineMaxColumn(n);if(1===t.column)return n>1?new bn(n-1,e.getLineMaxColumn(n-1)):t;for(var o=e.getLineContent(n),r=t.column-1;r>1;r--){var s=o.charCodeAt(r-2),a=o.charCodeAt(r-1);if(95!==s&&95===a)return new bn(n,r);if(Dr(s)&&Nr(a))return new bn(n,r);if(Nr(s)&&Nr(a))if(r+1<i)if(Dr(o.charCodeAt(r)))return new bn(n,r)}return new bn(n,1)},e.moveWordRight=function(t,n,i,o){var r=i.lineNumber,s=i.column,a=!1;s===n.getLineMaxColumn(r)&&r<n.getLineCount()&&(a=!0,r+=1,s=1);var u=e._findNextWordOnLine(t,n,new bn(r,s));if(2===o)u&&2===u.wordType&&u.end-u.start==1&&0===u.nextCharClass&&(u=e._findNextWordOnLine(t,n,new bn(r,u.end+1))),s=u?u.end+1:n.getLineMaxColumn(r);else if(3===o){for(a&&(s=0);u&&(2===u.wordType||u.start+1<=s);)u=e._findNextWordOnLine(t,n,new bn(r,u.end+1));s=u?u.start+1:n.getLineMaxColumn(r)}else u&&!a&&s>=u.start+1&&(u=e._findNextWordOnLine(t,n,new bn(r,u.end+1))),s=u?u.start+1:n.getLineMaxColumn(r);return new bn(r,s)},e._moveWordPartRight=function(e,t){var n=t.lineNumber,i=e.getLineMaxColumn(n);if(t.column===i)return n<e.getLineCount()?new bn(n+1,1):t;for(var o=e.getLineContent(n),r=t.column+1;r<i;r++){var s=o.charCodeAt(r-2),a=o.charCodeAt(r-1);if(95===s&&95!==a)return new bn(n,r);if(Dr(s)&&Nr(a))return new bn(n,r);if(Nr(s)&&Nr(a))if(r+1<i)if(Dr(o.charCodeAt(r)))return new bn(n,r)}return new bn(n,i)},e._deleteWordLeftWhitespace=function(e,t){var n=e.getLineContent(t.lineNumber),i=t.column-2,o=Sr(n,i);return o+1<i?new wn(t.lineNumber,o+2,t.lineNumber,t.column):null},e.deleteWordLeft=function(t,n,i,o,r){if(!i.isEmpty())return i;var s=new bn(i.positionLineNumber,i.positionColumn),a=s.lineNumber,u=s.column;if(1===a&&1===u)return null;if(o){var l=this._deleteWordLeftWhitespace(n,s);if(l)return l}var c=e._findPreviousWordOnLine(t,n,s);return 0===r?c?u=c.start+1:u>1?u=1:(a--,u=n.getLineMaxColumn(a)):(c&&u<=c.end+1&&(c=e._findPreviousWordOnLine(t,n,new bn(a,c.start+1))),c?u=c.end+1:u>1?u=1:(a--,u=n.getLineMaxColumn(a))),new wn(a,u,s.lineNumber,s.column)},e._deleteWordPartLeft=function(t,n){if(!n.isEmpty())return n;var i=n.getPosition(),o=e._moveWordPartLeft(t,i);return new wn(i.lineNumber,i.column,o.lineNumber,o.column)},e._findFirstNonWhitespaceChar=function(e,t){for(var n=e.length,i=t;i<n;i++){var o=e.charAt(i);if(" "!==o&&"\t"!==o)return i}return n},e._deleteWordRightWhitespace=function(e,t){var n=e.getLineContent(t.lineNumber),i=t.column-1,o=this._findFirstNonWhitespaceChar(n,i);return i+1<o?new wn(t.lineNumber,t.column,t.lineNumber,o+1):null},e.deleteWordRight=function(t,n,i,o,r){if(!i.isEmpty())return i;var s=new bn(i.positionLineNumber,i.positionColumn),a=s.lineNumber,u=s.column,l=n.getLineCount(),c=n.getLineMaxColumn(a);if(a===l&&u===c)return null;if(o){var d=this._deleteWordRightWhitespace(n,s);if(d)return d}var h=e._findNextWordOnLine(t,n,s);return 2===r?h?u=h.end+1:u<c||a===l?u=c:(a++,u=(h=e._findNextWordOnLine(t,n,new bn(a,1)))?h.start+1:n.getLineMaxColumn(a)):(h&&u>=h.start+1&&(h=e._findNextWordOnLine(t,n,new bn(a,h.end+1))),h?u=h.start+1:u<c||a===l?u=c:(a++,u=(h=e._findNextWordOnLine(t,n,new bn(a,1)))?h.start+1:n.getLineMaxColumn(a))),new wn(a,u,s.lineNumber,s.column)},e._deleteWordPartRight=function(t,n){if(!n.isEmpty())return n;var i=n.getPosition(),o=e._moveWordPartRight(t,i);return new wn(i.lineNumber,i.column,o.lineNumber,o.column)},e.word=function(t,n,i,o,r){var s,a,u,l,c=Dm(t.wordSeparators),d=e._findPreviousWordOnLine(c,n,r),h=e._findNextWordOnLine(c,n,r);if(!o)return d&&1===d.wordType&&d.start<=r.column-1&&r.column-1<=d.end?(s=d.start+1,a=d.end+1):h&&1===h.wordType&&h.start<=r.column-1&&r.column-1<=h.end?(s=h.start+1,a=h.end+1):(s=d?d.end+1:1,a=h?h.start+1:n.getLineMaxColumn(r.lineNumber)),new Wv(new wn(r.lineNumber,s,r.lineNumber,a),0,new bn(r.lineNumber,a),0);d&&1===d.wordType&&d.start<r.column-1&&r.column-1<d.end?(u=d.start+1,l=d.end+1):h&&1===h.wordType&&h.start<r.column-1&&r.column-1<h.end?(u=h.start+1,l=h.end+1):(u=r.column,l=r.column);var p,f=r.lineNumber;if(i.selectionStart.containsPosition(r))p=i.selectionStart.endColumn;else if(r.isBeforeOrEqual(i.selectionStart.getStartPosition())){var g=new bn(f,p=u);i.selectionStart.containsPosition(g)&&(p=i.selectionStart.endColumn)}else{g=new bn(f,p=l);i.selectionStart.containsPosition(g)&&(p=i.selectionStart.startColumn)}return i.move(!0,f,p,0)},e}(),Gw=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Kw(t,e),t.deleteWordPartLeft=function(e,t,n,i){var o=Zw([qw.deleteWordLeft(e,t,n,i,0),qw.deleteWordLeft(e,t,n,i,2),qw._deleteWordPartLeft(t,n)]);return o.sort(wn.compareRangesUsingEnds),o[2]},t.deleteWordPartRight=function(e,t,n,i){var o=Zw([qw.deleteWordRight(e,t,n,i,0),qw.deleteWordRight(e,t,n,i,2),qw._deleteWordPartRight(t,n)]);return o.sort(wn.compareRangesUsingStarts),o[0]},t.moveWordPartLeft=function(e,t,n){var i=Zw([qw.moveWordLeft(e,t,n,0),qw.moveWordLeft(e,t,n,2),qw._moveWordPartLeft(t,n)]);return i.sort(bn.compare),i[2]},t.moveWordPartRight=function(e,t,n){var i=Zw([qw.moveWordRight(e,t,n,0),qw.moveWordRight(e,t,n,2),qw._moveWordPartRight(t,n)]);return i.sort(bn.compare),i[0]},t}(qw);function Zw(e){return e.filter((function(e){return Boolean(e)}))}var Yw,Xw,$w=function(){function e(){}return e.addCursorDown=function(e,t,n){for(var i=[],o=0,r=0,s=t.length;r<s;r++){var a=t[r];i[o++]=new zv(a.modelState,a.viewState),i[o++]=n?zv.fromModelState(jw.translateDown(e.config,e.model,a.modelState)):zv.fromViewState(jw.translateDown(e.config,e.viewModel,a.viewState))}return i},e.addCursorUp=function(e,t,n){for(var i=[],o=0,r=0,s=t.length;r<s;r++){var a=t[r];i[o++]=new zv(a.modelState,a.viewState),i[o++]=n?zv.fromModelState(jw.translateUp(e.config,e.model,a.modelState)):zv.fromViewState(jw.translateUp(e.config,e.viewModel,a.viewState))}return i},e.moveToBeginningOfLine=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o];i[o]=this._moveToLineStart(e,s,n)}return i},e._moveToLineStart=function(e,t,n){var i=t.viewState.position.column,o=i===t.modelState.position.column,r=t.viewState.position.lineNumber,s=e.viewModel.getLineFirstNonWhitespaceColumn(r);return o||i===s?this._moveToLineStartByModel(e,t,n):this._moveToLineStartByView(e,t,n)},e._moveToLineStartByView=function(e,t,n){return zv.fromViewState(jw.moveToBeginningOfLine(e.config,e.viewModel,t.viewState,n))},e._moveToLineStartByModel=function(e,t,n){return zv.fromModelState(jw.moveToBeginningOfLine(e.config,e.model,t.modelState,n))},e.moveToEndOfLine=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o];i[o]=this._moveToLineEnd(e,s,n)}return i},e._moveToLineEnd=function(e,t,n){var i=t.viewState.position,o=e.viewModel.getLineMaxColumn(i.lineNumber),r=i.column===o,s=t.modelState.position,a=e.model.getLineMaxColumn(s.lineNumber),u=o-i.column==a-s.column;return r||u?this._moveToLineEndByModel(e,t,n):this._moveToLineEndByView(e,t,n)},e._moveToLineEndByView=function(e,t,n){return zv.fromViewState(jw.moveToEndOfLine(e.config,e.viewModel,t.viewState,n))},e._moveToLineEndByModel=function(e,t,n){return zv.fromModelState(jw.moveToEndOfLine(e.config,e.model,t.modelState,n))},e.expandLineSelection=function(e,t){for(var n=[],i=0,o=t.length;i<o;i++){var r=t[i],s=r.modelState.selection.startLineNumber,a=e.model.getLineCount(),u=r.modelState.selection.endLineNumber,l=void 0;u===a?l=e.model.getLineMaxColumn(a):(u++,l=1),n[i]=zv.fromModelState(new Wv(new wn(s,1,s,1),0,new bn(u,l),0))}return n},e.moveToBeginningOfBuffer=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o];i[o]=zv.fromModelState(jw.moveToBeginningOfBuffer(e.config,e.model,s.modelState,n))}return i},e.moveToEndOfBuffer=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o];i[o]=zv.fromModelState(jw.moveToEndOfBuffer(e.config,e.model,s.modelState,n))}return i},e.selectAll=function(e,t){var n=e.model.getLineCount(),i=e.model.getLineMaxColumn(n);return zv.fromModelState(new Wv(new wn(1,1,1,1),0,new bn(n,i),0))},e.line=function(e,t,n,i,o){var r=e.model.validatePosition(i),s=o?e.validateViewPosition(new bn(o.lineNumber,o.column),r):e.convertModelPositionToViewPosition(r);if(!n||!t.modelState.hasSelection()){var a=e.model.getLineCount(),u=r.lineNumber+1,l=1;return u>a&&(u=a,l=e.model.getLineMaxColumn(u)),zv.fromModelState(new Wv(new wn(r.lineNumber,1,u,l),0,new bn(u,l),0))}var c=t.modelState.selectionStart.getStartPosition().lineNumber;if(r.lineNumber<c)return zv.fromViewState(t.viewState.move(t.modelState.hasSelection(),s.lineNumber,1,0));if(r.lineNumber>c){a=e.viewModel.getLineCount();var d=s.lineNumber+1,h=1;return d>a&&(d=a,h=e.viewModel.getLineMaxColumn(d)),zv.fromViewState(t.viewState.move(t.modelState.hasSelection(),d,h,0))}var p=t.modelState.selectionStart.getEndPosition();return zv.fromModelState(t.modelState.move(t.modelState.hasSelection(),p.lineNumber,p.column,0))},e.word=function(e,t,n,i){var o=e.model.validatePosition(i);return zv.fromModelState(qw.word(e.config,e.model,t.modelState,n,o))},e.cancelSelection=function(e,t){if(!t.modelState.hasSelection())return new zv(t.modelState,t.viewState);var n=t.viewState.position.lineNumber,i=t.viewState.position.column;return zv.fromViewState(new Wv(new wn(n,i,n,i),0,new bn(n,i),0))},e.moveTo=function(e,t,n,i,o){var r=e.model.validatePosition(i),s=o?e.validateViewPosition(new bn(o.lineNumber,o.column),r):e.convertModelPositionToViewPosition(r);return zv.fromViewState(t.viewState.move(n,s.lineNumber,s.column,0))},e.move=function(e,t,n){var i=n.select,o=n.value;switch(n.direction){case 0:return 4===n.unit?this._moveHalfLineLeft(e,t,i):this._moveLeft(e,t,i,o);case 1:return 4===n.unit?this._moveHalfLineRight(e,t,i):this._moveRight(e,t,i,o);case 2:return 2===n.unit?this._moveUpByViewLines(e,t,i,o):this._moveUpByModelLines(e,t,i,o);case 3:return 2===n.unit?this._moveDownByViewLines(e,t,i,o):this._moveDownByModelLines(e,t,i,o);case 4:return this._moveToViewMinColumn(e,t,i);case 5:return this._moveToViewFirstNonWhitespaceColumn(e,t,i);case 6:return this._moveToViewCenterColumn(e,t,i);case 7:return this._moveToViewMaxColumn(e,t,i);case 8:return this._moveToViewLastNonWhitespaceColumn(e,t,i);case 9:var r=t[0],s=e.getCompletelyVisibleModelRange(),a=this._firstLineNumberInRange(e.model,s,o),u=e.model.getLineFirstNonWhitespaceColumn(a);return[this._moveToModelPosition(e,r,i,a,u)];case 11:r=t[0],s=e.getCompletelyVisibleModelRange(),a=this._lastLineNumberInRange(e.model,s,o),u=e.model.getLineFirstNonWhitespaceColumn(a);return[this._moveToModelPosition(e,r,i,a,u)];case 10:r=t[0],s=e.getCompletelyVisibleModelRange(),a=Math.round((s.startLineNumber+s.endLineNumber)/2),u=e.model.getLineFirstNonWhitespaceColumn(a);return[this._moveToModelPosition(e,r,i,a,u)];case 12:for(var l=e.getCompletelyVisibleViewRange(),c=[],d=0,h=t.length;d<h;d++){r=t[d];c[d]=this.findPositionInViewportIfOutside(e,r,l,i)}return c}return null},e.findPositionInViewportIfOutside=function(e,t,n,i){var o=t.viewState.position.lineNumber;if(n.startLineNumber<=o&&o<=n.endLineNumber-1)return new zv(t.modelState,t.viewState);o>n.endLineNumber-1&&(o=n.endLineNumber-1),o<n.startLineNumber&&(o=n.startLineNumber);var r=e.viewModel.getLineFirstNonWhitespaceColumn(o);return this._moveToViewPosition(e,t,i,o,r)},e._firstLineNumberInRange=function(e,t,n){var i=t.startLineNumber;return t.startColumn!==e.getLineMinColumn(i)&&i++,Math.min(t.endLineNumber,i+n-1)},e._lastLineNumberInRange=function(e,t,n){var i=t.startLineNumber;return t.startColumn!==e.getLineMinColumn(i)&&i++,Math.max(i,t.endLineNumber-n+1)},e._moveLeft=function(e,t,n,i){for(var o=[],r=0,s=t.length;r<s;r++){var a=t[r],u=jw.moveLeft(e.config,e.viewModel,a.viewState,n,i);if(1===i&&u.position.lineNumber!==a.viewState.position.lineNumber)e.viewModel.coordinatesConverter.convertViewPositionToModelPosition(u.position).lineNumber===a.modelState.position.lineNumber&&(u=jw.moveLeft(e.config,e.viewModel,u,n,1));o[r]=zv.fromViewState(u)}return o},e._moveHalfLineLeft=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=s.viewState.position.lineNumber,u=Math.round(e.viewModel.getLineContent(a).length/2);i[o]=zv.fromViewState(jw.moveLeft(e.config,e.viewModel,s.viewState,n,u))}return i},e._moveRight=function(e,t,n,i){for(var o=[],r=0,s=t.length;r<s;r++){var a=t[r],u=jw.moveRight(e.config,e.viewModel,a.viewState,n,i);if(1===i&&u.position.lineNumber!==a.viewState.position.lineNumber)e.viewModel.coordinatesConverter.convertViewPositionToModelPosition(u.position).lineNumber===a.modelState.position.lineNumber&&(u=jw.moveRight(e.config,e.viewModel,u,n,1));o[r]=zv.fromViewState(u)}return o},e._moveHalfLineRight=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=s.viewState.position.lineNumber,u=Math.round(e.viewModel.getLineContent(a).length/2);i[o]=zv.fromViewState(jw.moveRight(e.config,e.viewModel,s.viewState,n,u))}return i},e._moveDownByViewLines=function(e,t,n,i){for(var o=[],r=0,s=t.length;r<s;r++){var a=t[r];o[r]=zv.fromViewState(jw.moveDown(e.config,e.viewModel,a.viewState,n,i))}return o},e._moveDownByModelLines=function(e,t,n,i){for(var o=[],r=0,s=t.length;r<s;r++){var a=t[r];o[r]=zv.fromModelState(jw.moveDown(e.config,e.model,a.modelState,n,i))}return o},e._moveUpByViewLines=function(e,t,n,i){for(var o=[],r=0,s=t.length;r<s;r++){var a=t[r];o[r]=zv.fromViewState(jw.moveUp(e.config,e.viewModel,a.viewState,n,i))}return o},e._moveUpByModelLines=function(e,t,n,i){for(var o=[],r=0,s=t.length;r<s;r++){var a=t[r];o[r]=zv.fromModelState(jw.moveUp(e.config,e.model,a.modelState,n,i))}return o},e._moveToViewPosition=function(e,t,n,i,o){return zv.fromViewState(t.viewState.move(n,i,o,0))},e._moveToModelPosition=function(e,t,n,i,o){return zv.fromModelState(t.modelState.move(n,i,o,0))},e._moveToViewMinColumn=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=s.viewState.position.lineNumber,u=e.viewModel.getLineMinColumn(a);i[o]=this._moveToViewPosition(e,s,n,a,u)}return i},e._moveToViewFirstNonWhitespaceColumn=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=s.viewState.position.lineNumber,u=e.viewModel.getLineFirstNonWhitespaceColumn(a);i[o]=this._moveToViewPosition(e,s,n,a,u)}return i},e._moveToViewCenterColumn=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=s.viewState.position.lineNumber,u=Math.round((e.viewModel.getLineMaxColumn(a)+e.viewModel.getLineMinColumn(a))/2);i[o]=this._moveToViewPosition(e,s,n,a,u)}return i},e._moveToViewMaxColumn=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=s.viewState.position.lineNumber,u=e.viewModel.getLineMaxColumn(a);i[o]=this._moveToViewPosition(e,s,n,a,u)}return i},e._moveToViewLastNonWhitespaceColumn=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=s.viewState.position.lineNumber,u=e.viewModel.getLineLastNonWhitespaceColumn(a);i[o]=this._moveToViewPosition(e,s,n,a,u)}return i},e}();(Xw=Yw||(Yw={})).description={description:"Move cursor to a logical position in the view",args:[{name:"Cursor move argument object",description:"Property-value pairs that can be passed through this argument:\n\t\t\t\t\t* 'to': A mandatory logical position value providing where to move the cursor.\n\t\t\t\t\t\t```\n\t\t\t\t\t\t'left', 'right', 'up', 'down'\n\t\t\t\t\t\t'wrappedLineStart', 'wrappedLineEnd', 'wrappedLineColumnCenter'\n\t\t\t\t\t\t'wrappedLineFirstNonWhitespaceCharacter', 'wrappedLineLastNonWhitespaceCharacter'\n\t\t\t\t\t\t'viewPortTop', 'viewPortCenter', 'viewPortBottom', 'viewPortIfOutside'\n\t\t\t\t\t\t```\n\t\t\t\t\t* 'by': Unit to move. Default is computed based on 'to' value.\n\t\t\t\t\t\t```\n\t\t\t\t\t\t'line', 'wrappedLine', 'character', 'halfLine'\n\t\t\t\t\t\t```\n\t\t\t\t\t* 'value': Number of units to move. Default is '1'.\n\t\t\t\t\t* 'select': If 'true' makes the selection. Default is 'false'.\n\t\t\t\t",constraint:function(e){if(!Fs(e))return!1;var t=e;return!(!As(t.to)||!Bs(t.select)&&!Vs(t.select)||!Bs(t.by)&&!As(t.by)||!Bs(t.value)&&!Ws(t.value))},schema:{type:"object",required:["to"],properties:{to:{type:"string",enum:["left","right","up","down","wrappedLineStart","wrappedLineEnd","wrappedLineColumnCenter","wrappedLineFirstNonWhitespaceCharacter","wrappedLineLastNonWhitespaceCharacter","viewPortTop","viewPortCenter","viewPortBottom","viewPortIfOutside"]},by:{type:"string",enum:["line","wrappedLine","character","halfLine"]},value:{type:"number",default:1},select:{type:"boolean",default:!1}}}}]},Xw.RawDirection={Left:"left",Right:"right",Up:"up",Down:"down",WrappedLineStart:"wrappedLineStart",WrappedLineFirstNonWhitespaceCharacter:"wrappedLineFirstNonWhitespaceCharacter",WrappedLineColumnCenter:"wrappedLineColumnCenter",WrappedLineEnd:"wrappedLineEnd",WrappedLineLastNonWhitespaceCharacter:"wrappedLineLastNonWhitespaceCharacter",ViewPortTop:"viewPortTop",ViewPortCenter:"viewPortCenter",ViewPortBottom:"viewPortBottom",ViewPortIfOutside:"viewPortIfOutside"},Xw.RawUnit={Line:"line",WrappedLine:"wrappedLine",Character:"character",HalfLine:"halfLine"},Xw.parse=function(e){if(!e.to)return null;var t;switch(e.to){case Xw.RawDirection.Left:t=0;break;case Xw.RawDirection.Right:t=1;break;case Xw.RawDirection.Up:t=2;break;case Xw.RawDirection.Down:t=3;break;case Xw.RawDirection.WrappedLineStart:t=4;break;case Xw.RawDirection.WrappedLineFirstNonWhitespaceCharacter:t=5;break;case Xw.RawDirection.WrappedLineColumnCenter:t=6;break;case Xw.RawDirection.WrappedLineEnd:t=7;break;case Xw.RawDirection.WrappedLineLastNonWhitespaceCharacter:t=8;break;case Xw.RawDirection.ViewPortTop:t=9;break;case Xw.RawDirection.ViewPortBottom:t=11;break;case Xw.RawDirection.ViewPortCenter:t=10;break;case Xw.RawDirection.ViewPortIfOutside:t=12;break;default:return null}var n=0;switch(e.by){case Xw.RawUnit.Line:n=1;break;case Xw.RawUnit.WrappedLine:n=2;break;case Xw.RawUnit.Character:n=3;break;case Xw.RawUnit.HalfLine:n=4}return{direction:t,unit:n,select:!!e.select,value:e.value||1}};var Qw=Object.create(null);function Jw(e,t){Qw[e]||(Qw[e]=["",e]);for(var n=Qw[e],i=n.length;i<=t;i++)n[i]=n[i-1]+e;return n[t]}var eC,tC,nC=function(){function e(e,t){this._opts=t,this._selection=e,this._selectionId=null,this._useLastEditRangeForCursorEndPosition=!1,this._selectionStartColumnStaysPut=!1}return e.unshiftIndent=function(e,t,n,i,o){var r=Uv.visibleColumnFromColumn(e,t,n);if(o){var s=Jw(" ",i);return Jw(s,Uv.prevIndentTabStop(r,i)/i)}return Jw(s="\t",Uv.prevRenderTabStop(r,n)/n)},e.shiftIndent=function(e,t,n,i,o){var r=Uv.visibleColumnFromColumn(e,t,n);if(o){var s=Jw(" ",i);return Jw(s,Uv.nextIndentTabStop(r,i)/i)}return Jw(s="\t",Uv.nextRenderTabStop(r,n)/n)},e.prototype._addEditOperation=function(e,t,n){this._useLastEditRangeForCursorEndPosition?e.addTrackedEditOperation(t,n):e.addEditOperation(t,n)},e.prototype.getEditOperations=function(t,n){var i=this._selection.startLineNumber,o=this._selection.endLineNumber;1===this._selection.endColumn&&i!==o&&(o-=1);var r=this._opts,s=r.tabSize,a=r.indentSize,u=r.insertSpaces,l=i===o;if(this._selection.isEmpty()&&/^\s*$/.test(t.getLineContent(i))&&(this._useLastEditRangeForCursorEndPosition=!0),this._opts.useTabStops)for(var c=0,d=0,h=i;h<=o;h++,c=d){d=0;var p=wr(y=t.getLineContent(h));if((!this._opts.isUnshift||0!==y.length&&0!==p)&&(l||this._opts.isUnshift||0!==y.length)){if(-1===p&&(p=y.length),h>1)if(Uv.visibleColumnFromColumn(y,p+1,s)%a!=0&&t.isCheapToTokenize(h-1)){var f=Ol.getEnterAction(this._opts.autoIndent,t,new wn(h-1,t.getLineMaxColumn(h-1),h-1,t.getLineMaxColumn(h-1)));if(f){if(d=c,f.appendText)for(var g=0,m=f.appendText.length;g<m&&d<a&&32===f.appendText.charCodeAt(g);g++)d++;f.removeText&&(d=Math.max(0,d-f.removeText));for(g=0;g<d&&(0!==p&&32===y.charCodeAt(p-1));g++)p--}}if(!this._opts.isUnshift||0!==p){var v=void 0;v=this._opts.isUnshift?e.unshiftIndent(y,p+1,s,a,u):e.shiftIndent(y,p+1,s,a,u),this._addEditOperation(n,new wn(h,1,h,p+1),v),h!==i||this._selection.isEmpty()||(this._selectionStartColumnStaysPut=this._selection.startColumn<=p+1)}}}else{var _=u?Jw(" ",a):"\t";for(h=i;h<=o;h++){var y;p=wr(y=t.getLineContent(h));if((!this._opts.isUnshift||0!==y.length&&0!==p)&&((l||this._opts.isUnshift||0!==y.length)&&(-1===p&&(p=y.length),!this._opts.isUnshift||0!==p)))if(this._opts.isUnshift){p=Math.min(p,a);for(var b=0;b<p;b++){if(9===y.charCodeAt(b)){p=b+1;break}}this._addEditOperation(n,new wn(h,1,h,p+1),"")}else this._addEditOperation(n,new wn(h,1,h,1),_),h!==i||this._selection.isEmpty()||(this._selectionStartColumnStaysPut=1===this._selection.startColumn)}}this._selectionId=n.trackSelection(this._selection)},e.prototype.computeCursorState=function(e,t){if(this._useLastEditRangeForCursorEndPosition){var n=t.getInverseEditOperations()[0];return new Sn(n.range.endLineNumber,n.range.endColumn,n.range.endLineNumber,n.range.endColumn)}var i=t.getTrackedSelection(this._selectionId);if(this._selectionStartColumnStaysPut){var o=this._selection.startColumn;return i.startColumn<=o?i:0===i.getDirection()?new Sn(i.startLineNumber,o,i.endLineNumber,i.endColumn):new Sn(i.endLineNumber,i.endColumn,i.startLineNumber,o)}return i},e}(),iC=function(){function e(e,t,n){this._range=e,this._charBeforeSelection=t,this._charAfterSelection=n}return e.prototype.getEditOperations=function(e,t){t.addTrackedEditOperation(new wn(this._range.startLineNumber,this._range.startColumn,this._range.startLineNumber,this._range.startColumn),this._charBeforeSelection),t.addTrackedEditOperation(new wn(this._range.endLineNumber,this._range.endColumn,this._range.endLineNumber,this._range.endColumn),this._charAfterSelection)},e.prototype.computeCursorState=function(e,t){var n=t.getInverseEditOperations(),i=n[0].range,o=n[1].range;return new Sn(i.endLineNumber,i.endColumn,o.endLineNumber,o.endColumn-this._charAfterSelection.length)},e}(),oC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),rC=function(){function e(){}return e.indent=function(e,t,n){if(null===t||null===n)return[];for(var i=[],o=0,r=n.length;o<r;o++)i[o]=new nC(n[o],{isUnshift:!1,tabSize:e.tabSize,indentSize:e.indentSize,insertSpaces:e.insertSpaces,useTabStops:e.useTabStops,autoIndent:e.autoIndent});return i},e.outdent=function(e,t,n){for(var i=[],o=0,r=n.length;o<r;o++)i[o]=new nC(n[o],{isUnshift:!0,tabSize:e.tabSize,indentSize:e.indentSize,insertSpaces:e.insertSpaces,useTabStops:e.useTabStops,autoIndent:e.autoIndent});return i},e.shiftIndent=function(e,t,n){return n=n||1,nC.shiftIndent(t,t.length+n,e.tabSize,e.indentSize,e.insertSpaces)},e.unshiftIndent=function(e,t,n){return n=n||1,nC.unshiftIndent(t,t.length+n,e.tabSize,e.indentSize,e.insertSpaces)},e._distributedPaste=function(e,t,n,i){for(var o=[],r=0,s=n.length;r<s;r++)o[r]=new Fw(n[r],i[r]);return new jv(0,o,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})},e._simplePaste=function(e,t,n,i,o){for(var r=[],s=0,a=n.length;s<a;s++){var u=n[s],l=u.getPosition();if(o&&!u.isEmpty()&&(o=!1),o&&i.indexOf("\n")!==i.length-1&&(o=!1),o){var c=new wn(l.lineNumber,1,l.lineNumber,1);r[s]=new Hw(c,i,u,!0)}else r[s]=new Fw(u,i)}return new jv(0,r,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})},e._distributePasteToCursors=function(e,t,n,i,o){if(i)return null;if(1===t.length)return null;if(o&&o.length===t.length)return o;if("spread"===e.multiCursorPaste){10===n.charCodeAt(n.length-1)&&(n=n.substr(0,n.length-1)),13===n.charCodeAt(n.length-1)&&(n=n.substr(0,n.length-1));var r=n.split(/\r\n|\r|\n/);if(r.length===t.length)return r}return null},e.paste=function(e,t,n,i,o,r){var s=this._distributePasteToCursors(e,n,i,o,r);return s?(n=n.sort(wn.compareRangesUsingStarts),this._distributedPaste(e,t,n,s)):this._simplePaste(e,t,n,i,o)},e._goodIndentForLine=function(t,n,i){var o=null,r="",s=Ol.getInheritIndentForLine(t.autoIndent,n,i,!1);if(s)o=s.action,r=s.indentation;else if(i>1){var a=void 0;for(a=i-1;a>=1;a--){if(Sr(n.getLineContent(a))>=0)break}if(a<1)return null;var u=n.getLineMaxColumn(a),l=Ol.getEnterAction(t.autoIndent,n,new wn(a,u,a,u));l&&(r=l.indentation+l.appendText)}return o&&(o===al.Indent&&(r=e.shiftIndent(t,r)),o===al.Outdent&&(r=e.unshiftIndent(t,r)),r=t.normalizeIndentation(r)),r||null},e._replaceJumpToNextIndent=function(e,t,n,i){var o="",r=n.getStartPosition();if(e.insertSpaces)for(var s=Uv.visibleColumnFromColumn2(e,t,r),a=e.indentSize,u=a-s%a,l=0;l<u;l++)o+=" ";else o="\t";return new Fw(n,o,i)},e.tab=function(e,t,n){for(var i=[],o=0,r=n.length;o<r;o++){var s=n[o];if(s.isEmpty()){var a=t.getLineContent(s.startLineNumber);if(/^\s*$/.test(a)&&t.isCheapToTokenize(s.startLineNumber)){var u=this._goodIndentForLine(e,t,s.startLineNumber);u=u||"\t";var l=e.normalizeIndentation(u);if(!vr(a,l)){i[o]=new Fw(new wn(s.startLineNumber,1,s.startLineNumber,a.length+1),l,!0);continue}}i[o]=this._replaceJumpToNextIndent(e,t,s,!0)}else{if(s.startLineNumber===s.endLineNumber){var c=t.getLineMaxColumn(s.startLineNumber);if(1!==s.startColumn||s.endColumn!==c){i[o]=this._replaceJumpToNextIndent(e,t,s,!1);continue}}i[o]=new nC(s,{isUnshift:!1,tabSize:e.tabSize,indentSize:e.indentSize,insertSpaces:e.insertSpaces,useTabStops:e.useTabStops,autoIndent:e.autoIndent})}}return i},e.replacePreviousChar=function(e,t,n,i,o,r){for(var s=[],a=0,u=i.length;a<u;a++){var l=i[a];if(l.isEmpty()){var c=l.getPosition(),d=Math.max(1,c.column-r),h=new wn(c.lineNumber,d,c.lineNumber,c.column);s[a]=new Fw(h,o)}else s[a]=null}return new jv(1,s,{shouldPushStackElementBefore:1!==e,shouldPushStackElementAfter:!1})},e._typeCommand=function(e,t,n){return n?new Vw(e,t,!0):new Fw(e,t,!0)},e._enter=function(t,n,i,o){if(0===t.autoIndent)return e._typeCommand(o,"\n",i);if(!n.isCheapToTokenize(o.getStartPosition().lineNumber)||1===t.autoIndent){var r=Cr(n.getLineContent(o.startLineNumber)).substring(0,o.startColumn-1);return e._typeCommand(o,"\n"+t.normalizeIndentation(r),i)}var s=Ol.getEnterAction(t.autoIndent,n,o);if(s){if(s.indentAction===al.None)return e._typeCommand(o,"\n"+t.normalizeIndentation(s.indentation+s.appendText),i);if(s.indentAction===al.Indent)return e._typeCommand(o,"\n"+t.normalizeIndentation(s.indentation+s.appendText),i);if(s.indentAction===al.IndentOutdent){var a=t.normalizeIndentation(s.indentation),u=t.normalizeIndentation(s.indentation+s.appendText),l="\n"+u+"\n"+a;return i?new Vw(o,l,!0):new Bw(o,l,-1,u.length-a.length,!0)}if(s.indentAction===al.Outdent){var c=e.unshiftIndent(t,s.indentation);return e._typeCommand(o,"\n"+t.normalizeIndentation(c+s.appendText),i)}}var d=n.getLineContent(o.startLineNumber),h=Cr(d).substring(0,o.startColumn-1);if(t.autoIndent>=4){var p=Ol.getIndentForEnter(t.autoIndent,n,o,{unshiftIndent:function(n){return e.unshiftIndent(t,n)},shiftIndent:function(n){return e.shiftIndent(t,n)},normalizeIndentation:function(e){return t.normalizeIndentation(e)}});if(p){var f=Uv.visibleColumnFromColumn2(t,n,o.getEndPosition()),g=o.endColumn,m="\n";h!==t.normalizeIndentation(p.beforeEnter)&&(m=t.normalizeIndentation(p.beforeEnter)+d.substring(h.length,o.startColumn-1)+"\n",o=new wn(o.startLineNumber,1,o.endLineNumber,o.endColumn));var v=wr(n.getLineContent(o.endLineNumber));if(o=v>=0?o.setEndPosition(o.endLineNumber,Math.max(o.endColumn,v+1)):o.setEndPosition(o.endLineNumber,n.getLineMaxColumn(o.endLineNumber)),i)return new Vw(o,m+t.normalizeIndentation(p.afterEnter),!0);var _=0;return g<=v+1&&(t.insertSpaces||(f=Math.ceil(f/t.indentSize)),_=Math.min(f+1-t.normalizeIndentation(p.afterEnter).length-1,0)),new Bw(o,m+t.normalizeIndentation(p.afterEnter),0,_,!0)}}return e._typeCommand(o,"\n"+t.normalizeIndentation(h),i)},e._isAutoIndentType=function(e,t,n){if(e.autoIndent<4)return!1;for(var i=0,o=n.length;i<o;i++)if(!t.isCheapToTokenize(n[i].getEndPosition().lineNumber))return!1;return!0},e._runAutoIndentType=function(t,n,i,o){var r=Ol.getIndentationAtPosition(n,i.startLineNumber,i.startColumn),s=Ol.getIndentActionForType(t.autoIndent,n,i,o,{shiftIndent:function(n){return e.shiftIndent(t,n)},unshiftIndent:function(n){return e.unshiftIndent(t,n)}});if(null===s)return null;if(s!==t.normalizeIndentation(r)){var a=n.getLineFirstNonWhitespaceColumn(i.startLineNumber);return 0===a?e._typeCommand(new wn(i.startLineNumber,0,i.endLineNumber,i.endColumn),t.normalizeIndentation(s)+o,!1):e._typeCommand(new wn(i.startLineNumber,0,i.endLineNumber,i.endColumn),t.normalizeIndentation(s)+n.getLineContent(i.startLineNumber).substring(a-1,i.startColumn-1)+o,!1)}return null},e._isAutoClosingOvertype=function(e,t,n,i,o){if("never"===e.autoClosingOvertype)return!1;if(!e.autoClosingPairsClose2.has(o))return!1;for(var r=0,s=n.length;r<s;r++){var a=n[r];if(!a.isEmpty())return!1;var u=a.getPosition(),l=t.getLineContent(u.lineNumber);if(l.charAt(u.column-1)!==o)return!1;var c=Kv(o);if(92===(u.column>2?l.charCodeAt(u.column-2):0)&&c)return!1;if("auto"===e.autoClosingOvertype){for(var d=!1,h=0,p=i.length;h<p;h++){var f=i[h];if(u.lineNumber===f.startLineNumber&&u.column===f.startColumn){d=!0;break}}if(!d)return!1}}return!0},e._runAutoClosingOvertype=function(e,t,n,i,o){for(var r=[],s=0,a=i.length;s<a;s++){var u=i[s].getPosition(),l=new wn(u.lineNumber,u.column,u.lineNumber,u.column+1);r[s]=new Fw(l,o)}return new jv(1,r,{shouldPushStackElementBefore:1!==e,shouldPushStackElementAfter:!1})},e._autoClosingPairIsSymmetric=function(e){var t=e.open,n=e.close;return t.indexOf(n)>=0||n.indexOf(t)>=0},e._isBeforeClosingBrace=function(t,n,i){var o=t.autoClosingPairsClose2.get(i);if(!o)return!1;for(var r=e._autoClosingPairIsSymmetric(n),s=0,a=o;s<a.length;s++){var u=a[s],l=e._autoClosingPairIsSymmetric(u);if(r||!l)return!0}return!1},e._findAutoClosingPairOpen=function(e,t,n,i){var o=e.autoClosingPairsOpen2.get(i);if(!o)return null;for(var r=null,s=0,a=o;s<a.length;s++){var u=a[s];if(null===r||u.open.length>r.open.length){for(var l=!0,c=0,d=n;c<d.length;c++){var h=d[c];if(t.getValueInRange(new wn(h.lineNumber,h.column-u.open.length+1,h.lineNumber,h.column))+i!==u.open){l=!1;break}}l&&(r=u)}}return r},e._isAutoClosingOpenCharType=function(t,n,i,o,r){var s=Kv(o),a=s?t.autoClosingQuotes:t.autoClosingBrackets;if("never"===a)return null;var u=this._findAutoClosingPairOpen(t,n,i.map((function(e){return e.getPosition()})),o);if(!u)return null;for(var l=s?t.shouldAutoCloseBefore.quote:t.shouldAutoCloseBefore.bracket,c=0,d=i.length;c<d;c++){var h=i[c];if(!h.isEmpty())return null;var p=h.getPosition(),f=n.getLineContent(p.lineNumber);if(f.length>p.column-1){var g=f.charAt(p.column-1);if(!e._isBeforeClosingBrace(t,u,g)&&!l(g))return null}if(!n.isCheapToTokenize(p.lineNumber))return null;if(1===u.open.length&&s&&"always"!==a){var m=Dm(t.wordSeparators);if(r&&p.column>1&&0===m.get(f.charCodeAt(p.column-2)))return null;if(!r&&p.column>2&&0===m.get(f.charCodeAt(p.column-3)))return null}n.forceTokenization(p.lineNumber);var v=n.getLineTokens(p.lineNumber),_=!1;try{_=Ol.shouldAutoClosePair(u,v,r?p.column:p.column-1)}catch(e){De(e)}if(!_)return null}return u},e._runAutoClosingOpenCharType=function(e,t,n,i,o,r,s){for(var a=[],u=0,l=i.length;u<l;u++){var c=i[u];a[u]=new sC(c,o,r,s.close)}return new jv(1,a,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})},e._shouldSurroundChar=function(e,t){return Kv(t)?"quotes"===e.autoSurround||"languageDefined"===e.autoSurround:"brackets"===e.autoSurround||"languageDefined"===e.autoSurround},e._isSurroundSelectionType=function(t,n,i,o){if(!e._shouldSurroundChar(t,o)||!t.surroundingPairs.hasOwnProperty(o))return!1;for(var r=Kv(o),s=0,a=i.length;s<a;s++){var u=i[s];if(u.isEmpty())return!1;for(var l=!0,c=u.startLineNumber;c<=u.endLineNumber;c++){var d=n.getLineContent(c),h=c===u.startLineNumber?u.startColumn-1:0,p=c===u.endLineNumber?u.endColumn-1:d.length,f=d.substring(h,p);if(/[^ \t]/.test(f)){l=!1;break}}if(l)return!1;if(r&&u.startLineNumber===u.endLineNumber&&u.startColumn+1===u.endColumn)if(Kv(n.getValueInRange(u)))return!1}return!0},e._runSurroundSelectionType=function(e,t,n,i,o){for(var r=[],s=0,a=i.length;s<a;s++){var u=i[s],l=t.surroundingPairs[o];r[s]=new iC(u,o,l)}return new jv(0,r,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})},e._isTypeInterceptorElectricChar=function(e,t,n){return!(1!==n.length||!t.isCheapToTokenize(n[0].getEndPosition().lineNumber))},e._typeInterceptorElectricChar=function(e,t,n,i,o){if(!t.electricChars.hasOwnProperty(o)||!i.isEmpty())return null;var r=i.getPosition();n.forceTokenization(r.lineNumber);var s,a=n.getLineTokens(r.lineNumber);try{s=Ol.onElectricCharacter(o,a,r.column)}catch(e){return De(e),null}if(!s)return null;if(s.matchOpenBracket){var u=(a.getLineContent()+o).lastIndexOf(s.matchOpenBracket)+1,l=n.findMatchingBracketUp(s.matchOpenBracket,{lineNumber:r.lineNumber,column:u});if(l){if(l.startLineNumber===r.lineNumber)return null;var c=Cr(n.getLineContent(l.startLineNumber)),d=t.normalizeIndentation(c),h=n.getLineContent(r.lineNumber),p=n.getLineFirstNonWhitespaceColumn(r.lineNumber)||r.column,f=d+h.substring(p-1,r.column-1)+o,g=new wn(r.lineNumber,1,r.lineNumber,r.column),m=new Fw(g,f);return new jv(1,[m],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!0})}}return null},e.compositionEndWithInterceptors=function(e,t,n,i,o,r){if(!i||Sn.selectionsArrEqual(i,o))return null;for(var s=null,a=0,u=o;a<u.length;a++){var l=u[a];if(!l.isEmpty())return null;var c=l.getPosition(),d=n.getValueInRange(new wn(c.lineNumber,c.column-1,c.lineNumber,c.column));if(null===s)s=d;else if(s!==d)return null}if(!s)return null;if(this._isAutoClosingOvertype(t,n,o,r,s)){var h=o.map((function(e){return new Fw(new wn(e.positionLineNumber,e.positionColumn,e.positionLineNumber,e.positionColumn+1),"",!1)}));return new jv(1,h,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}var p=this._isAutoClosingOpenCharType(t,n,o,s,!1);return p?this._runAutoClosingOpenCharType(e,t,n,o,s,!1,p):null},e.typeWithInterceptors=function(t,n,i,o,r,s){if("\n"===s){for(var a=[],u=0,l=o.length;u<l;u++)a[u]=e._enter(n,i,!1,o[u]);return new jv(1,a,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}if(this._isAutoIndentType(n,i,o)){var c=[],d=!1;for(u=0,l=o.length;u<l;u++)if(c[u]=this._runAutoIndentType(n,i,o[u],s),!c[u]){d=!0;break}if(!d)return new jv(1,c,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}if(this._isAutoClosingOvertype(n,i,o,r,s))return this._runAutoClosingOvertype(t,n,i,o,s);var h=this._isAutoClosingOpenCharType(n,i,o,s,!0);if(h)return this._runAutoClosingOpenCharType(t,n,i,o,s,!0,h);if(this._isSurroundSelectionType(n,i,o,s))return this._runSurroundSelectionType(t,n,i,o,s);if(this._isTypeInterceptorElectricChar(n,i,o)){var p=this._typeInterceptorElectricChar(t,n,i,o[0],s);if(p)return p}var f=[];for(u=0,l=o.length;u<l;u++)f[u]=new Fw(o[u],s);var g=1!==t;return" "===s&&(g=!0),new jv(1,f,{shouldPushStackElementBefore:g,shouldPushStackElementAfter:!1})},e.typeWithoutInterceptors=function(e,t,n,i,o){for(var r=[],s=0,a=i.length;s<a;s++)r[s]=new Fw(i[s],o);return new jv(1,r,{shouldPushStackElementBefore:1!==e,shouldPushStackElementAfter:!1})},e.lineInsertBefore=function(e,t,n){if(null===t||null===n)return[];for(var i=[],o=0,r=n.length;o<r;o++){var s=n[o].positionLineNumber;if(1===s)i[o]=new Vw(new wn(1,1,1,1),"\n");else{s--;var a=t.getLineMaxColumn(s);i[o]=this._enter(e,t,!1,new wn(s,a,s,a))}}return i},e.lineInsertAfter=function(e,t,n){if(null===t||null===n)return[];for(var i=[],o=0,r=n.length;o<r;o++){var s=n[o].positionLineNumber,a=t.getLineMaxColumn(s);i[o]=this._enter(e,t,!1,new wn(s,a,s,a))}return i},e.lineBreakInsert=function(e,t,n){for(var i=[],o=0,r=n.length;o<r;o++)i[o]=this._enter(e,t,!0,n[o]);return i},e}(),sC=function(e){function t(t,n,i,o){var r=e.call(this,t,(i?n:"")+o,0,-o.length)||this;return r._openCharacter=n,r._closeCharacter=o,r.closeCharacterRange=null,r.enclosingRange=null,r}return oC(t,e),t.prototype.computeCursorState=function(t,n){var i=n.getInverseEditOperations()[0].range;return this.closeCharacterRange=new wn(i.startLineNumber,i.endColumn-this._closeCharacter.length,i.endLineNumber,i.endColumn),this.enclosingRange=new wn(i.startLineNumber,i.endColumn-this._openCharacter.length-this._closeCharacter.length,i.endLineNumber,i.endColumn),e.prototype.computeCursorState.call(this,t,n)},t}(Bw);(tC=eC||(eC={})).editorSimpleInput=new Kh("editorSimpleInput",!1),tC.editorTextFocus=new Kh("editorTextFocus",!1),tC.focus=new Kh("editorFocus",!1),tC.textInputFocus=new Kh("textInputFocus",!1),tC.readOnly=new Kh("editorReadonly",!1),tC.writable=tC.readOnly.toNegated(),tC.hasNonEmptySelection=new Kh("editorHasSelection",!1),tC.hasOnlyEmptySelection=tC.hasNonEmptySelection.toNegated(),tC.hasMultipleSelections=new Kh("editorHasMultipleSelections",!1),tC.hasSingleSelection=tC.hasMultipleSelections.toNegated(),tC.tabMovesFocus=new Kh("editorTabMovesFocus",!1),tC.tabDoesNotMoveFocus=tC.tabMovesFocus.toNegated(),tC.isInEmbeddedEditor=new Kh("isInEmbeddedEditor",!1),tC.canUndo=new Kh("canUndo",!1),tC.canRedo=new Kh("canRedo",!1),tC.languageId=new Kh("editorLangId",""),tC.hasCompletionItemProvider=new Kh("editorHasCompletionItemProvider",!1),tC.hasCodeActionsProvider=new Kh("editorHasCodeActionsProvider",!1),tC.hasCodeLensProvider=new Kh("editorHasCodeLensProvider",!1),tC.hasDefinitionProvider=new Kh("editorHasDefinitionProvider",!1),tC.hasDeclarationProvider=new Kh("editorHasDeclarationProvider",!1),tC.hasImplementationProvider=new Kh("editorHasImplementationProvider",!1),tC.hasTypeDefinitionProvider=new Kh("editorHasTypeDefinitionProvider",!1),tC.hasHoverProvider=new Kh("editorHasHoverProvider",!1),tC.hasDocumentHighlightProvider=new Kh("editorHasDocumentHighlightProvider",!1),tC.hasDocumentSymbolProvider=new Kh("editorHasDocumentSymbolProvider",!1),tC.hasReferenceProvider=new Kh("editorHasReferenceProvider",!1),tC.hasRenameProvider=new Kh("editorHasRenameProvider",!1),tC.hasSignatureHelpProvider=new Kh("editorHasSignatureHelpProvider",!1),tC.hasDocumentFormattingProvider=new Kh("editorHasDocumentFormattingProvider",!1),tC.hasDocumentSelectionFormattingProvider=new Kh("editorHasDocumentSelectionFormattingProvider",!1),tC.hasMultipleDocumentFormattingProvider=new Kh("editorHasMultipleDocumentFormattingProvider",!1),tC.hasMultipleDocumentSelectionFormattingProvider=new Kh("editorHasMultipleDocumentSelectionFormattingProvider",!1);var aC,uC,lC,cC,dC,hC,pC,fC,gC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),mC=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return gC(t,e),t.prototype.runEditorCommand=function(e,t,n){var i=t._getCursors();i&&this.runCoreEditorCommand(i,n||{})},t}(Nf);function vC(e){e.register()}(uC=aC||(aC={})).description={description:"Scroll editor in the given direction",args:[{name:"Editor scroll argument object",description:"Property-value pairs that can be passed through this argument:\n\t\t\t\t\t* 'to': A mandatory direction value.\n\t\t\t\t\t\t```\n\t\t\t\t\t\t'up', 'down'\n\t\t\t\t\t\t```\n\t\t\t\t\t* 'by': Unit to move. Default is computed based on 'to' value.\n\t\t\t\t\t\t```\n\t\t\t\t\t\t'line', 'wrappedLine', 'page', 'halfPage'\n\t\t\t\t\t\t```\n\t\t\t\t\t* 'value': Number of units to move. Default is '1'.\n\t\t\t\t\t* 'revealCursor': If 'true' reveals the cursor if it is outside view port.\n\t\t\t\t",constraint:function(e){if(!Fs(e))return!1;var t=e;return!(!As(t.to)||!Bs(t.by)&&!As(t.by)||!Bs(t.value)&&!Ws(t.value)||!Bs(t.revealCursor)&&!Vs(t.revealCursor))},schema:{type:"object",required:["to"],properties:{to:{type:"string",enum:["up","down"]},by:{type:"string",enum:["line","wrappedLine","page","halfPage"]},value:{type:"number",default:1},revealCursor:{type:"boolean"}}}}]},uC.RawDirection={Up:"up",Down:"down"},uC.RawUnit={Line:"line",WrappedLine:"wrappedLine",Page:"page",HalfPage:"halfPage"},uC.parse=function(e){var t,n;switch(e.to){case uC.RawDirection.Up:t=1;break;case uC.RawDirection.Down:t=2;break;default:return null}switch(e.by){case uC.RawUnit.Line:n=1;break;case uC.RawUnit.WrappedLine:n=2;break;case uC.RawUnit.Page:n=3;break;case uC.RawUnit.HalfPage:n=4;break;default:n=2}return{direction:t,unit:n,value:Math.floor(e.value||1),revealCursor:!!e.revealCursor,select:!!e.select}},(cC=lC||(lC={})).description={description:"Reveal the given line at the given logical position",args:[{name:"Reveal line argument object",description:"Property-value pairs that can be passed through this argument:\n\t\t\t\t\t* 'lineNumber': A mandatory line number value.\n\t\t\t\t\t* 'at': Logical position at which line has to be revealed .\n\t\t\t\t\t\t```\n\t\t\t\t\t\t'top', 'center', 'bottom'\n\t\t\t\t\t\t```\n\t\t\t\t",constraint:function(e){if(!Fs(e))return!1;var t=e;return!(!Ws(t.lineNumber)||!Bs(t.at)&&!As(t.at))},schema:{type:"object",required:["lineNumber"],properties:{lineNumber:{type:"number"},at:{type:"string",enum:["top","center","bottom"]}}}}]},cC.RawAtArgument={Top:"top",Center:"center",Bottom:"bottom"},function(e){var t=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,[$w.moveTo(e.context,e.getPrimaryCursor(),this._inSelectionMode,t.position,t.viewPosition)]),e.reveal(t.source,!0,0,0)},t}(mC);e.MoveTo=Mf(new t({id:"_moveTo",inSelectionMode:!1,precondition:void 0})),e.MoveToSelect=Mf(new t({id:"_moveToSelect",inSelectionMode:!0,precondition:void 0}));var n=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement();var n=this._getColumnSelectResult(e.context,e.getPrimaryCursor(),e.getColumnSelectData(),t);e.setStates(t.source,3,n.viewStates.map((function(e){return zv.fromViewState(e)}))),e.setColumnSelectData({isReal:!0,fromViewLineNumber:n.fromLineNumber,fromViewVisualColumn:n.fromVisualColumn,toViewLineNumber:n.toLineNumber,toViewVisualColumn:n.toVisualColumn}),e.reveal(t.source,!0,n.reversed?1:2,0)},t}(mC);e.ColumnSelect=Mf(new(function(e){function t(){return e.call(this,{id:"columnSelect",precondition:void 0})||this}return gC(t,e),t.prototype._getColumnSelectResult=function(e,t,n,i){var o=e.model.validatePosition(i.position),r=e.validateViewPosition(new bn(i.viewPosition.lineNumber,i.viewPosition.column),o),s=i.doColumnSelect?n.fromViewLineNumber:r.lineNumber,a=i.doColumnSelect?n.fromViewVisualColumn:i.mouseColumn-1;return Aw.columnSelect(e.config,e.viewModel,s,a,r.lineNumber,i.mouseColumn-1)},t}(n))),e.CursorColumnSelectLeft=Mf(new(function(e){function t(){return e.call(this,{id:"cursorColumnSelectLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:3599,linux:{primary:0}}})||this}return gC(t,e),t.prototype._getColumnSelectResult=function(e,t,n,i){return Aw.columnSelectLeft(e.config,e.viewModel,n)},t}(n))),e.CursorColumnSelectRight=Mf(new(function(e){function t(){return e.call(this,{id:"cursorColumnSelectRight",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:3601,linux:{primary:0}}})||this}return gC(t,e),t.prototype._getColumnSelectResult=function(e,t,n,i){return Aw.columnSelectRight(e.config,e.viewModel,n)},t}(n)));var i=function(e){function t(t){var n=e.call(this,t)||this;return n._isPaged=t.isPaged,n}return gC(t,e),t.prototype._getColumnSelectResult=function(e,t,n,i){return Aw.columnSelectUp(e.config,e.viewModel,n,this._isPaged)},t}(n);e.CursorColumnSelectUp=Mf(new i({isPaged:!1,id:"cursorColumnSelectUp",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:3600,linux:{primary:0}}})),e.CursorColumnSelectPageUp=Mf(new i({isPaged:!0,id:"cursorColumnSelectPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:3595,linux:{primary:0}}}));var o=function(e){function t(t){var n=e.call(this,t)||this;return n._isPaged=t.isPaged,n}return gC(t,e),t.prototype._getColumnSelectResult=function(e,t,n,i){return Aw.columnSelectDown(e.config,e.viewModel,n,this._isPaged)},t}(n);e.CursorColumnSelectDown=Mf(new o({isPaged:!1,id:"cursorColumnSelectDown",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:3602,linux:{primary:0}}})),e.CursorColumnSelectPageDown=Mf(new o({isPaged:!0,id:"cursorColumnSelectPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:3596,linux:{primary:0}}}));var r=function(e){function t(){return e.call(this,{id:"cursorMove",precondition:void 0,description:Yw.description})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){var n=Yw.parse(t);n&&this._runCursorMove(e,t.source,n)},t.prototype._runCursorMove=function(e,t,n){e.context.model.pushStackElement(),e.setStates(t,3,$w.move(e.context,e.getAll(),n)),e.reveal(t,!0,0,0)},t}(mC);e.CursorMoveImpl=r,e.CursorMove=Mf(new r);var s=function(t){function n(e){var n=t.call(this,e)||this;return n._staticArgs=e.args,n}return gC(n,t),n.prototype.runCoreEditorCommand=function(t,n){var i=this._staticArgs;-1===this._staticArgs.value&&(i={direction:this._staticArgs.direction,unit:this._staticArgs.unit,select:this._staticArgs.select,value:t.context.config.pageSize}),e.CursorMove._runCursorMove(t,n.source,i)},n}(mC);e.CursorLeft=Mf(new s({args:{direction:0,unit:0,select:!1,value:1},id:"cursorLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:15,mac:{primary:15,secondary:[288]}}})),e.CursorLeftSelect=Mf(new s({args:{direction:0,unit:0,select:!0,value:1},id:"cursorLeftSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1039}})),e.CursorRight=Mf(new s({args:{direction:1,unit:0,select:!1,value:1},id:"cursorRight",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:17,mac:{primary:17,secondary:[292]}}})),e.CursorRightSelect=Mf(new s({args:{direction:1,unit:0,select:!0,value:1},id:"cursorRightSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1041}})),e.CursorUp=Mf(new s({args:{direction:2,unit:2,select:!1,value:1},id:"cursorUp",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:16,mac:{primary:16,secondary:[302]}}})),e.CursorUpSelect=Mf(new s({args:{direction:2,unit:2,select:!0,value:1},id:"cursorUpSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1040,secondary:[3088],mac:{primary:1040},linux:{primary:1040}}})),e.CursorPageUp=Mf(new s({args:{direction:2,unit:2,select:!1,value:-1},id:"cursorPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:11}})),e.CursorPageUpSelect=Mf(new s({args:{direction:2,unit:2,select:!0,value:-1},id:"cursorPageUpSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1035}})),e.CursorDown=Mf(new s({args:{direction:3,unit:2,select:!1,value:1},id:"cursorDown",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:18,mac:{primary:18,secondary:[300]}}})),e.CursorDownSelect=Mf(new s({args:{direction:3,unit:2,select:!0,value:1},id:"cursorDownSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1042,secondary:[3090],mac:{primary:1042},linux:{primary:1042}}})),e.CursorPageDown=Mf(new s({args:{direction:3,unit:2,select:!1,value:-1},id:"cursorPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:12}})),e.CursorPageDownSelect=Mf(new s({args:{direction:3,unit:2,select:!0,value:-1},id:"cursorPageDownSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1036}})),e.CreateCursor=Mf(new(function(e){function t(){return e.call(this,{id:"createCursor",precondition:void 0})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){var n,i=e.context;n=t.wholeLine?$w.line(i,e.getPrimaryCursor(),!1,t.position,t.viewPosition):$w.moveTo(i,e.getPrimaryCursor(),!1,t.position,t.viewPosition);var o=e.getAll();if(o.length>1)for(var r=n.modelState?n.modelState.position:null,s=n.viewState?n.viewState.position:null,a=0,u=o.length;a<u;a++){var l=o[a];if((!r||l.modelState.selection.containsPosition(r))&&(!s||l.viewState.selection.containsPosition(s)))return o.splice(a,1),e.context.model.pushStackElement(),void e.setStates(t.source,3,o)}o.push(n),e.context.model.pushStackElement(),e.setStates(t.source,3,o)},t}(mC))),e.LastCursorMoveToSelect=Mf(new(function(e){function t(){return e.call(this,{id:"_lastCursorMoveToSelect",precondition:void 0})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){var n=e.context,i=e.getLastAddedCursorIndex(),o=e.getAll(),r=o.slice(0);r[i]=$w.moveTo(n,o[i],!0,t.position,t.viewPosition),e.context.model.pushStackElement(),e.setStates(t.source,3,r)},t}(mC)));var a=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,$w.moveToBeginningOfLine(e.context,e.getAll(),this._inSelectionMode)),e.reveal(t.source,!0,0,0)},t}(mC);e.CursorHome=Mf(new a({inSelectionMode:!1,id:"cursorHome",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:14,mac:{primary:14,secondary:[2063]}}})),e.CursorHomeSelect=Mf(new a({inSelectionMode:!0,id:"cursorHomeSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1038,mac:{primary:1038,secondary:[3087]}}})),e.CursorLineStart=Mf(new(function(e){function t(){return e.call(this,{id:"cursorLineStart",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:0,mac:{primary:287}}})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,this._exec(e.context,e.getAll())),e.reveal(t.source,!0,0,0)},t.prototype._exec=function(e,t){for(var n=[],i=0,o=t.length;i<o;i++){var r=t[i],s=r.modelState.position.lineNumber;n[i]=zv.fromModelState(r.modelState.move(!1,s,1,0))}return n},t}(mC)));var u=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,$w.moveToEndOfLine(e.context,e.getAll(),this._inSelectionMode)),e.reveal(t.source,!0,0,0)},t}(mC);e.CursorEnd=Mf(new u({inSelectionMode:!1,id:"cursorEnd",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:13,mac:{primary:13,secondary:[2065]}}})),e.CursorEndSelect=Mf(new u({inSelectionMode:!0,id:"cursorEndSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1037,mac:{primary:1037,secondary:[3089]}}})),e.CursorLineEnd=Mf(new(function(e){function t(){return e.call(this,{id:"cursorLineEnd",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:0,mac:{primary:291}}})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,this._exec(e.context,e.getAll())),e.reveal(t.source,!0,0,0)},t.prototype._exec=function(e,t){for(var n=[],i=0,o=t.length;i<o;i++){var r=t[i],s=r.modelState.position.lineNumber,a=e.model.getLineMaxColumn(s);n[i]=zv.fromModelState(r.modelState.move(!1,s,a,0))}return n},t}(mC)));var l=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,$w.moveToBeginningOfBuffer(e.context,e.getAll(),this._inSelectionMode)),e.reveal(t.source,!0,0,0)},t}(mC);e.CursorTop=Mf(new l({inSelectionMode:!1,id:"cursorTop",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2062,mac:{primary:2064}}})),e.CursorTopSelect=Mf(new l({inSelectionMode:!0,id:"cursorTopSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:3086,mac:{primary:3088}}}));var c=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,$w.moveToEndOfBuffer(e.context,e.getAll(),this._inSelectionMode)),e.reveal(t.source,!0,0,0)},t}(mC);e.CursorBottom=Mf(new c({inSelectionMode:!1,id:"cursorBottom",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2061,mac:{primary:2066}}})),e.CursorBottomSelect=Mf(new c({inSelectionMode:!0,id:"cursorBottomSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:3085,mac:{primary:3090}}}));var d=function(e){function t(){return e.call(this,{id:"editorScroll",precondition:void 0,description:aC.description})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){var n=aC.parse(t);n&&this._runEditorScroll(e,t.source,n)},t.prototype._runEditorScroll=function(e,t,n){var i=this._computeDesiredScrollTop(e.context,n);if(n.revealCursor){var o=e.context.getCompletelyVisibleViewRangeAtScrollTop(i);e.setStates(t,3,[$w.findPositionInViewportIfOutside(e.context,e.getPrimaryCursor(),o,n.select)])}e.scrollTo(i)},t.prototype._computeDesiredScrollTop=function(e,t){if(1===t.unit){var n=e.getCompletelyVisibleModelRange(),i=void 0;i=1===t.direction?Math.max(1,n.startLineNumber-t.value):Math.min(e.model.getLineCount(),n.startLineNumber+t.value);var o=e.convertModelPositionToViewPosition(new bn(i,1));return e.getVerticalOffsetForViewLine(o.lineNumber)}var r;r=3===t.unit?e.config.pageSize*t.value:4===t.unit?Math.round(e.config.pageSize/2)*t.value:t.value;var s=(1===t.direction?-1:1)*r;return e.getCurrentScrollTop()+s*e.config.lineHeight},t}(mC);e.EditorScrollImpl=d,e.EditorScroll=Mf(new d),e.ScrollLineUp=Mf(new(function(t){function n(){return t.call(this,{id:"scrollLineUp",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2064,mac:{primary:267}}})||this}return gC(n,t),n.prototype.runCoreEditorCommand=function(t,n){e.EditorScroll._runEditorScroll(t,n.source,{direction:1,unit:2,value:1,revealCursor:!1,select:!1})},n}(mC))),e.ScrollPageUp=Mf(new(function(t){function n(){return t.call(this,{id:"scrollPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2059,win:{primary:523},linux:{primary:523}}})||this}return gC(n,t),n.prototype.runCoreEditorCommand=function(t,n){e.EditorScroll._runEditorScroll(t,n.source,{direction:1,unit:3,value:1,revealCursor:!1,select:!1})},n}(mC))),e.ScrollLineDown=Mf(new(function(t){function n(){return t.call(this,{id:"scrollLineDown",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2066,mac:{primary:268}}})||this}return gC(n,t),n.prototype.runCoreEditorCommand=function(t,n){e.EditorScroll._runEditorScroll(t,n.source,{direction:2,unit:2,value:1,revealCursor:!1,select:!1})},n}(mC))),e.ScrollPageDown=Mf(new(function(t){function n(){return t.call(this,{id:"scrollPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2060,win:{primary:524},linux:{primary:524}}})||this}return gC(n,t),n.prototype.runCoreEditorCommand=function(t,n){e.EditorScroll._runEditorScroll(t,n.source,{direction:2,unit:3,value:1,revealCursor:!1,select:!1})},n}(mC)));var h=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,[$w.word(e.context,e.getPrimaryCursor(),this._inSelectionMode,t.position)]),e.reveal(t.source,!0,0,0)},t}(mC);e.WordSelect=Mf(new h({inSelectionMode:!1,id:"_wordSelect",precondition:void 0})),e.WordSelectDrag=Mf(new h({inSelectionMode:!0,id:"_wordSelectDrag",precondition:void 0})),e.LastCursorWordSelect=Mf(new(function(e){function t(){return e.call(this,{id:"lastCursorWordSelect",precondition:void 0})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){var n=e.context,i=e.getLastAddedCursorIndex(),o=e.getAll(),r=o.slice(0),s=o[i];r[i]=$w.word(n,s,s.modelState.hasSelection(),t.position),n.model.pushStackElement(),e.setStates(t.source,3,r)},t}(mC)));var p=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,[$w.line(e.context,e.getPrimaryCursor(),this._inSelectionMode,t.position,t.viewPosition)]),e.reveal(t.source,!1,0,0)},t}(mC);e.LineSelect=Mf(new p({inSelectionMode:!1,id:"_lineSelect",precondition:void 0})),e.LineSelectDrag=Mf(new p({inSelectionMode:!0,id:"_lineSelectDrag",precondition:void 0}));var f=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){var n=e.getLastAddedCursorIndex(),i=e.getAll(),o=i.slice(0);o[n]=$w.line(e.context,i[n],this._inSelectionMode,t.position,t.viewPosition),e.context.model.pushStackElement(),e.setStates(t.source,3,o)},t}(mC);e.LastCursorLineSelect=Mf(new f({inSelectionMode:!1,id:"lastCursorLineSelect",precondition:void 0})),e.LastCursorLineSelectDrag=Mf(new f({inSelectionMode:!0,id:"lastCursorLineSelectDrag",precondition:void 0})),e.ExpandLineSelection=Mf(new(function(e){function t(){return e.call(this,{id:"expandLineSelection",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2090}})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,$w.expandLineSelection(e.context,e.getAll())),e.reveal(t.source,!0,0,0)},t}(mC))),e.CancelSelection=Mf(new(function(e){function t(){return e.call(this,{id:"cancelSelection",precondition:eC.hasNonEmptySelection,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:9,secondary:[1033]}})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,[$w.cancelSelection(e.context,e.getPrimaryCursor())]),e.reveal(t.source,!0,0,0)},t}(mC))),e.RemoveSecondaryCursors=Mf(new(function(e){function t(){return e.call(this,{id:"removeSecondaryCursors",precondition:eC.hasMultipleSelections,kbOpts:{weight:1,kbExpr:eC.textInputFocus,primary:9,secondary:[1033]}})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,[e.getPrimaryCursor()]),e.reveal(t.source,!0,0,0)},t}(mC))),e.RevealLine=Mf(new(function(e){function t(){return e.call(this,{id:"revealLine",precondition:void 0,description:lC.description})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){var n=t,i=(n.lineNumber||0)+1;i<1&&(i=1);var o=e.context.model.getLineCount();i>o&&(i=o);var r=new wn(i,1,i,e.context.model.getLineMaxColumn(i)),s=0;if(n.at)switch(n.at){case lC.RawAtArgument.Top:s=3;break;case lC.RawAtArgument.Center:s=1;break;case lC.RawAtArgument.Bottom:s=4}var a=e.context.convertModelRangeToViewRange(r);e.revealRange(t.source,!1,a,s,0)},t}(mC))),e.SelectAll=Mf(new(function(e){function t(){return e.call(this,{id:"selectAll",precondition:void 0})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,[$w.selectAll(e.context,e.getPrimaryCursor())])},t}(mC))),e.SetSelection=Mf(new(function(e){function t(){return e.call(this,{id:"setSelection",precondition:void 0})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,[zv.fromModelSelection(t.selection)])},t}(mC)))}(dC||(dC={})),pC=hC||(hC={}),fC=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return gC(t,e),t.prototype.runEditorCommand=function(e,t,n){var i=t._getCursors();i&&this.runCoreEditingCommand(t,i,n||{})},t}(Nf),pC.CoreEditingCommand=fC,pC.LineBreakInsert=Mf(new(function(e){function t(){return e.call(this,{id:"lineBreakInsert",precondition:eC.writable,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:0,mac:{primary:301}}})||this}return gC(t,e),t.prototype.runCoreEditingCommand=function(e,t,n){e.pushUndoStop(),e.executeCommands(this.id,rC.lineBreakInsert(t.context.config,t.context.model,t.getAll().map((function(e){return e.modelState.selection}))))},t}(fC))),pC.Outdent=Mf(new(function(e){function t(){return e.call(this,{id:"outdent",precondition:eC.writable,kbOpts:{weight:0,kbExpr:Rh.and(eC.editorTextFocus,eC.tabDoesNotMoveFocus),primary:1026}})||this}return gC(t,e),t.prototype.runCoreEditingCommand=function(e,t,n){e.pushUndoStop(),e.executeCommands(this.id,rC.outdent(t.context.config,t.context.model,t.getAll().map((function(e){return e.modelState.selection})))),e.pushUndoStop()},t}(fC))),pC.Tab=Mf(new(function(e){function t(){return e.call(this,{id:"tab",precondition:eC.writable,kbOpts:{weight:0,kbExpr:Rh.and(eC.editorTextFocus,eC.tabDoesNotMoveFocus),primary:2}})||this}return gC(t,e),t.prototype.runCoreEditingCommand=function(e,t,n){e.pushUndoStop(),e.executeCommands(this.id,rC.tab(t.context.config,t.context.model,t.getAll().map((function(e){return e.modelState.selection})))),e.pushUndoStop()},t}(fC))),pC.DeleteLeft=Mf(new(function(e){function t(){return e.call(this,{id:"deleteLeft",precondition:eC.writable,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1,secondary:[1025],mac:{primary:1,secondary:[1025,294,257]}}})||this}return gC(t,e),t.prototype.runCoreEditingCommand=function(e,t,n){var i=Uw.deleteLeft(t.getPrevEditOperationType(),t.context.config,t.context.model,t.getAll().map((function(e){return e.modelState.selection}))),o=i[0],r=i[1];o&&e.pushUndoStop(),e.executeCommands(this.id,r),t.setPrevEditOperationType(2)},t}(fC))),pC.DeleteRight=Mf(new(function(e){function t(){return e.call(this,{id:"deleteRight",precondition:eC.writable,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:20,mac:{primary:20,secondary:[290,276]}}})||this}return gC(t,e),t.prototype.runCoreEditingCommand=function(e,t,n){var i=Uw.deleteRight(t.getPrevEditOperationType(),t.context.config,t.context.model,t.getAll().map((function(e){return e.modelState.selection}))),o=i[0],r=i[1];o&&e.pushUndoStop(),e.executeCommands(this.id,r),t.setPrevEditOperationType(3)},t}(fC)));var _C=function(e){function t(t){var n=e.call(this,t)||this;return n._editorHandler=t.editorHandler,n._inputHandler=t.inputHandler,n}return gC(t,e),t.prototype.runCommand=function(e,t){var n=e.get(Pn).getFocusedCodeEditor();if(n&&n.hasTextFocus())return this._runEditorHandler(e,n,t);var i=document.activeElement;if(!(i&&["input","textarea"].indexOf(i.tagName.toLowerCase())>=0)){var o=e.get(Pn).getActiveCodeEditor();return o?(o.focus(),this._runEditorHandler(e,o,t)):void 0}document.execCommand(this._inputHandler)},t.prototype._runEditorHandler=function(e,t,n){var i=this._editorHandler;"string"==typeof i?t.trigger("keyboard",i,n):((n=n||{}).source="keyboard",i.runEditorCommand(e,t,n))},t}(Df),yC=function(e){function t(t,n,i){var o=e.call(this,{id:t,precondition:void 0,description:i})||this;return o._handlerId=n,o}return gC(t,e),t.prototype.runCommand=function(e,t){var n=e.get(Pn).getFocusedCodeEditor();n&&n.trigger("keyboard",this._handlerId,t)},t}(Df);function bC(e,t){vC(new yC("default:"+e,e)),vC(new yC(e,e,t))}vC(new _C({editorHandler:dC.SelectAll,inputHandler:"selectAll",id:"editor.action.selectAll",precondition:eC.textInputFocus,kbOpts:{weight:0,kbExpr:null,primary:2079},menuOpts:{menuId:25,group:"1_basic",title:r({key:"miSelectAll",comment:["&& denotes a mnemonic"]},"&&Select All"),order:1}})),vC(new _C({editorHandler:za.Undo,inputHandler:"undo",id:za.Undo,precondition:eC.writable,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2104},menuOpts:{menuId:17,group:"1_do",title:r({key:"miUndo",comment:["&& denotes a mnemonic"]},"&&Undo"),order:1}})),vC(new yC("default:"+za.Undo,za.Undo)),vC(new _C({editorHandler:za.Redo,inputHandler:"redo",id:za.Redo,precondition:eC.writable,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2103,secondary:[3128],mac:{primary:3128}},menuOpts:{menuId:17,group:"1_do",title:r({key:"miRedo",comment:["&& denotes a mnemonic"]},"&&Redo"),order:2}})),vC(new yC("default:"+za.Redo,za.Redo)),bC(za.Type,{description:"Type",args:[{name:"args",schema:{type:"object",required:["text"],properties:{text:{type:"string"}}}}]}),bC(za.ReplacePreviousChar),bC(za.CompositionStart),bC(za.CompositionEnd),bC(za.Paste),bC(za.Cut);var wC=function(){function e(e,t,n,i){this.configuration=e,this.viewModel=t,this.outgoingEvents=n,this.commandDelegate=i}return e.prototype._execMouseCommand=function(e,t){t.source="mouse",this.commandDelegate.executeEditorCommand(e,t)},e.prototype.paste=function(e,t,n,i,o){this.commandDelegate.paste(e,t,n,i,o)},e.prototype.type=function(e,t){this.commandDelegate.type(e,t)},e.prototype.replacePreviousChar=function(e,t,n){this.commandDelegate.replacePreviousChar(e,t,n)},e.prototype.compositionStart=function(e){this.commandDelegate.compositionStart(e)},e.prototype.compositionEnd=function(e){this.commandDelegate.compositionEnd(e)},e.prototype.cut=function(e){this.commandDelegate.cut(e)},e.prototype.setSelection=function(e,t){this.commandDelegate.executeEditorCommand(dC.SetSelection,{source:e,selection:t})},e.prototype._validateViewColumn=function(e){var t=this.viewModel.getLineMinColumn(e.lineNumber);return e.column<t?new bn(e.lineNumber,t):e},e.prototype._hasMulticursorModifier=function(e){switch(this.configuration.options.get(59)){case"altKey":return e.altKey;case"ctrlKey":return e.ctrlKey;case"metaKey":return e.metaKey}return!1},e.prototype._hasNonMulticursorModifier=function(e){switch(this.configuration.options.get(59)){case"altKey":return e.ctrlKey||e.metaKey;case"ctrlKey":return e.altKey||e.metaKey;case"metaKey":return e.ctrlKey||e.altKey}return!1},e.prototype.dispatchMouse=function(e){var t=y&&this.configuration.options.get(81);e.middleButton&&!t?this._columnSelect(e.position,e.mouseColumn,e.inSelectionMode):e.startedOnLineNumbers?this._hasMulticursorModifier(e)?e.inSelectionMode?this._lastCursorLineSelect(e.position):this._createCursor(e.position,!0):e.inSelectionMode?this._lineSelectDrag(e.position):this._lineSelect(e.position):e.mouseDownCount>=4?this._selectAll():3===e.mouseDownCount?this._hasMulticursorModifier(e)?e.inSelectionMode?this._lastCursorLineSelectDrag(e.position):this._lastCursorLineSelect(e.position):e.inSelectionMode?this._lineSelectDrag(e.position):this._lineSelect(e.position):2===e.mouseDownCount?this._hasMulticursorModifier(e)?this._lastCursorWordSelect(e.position):e.inSelectionMode?this._wordSelectDrag(e.position):this._wordSelect(e.position):this._hasMulticursorModifier(e)?this._hasNonMulticursorModifier(e)||(e.shiftKey?this._columnSelect(e.position,e.mouseColumn,!0):e.inSelectionMode?this._lastCursorMoveToSelect(e.position):this._createCursor(e.position,!1)):e.inSelectionMode?e.altKey?this._columnSelect(e.position,e.mouseColumn,!0):this._moveToSelect(e.position):this.moveTo(e.position)},e.prototype._usualArgs=function(e){return e=this._validateViewColumn(e),{position:this._convertViewToModelPosition(e),viewPosition:e}},e.prototype.moveTo=function(e){this._execMouseCommand(dC.MoveTo,this._usualArgs(e))},e.prototype._moveToSelect=function(e){this._execMouseCommand(dC.MoveToSelect,this._usualArgs(e))},e.prototype._columnSelect=function(e,t,n){e=this._validateViewColumn(e),this._execMouseCommand(dC.ColumnSelect,{position:this._convertViewToModelPosition(e),viewPosition:e,mouseColumn:t,doColumnSelect:n})},e.prototype._createCursor=function(e,t){e=this._validateViewColumn(e),this._execMouseCommand(dC.CreateCursor,{position:this._convertViewToModelPosition(e),viewPosition:e,wholeLine:t})},e.prototype._lastCursorMoveToSelect=function(e){this._execMouseCommand(dC.LastCursorMoveToSelect,this._usualArgs(e))},e.prototype._wordSelect=function(e){this._execMouseCommand(dC.WordSelect,this._usualArgs(e))},e.prototype._wordSelectDrag=function(e){this._execMouseCommand(dC.WordSelectDrag,this._usualArgs(e))},e.prototype._lastCursorWordSelect=function(e){this._execMouseCommand(dC.LastCursorWordSelect,this._usualArgs(e))},e.prototype._lineSelect=function(e){this._execMouseCommand(dC.LineSelect,this._usualArgs(e))},e.prototype._lineSelectDrag=function(e){this._execMouseCommand(dC.LineSelectDrag,this._usualArgs(e))},e.prototype._lastCursorLineSelect=function(e){this._execMouseCommand(dC.LastCursorLineSelect,this._usualArgs(e))},e.prototype._lastCursorLineSelectDrag=function(e){this._execMouseCommand(dC.LastCursorLineSelectDrag,this._usualArgs(e))},e.prototype._selectAll=function(){this._execMouseCommand(dC.SelectAll,{})},e.prototype._convertViewToModelPosition=function(e){return this.viewModel.coordinatesConverter.convertViewPositionToModelPosition(e)},e.prototype.emitKeyDown=function(e){this.outgoingEvents.emitKeyDown(e)},e.prototype.emitKeyUp=function(e){this.outgoingEvents.emitKeyUp(e)},e.prototype.emitContextMenu=function(e){this.outgoingEvents.emitContextMenu(e)},e.prototype.emitMouseMove=function(e){this.outgoingEvents.emitMouseMove(e)},e.prototype.emitMouseLeave=function(e){this.outgoingEvents.emitMouseLeave(e)},e.prototype.emitMouseUp=function(e){this.outgoingEvents.emitMouseUp(e)},e.prototype.emitMouseDown=function(e){this.outgoingEvents.emitMouseDown(e)},e.prototype.emitMouseDrag=function(e){this.outgoingEvents.emitMouseDrag(e)},e.prototype.emitMouseDrop=function(e){this.outgoingEvents.emitMouseDrop(e)},e.prototype.emitMouseWheel=function(e){this.outgoingEvents.emitMouseWheel(e)},e}(),CC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),SC=function(e){function t(t){var n=e.call(this)||this;return n.onDidContentSizeChange=null,n.onDidScroll=null,n.onDidGainFocus=null,n.onDidLoseFocus=null,n.onKeyDown=null,n.onKeyUp=null,n.onContextMenu=null,n.onMouseMove=null,n.onMouseLeave=null,n.onMouseUp=null,n.onMouseDown=null,n.onMouseDrag=null,n.onMouseDrop=null,n.onMouseWheel=null,n._viewModel=t,n}return CC(t,e),t.prototype.emitContentSizeChange=function(e){this.onDidContentSizeChange&&this.onDidContentSizeChange(e)},t.prototype.emitScrollChanged=function(e){this.onDidScroll&&this.onDidScroll(e)},t.prototype.emitViewFocusGained=function(){this.onDidGainFocus&&this.onDidGainFocus(void 0)},t.prototype.emitViewFocusLost=function(){this.onDidLoseFocus&&this.onDidLoseFocus(void 0)},t.prototype.emitKeyDown=function(e){this.onKeyDown&&this.onKeyDown(e)},t.prototype.emitKeyUp=function(e){this.onKeyUp&&this.onKeyUp(e)},t.prototype.emitContextMenu=function(e){this.onContextMenu&&this.onContextMenu(this._convertViewToModelMouseEvent(e))},t.prototype.emitMouseMove=function(e){this.onMouseMove&&this.onMouseMove(this._convertViewToModelMouseEvent(e))},t.prototype.emitMouseLeave=function(e){this.onMouseLeave&&this.onMouseLeave(this._convertViewToModelMouseEvent(e))},t.prototype.emitMouseUp=function(e){this.onMouseUp&&this.onMouseUp(this._convertViewToModelMouseEvent(e))},t.prototype.emitMouseDown=function(e){this.onMouseDown&&this.onMouseDown(this._convertViewToModelMouseEvent(e))},t.prototype.emitMouseDrag=function(e){this.onMouseDrag&&this.onMouseDrag(this._convertViewToModelMouseEvent(e))},t.prototype.emitMouseDrop=function(e){this.onMouseDrop&&this.onMouseDrop(this._convertViewToModelMouseEvent(e))},t.prototype.emitMouseWheel=function(e){this.onMouseWheel&&this.onMouseWheel(e)},t.prototype._convertViewToModelMouseEvent=function(e){return e.target?{event:e.event,target:this._convertViewToModelMouseTarget(e.target)}:e},t.prototype._convertViewToModelMouseTarget=function(e){return t.convertViewToModelMouseTarget(e,this._viewModel.coordinatesConverter)},t.convertViewToModelMouseTarget=function(e,t){return new LC(e.element,e.type,e.mouseColumn,e.position?t.convertViewPositionToModelPosition(e.position):null,e.range?t.convertViewRangeToModelRange(e.range):null,e.detail)},t}(He),LC=function(){function e(e,t,n,i,o,r){this.element=e,this.type=t,this.mouseColumn=n,this.position=i,this.range=o,this.detail=r}return e.prototype.toString=function(){return Zv.toString(this)},e}(),xC=function(){function e(e){this._createLine=e,this._set(1,[])}return e.prototype.flush=function(){this._set(1,[])},e.prototype._set=function(e,t){this._lines=t,this._rendLineNumberStart=e},e.prototype._get=function(){return{rendLineNumberStart:this._rendLineNumberStart,lines:this._lines}},e.prototype.getStartLineNumber=function(){return this._rendLineNumberStart},e.prototype.getEndLineNumber=function(){return this._rendLineNumberStart+this._lines.length-1},e.prototype.getCount=function(){return this._lines.length},e.prototype.getLine=function(e){var t=e-this._rendLineNumberStart;if(t<0||t>=this._lines.length)throw new Error("Illegal value for lineNumber");return this._lines[t]},e.prototype.onLinesDeleted=function(e,t){if(0===this.getCount())return null;var n=this.getStartLineNumber(),i=this.getEndLineNumber();if(t<n){var o=t-e+1;return this._rendLineNumberStart-=o,null}if(e>i)return null;for(var r=0,s=0,a=n;a<=i;a++){var u=a-this._rendLineNumberStart;e<=a&&a<=t&&(0===s?(r=u,s=1):s++)}if(e<n){var l=0;l=t<n?t-e+1:n-e,this._rendLineNumberStart-=l}return this._lines.splice(r,s)},e.prototype.onLinesChanged=function(e,t){if(0===this.getCount())return!1;for(var n=this.getStartLineNumber(),i=this.getEndLineNumber(),o=!1,r=e;r<=t;r++)r>=n&&r<=i&&(this._lines[r-this._rendLineNumberStart].onContentChanged(),o=!0);return o},e.prototype.onLinesInserted=function(e,t){if(0===this.getCount())return null;var n=t-e+1,i=this.getStartLineNumber(),o=this.getEndLineNumber();if(e<=i)return this._rendLineNumberStart+=n,null;if(e>o)return null;if(n+e>o)return this._lines.splice(e-this._rendLineNumberStart,o-e+1);for(var r=[],s=0;s<n;s++)r[s]=this._createLine();var a=e-this._rendLineNumberStart,u=this._lines.slice(0,a),l=this._lines.slice(a,this._lines.length-n),c=this._lines.slice(this._lines.length-n,this._lines.length);return this._lines=u.concat(r).concat(l),c},e.prototype.onTokensChanged=function(e){if(0===this.getCount())return!1;for(var t=this.getStartLineNumber(),n=this.getEndLineNumber(),i=!1,o=0,r=e.length;o<r;o++){var s=e[o];if(!(s.toLineNumber<t||s.fromLineNumber>n))for(var a=Math.max(t,s.fromLineNumber),u=Math.min(n,s.toLineNumber),l=a;l<=u;l++){var c=l-this._rendLineNumberStart;this._lines[c].onTokensChanged(),i=!0}}return i},e}(),DC=function(){function e(e){var t=this;this._host=e,this.domNode=this._createDomNode(),this._linesCollection=new xC((function(){return t._host.createVisibleLine()}))}return e.prototype._createDomNode=function(){var e=Ff(document.createElement("div"));return e.setClassName("view-layer"),e.setPosition("absolute"),e.domNode.setAttribute("role","presentation"),e.domNode.setAttribute("aria-hidden","true"),e},e.prototype.onConfigurationChanged=function(e){return!!e.hasChanged(107)},e.prototype.onFlushed=function(e){return this._linesCollection.flush(),!0},e.prototype.onLinesChanged=function(e){return this._linesCollection.onLinesChanged(e.fromLineNumber,e.toLineNumber)},e.prototype.onLinesDeleted=function(e){var t=this._linesCollection.onLinesDeleted(e.fromLineNumber,e.toLineNumber);if(t)for(var n=0,i=t.length;n<i;n++){var o=t[n].getDomNode();o&&this.domNode.domNode.removeChild(o)}return!0},e.prototype.onLinesInserted=function(e){var t=this._linesCollection.onLinesInserted(e.fromLineNumber,e.toLineNumber);if(t)for(var n=0,i=t.length;n<i;n++){var o=t[n].getDomNode();o&&this.domNode.domNode.removeChild(o)}return!0},e.prototype.onScrollChanged=function(e){return e.scrollTopChanged},e.prototype.onTokensChanged=function(e){return this._linesCollection.onTokensChanged(e.ranges)},e.prototype.onZonesChanged=function(e){return!0},e.prototype.getStartLineNumber=function(){return this._linesCollection.getStartLineNumber()},e.prototype.getEndLineNumber=function(){return this._linesCollection.getEndLineNumber()},e.prototype.getVisibleLine=function(e){return this._linesCollection.getLine(e)},e.prototype.renderLines=function(e){var t=this._linesCollection._get(),n=new NC(this.domNode.domNode,this._host,e),i={rendLineNumberStart:t.rendLineNumberStart,lines:t.lines,linesLength:t.lines.length},o=n.render(i,e.startLineNumber,e.endLineNumber,e.relativeVerticalOffset);this._linesCollection._set(o.rendLineNumberStart,o.lines)},e}(),NC=function(){function e(e,t,n){this.domNode=e,this.host=t,this.viewportData=n}return e.prototype.render=function(e,t,n,i){var o={rendLineNumberStart:e.rendLineNumberStart,lines:e.lines.slice(0),linesLength:e.linesLength};if(o.rendLineNumberStart+o.linesLength-1<t||n<o.rendLineNumberStart){o.rendLineNumberStart=t,o.linesLength=n-t+1,o.lines=[];for(var r=t;r<=n;r++)o.lines[r-t]=this.host.createVisibleLine();return this._finishRendering(o,!0,i),o}if(this._renderUntouchedLines(o,Math.max(t-o.rendLineNumberStart,0),Math.min(n-o.rendLineNumberStart,o.linesLength-1),i,t),o.rendLineNumberStart>t)(u=t)<=(s=Math.min(n,o.rendLineNumberStart-1))&&(this._insertLinesBefore(o,u,s,i,t),o.linesLength+=s-u+1);else if(o.rendLineNumberStart<t){(a=Math.min(o.linesLength,t-o.rendLineNumberStart))>0&&(this._removeLinesBefore(o,a),o.linesLength-=a)}if(o.rendLineNumberStart=t,o.rendLineNumberStart+o.linesLength-1<n)(u=o.rendLineNumberStart+o.linesLength)<=(s=n)&&(this._insertLinesAfter(o,u,s,i,t),o.linesLength+=s-u+1);else if(o.rendLineNumberStart+o.linesLength-1>n){var s,a,u=Math.max(0,n-o.rendLineNumberStart+1);(a=(s=o.linesLength-1)-u+1)>0&&(this._removeLinesAfter(o,a),o.linesLength-=a)}return this._finishRendering(o,!1,i),o},e.prototype._renderUntouchedLines=function(e,t,n,i,o){for(var r=e.rendLineNumberStart,s=e.lines,a=t;a<=n;a++){var u=r+a;s[a].layoutLine(u,i[u-o])}},e.prototype._insertLinesBefore=function(e,t,n,i,o){for(var r=[],s=0,a=t;a<=n;a++)r[s++]=this.host.createVisibleLine();e.lines=r.concat(e.lines)},e.prototype._removeLinesBefore=function(e,t){for(var n=0;n<t;n++){var i=e.lines[n].getDomNode();i&&this.domNode.removeChild(i)}e.lines.splice(0,t)},e.prototype._insertLinesAfter=function(e,t,n,i,o){for(var r=[],s=0,a=t;a<=n;a++)r[s++]=this.host.createVisibleLine();e.lines=e.lines.concat(r)},e.prototype._removeLinesAfter=function(e,t){for(var n=e.linesLength-t,i=0;i<t;i++){var o=e.lines[n+i].getDomNode();o&&this.domNode.removeChild(o)}e.lines.splice(n,t)},e.prototype._finishRenderingNewLines=function(e,t,n,i){var o=this.domNode.lastChild;t||!o?this.domNode.innerHTML=n:o.insertAdjacentHTML("afterend",n);for(var r=this.domNode.lastChild,s=e.linesLength-1;s>=0;s--){var a=e.lines[s];i[s]&&(a.setDomNode(r),r=r.previousSibling)}},e.prototype._finishRenderingInvalidLines=function(e,t,n){var i=document.createElement("div");i.innerHTML=t;for(var o=0;o<e.linesLength;o++){var r=e.lines[o];if(n[o]){var s=i.firstChild,a=r.getDomNode();a.parentNode.replaceChild(s,a),r.setDomNode(s)}}},e.prototype._finishRendering=function(t,n,i){var o=e._sb,r=t.linesLength,s=t.lines,a=t.rendLineNumberStart,u=[];o.reset();for(var l=!1,c=0;c<r;c++){var d=s[c];if(u[c]=!1,!d.getDomNode())d.renderLine(c+a,i[c],this.viewportData,o)&&(u[c]=!0,l=!0)}l&&this._finishRenderingNewLines(t,n,o.build(),u),o.reset();var h=!1,p=[];for(c=0;c<r;c++){d=s[c];if(p[c]=!1,!u[c])d.renderLine(c+a,i[c],this.viewportData,o)&&(p[c]=!0,h=!0)}h&&this._finishRenderingInvalidLines(t,o.build(),p)},e._sb=Fc(1e5),e}(),kC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),EC=function(e){function t(t){var n=e.call(this,t)||this;return n._visibleLines=new DC(n),n.domNode=n._visibleLines.domNode,n._dynamicOverlays=[],n._isFocused=!1,n.domNode.setClassName("view-overlays"),n}return kC(t,e),t.prototype.shouldRender=function(){if(e.prototype.shouldRender.call(this))return!0;for(var t=0,n=this._dynamicOverlays.length;t<n;t++){if(this._dynamicOverlays[t].shouldRender())return!0}return!1},t.prototype.dispose=function(){e.prototype.dispose.call(this);for(var t=0,n=this._dynamicOverlays.length;t<n;t++){this._dynamicOverlays[t].dispose()}this._dynamicOverlays=[]},t.prototype.getDomNode=function(){return this.domNode},t.prototype.createVisibleLine=function(){return new IC(this._context.configuration,this._dynamicOverlays)},t.prototype.addDynamicOverlay=function(e){this._dynamicOverlays.push(e)},t.prototype.onConfigurationChanged=function(e){this._visibleLines.onConfigurationChanged(e);for(var t=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber(),i=t;i<=n;i++){this._visibleLines.getVisibleLine(i).onConfigurationChanged(e)}return!0},t.prototype.onFlushed=function(e){return this._visibleLines.onFlushed(e)},t.prototype.onFocusChanged=function(e){return this._isFocused=e.isFocused,!0},t.prototype.onLinesChanged=function(e){return this._visibleLines.onLinesChanged(e)},t.prototype.onLinesDeleted=function(e){return this._visibleLines.onLinesDeleted(e)},t.prototype.onLinesInserted=function(e){return this._visibleLines.onLinesInserted(e)},t.prototype.onScrollChanged=function(e){return this._visibleLines.onScrollChanged(e)||!0},t.prototype.onTokensChanged=function(e){return this._visibleLines.onTokensChanged(e)},t.prototype.onZonesChanged=function(e){return this._visibleLines.onZonesChanged(e)},t.prototype.prepareRender=function(e){for(var t=this._dynamicOverlays.filter((function(e){return e.shouldRender()})),n=0,i=t.length;n<i;n++){var o=t[n];o.prepareRender(e),o.onDidRender()}},t.prototype.render=function(e){this._viewOverlaysRender(e),this.domNode.toggleClassName("focused",this._isFocused)},t.prototype._viewOverlaysRender=function(e){this._visibleLines.renderLines(e.viewportData)},t}(og),IC=function(){function e(e,t){this._configuration=e,this._lineHeight=this._configuration.options.get(49),this._dynamicOverlays=t,this._domNode=null,this._renderedContent=null}return e.prototype.getDomNode=function(){return this._domNode?this._domNode.domNode:null},e.prototype.setDomNode=function(e){this._domNode=Ff(e)},e.prototype.onContentChanged=function(){},e.prototype.onTokensChanged=function(){},e.prototype.onConfigurationChanged=function(e){this._lineHeight=this._configuration.options.get(49)},e.prototype.renderLine=function(e,t,n,i){for(var o="",r=0,s=this._dynamicOverlays.length;r<s;r++){o+=this._dynamicOverlays[r].render(n.startLineNumber,e)}return this._renderedContent!==o&&(this._renderedContent=o,i.appendASCIIString('<div style="position:absolute;top:'),i.appendASCIIString(String(t)),i.appendASCIIString("px;width:100%;height:"),i.appendASCIIString(String(this._lineHeight)),i.appendASCIIString('px;">'),i.appendASCIIString(o),i.appendASCIIString("</div>"),!0)},e.prototype.layoutLine=function(e,t){this._domNode&&(this._domNode.setTop(t),this._domNode.setHeight(this._lineHeight))},e}(),OC=function(e){function t(t){var n=e.call(this,t)||this,i=n._context.configuration.options.get(107);return n._contentWidth=i.contentWidth,n.domNode.setHeight(0),n}return kC(t,e),t.prototype.onConfigurationChanged=function(t){var n=this._context.configuration.options.get(107);return this._contentWidth=n.contentWidth,e.prototype.onConfigurationChanged.call(this,t)||!0},t.prototype.onScrollChanged=function(t){return e.prototype.onScrollChanged.call(this,t)||t.scrollWidthChanged},t.prototype._viewOverlaysRender=function(t){e.prototype._viewOverlaysRender.call(this,t),this.domNode.setWidth(Math.max(t.scrollWidth,this._contentWidth))},t}(EC),MC=function(e){function t(t){var n=e.call(this,t)||this,i=n._context.configuration.options,o=i.get(107);return n._contentLeft=o.contentLeft,n.domNode.setClassName("margin-view-overlays"),n.domNode.setWidth(1),af.applyFontInfo(n.domNode,i.get(34)),n}return kC(t,e),t.prototype.onConfigurationChanged=function(t){var n=this._context.configuration.options;af.applyFontInfo(this.domNode,n.get(34));var i=n.get(107);return this._contentLeft=i.contentLeft,e.prototype.onConfigurationChanged.call(this,t)||!0},t.prototype.onScrollChanged=function(t){return e.prototype.onScrollChanged.call(this,t)||t.scrollHeightChanged},t.prototype._viewOverlaysRender=function(t){e.prototype._viewOverlaysRender.call(this,t);var n=Math.min(t.scrollHeight,1e6);this.domNode.setHeight(n),this.domNode.setWidth(this._contentLeft)},t}(EC),TC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),PC=function(e,t){this.top=e,this.left=t},RC=function(e){function t(t,n){var i=e.call(this,t)||this;return i._viewDomNode=n,i._widgets={},i.domNode=Ff(document.createElement("div")),rg.write(i.domNode,1),i.domNode.setClassName("contentWidgets"),i.domNode.setPosition("absolute"),i.domNode.setTop(0),i.overflowingContentWidgetsDomNode=Ff(document.createElement("div")),rg.write(i.overflowingContentWidgetsDomNode,2),i.overflowingContentWidgetsDomNode.setClassName("overflowingContentWidgets"),i}return TC(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._widgets={}},t.prototype.onConfigurationChanged=function(e){for(var t=0,n=Object.keys(this._widgets);t<n.length;t++){var i=n[t];this._widgets[i].onConfigurationChanged(e)}return!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onLineMappingChanged=function(e){for(var t=0,n=Object.keys(this._widgets);t<n.length;t++){var i=n[t];this._widgets[i].onLineMappingChanged(e)}return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return!0},t.prototype.onZonesChanged=function(e){return!0},t.prototype.addWidget=function(e){var t=new AC(this._context,this._viewDomNode,e);this._widgets[t.id]=t,t.allowEditorOverflow?this.overflowingContentWidgetsDomNode.appendChild(t.domNode):this.domNode.appendChild(t.domNode),this.setShouldRender()},t.prototype.setWidgetPosition=function(e,t,n){this._widgets[e.getId()].setPosition(t,n),this.setShouldRender()},t.prototype.removeWidget=function(e){var t=e.getId();if(this._widgets.hasOwnProperty(t)){var n=this._widgets[t];delete this._widgets[t];var i=n.domNode.domNode;i.parentNode.removeChild(i),i.removeAttribute("monaco-visible-content-widget"),this.setShouldRender()}},t.prototype.shouldSuppressMouseDownOnWidget=function(e){return!!this._widgets.hasOwnProperty(e)&&this._widgets[e].suppressMouseDown},t.prototype.onBeforeRender=function(e){for(var t=0,n=Object.keys(this._widgets);t<n.length;t++){var i=n[t];this._widgets[i].onBeforeRender(e)}},t.prototype.prepareRender=function(e){for(var t=0,n=Object.keys(this._widgets);t<n.length;t++){var i=n[t];this._widgets[i].prepareRender(e)}},t.prototype.render=function(e){for(var t=0,n=Object.keys(this._widgets);t<n.length;t++){var i=n[t];this._widgets[i].render(e)}},t}(og),AC=function(){function e(e,t,n){this._context=e,this._viewDomNode=t,this._actual=n,this.domNode=Ff(this._actual.getDomNode()),this.id=this._actual.getId(),this.allowEditorOverflow=this._actual.allowEditorOverflow||!1,this.suppressMouseDown=this._actual.suppressMouseDown||!1;var i=this._context.configuration.options,o=i.get(107);this._fixedOverflowWidgets=i.get(29),this._contentWidth=o.contentWidth,this._contentLeft=o.contentLeft,this._lineHeight=i.get(49),this._range=null,this._viewRange=null,this._preference=[],this._cachedDomNodeClientWidth=-1,this._cachedDomNodeClientHeight=-1,this._maxWidth=this._getMaxWidth(),this._isVisible=!1,this._renderData=null,this.domNode.setPosition(this._fixedOverflowWidgets&&this.allowEditorOverflow?"fixed":"absolute"),this.domNode.setVisibility("hidden"),this.domNode.setAttribute("widgetId",this.id),this.domNode.setMaxWidth(this._maxWidth)}return e.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options;if(this._lineHeight=t.get(49),e.hasChanged(107)){var n=t.get(107);this._contentLeft=n.contentLeft,this._contentWidth=n.contentWidth,this._maxWidth=this._getMaxWidth()}},e.prototype.onLineMappingChanged=function(e){this._setPosition(this._range)},e.prototype._setPosition=function(e){if(this._range=e,this._viewRange=null,this._range){var t=this._context.model.validateModelRange(this._range);(this._context.model.coordinatesConverter.modelPositionIsVisible(t.getStartPosition())||this._context.model.coordinatesConverter.modelPositionIsVisible(t.getEndPosition()))&&(this._viewRange=this._context.model.coordinatesConverter.convertModelRangeToViewRange(t))}},e.prototype._getMaxWidth=function(){return this.allowEditorOverflow?window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth:this._contentWidth},e.prototype.setPosition=function(e,t){this._setPosition(e),this._preference=t,this._cachedDomNodeClientWidth=-1,this._cachedDomNodeClientHeight=-1},e.prototype._layoutBoxInViewport=function(e,t,n,i,o){var r=e.top,s=r,a=t.top+this._lineHeight,u=r-i,l=s>=i,c=a,d=o.viewportHeight-a>=i,h=e.left,p=t.left;return h+n>o.scrollLeft+o.viewportWidth&&(h=o.scrollLeft+o.viewportWidth-n),p+n>o.scrollLeft+o.viewportWidth&&(p=o.scrollLeft+o.viewportWidth-n),h<o.scrollLeft&&(h=o.scrollLeft),p<o.scrollLeft&&(p=o.scrollLeft),{fitsAbove:l,aboveTop:u,aboveLeft:h,fitsBelow:d,belowTop:c,belowLeft:p}},e.prototype._layoutHorizontalSegmentInPage=function(e,t,n,i){var o,r=Math.max(0,t.left-i),s=Math.min(t.left+t.width+i,e.width),a=t.left+n-Mo.scrollX;a+i>s&&(a-=o=a-(s-i),n-=o);a<r&&(a-=o=a-r,n-=o);return[n,a]},e.prototype._layoutBoxInPage=function(e,t,n,i,o){var r=e.top-i,s=t.top+this._lineHeight,a=Oo(this._viewDomNode.domNode),u=a.top+r-Mo.scrollY,l=a.top+s-Mo.scrollY,c=function(e){if(e!==document.body)return new Eo(e.clientWidth,e.clientHeight);if(C&&window.visualViewport){var t=window.visualViewport.width,n=window.visualViewport.height-(Yn?24:0);return new Eo(t,n)}if(window.innerWidth&&window.innerHeight)return new Eo(window.innerWidth,window.innerHeight);if(document.body&&document.body.clientWidth&&document.body.clientHeight)return new Eo(document.body.clientWidth,document.body.clientHeight);if(document.documentElement&&document.documentElement.clientWidth&&document.documentElement.clientHeight)return new Eo(document.documentElement.clientWidth,document.documentElement.clientHeight);throw new Error("Unable to figure out browser width and height")}(document.body),d=this._layoutHorizontalSegmentInPage(c,a,e.left-o.scrollLeft+this._contentLeft,n),h=d[0],p=d[1],f=this._layoutHorizontalSegmentInPage(c,a,t.left-o.scrollLeft+this._contentLeft,n),g=f[0],m=f[1],v=u>=22,_=l+i<=c.height-22;return this._fixedOverflowWidgets?{fitsAbove:v,aboveTop:Math.max(u,22),aboveLeft:p,fitsBelow:_,belowTop:l,belowLeft:m}:{fitsAbove:v,aboveTop:Math.max(r,22),aboveLeft:h,fitsBelow:_,belowTop:s,belowLeft:g}},e.prototype._prepareRenderWidgetAtExactPositionOverflowing=function(e){return new PC(e.top,e.left+this._contentLeft)},e.prototype._getTopAndBottomLeft=function(e){if(!this._viewRange)return[null,null];var t=e.linesVisibleRangesForRange(this._viewRange,!1);if(!t||0===t.length)return[null,null];for(var n=t[0],i=t[0],o=0,r=t;o<r.length;o++){var s=r[o];s.lineNumber<n.lineNumber&&(n=s),s.lineNumber>i.lineNumber&&(i=s)}for(var a=1073741824,u=0,l=n.ranges;u<l.length;u++){(p=l[u]).left<a&&(a=p.left)}for(var c=1073741824,d=0,h=i.ranges;d<h.length;d++){var p;(p=h[d]).left<c&&(c=p.left)}var f=e.getVerticalOffsetForLineNumber(n.lineNumber)-e.scrollTop,g=new PC(f,a),m=e.getVerticalOffsetForLineNumber(i.lineNumber)-e.scrollTop;return[g,new PC(m,c)]},e.prototype._prepareRenderWidget=function(e){var t,n=this._getTopAndBottomLeft(e),i=n[0],o=n[1];if(!i||!o)return null;if(-1===this._cachedDomNodeClientWidth||-1===this._cachedDomNodeClientHeight){var r=this.domNode.domNode;this._cachedDomNodeClientWidth=r.clientWidth,this._cachedDomNodeClientHeight=r.clientHeight}if(t=this.allowEditorOverflow?this._layoutBoxInPage(i,o,this._cachedDomNodeClientWidth,this._cachedDomNodeClientHeight,e):this._layoutBoxInViewport(i,o,this._cachedDomNodeClientWidth,this._cachedDomNodeClientHeight,e),this._preference)for(var s=1;s<=2;s++)for(var a=0,u=this._preference;a<u.length;a++){var l=u[a];if(1===l){if(!t)return null;if(2===s||t.fitsAbove)return new PC(t.aboveTop,t.aboveLeft)}else{if(2!==l)return this.allowEditorOverflow?this._prepareRenderWidgetAtExactPositionOverflowing(i):i;if(!t)return null;if(2===s||t.fitsBelow)return new PC(t.belowTop,t.belowLeft)}}return null},e.prototype.onBeforeRender=function(e){this._viewRange&&this._preference&&(this._viewRange.endLineNumber<e.startLineNumber||this._viewRange.startLineNumber>e.endLineNumber||this.domNode.setMaxWidth(this._maxWidth))},e.prototype.prepareRender=function(e){this._renderData=this._prepareRenderWidget(e)},e.prototype.render=function(e){this._renderData?(this.allowEditorOverflow?(this.domNode.setTop(this._renderData.top),this.domNode.setLeft(this._renderData.left)):(this.domNode.setTop(this._renderData.top+e.scrollTop-e.bigNumbersDelta),this.domNode.setLeft(this._renderData.left)),this._isVisible||(this.domNode.setVisibility("inherit"),this.domNode.setAttribute("monaco-visible-content-widget","true"),this._isVisible=!0)):this._isVisible&&(this.domNode.removeAttribute("monaco-visible-content-widget"),this._isVisible=!1,this.domNode.setVisibility("hidden"))},e}(),FC=(n(375),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),WC=!0,VC=function(e){function t(t){var n=e.call(this)||this;n._context=t;var i=n._context.configuration.options,o=i.get(107);return n._lineHeight=i.get(49),n._renderLineHighlight=i.get(72),n._contentLeft=o.contentLeft,n._contentWidth=o.contentWidth,n._selectionIsEmpty=!0,n._cursorLineNumbers=[],n._selections=[],n._renderData=null,n._context.addEventHandler(n),n}return FC(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),e.prototype.dispose.call(this)},t.prototype._readFromSelections=function(){var e=!1,t=WC?this._selections.slice(0,1):this._selections,n=t.map((function(e){return e.positionLineNumber}));n.sort((function(e,t){return e-t})),xi(this._cursorLineNumbers,n)||(this._cursorLineNumbers=n,e=!0);var i=t.every((function(e){return e.isEmpty()}));return this._selectionIsEmpty!==i&&(this._selectionIsEmpty=i,e=!0),e},t.prototype.onThemeChanged=function(e){return this._readFromSelections()},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options,n=t.get(107);return this._lineHeight=t.get(49),this._renderLineHighlight=t.get(72),this._contentLeft=n.contentLeft,this._contentWidth=n.contentWidth,!0},t.prototype.onCursorStateChanged=function(e){return this._selections=e.selections,this._readFromSelections()},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollWidthChanged||e.scrollTopChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype.prepareRender=function(e){if(this._shouldRenderThis()){for(var t=this._renderOne(e),n=e.visibleRange.startLineNumber,i=e.visibleRange.endLineNumber,o=this._cursorLineNumbers.length,r=0,s=[],a=n;a<=i;a++){for(var u=a-n;r<o&&this._cursorLineNumbers[r]<a;)r++;r<o&&this._cursorLineNumbers[r]===a?s[u]=t:s[u]=""}this._renderData=s}else this._renderData=null},t.prototype.render=function(e,t){if(!this._renderData)return"";var n=t-e;return n>=this._renderData.length?"":this._renderData[n]},t}(S_),BC=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return FC(t,e),t.prototype._renderOne=function(e){return'<div class="'+("current-line"+(this._shouldRenderOther()?" current-line-both":""))+'" style="width:'+Math.max(e.scrollWidth,this._contentWidth)+"px; height:"+this._lineHeight+'px;"></div>'},t.prototype._shouldRenderThis=function(){return("line"===this._renderLineHighlight||"all"===this._renderLineHighlight)&&this._selectionIsEmpty},t.prototype._shouldRenderOther=function(){return"gutter"===this._renderLineHighlight||"all"===this._renderLineHighlight},t}(VC),HC=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return FC(t,e),t.prototype._renderOne=function(e){return'<div class="'+("current-line current-line-margin"+(this._shouldRenderOther()?" current-line-margin-both":""))+'" style="width:'+this._contentLeft+"px; height:"+this._lineHeight+'px;"></div>'},t.prototype._shouldRenderThis=function(){return"gutter"===this._renderLineHighlight||"all"===this._renderLineHighlight},t.prototype._shouldRenderOther=function(){return("line"===this._renderLineHighlight||"all"===this._renderLineHighlight)&&this._selectionIsEmpty},t}(VC);yg((function(e,t){WC=!1;var n=e.getColor(Ab);if(n&&(t.addRule(".monaco-editor .view-overlays .current-line { background-color: "+n+"; }"),t.addRule(".monaco-editor .margin-view-overlays .current-line-margin { background-color: "+n+"; border: none; }")),!n||n.isTransparent()||e.defines(Fb)){var i=e.getColor(Fb);i&&(WC=!0,t.addRule(".monaco-editor .view-overlays .current-line { border: 2px solid "+i+"; }"),t.addRule(".monaco-editor .margin-view-overlays .current-line-margin { border: 2px solid "+i+"; }"),"hc"===e.type&&(t.addRule(".monaco-editor .view-overlays .current-line { border-width: 1px; }"),t.addRule(".monaco-editor .margin-view-overlays .current-line-margin { border-width: 1px; }")))}}));n(376);var zC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),jC=function(e){function t(t){var n=e.call(this)||this;n._context=t;var i=n._context.configuration.options;return n._lineHeight=i.get(49),n._typicalHalfwidthCharacterWidth=i.get(34).typicalHalfwidthCharacterWidth,n._renderResult=null,n._context.addEventHandler(n),n}return zC(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),this._renderResult=null,e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options;return this._lineHeight=t.get(49),this._typicalHalfwidthCharacterWidth=t.get(34).typicalHalfwidthCharacterWidth,!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollTopChanged||e.scrollWidthChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype.prepareRender=function(e){for(var t=e.getDecorationsInViewport(),n=[],i=0,o=0,r=t.length;o<r;o++){var s=t[o];s.options.className&&(n[i++]=s)}n=n.sort((function(e,t){if(e.options.zIndex<t.options.zIndex)return-1;if(e.options.zIndex>t.options.zIndex)return 1;var n=e.options.className,i=t.options.className;return n<i?-1:n>i?1:wn.compareRangesUsingStarts(e.range,t.range)}));for(var a=e.visibleRange.startLineNumber,u=e.visibleRange.endLineNumber,l=[],c=a;c<=u;c++){l[c-a]=""}this._renderWholeLineDecorations(e,n,l),this._renderNormalDecorations(e,n,l),this._renderResult=l},t.prototype._renderWholeLineDecorations=function(e,t,n){for(var i=String(this._lineHeight),o=e.visibleRange.startLineNumber,r=e.visibleRange.endLineNumber,s=0,a=t.length;s<a;s++){var u=t[s];if(u.options.isWholeLine)for(var l='<div class="cdr '+u.options.className+'" style="left:0;width:100%;height:'+i+'px;"></div>',c=Math.max(u.range.startLineNumber,o),d=Math.min(u.range.endLineNumber,r),h=c;h<=d;h++){n[h-o]+=l}}},t.prototype._renderNormalDecorations=function(e,t,n){for(var i=String(this._lineHeight),o=e.visibleRange.startLineNumber,r=null,s=!1,a=null,u=0,l=t.length;u<l;u++){var c=t[u];if(!c.options.isWholeLine){var d=c.options.className,h=Boolean(c.options.showIfCollapsed),p=c.range;h&&1===p.endColumn&&p.endLineNumber!==p.startLineNumber&&(p=new wn(p.startLineNumber,p.startColumn,p.endLineNumber-1,this._context.model.getLineMaxColumn(p.endLineNumber-1))),r===d&&s===h&&wn.areIntersectingOrTouching(a,p)?a=wn.plusRange(a,p):(null!==r&&this._renderNormalDecoration(e,a,r,s,i,o,n),r=d,s=h,a=p)}}null!==r&&this._renderNormalDecoration(e,a,r,s,i,o,n)},t.prototype._renderNormalDecoration=function(e,t,n,i,o,r,s){var a=e.linesVisibleRangesForRange(t,"findMatch"===n);if(a)for(var u=0,l=a.length;u<l;u++){var c=a[u];if(!c.outsideRenderedLine){var d=c.lineNumber-r;if(i&&1===c.ranges.length){var h=c.ranges[0];0===h.width&&(c.ranges[0]=new lg(h.left,this._typicalHalfwidthCharacterWidth))}for(var p=0,f=c.ranges.length;p<f;p++){var g=c.ranges[p],m='<div class="cdr '+n+'" style="left:'+String(g.left)+"px;width:"+String(g.width)+"px;height:"+o+'px;"></div>';s[d]+=m}}}},t.prototype.render=function(e,t){if(!this._renderResult)return"";var n=t-e;return n<0||n>=this._renderResult.length?"":this._renderResult[n]},t}(S_),UC=(n(377),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),KC=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return UC(t,e),t.prototype.onclick=function(e,t){this._register(uo(e,qo.CLICK,(function(e){return t(new li(e))})))},t.prototype.onmousedown=function(e,t){this._register(uo(e,qo.MOUSE_DOWN,(function(e){return t(new li(e))})))},t.prototype.onmouseover=function(e,t){this._register(uo(e,qo.MOUSE_OVER,(function(e){return t(new li(e))})))},t.prototype.onnonbubblingmouseout=function(e,t){this._register(fo(e,(function(e){return t(new li(e))})))},t.prototype.onkeydown=function(e,t){this._register(uo(e,qo.KEY_DOWN,(function(e){return t(new ni(e))})))},t.prototype.onkeyup=function(e,t){this._register(uo(e,qo.KEY_UP,(function(e){return t(new ni(e))})))},t.prototype.oninput=function(e,t){this._register(uo(e,qo.INPUT,t))},t.prototype.onblur=function(e,t){this._register(uo(e,qo.BLUR,t))},t.prototype.onfocus=function(e,t){this._register(uo(e,qo.FOCUS,t))},t.prototype.ignoreGesture=function(e){jf.ignoreTarget(e)},t}(He),qC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),GC=function(e){function t(t){var n=e.call(this)||this;return n._onActivate=t.onActivate,n.bgDomNode=document.createElement("div"),n.bgDomNode.className="arrow-background",n.bgDomNode.style.position="absolute",n.bgDomNode.style.width=t.bgWidth+"px",n.bgDomNode.style.height=t.bgHeight+"px",void 0!==t.top&&(n.bgDomNode.style.top="0px"),void 0!==t.left&&(n.bgDomNode.style.left="0px"),void 0!==t.bottom&&(n.bgDomNode.style.bottom="0px"),void 0!==t.right&&(n.bgDomNode.style.right="0px"),n.domNode=document.createElement("div"),n.domNode.className=t.className,n.domNode.style.position="absolute",n.domNode.style.width="11px",n.domNode.style.height="11px",void 0!==t.top&&(n.domNode.style.top=t.top+"px"),void 0!==t.left&&(n.domNode.style.left=t.left+"px"),void 0!==t.bottom&&(n.domNode.style.bottom=t.bottom+"px"),void 0!==t.right&&(n.domNode.style.right=t.right+"px"),n._mouseMoveMonitor=n._register(new Kf),n.onmousedown(n.bgDomNode,(function(e){return n._arrowMouseDown(e)})),n.onmousedown(n.domNode,(function(e){return n._arrowMouseDown(e)})),n._mousedownRepeatTimer=n._register(new bi),n._mousedownScheduleRepeatTimer=n._register(new yi),n}return qC(t,e),t.prototype._arrowMouseDown=function(e){var t=this;this._onActivate(),this._mousedownRepeatTimer.cancel(),this._mousedownScheduleRepeatTimer.cancelAndSet((function(){t._mousedownRepeatTimer.cancelAndSet((function(){return t._onActivate()}),1e3/24)}),200),this._mouseMoveMonitor.startMonitoring(e.target,e.buttons,Uf,(function(e){}),(function(){t._mousedownRepeatTimer.cancel(),t._mousedownScheduleRepeatTimer.cancel()})),e.preventDefault()},t}(KC),ZC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),YC=function(e){function t(t,n,i){var o=e.call(this)||this;return o._visibility=t,o._visibleClassName=n,o._invisibleClassName=i,o._domNode=null,o._isVisible=!1,o._isNeeded=!1,o._shouldBeVisible=!1,o._revealTimer=o._register(new yi),o}return ZC(t,e),t.prototype.applyVisibilitySetting=function(e){return 2!==this._visibility&&(3===this._visibility||e)},t.prototype.setShouldBeVisible=function(e){var t=this.applyVisibilitySetting(e);this._shouldBeVisible!==t&&(this._shouldBeVisible=t,this.ensureVisibility())},t.prototype.setIsNeeded=function(e){this._isNeeded!==e&&(this._isNeeded=e,this.ensureVisibility())},t.prototype.setDomNode=function(e){this._domNode=e,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)},t.prototype.ensureVisibility=function(){this._isNeeded?this._shouldBeVisible?this._reveal():this._hide(!0):this._hide(!1)},t.prototype._reveal=function(){var e=this;this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet((function(){e._domNode&&e._domNode.setClassName(e._visibleClassName)}),0))},t.prototype._hide=function(e){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode&&this._domNode.setClassName(this._invisibleClassName+(e?" fade":"")))},t}(He),XC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),$C=function(e){function t(t){var n=e.call(this)||this;return n._lazyRender=t.lazyRender,n._host=t.host,n._scrollable=t.scrollable,n._scrollbarState=t.scrollbarState,n._visibilityController=n._register(new YC(t.visibility,"visible scrollbar "+t.extraScrollbarClassName,"invisible scrollbar "+t.extraScrollbarClassName)),n._visibilityController.setIsNeeded(n._scrollbarState.isNeeded()),n._mouseMoveMonitor=n._register(new Kf),n._shouldRender=!0,n.domNode=Ff(document.createElement("div")),n.domNode.setAttribute("role","presentation"),n.domNode.setAttribute("aria-hidden","true"),n._visibilityController.setDomNode(n.domNode),n.domNode.setPosition("absolute"),n.onmousedown(n.domNode.domNode,(function(e){return n._domNodeMouseDown(e)})),n}return XC(t,e),t.prototype._createArrow=function(e){var t=this._register(new GC(e));this.domNode.domNode.appendChild(t.bgDomNode),this.domNode.domNode.appendChild(t.domNode)},t.prototype._createSlider=function(e,t,n,i){var o=this;this.slider=Ff(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(e),this.slider.setLeft(t),"number"==typeof n&&this.slider.setWidth(n),"number"==typeof i&&this.slider.setHeight(i),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this.onmousedown(this.slider.domNode,(function(e){e.leftButton&&(e.preventDefault(),o._sliderMouseDown(e,(function(){})))})),this.onclick(this.slider.domNode,(function(e){e.leftButton&&e.stopPropagation()}))},t.prototype._onElementSize=function(e){return this._scrollbarState.setVisibleSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender},t.prototype._onElementScrollSize=function(e){return this._scrollbarState.setScrollSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender},t.prototype._onElementScrollPosition=function(e){return this._scrollbarState.setScrollPosition(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender},t.prototype.beginReveal=function(){this._visibilityController.setShouldBeVisible(!0)},t.prototype.beginHide=function(){this._visibilityController.setShouldBeVisible(!1)},t.prototype.render=function(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))},t.prototype._domNodeMouseDown=function(e){e.target===this.domNode.domNode&&this._onMouseDown(e)},t.prototype.delegateMouseDown=function(e){var t=this.domNode.domNode.getClientRects()[0].top,n=t+this._scrollbarState.getSliderPosition(),i=t+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),o=this._sliderMousePosition(e);n<=o&&o<=i?e.leftButton&&(e.preventDefault(),this._sliderMouseDown(e,(function(){}))):this._onMouseDown(e)},t.prototype._onMouseDown=function(e){var t,n;if(e.target===this.domNode.domNode&&"number"==typeof e.browserEvent.offsetX&&"number"==typeof e.browserEvent.offsetY)t=e.browserEvent.offsetX,n=e.browserEvent.offsetY;else{var i=Oo(this.domNode.domNode);t=e.posx-i.left,n=e.posy-i.top}this._setDesiredScrollPositionNow(this._scrollbarState.getDesiredScrollPositionFromOffset(this._mouseDownRelativePosition(t,n))),e.leftButton&&(e.preventDefault(),this._sliderMouseDown(e,(function(){})))},t.prototype._sliderMouseDown=function(e,t){var n=this,i=this._sliderMousePosition(e),o=this._sliderOrthogonalMousePosition(e),r=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._mouseMoveMonitor.startMonitoring(e.target,e.buttons,Uf,(function(e){var t=n._sliderOrthogonalMousePosition(e),s=Math.abs(t-o);if(v&&s>140)n._setDesiredScrollPositionNow(r.getScrollPosition());else{var a=n._sliderMousePosition(e)-i;n._setDesiredScrollPositionNow(r.getDesiredScrollPositionFromDelta(a))}}),(function(){n.slider.toggleClassName("active",!1),n._host.onDragEnd(),t()})),this._host.onDragStart()},t.prototype._setDesiredScrollPositionNow=function(e){var t={};this.writeScrollPosition(t,e),this._scrollable.setScrollPositionNow(t)},t}(KC),QC=function(){function e(e,t,n,i,o,r){this._scrollbarSize=Math.round(t),this._oppositeScrollbarSize=Math.round(n),this._arrowSize=Math.round(e),this._visibleSize=i,this._scrollSize=o,this._scrollPosition=r,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}return e.prototype.clone=function(){return new e(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)},e.prototype.setVisibleSize=function(e){var t=Math.round(e);return this._visibleSize!==t&&(this._visibleSize=t,this._refreshComputedValues(),!0)},e.prototype.setScrollSize=function(e){var t=Math.round(e);return this._scrollSize!==t&&(this._scrollSize=t,this._refreshComputedValues(),!0)},e.prototype.setScrollPosition=function(e){var t=Math.round(e);return this._scrollPosition!==t&&(this._scrollPosition=t,this._refreshComputedValues(),!0)},e._computeValues=function(e,t,n,i,o){var r=Math.max(0,n-e),s=Math.max(0,r-2*t),a=i>0&&i>n;if(!a)return{computedAvailableSize:Math.round(r),computedIsNeeded:a,computedSliderSize:Math.round(s),computedSliderRatio:0,computedSliderPosition:0};var u=Math.round(Math.max(20,Math.floor(n*s/i))),l=(s-u)/(i-n),c=o*l;return{computedAvailableSize:Math.round(r),computedIsNeeded:a,computedSliderSize:Math.round(u),computedSliderRatio:l,computedSliderPosition:Math.round(c)}},e.prototype._refreshComputedValues=function(){var t=e._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=t.computedAvailableSize,this._computedIsNeeded=t.computedIsNeeded,this._computedSliderSize=t.computedSliderSize,this._computedSliderRatio=t.computedSliderRatio,this._computedSliderPosition=t.computedSliderPosition},e.prototype.getArrowSize=function(){return this._arrowSize},e.prototype.getScrollPosition=function(){return this._scrollPosition},e.prototype.getRectangleLargeSize=function(){return this._computedAvailableSize},e.prototype.getRectangleSmallSize=function(){return this._scrollbarSize},e.prototype.isNeeded=function(){return this._computedIsNeeded},e.prototype.getSliderSize=function(){return this._computedSliderSize},e.prototype.getSliderPosition=function(){return this._computedSliderPosition},e.prototype.getDesiredScrollPositionFromOffset=function(e){if(!this._computedIsNeeded)return 0;var t=e-this._arrowSize-this._computedSliderSize/2;return Math.round(t/this._computedSliderRatio)},e.prototype.getDesiredScrollPositionFromDelta=function(e){if(!this._computedIsNeeded)return 0;var t=this._computedSliderPosition+e;return Math.round(t/this._computedSliderRatio)},e}(),JC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),eS=function(e){function t(t,n,i){var o=this,r=t.getScrollDimensions(),s=t.getCurrentScrollPosition();if(o=e.call(this,{lazyRender:n.lazyRender,host:i,scrollbarState:new QC(n.horizontalHasArrows?n.arrowSize:0,2===n.horizontal?0:n.horizontalScrollbarSize,2===n.vertical?0:n.verticalScrollbarSize,r.width,r.scrollWidth,s.scrollLeft),visibility:n.horizontal,extraScrollbarClassName:"horizontal",scrollable:t})||this,n.horizontalHasArrows){var a=(n.arrowSize-11)/2,u=(n.horizontalScrollbarSize-11)/2;o._createArrow({className:"left-arrow",top:u,left:a,bottom:void 0,right:void 0,bgWidth:n.arrowSize,bgHeight:n.horizontalScrollbarSize,onActivate:function(){return o._host.onMouseWheel(new di(null,1,0))}}),o._createArrow({className:"right-arrow",top:u,left:void 0,bottom:void 0,right:a,bgWidth:n.arrowSize,bgHeight:n.horizontalScrollbarSize,onActivate:function(){return o._host.onMouseWheel(new di(null,-1,0))}})}return o._createSlider(Math.floor((n.horizontalScrollbarSize-n.horizontalSliderSize)/2),0,void 0,n.horizontalSliderSize),o}return JC(t,e),t.prototype._updateSlider=function(e,t){this.slider.setWidth(e),this.slider.setLeft(t)},t.prototype._renderDomNode=function(e,t){this.domNode.setWidth(e),this.domNode.setHeight(t),this.domNode.setLeft(0),this.domNode.setBottom(0)},t.prototype.onDidScroll=function(e){return this._shouldRender=this._onElementScrollSize(e.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(e.width)||this._shouldRender,this._shouldRender},t.prototype._mouseDownRelativePosition=function(e,t){return e},t.prototype._sliderMousePosition=function(e){return e.posx},t.prototype._sliderOrthogonalMousePosition=function(e){return e.posy},t.prototype.writeScrollPosition=function(e,t){e.scrollLeft=t},t}($C),tS=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),nS=function(e){function t(t,n,i){var o=this,r=t.getScrollDimensions(),s=t.getCurrentScrollPosition();if(o=e.call(this,{lazyRender:n.lazyRender,host:i,scrollbarState:new QC(n.verticalHasArrows?n.arrowSize:0,2===n.vertical?0:n.verticalScrollbarSize,0,r.height,r.scrollHeight,s.scrollTop),visibility:n.vertical,extraScrollbarClassName:"vertical",scrollable:t})||this,n.verticalHasArrows){var a=(n.arrowSize-11)/2,u=(n.verticalScrollbarSize-11)/2;o._createArrow({className:"up-arrow",top:a,left:u,bottom:void 0,right:void 0,bgWidth:n.verticalScrollbarSize,bgHeight:n.arrowSize,onActivate:function(){return o._host.onMouseWheel(new di(null,0,1))}}),o._createArrow({className:"down-arrow",top:void 0,left:u,bottom:a,right:void 0,bgWidth:n.verticalScrollbarSize,bgHeight:n.arrowSize,onActivate:function(){return o._host.onMouseWheel(new di(null,0,-1))}})}return o._createSlider(0,Math.floor((n.verticalScrollbarSize-n.verticalSliderSize)/2),n.verticalSliderSize,void 0),o}return tS(t,e),t.prototype._updateSlider=function(e,t){this.slider.setHeight(e),this.slider.setTop(t)},t.prototype._renderDomNode=function(e,t){this.domNode.setWidth(t),this.domNode.setHeight(e),this.domNode.setRight(0),this.domNode.setTop(0)},t.prototype.onDidScroll=function(e){return this._shouldRender=this._onElementScrollSize(e.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(e.height)||this._shouldRender,this._shouldRender},t.prototype._mouseDownRelativePosition=function(e,t){return t},t.prototype._sliderMousePosition=function(e){return e.posy},t.prototype._sliderOrthogonalMousePosition=function(e){return e.posx},t.prototype.writeScrollPosition=function(e,t){e.scrollTop=t},t}($C),iS=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),oS=function(){function e(e,t,n,i,o,r){(e|=0)<0&&(e=0),(n|=0)+e>(t|=0)&&(n=t-e),n<0&&(n=0),(i|=0)<0&&(i=0),(r|=0)+i>(o|=0)&&(r=o-i),r<0&&(r=0),this.width=e,this.scrollWidth=t,this.scrollLeft=n,this.height=i,this.scrollHeight=o,this.scrollTop=r}return e.prototype.equals=function(e){return this.width===e.width&&this.scrollWidth===e.scrollWidth&&this.scrollLeft===e.scrollLeft&&this.height===e.height&&this.scrollHeight===e.scrollHeight&&this.scrollTop===e.scrollTop},e.prototype.withScrollDimensions=function(t){return new e(void 0!==t.width?t.width:this.width,void 0!==t.scrollWidth?t.scrollWidth:this.scrollWidth,this.scrollLeft,void 0!==t.height?t.height:this.height,void 0!==t.scrollHeight?t.scrollHeight:this.scrollHeight,this.scrollTop)},e.prototype.withScrollPosition=function(t){return new e(this.width,this.scrollWidth,void 0!==t.scrollLeft?t.scrollLeft:this.scrollLeft,this.height,this.scrollHeight,void 0!==t.scrollTop?t.scrollTop:this.scrollTop)},e.prototype.createScrollEvent=function(e){var t=this.width!==e.width,n=this.scrollWidth!==e.scrollWidth,i=this.scrollLeft!==e.scrollLeft,o=this.height!==e.height,r=this.scrollHeight!==e.scrollHeight,s=this.scrollTop!==e.scrollTop;return{width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:t,scrollWidthChanged:n,scrollLeftChanged:i,heightChanged:o,scrollHeightChanged:r,scrollTopChanged:s}},e}(),rS=function(e){function t(t,n){var i=e.call(this)||this;return i._onScroll=i._register(new nt),i.onScroll=i._onScroll.event,i._smoothScrollDuration=t,i._scheduleAtNextAnimationFrame=n,i._state=new oS(0,0,0,0,0,0),i._smoothScrolling=null,i}return iS(t,e),t.prototype.dispose=function(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),e.prototype.dispose.call(this)},t.prototype.setSmoothScrollDuration=function(e){this._smoothScrollDuration=e},t.prototype.validateScrollPosition=function(e){return this._state.withScrollPosition(e)},t.prototype.getScrollDimensions=function(){return this._state},t.prototype.setScrollDimensions=function(e){var t=this._state.withScrollDimensions(e);this._setState(t),this._smoothScrolling&&this._smoothScrolling.acceptScrollDimensions(this._state)},t.prototype.getFutureScrollPosition=function(){return this._smoothScrolling?this._smoothScrolling.to:this._state},t.prototype.getCurrentScrollPosition=function(){return this._state},t.prototype.setScrollPositionNow=function(e){var t=this._state.withScrollPosition(e);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(t)},t.prototype.setScrollPositionSmooth=function(e){var t=this;if(0===this._smoothScrollDuration)return this.setScrollPositionNow(e);if(this._smoothScrolling){e={scrollLeft:void 0===e.scrollLeft?this._smoothScrolling.to.scrollLeft:e.scrollLeft,scrollTop:void 0===e.scrollTop?this._smoothScrolling.to.scrollTop:e.scrollTop};var n=this._state.withScrollPosition(e);if(this._smoothScrolling.to.scrollLeft===n.scrollLeft&&this._smoothScrolling.to.scrollTop===n.scrollTop)return;var i=this._smoothScrolling.combine(this._state,n,this._smoothScrollDuration);this._smoothScrolling.dispose(),this._smoothScrolling=i}else{n=this._state.withScrollPosition(e);this._smoothScrolling=uS.start(this._state,n,this._smoothScrollDuration)}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame((function(){t._smoothScrolling&&(t._smoothScrolling.animationFrameDisposable=null,t._performSmoothScrolling())}))},t.prototype._performSmoothScrolling=function(){var e=this;if(this._smoothScrolling){var t=this._smoothScrolling.tick(),n=this._state.withScrollPosition(t);if(this._setState(n),t.isDone)return this._smoothScrolling.dispose(),void(this._smoothScrolling=null);this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame((function(){e._smoothScrolling&&(e._smoothScrolling.animationFrameDisposable=null,e._performSmoothScrolling())}))}},t.prototype._setState=function(e){var t=this._state;t.equals(e)||(this._state=e,this._onScroll.fire(this._state.createScrollEvent(t)))},t}(He),sS=function(e,t,n){this.scrollLeft=e,this.scrollTop=t,this.isDone=n};function aS(e,t){var n=t-e;return function(t){return e+n*(1-function(e){return Math.pow(e,3)}(1-t))}}var uS=function(){function e(e,t,n,i){this.from=e,this.to=t,this.duration=i,this._startTime=n,this.animationFrameDisposable=null,this._initAnimations()}return e.prototype._initAnimations=function(){this.scrollLeft=this._initAnimation(this.from.scrollLeft,this.to.scrollLeft,this.to.width),this.scrollTop=this._initAnimation(this.from.scrollTop,this.to.scrollTop,this.to.height)},e.prototype._initAnimation=function(e,t,n){var i,o,r;if(Math.abs(e-t)>2.5*n){var s=void 0,a=void 0;return e<t?(s=e+.75*n,a=t-.75*n):(s=e-.75*n,a=t+.75*n),i=aS(e,s),o=aS(a,t),r=.33,function(e){return e<r?i(e/r):o((e-r)/(1-r))}}return aS(e,t)},e.prototype.dispose=function(){null!==this.animationFrameDisposable&&(this.animationFrameDisposable.dispose(),this.animationFrameDisposable=null)},e.prototype.acceptScrollDimensions=function(e){this.to=e.withScrollPosition(this.to),this._initAnimations()},e.prototype.tick=function(){return this._tick(Date.now())},e.prototype._tick=function(e){var t=(e-this._startTime)/this.duration;if(t<1){var n=this.scrollLeft(t),i=this.scrollTop(t);return new sS(n,i,!1)}return new sS(this.to.scrollLeft,this.to.scrollTop,!0)},e.prototype.combine=function(t,n,i){return e.start(t,n,i)},e.start=function(t,n,i){return i+=10,new e(t,n,Date.now()-10,i)},e}();var lS=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),cS=function(e,t,n){this.timestamp=e,this.deltaX=t,this.deltaY=n,this.score=0},dS=function(){function e(){this._capacity=5,this._memory=[],this._front=-1,this._rear=-1}return e.prototype.isPhysicalMouseWheel=function(){if(-1===this._front&&-1===this._rear)return!1;for(var e=1,t=0,n=1,i=this._rear;;){var o=i===this._front?e:Math.pow(2,-n);if(e-=o,t+=this._memory[i].score*o,i===this._front)break;i=(this._capacity+i-1)%this._capacity,n++}return t<=.5},e.prototype.accept=function(e,t,n){var i=new cS(e,t,n);i.score=this._computeScore(i),-1===this._front&&-1===this._rear?(this._memory[0]=i,this._front=0,this._rear=0):(this._rear=(this._rear+1)%this._capacity,this._rear===this._front&&(this._front=(this._front+1)%this._capacity),this._memory[this._rear]=i)},e.prototype._computeScore=function(e){if(Math.abs(e.deltaX)>0&&Math.abs(e.deltaY)>0)return 1;var t=.5;-1===this._front&&-1===this._rear||this._memory[this._rear];return(Math.abs(e.deltaX-Math.round(e.deltaX))>0||Math.abs(e.deltaY-Math.round(e.deltaY))>0)&&(t+=.25),Math.min(Math.max(t,0),1)},e.INSTANCE=new e,e}(),hS=function(e){function t(t,n,i){var o=e.call(this)||this;o._onScroll=o._register(new nt),o.onScroll=o._onScroll.event,t.style.overflow="hidden",o._options=mS(n),o._scrollable=i,o._register(o._scrollable.onScroll((function(e){o._onDidScroll(e),o._onScroll.fire(e)})));var r={onMouseWheel:function(e){return o._onMouseWheel(e)},onDragStart:function(){return o._onDragStart()},onDragEnd:function(){return o._onDragEnd()}};return o._verticalScrollbar=o._register(new nS(o._scrollable,o._options,r)),o._horizontalScrollbar=o._register(new eS(o._scrollable,o._options,r)),o._domNode=document.createElement("div"),o._domNode.className="monaco-scrollable-element "+o._options.className,o._domNode.setAttribute("role","presentation"),o._domNode.style.position="relative",o._domNode.style.overflow="hidden",o._domNode.appendChild(t),o._domNode.appendChild(o._horizontalScrollbar.domNode.domNode),o._domNode.appendChild(o._verticalScrollbar.domNode.domNode),o._options.useShadows?(o._leftShadowDomNode=Ff(document.createElement("div")),o._leftShadowDomNode.setClassName("shadow"),o._domNode.appendChild(o._leftShadowDomNode.domNode),o._topShadowDomNode=Ff(document.createElement("div")),o._topShadowDomNode.setClassName("shadow"),o._domNode.appendChild(o._topShadowDomNode.domNode),o._topLeftShadowDomNode=Ff(document.createElement("div")),o._topLeftShadowDomNode.setClassName("shadow top-left-corner"),o._domNode.appendChild(o._topLeftShadowDomNode.domNode)):(o._leftShadowDomNode=null,o._topShadowDomNode=null,o._topLeftShadowDomNode=null),o._listenOnDomNode=o._options.listenOnDomNode||o._domNode,o._mouseWheelToDispose=[],o._setListeningToMouseWheel(o._options.handleMouseWheel),o.onmouseover(o._listenOnDomNode,(function(e){return o._onMouseOver(e)})),o.onnonbubblingmouseout(o._listenOnDomNode,(function(e){return o._onMouseOut(e)})),o._hideTimeout=o._register(new yi),o._isDragging=!1,o._mouseIsOver=!1,o._shouldRender=!0,o._revealOnScroll=!0,o}return lS(t,e),t.prototype.dispose=function(){this._mouseWheelToDispose=Ae(this._mouseWheelToDispose),e.prototype.dispose.call(this)},t.prototype.getDomNode=function(){return this._domNode},t.prototype.getOverviewRulerLayoutInfo=function(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}},t.prototype.delegateVerticalScrollbarMouseDown=function(e){this._verticalScrollbar.delegateMouseDown(e)},t.prototype.getScrollDimensions=function(){return this._scrollable.getScrollDimensions()},t.prototype.setScrollDimensions=function(e){this._scrollable.setScrollDimensions(e)},t.prototype.updateClassName=function(e){this._options.className=e,_&&(this._options.className+=" mac"),this._domNode.className="monaco-scrollable-element "+this._options.className},t.prototype.updateOptions=function(e){var t=mS(e);this._options.handleMouseWheel=t.handleMouseWheel,this._options.mouseWheelScrollSensitivity=t.mouseWheelScrollSensitivity,this._options.fastScrollSensitivity=t.fastScrollSensitivity,this._setListeningToMouseWheel(this._options.handleMouseWheel),this._options.lazyRender||this._render()},t.prototype._setListeningToMouseWheel=function(e){var t=this;if(this._mouseWheelToDispose.length>0!==e&&(this._mouseWheelToDispose=Ae(this._mouseWheelToDispose),e)){this._mouseWheelToDispose.push(uo(this._listenOnDomNode,Hn?"mousewheel":"wheel",(function(e){t._onMouseWheel(new di(e))}),{passive:!1}))}},t.prototype._onMouseWheel=function(e){var t,n=dS.INSTANCE;if(n.accept(Date.now(),e.deltaX,e.deltaY),e.deltaY||e.deltaX){var i=e.deltaY*this._options.mouseWheelScrollSensitivity,o=e.deltaX*this._options.mouseWheelScrollSensitivity;this._options.flipAxes&&(i=(t=[o,i])[0],o=t[1]);var r=!_&&e.browserEvent&&e.browserEvent.shiftKey;!this._options.scrollYToX&&!r||o||(o=i,i=0),e.browserEvent&&e.browserEvent.altKey&&(o*=this._options.fastScrollSensitivity,i*=this._options.fastScrollSensitivity);var s=this._scrollable.getFutureScrollPosition(),a={};if(i){var u=s.scrollTop-50*i;this._verticalScrollbar.writeScrollPosition(a,u)}if(o){var l=s.scrollLeft-50*o;this._horizontalScrollbar.writeScrollPosition(a,l)}if(a=this._scrollable.validateScrollPosition(a),s.scrollLeft!==a.scrollLeft||s.scrollTop!==a.scrollTop)this._options.mouseWheelSmoothScroll&&n.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(a):this._scrollable.setScrollPositionNow(a),this._shouldRender=!0}(this._options.alwaysConsumeMouseWheel||this._shouldRender)&&(e.preventDefault(),e.stopPropagation())},t.prototype._onDidScroll=function(e){this._shouldRender=this._horizontalScrollbar.onDidScroll(e)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(e)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()},t.prototype.renderNow=function(){if(!this._options.lazyRender)throw new Error("Please use `lazyRender` together with `renderNow`!");this._render()},t.prototype._render=function(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){var e=this._scrollable.getCurrentScrollPosition(),t=e.scrollTop>0,n=e.scrollLeft>0;this._leftShadowDomNode.setClassName("shadow"+(n?" left":"")),this._topShadowDomNode.setClassName("shadow"+(t?" top":"")),this._topLeftShadowDomNode.setClassName("shadow top-left-corner"+(t?" top":"")+(n?" left":""))}},t.prototype._onDragStart=function(){this._isDragging=!0,this._reveal()},t.prototype._onDragEnd=function(){this._isDragging=!1,this._hide()},t.prototype._onMouseOut=function(e){this._mouseIsOver=!1,this._hide()},t.prototype._onMouseOver=function(e){this._mouseIsOver=!0,this._reveal()},t.prototype._reveal=function(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()},t.prototype._hide=function(){this._mouseIsOver||this._isDragging||(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())},t.prototype._scheduleHide=function(){var e=this;this._mouseIsOver||this._isDragging||this._hideTimeout.cancelAndSet((function(){return e._hide()}),500)},t}(KC),pS=function(e){function t(t,n){var i=this;(n=n||{}).mouseWheelSmoothScroll=!1;var o=new rS(0,(function(e){return mo(e)}));return(i=e.call(this,t,n,o)||this)._register(o),i}return lS(t,e),t.prototype.setScrollPosition=function(e){this._scrollable.setScrollPositionNow(e)},t.prototype.getScrollPosition=function(){return this._scrollable.getCurrentScrollPosition()},t}(hS),fS=function(e){function t(t,n,i){return e.call(this,t,n,i)||this}return lS(t,e),t}(hS),gS=function(e){function t(t,n){var i=e.call(this,t,n)||this;return i._element=t,i.onScroll((function(e){e.scrollTopChanged&&(i._element.scrollTop=e.scrollTop),e.scrollLeftChanged&&(i._element.scrollLeft=e.scrollLeft)})),i.scanDomNode(),i}return lS(t,e),t.prototype.scanDomNode=function(){this.setScrollDimensions({width:this._element.clientWidth,scrollWidth:this._element.scrollWidth,height:this._element.clientHeight,scrollHeight:this._element.scrollHeight}),this.setScrollPosition({scrollLeft:this._element.scrollLeft,scrollTop:this._element.scrollTop})},t}(pS);function mS(e){var t={lazyRender:void 0!==e.lazyRender&&e.lazyRender,className:void 0!==e.className?e.className:"",useShadows:void 0===e.useShadows||e.useShadows,handleMouseWheel:void 0===e.handleMouseWheel||e.handleMouseWheel,flipAxes:void 0!==e.flipAxes&&e.flipAxes,alwaysConsumeMouseWheel:void 0!==e.alwaysConsumeMouseWheel&&e.alwaysConsumeMouseWheel,scrollYToX:void 0!==e.scrollYToX&&e.scrollYToX,mouseWheelScrollSensitivity:void 0!==e.mouseWheelScrollSensitivity?e.mouseWheelScrollSensitivity:1,fastScrollSensitivity:void 0!==e.fastScrollSensitivity?e.fastScrollSensitivity:5,mouseWheelSmoothScroll:void 0===e.mouseWheelSmoothScroll||e.mouseWheelSmoothScroll,arrowSize:void 0!==e.arrowSize?e.arrowSize:11,listenOnDomNode:void 0!==e.listenOnDomNode?e.listenOnDomNode:null,horizontal:void 0!==e.horizontal?e.horizontal:1,horizontalScrollbarSize:void 0!==e.horizontalScrollbarSize?e.horizontalScrollbarSize:10,horizontalSliderSize:void 0!==e.horizontalSliderSize?e.horizontalSliderSize:0,horizontalHasArrows:void 0!==e.horizontalHasArrows&&e.horizontalHasArrows,vertical:void 0!==e.vertical?e.vertical:1,verticalScrollbarSize:void 0!==e.verticalScrollbarSize?e.verticalScrollbarSize:10,verticalHasArrows:void 0!==e.verticalHasArrows&&e.verticalHasArrows,verticalSliderSize:void 0!==e.verticalSliderSize?e.verticalSliderSize:0};return t.horizontalSliderSize=void 0!==e.horizontalSliderSize?e.horizontalSliderSize:t.horizontalScrollbarSize,t.verticalSliderSize=void 0!==e.verticalSliderSize?e.verticalSliderSize:t.verticalScrollbarSize,_&&(t.className+=" mac"),t}var vS=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),_S=function(e){function t(t,n,i,o){var r=e.call(this,t)||this,s=r._context.configuration.options,a=s.get(78),u=s.get(56),l=s.get(27),c={listenOnDomNode:i.domNode,className:"editor-scrollable "+mg(t.theme.type),useShadows:!1,lazyRender:!0,vertical:a.vertical,horizontal:a.horizontal,verticalHasArrows:a.verticalHasArrows,horizontalHasArrows:a.horizontalHasArrows,verticalScrollbarSize:a.verticalScrollbarSize,verticalSliderSize:a.verticalSliderSize,horizontalScrollbarSize:a.horizontalScrollbarSize,horizontalSliderSize:a.horizontalSliderSize,handleMouseWheel:a.handleMouseWheel,alwaysConsumeMouseWheel:a.alwaysConsumeMouseWheel,arrowSize:a.arrowSize,mouseWheelScrollSensitivity:u,fastScrollSensitivity:l};r.scrollbar=r._register(new fS(n.domNode,c,r._context.viewLayout.getScrollable())),rg.write(r.scrollbar.getDomNode(),5),r.scrollbarDomNode=Ff(r.scrollbar.getDomNode()),r.scrollbarDomNode.setPosition("absolute"),r._setLayout();var d=function(e,t,n){var i={};if(t){var o=e.scrollTop;o&&(i.scrollTop=r._context.viewLayout.getCurrentScrollTop()+o,e.scrollTop=0)}if(n){var s=e.scrollLeft;s&&(i.scrollLeft=r._context.viewLayout.getCurrentScrollLeft()+s,e.scrollLeft=0)}r._context.viewLayout.setScrollPositionNow(i)};return r._register(uo(i.domNode,"scroll",(function(e){return d(i.domNode,!0,!0)}))),r._register(uo(n.domNode,"scroll",(function(e){return d(n.domNode,!0,!1)}))),r._register(uo(o.domNode,"scroll",(function(e){return d(o.domNode,!0,!1)}))),r._register(uo(r.scrollbarDomNode.domNode,"scroll",(function(e){return d(r.scrollbarDomNode.domNode,!0,!1)}))),r}return vS(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._setLayout=function(){var e=this._context.configuration.options,t=e.get(107);this.scrollbarDomNode.setLeft(t.contentLeft),"right"===e.get(54).side?this.scrollbarDomNode.setWidth(t.contentWidth+t.minimapWidth):this.scrollbarDomNode.setWidth(t.contentWidth),this.scrollbarDomNode.setHeight(t.height)},t.prototype.getOverviewRulerLayoutInfo=function(){return this.scrollbar.getOverviewRulerLayoutInfo()},t.prototype.getDomNode=function(){return this.scrollbarDomNode},t.prototype.delegateVerticalScrollbarMouseDown=function(e){this.scrollbar.delegateVerticalScrollbarMouseDown(e)},t.prototype.onConfigurationChanged=function(e){if(e.hasChanged(78)||e.hasChanged(56)||e.hasChanged(27)){var t=this._context.configuration.options,n=t.get(78),i=t.get(56),o=t.get(27),r={handleMouseWheel:n.handleMouseWheel,mouseWheelScrollSensitivity:i,fastScrollSensitivity:o};this.scrollbar.updateOptions(r)}return e.hasChanged(107)&&this._setLayout(),!0},t.prototype.onScrollChanged=function(e){return!0},t.prototype.onThemeChanged=function(e){return this.scrollbar.updateClassName("editor-scrollable "+mg(this._context.theme.type)),!0},t.prototype.prepareRender=function(e){},t.prototype.render=function(e){this.scrollbar.renderNow()},t}(og),yS=(n(378),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),bS=function(e,t,n){this.startLineNumber=+e,this.endLineNumber=+t,this.className=String(n)},wS=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return yS(t,e),t.prototype._render=function(e,t,n){for(var i=[],o=e;o<=t;o++){i[o-e]=[]}if(0===n.length)return i;n.sort((function(e,t){return e.className===t.className?e.startLineNumber===t.startLineNumber?e.endLineNumber-t.endLineNumber:e.startLineNumber-t.startLineNumber:e.className<t.className?-1:1}));for(var r=null,s=0,a=0,u=n.length;a<u;a++){var l=n[a],c=l.className,d=Math.max(l.startLineNumber,e)-e,h=Math.min(l.endLineNumber,t)-e;r===c?(d=Math.max(s+1,d),s=Math.max(s,h)):(r=c,s=h);for(var p=d;p<=s;p++)i[p].push(r)}return i},t}(S_),CS=function(e){function t(t){var n=e.call(this)||this;n._context=t;var i=n._context.configuration.options,o=i.get(107);return n._lineHeight=i.get(49),n._glyphMargin=i.get(40),n._glyphMarginLeft=o.glyphMarginLeft,n._glyphMarginWidth=o.glyphMarginWidth,n._renderResult=null,n._context.addEventHandler(n),n}return yS(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),this._renderResult=null,e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options,n=t.get(107);return this._lineHeight=t.get(49),this._glyphMargin=t.get(40),this._glyphMarginLeft=n.glyphMarginLeft,this._glyphMarginWidth=n.glyphMarginWidth,!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollTopChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype._getDecorations=function(e){for(var t=e.getDecorationsInViewport(),n=[],i=0,o=0,r=t.length;o<r;o++){var s=t[o],a=s.options.glyphMarginClassName;a&&(n[i++]=new bS(s.range.startLineNumber,s.range.endLineNumber,a))}return n},t.prototype.prepareRender=function(e){if(this._glyphMargin){for(var t=e.visibleRange.startLineNumber,n=e.visibleRange.endLineNumber,i=this._render(t,n,this._getDecorations(e)),o=this._lineHeight.toString(),r='" style="left:'+this._glyphMarginLeft.toString()+"px;width:"+this._glyphMarginWidth.toString()+"px;height:"+o+'px;"></div>',s=[],a=t;a<=n;a++){var u=a-t,l=i[u];0===l.length?s[u]="":s[u]='<div class="cgmr codicon '+l.join(" ")+r}this._renderResult=s}else this._renderResult=null},t.prototype.render=function(e,t){if(!this._renderResult)return"";var n=t-e;return n<0||n>=this._renderResult.length?"":this._renderResult[n]},t}(wS),SS=(n(379),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),LS=function(e){function t(t){var n=e.call(this)||this;n._context=t,n._primaryLineNumber=0;var i=n._context.configuration.options,o=i.get(108),r=i.get(34);return n._lineHeight=i.get(49),n._spaceWidth=r.spaceWidth,n._enabled=i.get(70),n._activeIndentEnabled=i.get(43),n._maxIndentLeft=-1===o.wrappingColumn?-1:o.wrappingColumn*r.typicalHalfwidthCharacterWidth,n._renderResult=null,n._context.addEventHandler(n),n}return SS(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),this._renderResult=null,e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options,n=t.get(108),i=t.get(34);return this._lineHeight=t.get(49),this._spaceWidth=i.spaceWidth,this._enabled=t.get(70),this._activeIndentEnabled=t.get(43),this._maxIndentLeft=-1===n.wrappingColumn?-1:n.wrappingColumn*i.typicalHalfwidthCharacterWidth,!0},t.prototype.onCursorStateChanged=function(e){var t=e.selections[0],n=t.isEmpty()?t.positionLineNumber:0;return this._primaryLineNumber!==n&&(this._primaryLineNumber=n,!0)},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollTopChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype.onLanguageConfigurationChanged=function(e){return!0},t.prototype.prepareRender=function(e){if(this._enabled){var t=e.visibleRange.startLineNumber,n=e.visibleRange.endLineNumber,i=this._context.model.getOptions().indentSize*this._spaceWidth,o=e.scrollWidth,r=this._lineHeight,s=this._context.model.getLinesIndentGuides(t,n),a=0,u=0,l=0;if(this._activeIndentEnabled&&this._primaryLineNumber){var c=this._context.model.getActiveIndentGuide(this._primaryLineNumber,t,n);a=c.startLineNumber,u=c.endLineNumber,l=c.indent}for(var d=[],h=t;h<=n;h++){var p=a<=h&&h<=u,f=h-t,g=s[f],m="";if(g>=1)for(var v=e.visibleRangeForPosition(new bn(h,1)),_=v?v.left:0,y=1;y<=g;y++){if(m+='<div class="'+(p&&y===l?"cigra":"cigr")+'" style="left:'+_+"px;height:"+r+"px;width:"+i+'px"></div>',(_+=i)>o||this._maxIndentLeft>0&&_>this._maxIndentLeft)break}d[f]=m}this._renderResult=d}else this._renderResult=null},t.prototype.render=function(e,t){if(!this._renderResult)return"";var n=t-e;return n<0||n>=this._renderResult.length?"":this._renderResult[n]},t}(S_);yg((function(e,t){var n=e.getColor(Kb);n&&t.addRule(".monaco-editor .lines-content .cigr { box-shadow: 1px 0 0 0 "+n+" inset; }");var i=e.getColor(qb)||n;i&&t.addRule(".monaco-editor .lines-content .cigra { box-shadow: 1px 0 0 0 "+i+" inset; }")}));n(380);var xS=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),DS=function(){function e(){this._currentVisibleRange=new wn(1,1,1,1)}return e.prototype.getCurrentVisibleRange=function(){return this._currentVisibleRange},e.prototype.setCurrentVisibleRange=function(e){this._currentVisibleRange=e},e}(),NS=function(e,t,n,i,o,r){this.lineNumber=e,this.startColumn=t,this.endColumn=n,this.startScrollTop=i,this.stopScrollTop=o,this.scrollType=r},kS=function(e){function t(t,n){var i=e.call(this,t)||this;i._linesContent=n,i._textRangeRestingSpot=document.createElement("div"),i._visibleLines=new DC(i),i.domNode=i._visibleLines.domNode;var o=i._context.configuration,r=i._context.configuration.options,s=r.get(34),a=r.get(108);return i._lineHeight=r.get(49),i._typicalHalfwidthCharacterWidth=s.typicalHalfwidthCharacterWidth,i._isViewportWrapping=a.isViewportWrapping,i._revealHorizontalRightPadding=r.get(75),i._cursorSurroundingLines=r.get(19),i._cursorSurroundingLinesStyle=r.get(20),i._canUseLayerHinting=!r.get(22),i._viewLineOptions=new Lg(o,i._context.theme.type),rg.write(i.domNode,7),i.domNode.setClassName("view-lines"),af.applyFontInfo(i.domNode,s),i._maxLineWidth=0,i._asyncUpdateLineWidths=new wi((function(){i._updateLineWidthsSlow()}),200),i._lastRenderedData=new DS,i._horizontalRevealRequest=null,i}return xS(t,e),t.prototype.dispose=function(){this._asyncUpdateLineWidths.dispose(),e.prototype.dispose.call(this)},t.prototype.getDomNode=function(){return this.domNode},t.prototype.createVisibleLine=function(){return new xg(this._viewLineOptions)},t.prototype.onConfigurationChanged=function(e){this._visibleLines.onConfigurationChanged(e),e.hasChanged(108)&&(this._maxLineWidth=0);var t=this._context.configuration.options,n=t.get(34),i=t.get(108);return this._lineHeight=t.get(49),this._typicalHalfwidthCharacterWidth=n.typicalHalfwidthCharacterWidth,this._isViewportWrapping=i.isViewportWrapping,this._revealHorizontalRightPadding=t.get(75),this._cursorSurroundingLines=t.get(19),this._cursorSurroundingLinesStyle=t.get(20),this._canUseLayerHinting=!t.get(22),af.applyFontInfo(this.domNode,n),this._onOptionsMaybeChanged(),e.hasChanged(107)&&(this._maxLineWidth=0),!0},t.prototype._onOptionsMaybeChanged=function(){var e=this._context.configuration,t=new Lg(e,this._context.theme.type);if(!this._viewLineOptions.equals(t)){this._viewLineOptions=t;for(var n=this._visibleLines.getStartLineNumber(),i=this._visibleLines.getEndLineNumber(),o=n;o<=i;o++){this._visibleLines.getVisibleLine(o).onOptionsChanged(this._viewLineOptions)}return!0}return!1},t.prototype.onCursorStateChanged=function(e){for(var t=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber(),i=!1,o=t;o<=n;o++)i=this._visibleLines.getVisibleLine(o).onSelectionChanged()||i;return i},t.prototype.onDecorationsChanged=function(e){for(var t=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber(),i=t;i<=n;i++)this._visibleLines.getVisibleLine(i).onDecorationsChanged();return!0},t.prototype.onFlushed=function(e){var t=this._visibleLines.onFlushed(e);return this._maxLineWidth=0,t},t.prototype.onLinesChanged=function(e){return this._visibleLines.onLinesChanged(e)},t.prototype.onLinesDeleted=function(e){return this._visibleLines.onLinesDeleted(e)},t.prototype.onLinesInserted=function(e){return this._visibleLines.onLinesInserted(e)},t.prototype.onRevealRangeRequest=function(e){var t=this._computeScrollTopToRevealRange(this._context.viewLayout.getFutureViewport(),e.source,e.range,e.verticalType),n=this._context.viewLayout.validateScrollPosition({scrollTop:t});e.revealHorizontal?e.range.startLineNumber!==e.range.endLineNumber?n={scrollTop:n.scrollTop,scrollLeft:0}:this._horizontalRevealRequest=new NS(e.range.startLineNumber,e.range.startColumn,e.range.endColumn,this._context.viewLayout.getCurrentScrollTop(),n.scrollTop,e.scrollType):this._horizontalRevealRequest=null;var i=Math.abs(this._context.viewLayout.getCurrentScrollTop()-n.scrollTop);return 0===e.scrollType&&i>this._lineHeight?this._context.viewLayout.setScrollPositionSmooth(n):this._context.viewLayout.setScrollPositionNow(n),!0},t.prototype.onScrollChanged=function(e){if(this._horizontalRevealRequest&&e.scrollLeftChanged&&(this._horizontalRevealRequest=null),this._horizontalRevealRequest&&e.scrollTopChanged){var t=Math.min(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop),n=Math.max(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop);(e.scrollTop<t||e.scrollTop>n)&&(this._horizontalRevealRequest=null)}return this.domNode.setWidth(e.scrollWidth),this._visibleLines.onScrollChanged(e)||!0},t.prototype.onTokensChanged=function(e){return this._visibleLines.onTokensChanged(e)},t.prototype.onZonesChanged=function(e){return this._context.viewLayout.onMaxLineWidthChanged(this._maxLineWidth),this._visibleLines.onZonesChanged(e)},t.prototype.onThemeChanged=function(e){return this._onOptionsMaybeChanged()},t.prototype.getPositionFromDOMInfo=function(e,t){var n=this._getViewLineDomNode(e);if(null===n)return null;var i=this._getLineNumberFor(n);if(-1===i)return null;if(i<1||i>this._context.model.getLineCount())return null;if(1===this._context.model.getLineMaxColumn(i))return new bn(i,1);var o=this._visibleLines.getStartLineNumber(),r=this._visibleLines.getEndLineNumber();if(i<o||i>r)return null;var s=this._visibleLines.getVisibleLine(i).getColumnOfNodeOffset(i,e,t),a=this._context.model.getLineMinColumn(i);return s<a&&(s=a),new bn(i,s)},t.prototype._getViewLineDomNode=function(e){for(;e&&1===e.nodeType;){if(e.className===xg.CLASS_NAME)return e;e=e.parentElement}return null},t.prototype._getLineNumberFor=function(e){for(var t=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber(),i=t;i<=n;i++){if(e===this._visibleLines.getVisibleLine(i).getDomNode())return i}return-1},t.prototype.getLineWidth=function(e){var t=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber();return e<t||e>n?-1:this._visibleLines.getVisibleLine(e).getWidth()},t.prototype.linesVisibleRangesForRange=function(e,t){if(this.shouldRender())return null;var n=e.endLineNumber,i=wn.intersectRanges(e,this._lastRenderedData.getCurrentVisibleRange());if(!i)return null;var o=[],r=0,s=new Sg(this.domNode.domNode,this._textRangeRestingSpot),a=0;t&&(a=this._context.model.coordinatesConverter.convertViewPositionToModelPosition(new bn(i.startLineNumber,1)).lineNumber);for(var u=this._visibleLines.getStartLineNumber(),l=this._visibleLines.getEndLineNumber(),c=i.startLineNumber;c<=i.endLineNumber;c++)if(!(c<u||c>l)){var d=c===i.startLineNumber?i.startColumn:1,h=c===i.endLineNumber?i.endColumn:this._context.model.getLineMaxColumn(c),p=this._visibleLines.getVisibleLine(c).getVisibleRangesForRange(d,h,s);if(p){if(t&&c<n)a!==(a=this._context.model.coordinatesConverter.convertViewPositionToModelPosition(new bn(c+1,1)).lineNumber)&&(p.ranges[p.ranges.length-1].width+=this._typicalHalfwidthCharacterWidth);o[r++]=new ug(p.outsideRenderedLine,c,p.ranges)}}return 0===r?null:o},t.prototype._visibleRangesForLineRange=function(e,t,n){return this.shouldRender()||e<this._visibleLines.getStartLineNumber()||e>this._visibleLines.getEndLineNumber()?null:this._visibleLines.getVisibleLine(e).getVisibleRangesForRange(t,n,new Sg(this.domNode.domNode,this._textRangeRestingSpot))},t.prototype.visibleRangeForPosition=function(e){var t=this._visibleRangesForLineRange(e.lineNumber,e.column,e.column);return t?new cg(t.outsideRenderedLine,t.ranges[0].left):null},t.prototype.updateLineWidths=function(){this._updateLineWidths(!1)},t.prototype._updateLineWidthsFast=function(){return this._updateLineWidths(!0)},t.prototype._updateLineWidthsSlow=function(){this._updateLineWidths(!1)},t.prototype._updateLineWidths=function(e){for(var t=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber(),i=1,o=!0,r=t;r<=n;r++){var s=this._visibleLines.getVisibleLine(r);!e||s.getWidthIsFast()?i=Math.max(i,s.getWidth()):o=!1}return o&&1===t&&n===this._context.model.getLineCount()&&(this._maxLineWidth=0),this._ensureMaxLineWidth(i),o},t.prototype.prepareRender=function(){throw new Error("Not supported")},t.prototype.render=function(){throw new Error("Not supported")},t.prototype.renderText=function(e){if(this._visibleLines.renderLines(e),this._lastRenderedData.setCurrentVisibleRange(e.visibleRange),this.domNode.setWidth(this._context.viewLayout.getScrollWidth()),this.domNode.setHeight(Math.min(this._context.viewLayout.getScrollHeight(),1e6)),this._horizontalRevealRequest){var t=this._horizontalRevealRequest.lineNumber,n=this._horizontalRevealRequest.startColumn,i=this._horizontalRevealRequest.endColumn,o=this._horizontalRevealRequest.scrollType;if(e.startLineNumber<=t&&t<=e.endLineNumber){this._horizontalRevealRequest=null,this.onDidRender();var r=this._computeScrollLeftToRevealRange(t,n,i);this._isViewportWrapping||this._ensureMaxLineWidth(r.maxHorizontalOffset),0===o?this._context.viewLayout.setScrollPositionSmooth({scrollLeft:r.scrollLeft}):this._context.viewLayout.setScrollPositionNow({scrollLeft:r.scrollLeft})}}this._updateLineWidthsFast()||this._asyncUpdateLineWidths.schedule(),this._linesContent.setLayerHinting(this._canUseLayerHinting),this._linesContent.setContain("strict");var s=this._context.viewLayout.getCurrentScrollTop()-e.bigNumbersDelta;this._linesContent.setTop(-s),this._linesContent.setLeft(-this._context.viewLayout.getCurrentScrollLeft())},t.prototype._ensureMaxLineWidth=function(e){var t=Math.ceil(e);this._maxLineWidth<t&&(this._maxLineWidth=t,this._context.viewLayout.onMaxLineWidthChanged(this._maxLineWidth))},t.prototype._computeScrollTopToRevealRange=function(e,t,n,i){var o,r,s,a=e.top,u=e.height,l=a+u;if(o=this._context.viewLayout.getVerticalOffsetForLineNumber(n.startLineNumber),r=this._context.viewLayout.getVerticalOffsetForLineNumber(n.endLineNumber)+this._lineHeight,!("mouse"===t&&"default"===this._cursorSurroundingLinesStyle)){var c=Math.min(u/this._lineHeight/2,this._cursorSurroundingLines);o-=c*this._lineHeight,r+=Math.max(0,c-1)*this._lineHeight}if(0!==i&&4!==i||(r+=this._lineHeight),r-o>u)s=o;else if(1===i||2===i)if(2===i&&a<=o&&r<=l)s=a;else{var d=(o+r)/2;s=Math.max(0,d-u/2)}else s=this._computeMinimumScrolling(a,l,o,r,3===i,4===i);return s},t.prototype._computeScrollLeftToRevealRange=function(e,n,i){var o=0,r=this._context.viewLayout.getCurrentViewport(),s=r.left,a=s+r.width,u=this._visibleRangesForLineRange(e,n,i),l=1073741824,c=0;if(!u)return{scrollLeft:s,maxHorizontalOffset:o};for(var d=0,h=u.ranges;d<h.length;d++){var p=h[d];p.left<l&&(l=p.left),p.left+p.width>c&&(c=p.left+p.width)}return o=c,l=Math.max(0,l-t.HORIZONTAL_EXTRA_PX),c+=this._revealHorizontalRightPadding,{scrollLeft:this._computeMinimumScrolling(s,a,l,c),maxHorizontalOffset:o}},t.prototype._computeMinimumScrolling=function(e,t,n,i,o,r){o=!!o,r=!!r;var s=(t|=0)-(e|=0);return(i|=0)-(n|=0)<s?o?n:r?Math.max(0,i-s):n<e?n:i>t?Math.max(0,i-s):e:n},t.HORIZONTAL_EXTRA_PX=30,t}(og),ES=(n(381),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),IS=function(e){function t(t){var n=e.call(this)||this;n._context=t;var i=n._context.configuration.options.get(107);return n._decorationsLeft=i.decorationsLeft,n._decorationsWidth=i.decorationsWidth,n._renderResult=null,n._context.addEventHandler(n),n}return ES(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),this._renderResult=null,e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options.get(107);return this._decorationsLeft=t.decorationsLeft,this._decorationsWidth=t.decorationsWidth,!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollTopChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype._getDecorations=function(e){for(var t=e.getDecorationsInViewport(),n=[],i=0,o=0,r=t.length;o<r;o++){var s=t[o],a=s.options.linesDecorationsClassName;a&&(n[i++]=new bS(s.range.startLineNumber,s.range.endLineNumber,a))}return n},t.prototype.prepareRender=function(e){for(var t=e.visibleRange.startLineNumber,n=e.visibleRange.endLineNumber,i=this._render(t,n,this._getDecorations(e)),o='" style="left:'+this._decorationsLeft.toString()+"px;width:"+this._decorationsWidth.toString()+'px;"></div>',r=[],s=t;s<=n;s++){for(var a=s-t,u=i[a],l="",c=0,d=u.length;c<d;c++)l+='<div class="cldr '+u[c]+o;r[a]=l}this._renderResult=r},t.prototype.render=function(e,t){return this._renderResult?this._renderResult[t-e]:""},t}(wS),OS=(n(382),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),MS=function(e){function t(t){var n=e.call(this)||this;return n._context=t,n._renderResult=null,n._context.addEventHandler(n),n}return OS(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),this._renderResult=null,e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){return!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollTopChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype._getDecorations=function(e){for(var t=e.getDecorationsInViewport(),n=[],i=0,o=0,r=t.length;o<r;o++){var s=t[o],a=s.options.marginClassName;a&&(n[i++]=new bS(s.range.startLineNumber,s.range.endLineNumber,a))}return n},t.prototype.prepareRender=function(e){for(var t=e.visibleRange.startLineNumber,n=e.visibleRange.endLineNumber,i=this._render(t,n,this._getDecorations(e)),o=[],r=t;r<=n;r++){for(var s=r-t,a=i[s],u="",l=0,c=a.length;l<c;l++)u+='<div class="cmdr '+a[l]+'" style=""></div>';o[s]=u}this._renderResult=o},t.prototype.render=function(e,t){return this._renderResult?this._renderResult[t-e]:""},t}(wS),TS=(n(383),function(){function e(t,n,i,o){this.r=e._clamp(t),this.g=e._clamp(n),this.b=e._clamp(i),this.a=e._clamp(o)}return e._clamp=function(e){return e<0?0:e>255?255:0|e},e.Empty=new e(0,0,0,0),e}()),PS=function(){function e(){var e=this;this._onDidChange=new nt,this.onDidChange=this._onDidChange.event,this._updateColorMap(),Yu.onDidChange((function(t){t.changedColorMap&&e._updateColorMap()}))}return e.getInstance=function(){return this._INSTANCE||(this._INSTANCE=new e),this._INSTANCE},e.prototype._updateColorMap=function(){var e=Yu.getColorMap();if(!e)return this._colors=[TS.Empty],void(this._backgroundIsLight=!0);this._colors=[TS.Empty];for(var t=1;t<e.length;t++){var n=e[t].rgba;this._colors[t]=new TS(n.r,n.g,n.b,Math.round(255*n.a))}var i=e[2].getRelativeLuminance();this._backgroundIsLight=i>=.5,this._onDidChange.fire(void 0)},e.prototype.getColor=function(e){return(e<1||e>=this._colors.length)&&(e=2),this._colors[e]},e.prototype.backgroundIsLight=function(){return this._backgroundIsLight},e._INSTANCE=null,e}(),RS=function(){for(var e=[],t=32;t<=126;t++)e.push(t);return e.push(65533),e}(),AS=function(){function e(t,n){this.scale=n,this.charDataNormal=e.soften(t,.8),this.charDataLight=e.soften(t,50/60)}return e.soften=function(e,t){for(var n=new Uint8ClampedArray(e.length),i=0,o=e.length;i<o;i++)n[i]=e[i]*t;return n},e.prototype.renderChar=function(e,t,n,i,o,r,s,a){var u=1*this.scale,l=2*this.scale;if(t+u>e.width||n+l>e.height)console.warn("bad render request outside image data");else for(var c=a?this.charDataLight:this.charDataNormal,d=function(e,t){return(e-=32)<0||e>96?t<=2?(e+96)%96:95:e}(i,s),h=4*e.width,p=r.r,f=r.g,g=r.b,m=o.r-p,v=o.g-f,_=o.b-g,y=e.data,b=d*u*l,w=n*h+4*t,C=0;C<l;C++){for(var S=w,L=0;L<u;L++){var x=c[b++]/255;y[S++]=p+m*x,y[S++]=f+v*x,y[S++]=g+_*x,S++}w+=h}},e.prototype.blockRenderChar=function(e,t,n,i,o,r){var s=1*this.scale,a=2*this.scale;if(t+s>e.width||n+a>e.height)console.warn("bad render request outside image data");else for(var u=4*e.width,l=o.r,c=o.g,d=o.b,h=l+.5*(i.r-l),p=c+.5*(i.g-c),f=d+.5*(i.b-d),g=e.data,m=n*u+4*t,v=0;v<a;v++){for(var _=m,y=0;y<s;y++)g[_++]=h,g[_++]=p,g[_++]=f,_++;m+=u}},e}(),FS={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},WS=function(e){for(var t=new Uint8ClampedArray(e.length/2),n=0;n<e.length;n+=2)t[n>>1]=FS[e[n]]<<4|15&FS[e[n+1]];return t},VS={1:Te((function(){return WS("0000511D6300CF609C709645A78432005642574171487021003C451900274D35D762755E8B629C5BA856AF57BA649530C167D1512A272A3F6038604460398526BCA2A968DB6F8957C768BE5FBE2FB467CF5D8D5B795DC7625B5DFF50DE64C466DB2FC47CD860A65E9A2EB96CB54CE06DA763AB2EA26860524D3763536601005116008177A8705E53AB738E6A982F88BAA35B5F5B626D9C636B449B737E5B7B678598869A662F6B5B8542706C704C80736A607578685B70594A49715A4522E792")})),2:Te((function(){return WS("000000000000000055394F383D2800008B8B1F210002000081B1CBCBCC820000847AAF6B9AAF2119BE08B8881AD60000A44FD07DCCF107015338130C00000000385972265F390B406E2437634B4B48031B12B8A0847000001E15B29A402F0000000000004B33460B00007A752C2A0000000000004D3900000084394B82013400ABA5CFC7AD9C0302A45A3E5A98AB000089A43382D97900008BA54AA087A70A0248A6A7AE6DBE0000BF6F94987EA40A01A06DCFA7A7A9030496C32F77891D0000A99FB1A0AFA80603B29AB9CA75930D010C0948354D3900000C0948354F37460D0028BE673D8400000000AF9D7B6E00002B007AA8933400007AA642675C2700007984CFB9C3985B768772A8A6B7B20000CAAECAAFC4B700009F94A6009F840009D09F9BA4CA9C0000CC8FC76DC87F0000C991C472A2000000A894A48CA7B501079BA2C9C69BA20000B19A5D3FA89000005CA6009DA2960901B0A7F0669FB200009D009E00B7890000DAD0F5D092820000D294D4C48BD10000B5A7A4A3B1A50402CAB6CBA6A2000000B5A7A4A3B1A8044FCDADD19D9CB00000B7778F7B8AAE0803C9AB5D3F5D3F00009EA09EA0BAB006039EA0989A8C7900009B9EF4D6B7C00000A9A7816CACA80000ABAC84705D3F000096DA635CDC8C00006F486F266F263D4784006124097B00374F6D2D6D2D6D4A3A95872322000000030000000000008D8939130000000000002E22A5C9CBC70600AB25C0B5C9B400061A2DB04CA67001082AA6BEBEBFC606002321DACBC19E03087AA08B6768380000282FBAC0B8CA7A88AD25BBA5A29900004C396C5894A6000040485A6E356E9442A32CD17EADA70000B4237923628600003E2DE9C1D7B500002F25BBA5A2990000231DB6AFB4A804023025C0B5CAB588062B2CBDBEC0C706882435A75CA20000002326BD6A82A908048B4B9A5A668000002423A09CB4BB060025259C9D8A7900001C1FCAB2C7C700002A2A9387ABA200002626A4A47D6E9D14333163A0C87500004B6F9C2D643A257049364936493647358A34438355497F1A0000A24C1D590000D38DFFBDD4CD3126")}))},BS=function(){function e(){}return e.create=function(t,n){return this.lastCreated&&t===this.lastCreated.scale&&n===this.lastFontFamily?this.lastCreated:(i=VS[t]?new AS(VS[t](),t):e.createFromSampleData(e.createSampleData(n).data,t),this.lastFontFamily=n,this.lastCreated=i,i);var i},e.createSampleData=function(e){var t=document.createElement("canvas"),n=t.getContext("2d");t.style.height="16px",t.height=16,t.width=960,t.style.width="960px",n.fillStyle="#ffffff",n.font="bold 16px "+e,n.textBaseline="middle";for(var i=0,o=0,r=RS;o<r.length;o++){var s=r[o];n.fillText(String.fromCharCode(s),i,8),i+=10}return n.getImageData(0,0,960,16)},e.createFromSampleData=function(t,n){if(61440!==t.length)throw new Error("Unexpected source in MinimapCharRenderer");var i=e._downsample(t,n);return new AS(i,n)},e._downsampleChar=function(e,t,n,i,o){for(var r=1*o,s=2*o,a=i,u=0,l=0;l<s;l++)for(var c=l/s*16,d=(l+1)/s*16,h=0;h<r;h++){for(var p=h/r*10,f=(h+1)/r*10,g=0,m=0,v=c;v<d;v++)for(var _=t+3840*Math.floor(v),y=1-(v-Math.floor(v)),b=p;b<f;b++){var w=1-(b-Math.floor(b)),C=_+4*Math.floor(b),S=w*y;m+=S,g+=e[C]*e[C+3]/255*S}var L=g/m;u=Math.max(u,L),n[a++]=L}return u},e._downsample=function(e,t){for(var n=2*t*1*t,i=96*n,o=new Uint8ClampedArray(i),r=0,s=0,a=0,u=0;u<96;u++)a=Math.max(a,this._downsampleChar(e,s,o,r,t)),r+=n,s+=40;if(a>0)for(var l=255/a,c=0;c<i;c++)o[c]*=l;return o},e}(),HS=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function zS(e,t){return 1===e?2*t:3*t}function jS(e,t){return 1*t}var US=function(){function e(e){var t=this,n=e.options,i=n.get(105),o=n.get(107),r=n.get(34);this.renderMinimap=0|o.renderMinimap,this.scrollBeyondLastLine=n.get(80);var s=n.get(54);this.showSlider=s.showSlider,this.fontScale=Math.round(s.scale*i),this.charRenderer=Te((function(){return BS.create(t.fontScale,r.fontFamily)})),this.pixelRatio=i,this.typicalHalfwidthCharacterWidth=r.typicalHalfwidthCharacterWidth,this.lineHeight=n.get(49),this.minimapLeft=o.minimapLeft,this.minimapWidth=o.minimapWidth,this.minimapHeight=o.height,this.canvasInnerWidth=Math.floor(i*this.minimapWidth),this.canvasInnerHeight=Math.floor(i*this.minimapHeight),this.canvasOuterWidth=this.canvasInnerWidth/i,this.canvasOuterHeight=this.canvasInnerHeight/i}return e.prototype.equals=function(e){return this.renderMinimap===e.renderMinimap&&this.scrollBeyondLastLine===e.scrollBeyondLastLine&&this.showSlider===e.showSlider&&this.pixelRatio===e.pixelRatio&&this.typicalHalfwidthCharacterWidth===e.typicalHalfwidthCharacterWidth&&this.lineHeight===e.lineHeight&&this.fontScale===e.fontScale&&this.minimapLeft===e.minimapLeft&&this.minimapWidth===e.minimapWidth&&this.minimapHeight===e.minimapHeight&&this.canvasInnerWidth===e.canvasInnerWidth&&this.canvasInnerHeight===e.canvasInnerHeight&&this.canvasOuterWidth===e.canvasOuterWidth&&this.canvasOuterHeight===e.canvasOuterHeight},e}(),KS=function(){function e(e,t,n,i,o,r,s){this.scrollTop=e,this.scrollHeight=t,this._computedSliderRatio=n,this.sliderTop=i,this.sliderHeight=o,this.startLineNumber=r,this.endLineNumber=s}return e.prototype.getDesiredScrollTopFromDelta=function(e){var t=this.sliderTop+e;return Math.round(t/this._computedSliderRatio)},e.prototype.getDesiredScrollTopFromTouchLocation=function(e){return Math.round((e-this.sliderHeight/2)/this._computedSliderRatio)},e.create=function(t,n,i,o,r,s,a,u,l){var c,d,h=t.pixelRatio,p=zS(t.renderMinimap,t.fontScale),f=Math.floor(t.canvasInnerHeight/p),g=t.lineHeight;if(r&&i!==s){var m=i-n+1;c=Math.floor(m*p/h)}else{var v=o/g;c=Math.floor(v*p/h)}d=t.scrollBeyondLastLine?(s-1)*p/h:Math.max(0,s*p/h-c);var _=(d=Math.min(t.minimapHeight-c,d))/(u-o),y=a*_,b=0;t.scrollBeyondLastLine&&(b=v=o/g);if(f>=s+b)return new e(a,u,_,y,c,w=1,s);var w=Math.max(1,Math.floor(n-y*h/p));return l&&l.scrollHeight===u&&(l.scrollTop>a&&(w=Math.min(w,l.startLineNumber)),l.scrollTop<a&&(w=Math.max(w,l.startLineNumber))),new e(a,u,_,y,c,w,Math.min(s,w+f-1))},e}(),qS=function(){function e(e){this.dy=e}return e.prototype.onContentChanged=function(){this.dy=-1},e.prototype.onTokensChanged=function(){this.dy=-1},e.INVALID=new e(-1),e}(),GS=function(){function e(e,t,n){this.renderedLayout=e,this._imageData=t,this._renderedLines=new xC((function(){return qS.INVALID})),this._renderedLines._set(e.startLineNumber,n)}return e.prototype.linesEquals=function(e){if(!this.scrollEquals(e))return!1;for(var t=this._renderedLines._get().lines,n=0,i=t.length;n<i;n++)if(-1===t[n].dy)return!1;return!0},e.prototype.scrollEquals=function(e){return this.renderedLayout.startLineNumber===e.startLineNumber&&this.renderedLayout.endLineNumber===e.endLineNumber},e.prototype._get=function(){var e=this._renderedLines._get();return{imageData:this._imageData,rendLineNumberStart:e.rendLineNumberStart,lines:e.lines}},e.prototype.onLinesChanged=function(e){return this._renderedLines.onLinesChanged(e.fromLineNumber,e.toLineNumber)},e.prototype.onLinesDeleted=function(e){this._renderedLines.onLinesDeleted(e.fromLineNumber,e.toLineNumber)},e.prototype.onLinesInserted=function(e){this._renderedLines.onLinesInserted(e.fromLineNumber,e.toLineNumber)},e.prototype.onTokensChanged=function(e){return this._renderedLines.onTokensChanged(e.ranges)},e}(),ZS=function(){function e(t,n,i,o){this._backgroundFillData=e._createBackgroundFillData(n,i,o),this._buffers=[t.createImageData(n,i),t.createImageData(n,i)],this._lastUsedBuffer=0}return e.prototype.getBuffer=function(){this._lastUsedBuffer=1-this._lastUsedBuffer;var e=this._buffers[this._lastUsedBuffer];return e.data.set(this._backgroundFillData),e},e._createBackgroundFillData=function(e,t,n){for(var i=n.r,o=n.g,r=n.b,s=new Uint8ClampedArray(e*t*4),a=0,u=0;u<t;u++)for(var l=0;l<e;l++)s[a]=i,s[a+1]=o,s[a+2]=r,s[a+3]=255,a+=4;return s},e}(),YS=function(e){function t(t){var n=e.call(this,t)||this;return n._selections=[],n._renderDecorations=!1,n._gestureInProgress=!1,n._options=new US(n._context.configuration),n._lastRenderData=null,n._buffers=null,n._selectionColor=n._context.theme.getColor(Sb),n._domNode=Ff(document.createElement("div")),rg.write(n._domNode,8),n._domNode.setClassName(n._getMinimapDomNodeClassName()),n._domNode.setPosition("absolute"),n._domNode.setAttribute("role","presentation"),n._domNode.setAttribute("aria-hidden","true"),n._shadow=Ff(document.createElement("div")),n._shadow.setClassName("minimap-shadow-hidden"),n._domNode.appendChild(n._shadow),n._canvas=Ff(document.createElement("canvas")),n._canvas.setPosition("absolute"),n._canvas.setLeft(0),n._domNode.appendChild(n._canvas),n._decorationsCanvas=Ff(document.createElement("canvas")),n._decorationsCanvas.setPosition("absolute"),n._decorationsCanvas.setClassName("minimap-decorations-layer"),n._decorationsCanvas.setLeft(0),n._domNode.appendChild(n._decorationsCanvas),n._slider=Ff(document.createElement("div")),n._slider.setPosition("absolute"),n._slider.setClassName("minimap-slider"),n._slider.setLayerHinting(!0),n._slider.setContain("strict"),n._domNode.appendChild(n._slider),n._sliderHorizontal=Ff(document.createElement("div")),n._sliderHorizontal.setPosition("absolute"),n._sliderHorizontal.setClassName("minimap-slider-horizontal"),n._slider.appendChild(n._sliderHorizontal),n._tokensColorTracker=PS.getInstance(),n._applyLayout(),n._mouseDownListener=co(n._domNode.domNode,"mousedown",(function(e){e.preventDefault();var t=n._options.renderMinimap;if(0!==t&&n._lastRenderData){var i=zS(t,n._options.fontScale),o=n._options.pixelRatio*e.browserEvent.offsetY,r=Math.floor(o/i)+n._lastRenderData.renderedLayout.startLineNumber;r=Math.min(r,n._context.model.getLineCount()),n._context.privateViewEventBus.emit(new Sw("mouse",new wn(r,1,r,1),1,!1,0))}})),n._sliderMouseMoveMonitor=new Kf,n._sliderMouseDownListener=co(n._slider.domNode,"mousedown",(function(e){if(e.preventDefault(),e.stopPropagation(),e.leftButton&&n._lastRenderData){var t=e.posy,i=e.posx,o=n._lastRenderData.renderedLayout;n._slider.toggleClassName("active",!0),n._sliderMouseMoveMonitor.startMonitoring(e.target,e.buttons,Uf,(function(e){var r=Math.abs(e.posx-i);if(v&&r>140)n._context.viewLayout.setScrollPositionNow({scrollTop:o.scrollTop});else{var s=e.posy-t;n._context.viewLayout.setScrollPositionNow({scrollTop:o.getDesiredScrollTopFromDelta(s)})}}),(function(){n._slider.toggleClassName("active",!1)}))}})),n._gestureDisposable=jf.addTarget(n._domNode.domNode),n._sliderTouchStartListener=uo(n._domNode.domNode,Bf.Start,(function(e){e.preventDefault(),e.stopPropagation(),n._lastRenderData&&(n._slider.toggleClassName("active",!0),n._gestureInProgress=!0,n.scrollDueToTouchEvent(e))})),n._sliderTouchMoveListener=co(n._domNode.domNode,Bf.Change,(function(e){e.preventDefault(),e.stopPropagation(),n._lastRenderData&&n._gestureInProgress&&n.scrollDueToTouchEvent(e)})),n._sliderTouchEndListener=co(n._domNode.domNode,Bf.End,(function(e){e.preventDefault(),e.stopPropagation(),n._gestureInProgress=!1,n._slider.toggleClassName("active",!1)})),n}return HS(t,e),t.prototype.scrollDueToTouchEvent=function(e){var t=this._domNode.domNode.getBoundingClientRect().top,n=this._lastRenderData.renderedLayout.getDesiredScrollTopFromTouchLocation(e.pageY-t);this._context.viewLayout.setScrollPositionNow({scrollTop:n})},t.prototype.dispose=function(){this._mouseDownListener.dispose(),this._sliderMouseMoveMonitor.dispose(),this._sliderMouseDownListener.dispose(),this._gestureDisposable.dispose(),this._sliderTouchStartListener.dispose(),this._sliderTouchMoveListener.dispose(),this._sliderTouchEndListener.dispose(),e.prototype.dispose.call(this)},t.prototype._getMinimapDomNodeClassName=function(){return"always"===this._options.showSlider?"minimap slider-always":"minimap slider-mouseover"},t.prototype.getDomNode=function(){return this._domNode},t.prototype._applyLayout=function(){this._domNode.setLeft(this._options.minimapLeft),this._domNode.setWidth(this._options.minimapWidth),this._domNode.setHeight(this._options.minimapHeight),this._shadow.setHeight(this._options.minimapHeight),this._canvas.setWidth(this._options.canvasOuterWidth),this._canvas.setHeight(this._options.canvasOuterHeight),this._canvas.domNode.width=this._options.canvasInnerWidth,this._canvas.domNode.height=this._options.canvasInnerHeight,this._decorationsCanvas.setWidth(this._options.canvasOuterWidth),this._decorationsCanvas.setHeight(this._options.canvasOuterHeight),this._decorationsCanvas.domNode.width=this._options.canvasInnerWidth,this._decorationsCanvas.domNode.height=this._options.canvasInnerHeight,this._slider.setWidth(this._options.minimapWidth)},t.prototype._getBuffer=function(){return this._buffers||this._options.canvasInnerWidth>0&&this._options.canvasInnerHeight>0&&(this._buffers=new ZS(this._canvas.domNode.getContext("2d"),this._options.canvasInnerWidth,this._options.canvasInnerHeight,this._tokensColorTracker.getColor(2))),this._buffers?this._buffers.getBuffer():null},t.prototype._onOptionsMaybeChanged=function(){var e=new US(this._context.configuration);return!this._options.equals(e)&&(this._options=e,this._lastRenderData=null,this._buffers=null,this._applyLayout(),this._domNode.setClassName(this._getMinimapDomNodeClassName()),!0)},t.prototype.onConfigurationChanged=function(e){return this._onOptionsMaybeChanged()},t.prototype.onCursorStateChanged=function(e){return this._selections=e.selections,this._renderDecorations=!0,!0},t.prototype.onFlushed=function(e){return this._lastRenderData=null,!0},t.prototype.onLinesChanged=function(e){return!!this._lastRenderData&&this._lastRenderData.onLinesChanged(e)},t.prototype.onLinesDeleted=function(e){return this._lastRenderData&&this._lastRenderData.onLinesDeleted(e),!0},t.prototype.onLinesInserted=function(e){return this._lastRenderData&&this._lastRenderData.onLinesInserted(e),!0},t.prototype.onScrollChanged=function(e){return this._renderDecorations=!0,!0},t.prototype.onTokensChanged=function(e){return!!this._lastRenderData&&this._lastRenderData.onTokensChanged(e)},t.prototype.onTokensColorsChanged=function(e){return this._lastRenderData=null,this._buffers=null,!0},t.prototype.onZonesChanged=function(e){return this._lastRenderData=null,!0},t.prototype.onDecorationsChanged=function(e){return this._renderDecorations=!0,!0},t.prototype.onThemeChanged=function(e){return this._context.model.invalidateMinimapColorCache(),this._selectionColor=this._context.theme.getColor(Sb),this._renderDecorations=!0,!0},t.prototype.prepareRender=function(e){},t.prototype.render=function(e){if(0===this._options.renderMinimap)return this._shadow.setClassName("minimap-shadow-hidden"),this._sliderHorizontal.setWidth(0),void this._sliderHorizontal.setHeight(0);e.scrollLeft+e.viewportWidth>=e.scrollWidth?this._shadow.setClassName("minimap-shadow-hidden"):this._shadow.setClassName("minimap-shadow-visible");var t=KS.create(this._options,e.visibleRange.startLineNumber,e.visibleRange.endLineNumber,e.viewportHeight,e.viewportData.whitespaceViewportData.length>0,this._context.model.getLineCount(),e.scrollTop,e.scrollHeight,this._lastRenderData?this._lastRenderData.renderedLayout:null);this._slider.setTop(t.sliderTop),this._slider.setHeight(t.sliderHeight);var n=e.scrollLeft/this._options.typicalHalfwidthCharacterWidth,i=Math.min(this._options.minimapWidth,Math.round(n*jS(this._options.renderMinimap,this._options.fontScale)/this._options.pixelRatio));this._sliderHorizontal.setLeft(i),this._sliderHorizontal.setWidth(this._options.minimapWidth-i),this._sliderHorizontal.setTop(0),this._sliderHorizontal.setHeight(t.sliderHeight),this.renderDecorations(t),this._lastRenderData=this.renderLines(t)},t.prototype.renderDecorations=function(e){if(this._renderDecorations){this._renderDecorations=!1;var t=this._context.model.getDecorationsInViewport(new wn(e.startLineNumber,1,e.endLineNumber,this._context.model.getLineMaxColumn(e.endLineNumber))),n=this._options,i=n.renderMinimap,o=n.canvasInnerWidth,r=n.canvasInnerHeight,s=zS(i,this._options.fontScale),a=jS(0,this._options.fontScale),u=this._context.model.getOptions().tabSize,l=this._decorationsCanvas.domNode.getContext("2d");l.clearRect(0,0,o,r);for(var c=new Map,d=0;d<this._selections.length;d++)for(var h=this._selections[d],p=h.startLineNumber;p<=h.endLineNumber;p++)this.renderDecorationOnLine(l,c,h,this._selectionColor,e,p,s,s,u,a);for(d=0;d<t.length;d++){var f=t[d];if(f.options.minimap){var g=f.options.minimap.getColor(this._context.theme);for(p=f.range.startLineNumber;p<=f.range.endLineNumber;p++)switch(f.options.minimap.position){case Ba.Inline:this.renderDecorationOnLine(l,c,f.range,g,e,p,s,s,u,a);continue;case Ba.Gutter:var m=(p-e.startLineNumber)*s;this.renderDecoration(l,g,2,m,2,s);continue}}}}},t.prototype.renderDecorationOnLine=function(e,t,n,i,o,r,s,a,u,l){var c=(r-o.startLineNumber)*a;if(!(c+s<0||c>this._options.canvasInnerHeight)){var d=t.get(r),h=!d;if(!d){var p=this._context.model.getLineContent(r);d=[8];for(var f=1;f<p.length+1;f++){var g=p.charCodeAt(f-1),m=9===g?u*l:jr(g)?2*l:l;d[f]=d[f-1]+m}t.set(r,d)}var v=n.startColumn,_=n.endColumn,y=n.startLineNumber,b=n.endLineNumber,w=y===r?d[v-1]:8,C=b>r?d.length-1:_-1;if(C>0){var S=d[C]-w||2;this.renderDecoration(e,i,w,c,S,s)}h&&this.renderLineHighlight(e,i,c,s)}},t.prototype.renderLineHighlight=function(e,t,n,i){e.fillStyle=t&&t.transparent(.5).toString()||"",e.fillRect(8,n,e.canvas.width,i)},t.prototype.renderDecoration=function(e,t,n,i,o,r){e.fillStyle=t&&t.toString()||"",e.fillRect(n,i,o,r)},t.prototype.renderLines=function(e){var n=this._options.renderMinimap,i=this._options.charRenderer(),o=e.startLineNumber,r=e.endLineNumber,s=zS(n,this._options.fontScale);if(this._lastRenderData&&this._lastRenderData.linesEquals(e)){var a=this._lastRenderData._get();return new GS(e,a.imageData,a.lines)}var u=this._getBuffer();if(!u)return null;for(var l=t._renderUntouchedLines(u,o,r,s,this._lastRenderData),c=l[0],d=l[1],h=l[2],p=this._context.model.getMinimapLinesRenderingData(o,r,h),f=p.tabSize,g=this._tokensColorTracker.getColor(2),m=this._tokensColorTracker.backgroundIsLight(),v=0,_=[],y=0,b=r-o+1;y<b;y++)h[y]&&t._renderLine(u,g,m,n,this._tokensColorTracker,i,v,f,p.data[y],this._options.fontScale),_[y]=new qS(v),v+=s;var w=-1===c?0:c,C=(-1===d?u.height:d)-w;return this._canvas.domNode.getContext("2d").putImageData(u,0,0,0,w,u.width,C),new GS(e,u,_)},t._renderUntouchedLines=function(e,t,n,i,o){var r=[];if(!o){for(var s=0,a=n-t+1;s<a;s++)r[s]=!0;return[-1,-1,r]}for(var u=o._get(),l=u.imageData.data,c=u.rendLineNumberStart,d=u.lines,h=d.length,p=e.width,f=e.data,g=(n-t+1)*i*p*4,m=-1,v=-1,_=-1,y=-1,b=-1,w=-1,C=0,S=t;S<=n;S++){var L=S-t,x=S-c,D=x>=0&&x<h?d[x].dy:-1;if(-1!==D){var N=D*p*4,k=(D+i)*p*4,E=C*p*4,I=(C+i)*p*4;y===N&&w===E?(y=k,w=I):(-1!==_&&(f.set(l.subarray(_,y),b),-1===m&&0===_&&_===b&&(m=y),-1===v&&y===g&&_===b&&(v=_)),_=N,y=k,b=E,w=I),r[L]=!1,C+=i}else r[L]=!0,C+=i}return-1!==_&&(f.set(l.subarray(_,y),b),-1===m&&0===_&&_===b&&(m=y),-1===v&&y===g&&_===b&&(v=_)),[-1===m?-1:m/(4*p),-1===v?-1:v/(4*p),r]},t._renderLine=function(e,t,n,i,o,r,s,a,u,l){for(var c=u.content,d=u.tokens,h=jS(0,l),p=e.width-h,f=8,g=0,m=0,v=0,_=d.getCount();v<_;v++)for(var y=d.getEndOffset(v),b=d.getForeground(v),w=o.getColor(b);g<y;g++){if(f>p)return;var C=c.charCodeAt(g);if(9===C){var S=a-(g+m)%a;m+=S-1,f+=S*h}else if(32===C)f+=h;else for(var L=jr(C)?2:1,x=0;x<L;x++)if(2===i?r.blockRenderChar(e,f,s,w,t,n):r.renderChar(e,f,s,C,w,t,l,n),(f+=h)>p)return}},t}(og);yg((function(e,t){var n=e.getColor(oy);if(n){var i=n.transparent(.5);t.addRule(".monaco-editor .minimap-slider, .monaco-editor .minimap-slider .minimap-slider-horizontal { background: "+i+"; }")}var o=e.getColor(ry);if(o){var r=o.transparent(.5);t.addRule(".monaco-editor .minimap-slider:hover, .monaco-editor .minimap-slider:hover .minimap-slider-horizontal { background: "+r+"; }")}var s=e.getColor(sy);if(s){var a=s.transparent(.5);t.addRule(".monaco-editor .minimap-slider.active, .monaco-editor .minimap-slider.active .minimap-slider-horizontal { background: "+a+"; }")}var u=e.getColor(iy);u&&t.addRule(".monaco-editor .minimap-shadow-visible { box-shadow: "+u+" -6px 0 6px -6px inset; }")}));n(384);var XS=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),$S=function(e){function t(t){var n=e.call(this,t)||this,i=n._context.configuration.options.get(107);return n._widgets={},n._verticalScrollbarWidth=i.verticalScrollbarWidth,n._minimapWidth=i.minimapWidth,n._horizontalScrollbarHeight=i.horizontalScrollbarHeight,n._editorHeight=i.height,n._editorWidth=i.width,n._domNode=Ff(document.createElement("div")),rg.write(n._domNode,4),n._domNode.setClassName("overlayWidgets"),n}return XS(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._widgets={}},t.prototype.getDomNode=function(){return this._domNode},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options.get(107);return this._verticalScrollbarWidth=t.verticalScrollbarWidth,this._minimapWidth=t.minimapWidth,this._horizontalScrollbarHeight=t.horizontalScrollbarHeight,this._editorHeight=t.height,this._editorWidth=t.width,!0},t.prototype.addWidget=function(e){var t=Ff(e.getDomNode());this._widgets[e.getId()]={widget:e,preference:null,domNode:t},t.setPosition("absolute"),t.setAttribute("widgetId",e.getId()),this._domNode.appendChild(t),this.setShouldRender()},t.prototype.setWidgetPosition=function(e,t){var n=this._widgets[e.getId()];return n.preference!==t&&(n.preference=t,this.setShouldRender(),!0)},t.prototype.removeWidget=function(e){var t=e.getId();if(this._widgets.hasOwnProperty(t)){var n=this._widgets[t].domNode.domNode;delete this._widgets[t],n.parentNode.removeChild(n),this.setShouldRender()}},t.prototype._renderWidget=function(e){var t=e.domNode;if(null!==e.preference)if(0===e.preference)t.setTop(0),t.setRight(2*this._verticalScrollbarWidth+this._minimapWidth);else if(1===e.preference){var n=t.domNode.clientHeight;t.setTop(this._editorHeight-n-2*this._horizontalScrollbarHeight),t.setRight(2*this._verticalScrollbarWidth+this._minimapWidth)}else 2===e.preference&&(t.setTop(0),t.domNode.style.right="50%");else t.unsetTop()},t.prototype.prepareRender=function(e){},t.prototype.render=function(e){this._domNode.setWidth(this._editorWidth);for(var t=Object.keys(this._widgets),n=0,i=t.length;n<i;n++){var o=t[n];this._renderWidget(this._widgets[o])}},t}(og),QS=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),JS=function(){function e(e,t){var n=e.options;this.lineHeight=n.get(49),this.pixelRatio=n.get(105),this.overviewRulerLanes=n.get(63),this.renderBorder=n.get(62);var i=t.getColor(ew);this.borderColor=i?i.toString():null,this.hideCursor=n.get(42);var o=t.getColor(zb);this.cursorColor=o?o.transparent(.7).toString():null,this.themeType=t.type;var r=n.get(54),s=r.enabled,a=r.side,u=s?Yu.getDefaultBackground():null;this.backgroundColor=null===u||"left"===a?null:mv.Format.CSS.formatHex(u);var l=n.get(107).overviewRuler;this.top=l.top,this.right=l.right,this.domWidth=l.width,this.domHeight=l.height,0===this.overviewRulerLanes?(this.canvasWidth=0,this.canvasHeight=0):(this.canvasWidth=this.domWidth*this.pixelRatio|0,this.canvasHeight=this.domHeight*this.pixelRatio|0);var c=this._initLanes(1,this.canvasWidth,this.overviewRulerLanes),d=c[0],h=c[1];this.x=d,this.w=h}return e.prototype._initLanes=function(e,t,n){var i=t-e;if(n>=3){var o,r,s,a=i-(o=Math.floor(i/3))-(r=Math.floor(i/3)),u=(s=e)+o;return[[0,s,u,s,s+o+a,s,u,s],[0,o,a,o+a,r,o+a+r,a+r,o+a+r]]}if(2===n)return[[0,s=e,s,s,s+(o=Math.floor(i/2)),s,s,s],[0,o,o,o,r=i-o,o+r,o+r,o+r]];return[[0,e,e,e,e,e,e,e],[0,i,i,i,i,i,i,i]]},e.prototype.equals=function(e){return this.lineHeight===e.lineHeight&&this.pixelRatio===e.pixelRatio&&this.overviewRulerLanes===e.overviewRulerLanes&&this.renderBorder===e.renderBorder&&this.borderColor===e.borderColor&&this.hideCursor===e.hideCursor&&this.cursorColor===e.cursorColor&&this.themeType===e.themeType&&this.backgroundColor===e.backgroundColor&&this.top===e.top&&this.right===e.right&&this.domWidth===e.domWidth&&this.domHeight===e.domHeight&&this.canvasWidth===e.canvasWidth&&this.canvasHeight===e.canvasHeight},e}(),eL=function(e){function t(t){var n=e.call(this,t)||this;return n._domNode=Ff(document.createElement("canvas")),n._domNode.setClassName("decorationsOverviewRuler"),n._domNode.setPosition("absolute"),n._domNode.setLayerHinting(!0),n._domNode.setContain("strict"),n._domNode.setAttribute("aria-hidden","true"),n._updateSettings(!1),n._tokensColorTrackerListener=Yu.onDidChange((function(e){e.changedColorMap&&n._updateSettings(!0)})),n._cursorPositions=[],n}return QS(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._tokensColorTrackerListener.dispose()},t.prototype._updateSettings=function(e){var t=new JS(this._context.configuration,this._context.theme);return(!this._settings||!this._settings.equals(t))&&(this._settings=t,this._domNode.setTop(this._settings.top),this._domNode.setRight(this._settings.right),this._domNode.setWidth(this._settings.domWidth),this._domNode.setHeight(this._settings.domHeight),this._domNode.domNode.width=this._settings.canvasWidth,this._domNode.domNode.height=this._settings.canvasHeight,e&&this._render(),!0)},t.prototype.onConfigurationChanged=function(e){return this._updateSettings(!1)},t.prototype.onCursorStateChanged=function(e){this._cursorPositions=[];for(var t=0,n=e.selections.length;t<n;t++)this._cursorPositions[t]=e.selections[t].getPosition();return this._cursorPositions.sort(bn.compare),!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollHeightChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype.onThemeChanged=function(e){return this._context.model.invalidateOverviewRulerColorCache(),this._updateSettings(!1)},t.prototype.getDomNode=function(){return this._domNode.domNode},t.prototype.prepareRender=function(e){},t.prototype.render=function(e){this._render()},t.prototype._render=function(){if(0!==this._settings.overviewRulerLanes){var e=this._settings.canvasWidth,t=this._settings.canvasHeight,n=this._settings.lineHeight,i=this._context.viewLayout,o=t/this._context.viewLayout.getScrollHeight(),r=this._context.model.getAllOverviewRulerDecorations(this._context.theme),s=6*this._settings.pixelRatio|0,a=s/2|0,u=this._domNode.domNode.getContext("2d");null===this._settings.backgroundColor?u.clearRect(0,0,e,t):(u.fillStyle=this._settings.backgroundColor,u.fillRect(0,0,e,t));var l=this._settings.x,c=this._settings.w,d=Object.keys(r);d.sort();for(var h=0,p=d.length;h<p;h++){var f=d[h],g=r[f];u.fillStyle=f;for(var m=0,v=0,_=0,y=0,b=g.length;y<b;y++){var w=g[3*y],C=g[3*y+1],S=g[3*y+2],L=i.getVerticalOffsetForLineNumber(C)*o|0;if((O=(i.getVerticalOffsetForLineNumber(S)+n)*o|0)-L<s)(E=(L+O)/2|0)<a?E=a:E+a>t&&(E=t-a),L=E-a,O=E+a;L>_+1||w!==m?(0!==y&&u.fillRect(l[m],v,c[m],_-v),m=w,v=L,_=O):O>_&&(_=O)}u.fillRect(l[m],v,c[m],_-v)}if(!this._settings.hideCursor&&this._settings.cursorColor){var x=2*this._settings.pixelRatio|0,D=x/2|0,N=this._settings.x[7],k=this._settings.w[7];u.fillStyle=this._settings.cursorColor;for(v=-100,_=-100,y=0,b=this._cursorPositions.length;y<b;y++){var E,I=this._cursorPositions[y];(E=i.getVerticalOffsetForLineNumber(I.lineNumber)*o|0)<D?E=D:E+D>t&&(E=t-D);var O=(L=E-D)+x;L>_+1?(0!==y&&u.fillRect(N,v,k,_-v),v=L,_=O):O>_&&(_=O)}u.fillRect(N,v,k,_-v)}this._settings.renderBorder&&this._settings.borderColor&&this._settings.overviewRulerLanes>0&&(u.beginPath(),u.lineWidth=1,u.strokeStyle=this._settings.borderColor,u.moveTo(0,0),u.lineTo(0,t),u.stroke(),u.moveTo(0,0),u.lineTo(e,0),u.stroke())}else this._domNode.setBackgroundColor(this._settings.backgroundColor?this._settings.backgroundColor:"")},t}(og),tL=function(){function e(e,t,n){this.from=0|e,this.to=0|t,this.colorId=0|n}return e.compare=function(e,t){return e.colorId===t.colorId?e.from===t.from?e.to-t.to:e.from-t.from:e.colorId-t.colorId},e}(),nL=function(){function e(e,t,n){this.startLineNumber=e,this.endLineNumber=t,this.color=n,this._colorZone=null}return e.compare=function(e,t){return e.color===t.color?e.startLineNumber===t.startLineNumber?e.endLineNumber-t.endLineNumber:e.startLineNumber-t.startLineNumber:e.color<t.color?-1:1},e.prototype.setColorZone=function(e){this._colorZone=e},e.prototype.getColorZones=function(){return this._colorZone},e}(),iL=function(){function e(e){this._getVerticalOffsetForLine=e,this._zones=[],this._colorZonesInvalid=!1,this._lineHeight=0,this._domWidth=0,this._domHeight=0,this._outerHeight=0,this._pixelRatio=1,this._lastAssignedId=0,this._color2Id=Object.create(null),this._id2Color=[]}return e.prototype.getId2Color=function(){return this._id2Color},e.prototype.setZones=function(e){this._zones=e,this._zones.sort(nL.compare)},e.prototype.setLineHeight=function(e){return this._lineHeight!==e&&(this._lineHeight=e,this._colorZonesInvalid=!0,!0)},e.prototype.setPixelRatio=function(e){this._pixelRatio=e,this._colorZonesInvalid=!0},e.prototype.getDOMWidth=function(){return this._domWidth},e.prototype.getCanvasWidth=function(){return this._domWidth*this._pixelRatio},e.prototype.setDOMWidth=function(e){return this._domWidth!==e&&(this._domWidth=e,this._colorZonesInvalid=!0,!0)},e.prototype.getDOMHeight=function(){return this._domHeight},e.prototype.getCanvasHeight=function(){return this._domHeight*this._pixelRatio},e.prototype.setDOMHeight=function(e){return this._domHeight!==e&&(this._domHeight=e,this._colorZonesInvalid=!0,!0)},e.prototype.getOuterHeight=function(){return this._outerHeight},e.prototype.setOuterHeight=function(e){return this._outerHeight!==e&&(this._outerHeight=e,this._colorZonesInvalid=!0,!0)},e.prototype.resolveColorZones=function(){for(var e=this._colorZonesInvalid,t=Math.floor(this._lineHeight),n=Math.floor(this.getCanvasHeight()),i=n/Math.floor(this._outerHeight),o=Math.floor(4*this._pixelRatio/2),r=[],s=0,a=this._zones.length;s<a;s++){var u=this._zones[s];if(!e){var l=u.getColorZones();if(l){r.push(l);continue}}var c=Math.floor(i*this._getVerticalOffsetForLine(u.startLineNumber)),d=Math.floor(i*(this._getVerticalOffsetForLine(u.endLineNumber)+t)),h=Math.floor((c+d)/2),p=d-h;p<o&&(p=o),h-p<0&&(h=p),h+p>n&&(h=n-p);var f=u.color,g=this._color2Id[f];g||(g=++this._lastAssignedId,this._color2Id[f]=g,this._id2Color[g]=f);var m=new tL(h-p,h+p,g);u.setColorZone(m),r.push(m)}return this._colorZonesInvalid=!1,r.sort(tL.compare),r},e}(),oL=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),rL=function(e){function t(t,n){var i=e.call(this)||this;i._context=t;var o=i._context.configuration.options;return i._domNode=Ff(document.createElement("canvas")),i._domNode.setClassName(n),i._domNode.setPosition("absolute"),i._domNode.setLayerHinting(!0),i._domNode.setContain("strict"),i._zoneManager=new iL((function(e){return i._context.viewLayout.getVerticalOffsetForLineNumber(e)})),i._zoneManager.setDOMWidth(0),i._zoneManager.setDOMHeight(0),i._zoneManager.setOuterHeight(i._context.viewLayout.getScrollHeight()),i._zoneManager.setLineHeight(o.get(49)),i._zoneManager.setPixelRatio(o.get(105)),i._context.addEventHandler(i),i}return oL(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options;return e.hasChanged(49)&&(this._zoneManager.setLineHeight(t.get(49)),this._render()),e.hasChanged(105)&&(this._zoneManager.setPixelRatio(t.get(105)),this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render()),!0},t.prototype.onFlushed=function(e){return this._render(),!0},t.prototype.onScrollChanged=function(e){return e.scrollHeightChanged&&(this._zoneManager.setOuterHeight(e.scrollHeight),this._render()),!0},t.prototype.onZonesChanged=function(e){return this._render(),!0},t.prototype.getDomNode=function(){return this._domNode.domNode},t.prototype.setLayout=function(e){this._domNode.setTop(e.top),this._domNode.setRight(e.right);var t=!1;t=this._zoneManager.setDOMWidth(e.width)||t,(t=this._zoneManager.setDOMHeight(e.height)||t)&&(this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render())},t.prototype.setZones=function(e){this._zoneManager.setZones(e),this._render()},t.prototype._render=function(){if(0===this._zoneManager.getOuterHeight())return!1;var e=this._zoneManager.getCanvasWidth(),t=this._zoneManager.getCanvasHeight(),n=this._zoneManager.resolveColorZones(),i=this._zoneManager.getId2Color(),o=this._domNode.domNode.getContext("2d");return o.clearRect(0,0,e,t),n.length>0&&this._renderOneLane(o,n,i,e),!0},t.prototype._renderOneLane=function(e,t,n,i){for(var o=0,r=0,s=0,a=0,u=t;a<u.length;a++){var l=u[a],c=l.colorId,d=l.from,h=l.to;c!==o?(e.fillRect(0,r,i,s-r),o=c,e.fillStyle=n[o],r=d,s=h):s>=d?s=Math.max(s,h):(e.fillRect(0,r,i,s-r),r=d,s=h)}e.fillRect(0,r,i,s-r)},t}(ng),sL=(n(385),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),aL=function(e){function t(t){var n=e.call(this,t)||this;n.domNode=Ff(document.createElement("div")),n.domNode.setAttribute("role","presentation"),n.domNode.setAttribute("aria-hidden","true"),n.domNode.setClassName("view-rulers"),n._renderedRulers=[];var i=n._context.configuration.options;return n._rulers=i.get(77),n._typicalHalfwidthCharacterWidth=i.get(34).typicalHalfwidthCharacterWidth,n}return sL(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options;return this._rulers=t.get(77),this._typicalHalfwidthCharacterWidth=t.get(34).typicalHalfwidthCharacterWidth,!0},t.prototype.onScrollChanged=function(e){return e.scrollHeightChanged},t.prototype.prepareRender=function(e){},t.prototype._ensureRulersCount=function(){var e=this._renderedRulers.length,t=this._rulers.length;if(e!==t)if(e<t)for(var n=this._context.model.getOptions().tabSize,i=t-e;i>0;){(r=Ff(document.createElement("div"))).setClassName("view-ruler"),r.setWidth(n),this.domNode.appendChild(r),this._renderedRulers.push(r),i--}else for(var o=e-t;o>0;){var r=this._renderedRulers.pop();this.domNode.removeChild(r),o--}},t.prototype.render=function(e){this._ensureRulersCount();for(var t=0,n=this._rulers.length;t<n;t++){var i=this._renderedRulers[t];i.setHeight(Math.min(e.scrollHeight,1e6)),i.setLeft(this._rulers[t]*this._typicalHalfwidthCharacterWidth)}},t}(og);yg((function(e,t){var n=e.getColor(Xb);n&&t.addRule(".monaco-editor .view-ruler { box-shadow: 1px 0 0 0 "+n+" inset; }")}));n(386);var uL=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),lL=function(e){function t(t){var n=e.call(this,t)||this;n._scrollTop=0,n._width=0,n._updateWidth(),n._shouldShow=!1;var i=n._context.configuration.options.get(78);return n._useShadows=i.useShadows,n._domNode=Ff(document.createElement("div")),n._domNode.setAttribute("role","presentation"),n._domNode.setAttribute("aria-hidden","true"),n}return uL(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._updateShouldShow=function(){var e=this._useShadows&&this._scrollTop>0;return this._shouldShow!==e&&(this._shouldShow=e,!0)},t.prototype.getDomNode=function(){return this._domNode},t.prototype._updateWidth=function(){var e=this._context.configuration.options.get(107);0===e.renderMinimap||e.minimapWidth>0&&0===e.minimapLeft?this._width=e.width:this._width=e.width-e.minimapWidth-e.verticalScrollbarWidth},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options.get(78);return this._useShadows=t.useShadows,this._updateWidth(),this._updateShouldShow(),!0},t.prototype.onScrollChanged=function(e){return this._scrollTop=e.scrollTop,this._updateShouldShow()},t.prototype.prepareRender=function(e){},t.prototype.render=function(e){this._domNode.setWidth(this._width),this._domNode.setClassName(this._shouldShow?"scroll-decoration":"")},t}(og);yg((function(e,t){var n=e.getColor(iy);n&&t.addRule(".monaco-editor .scroll-decoration { box-shadow: "+n+" 0 6px 6px -6px inset; }")}));n(387);var cL=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),dL=function(e){this.left=e.left,this.width=e.width,this.startStyle=null,this.endStyle=null},hL=function(e,t){this.lineNumber=e,this.ranges=t};function pL(e){return new dL(e)}function fL(e){return new hL(e.lineNumber,e.ranges.map(pL))}var gL=Hn,mL=function(e){function t(t){var n=e.call(this)||this;n._previousFrameVisibleRangesWithStyle=[],n._context=t;var i=n._context.configuration.options;return n._lineHeight=i.get(49),n._roundedSelection=i.get(76),n._typicalHalfwidthCharacterWidth=i.get(34).typicalHalfwidthCharacterWidth,n._selections=[],n._renderResult=null,n._context.addEventHandler(n),n}return cL(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),this._renderResult=null,e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options;return this._lineHeight=t.get(49),this._roundedSelection=t.get(76),this._typicalHalfwidthCharacterWidth=t.get(34).typicalHalfwidthCharacterWidth,!0},t.prototype.onCursorStateChanged=function(e){return this._selections=e.selections.slice(0),!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollTopChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype._visibleRangesHaveGaps=function(e){for(var t=0,n=e.length;t<n;t++){if(e[t].ranges.length>1)return!0}return!1},t.prototype._enrichVisibleRangesWithStyle=function(e,t,n){var i=this._typicalHalfwidthCharacterWidth/4,o=null,r=null;if(n&&n.length>0&&t.length>0){var s=t[0].lineNumber;if(s===e.startLineNumber)for(var a=0;!o&&a<n.length;a++)n[a].lineNumber===s&&(o=n[a].ranges[0]);var u=t[t.length-1].lineNumber;if(u===e.endLineNumber)for(a=n.length-1;!r&&a>=0;a--)n[a].lineNumber===u&&(r=n[a].ranges[0]);o&&!o.startStyle&&(o=null),r&&!r.startStyle&&(r=null)}a=0;for(var l=t.length;a<l;a++){var c=t[a].ranges[0],d=c.left,h=c.left+c.width,p={top:0,bottom:0},f={top:0,bottom:0};if(a>0){var g=t[a-1].ranges[0].left,m=t[a-1].ranges[0].left+t[a-1].ranges[0].width;vL(d-g)<i?p.top=2:d>g&&(p.top=1),vL(h-m)<i?f.top=2:g<h&&h<m&&(f.top=1)}else o&&(p.top=o.startStyle.top,f.top=o.endStyle.top);if(a+1<l){var v=t[a+1].ranges[0].left,_=t[a+1].ranges[0].left+t[a+1].ranges[0].width;vL(d-v)<i?p.bottom=2:v<d&&d<_&&(p.bottom=1),vL(h-_)<i?f.bottom=2:h<_&&(f.bottom=1)}else r&&(p.bottom=r.startStyle.bottom,f.bottom=r.endStyle.bottom);c.startStyle=p,c.endStyle=f}},t.prototype._getVisibleRangesWithStyle=function(e,t,n){var i=(t.linesVisibleRangesForRange(e,!0)||[]).map(fL),o=this._visibleRangesHaveGaps(i);return gL||o||!this._roundedSelection||this._enrichVisibleRangesWithStyle(t.visibleRange,i,n),i},t.prototype._createSelectionPiece=function(e,t,n,i,o){return'<div class="cslr '+n+'" style="top:'+e.toString()+"px;left:"+i.toString()+"px;width:"+o.toString()+"px;height:"+t+'px;"></div>'},t.prototype._actualRenderOneSelection=function(e,n,i,o){if(0!==o.length)for(var r=!!o[0].ranges[0].startStyle,s=this._lineHeight.toString(),a=(this._lineHeight-1).toString(),u=o[0].lineNumber,l=o[o.length-1].lineNumber,c=0,d=o.length;c<d;c++){for(var h=o[c],p=h.lineNumber,f=p-n,g=i&&(p===l||p===u)?a:s,m=i&&p===u?1:0,v="",_="",y=0,b=h.ranges.length;y<b;y++){var w=h.ranges[y];if(r){var C=w.startStyle,S=w.endStyle;if(1===C.top||1===C.bottom){v+=this._createSelectionPiece(m,g,t.SELECTION_CLASS_NAME,w.left-t.ROUNDED_PIECE_WIDTH,t.ROUNDED_PIECE_WIDTH);var L=t.EDITOR_BACKGROUND_CLASS_NAME;1===C.top&&(L+=" "+t.SELECTION_TOP_RIGHT),1===C.bottom&&(L+=" "+t.SELECTION_BOTTOM_RIGHT),v+=this._createSelectionPiece(m,g,L,w.left-t.ROUNDED_PIECE_WIDTH,t.ROUNDED_PIECE_WIDTH)}if(1===S.top||1===S.bottom){v+=this._createSelectionPiece(m,g,t.SELECTION_CLASS_NAME,w.left+w.width,t.ROUNDED_PIECE_WIDTH);var x=t.EDITOR_BACKGROUND_CLASS_NAME;1===S.top&&(x+=" "+t.SELECTION_TOP_LEFT),1===S.bottom&&(x+=" "+t.SELECTION_BOTTOM_LEFT),v+=this._createSelectionPiece(m,g,x,w.left+w.width,t.ROUNDED_PIECE_WIDTH)}}var D=t.SELECTION_CLASS_NAME;if(r){C=w.startStyle,S=w.endStyle;0===C.top&&(D+=" "+t.SELECTION_TOP_LEFT),0===C.bottom&&(D+=" "+t.SELECTION_BOTTOM_LEFT),0===S.top&&(D+=" "+t.SELECTION_TOP_RIGHT),0===S.bottom&&(D+=" "+t.SELECTION_BOTTOM_RIGHT)}_+=this._createSelectionPiece(m,g,D,w.left,w.width)}e[f][0]+=v,e[f][1]+=_}},t.prototype.prepareRender=function(e){for(var t=[],n=e.visibleRange.startLineNumber,i=e.visibleRange.endLineNumber,o=n;o<=i;o++){t[o-n]=["",""]}for(var r=[],s=0,a=this._selections.length;s<a;s++){var u=this._selections[s];if(u.isEmpty())r[s]=null;else{var l=this._getVisibleRangesWithStyle(u,e,this._previousFrameVisibleRangesWithStyle[s]);r[s]=l,this._actualRenderOneSelection(t,n,this._selections.length>1,l)}}this._previousFrameVisibleRangesWithStyle=r,this._renderResult=t.map((function(e){return e[0]+e[1]}))},t.prototype.render=function(e,t){if(!this._renderResult)return"";var n=t-e;return n<0||n>=this._renderResult.length?"":this._renderResult[n]},t.SELECTION_CLASS_NAME="selected-text",t.SELECTION_TOP_LEFT="top-left-radius",t.SELECTION_BOTTOM_LEFT="bottom-left-radius",t.SELECTION_TOP_RIGHT="top-right-radius",t.SELECTION_BOTTOM_RIGHT="bottom-right-radius",t.EDITOR_BACKGROUND_CLASS_NAME="monaco-editor-background",t.ROUNDED_PIECE_WIDTH=10,t}(S_);function vL(e){return e<0?-e:e}yg((function(e,t){var n=e.getColor(Cy);n&&t.addRule(".monaco-editor .focused .selected-text { background-color: "+n+"; }");var i=e.getColor(Ly);i&&t.addRule(".monaco-editor .selected-text { background-color: "+i+"; }");var o=e.getColor(Sy);o&&t.addRule(".monaco-editor .view-line span.inline-selected-text { color: "+o+"; }")}));n(388);var _L=function(e,t,n,i,o,r){this.top=e,this.left=t,this.width=n,this.height=i,this.textContent=o,this.textContentClassName=r},yL=function(){function e(e){this._context=e;var t=this._context.configuration.options,n=t.get(34);this._cursorStyle=t.get(18),this._lineHeight=t.get(49),this._typicalHalfwidthCharacterWidth=n.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(t.get(21),this._typicalHalfwidthCharacterWidth),this._isVisible=!0,this._domNode=Ff(document.createElement("div")),this._domNode.setClassName("cursor"),this._domNode.setHeight(this._lineHeight),this._domNode.setTop(0),this._domNode.setLeft(0),af.applyFontInfo(this._domNode,n),this._domNode.setDisplay("none"),this._position=new bn(1,1),this._lastRenderedContent="",this._renderData=null}return e.prototype.getDomNode=function(){return this._domNode},e.prototype.getPosition=function(){return this._position},e.prototype.show=function(){this._isVisible||(this._domNode.setVisibility("inherit"),this._isVisible=!0)},e.prototype.hide=function(){this._isVisible&&(this._domNode.setVisibility("hidden"),this._isVisible=!1)},e.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options,n=t.get(34);return this._cursorStyle=t.get(18),this._lineHeight=t.get(49),this._typicalHalfwidthCharacterWidth=n.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(t.get(21),this._typicalHalfwidthCharacterWidth),af.applyFontInfo(this._domNode,n),!0},e.prototype.onCursorPositionChanged=function(e){return this._position=e,!0},e.prototype._prepareRender=function(e){var t="";if(this._cursorStyle===j.Line||this._cursorStyle===j.LineThin){var n,i=e.visibleRangeForPosition(this._position);if(!i||i.outsideRenderedLine)return null;if(this._cursorStyle===j.Line){if((n=rr(this._lineCursorWidth>0?this._lineCursorWidth:2))>2){var o=this._context.model.getLineContent(this._position.lineNumber),r=Fr(o,this._position.column-1);t=o.substr(this._position.column-1,r)}}else n=rr(1);var s=i.left;n>=2&&s>=1&&(s-=1);var a=e.getVerticalOffsetForLineNumber(this._position.lineNumber)-e.bigNumbersDelta;return new _L(a,s,n,this._lineHeight,t,"")}var u=this._context.model.getLineContent(this._position.lineNumber),l=Fr(u,this._position.column-1),c=e.linesVisibleRangesForRange(new wn(this._position.lineNumber,this._position.column,this._position.lineNumber,this._position.column+l),!1);if(!c||0===c.length)return null;var d=c[0];if(d.outsideRenderedLine||0===d.ranges.length)return null;var h=d.ranges[0],p=h.width<1?this._typicalHalfwidthCharacterWidth:h.width,f="";if(this._cursorStyle===j.Block){var g=this._context.model.getViewLineData(this._position.lineNumber);t=u.substr(this._position.column-1,l);var m=g.tokens.findTokenIndexAtOffset(this._position.column-1);f=g.tokens.getClassName(m)}var v=e.getVerticalOffsetForLineNumber(this._position.lineNumber)-e.bigNumbersDelta,_=this._lineHeight;return this._cursorStyle!==j.Underline&&this._cursorStyle!==j.UnderlineThin||(v+=this._lineHeight-2,_=2),new _L(v,h.left,p,_,t,f)},e.prototype.prepareRender=function(e){this._renderData=this._prepareRender(e)},e.prototype.render=function(e){return this._renderData?(this._lastRenderedContent!==this._renderData.textContent&&(this._lastRenderedContent=this._renderData.textContent,this._domNode.domNode.textContent=this._lastRenderedContent),this._domNode.setClassName("cursor "+this._renderData.textContentClassName),this._domNode.setDisplay("block"),this._domNode.setTop(this._renderData.top),this._domNode.setLeft(this._renderData.left),this._domNode.setWidth(this._renderData.width),this._domNode.setLineHeight(this._renderData.height),this._domNode.setHeight(this._renderData.height),{domNode:this._domNode.domNode,position:this._position,contentLeft:this._renderData.left,height:this._renderData.height,width:2}):(this._domNode.setDisplay("none"),null)},e}(),bL=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),wL=function(e){function t(t){var n=e.call(this,t)||this,i=n._context.configuration.options;return n._readOnly=i.get(68),n._cursorBlinking=i.get(16),n._cursorStyle=i.get(18),n._cursorSmoothCaretAnimation=i.get(17),n._selectionIsEmpty=!0,n._isVisible=!1,n._primaryCursor=new yL(n._context),n._secondaryCursors=[],n._renderData=[],n._domNode=Ff(document.createElement("div")),n._domNode.setAttribute("role","presentation"),n._domNode.setAttribute("aria-hidden","true"),n._updateDomClassName(),n._domNode.appendChild(n._primaryCursor.getDomNode()),n._startCursorBlinkAnimation=new yi,n._cursorFlatBlinkInterval=new bi,n._blinkingEnabled=!1,n._editorHasFocus=!1,n._updateBlinking(),n}return bL(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._startCursorBlinkAnimation.dispose(),this._cursorFlatBlinkInterval.dispose()},t.prototype.getDomNode=function(){return this._domNode},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options;this._readOnly=t.get(68),this._cursorBlinking=t.get(16),this._cursorStyle=t.get(18),this._cursorSmoothCaretAnimation=t.get(17),this._updateBlinking(),this._updateDomClassName(),this._primaryCursor.onConfigurationChanged(e);for(var n=0,i=this._secondaryCursors.length;n<i;n++)this._secondaryCursors[n].onConfigurationChanged(e);return!0},t.prototype._onCursorPositionChanged=function(e,t){if(this._primaryCursor.onCursorPositionChanged(e),this._updateBlinking(),this._secondaryCursors.length<t.length)for(var n=t.length-this._secondaryCursors.length,i=0;i<n;i++){var o=new yL(this._context);this._domNode.domNode.insertBefore(o.getDomNode().domNode,this._primaryCursor.getDomNode().domNode.nextSibling),this._secondaryCursors.push(o)}else if(this._secondaryCursors.length>t.length){var r=this._secondaryCursors.length-t.length;for(i=0;i<r;i++)this._domNode.removeChild(this._secondaryCursors[0].getDomNode()),this._secondaryCursors.splice(0,1)}for(i=0;i<t.length;i++)this._secondaryCursors[i].onCursorPositionChanged(t[i])},t.prototype.onCursorStateChanged=function(e){for(var t=[],n=0,i=e.selections.length;n<i;n++)t[n]=e.selections[n].getPosition();this._onCursorPositionChanged(t[0],t.slice(1));var o=e.selections[0].isEmpty();return this._selectionIsEmpty!==o&&(this._selectionIsEmpty=o,this._updateDomClassName()),!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onFocusChanged=function(e){return this._editorHasFocus=e.isFocused,this._updateBlinking(),!1},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return!0},t.prototype.onTokensChanged=function(e){var t=function(t){for(var n=0,i=e.ranges.length;n<i;n++)if(e.ranges[n].fromLineNumber<=t.lineNumber&&t.lineNumber<=e.ranges[n].toLineNumber)return!0;return!1};if(t(this._primaryCursor.getPosition()))return!0;for(var n=0,i=this._secondaryCursors;n<i.length;n++){if(t(i[n].getPosition()))return!0}return!1},t.prototype.onZonesChanged=function(e){return!0},t.prototype._getCursorBlinking=function(){return this._editorHasFocus?this._readOnly?5:this._cursorBlinking:0},t.prototype._updateBlinking=function(){var e=this;this._startCursorBlinkAnimation.cancel(),this._cursorFlatBlinkInterval.cancel();var n=this._getCursorBlinking(),i=0===n,o=5===n;i?this._hide():this._show(),this._blinkingEnabled=!1,this._updateDomClassName(),i||o||(1===n?this._cursorFlatBlinkInterval.cancelAndSet((function(){e._isVisible?e._hide():e._show()}),t.BLINK_INTERVAL):this._startCursorBlinkAnimation.setIfNotSet((function(){e._blinkingEnabled=!0,e._updateDomClassName()}),t.BLINK_INTERVAL))},t.prototype._updateDomClassName=function(){this._domNode.setClassName(this._getClassName())},t.prototype._getClassName=function(){var e="cursors-layer";switch(this._selectionIsEmpty||(e+=" has-selection"),this._cursorStyle){case j.Line:e+=" cursor-line-style";break;case j.Block:e+=" cursor-block-style";break;case j.Underline:e+=" cursor-underline-style";break;case j.LineThin:e+=" cursor-line-thin-style";break;case j.BlockOutline:e+=" cursor-block-outline-style";break;case j.UnderlineThin:e+=" cursor-underline-thin-style";break;default:e+=" cursor-line-style"}if(this._blinkingEnabled)switch(this._getCursorBlinking()){case 1:e+=" cursor-blink";break;case 2:e+=" cursor-smooth";break;case 3:e+=" cursor-phase";break;case 4:e+=" cursor-expand";break;case 5:e+=" cursor-solid";break;default:e+=" cursor-solid"}else e+=" cursor-solid";return this._cursorSmoothCaretAnimation&&(e+=" cursor-smooth-caret-animation"),e},t.prototype._show=function(){this._primaryCursor.show();for(var e=0,t=this._secondaryCursors.length;e<t;e++)this._secondaryCursors[e].show();this._isVisible=!0},t.prototype._hide=function(){this._primaryCursor.hide();for(var e=0,t=this._secondaryCursors.length;e<t;e++)this._secondaryCursors[e].hide();this._isVisible=!1},t.prototype.prepareRender=function(e){this._primaryCursor.prepareRender(e);for(var t=0,n=this._secondaryCursors.length;t<n;t++)this._secondaryCursors[t].prepareRender(e)},t.prototype.render=function(e){var t=[],n=0,i=this._primaryCursor.render(e);i&&(t[n++]=i);for(var o=0,r=this._secondaryCursors.length;o<r;o++){var s=this._secondaryCursors[o].render(e);s&&(t[n++]=s)}this._renderData=t},t.prototype.getLastRenderData=function(){return this._renderData},t.BLINK_INTERVAL=500,t}(og);yg((function(e,t){var n=e.getColor(zb);if(n){var i=e.getColor(jb);i||(i=n.opposite()),t.addRule(".monaco-editor .cursor { background-color: "+n+"; border-color: "+n+"; color: "+i+"; }"),"hc"===e.type&&t.addRule(".monaco-editor .cursors-layer.has-selection .cursor { border-left: 1px solid "+i+"; border-right: 1px solid "+i+"; }")}}));var CL=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),SL=function(){throw new Error("Invalid change accessor")},LL=function(e){function t(t){var n=e.call(this,t)||this,i=n._context.configuration.options,o=i.get(107);return n._lineHeight=i.get(49),n._contentWidth=o.contentWidth,n._contentLeft=o.contentLeft,n.domNode=Ff(document.createElement("div")),n.domNode.setClassName("view-zones"),n.domNode.setPosition("absolute"),n.domNode.setAttribute("role","presentation"),n.domNode.setAttribute("aria-hidden","true"),n.marginDomNode=Ff(document.createElement("div")),n.marginDomNode.setClassName("margin-view-zones"),n.marginDomNode.setPosition("absolute"),n.marginDomNode.setAttribute("role","presentation"),n.marginDomNode.setAttribute("aria-hidden","true"),n._zones={},n}return CL(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._zones={}},t.prototype._recomputeWhitespacesProps=function(){for(var e=this,t=this._context.viewLayout.getWhitespaces(),n=new Map,i=0,o=t;i<o.length;i++){var r=o[i];n.set(r.id,r)}return this._context.viewLayout.changeWhitespace((function(t){for(var i=!1,o=Object.keys(e._zones),r=0,s=o.length;r<s;r++){var a=o[r],u=e._zones[a],l=e._computeWhitespaceProps(u.delegate),c=n.get(a);!c||c.afterLineNumber===l.afterViewLineNumber&&c.height===l.heightInPx||(t.changeOneWhitespace(a,l.afterViewLineNumber,l.heightInPx),e._safeCallOnComputedHeight(u.delegate,l.heightInPx),i=!0)}return i}))},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options,n=t.get(107);return this._lineHeight=t.get(49),this._contentWidth=n.contentWidth,this._contentLeft=n.contentLeft,e.hasChanged(49)&&this._recomputeWhitespacesProps(),!0},t.prototype.onLineMappingChanged=function(e){var t=this._recomputeWhitespacesProps();return t&&this._context.viewLayout.onHeightMaybeChanged(),t},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollTopChanged||e.scrollWidthChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype._getZoneOrdinal=function(e){return void 0!==e.afterColumn?e.afterColumn:1e4},t.prototype._computeWhitespaceProps=function(e){if(0===e.afterLineNumber)return{afterViewLineNumber:0,heightInPx:this._heightInPixels(e),minWidthInPx:this._minWidthInPixels(e)};var t,n;if(void 0!==e.afterColumn)t=this._context.model.validateModelPosition({lineNumber:e.afterLineNumber,column:e.afterColumn});else{var i=this._context.model.validateModelPosition({lineNumber:e.afterLineNumber,column:1}).lineNumber;t=new bn(i,this._context.model.getModelLineMaxColumn(i))}n=t.column===this._context.model.getModelLineMaxColumn(t.lineNumber)?this._context.model.validateModelPosition({lineNumber:t.lineNumber+1,column:1}):this._context.model.validateModelPosition({lineNumber:t.lineNumber,column:t.column+1});var o=this._context.model.coordinatesConverter.convertModelPositionToViewPosition(t),r=this._context.model.coordinatesConverter.modelPositionIsVisible(n);return{afterViewLineNumber:o.lineNumber,heightInPx:r?this._heightInPixels(e):0,minWidthInPx:this._minWidthInPixels(e)}},t.prototype.changeViewZones=function(e){var t=this;return this._context.viewLayout.changeWhitespace((function(n){var i=!1,o={addZone:function(e){return i=!0,t._addZone(n,e)},removeZone:function(e){e&&(i=t._removeZone(n,e)||i)},layoutZone:function(e){e&&(i=t._layoutZone(n,e)||i)}};return function(e,t){try{e(t)}catch(e){De(e)}}(e,o),o.addZone=SL,o.removeZone=SL,o.layoutZone=SL,i}))},t.prototype._addZone=function(e,t){var n=this._computeWhitespaceProps(t),i={whitespaceId:e.insertWhitespace(n.afterViewLineNumber,this._getZoneOrdinal(t),n.heightInPx,n.minWidthInPx),delegate:t,isVisible:!1,domNode:Ff(t.domNode),marginDomNode:t.marginDomNode?Ff(t.marginDomNode):null};return this._safeCallOnComputedHeight(i.delegate,n.heightInPx),i.domNode.setPosition("absolute"),i.domNode.domNode.style.width="100%",i.domNode.setDisplay("none"),i.domNode.setAttribute("monaco-view-zone",i.whitespaceId),this.domNode.appendChild(i.domNode),i.marginDomNode&&(i.marginDomNode.setPosition("absolute"),i.marginDomNode.domNode.style.width="100%",i.marginDomNode.setDisplay("none"),i.marginDomNode.setAttribute("monaco-view-zone",i.whitespaceId),this.marginDomNode.appendChild(i.marginDomNode)),this._zones[i.whitespaceId]=i,this.setShouldRender(),i.whitespaceId},t.prototype._removeZone=function(e,t){if(this._zones.hasOwnProperty(t)){var n=this._zones[t];return delete this._zones[t],e.removeWhitespace(n.whitespaceId),n.domNode.removeAttribute("monaco-visible-view-zone"),n.domNode.removeAttribute("monaco-view-zone"),n.domNode.domNode.parentNode.removeChild(n.domNode.domNode),n.marginDomNode&&(n.marginDomNode.removeAttribute("monaco-visible-view-zone"),n.marginDomNode.removeAttribute("monaco-view-zone"),n.marginDomNode.domNode.parentNode.removeChild(n.marginDomNode.domNode)),this.setShouldRender(),!0}return!1},t.prototype._layoutZone=function(e,t){if(this._zones.hasOwnProperty(t)){var n=this._zones[t],i=this._computeWhitespaceProps(n.delegate);return e.changeOneWhitespace(n.whitespaceId,i.afterViewLineNumber,i.heightInPx),this._safeCallOnComputedHeight(n.delegate,i.heightInPx),this.setShouldRender(),!0}return!1},t.prototype.shouldSuppressMouseDownOnViewZone=function(e){if(this._zones.hasOwnProperty(e)){var t=this._zones[e];return Boolean(t.delegate.suppressMouseDown)}return!1},t.prototype._heightInPixels=function(e){return"number"==typeof e.heightInPx?e.heightInPx:"number"==typeof e.heightInLines?this._lineHeight*e.heightInLines:this._lineHeight},t.prototype._minWidthInPixels=function(e){return"number"==typeof e.minWidthInPx?e.minWidthInPx:0},t.prototype._safeCallOnComputedHeight=function(e,t){if("function"==typeof e.onComputedHeight)try{e.onComputedHeight(t)}catch(e){De(e)}},t.prototype._safeCallOnDomNodeTop=function(e,t){if("function"==typeof e.onDomNodeTop)try{e.onDomNodeTop(t)}catch(e){De(e)}},t.prototype.prepareRender=function(e){},t.prototype.render=function(e){for(var t=e.viewportData.whitespaceViewportData,n={},i=!1,o=0,r=t.length;o<r;o++)n[t[o].id]=t[o],i=!0;var s=Object.keys(this._zones);for(o=0,r=s.length;o<r;o++){var a=s[o],u=this._zones[a],l=0,c=0,d="none";n.hasOwnProperty(a)?(l=n[a].verticalOffset-e.bigNumbersDelta,c=n[a].height,d="block",u.isVisible||(u.domNode.setAttribute("monaco-visible-view-zone","true"),u.isVisible=!0),this._safeCallOnDomNodeTop(u.delegate,e.getScrolledTopFromAbsoluteTop(n[a].verticalOffset))):(u.isVisible&&(u.domNode.removeAttribute("monaco-visible-view-zone"),u.isVisible=!1),this._safeCallOnDomNodeTop(u.delegate,e.getScrolledTopFromAbsoluteTop(-1e6))),u.domNode.setTop(l),u.domNode.setHeight(c),u.domNode.setDisplay(d),u.marginDomNode&&(u.marginDomNode.setTop(l),u.marginDomNode.setHeight(c),u.marginDomNode.setDisplay(d))}i&&(this.domNode.setWidth(Math.max(e.scrollWidth,this._contentWidth)),this.marginDomNode.setWidth(this._contentLeft))},t}(og);var xL=function(){function e(e,t,n,i){this.configuration=e,this.theme=t,this.model=n,this.viewLayout=n.viewLayout,this.privateViewEventBus=i}return e.prototype.addEventHandler=function(e){this.privateViewEventBus.addEventHandler(e)},e.prototype.removeEventHandler=function(e){this.privateViewEventBus.removeEventHandler(e)},e}(),DL=function(){function e(e){this._eventHandlerGateKeeper=e,this._eventHandlers=[],this._eventQueue=null,this._isConsumingQueue=!1}return e.prototype.addEventHandler=function(e){for(var t=0,n=this._eventHandlers.length;t<n;t++)this._eventHandlers[t]===e&&console.warn("Detected duplicate listener in ViewEventDispatcher",e);this._eventHandlers.push(e)},e.prototype.removeEventHandler=function(e){for(var t=0;t<this._eventHandlers.length;t++)if(this._eventHandlers[t]===e){this._eventHandlers.splice(t,1);break}},e.prototype.emit=function(e){this._eventQueue?this._eventQueue.push(e):this._eventQueue=[e],this._isConsumingQueue||this.consumeQueue()},e.prototype.emitMany=function(e){this._eventQueue?this._eventQueue=this._eventQueue.concat(e):this._eventQueue=e,this._isConsumingQueue||this.consumeQueue()},e.prototype.consumeQueue=function(){var e=this;this._eventHandlerGateKeeper((function(){try{e._isConsumingQueue=!0,e._doConsumeQueue()}finally{e._isConsumingQueue=!1}}))},e.prototype._doConsumeQueue=function(){for(;this._eventQueue;){var e=this._eventQueue;this._eventQueue=null;for(var t=this._eventHandlers.slice(0),n=0,i=t.length;n<i;n++)t[n].handleEvents(e)}},e}(),NL=function(){function e(e,t,n,i){this.selections=e,this.startLineNumber=0|t.startLineNumber,this.endLineNumber=0|t.endLineNumber,this.relativeVerticalOffset=t.relativeVerticalOffset,this.bigNumbersDelta=0|t.bigNumbersDelta,this.whitespaceViewportData=n,this._model=i,this.visibleRange=new wn(t.startLineNumber,this._model.getLineMinColumn(t.startLineNumber),t.endLineNumber,this._model.getLineMaxColumn(t.endLineNumber))}return e.prototype.getViewLineRenderingData=function(e){return this._model.getViewLineRenderingData(this.visibleRange,e)},e.prototype.getDecorationsInViewport=function(){return this._model.getDecorationsInViewport(this.visibleRange)},e}(),kL=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),EL=function(e){function t(t,n,i,o,r,s){var a=e.call(this)||this;a._cursor=r,a._renderAnimationFrame=null,a.outgoingEvents=s;var u=new wC(n,o,a.outgoingEvents,t);a.eventDispatcher=new DL((function(e){return a._renderOnce(e)})),a.eventDispatcher.addEventHandler(a),a._context=new xL(n,i.getTheme(),o,a.eventDispatcher),a._register(i.onThemeChange((function(e){a._context.theme=e,a.eventDispatcher.emit(new xw),a.render(!0,!1)}))),a.viewParts=[],a._textAreaHandler=new Rw(a._context,u,a.createTextAreaHandlerHelper()),a.viewParts.push(a._textAreaHandler),a.linesContent=Ff(document.createElement("div")),a.linesContent.setClassName("lines-content monaco-editor-background"),a.linesContent.setPosition("absolute"),a.domNode=Ff(document.createElement("div")),a.domNode.setClassName(a.getEditorClassName()),a.overflowGuardContainer=Ff(document.createElement("div")),rg.write(a.overflowGuardContainer,3),a.overflowGuardContainer.setClassName("overflow-guard"),a._scrollbar=new _S(a._context,a.linesContent,a.domNode,a.overflowGuardContainer),a.viewParts.push(a._scrollbar),a.viewLines=new kS(a._context,a.linesContent),a.viewZones=new LL(a._context),a.viewParts.push(a.viewZones);var l=new eL(a._context);a.viewParts.push(l);var c=new lL(a._context);a.viewParts.push(c);var d=new OC(a._context);a.viewParts.push(d),d.addDynamicOverlay(new BC(a._context)),d.addDynamicOverlay(new mL(a._context)),d.addDynamicOverlay(new LS(a._context)),d.addDynamicOverlay(new jC(a._context));var h=new MC(a._context);a.viewParts.push(h),h.addDynamicOverlay(new HC(a._context)),h.addDynamicOverlay(new CS(a._context)),h.addDynamicOverlay(new MS(a._context)),h.addDynamicOverlay(new IS(a._context)),h.addDynamicOverlay(new uw(a._context));var p=new cw(a._context);p.getDomNode().appendChild(a.viewZones.marginDomNode),p.getDomNode().appendChild(h.getDomNode()),a.viewParts.push(p),a.contentWidgets=new RC(a._context,a.domNode),a.viewParts.push(a.contentWidgets),a.viewCursors=new wL(a._context),a.viewParts.push(a.viewCursors),a.overlayWidgets=new $S(a._context),a.viewParts.push(a.overlayWidgets);var f=new aL(a._context);a.viewParts.push(f);var g=new YS(a._context);if(a.viewParts.push(g),l){var m=a._scrollbar.getOverviewRulerLayoutInfo();m.parent.insertBefore(l.getDomNode(),m.insertBefore)}return a.linesContent.appendChild(d.getDomNode()),a.linesContent.appendChild(f.domNode),a.linesContent.appendChild(a.viewZones.domNode),a.linesContent.appendChild(a.viewLines.getDomNode()),a.linesContent.appendChild(a.contentWidgets.domNode),a.linesContent.appendChild(a.viewCursors.getDomNode()),a.overflowGuardContainer.appendChild(p.getDomNode()),a.overflowGuardContainer.appendChild(a._scrollbar.getDomNode()),a.overflowGuardContainer.appendChild(c.getDomNode()),a.overflowGuardContainer.appendChild(a._textAreaHandler.textArea),a.overflowGuardContainer.appendChild(a._textAreaHandler.textAreaCover),a.overflowGuardContainer.appendChild(a.overlayWidgets.getDomNode()),a.overflowGuardContainer.appendChild(g.getDomNode()),a.domNode.appendChild(a.overflowGuardContainer),a.domNode.appendChild(a.contentWidgets.overflowingContentWidgetsDomNode),a._applyLayout(),a.pointerHandler=a._register(new p_(a._context,u,a.createPointerHandlerHelper())),a._register(o.addEventListener((function(e){a.eventDispatcher.emitMany(e)}))),a._register(a._cursor.addEventListener((function(e){a.eventDispatcher.emitMany(e)}))),a}return kL(t,e),t.prototype._flushAccumulatedAndRenderNow=function(){this._renderNow()},t.prototype.createPointerHandlerHelper=function(){var e=this;return{viewDomNode:this.domNode.domNode,linesContentDomNode:this.linesContent.domNode,focusTextArea:function(){e.focus()},getLastRenderData:function(){var t=e.viewCursors.getLastRenderData()||[],n=e._textAreaHandler.getLastRenderData();return new Gv(t,n)},shouldSuppressMouseDownOnViewZone:function(t){return e.viewZones.shouldSuppressMouseDownOnViewZone(t)},shouldSuppressMouseDownOnWidget:function(t){return e.contentWidgets.shouldSuppressMouseDownOnWidget(t)},getPositionFromDOMInfo:function(t,n){return e._flushAccumulatedAndRenderNow(),e.viewLines.getPositionFromDOMInfo(t,n)},visibleRangeForPosition:function(t,n){return e._flushAccumulatedAndRenderNow(),e.viewLines.visibleRangeForPosition(new bn(t,n))},getLineWidth:function(t){return e._flushAccumulatedAndRenderNow(),e.viewLines.getLineWidth(t)}}},t.prototype.createTextAreaHandlerHelper=function(){var e=this;return{visibleRangeForPositionRelativeToEditor:function(t,n){return e._flushAccumulatedAndRenderNow(),e.viewLines.visibleRangeForPosition(new bn(t,n))}}},t.prototype._applyLayout=function(){var e=this._context.configuration.options.get(107);this.domNode.setWidth(e.width),this.domNode.setHeight(e.height),this.overflowGuardContainer.setWidth(e.width),this.overflowGuardContainer.setHeight(e.height),this.linesContent.setWidth(1e6),this.linesContent.setHeight(1e6)},t.prototype.getEditorClassName=function(){var e=this._textAreaHandler.isFocused()?" focused":"";return this._context.configuration.options.get(104)+" "+mg(this._context.theme.type)+e},t.prototype.onConfigurationChanged=function(e){return this.domNode.setClassName(this.getEditorClassName()),this._applyLayout(),!1},t.prototype.onContentSizeChanged=function(e){return this.outgoingEvents.emitContentSizeChange(e),!1},t.prototype.onFocusChanged=function(e){return this.domNode.setClassName(this.getEditorClassName()),this._context.model.setHasFocus(e.isFocused),e.isFocused?this.outgoingEvents.emitViewFocusGained():this.outgoingEvents.emitViewFocusLost(),!1},t.prototype.onScrollChanged=function(e){return this.outgoingEvents.emitScrollChanged(e),!1},t.prototype.onThemeChanged=function(e){return this.domNode.setClassName(this.getEditorClassName()),!1},t.prototype.dispose=function(){null!==this._renderAnimationFrame&&(this._renderAnimationFrame.dispose(),this._renderAnimationFrame=null),this.eventDispatcher.removeEventHandler(this),this.outgoingEvents.dispose(),this.viewLines.dispose();for(var t=0,n=this.viewParts.length;t<n;t++)this.viewParts[t].dispose();this.viewParts=[],e.prototype.dispose.call(this)},t.prototype._renderOnce=function(e){var t=IL(e);return this._scheduleRender(),t},t.prototype._scheduleRender=function(){null===this._renderAnimationFrame&&(this._renderAnimationFrame=go(this._onRenderScheduled.bind(this),100))},t.prototype._onRenderScheduled=function(){this._renderAnimationFrame=null,this._flushAccumulatedAndRenderNow()},t.prototype._renderNow=function(){var e=this;IL((function(){return e._actualRender()}))},t.prototype._getViewPartsToRender=function(){for(var e=[],t=0,n=0,i=this.viewParts.length;n<i;n++){var o=this.viewParts[n];o.shouldRender()&&(e[t++]=o)}return e},t.prototype._actualRender=function(){if($i(this.domNode.domNode)){var e=this._getViewPartsToRender();if(this.viewLines.shouldRender()||0!==e.length){var t=this._context.viewLayout.getLinesViewportData();this._context.model.setViewport(t.startLineNumber,t.endLineNumber,t.centeredLineNumber);var n=new NL(this._cursor.getViewSelections(),t,this._context.viewLayout.getWhitespaceViewportData(),this._context.model);this.contentWidgets.shouldRender()&&this.contentWidgets.onBeforeRender(n),this.viewLines.shouldRender()&&(this.viewLines.renderText(n),this.viewLines.onDidRender(),e=this._getViewPartsToRender());for(var i=new ag(this._context.viewLayout,n,this.viewLines),o=0,r=e.length;o<r;o++){(s=e[o]).prepareRender(i)}for(o=0,r=e.length;o<r;o++){var s;(s=e[o]).render(i),s.onDidRender()}}}},t.prototype.delegateVerticalScrollbarMouseDown=function(e){this._scrollbar.delegateVerticalScrollbarMouseDown(e)},t.prototype.restoreState=function(e){this._context.viewLayout.setScrollPositionNow({scrollTop:e.scrollTop}),this._context.model.tokenizeViewport(),this._renderNow(),this.viewLines.updateLineWidths(),this._context.viewLayout.setScrollPositionNow({scrollLeft:e.scrollLeft})},t.prototype.getOffsetForColumn=function(e,t){var n=this._context.model.validateModelPosition({lineNumber:e,column:t}),i=this._context.model.coordinatesConverter.convertModelPositionToViewPosition(n);this._flushAccumulatedAndRenderNow();var o=this.viewLines.visibleRangeForPosition(new bn(i.lineNumber,i.column));return o?o.left:-1},t.prototype.getTargetAtClientPoint=function(e,t){var n=this.pointerHandler.getTargetAtClientPoint(e,t);return n?SC.convertViewToModelMouseTarget(n,this._context.model.coordinatesConverter):null},t.prototype.createOverviewRuler=function(e){return new rL(this._context,e)},t.prototype.change=function(e){var t=this;return this._renderOnce((function(){var n=t.viewZones.changeViewZones(e);return n&&(t._context.viewLayout.onHeightMaybeChanged(),t._context.privateViewEventBus.emit(new kw)),n}))},t.prototype.render=function(e,t){if(t){this.viewLines.forceShouldRender();for(var n=0,i=this.viewParts.length;n<i;n++){this.viewParts[n].forceShouldRender()}}e?this._flushAccumulatedAndRenderNow():this._scheduleRender()},t.prototype.focus=function(){this._textAreaHandler.focusTextArea()},t.prototype.isFocused=function(){return this._textAreaHandler.isFocused()},t.prototype.setAriaOptions=function(e){this._textAreaHandler.setAriaOptions(e)},t.prototype.addContentWidget=function(e){this.contentWidgets.addWidget(e.widget),this.layoutContentWidget(e),this._scheduleRender()},t.prototype.layoutContentWidget=function(e){var t=e.position&&e.position.range||null;if(null===t){var n=e.position?e.position.position:null;null!==n&&(t=new wn(n.lineNumber,n.column,n.lineNumber,n.column))}var i=e.position?e.position.preference:null;this.contentWidgets.setWidgetPosition(e.widget,t,i),this._scheduleRender()},t.prototype.removeContentWidget=function(e){this.contentWidgets.removeWidget(e.widget),this._scheduleRender()},t.prototype.addOverlayWidget=function(e){this.overlayWidgets.addWidget(e.widget),this.layoutOverlayWidget(e),this._scheduleRender()},t.prototype.layoutOverlayWidget=function(e){var t=e.position?e.position.preference:null;this.overlayWidgets.setWidgetPosition(e.widget,t)&&this._scheduleRender()},t.prototype.removeOverlayWidget=function(e){this.overlayWidgets.removeWidget(e.widget),this._scheduleRender()},t}(ng);function IL(e){try{return e()}catch(e){De(e)}}var OL=function(){function e(e){this._selTrackedRange=null,this._trackSelection=!0,this._setState(e,new Wv(new wn(1,1,1,1),0,new bn(1,1),0),new Wv(new wn(1,1,1,1),0,new bn(1,1),0))}return e.prototype.dispose=function(e){this._removeTrackedRange(e)},e.prototype.startTrackingSelection=function(e){this._trackSelection=!0,this._updateTrackedRange(e)},e.prototype.stopTrackingSelection=function(e){this._trackSelection=!1,this._removeTrackedRange(e)},e.prototype._updateTrackedRange=function(e){this._trackSelection&&(this._selTrackedRange=e.model._setTrackedRange(this._selTrackedRange,this.modelState.selection,0))},e.prototype._removeTrackedRange=function(e){this._selTrackedRange=e.model._setTrackedRange(this._selTrackedRange,null,0)},e.prototype.asCursorState=function(){return new zv(this.modelState,this.viewState)},e.prototype.readSelectionFromMarkers=function(e){var t=e.model._getTrackedRange(this._selTrackedRange);return 0===this.modelState.selection.getDirection()?new Sn(t.startLineNumber,t.startColumn,t.endLineNumber,t.endColumn):new Sn(t.endLineNumber,t.endColumn,t.startLineNumber,t.startColumn)},e.prototype.ensureValidState=function(e){this._setState(e,this.modelState,this.viewState)},e.prototype.setState=function(e,t,n){this._setState(e,t,n)},e.prototype._setState=function(e,t,n){if(t){r=e.model.validateRange(t.selectionStart);var i=t.selectionStart.equalsRange(r)?t.selectionStartLeftoverVisibleColumns:0,o=(s=e.model.validatePosition(t.position),t.position.equals(s)?t.leftoverVisibleColumns:0);t=new Wv(r,i,s,o)}else{if(!n)return;var r=e.model.validateRange(e.convertViewRangeToModelRange(n.selectionStart)),s=e.model.validatePosition(e.convertViewPositionToModelPosition(n.position.lineNumber,n.position.column));t=new Wv(r,n.selectionStartLeftoverVisibleColumns,s,n.leftoverVisibleColumns)}if(n){l=e.validateViewRange(n.selectionStart,t.selectionStart),c=e.validateViewPosition(n.position,t.position);n=new Wv(l,t.selectionStartLeftoverVisibleColumns,c,t.leftoverVisibleColumns)}else{var a=e.convertModelPositionToViewPosition(new bn(t.selectionStart.startLineNumber,t.selectionStart.startColumn)),u=e.convertModelPositionToViewPosition(new bn(t.selectionStart.endLineNumber,t.selectionStart.endColumn)),l=new wn(a.lineNumber,a.column,u.lineNumber,u.column),c=e.convertModelPositionToViewPosition(t.position);n=new Wv(l,t.selectionStartLeftoverVisibleColumns,c,t.leftoverVisibleColumns)}this.modelState=t,this.viewState=n,this._updateTrackedRange(e)},e}(),ML=function(){function e(e){this.context=e,this.primaryCursor=new OL(e),this.secondaryCursors=[],this.lastAddedCursorIndex=0}return e.prototype.dispose=function(){this.primaryCursor.dispose(this.context),this.killSecondaryCursors()},e.prototype.startTrackingSelections=function(){this.primaryCursor.startTrackingSelection(this.context);for(var e=0,t=this.secondaryCursors.length;e<t;e++)this.secondaryCursors[e].startTrackingSelection(this.context)},e.prototype.stopTrackingSelections=function(){this.primaryCursor.stopTrackingSelection(this.context);for(var e=0,t=this.secondaryCursors.length;e<t;e++)this.secondaryCursors[e].stopTrackingSelection(this.context)},e.prototype.updateContext=function(e){this.context=e},e.prototype.ensureValidState=function(){this.primaryCursor.ensureValidState(this.context);for(var e=0,t=this.secondaryCursors.length;e<t;e++)this.secondaryCursors[e].ensureValidState(this.context)},e.prototype.readSelectionFromMarkers=function(){var e=[];e[0]=this.primaryCursor.readSelectionFromMarkers(this.context);for(var t=0,n=this.secondaryCursors.length;t<n;t++)e[t+1]=this.secondaryCursors[t].readSelectionFromMarkers(this.context);return e},e.prototype.getAll=function(){var e=[];e[0]=this.primaryCursor.asCursorState();for(var t=0,n=this.secondaryCursors.length;t<n;t++)e[t+1]=this.secondaryCursors[t].asCursorState();return e},e.prototype.getViewPositions=function(){var e=[];e[0]=this.primaryCursor.viewState.position;for(var t=0,n=this.secondaryCursors.length;t<n;t++)e[t+1]=this.secondaryCursors[t].viewState.position;return e},e.prototype.getSelections=function(){var e=[];e[0]=this.primaryCursor.modelState.selection;for(var t=0,n=this.secondaryCursors.length;t<n;t++)e[t+1]=this.secondaryCursors[t].modelState.selection;return e},e.prototype.getViewSelections=function(){var e=[];e[0]=this.primaryCursor.viewState.selection;for(var t=0,n=this.secondaryCursors.length;t<n;t++)e[t+1]=this.secondaryCursors[t].viewState.selection;return e},e.prototype.setSelections=function(e){this.setStates(zv.fromModelSelections(e))},e.prototype.getPrimaryCursor=function(){return this.primaryCursor.asCursorState()},e.prototype.setStates=function(e){null!==e&&(this.primaryCursor.setState(this.context,e[0].modelState,e[0].viewState),this._setSecondaryStates(e.slice(1)))},e.prototype._setSecondaryStates=function(e){var t=this.secondaryCursors.length,n=e.length;if(t<n)for(var i=n-t,o=0;o<i;o++)this._addSecondaryCursor();else if(t>n){var r=t-n;for(o=0;o<r;o++)this._removeSecondaryCursor(this.secondaryCursors.length-1)}for(o=0;o<n;o++)this.secondaryCursors[o].setState(this.context,e[o].modelState,e[o].viewState)},e.prototype.killSecondaryCursors=function(){this._setSecondaryStates([])},e.prototype._addSecondaryCursor=function(){this.secondaryCursors.push(new OL(this.context)),this.lastAddedCursorIndex=this.secondaryCursors.length},e.prototype.getLastAddedCursorIndex=function(){return 0===this.secondaryCursors.length||0===this.lastAddedCursorIndex?0:this.lastAddedCursorIndex},e.prototype._removeSecondaryCursor=function(e){this.lastAddedCursorIndex>=e+1&&this.lastAddedCursorIndex--,this.secondaryCursors[e].dispose(this.context),this.secondaryCursors.splice(e,1)},e.prototype._getAll=function(){var e=[];e[0]=this.primaryCursor;for(var t=0,n=this.secondaryCursors.length;t<n;t++)e[t+1]=this.secondaryCursors[t];return e},e.prototype.normalize=function(){if(0!==this.secondaryCursors.length){for(var e=this._getAll(),t=[],n=0,i=e.length;n<i;n++)t.push({index:n,selection:e[n].modelState.selection});t.sort((function(e,t){return e.selection.startLineNumber===t.selection.startLineNumber?e.selection.startColumn-t.selection.startColumn:e.selection.startLineNumber-t.selection.startLineNumber}));for(var o=0;o<t.length-1;o++){var r=t[o],s=t[o+1],a=r.selection,u=s.selection;if(this.context.config.multiCursorMergeOverlapping){if(u.isEmpty()||a.isEmpty()?u.getStartPosition().isBeforeOrEqual(a.getEndPosition()):u.getStartPosition().isBefore(a.getEndPosition())){var l=r.index<s.index?o:o+1,c=r.index<s.index?o+1:o,d=t[c].index,h=t[l].index,p=t[c].selection,f=t[l].selection;if(!p.equalsSelection(f)){var g=p.plusRange(f),m=p.selectionStartLineNumber===p.startLineNumber&&p.selectionStartColumn===p.startColumn,v=f.selectionStartLineNumber===f.startLineNumber&&f.selectionStartColumn===f.startColumn,_=void 0;d===this.lastAddedCursorIndex?(_=m,this.lastAddedCursorIndex=h):_=v;var y=void 0;y=_?new Sn(g.startLineNumber,g.startColumn,g.endLineNumber,g.endColumn):new Sn(g.endLineNumber,g.endColumn,g.startLineNumber,g.startColumn),t[l].selection=y;var b=zv.fromModelSelection(y);e[h].setState(this.context,b.modelState,b.viewState)}for(var w=0,C=t;w<C.length;w++){var S=C[w];S.index>d&&S.index--}e.splice(d,1),t.splice(c,1),this._removeSecondaryCursor(d-1),o--}}}}},e}(),TL=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();var PL=function(e,t,n,i,o,r){this.selections=e,this.modelVersionId=t,this.oldSelections=n,this.oldModelVersionId=i,this.source=o,this.reason=r},RL=function(){function e(e,t){this.modelVersionId=e.getVersionId(),this.cursorState=t.getAll()}return e.prototype.equals=function(e){if(!e)return!1;if(this.modelVersionId!==e.modelVersionId)return!1;if(this.cursorState.length!==e.cursorState.length)return!1;for(var t=0,n=this.cursorState.length;t<n;t++)if(!this.cursorState[t].equals(e.cursorState[t]))return!1;return!0},e}(),AL=function(){function e(e,t,n){this._model=e,this._autoClosedCharactersDecorations=t,this._autoClosedEnclosingDecorations=n}return e.getAllAutoClosedCharacters=function(e){for(var t=[],n=0,i=e;n<i.length;n++){var o=i[n];t=t.concat(o.getAutoClosedCharactersRanges())}return t},e.prototype.dispose=function(){this._autoClosedCharactersDecorations=this._model.deltaDecorations(this._autoClosedCharactersDecorations,[]),this._autoClosedEnclosingDecorations=this._model.deltaDecorations(this._autoClosedEnclosingDecorations,[])},e.prototype.getAutoClosedCharactersRanges=function(){for(var e=[],t=0;t<this._autoClosedCharactersDecorations.length;t++){var n=this._model.getDecorationRange(this._autoClosedCharactersDecorations[t]);n&&e.push(n)}return e},e.prototype.isValid=function(e){for(var t=[],n=0;n<this._autoClosedEnclosingDecorations.length;n++){var i=this._model.getDecorationRange(this._autoClosedEnclosingDecorations[n]);if(i&&(t.push(i),i.startLineNumber!==i.endLineNumber))return!1}t.sort(wn.compareRangesUsingStarts),e.sort(wn.compareRangesUsingStarts);for(n=0;n<e.length;n++){if(n>=t.length)return!1;if(!t[n].strictContainsRange(e[n]))return!1}return!0},e}(),FL=function(e){function t(t,n,i){var o=e.call(this)||this;o._onDidReachMaxCursorCount=o._register(new nt),o.onDidReachMaxCursorCount=o._onDidReachMaxCursorCount.event,o._onDidAttemptReadOnlyEdit=o._register(new nt),o.onDidAttemptReadOnlyEdit=o._onDidAttemptReadOnlyEdit.event,o._onDidChange=o._register(new nt),o.onDidChange=o._onDidChange.event,o._configuration=t,o._model=n,o._knownModelVersionId=o._model.getVersionId(),o._viewModel=i,o.context=new Vv(o._configuration,o._model,o._viewModel),o._cursors=new ML(o.context),o._isHandling=!1,o._isDoingComposition=!1,o._selectionsWhenCompositionStarted=null,o._columnSelectData=null,o._autoClosedActions=[],o._prevEditOperationType=0,o._register(o._model.onDidChangeRawContent((function(e){if(o._knownModelVersionId=e.versionId,!o._isHandling){var t=e.containsEvent(1);o._onModelContentChanged(t)}}))),o._register(i.addEventListener((function(e){(function(e){for(var t=0,n=e.length;t<n;t++)if(8===e[t].type)return!0;return!1})(e)&&o._knownModelVersionId===o._model.getVersionId()&&o.setStates("viewModel",0,o.getAll())})));var r=function(){o.context=new Vv(o._configuration,o._model,o._viewModel),o._cursors.updateContext(o.context)};return o._register(o._model.onDidChangeLanguage((function(e){r()}))),o._register(o._model.onDidChangeLanguageConfiguration((function(){r()}))),o._register(o._model.onDidChangeOptions((function(){r()}))),o._register(o._configuration.onDidChange((function(e){Fv.shouldRecreate(e)&&r()}))),o}return TL(t,e),t.prototype.dispose=function(){this._cursors.dispose(),this._autoClosedActions=Ae(this._autoClosedActions),e.prototype.dispose.call(this)},t.prototype._validateAutoClosedActions=function(){if(this._autoClosedActions.length>0)for(var e=this._cursors.getSelections(),t=0;t<this._autoClosedActions.length;t++){var n=this._autoClosedActions[t];n.isValid(e)||(n.dispose(),this._autoClosedActions.splice(t,1),t--)}},t.prototype.getPrimaryCursor=function(){return this._cursors.getPrimaryCursor()},t.prototype.getLastAddedCursorIndex=function(){return this._cursors.getLastAddedCursorIndex()},t.prototype.getAll=function(){return this._cursors.getAll()},t.prototype.setStates=function(e,n,i){null!==i&&i.length>t.MAX_CURSOR_COUNT&&(i=i.slice(0,t.MAX_CURSOR_COUNT),this._onDidReachMaxCursorCount.fire(void 0));var o=new RL(this._model,this);this._cursors.setStates(i),this._cursors.normalize(),this._columnSelectData=null,this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(e,n,o)},t.prototype.setColumnSelectData=function(e){this._columnSelectData=e},t.prototype.reveal=function(e,t,n,i){this._revealRange(e,n,0,t,i)},t.prototype.revealRange=function(e,t,n,i,o){this.emitCursorRevealRange(e,n,i,t,o)},t.prototype.scrollTo=function(e){this._viewModel.viewLayout.setScrollPositionSmooth({scrollTop:e})},t.prototype.saveState=function(){for(var e=[],t=this._cursors.getSelections(),n=0,i=t.length;n<i;n++){var o=t[n];e.push({inSelectionMode:!o.isEmpty(),selectionStart:{lineNumber:o.selectionStartLineNumber,column:o.selectionStartColumn},position:{lineNumber:o.positionLineNumber,column:o.positionColumn}})}return e},t.prototype.restoreState=function(e){for(var t=[],n=0,i=e.length;n<i;n++){var o=e[n],r=1,s=1;o.position&&o.position.lineNumber&&(r=o.position.lineNumber),o.position&&o.position.column&&(s=o.position.column);var a=r,u=s;o.selectionStart&&o.selectionStart.lineNumber&&(a=o.selectionStart.lineNumber),o.selectionStart&&o.selectionStart.column&&(u=o.selectionStart.column),t.push({selectionStartLineNumber:a,selectionStartColumn:u,positionLineNumber:r,positionColumn:s})}this.setStates("restoreState",0,zv.fromModelSelections(t)),this.reveal("restoreState",!0,0,1)},t.prototype._onModelContentChanged=function(e){if(this._prevEditOperationType=0,e)this._cursors.dispose(),this._cursors=new ML(this.context),this._validateAutoClosedActions(),this._emitStateChangedIfNecessary("model",1,null);else{var t=this._cursors.readSelectionFromMarkers();this.setStates("modelChange",2,zv.fromModelSelections(t))}},t.prototype.getSelection=function(){return this._cursors.getPrimaryCursor().modelState.selection},t.prototype.getColumnSelectData=function(){if(this._columnSelectData)return this._columnSelectData;var e=this._cursors.getPrimaryCursor().viewState.selectionStart.getStartPosition(),t=e.lineNumber,n=Uv.visibleColumnFromColumn2(this.context.config,this.context.viewModel,e);return{isReal:!1,fromViewLineNumber:t,fromViewVisualColumn:n,toViewLineNumber:t,toViewVisualColumn:n}},t.prototype.getSelections=function(){return this._cursors.getSelections()},t.prototype.getViewSelections=function(){return this._cursors.getViewSelections()},t.prototype.getPosition=function(){return this._cursors.getPrimaryCursor().modelState.position},t.prototype.setSelections=function(e,t){this.setStates(e,0,zv.fromModelSelections(t))},t.prototype.getPrevEditOperationType=function(){return this._prevEditOperationType},t.prototype.setPrevEditOperationType=function(e){this._prevEditOperationType=e},t.prototype._pushAutoClosedAction=function(e,t){for(var n=[],i=[],o=0,r=e.length;o<r;o++)n.push({range:e[o],options:{inlineClassName:"auto-closed-character",stickiness:1}}),i.push({range:t[o],options:{stickiness:1}});var s=this._model.deltaDecorations([],n),a=this._model.deltaDecorations([],i);this._autoClosedActions.push(new AL(this._model,s,a))},t.prototype._executeEditOperation=function(e){if(e){e.shouldPushStackElementBefore&&this._model.pushStackElement();var t=WL.executeCommands(this._model,this._cursors.getSelections(),e.commands);if(t){this._interpretCommandResult(t);for(var n=[],i=[],o=0;o<e.commands.length;o++){var r=e.commands[o];r instanceof sC&&r.enclosingRange&&r.closeCharacterRange&&(n.push(r.closeCharacterRange),i.push(r.enclosingRange))}n.length>0&&this._pushAutoClosedAction(n,i),this._prevEditOperationType=e.type}e.shouldPushStackElementAfter&&this._model.pushStackElement()}},t.prototype._interpretCommandResult=function(e){e&&0!==e.length||(e=this._cursors.readSelectionFromMarkers()),this._columnSelectData=null,this._cursors.setSelections(e),this._cursors.normalize()},t.prototype._emitStateChangedIfNecessary=function(e,t,n){var i=new RL(this._model,this);if(i.equals(n))return!1;var o=this._cursors.getSelections(),r=this._cursors.getViewSelections();try{this._beginEmit().emit(new fw(r,o))}finally{this._endEmit()}if(!n||n.cursorState.length!==i.cursorState.length||i.cursorState.some((function(e,t){return!e.modelState.equals(n.cursorState[t].modelState)}))){var s=n?n.cursorState.map((function(e){return e.modelState.selection})):null,a=n?n.modelVersionId:0;this._onDidChange.fire(new PL(o,i.modelVersionId,s,a,e||"keyboard",t))}return!0},t.prototype._revealRange=function(e,t,n,i,o){var r=this._cursors.getViewPositions(),s=r[0];if(1===t)for(var a=1;a<r.length;a++)r[a].isBefore(s)&&(s=r[a]);else if(2===t)for(a=1;a<r.length;a++)s.isBeforeOrEqual(r[a])&&(s=r[a]);else if(r.length>1)return;var u=new wn(s.lineNumber,s.column,s.lineNumber,s.column);this.emitCursorRevealRange(e,u,n,i,o)},t.prototype.emitCursorRevealRange=function(e,t,n,i,o){try{this._beginEmit().emit(new Sw(e,t,n,i,o))}finally{this._endEmit()}},t.prototype._findAutoClosingPairs=function(e){if(!e.length)return null;for(var t=[],n=0,i=e.length;n<i;n++){var o=e[n];if(!o.text||o.text.indexOf("\n")>=0)return null;var r=o.text.match(/([)\]}>'"`])([^)\]}>'"`]*)$/);if(!r)return null;var s=r[1],a=this.context.config.autoClosingPairsClose2.get(s);if(!a||1!==a.length)return null;var u=a[0].open,l=o.text.length-r[2].length-1,c=o.text.lastIndexOf(u,l-1);if(-1===c)return null;t.push([c,l])}return t},t.prototype.executeEdits=function(e,t,n){var i=this,o=null;"snippet"===e&&(o=this._findAutoClosingPairs(t)),o&&(t[0]._isTracked=!0);var r=[],s=[],a=this._model.pushEditOperations(this.getSelections(),t,(function(e){if(o)for(var t=0,a=o.length;t<a;t++){var u=o[t],l=u[0],c=u[1],d=e[t],h=d.range.startLineNumber,p=d.range.startColumn-1+l,f=d.range.startColumn-1+c;r.push(new wn(h,f+1,h,f+2)),s.push(new wn(h,p+1,h,f+2))}var g=n(e);return g&&(i._isHandling=!0),g}));a&&(this._isHandling=!1,this.setSelections(e,a)),r.length>0&&this._pushAutoClosedAction(r,s)},t.prototype.trigger=function(e,t,n){var i=za;if(t===i.CompositionStart)return this._isDoingComposition=!0,void(this._selectionsWhenCompositionStarted=this.getSelections().slice(0));if(t===i.CompositionEnd&&(this._isDoingComposition=!1),this._configuration.options.get(68))this._onDidAttemptReadOnlyEdit.fire(void 0);else{var o=new RL(this._model,this),r=0;t!==i.Undo&&t!==i.Redo&&this._cursors.stopTrackingSelections(),this._cursors.ensureValidState(),this._isHandling=!0;try{switch(t){case i.Type:this._type(e,n.text);break;case i.ReplacePreviousChar:this._replacePreviousChar(n.text,n.replaceCharCnt);break;case i.Paste:r=4,this._paste(n.text,n.pasteOnNewLine,n.multicursorText||[]);break;case i.Cut:this._cut();break;case i.Undo:r=5,this._interpretCommandResult(this._model.undo());break;case i.Redo:r=6,this._interpretCommandResult(this._model.redo());break;case i.ExecuteCommand:this._externalExecuteCommand(n);break;case i.ExecuteCommands:this._externalExecuteCommands(n);break;case i.CompositionEnd:this._interpretCompositionEnd(e)}}catch(e){De(e)}this._isHandling=!1,t!==i.Undo&&t!==i.Redo&&this._cursors.startTrackingSelections(),this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(e,r,o)&&this._revealRange(e,0,0,!0,0)}},t.prototype._interpretCompositionEnd=function(e){if(!this._isDoingComposition&&"keyboard"===e){var t=AL.getAllAutoClosedCharacters(this._autoClosedActions);this._executeEditOperation(rC.compositionEndWithInterceptors(this._prevEditOperationType,this.context.config,this.context.model,this._selectionsWhenCompositionStarted,this.getSelections(),t)),this._selectionsWhenCompositionStarted=null}},t.prototype._type=function(e,t){if(this._isDoingComposition||"keyboard"!==e)this._executeEditOperation(rC.typeWithoutInterceptors(this._prevEditOperationType,this.context.config,this.context.model,this.getSelections(),t));else for(var n=t.length,i=0;i<n;){var o=Fr(t,i),r=t.substr(i,o),s=AL.getAllAutoClosedCharacters(this._autoClosedActions);this._executeEditOperation(rC.typeWithInterceptors(this._prevEditOperationType,this.context.config,this.context.model,this.getSelections(),s,r)),i+=o}},t.prototype._replacePreviousChar=function(e,t){this._executeEditOperation(rC.replacePreviousChar(this._prevEditOperationType,this.context.config,this.context.model,this.getSelections(),e,t))},t.prototype._paste=function(e,t,n){this._executeEditOperation(rC.paste(this.context.config,this.context.model,this.getSelections(),e,t,n))},t.prototype._cut=function(){this._executeEditOperation(Uw.cut(this.context.config,this.context.model,this.getSelections()))},t.prototype._externalExecuteCommand=function(e){this._cursors.killSecondaryCursors(),this._executeEditOperation(new jv(0,[e],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}))},t.prototype._externalExecuteCommands=function(e){this._executeEditOperation(new jv(0,e,{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}))},t.MAX_CURSOR_COUNT=1e4,t}(Ew),WL=function(){function e(){}return e.executeCommands=function(e,t,n){for(var i={model:e,selectionsBefore:t,trackedRanges:[],trackedRangesDirection:[]},o=this._innerExecuteCommands(i,n),r=0,s=i.trackedRanges.length;r<s;r++)i.model._setTrackedRange(i.trackedRanges[r],null,0);return o},e._innerExecuteCommands=function(e,t){if(this._arrayIsEmpty(t))return null;var n=this._getEditOperations(e,t);if(0===n.operations.length)return null;var i=n.operations,o=this._getLoserCursorMap(i);if(o.hasOwnProperty("0"))return console.warn("Ignoring commands"),null;for(var r=[],s=0,a=i.length;s<a;s++)o.hasOwnProperty(i[s].identifier.major.toString())||r.push(i[s]);n.hadTrackedEditOperation&&r.length>0&&(r[0]._isTracked=!0);var u=e.model.pushEditOperations(e.selectionsBefore,r,(function(n){for(var i=[],o=0;o<e.selectionsBefore.length;o++)i[o]=[];for(var r=0,s=n;r<s.length;r++){var a=s[r];a.identifier&&i[a.identifier.major].push(a)}var u=function(e,t){return e.identifier.minor-t.identifier.minor},l=[],c=function(n){i[n].length>0?(i[n].sort(u),l[n]=t[n].computeCursorState(e.model,{getInverseEditOperations:function(){return i[n]},getTrackedSelection:function(t){var n=parseInt(t,10),i=e.model._getTrackedRange(e.trackedRanges[n]);return 0===e.trackedRangesDirection[n]?new Sn(i.startLineNumber,i.startColumn,i.endLineNumber,i.endColumn):new Sn(i.endLineNumber,i.endColumn,i.startLineNumber,i.startColumn)}})):l[n]=e.selectionsBefore[n]};for(o=0;o<e.selectionsBefore.length;o++)c(o);return l}));u||(u=e.selectionsBefore);var l=[];for(var c in o)o.hasOwnProperty(c)&&l.push(parseInt(c,10));l.sort((function(e,t){return t-e}));for(var d=0,h=l;d<h.length;d++){var p=h[d];u.splice(p,1)}return u},e._arrayIsEmpty=function(e){for(var t=0,n=e.length;t<n;t++)if(e[t])return!1;return!0},e._getEditOperations=function(e,t){for(var n=[],i=!1,o=0,r=t.length;o<r;o++){var s=t[o];if(s){var a=this._getEditOperationsFromCommand(e,o,s);n=n.concat(a.operations),i=i||a.hadTrackedEditOperation}}return{operations:n,hadTrackedEditOperation:i}},e._getEditOperationsFromCommand=function(e,t,n){var i=[],o=0,r=function(e,r,s){void 0===s&&(s=!1),e.isEmpty()&&""===r||i.push({identifier:{major:t,minor:o++},range:e,text:r,forceMoveMarkers:s,isAutoWhitespaceEdit:n.insertsAutoWhitespace})},s=!1,a={addEditOperation:r,addTrackedEditOperation:function(e,t,n){s=!0,r(e,t,n)},trackSelection:function(t,n){var i;if(t.isEmpty())if("boolean"==typeof n)i=n?2:3;else{var o=e.model.getLineMaxColumn(t.startLineNumber);i=t.startColumn===o?2:3}else i=1;var r=e.trackedRanges.length,s=e.model._setTrackedRange(null,t,i);return e.trackedRanges[r]=s,e.trackedRangesDirection[r]=t.getDirection(),r.toString()}};try{n.getEditOperations(e.model,a)}catch(e){return De(e),{operations:[],hadTrackedEditOperation:!1}}return{operations:i,hadTrackedEditOperation:s}},e._getLoserCursorMap=function(e){(e=e.slice(0)).sort((function(e,t){return-wn.compareRangesUsingEnds(e.range,t.range)}));for(var t={},n=1;n<e.length;n++){var i=e[n-1],o=e[n];if(i.range.getStartPosition().isBefore(o.range.getEndPosition())){var r=void 0;t[(r=i.identifier.major>o.identifier.major?i.identifier.major:o.identifier.major).toString()]=!0;for(var s=0;s<e.length;s++)e[s].identifier.major===r&&(e.splice(s,1),s<n&&n--,s--);n>0&&n--}}return t},e}(),VL=function(){function e(e,t,n,i,o,r){this.id=e,this.label=t,this.alias=n,this._precondition=i,this._run=o,this._contextKeyService=r}return e.prototype.isSupported=function(){return this._contextKeyService.contextMatchesRules(this._precondition)},e.prototype.run=function(){if(!this.isSupported())return Promise.resolve(void 0);var e=this._run();return e||Promise.resolve(void 0)},e}(),BL={getInitialState:function(){return Xu},tokenize2:function(e,t,n){return Ju(0,0,t,n)}};function HL(e,t){return void 0===t&&(t=BL),function(e,t){for(var n='<div class="monaco-tokenized-source">',i=e.split(/\r\n|\r|\n/),o=t.getInitialState(),r=0,s=i.length;r<s;r++){var a=i[r];r>0&&(n+="<br/>");var u=t.tokenize2(a,o,0);Vc.convertToEndOffset(u.tokens,a.length);for(var l=new Vc(u.tokens,a).inflate(),c=0,d=0,h=l.getCount();d<h;d++){var p=l.getClassName(d),f=l.getEndOffset(d);n+='<span class="'+p+'">'+fr(a.substring(c,f))+"</span>",c=f}o=u.endState}return n+="</div>"}(e,t||BL)}function zL(e,t,n,i,o,r,s){for(var a="<div>",u=i,l=0,c=0,d=t.getCount();c<d;c++){var h=t.getEndOffset(c);if(!(h<=i)){for(var p="";u<h&&u<o;u++){var f=e.charCodeAt(u);switch(f){case 9:var g=r-(u+l)%r;for(l+=g-1;g>0;)p+=s?" ":" ",g--;break;case 60:p+="<";break;case 62:p+=">";break;case 38:p+="&";break;case 0:p+="�";break;case 65279:case 8232:p+="�";break;case 13:p+="​";break;case 32:p+=s?" ":" ";break;default:p+=String.fromCharCode(f)}}if(a+='<span style="'+t.getInlineStyle(c,n)+'">'+p+"</span>",h>o||u>=o)break}}return a+="</div>"}var jL=function(){function e(){this._hasPending=!1,this._inserts=[],this._changes=[],this._removes=[]}return e.prototype.insert=function(e){this._hasPending=!0,this._inserts.push(e)},e.prototype.change=function(e){this._hasPending=!0,this._changes.push(e)},e.prototype.remove=function(e){this._hasPending=!0,this._removes.push(e)},e.prototype.mustCommit=function(){return this._hasPending},e.prototype.commit=function(e){if(this._hasPending){var t=this._inserts,n=this._changes,i=this._removes;this._hasPending=!1,this._inserts=[],this._changes=[],this._removes=[],e._commitPendingChanges(t,n,i)}},e}(),UL=function(e,t,n,i,o){this.id=e,this.afterLineNumber=t,this.ordinal=n,this.height=i,this.minWidth=o,this.prefixSum=0},KL=function(){function e(t,n){this._instanceId=Yr(++e.INSTANCE_COUNT),this._pendingChanges=new jL,this._lastWhitespaceId=0,this._arr=[],this._prefixSumValidIndex=-1,this._minWidth=-1,this._lineCount=t,this._lineHeight=n}return e.findInsertionIndex=function(e,t,n){for(var i=0,o=e.length;i<o;){var r=i+o>>>1;t===e[r].afterLineNumber?n<e[r].ordinal?o=r:i=r+1:t<e[r].afterLineNumber?o=r:i=r+1}return i},e.prototype.setLineHeight=function(e){this._checkPendingChanges(),this._lineHeight=e},e.prototype.onFlushed=function(e){this._checkPendingChanges(),this._lineCount=e},e.prototype.changeWhitespace=function(e){var t=this;try{return e({insertWhitespace:function(e,n,i,o){e|=0,n|=0,i|=0,o|=0;var r=t._instanceId+ ++t._lastWhitespaceId;return t._pendingChanges.insert(new UL(r,e,n,i,o)),r},changeOneWhitespace:function(e,n,i){n|=0,i|=0,t._pendingChanges.change({id:e,newAfterLineNumber:n,newHeight:i})},removeWhitespace:function(e){t._pendingChanges.remove({id:e})}})}finally{this._pendingChanges.commit(this)}},e.prototype._commitPendingChanges=function(e,t,n){if((e.length>0||n.length>0)&&(this._minWidth=-1),e.length+t.length+n.length<=1){for(var i=0,o=e;i<o.length;i++){var r=o[i];this._insertWhitespace(r)}for(var s=0,a=t;s<a.length;s++){var u=a[s];this._changeOneWhitespace(u.id,u.newAfterLineNumber,u.newHeight)}for(var l=0,c=n;l<c.length;l++){var d=c[l],h=this._findWhitespaceIndex(d.id);-1!==h&&this._removeWhitespace(h)}}else{for(var p=new Set,f=0,g=n;f<g.length;f++){d=g[f];p.add(d.id)}for(var m=new Map,v=0,_=t;v<_.length;v++){u=_[v];m.set(u.id,u)}var y=function(e){for(var t=[],n=0,i=e;n<i.length;n++){var o=i[n];if(!p.has(o.id)){if(m.has(o.id)){var r=m.get(o.id);o.afterLineNumber=r.newAfterLineNumber,o.height=r.newHeight}t.push(o)}}return t},b=y(this._arr).concat(y(e));b.sort((function(e,t){return e.afterLineNumber===t.afterLineNumber?e.ordinal-t.ordinal:e.afterLineNumber-t.afterLineNumber})),this._arr=b,this._prefixSumValidIndex=-1}},e.prototype._checkPendingChanges=function(){this._pendingChanges.mustCommit()&&this._pendingChanges.commit(this)},e.prototype._insertWhitespace=function(t){var n=e.findInsertionIndex(this._arr,t.afterLineNumber,t.ordinal);this._arr.splice(n,0,t),this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,n-1)},e.prototype._findWhitespaceIndex=function(e){for(var t=this._arr,n=0,i=t.length;n<i;n++)if(t[n].id===e)return n;return-1},e.prototype._changeOneWhitespace=function(e,t,n){var i=this._findWhitespaceIndex(e);if(-1!==i&&(this._arr[i].height!==n&&(this._arr[i].height=n,this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,i-1)),this._arr[i].afterLineNumber!==t)){var o=this._arr[i];this._removeWhitespace(i),o.afterLineNumber=t,this._insertWhitespace(o)}},e.prototype._removeWhitespace=function(e){this._arr.splice(e,1),this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,e-1)},e.prototype.onLinesDeleted=function(e,t){this._checkPendingChanges(),e|=0,t|=0,this._lineCount-=t-e+1;for(var n=0,i=this._arr.length;n<i;n++){var o=this._arr[n].afterLineNumber;e<=o&&o<=t?this._arr[n].afterLineNumber=e-1:o>t&&(this._arr[n].afterLineNumber-=t-e+1)}},e.prototype.onLinesInserted=function(e,t){this._checkPendingChanges(),e|=0,t|=0,this._lineCount+=t-e+1;for(var n=0,i=this._arr.length;n<i;n++){e<=this._arr[n].afterLineNumber&&(this._arr[n].afterLineNumber+=t-e+1)}},e.prototype.getWhitespacesTotalHeight=function(){return this._checkPendingChanges(),0===this._arr.length?0:this.getWhitespacesAccumulatedHeight(this._arr.length-1)},e.prototype.getWhitespacesAccumulatedHeight=function(e){this._checkPendingChanges(),e|=0;var t=Math.max(0,this._prefixSumValidIndex+1);0===t&&(this._arr[0].prefixSum=this._arr[0].height,t++);for(var n=t;n<=e;n++)this._arr[n].prefixSum=this._arr[n-1].prefixSum+this._arr[n].height;return this._prefixSumValidIndex=Math.max(this._prefixSumValidIndex,e),this._arr[e].prefixSum},e.prototype.getLinesTotalHeight=function(){return this._checkPendingChanges(),this._lineHeight*this._lineCount+this.getWhitespacesTotalHeight()},e.prototype.getWhitespaceAccumulatedHeightBeforeLineNumber=function(e){this._checkPendingChanges(),e|=0;var t=this._findLastWhitespaceBeforeLineNumber(e);return-1===t?0:this.getWhitespacesAccumulatedHeight(t)},e.prototype._findLastWhitespaceBeforeLineNumber=function(e){e|=0;for(var t=this._arr,n=0,i=t.length-1;n<=i;){var o=n+((i-n|0)/2|0)|0;if(t[o].afterLineNumber<e){if(o+1>=t.length||t[o+1].afterLineNumber>=e)return o;n=o+1|0}else i=o-1|0}return-1},e.prototype._findFirstWhitespaceAfterLineNumber=function(e){e|=0;var t=this._findLastWhitespaceBeforeLineNumber(e)+1;return t<this._arr.length?t:-1},e.prototype.getFirstWhitespaceIndexAfterLineNumber=function(e){return this._checkPendingChanges(),e|=0,this._findFirstWhitespaceAfterLineNumber(e)},e.prototype.getVerticalOffsetForLineNumber=function(e){return this._checkPendingChanges(),((e|=0)>1?this._lineHeight*(e-1):0)+this.getWhitespaceAccumulatedHeightBeforeLineNumber(e)},e.prototype.getWhitespaceMinWidth=function(){if(this._checkPendingChanges(),-1===this._minWidth){for(var e=0,t=0,n=this._arr.length;t<n;t++)e=Math.max(e,this._arr[t].minWidth);this._minWidth=e}return this._minWidth},e.prototype.isAfterLines=function(e){return this._checkPendingChanges(),e>this.getLinesTotalHeight()},e.prototype.getLineNumberAtOrAfterVerticalOffset=function(e){if(this._checkPendingChanges(),(e|=0)<0)return 1;for(var t=0|this._lineCount,n=this._lineHeight,i=1,o=t;i<o;){var r=(i+o)/2|0,s=0|this.getVerticalOffsetForLineNumber(r);if(e>=s+n)i=r+1;else{if(e>=s)return r;o=r}}return i>t?t:i},e.prototype.getLinesViewportData=function(e,t){this._checkPendingChanges(),e|=0,t|=0;var n,i,o=this._lineHeight,r=0|this.getLineNumberAtOrAfterVerticalOffset(e),s=0|this.getVerticalOffsetForLineNumber(r),a=0|this._lineCount,u=0|this.getFirstWhitespaceIndexAfterLineNumber(r),l=0|this.getWhitespacesCount();-1===u?(u=l,i=a+1,n=0):(i=0|this.getAfterLineNumberForWhitespaceIndex(u),n=0|this.getHeightForWhitespaceIndex(u));var c=s,d=c,h=0;s>=5e5&&(h=5e5*Math.floor(s/5e5),d-=h=Math.floor(h/o)*o);for(var p=[],f=e+(t-e)/2,g=-1,m=r;m<=a;m++){if(-1===g){(c<=f&&f<c+o||c>f)&&(g=m)}for(c+=o,p[m-r]=d,d+=o;i===m;)d+=n,c+=n,++u>=l?i=a+1:(i=0|this.getAfterLineNumberForWhitespaceIndex(u),n=0|this.getHeightForWhitespaceIndex(u));if(c>=t){a=m;break}}-1===g&&(g=a);var v=0|this.getVerticalOffsetForLineNumber(a),_=r,y=a;return _<y&&s<e&&_++,_<y&&v+o>t&&y--,{bigNumbersDelta:h,startLineNumber:r,endLineNumber:a,relativeVerticalOffset:p,centeredLineNumber:g,completelyVisibleStartLineNumber:_,completelyVisibleEndLineNumber:y}},e.prototype.getVerticalOffsetForWhitespaceIndex=function(e){this._checkPendingChanges(),e|=0;var t=this.getAfterLineNumberForWhitespaceIndex(e);return(t>=1?this._lineHeight*t:0)+(e>0?this.getWhitespacesAccumulatedHeight(e-1):0)},e.prototype.getWhitespaceIndexAtOrAfterVerticallOffset=function(e){this._checkPendingChanges(),e|=0;var t=0,n=this.getWhitespacesCount()-1;if(n<0)return-1;if(e>=this.getVerticalOffsetForWhitespaceIndex(n)+this.getHeightForWhitespaceIndex(n))return-1;for(;t<n;){var i=Math.floor((t+n)/2),o=this.getVerticalOffsetForWhitespaceIndex(i);if(e>=o+this.getHeightForWhitespaceIndex(i))t=i+1;else{if(e>=o)return i;n=i}}return t},e.prototype.getWhitespaceAtVerticalOffset=function(e){this._checkPendingChanges(),e|=0;var t=this.getWhitespaceIndexAtOrAfterVerticallOffset(e);if(t<0)return null;if(t>=this.getWhitespacesCount())return null;var n=this.getVerticalOffsetForWhitespaceIndex(t);if(n>e)return null;var i=this.getHeightForWhitespaceIndex(t);return{id:this.getIdForWhitespaceIndex(t),afterLineNumber:this.getAfterLineNumberForWhitespaceIndex(t),verticalOffset:n,height:i}},e.prototype.getWhitespaceViewportData=function(e,t){this._checkPendingChanges(),e|=0,t|=0;var n=this.getWhitespaceIndexAtOrAfterVerticallOffset(e),i=this.getWhitespacesCount()-1;if(n<0)return[];for(var o=[],r=n;r<=i;r++){var s=this.getVerticalOffsetForWhitespaceIndex(r),a=this.getHeightForWhitespaceIndex(r);if(s>=t)break;o.push({id:this.getIdForWhitespaceIndex(r),afterLineNumber:this.getAfterLineNumberForWhitespaceIndex(r),verticalOffset:s,height:a})}return o},e.prototype.getWhitespaces=function(){return this._checkPendingChanges(),this._arr.slice(0)},e.prototype.getWhitespacesCount=function(){return this._checkPendingChanges(),this._arr.length},e.prototype.getIdForWhitespaceIndex=function(e){return this._checkPendingChanges(),e|=0,this._arr[e].id},e.prototype.getAfterLineNumberForWhitespaceIndex=function(e){return this._checkPendingChanges(),e|=0,this._arr[e].afterLineNumber},e.prototype.getHeightForWhitespaceIndex=function(e){return this._checkPendingChanges(),e|=0,this._arr[e].height},e.INSTANCE_COUNT=0,e}(),qL=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),GL=function(){function e(e,t,n,i){(e|=0)<0&&(e=0),(t|=0)<0&&(t=0),(n|=0)<0&&(n=0),(i|=0)<0&&(i=0),this.width=e,this.contentWidth=t,this.scrollWidth=Math.max(e,t),this.height=n,this.contentHeight=i,this.scrollHeight=Math.max(n,i)}return e.prototype.equals=function(e){return this.width===e.width&&this.contentWidth===e.contentWidth&&this.height===e.height&&this.contentHeight===e.contentHeight},e}(),ZL=function(e){function t(t,n){var i=e.call(this)||this;return i._onDidContentSizeChange=i._register(new nt),i.onDidContentSizeChange=i._onDidContentSizeChange.event,i._dimensions=new GL(0,0,0,0),i._scrollable=i._register(new rS(t,n)),i.onDidScroll=i._scrollable.onScroll,i}return qL(t,e),t.prototype.getScrollable=function(){return this._scrollable},t.prototype.setSmoothScrollDuration=function(e){this._scrollable.setSmoothScrollDuration(e)},t.prototype.validateScrollPosition=function(e){return this._scrollable.validateScrollPosition(e)},t.prototype.getScrollDimensions=function(){return this._dimensions},t.prototype.setScrollDimensions=function(e){if(!this._dimensions.equals(e)){var t=this._dimensions;this._dimensions=e,this._scrollable.setScrollDimensions({width:e.width,scrollWidth:e.scrollWidth,height:e.height,scrollHeight:e.scrollHeight});var n=t.contentWidth!==e.contentWidth,i=t.contentHeight!==e.contentHeight;(n||i)&&this._onDidContentSizeChange.fire({contentWidth:e.contentWidth,contentHeight:e.contentHeight,contentWidthChanged:n,contentHeightChanged:i})}},t.prototype.getFutureScrollPosition=function(){return this._scrollable.getFutureScrollPosition()},t.prototype.getCurrentScrollPosition=function(){return this._scrollable.getCurrentScrollPosition()},t.prototype.setScrollPositionNow=function(e){this._scrollable.setScrollPositionNow(e)},t.prototype.setScrollPositionSmooth=function(e){this._scrollable.setScrollPositionSmooth(e)},t}(He),YL=function(e){function t(t,n,i){var o=e.call(this)||this;o._configuration=t;var r=o._configuration.options,s=r.get(107);return o._linesLayout=new KL(n,r.get(49)),o._scrollable=o._register(new ZL(0,i)),o._configureSmoothScrollDuration(),o._scrollable.setScrollDimensions(new GL(s.contentWidth,0,s.height,0)),o.onDidScroll=o._scrollable.onDidScroll,o.onDidContentSizeChange=o._scrollable.onDidContentSizeChange,o._updateHeight(),o}return qL(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.getScrollable=function(){return this._scrollable.getScrollable()},t.prototype.onHeightMaybeChanged=function(){this._updateHeight()},t.prototype._configureSmoothScrollDuration=function(){this._scrollable.setSmoothScrollDuration(this._configuration.options.get(87)?125:0)},t.prototype.onConfigurationChanged=function(e){var t=this._configuration.options;if(e.hasChanged(49)&&this._linesLayout.setLineHeight(t.get(49)),e.hasChanged(107)){var n=t.get(107),i=n.contentWidth,o=n.height,r=this._scrollable.getScrollDimensions(),s=r.scrollWidth;this._scrollable.setScrollDimensions(new GL(i,r.contentWidth,o,this._getContentHeight(i,o,s)))}else this._updateHeight();e.hasChanged(87)&&this._configureSmoothScrollDuration()},t.prototype.onFlushed=function(e){this._linesLayout.onFlushed(e)},t.prototype.onLinesDeleted=function(e,t){this._linesLayout.onLinesDeleted(e,t)},t.prototype.onLinesInserted=function(e,t){this._linesLayout.onLinesInserted(e,t)},t.prototype._getHorizontalScrollbarHeight=function(e,t){var n=this._configuration.options.get(78);return 2===n.horizontal||e>=t?0:n.horizontalScrollbarSize},t.prototype._getContentHeight=function(e,t,n){var i=this._configuration.options,o=this._linesLayout.getLinesTotalHeight();return i.get(80)?o+=t-i.get(49):o+=this._getHorizontalScrollbarHeight(e,n),o},t.prototype._updateHeight=function(){var e=this._scrollable.getScrollDimensions(),t=e.width,n=e.height,i=e.scrollWidth;this._scrollable.setScrollDimensions(new GL(t,e.contentWidth,n,this._getContentHeight(t,n,i)))},t.prototype.getCurrentViewport=function(){var e=this._scrollable.getScrollDimensions(),t=this._scrollable.getCurrentScrollPosition();return new nd(t.scrollTop,t.scrollLeft,e.width,e.height)},t.prototype.getFutureViewport=function(){var e=this._scrollable.getScrollDimensions(),t=this._scrollable.getFutureScrollPosition();return new nd(t.scrollTop,t.scrollLeft,e.width,e.height)},t.prototype._computeContentWidth=function(e){var t=this._configuration.options,n=t.get(108),i=t.get(34);if(n.isViewportWrapping){var o=t.get(107),r=t.get(54);return e>o.contentWidth+i.typicalHalfwidthCharacterWidth&&r.enabled&&"right"===r.side?e+o.verticalScrollbarWidth:e}var s=t.get(79)*i.typicalHalfwidthCharacterWidth,a=this._linesLayout.getWhitespaceMinWidth();return Math.max(e+s,a)},t.prototype.onMaxLineWidthChanged=function(e){var t=this._scrollable.getScrollDimensions();this._scrollable.setScrollDimensions(new GL(t.width,this._computeContentWidth(e),t.height,t.contentHeight)),this._updateHeight()},t.prototype.saveState=function(){var e=this._scrollable.getFutureScrollPosition(),t=e.scrollTop,n=this._linesLayout.getLineNumberAtOrAfterVerticalOffset(t);return{scrollTop:t,scrollTopWithoutViewZones:t-this._linesLayout.getWhitespaceAccumulatedHeightBeforeLineNumber(n),scrollLeft:e.scrollLeft}},t.prototype.changeWhitespace=function(e){return this._linesLayout.changeWhitespace(e)},t.prototype.getVerticalOffsetForLineNumber=function(e){return this._linesLayout.getVerticalOffsetForLineNumber(e)},t.prototype.isAfterLines=function(e){return this._linesLayout.isAfterLines(e)},t.prototype.getLineNumberAtVerticalOffset=function(e){return this._linesLayout.getLineNumberAtOrAfterVerticalOffset(e)},t.prototype.getWhitespaceAtVerticalOffset=function(e){return this._linesLayout.getWhitespaceAtVerticalOffset(e)},t.prototype.getLinesViewportData=function(){var e=this.getCurrentViewport();return this._linesLayout.getLinesViewportData(e.top,e.top+e.height)},t.prototype.getLinesViewportDataAtScrollTop=function(e){var t=this._scrollable.getScrollDimensions();return e+t.height>t.scrollHeight&&(e=t.scrollHeight-t.height),e<0&&(e=0),this._linesLayout.getLinesViewportData(e,e+t.height)},t.prototype.getWhitespaceViewportData=function(){var e=this.getCurrentViewport();return this._linesLayout.getWhitespaceViewportData(e.top,e.top+e.height)},t.prototype.getWhitespaces=function(){return this._linesLayout.getWhitespaces()},t.prototype.getContentWidth=function(){return this._scrollable.getScrollDimensions().contentWidth},t.prototype.getScrollWidth=function(){return this._scrollable.getScrollDimensions().scrollWidth},t.prototype.getContentHeight=function(){return this._scrollable.getScrollDimensions().contentHeight},t.prototype.getScrollHeight=function(){return this._scrollable.getScrollDimensions().scrollHeight},t.prototype.getCurrentScrollLeft=function(){return this._scrollable.getCurrentScrollPosition().scrollLeft},t.prototype.getCurrentScrollTop=function(){return this._scrollable.getCurrentScrollPosition().scrollTop},t.prototype.validateScrollPosition=function(e){return this._scrollable.validateScrollPosition(e)},t.prototype.setScrollPositionNow=function(e){this._scrollable.setScrollPositionNow(e)},t.prototype.setScrollPositionSmooth=function(e){this._scrollable.setScrollPositionSmooth(e)},t.prototype.deltaScrollNow=function(e,t){var n=this._scrollable.getCurrentScrollPosition();this._scrollable.setScrollPositionNow({scrollLeft:n.scrollLeft+e,scrollTop:n.scrollTop+t})},t}(He),XL=function(e,t){this.outputLineIndex=e,this.outputOffset=t},$L=function(){function e(e,t,n){this.breakOffsets=e,this.breakOffsetsVisibleColumn=t,this.wrappedTextIndentLength=n}return e.getInputOffsetOfOutputPosition=function(e,t,n){return 0===t?n:e[t-1]+n},e.getOutputPositionOfInputOffset=function(e,t){for(var n=0,i=e.length-1,o=0,r=0;n<=i;){var s=e[o=n+(i-n)/2|0];if(t<(r=o>0?e[o-1]:0))i=o-1;else{if(!(t>=s))break;n=o+1}}return new XL(o,t-r)},e}(),QL=function(){function e(e){this._lines=e}return e.prototype.convertViewPositionToModelPosition=function(e){return this._lines.convertViewPositionToModelPosition(e.lineNumber,e.column)},e.prototype.convertViewRangeToModelRange=function(e){return this._lines.convertViewRangeToModelRange(e)},e.prototype.validateViewPosition=function(e,t){return this._lines.validateViewPosition(e.lineNumber,e.column,t)},e.prototype.validateViewRange=function(e,t){return this._lines.validateViewRange(e,t)},e.prototype.convertModelPositionToViewPosition=function(e){return this._lines.convertModelPositionToViewPosition(e.lineNumber,e.column)},e.prototype.convertModelRangeToViewRange=function(e){return this._lines.convertModelRangeToViewRange(e)},e.prototype.modelPositionIsVisible=function(e){return this._lines.modelPositionIsVisible(e.lineNumber,e.column)},e}(),JL=function(){function e(e){this._counts=e,this._isValid=!1,this._validEndIndex=-1,this._modelToView=[],this._viewToModel=[]}return e.prototype._invalidate=function(e){this._isValid=!1,this._validEndIndex=Math.min(this._validEndIndex,e-1)},e.prototype._ensureValid=function(){if(!this._isValid){for(var e=this._validEndIndex+1,t=this._counts.length;e<t;e++){var n=this._counts[e],i=e>0?this._modelToView[e-1]:0;this._modelToView[e]=i+n;for(var o=0;o<n;o++)this._viewToModel[i+o]=e}this._modelToView.length=this._counts.length,this._viewToModel.length=this._modelToView[this._modelToView.length-1],this._isValid=!0,this._validEndIndex=this._counts.length-1}},e.prototype.changeValue=function(e,t){this._counts[e]!==t&&(this._counts[e]=t,this._invalidate(e))},e.prototype.removeValues=function(e,t){this._counts.splice(e,t),this._invalidate(e)},e.prototype.insertValues=function(e,t){this._counts=Vi(this._counts,e,t),this._invalidate(e)},e.prototype.getTotalValue=function(){return this._ensureValid(),this._viewToModel.length},e.prototype.getAccumulatedValue=function(e){return this._ensureValid(),this._modelToView[e]},e.prototype.getIndexOf=function(e){this._ensureValid();var t=this._viewToModel[e],n=t>0?this._modelToView[t-1]:0;return new Jl(t,e-n)},e}(),ex=function(){function e(e,t,n,i,o,r,s,a){this.model=e,this._validModelVersionId=-1,this._domLineBreaksComputerFactory=t,this._monospaceLineBreaksComputerFactory=n,this.fontInfo=i,this.tabSize=o,this.wrappingStrategy=r,this.wrappingColumn=s,this.wrappingIndent=a,this._constructLines(!0,null)}return e.prototype.dispose=function(){this.hiddenAreasIds=this.model.deltaDecorations(this.hiddenAreasIds,[])},e.prototype.createCoordinatesConverter=function(){return new QL(this)},e.prototype._constructLines=function(e,t){var n=this;this.lines=[],e&&(this.hiddenAreasIds=[]);for(var i=this.model.getLinesContent(),o=i.length,r=this.createLineBreaksComputer(),s=0;s<o;s++)r.addRequest(i[s],t?t[s]:null);var a=r.finalize(),u=[],l=this.hiddenAreasIds.map((function(e){return n.model.getDecorationRange(e)})).sort(wn.compareRangesUsingStarts),c=1,d=0,h=-1,p=h+1<l.length?d+1:o+2;for(s=0;s<o;s++){var f=s+1;f===p&&(c=l[++h].startLineNumber,d=l[h].endLineNumber,p=h+1<l.length?d+1:o+2);var g=f>=c&&f<=d,m=ax(a[s],!g);u[s]=m.getViewLineCount(),this.lines[s]=m}this._validModelVersionId=this.model.getVersionId(),this.prefixSumComputer=new JL(u)},e.prototype.getHiddenAreas=function(){var e=this;return this.hiddenAreasIds.map((function(t){return e.model.getDecorationRange(t)}))},e.prototype._reduceRanges=function(e){var t=this;if(0===e.length)return[];for(var n=e.map((function(e){return t.model.validateRange(e)})).sort(wn.compareRangesUsingStarts),i=[],o=n[0].startLineNumber,r=n[0].endLineNumber,s=1,a=n.length;s<a;s++){var u=n[s];u.startLineNumber>r+1?(i.push(new wn(o,1,r,1)),o=u.startLineNumber,r=u.endLineNumber):u.endLineNumber>r&&(r=u.endLineNumber)}return i.push(new wn(o,1,r,1)),i},e.prototype.setHiddenAreas=function(e){var t=this,n=this._reduceRanges(e),i=this.hiddenAreasIds.map((function(e){return t.model.getDecorationRange(e)})).sort(wn.compareRangesUsingStarts);if(n.length===i.length){for(var o=!1,r=0;r<n.length;r++)if(!n[r].equalsRange(i[r])){o=!0;break}if(!o)return!1}for(var s=[],a=0,u=n;a<u.length;a++){var l=u[a];s.push({range:l,options:kv.EMPTY})}this.hiddenAreasIds=this.model.deltaDecorations(this.hiddenAreasIds,s);var c=n,d=1,h=0,p=-1,f=p+1<c.length?h+1:this.lines.length+2,g=!1;for(r=0;r<this.lines.length;r++){var m=r+1;m===f&&(d=c[++p].startLineNumber,h=c[p].endLineNumber,f=p+1<c.length?h+1:this.lines.length+2);var v=!1;if(m>=d&&m<=h?this.lines[r].isVisible()&&(this.lines[r]=this.lines[r].setVisible(!1),v=!0):(g=!0,this.lines[r].isVisible()||(this.lines[r]=this.lines[r].setVisible(!0),v=!0)),v){var _=this.lines[r].getViewLineCount();this.prefixSumComputer.changeValue(r,_)}}return g||this.setHiddenAreas([]),!0},e.prototype.modelPositionIsVisible=function(e,t){return!(e<1||e>this.lines.length)&&this.lines[e-1].isVisible()},e.prototype.setTabSize=function(e){return this.tabSize!==e&&(this.tabSize=e,this._constructLines(!1,null),!0)},e.prototype.setWrappingSettings=function(e,t,n,i){var o=this.fontInfo.equals(e),r=this.wrappingStrategy===t,s=this.wrappingColumn===n,a=this.wrappingIndent===i;if(o&&r&&s&&a)return!1;var u=o&&r&&!s&&a;this.fontInfo=e,this.wrappingStrategy=t,this.wrappingColumn=n,this.wrappingIndent=i;var l=null;if(u){l=[];for(var c=0,d=this.lines.length;c<d;c++)l[c]=this.lines[c].getLineBreakData()}return this._constructLines(!1,l),!0},e.prototype.createLineBreaksComputer=function(){return("advanced"===this.wrappingStrategy?this._domLineBreaksComputerFactory:this._monospaceLineBreaksComputerFactory).createLineBreaksComputer(this.fontInfo,this.tabSize,this.wrappingColumn,this.wrappingIndent)},e.prototype.onModelFlushed=function(){this._constructLines(!0,null)},e.prototype.onModelLinesDeleted=function(e,t,n){if(e<=this._validModelVersionId)return null;var i=1===t?1:this.prefixSumComputer.getAccumulatedValue(t-2)+1,o=this.prefixSumComputer.getAccumulatedValue(n-1);return this.lines.splice(t-1,n-t+1),this.prefixSumComputer.removeValues(t-1,n-t+1),new ww(i,o)},e.prototype.onModelLinesInserted=function(e,t,n,i){if(e<=this._validModelVersionId)return null;for(var o=this.getHiddenAreas(),r=!1,s=new bn(t,1),a=0,u=o;a<u.length;a++){if(u[a].containsPosition(s)){r=!0;break}}for(var l=1===t?1:this.prefixSumComputer.getAccumulatedValue(t-2)+1,c=0,d=[],h=[],p=0,f=i.length;p<f;p++){var g=ax(i[p],!r);d.push(g);var m=g.getViewLineCount();c+=m,h[p]=m}return this.lines=this.lines.slice(0,t-1).concat(d).concat(this.lines.slice(t-1)),this.prefixSumComputer.insertValues(t-1,h),new Cw(l,l+c-1)},e.prototype.onModelLineChanged=function(e,t,n){if(e<=this._validModelVersionId)return[!1,null,null,null];var i=t-1,o=this.lines[i].getViewLineCount(),r=ax(n,this.lines[i].isVisible());this.lines[i]=r;var s=this.lines[i].getViewLineCount(),a=!1,u=0,l=-1,c=0,d=-1,h=0,p=-1;return o>s?(p=(h=(l=(u=1===t?1:this.prefixSumComputer.getAccumulatedValue(t-2)+1)+s-1)+1)+(o-s)-1,a=!0):o<s?(d=(c=(l=(u=1===t?1:this.prefixSumComputer.getAccumulatedValue(t-2)+1)+o-1)+1)+(s-o)-1,a=!0):l=(u=1===t?1:this.prefixSumComputer.getAccumulatedValue(t-2)+1)+s-1,this.prefixSumComputer.changeValue(i,s),[a,u<=l?new bw(u,l):null,c<=d?new Cw(c,d):null,h<=p?new ww(h,p):null]},e.prototype.acceptVersionId=function(e){this._validModelVersionId=e,1!==this.lines.length||this.lines[0].isVisible()||this.setHiddenAreas([])},e.prototype.getViewLineCount=function(){return this.prefixSumComputer.getTotalValue()},e.prototype._toValidViewLineNumber=function(e){if(e<1)return 1;var t=this.getViewLineCount();return e>t?t:0|e},e.prototype.getActiveIndentGuide=function(e,t,n){e=this._toValidViewLineNumber(e),t=this._toValidViewLineNumber(t),n=this._toValidViewLineNumber(n);var i=this.convertViewPositionToModelPosition(e,this.getViewLineMinColumn(e)),o=this.convertViewPositionToModelPosition(t,this.getViewLineMinColumn(t)),r=this.convertViewPositionToModelPosition(n,this.getViewLineMinColumn(n)),s=this.model.getActiveIndentGuide(i.lineNumber,o.lineNumber,r.lineNumber),a=this.convertModelPositionToViewPosition(s.startLineNumber,1),u=this.convertModelPositionToViewPosition(s.endLineNumber,this.model.getLineMaxColumn(s.endLineNumber));return{startLineNumber:a.lineNumber,endLineNumber:u.lineNumber,indent:s.indent}},e.prototype.getViewLinesIndentGuides=function(e,t){e=this._toValidViewLineNumber(e),t=this._toValidViewLineNumber(t);for(var n=this.convertViewPositionToModelPosition(e,this.getViewLineMinColumn(e)),i=this.convertViewPositionToModelPosition(t,this.getViewLineMaxColumn(t)),o=[],r=[],s=[],a=n.lineNumber-1,u=i.lineNumber-1,l=null,c=a;c<=u;c++){var d=this.lines[c];if(d.isVisible()){var h=d.getViewLineNumberOfModelPosition(0,c===a?n.column:1),p=d.getViewLineNumberOfModelPosition(0,this.model.getLineMaxColumn(c+1)),f=0;(w=p-h+1)>1&&1===d.getViewLineMinColumn(this.model,c+1,p)&&(f=0===h?1:2),r.push(w),s.push(f),null===l&&(l=new bn(c+1,0))}else null!==l&&(o=o.concat(this.model.getLinesIndentGuides(l.lineNumber,c)),l=null)}null!==l&&(o=o.concat(this.model.getLinesIndentGuides(l.lineNumber,i.lineNumber)),l=null);for(var g=t-e+1,m=new Array(g),v=0,_=0,y=o.length;_<y;_++){var b=o[_],w=Math.min(g-v,r[_]),C=void 0;C=2===(f=s[_])?0:1===f?1:w;for(var S=0;S<w;S++)S===C&&(b=0),m[v++]=b}return m},e.prototype.getViewLineContent=function(e){e=this._toValidViewLineNumber(e);var t=this.prefixSumComputer.getIndexOf(e-1),n=t.index,i=t.remainder;return this.lines[n].getViewLineContent(this.model,n+1,i)},e.prototype.getViewLineLength=function(e){e=this._toValidViewLineNumber(e);var t=this.prefixSumComputer.getIndexOf(e-1),n=t.index,i=t.remainder;return this.lines[n].getViewLineLength(this.model,n+1,i)},e.prototype.getViewLineMinColumn=function(e){e=this._toValidViewLineNumber(e);var t=this.prefixSumComputer.getIndexOf(e-1),n=t.index,i=t.remainder;return this.lines[n].getViewLineMinColumn(this.model,n+1,i)},e.prototype.getViewLineMaxColumn=function(e){e=this._toValidViewLineNumber(e);var t=this.prefixSumComputer.getIndexOf(e-1),n=t.index,i=t.remainder;return this.lines[n].getViewLineMaxColumn(this.model,n+1,i)},e.prototype.getViewLineData=function(e){e=this._toValidViewLineNumber(e);var t=this.prefixSumComputer.getIndexOf(e-1),n=t.index,i=t.remainder;return this.lines[n].getViewLineData(this.model,n+1,i)},e.prototype.getViewLinesData=function(e,t,n){e=this._toValidViewLineNumber(e),t=this._toValidViewLineNumber(t);for(var i=this.prefixSumComputer.getIndexOf(e-1),o=e,r=i.index,s=i.remainder,a=[],u=r,l=this.model.getLineCount();u<l;u++){var c=this.lines[u];if(c.isVisible()){var d=u===r?s:0,h=c.getViewLineCount()-d,p=!1;o+h>t&&(p=!0,h=t-o+1);var f=d+h;if(c.getViewLinesData(this.model,u+1,d,f,o-e,n,a),o+=h,p)break}}return a},e.prototype.validateViewPosition=function(e,t,n){e=this._toValidViewLineNumber(e);var i=this.prefixSumComputer.getIndexOf(e-1),o=i.index,r=i.remainder,s=this.lines[o],a=s.getViewLineMinColumn(this.model,o+1,r),u=s.getViewLineMaxColumn(this.model,o+1,r);t<a&&(t=a),t>u&&(t=u);var l=s.getModelColumnOfViewPosition(r,t);return this.model.validatePosition(new bn(o+1,l)).equals(n)?new bn(e,t):this.convertModelPositionToViewPosition(n.lineNumber,n.column)},e.prototype.validateViewRange=function(e,t){var n=this.validateViewPosition(e.startLineNumber,e.startColumn,t.getStartPosition()),i=this.validateViewPosition(e.endLineNumber,e.endColumn,t.getEndPosition());return new wn(n.lineNumber,n.column,i.lineNumber,i.column)},e.prototype.convertViewPositionToModelPosition=function(e,t){e=this._toValidViewLineNumber(e);var n=this.prefixSumComputer.getIndexOf(e-1),i=n.index,o=n.remainder,r=this.lines[i].getModelColumnOfViewPosition(o,t);return this.model.validatePosition(new bn(i+1,r))},e.prototype.convertViewRangeToModelRange=function(e){var t=this.convertViewPositionToModelPosition(e.startLineNumber,e.startColumn),n=this.convertViewPositionToModelPosition(e.endLineNumber,e.endColumn);return new wn(t.lineNumber,t.column,n.lineNumber,n.column)},e.prototype.convertModelPositionToViewPosition=function(e,t){for(var n=this.model.validatePosition(new bn(e,t)),i=n.lineNumber,o=n.column,r=i-1,s=!1;r>0&&!this.lines[r].isVisible();)r--,s=!0;if(0===r&&!this.lines[r].isVisible())return new bn(1,1);var a=1+(0===r?0:this.prefixSumComputer.getAccumulatedValue(r-1));return s?this.lines[r].getViewPositionOfModelPosition(a,this.model.getLineMaxColumn(r+1)):this.lines[i-1].getViewPositionOfModelPosition(a,o)},e.prototype.convertModelRangeToViewRange=function(e){var t=this.convertModelPositionToViewPosition(e.startLineNumber,e.startColumn),n=this.convertModelPositionToViewPosition(e.endLineNumber,e.endColumn);return e.startLineNumber===e.endLineNumber&&t.lineNumber!==n.lineNumber&&n.column===this.getViewLineMinColumn(n.lineNumber)?new wn(t.lineNumber,t.column,n.lineNumber-1,this.getViewLineMaxColumn(n.lineNumber-1)):new wn(t.lineNumber,t.column,n.lineNumber,n.column)},e.prototype._getViewLineNumberForModelPosition=function(e,t){var n=e-1;if(this.lines[n].isVisible()){var i=1+(0===n?0:this.prefixSumComputer.getAccumulatedValue(n-1));return this.lines[n].getViewLineNumberOfModelPosition(i,t)}for(;n>0&&!this.lines[n].isVisible();)n--;if(0===n&&!this.lines[n].isVisible())return 1;var o=1+(0===n?0:this.prefixSumComputer.getAccumulatedValue(n-1));return this.lines[n].getViewLineNumberOfModelPosition(o,this.model.getLineMaxColumn(n+1))},e.prototype.getAllOverviewRulerDecorations=function(e,t,n){for(var i=this.model.getOverviewRulerDecorations(e,t),o=new cx,r=0,s=i;r<s.length;r++){var a=s[r],u=a.options.overviewRuler,l=u?u.position:0;if(0!==l){var c=u.getColor(n),d=this._getViewLineNumberForModelPosition(a.range.startLineNumber,a.range.startColumn),h=this._getViewLineNumberForModelPosition(a.range.endLineNumber,a.range.endColumn);o.accept(c,d,h,l)}}return o.result},e.prototype.getDecorationsInRange=function(e,t,n){var i=this.convertViewPositionToModelPosition(e.startLineNumber,e.startColumn),o=this.convertViewPositionToModelPosition(e.endLineNumber,e.endColumn);if(o.lineNumber-i.lineNumber<=e.endLineNumber-e.startLineNumber)return this.model.getDecorationsInRange(new wn(i.lineNumber,1,o.lineNumber,o.column),t,n);for(var r=[],s=i.lineNumber-1,a=o.lineNumber-1,u=null,l=s;l<=a;l++){if(this.lines[l].isVisible())null===u&&(u=new bn(l+1,l===s?i.column:1));else if(null!==u){var c=this.model.getLineMaxColumn(l);r=r.concat(this.model.getDecorationsInRange(new wn(u.lineNumber,u.column,l,c),t,n)),u=null}}null!==u&&(r=r.concat(this.model.getDecorationsInRange(new wn(u.lineNumber,u.column,o.lineNumber,o.column),t,n)),u=null),r.sort((function(e,t){var n=wn.compareRangesUsingStarts(e.range,t.range);return 0===n?e.id<t.id?-1:e.id>t.id?1:0:n}));for(var d=[],h=0,p=null,f=0,g=r;f<g.length;f++){var m=g[f],v=m.id;p!==v&&(p=v,d[h++]=m)}return d},e}(),tx=function(){function e(){}return e.prototype.isVisible=function(){return!0},e.prototype.setVisible=function(e){return e?this:nx.INSTANCE},e.prototype.getLineBreakData=function(){return null},e.prototype.getViewLineCount=function(){return 1},e.prototype.getViewLineContent=function(e,t,n){return e.getLineContent(t)},e.prototype.getViewLineLength=function(e,t,n){return e.getLineLength(t)},e.prototype.getViewLineMinColumn=function(e,t,n){return e.getLineMinColumn(t)},e.prototype.getViewLineMaxColumn=function(e,t,n){return e.getLineMaxColumn(t)},e.prototype.getViewLineData=function(e,t,n){var i=e.getLineTokens(t),o=i.getLineContent();return new od(o,!1,1,o.length+1,0,i.inflate())},e.prototype.getViewLinesData=function(e,t,n,i,o,r,s){r[o]?s[o]=this.getViewLineData(e,t,0):s[o]=null},e.prototype.getModelColumnOfViewPosition=function(e,t){return t},e.prototype.getViewPositionOfModelPosition=function(e,t){return new bn(e,t)},e.prototype.getViewLineNumberOfModelPosition=function(e,t){return e},e.INSTANCE=new e,e}(),nx=function(){function e(){}return e.prototype.isVisible=function(){return!1},e.prototype.setVisible=function(e){return e?tx.INSTANCE:this},e.prototype.getLineBreakData=function(){return null},e.prototype.getViewLineCount=function(){return 0},e.prototype.getViewLineContent=function(e,t,n){throw new Error("Not supported")},e.prototype.getViewLineLength=function(e,t,n){throw new Error("Not supported")},e.prototype.getViewLineMinColumn=function(e,t,n){throw new Error("Not supported")},e.prototype.getViewLineMaxColumn=function(e,t,n){throw new Error("Not supported")},e.prototype.getViewLineData=function(e,t,n){throw new Error("Not supported")},e.prototype.getViewLinesData=function(e,t,n,i,o,r,s){throw new Error("Not supported")},e.prototype.getModelColumnOfViewPosition=function(e,t){throw new Error("Not supported")},e.prototype.getViewPositionOfModelPosition=function(e,t){throw new Error("Not supported")},e.prototype.getViewLineNumberOfModelPosition=function(e,t){throw new Error("Not supported")},e.INSTANCE=new e,e}(),ix=function(){function e(e,t){this._lineBreakData=e,this._isVisible=t}return e.prototype.isVisible=function(){return this._isVisible},e.prototype.setVisible=function(e){return this._isVisible=e,this},e.prototype.getLineBreakData=function(){return this._lineBreakData},e.prototype.getViewLineCount=function(){return this._isVisible?this._lineBreakData.breakOffsets.length:0},e.prototype.getInputStartOffsetOfOutputLineIndex=function(e){return $L.getInputOffsetOfOutputPosition(this._lineBreakData.breakOffsets,e,0)},e.prototype.getInputEndOffsetOfOutputLineIndex=function(e,t,n){return n+1===this._lineBreakData.breakOffsets.length?e.getLineMaxColumn(t)-1:$L.getInputOffsetOfOutputPosition(this._lineBreakData.breakOffsets,n+1,0)},e.prototype.getViewLineContent=function(e,t,n){if(!this._isVisible)throw new Error("Not supported");var i=this.getInputStartOffsetOfOutputLineIndex(n),o=this.getInputEndOffsetOfOutputLineIndex(e,t,n),r=e.getValueInRange({startLineNumber:t,startColumn:i+1,endLineNumber:t,endColumn:o+1});return n>0&&(r=rx(this._lineBreakData.wrappedTextIndentLength)+r),r},e.prototype.getViewLineLength=function(e,t,n){if(!this._isVisible)throw new Error("Not supported");var i=this.getInputStartOffsetOfOutputLineIndex(n),o=this.getInputEndOffsetOfOutputLineIndex(e,t,n)-i;return n>0&&(o=this._lineBreakData.wrappedTextIndentLength+o),o},e.prototype.getViewLineMinColumn=function(e,t,n){if(!this._isVisible)throw new Error("Not supported");return n>0?this._lineBreakData.wrappedTextIndentLength+1:1},e.prototype.getViewLineMaxColumn=function(e,t,n){if(!this._isVisible)throw new Error("Not supported");return this.getViewLineContent(e,t,n).length+1},e.prototype.getViewLineData=function(e,t,n){if(!this._isVisible)throw new Error("Not supported");var i=this.getInputStartOffsetOfOutputLineIndex(n),o=this.getInputEndOffsetOfOutputLineIndex(e,t,n),r=e.getValueInRange({startLineNumber:t,startColumn:i+1,endLineNumber:t,endColumn:o+1});n>0&&(r=rx(this._lineBreakData.wrappedTextIndentLength)+r);var s=n>0?this._lineBreakData.wrappedTextIndentLength+1:1,a=r.length+1,u=n+1<this.getViewLineCount(),l=0;n>0&&(l=this._lineBreakData.wrappedTextIndentLength);var c=e.getLineTokens(t),d=0===n?0:this._lineBreakData.breakOffsetsVisibleColumn[n-1];return new od(r,u,s,a,d,c.sliceAndInflate(i,o,l))},e.prototype.getViewLinesData=function(e,t,n,i,o,r,s){if(!this._isVisible)throw new Error("Not supported");for(var a=n;a<i;a++){var u=o+a-n;r[u]?s[u]=this.getViewLineData(e,t,a):s[u]=null}},e.prototype.getModelColumnOfViewPosition=function(e,t){if(!this._isVisible)throw new Error("Not supported");var n=t-1;return e>0&&(n<this._lineBreakData.wrappedTextIndentLength?n=0:n-=this._lineBreakData.wrappedTextIndentLength),$L.getInputOffsetOfOutputPosition(this._lineBreakData.breakOffsets,e,n)+1},e.prototype.getViewPositionOfModelPosition=function(e,t){if(!this._isVisible)throw new Error("Not supported");var n=$L.getOutputPositionOfInputOffset(this._lineBreakData.breakOffsets,t-1),i=n.outputLineIndex,o=n.outputOffset+1;return i>0&&(o+=this._lineBreakData.wrappedTextIndentLength),new bn(e+i,o)},e.prototype.getViewLineNumberOfModelPosition=function(e,t){if(!this._isVisible)throw new Error("Not supported");return e+$L.getOutputPositionOfInputOffset(this._lineBreakData.breakOffsets,t-1).outputLineIndex},e}(),ox=[""];function rx(e){if(e>=ox.length)for(var t=1;t<=e;t++)ox[t]=sx(t);return ox[e]}function sx(e){return new Array(e+1).join(" ")}function ax(e,t){return null===e?t?tx.INSTANCE:nx.INSTANCE:new ix(e,t)}var ux=function(){function e(e){this._lines=e}return e.prototype._validPosition=function(e){return this._lines.model.validatePosition(e)},e.prototype._validRange=function(e){return this._lines.model.validateRange(e)},e.prototype.convertViewPositionToModelPosition=function(e){return this._validPosition(e)},e.prototype.convertViewRangeToModelRange=function(e){return this._validRange(e)},e.prototype.validateViewPosition=function(e,t){return this._validPosition(t)},e.prototype.validateViewRange=function(e,t){return this._validRange(t)},e.prototype.convertModelPositionToViewPosition=function(e){return this._validPosition(e)},e.prototype.convertModelRangeToViewRange=function(e){return this._validRange(e)},e.prototype.modelPositionIsVisible=function(e){var t=this._lines.model.getLineCount();return!(e.lineNumber<1||e.lineNumber>t)},e}(),lx=function(){function e(e){this.model=e}return e.prototype.dispose=function(){},e.prototype.createCoordinatesConverter=function(){return new ux(this)},e.prototype.getHiddenAreas=function(){return[]},e.prototype.setHiddenAreas=function(e){return!1},e.prototype.setTabSize=function(e){return!1},e.prototype.setWrappingSettings=function(e,t,n,i){return!1},e.prototype.createLineBreaksComputer=function(){var e=[];return{addRequest:function(t,n){e.push(null)},finalize:function(){return e}}},e.prototype.onModelFlushed=function(){},e.prototype.onModelLinesDeleted=function(e,t,n){return new ww(t,n)},e.prototype.onModelLinesInserted=function(e,t,n,i){return new Cw(t,n)},e.prototype.onModelLineChanged=function(e,t,n){return[!1,new bw(t,t),null,null]},e.prototype.acceptVersionId=function(e){},e.prototype.getViewLineCount=function(){return this.model.getLineCount()},e.prototype.getActiveIndentGuide=function(e,t,n){return{startLineNumber:e,endLineNumber:e,indent:0}},e.prototype.getViewLinesIndentGuides=function(e,t){for(var n=t-e+1,i=new Array(n),o=0;o<n;o++)i[o]=0;return i},e.prototype.getViewLineContent=function(e){return this.model.getLineContent(e)},e.prototype.getViewLineLength=function(e){return this.model.getLineLength(e)},e.prototype.getViewLineMinColumn=function(e){return this.model.getLineMinColumn(e)},e.prototype.getViewLineMaxColumn=function(e){return this.model.getLineMaxColumn(e)},e.prototype.getViewLineData=function(e){var t=this.model.getLineTokens(e),n=t.getLineContent();return new od(n,!1,1,n.length+1,0,t.inflate())},e.prototype.getViewLinesData=function(e,t,n){var i=this.model.getLineCount();e=Math.min(Math.max(1,e),i),t=Math.min(Math.max(1,t),i);for(var o=[],r=e;r<=t;r++){var s=r-e;n[s]||(o[s]=null),o[s]=this.getViewLineData(r)}return o},e.prototype.getAllOverviewRulerDecorations=function(e,t,n){for(var i=this.model.getOverviewRulerDecorations(e,t),o=new cx,r=0,s=i;r<s.length;r++){var a=s[r],u=a.options.overviewRuler,l=u?u.position:0;if(0!==l){var c=u.getColor(n),d=a.range.startLineNumber,h=a.range.endLineNumber;o.accept(c,d,h,l)}}return o.result},e.prototype.getDecorationsInRange=function(e,t,n){return this.model.getDecorationsInRange(e,t,n)},e}(),cx=function(){function e(){this.result=Object.create(null)}return e.prototype.accept=function(e,t,n,i){var o=this.result[e];if(o){var r=o[o.length-3],s=o[o.length-1];if(r===i&&s+1>=t)return void(n>s&&(o[o.length-1]=n));o.push(i,t,n)}else this.result[e]=[i,t,n]},e}(),dx=function(){function e(e,t,n,i,o){this.editorId=e,this.model=t,this.configuration=n,this._linesCollection=i,this._coordinatesConverter=o,this._decorationsCache=Object.create(null),this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null}return e.prototype._clearCachedModelDecorationsResolver=function(){this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null},e.prototype.dispose=function(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()},e.prototype.reset=function(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()},e.prototype.onModelDecorationsChanged=function(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()},e.prototype.onLineMappingChanged=function(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()},e.prototype._getOrCreateViewModelDecoration=function(e){var t=e.id,n=this._decorationsCache[t];if(!n){var i=e.range,o=e.options,r=void 0;if(o.isWholeLine){var s=this._coordinatesConverter.convertModelPositionToViewPosition(new bn(i.startLineNumber,1)),a=this._coordinatesConverter.convertModelPositionToViewPosition(new bn(i.endLineNumber,this.model.getLineMaxColumn(i.endLineNumber)));r=new wn(s.lineNumber,s.column,a.lineNumber,a.column)}else r=this._coordinatesConverter.convertModelRangeToViewRange(i);n=new ad(r,o),this._decorationsCache[t]=n}return n},e.prototype.getDecorationsViewportData=function(e){var t=null!==this._cachedModelDecorationsResolver;return(t=t&&e.equalsRange(this._cachedModelDecorationsResolverViewRange))||(this._cachedModelDecorationsResolver=this._getDecorationsViewportData(e),this._cachedModelDecorationsResolverViewRange=e),this._cachedModelDecorationsResolver},e.prototype._getDecorationsViewportData=function(e){for(var t=this._linesCollection.getDecorationsInRange(e,this.editorId,ue(this.configuration.options)),n=e.startLineNumber,i=e.endLineNumber,o=[],r=0,s=[],a=n;a<=i;a++)s[a-n]=[];for(var u=0,l=t.length;u<l;u++){var c=t[u],d=c.options,h=this._getOrCreateViewModelDecoration(c),p=h.range;if(o[r++]=h,d.inlineClassName){var f=new sd(p,d.inlineClassName,d.inlineClassNameAffectsLetterSpacing?3:0),g=Math.max(n,p.startLineNumber),m=Math.min(i,p.endLineNumber);for(a=g;a<=m;a++)s[a-n].push(f)}if(d.beforeContentClassName&&n<=p.startLineNumber&&p.startLineNumber<=i){f=new sd(new wn(p.startLineNumber,p.startColumn,p.startLineNumber,p.startColumn),d.beforeContentClassName,1);s[p.startLineNumber-n].push(f)}if(d.afterContentClassName&&n<=p.endLineNumber&&p.endLineNumber<=i){f=new sd(new wn(p.endLineNumber,p.endColumn,p.endLineNumber,p.endColumn),d.afterContentClassName,2);s[p.endLineNumber-n].push(f)}}return{decorations:o,inlineDecorations:s}},e}(),hx=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),px=function(e){function t(t,n,i,o,r,s){var a=e.call(this)||this;if(a.editorId=t,a.configuration=n,a.model=i,a._tokenizeViewportSoon=a._register(new wi((function(){return a.tokenizeViewport()}),50)),a.hasFocus=!1,a.viewportStartLine=-1,a.viewportStartLineTrackedRange=null,a.viewportStartLineDelta=0,a.model.isTooLargeForTokenization())a.lines=new lx(a.model);else{var u=a.configuration.options,l=u.get(34),c=u.get(103),d=u.get(108),h=u.get(102);a.lines=new ex(a.model,o,r,l,a.model.getOptions().tabSize,c,d.wrappingColumn,h)}return a.coordinatesConverter=a.lines.createCoordinatesConverter(),a.viewLayout=a._register(new YL(a.configuration,a.getLineCount(),s)),a._register(a.viewLayout.onDidScroll((function(e){e.scrollTopChanged&&a._tokenizeViewportSoon.schedule();try{a._beginEmit().emit(new Lw(e))}finally{a._endEmit()}}))),a._register(a.viewLayout.onDidContentSizeChange((function(e){try{a._beginEmit().emit(new pw(e))}finally{a._endEmit()}}))),a.decorations=new dx(a.editorId,a.model,a.configuration,a.lines,a.coordinatesConverter),a._registerModelEvents(),a._register(a.configuration.onDidChange((function(e){try{var t=a._beginEmit();a._onConfigurationChanged(t,e)}finally{a._endEmit()}}))),a._register(PS.getInstance().onDidChange((function(){try{a._beginEmit().emit(new Nw)}finally{a._endEmit()}}))),a}return hx(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this.decorations.dispose(),this.lines.dispose(),this.invalidateMinimapColorCache(),this.viewportStartLineTrackedRange=this.model._setTrackedRange(this.viewportStartLineTrackedRange,null,1)},t.prototype.tokenizeViewport=function(){var e=this.viewLayout.getLinesViewportData(),t=this.coordinatesConverter.convertViewPositionToModelPosition(new bn(e.startLineNumber,1)),n=this.coordinatesConverter.convertViewPositionToModelPosition(new bn(e.endLineNumber,1));this.model.tokenizeViewport(t.lineNumber,n.lineNumber)},t.prototype.setHasFocus=function(e){this.hasFocus=e},t.prototype._onConfigurationChanged=function(e,t){var n=null;if(-1!==this.viewportStartLine){var i=new bn(this.viewportStartLine,this.getLineMinColumn(this.viewportStartLine));n=this.coordinatesConverter.convertViewPositionToModelPosition(i)}var o=!1,r=this.configuration.options,s=r.get(34),a=r.get(103),u=r.get(108),l=r.get(102);if(this.lines.setWrappingSettings(s,a,u.wrappingColumn,l)&&(e.emit(new mw),e.emit(new yw),e.emit(new gw),this.decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount()),0!==this.viewLayout.getCurrentScrollTop()&&(o=!0)),t.hasChanged(68)&&(this.decorations.reset(),e.emit(new gw)),e.emit(new hw(t)),this.viewLayout.onConfigurationChanged(t),o&&n){var c=this.coordinatesConverter.convertModelPositionToViewPosition(n),d=this.viewLayout.getVerticalOffsetForLineNumber(c.lineNumber);this.viewLayout.setScrollPositionNow({scrollTop:d+this.viewportStartLineDelta})}},t.prototype._registerModelEvents=function(){var e=this;this._register(this.model.onDidChangeRawContentFast((function(t){try{for(var n=e._beginEmit(),i=!1,o=!1,r=t.changes,s=t.versionId,a=e.lines.createLineBreaksComputer(),u=0,l=r;u<l.length;u++){switch((v=l[u]).changeType){case 4:for(var c=0,d=v.detail;c<d.length;c++){var h=d[c];a.addRequest(h,null)}break;case 2:a.addRequest(v.detail,null)}}for(var p=a.finalize(),f=0,g=0,m=r;g<m.length;g++){var v;switch((v=m[g]).changeType){case 1:e.lines.onModelFlushed(),n.emit(new mw),e.decorations.reset(),e.viewLayout.onFlushed(e.getLineCount()),i=!0;break;case 3:null!==(L=e.lines.onModelLinesDeleted(s,v.fromLineNumber,v.toLineNumber))&&(n.emit(L),e.viewLayout.onLinesDeleted(L.fromLineNumber,L.toLineNumber)),i=!0;break;case 4:var _=p.slice(f,f+v.detail.length);f+=v.detail.length,null!==(S=e.lines.onModelLinesInserted(s,v.fromLineNumber,v.toLineNumber,_))&&(n.emit(S),e.viewLayout.onLinesInserted(S.fromLineNumber,S.toLineNumber)),i=!0;break;case 2:var y=p[f];f++;var b=e.lines.onModelLineChanged(s,v.lineNumber,y),w=b[0],C=b[1],S=b[2],L=b[3];o=w,C&&n.emit(C),S&&(n.emit(S),e.viewLayout.onLinesInserted(S.fromLineNumber,S.toLineNumber)),L&&(n.emit(L),e.viewLayout.onLinesDeleted(L.fromLineNumber,L.toLineNumber))}}e.lines.acceptVersionId(s),e.viewLayout.onHeightMaybeChanged(),!i&&o&&(n.emit(new yw),n.emit(new gw),e.decorations.onLineMappingChanged())}finally{e._endEmit()}if(e.viewportStartLine=-1,e.configuration.setMaxLineNumber(e.model.getLineCount()),!e.hasFocus&&e.model.getAttachedEditorCount()>=2&&e.viewportStartLineTrackedRange){var x=e.model._getTrackedRange(e.viewportStartLineTrackedRange);if(x){var D=e.coordinatesConverter.convertModelPositionToViewPosition(x.getStartPosition()),N=e.viewLayout.getVerticalOffsetForLineNumber(D.lineNumber);e.viewLayout.setScrollPositionNow({scrollTop:N+e.viewportStartLineDelta})}}}))),this._register(this.model.onDidChangeTokens((function(t){for(var n=[],i=0,o=t.ranges.length;i<o;i++){var r=t.ranges[i],s=e.coordinatesConverter.convertModelPositionToViewPosition(new bn(r.fromLineNumber,1)).lineNumber,a=e.coordinatesConverter.convertModelPositionToViewPosition(new bn(r.toLineNumber,e.model.getLineMaxColumn(r.toLineNumber))).lineNumber;n[i]={fromLineNumber:s,toLineNumber:a}}try{e._beginEmit().emit(new Dw(n))}finally{e._endEmit()}t.tokenizationSupportChanged&&e._tokenizeViewportSoon.schedule()}))),this._register(this.model.onDidChangeLanguageConfiguration((function(t){try{e._beginEmit().emit(new _w)}finally{e._endEmit()}}))),this._register(this.model.onDidChangeOptions((function(t){if(e.lines.setTabSize(e.model.getOptions().tabSize)){e.decorations.onLineMappingChanged(),e.viewLayout.onFlushed(e.getLineCount());try{var n=e._beginEmit();n.emit(new mw),n.emit(new yw),n.emit(new gw)}finally{e._endEmit()}}}))),this._register(this.model.onDidChangeDecorations((function(t){e.decorations.onModelDecorationsChanged();try{e._beginEmit().emit(new gw)}finally{e._endEmit()}})))},t.prototype.setHiddenAreas=function(e){try{var t=this._beginEmit();this.lines.setHiddenAreas(e)&&(t.emit(new mw),t.emit(new yw),t.emit(new gw),this.decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount()),this.viewLayout.onHeightMaybeChanged())}finally{this._endEmit()}},t.prototype.getVisibleRanges=function(){var e=this.getCompletelyVisibleViewRange(),t=this.coordinatesConverter.convertViewRangeToModelRange(e),n=this.lines.getHiddenAreas();if(0===n.length)return[t];for(var i=[],o=0,r=t.startLineNumber,s=t.startColumn,a=t.endLineNumber,u=t.endColumn,l=0,c=n.length;l<c;l++){var d=n[l].startLineNumber,h=n[l].endLineNumber;h<r||(d>a||(r<d&&(i[o++]=new wn(r,s,d-1,this.model.getLineMaxColumn(d-1))),r=h+1,s=1))}return(r<a||r===a&&s<u)&&(i[o++]=new wn(r,s,a,u)),i},t.prototype.getCompletelyVisibleViewRange=function(){var e=this.viewLayout.getLinesViewportData(),t=e.completelyVisibleStartLineNumber,n=e.completelyVisibleEndLineNumber;return new wn(t,this.getLineMinColumn(t),n,this.getLineMaxColumn(n))},t.prototype.getCompletelyVisibleViewRangeAtScrollTop=function(e){var t=this.viewLayout.getLinesViewportDataAtScrollTop(e),n=t.completelyVisibleStartLineNumber,i=t.completelyVisibleEndLineNumber;return new wn(n,this.getLineMinColumn(n),i,this.getLineMaxColumn(i))},t.prototype.saveState=function(){var e=this.viewLayout.saveState(),t=e.scrollTop,n=this.viewLayout.getLineNumberAtVerticalOffset(t),i=this.coordinatesConverter.convertViewPositionToModelPosition(new bn(n,this.getLineMinColumn(n))),o=this.viewLayout.getVerticalOffsetForLineNumber(n)-t;return{scrollLeft:e.scrollLeft,firstPosition:i,firstPositionDeltaTop:o}},t.prototype.reduceRestoreState=function(e){if(void 0===e.firstPosition)return this._reduceRestoreStateCompatibility(e);var t=this.model.validatePosition(e.firstPosition),n=this.coordinatesConverter.convertModelPositionToViewPosition(t),i=this.viewLayout.getVerticalOffsetForLineNumber(n.lineNumber)-e.firstPositionDeltaTop;return{scrollLeft:e.scrollLeft,scrollTop:i}},t.prototype._reduceRestoreStateCompatibility=function(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTopWithoutViewZones}},t.prototype.getTabSize=function(){return this.model.getOptions().tabSize},t.prototype.getOptions=function(){return this.model.getOptions()},t.prototype.getLineCount=function(){return this.lines.getViewLineCount()},t.prototype.setViewport=function(e,t,n){this.viewportStartLine=e;var i=this.coordinatesConverter.convertViewPositionToModelPosition(new bn(e,this.getLineMinColumn(e)));this.viewportStartLineTrackedRange=this.model._setTrackedRange(this.viewportStartLineTrackedRange,new wn(i.lineNumber,i.column,i.lineNumber,i.column),1);var o=this.viewLayout.getVerticalOffsetForLineNumber(e),r=this.viewLayout.getCurrentScrollTop();this.viewportStartLineDelta=r-o},t.prototype.getActiveIndentGuide=function(e,t,n){return this.lines.getActiveIndentGuide(e,t,n)},t.prototype.getLinesIndentGuides=function(e,t){return this.lines.getViewLinesIndentGuides(e,t)},t.prototype.getLineContent=function(e){return this.lines.getViewLineContent(e)},t.prototype.getLineLength=function(e){return this.lines.getViewLineLength(e)},t.prototype.getLineMinColumn=function(e){return this.lines.getViewLineMinColumn(e)},t.prototype.getLineMaxColumn=function(e){return this.lines.getViewLineMaxColumn(e)},t.prototype.getLineFirstNonWhitespaceColumn=function(e){var t=wr(this.getLineContent(e));return-1===t?0:t+1},t.prototype.getLineLastNonWhitespaceColumn=function(e){var t=Sr(this.getLineContent(e));return-1===t?0:t+2},t.prototype.getDecorationsInViewport=function(e){return this.decorations.getDecorationsViewportData(e).decorations},t.prototype.getViewLineRenderingData=function(e,t){var n=this.model.mightContainRTL(),i=this.model.mightContainNonBasicASCII(),o=this.getTabSize(),r=this.lines.getViewLineData(t),s=this.decorations.getDecorationsViewportData(e).inlineDecorations[t-e.startLineNumber];return new rd(r.minColumn,r.maxColumn,r.content,r.continuesWithWrappedLine,n,i,r.tokens,s,o,r.startVisibleColumn)},t.prototype.getViewLineData=function(e){return this.lines.getViewLineData(e)},t.prototype.getMinimapLinesRenderingData=function(e,t,n){var i=this.lines.getViewLinesData(e,t,n);return new id(this.getTabSize(),i)},t.prototype.getAllOverviewRulerDecorations=function(e){return this.lines.getAllOverviewRulerDecorations(this.editorId,ue(this.configuration.options),e)},t.prototype.invalidateOverviewRulerColorCache=function(){for(var e=0,t=this.model.getOverviewRulerDecorations();e<t.length;e++){var n=t[e].options.overviewRuler;n&&n.invalidateCachedColor()}},t.prototype.invalidateMinimapColorCache=function(){for(var e=0,t=this.model.getAllDecorations();e<t.length;e++){var n=t[e].options.minimap;n&&n.invalidateCachedColor()}},t.prototype.getValueInRange=function(e,t){var n=this.coordinatesConverter.convertViewRangeToModelRange(e);return this.model.getValueInRange(n,t)},t.prototype.getModelLineMaxColumn=function(e){return this.model.getLineMaxColumn(e)},t.prototype.validateModelPosition=function(e){return this.model.validatePosition(e)},t.prototype.validateModelRange=function(e){return this.model.validateRange(e)},t.prototype.deduceModelPositionRelativeToViewPosition=function(e,t,n){var i=this.coordinatesConverter.convertViewPositionToModelPosition(e);2===this.model.getEOL().length&&(t<0?t-=n:t+=n);var o=this.model.getOffsetAt(i)+t;return this.model.getPositionAt(o)},t.prototype.getEOL=function(){return this.model.getEOL()},t.prototype.getPlainTextToCopy=function(e,t,n){var i=n?"\r\n":this.model.getEOL();(e=e.slice(0)).sort(wn.compareRangesUsingStarts);for(var o=!1,r=!1,s=0,a=e;s<a.length;s++){a[s].isEmpty()?o=!0:r=!0}if(!r){if(!t)return"";for(var u=e.map((function(e){return e.startLineNumber})),l="",c=0;c<u.length;c++)c>0&&u[c-1]===u[c]||(l+=this.model.getLineContent(u[c])+i);return l}if(o&&t){for(var d=[],h=0,p=0,f=e;p<f.length;p++){var g=(y=f[p]).startLineNumber;y.isEmpty()?g!==h&&d.push(this.model.getLineContent(g)):d.push(this.model.getValueInRange(y,n?2:0)),h=g}return 1===d.length?d[0]:d}for(var m=[],v=0,_=e;v<_.length;v++){var y;(y=_[v]).isEmpty()||m.push(this.model.getValueInRange(y,n?2:0))}return 1===m.length?m[0]:m},t.prototype.getRichTextToCopy=function(e,t){var n=this.model.getLanguageIdentifier();if(1===n.id)return null;if(1!==e.length)return null;var i=e[0];if(i.isEmpty()){if(!t)return null;var o=i.startLineNumber;i=new wn(o,this.model.getLineMinColumn(o),o,this.model.getLineMaxColumn(o))}var r=this.configuration.options.get(34),s=this._getColorMap(),a=r.fontFamily===ge.fontFamily?r.fontFamily:"'"+r.fontFamily+"', "+ge.fontFamily;return{mode:n.language,html:'<div style="color: '+s[1]+";background-color: "+s[2]+";font-family: "+a+";font-weight: "+r.fontWeight+";font-size: "+r.fontSize+"px;line-height: "+r.lineHeight+'px;white-space: pre;">'+this._getHTMLToCopy(i,s)+"</div>"}},t.prototype._getHTMLToCopy=function(e,t){for(var n=e.startLineNumber,i=e.startColumn,o=e.endLineNumber,r=e.endColumn,s=this.getTabSize(),a="",u=n;u<=o;u++){var l=this.model.getLineTokens(u),c=l.getLineContent(),d=u===n?i-1:0,h=u===o?r-1:c.length;a+=""===c?"<br>":zL(c,l.inflate(),t,d,h,s,v)}return a},t.prototype._getColorMap=function(){var e=Yu.getColorMap(),t=["#000000"];if(e)for(var n=1,i=e.length;n<i;n++)t[n]=mv.Format.CSS.formatHex(e[n]);return t},t}(Ew),fx=function(){function e(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this._entries=new Map;for(var n=0,i=e;n<i.length;n++){var o=i[n],r=o[0],s=o[1];this.set(r,s)}}return e.prototype.set=function(e,t){var n=this._entries.get(e);return this._entries.set(e,t),n},e.prototype.has=function(e){return this._entries.has(e)},e.prototype.get=function(e){return this._entries.get(e)},e}(),gx=Mn("accessibilityService"),mx=new Kh("accessibilityModeEnabled",!1),vx=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),_x=function(e){function t(t,n){for(var i=e.call(this,0)||this,o=0;o<t.length;o++)i.set(t.charCodeAt(o),1);for(o=0;o<n.length;o++)i.set(n.charCodeAt(o),2);return i}return vx(t,e),t.prototype.get=function(e){return e>=0&&e<256?this._asciiMap[e]:e>=12352&&e<=12543||e>=13312&&e<=19903||e>=19968&&e<=40959?3:this._map.get(e)||this._defaultValue},t}(nc),yx=[],bx=[],wx=function(){function e(e,t){this.classifier=new _x(e,t)}return e.create=function(t){return new e(t.get(99),t.get(98))},e.prototype.createLineBreaksComputer=function(e,t,n,i){var o=this;t|=0,n=+n;var r=[],s=[];return{addRequest:function(e,t){r.push(e),s.push(t)},finalize:function(){for(var a=e.typicalFullwidthCharacterWidth/e.typicalHalfwidthCharacterWidth,u=[],l=0,c=r.length;l<c;l++){var d=s[l];u[l]=d?Cx(o.classifier,d,r[l],t,n,a,i):Sx(o.classifier,r[l],t,n,a,i)}return yx.length=0,bx.length=0,u}}},e}();function Cx(e,t,n,i,o,r,s){if(-1===o)return null;var a=n.length;if(a<=1)return null;var u=t.breakOffsets,l=t.breakOffsetsVisibleColumn,c=Nx(n,i,o,r,s),d=o-c,h=yx,p=bx,f=0,g=o,m=u.length,v=0;if(v>=0)for(var _=Math.abs(l[v]-g);v+1<m;){if((W=Math.abs(l[v+1]-g))>=_)break;_=W,v++}for(;v<m;){var y=v<0?0:u[v],b=v<0?0:l[v],w=0,C=0,S=0,L=0;if(b<=g){for(var x=b,D=n.charCodeAt(y-1),N=e.get(D),k=!0,E=y;E<a;E++){var I=E,O=void 0,M=void 0;if(Tr(T=n.charCodeAt(E))?(E++,O=0,M=2):(O=e.get(T),M=Lx(T,x,i,r)),Dx(D,N,T,O)&&(w=I,C=x),(x+=M)>g){S=I,L=x-M,x-C>d&&(w=0),k=!1;break}D=T,N=O}if(k){f>0&&(h[f]=u[u.length-1],p[f]=l[u.length-1],f++);break}}if(0===w){x=b;var T=n.charCodeAt(y),P=(O=e.get(T),!1);for(E=y-1;E>=0;E--){I=E+1;if(9===(D=n.charCodeAt(E))){P=!0;break}N=void 0;var R=void 0;if(Pr(D)?(E--,N=0,R=2):(N=e.get(D),R=jr(D)?r:1),x<=g){if(0===S&&(S=I,L=x),x<=g-d)break;if(Dx(D,N,T,O)){w=I,C=x;break}}x-=R,T=D,O=N}if(0!==w){var A=d-(L-C);if(A<=i){var F=n.charCodeAt(S);M=void 0;A-(M=Tr(F)?2:Lx(F,L,i,r))<0&&(w=0)}}if(P){v--;continue}}for(0===w&&(w=S,C=L),h[f]=w,p[f]=C,f++,g=C+d;v<0||v<m&&l[v]<C;)v++;for(_=Math.abs(l[v]-g);v+1<m;){var W;if((W=Math.abs(l[v+1]-g))>=_)break;_=W,v++}}return 0===f?null:(h.length=f,p.length=f,yx=t.breakOffsets,bx=t.breakOffsetsVisibleColumn,t.breakOffsets=h,t.breakOffsetsVisibleColumn=p,t.wrappedTextIndentLength=c,t)}function Sx(e,t,n,i,o,r){if(-1===i)return null;var s=t.length;if(s<=1)return null;var a=Nx(t,n,i,o,r),u=i-a,l=[],c=[],d=0,h=0,p=0,f=i,g=t.charCodeAt(0),m=e.get(g),v=Lx(g,0,n,o),_=1;Tr(g)&&(v+=1,g=t.charCodeAt(1),m=e.get(g),_++);for(var y=_;y<s;y++){var b=y,w=t.charCodeAt(y),C=void 0,S=void 0;Tr(w)?(y++,C=0,S=2):(C=e.get(w),S=Lx(w,v,n,o)),Dx(g,m,w,C)&&(h=b,p=v),(v+=S)>f&&((0===h||v-p>u)&&(h=b,p=v-S),l[d]=h,c[d]=p,d++,f=p+u,h=0),g=w,m=C}return 0===d?null:(l[d]=s,c[d]=v,new $L(l,c,a))}function Lx(e,t,n,i){return 9===e?n-t%n:jr(e)?i:1}function xx(e,t){return t-e%t}function Dx(e,t,n,i){return 32!==n&&(2===t||3===t&&2!==i||1===i||3===i&&1!==t)}function Nx(e,t,n,i,o){var r=0;if(0!==o){var s=wr(e);if(-1!==s){for(var a=0;a<s;a++){r+=9===e.charCodeAt(a)?xx(r,t):1}var u=3===o?2:2===o?1:0;for(a=0;a<u;a++){r+=xx(r,t)}r+i>n&&(r=0)}}return r}var kx=function(){function e(){}return e.create=function(){return new e},e.prototype.createLineBreaksComputer=function(e,t,n,i){t|=0,n=+n;var o=[];return{addRequest:function(e,t){o.push(e)},finalize:function(){return function(e,t,n,i,o){if(-1===i){for(var r=[],s=0,a=e.length;s<a;s++)r[s]=null;return r}var u=Math.round(i*t.typicalHalfwidthCharacterWidth);2!==o&&3!==o||(o=1);var l=document.createElement("div");af.applyFontInfoSlow(l,t);var c=Fc(1e4),d=[],h=[],p=[],f=[],g=[];for(s=0;s<e.length;s++){var m=e[s],v=0,_=0,y=u;if(0!==o)if(-1===(v=wr(m)))v=0;else{for(var b=0;b<v;b++){var w=9===m.charCodeAt(b)?n-_%n:1;_+=w}var C=Math.ceil(t.spaceWidth*_);C+t.typicalFullwidthCharacterWidth>u?(v=0,_=0):y=u-C}var S=m.substr(v),L=Ex(S,_,n,y,c);d[s]=v,h[s]=_,p[s]=S,f[s]=L[0],g[s]=L[1]}l.innerHTML=c.build(),l.style.position="absolute",l.style.top="10000",l.style.wordWrap="break-word",document.body.appendChild(l);var x=document.createRange(),D=Array.prototype.slice.call(l.children,0),N=[];for(s=0;s<e.length;s++){var k=D[s],E=Ix(x,k,p[s],f[s]);if(null!==E){v=d[s],_=h[s];var I=g[s],O=[],M=0;for(a=E.length;M<a;M++)O[M]=I[E[M]];if(0!==v)for(M=0,a=E.length;M<a;M++)E[M]+=v;N[s]=new $L(E,O,_)}else N[s]=null}return document.body.removeChild(l),N}(o,e,t,n,i)}}},e}();function Ex(e,t,n,i,o){o.appendASCIIString('<div style="width:'),o.appendASCIIString(String(i)),o.appendASCIIString('px;">');for(var r=e.length,s=t,a=0,u=[],l=[],c=0<r?e.charCodeAt(0):0,d=0;d<r;d++){u[d]=a,l[d]=s;var h=c;c=d+1<r?e.charCodeAt(d+1):0;var p=1,f=1;switch(h){case 9:f=p=n-s%n;for(var g=1;g<=p;g++)g<p?o.write1(160):o.appendASCII(32);break;case 32:32===c?o.write1(160):o.appendASCII(32);break;case 60:o.appendASCIIString("<");break;case 62:o.appendASCIIString(">");break;case 38:o.appendASCIIString("&");break;case 0:o.appendASCIIString("�");break;case 65279:case 8232:o.write1(65533);break;default:jr(h)&&f++,o.write1(h)}a+=p,s+=f}return u[e.length]=a,l[e.length]=s,o.appendASCIIString("</div>"),[u,l]}function Ix(e,t,n,i){if(n.length<=1)return null;var o=[];return function e(t,n,i,o,r,s,a,u){if(o===s)return;if(r=r||Ox(t,n,i[o],i[o+1]),a=a||Ox(t,n,i[s],i[s+1]),Math.abs(r[0].top-a[0].top)<=.1)return;if(o+1===s)return void u.push(s);var l=o+(s-o)/2|0,c=Ox(t,n,i[l],i[l+1]);e(t,n,i,o,r,l,c,u),e(t,n,i,l,c,s,a,u)}(e,t.firstChild,i,0,null,n.length-1,null,o),0===o.length?null:(o.push(n.length),o)}function Ox(e,t,n,i){return e.setStart(t,n),e.setEnd(t,i),e.getClientRects()}var Mx=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Tx=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Px=function(e,t){return function(n,i){t(n,i,e)}},Rx=0,Ax=function(){function e(e,t,n,i,o,r){this.model=e,this.viewModel=t,this.cursor=n,this.view=i,this.hasRealView=o,this.listenersToRemove=r}return e.prototype.dispose=function(){Ae(this.listenersToRemove),this.model.onBeforeDetached(),this.hasRealView&&this.view.dispose(),this.cursor.dispose(),this.viewModel.dispose()},e}(),Fx=function(e){function t(t,n,i,o,r,s,a,u,l,c){var d=e.call(this)||this;d._onDidDispose=d._register(new nt),d.onDidDispose=d._onDidDispose.event,d._onDidChangeModelContent=d._register(new nt),d.onDidChangeModelContent=d._onDidChangeModelContent.event,d._onDidChangeModelLanguage=d._register(new nt),d.onDidChangeModelLanguage=d._onDidChangeModelLanguage.event,d._onDidChangeModelLanguageConfiguration=d._register(new nt),d.onDidChangeModelLanguageConfiguration=d._onDidChangeModelLanguageConfiguration.event,d._onDidChangeModelOptions=d._register(new nt),d.onDidChangeModelOptions=d._onDidChangeModelOptions.event,d._onDidChangeModelDecorations=d._register(new nt),d.onDidChangeModelDecorations=d._onDidChangeModelDecorations.event,d._onDidChangeConfiguration=d._register(new nt),d.onDidChangeConfiguration=d._onDidChangeConfiguration.event,d._onDidChangeModel=d._register(new nt),d.onDidChangeModel=d._onDidChangeModel.event,d._onDidChangeCursorPosition=d._register(new nt),d.onDidChangeCursorPosition=d._onDidChangeCursorPosition.event,d._onDidChangeCursorSelection=d._register(new nt),d.onDidChangeCursorSelection=d._onDidChangeCursorSelection.event,d._onDidAttemptReadOnlyEdit=d._register(new nt),d.onDidAttemptReadOnlyEdit=d._onDidAttemptReadOnlyEdit.event,d._onDidLayoutChange=d._register(new nt),d.onDidLayoutChange=d._onDidLayoutChange.event,d._editorTextFocus=d._register(new Wx),d.onDidFocusEditorText=d._editorTextFocus.onDidChangeToTrue,d.onDidBlurEditorText=d._editorTextFocus.onDidChangeToFalse,d._editorWidgetFocus=d._register(new Wx),d.onDidFocusEditorWidget=d._editorWidgetFocus.onDidChangeToTrue,d.onDidBlurEditorWidget=d._editorWidgetFocus.onDidChangeToFalse,d._onWillType=d._register(new nt),d.onWillType=d._onWillType.event,d._onDidType=d._register(new nt),d.onDidType=d._onDidType.event,d._onDidCompositionStart=d._register(new nt),d.onDidCompositionStart=d._onDidCompositionStart.event,d._onDidCompositionEnd=d._register(new nt),d.onDidCompositionEnd=d._onDidCompositionEnd.event,d._onDidPaste=d._register(new nt),d.onDidPaste=d._onDidPaste.event,d._onMouseUp=d._register(new nt),d.onMouseUp=d._onMouseUp.event,d._onMouseDown=d._register(new nt),d.onMouseDown=d._onMouseDown.event,d._onMouseDrag=d._register(new nt),d.onMouseDrag=d._onMouseDrag.event,d._onMouseDrop=d._register(new nt),d.onMouseDrop=d._onMouseDrop.event,d._onContextMenu=d._register(new nt),d.onContextMenu=d._onContextMenu.event,d._onMouseMove=d._register(new nt),d.onMouseMove=d._onMouseMove.event,d._onMouseLeave=d._register(new nt),d.onMouseLeave=d._onMouseLeave.event,d._onMouseWheel=d._register(new nt),d.onMouseWheel=d._onMouseWheel.event,d._onKeyUp=d._register(new nt),d.onKeyUp=d._onKeyUp.event,d._onKeyDown=d._register(new nt),d.onKeyDown=d._onKeyDown.event,d._onDidContentSizeChange=d._register(new nt),d.onDidContentSizeChange=d._onDidContentSizeChange.event,d._onDidScrollChange=d._register(new nt),d.onDidScrollChange=d._onDidScrollChange.event,d._onDidChangeViewZones=d._register(new nt),d.onDidChangeViewZones=d._onDidChangeViewZones.event,d._domElement=t,d._id=++Rx,d._decorationTypeKeysToIds={},d._decorationTypeSubtypes={},d.isSimpleWidget=i.isSimpleWidget||!1,d._telemetryData=i.telemetryData,n=n||{},d._configuration=d._register(d._createConfiguration(n,c)),d._register(d._configuration.onDidChange((function(e){d._onDidChangeConfiguration.fire(e);var t=d._configuration.options;if(e.hasChanged(107)){var n=t.get(107);d._onDidLayoutChange.fire(n)}}))),d._contextKeyService=d._register(a.createScoped(d._domElement)),d._notificationService=l,d._codeEditorService=r,d._commandService=s,d._themeService=u,d._register(new Vx(d,d._contextKeyService)),d._register(new Bx(d,d._contextKeyService)),d._instantiationService=o.createChild(new fx([qh,d._contextKeyService])),d._modelData=null,d._contributions={},d._actions={},d._focusTracker=new Hx(t),d._focusTracker.onChange((function(){d._editorWidgetFocus.setValue(d._focusTracker.hasFocus())})),d._contentWidgets={},d._overlayWidgets={};for(var h=0,p=Array.isArray(i.contributions)?i.contributions:_f.getEditorContributions();h<p.length;h++){var f=p[h];try{var g=d._instantiationService.createInstance(f.ctor,d);d._contributions[f.id]=g}catch(e){De(e)}}return _f.getEditorActions().forEach((function(e){var t=new VL(e.id,e.label,e.alias,Xs(e.precondition),(function(){return d._instantiationService.invokeFunction((function(t){return Promise.resolve(e.runEditorCommand(t,d,null))}))}),d._contextKeyService);d._actions[t.id]=t})),d._codeEditorService.addCodeEditor(d),d}return Mx(t,e),t.prototype._createConfiguration=function(e,t){return new af(this.isSimpleWidget,e,this._domElement,t)},t.prototype.getId=function(){return this.getEditorType()+":"+this._id},t.prototype.getEditorType=function(){return Ha.ICodeEditor},t.prototype.dispose=function(){this._codeEditorService.removeCodeEditor(this),this._focusTracker.dispose();for(var t=Object.keys(this._contributions),n=0,i=t.length;n<i;n++){var o=t[n];this._contributions[o].dispose()}this._removeDecorationTypes(),this._postDetachModelCleanup(this._detachModel()),this._onDidDispose.fire(),e.prototype.dispose.call(this)},t.prototype.invokeWithinContext=function(e){return this._instantiationService.invokeFunction(e)},t.prototype.updateOptions=function(e){this._configuration.updateOptions(e)},t.prototype.getOptions=function(){return this._configuration.options},t.prototype.getOption=function(e){return this._configuration.options.get(e)},t.prototype.getRawOptions=function(){return this._configuration.getRawOptions()},t.prototype.getValue=function(e){if(void 0===e&&(e=null),!this._modelData)return"";var t=!(!e||!e.preserveBOM),n=0;return e&&e.lineEnding&&"\n"===e.lineEnding?n=1:e&&e.lineEnding&&"\r\n"===e.lineEnding&&(n=2),this._modelData.model.getValue(n,t)},t.prototype.setValue=function(e){this._modelData&&this._modelData.model.setValue(e)},t.prototype.getModel=function(){return this._modelData?this._modelData.model:null},t.prototype.setModel=function(e){void 0===e&&(e=null);var t=e;if(!(null===this._modelData&&null===t||this._modelData&&this._modelData.model===t)){var n=this.hasTextFocus(),i=this._detachModel();this._attachModel(t),n&&this.hasModel()&&this.focus();var o={oldModelUrl:i?i.uri:null,newModelUrl:t?t.uri:null};this._removeDecorationTypes(),this._onDidChangeModel.fire(o),this._postDetachModelCleanup(i)}},t.prototype._removeDecorationTypes=function(){if(this._decorationTypeKeysToIds={},this._decorationTypeSubtypes){for(var e in this._decorationTypeSubtypes){var t=this._decorationTypeSubtypes[e];for(var n in t)this._removeDecorationType(e+"-"+n)}this._decorationTypeSubtypes={}}},t.prototype.getVisibleRanges=function(){return this._modelData?this._modelData.viewModel.getVisibleRanges():[]},t.prototype.getWhitespaces=function(){return this._modelData?this._modelData.viewModel.viewLayout.getWhitespaces():[]},t._getVerticalOffsetForPosition=function(e,t,n){var i=e.model.validatePosition({lineNumber:t,column:n}),o=e.viewModel.coordinatesConverter.convertModelPositionToViewPosition(i);return e.viewModel.viewLayout.getVerticalOffsetForLineNumber(o.lineNumber)},t.prototype.getTopForLineNumber=function(e){return this._modelData?t._getVerticalOffsetForPosition(this._modelData,e,1):-1},t.prototype.getTopForPosition=function(e,n){return this._modelData?t._getVerticalOffsetForPosition(this._modelData,e,n):-1},t.prototype.setHiddenAreas=function(e){this._modelData&&this._modelData.viewModel.setHiddenAreas(e.map((function(e){return wn.lift(e)})))},t.prototype.getVisibleColumnFromPosition=function(e){if(!this._modelData)return e.column;var t=this._modelData.model.validatePosition(e),n=this._modelData.model.getOptions().tabSize;return Uv.visibleColumnFromColumn(this._modelData.model.getLineContent(t.lineNumber),t.column,n)+1},t.prototype.getPosition=function(){return this._modelData?this._modelData.cursor.getPosition():null},t.prototype.setPosition=function(e){if(this._modelData){if(!bn.isIPosition(e))throw new Error("Invalid arguments");this._modelData.cursor.setSelections("api",[{selectionStartLineNumber:e.lineNumber,selectionStartColumn:e.column,positionLineNumber:e.lineNumber,positionColumn:e.column}])}},t.prototype._sendRevealRange=function(e,t,n,i){if(this._modelData){if(!wn.isIRange(e))throw new Error("Invalid arguments");var o=this._modelData.model.validateRange(e),r=this._modelData.viewModel.coordinatesConverter.convertModelRangeToViewRange(o);this._modelData.cursor.emitCursorRevealRange("api",r,t,n,i)}},t.prototype.revealLine=function(e,t){void 0===t&&(t=0),this._revealLine(e,0,t)},t.prototype.revealLineInCenter=function(e,t){void 0===t&&(t=0),this._revealLine(e,1,t)},t.prototype.revealLineInCenterIfOutsideViewport=function(e,t){void 0===t&&(t=0),this._revealLine(e,2,t)},t.prototype._revealLine=function(e,t,n){if("number"!=typeof e)throw new Error("Invalid arguments");this._sendRevealRange(new wn(e,1,e,1),t,!1,n)},t.prototype.revealPosition=function(e,t){void 0===t&&(t=0),this._revealPosition(e,0,!0,t)},t.prototype.revealPositionInCenter=function(e,t){void 0===t&&(t=0),this._revealPosition(e,1,!0,t)},t.prototype.revealPositionInCenterIfOutsideViewport=function(e,t){void 0===t&&(t=0),this._revealPosition(e,2,!0,t)},t.prototype._revealPosition=function(e,t,n,i){if(!bn.isIPosition(e))throw new Error("Invalid arguments");this._sendRevealRange(new wn(e.lineNumber,e.column,e.lineNumber,e.column),t,n,i)},t.prototype.getSelection=function(){return this._modelData?this._modelData.cursor.getSelection():null},t.prototype.getSelections=function(){return this._modelData?this._modelData.cursor.getSelections():null},t.prototype.setSelection=function(e){var t=Sn.isISelection(e),n=wn.isIRange(e);if(!t&&!n)throw new Error("Invalid arguments");if(t)this._setSelectionImpl(e);else if(n){var i={selectionStartLineNumber:e.startLineNumber,selectionStartColumn:e.startColumn,positionLineNumber:e.endLineNumber,positionColumn:e.endColumn};this._setSelectionImpl(i)}},t.prototype._setSelectionImpl=function(e){if(this._modelData){var t=new Sn(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn);this._modelData.cursor.setSelections("api",[t])}},t.prototype.revealLines=function(e,t,n){void 0===n&&(n=0),this._revealLines(e,t,0,n)},t.prototype.revealLinesInCenter=function(e,t,n){void 0===n&&(n=0),this._revealLines(e,t,1,n)},t.prototype.revealLinesInCenterIfOutsideViewport=function(e,t,n){void 0===n&&(n=0),this._revealLines(e,t,2,n)},t.prototype._revealLines=function(e,t,n,i){if("number"!=typeof e||"number"!=typeof t)throw new Error("Invalid arguments");this._sendRevealRange(new wn(e,1,t,1),n,!1,i)},t.prototype.revealRange=function(e,t,n,i){void 0===t&&(t=0),void 0===n&&(n=!1),void 0===i&&(i=!0),this._revealRange(e,n?1:0,i,t)},t.prototype.revealRangeInCenter=function(e,t){void 0===t&&(t=0),this._revealRange(e,1,!0,t)},t.prototype.revealRangeInCenterIfOutsideViewport=function(e,t){void 0===t&&(t=0),this._revealRange(e,2,!0,t)},t.prototype.revealRangeAtTop=function(e,t){void 0===t&&(t=0),this._revealRange(e,3,!0,t)},t.prototype._revealRange=function(e,t,n,i){if(!wn.isIRange(e))throw new Error("Invalid arguments");this._sendRevealRange(wn.lift(e),t,n,i)},t.prototype.setSelections=function(e,t){if(void 0===t&&(t="api"),this._modelData){if(!e||0===e.length)throw new Error("Invalid arguments");for(var n=0,i=e.length;n<i;n++)if(!Sn.isISelection(e[n]))throw new Error("Invalid arguments");this._modelData.cursor.setSelections(t,e)}},t.prototype.getContentWidth=function(){return this._modelData?this._modelData.viewModel.viewLayout.getContentWidth():-1},t.prototype.getScrollWidth=function(){return this._modelData?this._modelData.viewModel.viewLayout.getScrollWidth():-1},t.prototype.getScrollLeft=function(){return this._modelData?this._modelData.viewModel.viewLayout.getCurrentScrollLeft():-1},t.prototype.getContentHeight=function(){return this._modelData?this._modelData.viewModel.viewLayout.getContentHeight():-1},t.prototype.getScrollHeight=function(){return this._modelData?this._modelData.viewModel.viewLayout.getScrollHeight():-1},t.prototype.getScrollTop=function(){return this._modelData?this._modelData.viewModel.viewLayout.getCurrentScrollTop():-1},t.prototype.setScrollLeft=function(e){if(this._modelData){if("number"!=typeof e)throw new Error("Invalid arguments");this._modelData.viewModel.viewLayout.setScrollPositionNow({scrollLeft:e})}},t.prototype.setScrollTop=function(e){if(this._modelData){if("number"!=typeof e)throw new Error("Invalid arguments");this._modelData.viewModel.viewLayout.setScrollPositionNow({scrollTop:e})}},t.prototype.setScrollPosition=function(e){this._modelData&&this._modelData.viewModel.viewLayout.setScrollPositionNow(e)},t.prototype.saveViewState=function(){if(!this._modelData)return null;for(var e={},t=0,n=Object.keys(this._contributions);t<n.length;t++){var i=n[t],o=this._contributions[i];"function"==typeof o.saveViewState&&(e[i]=o.saveViewState())}return{cursorState:this._modelData.cursor.saveState(),viewState:this._modelData.viewModel.saveState(),contributionsState:e}},t.prototype.restoreViewState=function(e){if(this._modelData&&this._modelData.hasRealView){var t=e;if(t&&t.cursorState&&t.viewState){var n=t.cursorState;Array.isArray(n)?this._modelData.cursor.restoreState(n):this._modelData.cursor.restoreState([n]);for(var i=t.contributionsState||{},o=Object.keys(this._contributions),r=0,s=o.length;r<s;r++){var a=o[r],u=this._contributions[a];"function"==typeof u.restoreViewState&&u.restoreViewState(i[a])}var l=this._modelData.viewModel.reduceRestoreState(t.viewState);this._modelData.view.restoreState(l)}}},t.prototype.getContribution=function(e){return this._contributions[e]||null},t.prototype.getActions=function(){for(var e=[],t=Object.keys(this._actions),n=0,i=t.length;n<i;n++){var o=t[n];e.push(this._actions[o])}return e},t.prototype.getSupportedActions=function(){var e=this.getActions();return e=e.filter((function(e){return e.isSupported()}))},t.prototype.getAction=function(e){return this._actions[e]||null},t.prototype.trigger=function(e,t,n){if(n=n||{},t===za.Type){if(!this._modelData||"string"!=typeof n.text||0===n.text.length)return;return"keyboard"===e&&this._onWillType.fire(n.text),this._modelData.cursor.trigger(e,t,n),void("keyboard"===e&&this._onDidType.fire(n.text))}if(t!==za.Paste){var i=this.getAction(t);i?Promise.resolve(i.run()).then(void 0,De):this._modelData&&(this._triggerEditorCommand(e,t,n)||(this._modelData.cursor.trigger(e,t,n),t===za.CompositionStart&&this._onDidCompositionStart.fire(),t===za.CompositionEnd&&this._onDidCompositionEnd.fire()))}else{if(!this._modelData||"string"!=typeof n.text||0===n.text.length)return;var o=this._modelData.cursor.getSelection().getStartPosition();this._modelData.cursor.trigger(e,t,n);var r=this._modelData.cursor.getSelection().getStartPosition();"keyboard"===e&&this._onDidPaste.fire({range:new wn(o.lineNumber,o.column,r.lineNumber,r.column),mode:n.mode})}},t.prototype._triggerEditorCommand=function(e,t,n){var i=this,o=_f.getEditorCommand(t);return!!o&&((n=n||{}).source=e,this._instantiationService.invokeFunction((function(e){Promise.resolve(o.runEditorCommand(e,i,n)).then(void 0,De)})),!0)},t.prototype._getCursors=function(){return this._modelData?this._modelData.cursor:null},t.prototype.pushUndoStop=function(){return!!this._modelData&&(!this._configuration.options.get(68)&&(this._modelData.model.pushStackElement(),!0))},t.prototype.executeEdits=function(e,t,n){return!!this._modelData&&(!this._configuration.options.get(68)&&(i=n?Array.isArray(n)?function(){return n}:n:function(){return null},this._modelData.cursor.executeEdits(e,t,i),!0));var i},t.prototype.executeCommand=function(e,t){this._modelData&&this._modelData.cursor.trigger(e,za.ExecuteCommand,t)},t.prototype.executeCommands=function(e,t){this._modelData&&this._modelData.cursor.trigger(e,za.ExecuteCommands,t)},t.prototype.changeDecorations=function(e){return this._modelData?this._modelData.model.changeDecorations(e,this._id):null},t.prototype.getLineDecorations=function(e){return this._modelData?this._modelData.model.getLineDecorations(e,this._id,ue(this._configuration.options)):null},t.prototype.deltaDecorations=function(e,t){return this._modelData?0===e.length&&0===t.length?e:this._modelData.model.deltaDecorations(e,t,this._id):[]},t.prototype.removeDecorations=function(e){var t=this._decorationTypeKeysToIds[e];t&&this.deltaDecorations(t,[]),this._decorationTypeKeysToIds.hasOwnProperty(e)&&delete this._decorationTypeKeysToIds[e],this._decorationTypeSubtypes.hasOwnProperty(e)&&delete this._decorationTypeSubtypes[e]},t.prototype.getLayoutInfo=function(){return this._configuration.options.get(107)},t.prototype.createOverviewRuler=function(e){return this._modelData&&this._modelData.hasRealView?this._modelData.view.createOverviewRuler(e):null},t.prototype.getContainerDomNode=function(){return this._domElement},t.prototype.getDomNode=function(){return this._modelData&&this._modelData.hasRealView?this._modelData.view.domNode.domNode:null},t.prototype.delegateVerticalScrollbarMouseDown=function(e){this._modelData&&this._modelData.hasRealView&&this._modelData.view.delegateVerticalScrollbarMouseDown(e)},t.prototype.layout=function(e){this._configuration.observeReferenceElement(e),this.render()},t.prototype.focus=function(){this._modelData&&this._modelData.hasRealView&&this._modelData.view.focus()},t.prototype.hasTextFocus=function(){return!(!this._modelData||!this._modelData.hasRealView)&&this._modelData.view.isFocused()},t.prototype.hasWidgetFocus=function(){return this._focusTracker&&this._focusTracker.hasFocus()},t.prototype.addContentWidget=function(e){var t={widget:e,position:e.getPosition()};this._contentWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting a content widget with the same id."),this._contentWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addContentWidget(t)},t.prototype.layoutContentWidget=function(e){var t=e.getId();if(this._contentWidgets.hasOwnProperty(t)){var n=this._contentWidgets[t];n.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutContentWidget(n)}},t.prototype.removeContentWidget=function(e){var t=e.getId();if(this._contentWidgets.hasOwnProperty(t)){var n=this._contentWidgets[t];delete this._contentWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeContentWidget(n)}},t.prototype.addOverlayWidget=function(e){var t={widget:e,position:e.getPosition()};this._overlayWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting an overlay widget with the same id."),this._overlayWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addOverlayWidget(t)},t.prototype.layoutOverlayWidget=function(e){var t=e.getId();if(this._overlayWidgets.hasOwnProperty(t)){var n=this._overlayWidgets[t];n.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutOverlayWidget(n)}},t.prototype.removeOverlayWidget=function(e){var t=e.getId();if(this._overlayWidgets.hasOwnProperty(t)){var n=this._overlayWidgets[t];delete this._overlayWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeOverlayWidget(n)}},t.prototype.changeViewZones=function(e){this._modelData&&this._modelData.hasRealView&&(this._modelData.view.change(e)&&this._onDidChangeViewZones.fire())},t.prototype.getTargetAtClientPoint=function(e,t){return this._modelData&&this._modelData.hasRealView?this._modelData.view.getTargetAtClientPoint(e,t):null},t.prototype.getScrolledVisiblePosition=function(e){if(!this._modelData||!this._modelData.hasRealView)return null;var n=this._modelData.model.validatePosition(e),i=this._configuration.options,o=i.get(107);return{top:t._getVerticalOffsetForPosition(this._modelData,n.lineNumber,n.column)-this.getScrollTop(),left:this._modelData.view.getOffsetForColumn(n.lineNumber,n.column)+o.glyphMarginWidth+o.lineNumbersWidth+o.decorationsWidth-this.getScrollLeft(),height:i.get(49)}},t.prototype.getOffsetForColumn=function(e,t){return this._modelData&&this._modelData.hasRealView?this._modelData.view.getOffsetForColumn(e,t):-1},t.prototype.render=function(e){void 0===e&&(e=!1),this._modelData&&this._modelData.hasRealView&&this._modelData.view.render(!0,e)},t.prototype.setAriaOptions=function(e){this._modelData&&this._modelData.hasRealView&&this._modelData.view.setAriaOptions(e)},t.prototype.applyFontInfo=function(e){af.applyFontInfoSlow(e,this._configuration.options.get(34))},t.prototype._attachModel=function(e){var t=this;if(e){var n=[];this._domElement.setAttribute("data-mode-id",e.getLanguageIdentifier().language),this._configuration.setIsDominatedByLongLines(e.isDominatedByLongLines()),this._configuration.setMaxLineNumber(e.getLineCount()),e.onBeforeAttached();var i=new px(this._id,this._configuration,e,kx.create(),wx.create(this._configuration.options),(function(e){return mo(e)}));n.push(e.onDidChangeDecorations((function(e){return t._onDidChangeModelDecorations.fire(e)}))),n.push(e.onDidChangeLanguage((function(n){t._domElement.setAttribute("data-mode-id",e.getLanguageIdentifier().language),t._onDidChangeModelLanguage.fire(n)}))),n.push(e.onDidChangeLanguageConfiguration((function(e){return t._onDidChangeModelLanguageConfiguration.fire(e)}))),n.push(e.onDidChangeContent((function(e){return t._onDidChangeModelContent.fire(e)}))),n.push(e.onDidChangeOptions((function(e){return t._onDidChangeModelOptions.fire(e)}))),n.push(e.onWillDispose((function(){return t.setModel(null)})));var o=new FL(this._configuration,e,i);n.push(o.onDidReachMaxCursorCount((function(){t._notificationService.warn(r("cursors.maximum","The number of cursors has been limited to {0}.",FL.MAX_CURSOR_COUNT))}))),n.push(o.onDidAttemptReadOnlyEdit((function(){t._onDidAttemptReadOnlyEdit.fire(void 0)}))),n.push(o.onDidChange((function(e){for(var n=[],i=0,o=e.selections.length;i<o;i++)n[i]=e.selections[i].getPosition();var r={position:n[0],secondaryPositions:n.slice(1),reason:e.reason,source:e.source};t._onDidChangeCursorPosition.fire(r);var s={selection:e.selections[0],secondarySelections:e.selections.slice(1),modelVersionId:e.modelVersionId,oldSelections:e.oldSelections,oldModelVersionId:e.oldModelVersionId,source:e.source,reason:e.reason};t._onDidChangeCursorSelection.fire(s)})));var s=this._createView(i,o),a=s[0],u=s[1];if(u){this._domElement.appendChild(a.domNode.domNode);for(var l=Object.keys(this._contentWidgets),c=0,d=l.length;c<d;c++){var h=l[c];a.addContentWidget(this._contentWidgets[h])}for(c=0,d=(l=Object.keys(this._overlayWidgets)).length;c<d;c++){h=l[c];a.addOverlayWidget(this._overlayWidgets[h])}a.render(!1,!0),a.domNode.domNode.setAttribute("data-uri",e.uri.toString())}this._modelData=new Ax(e,i,o,a,u,n)}else this._modelData=null},t.prototype._createView=function(e,t){var n,i=this;n=this.isSimpleWidget?{executeEditorCommand:function(e,n){e.runCoreEditorCommand(t,n)},paste:function(e,t,n,o,r){i.trigger(e,za.Paste,{text:t,pasteOnNewLine:n,multicursorText:o,mode:r})},type:function(e,t){i.trigger(e,za.Type,{text:t})},replacePreviousChar:function(e,t,n){i.trigger(e,za.ReplacePreviousChar,{text:t,replaceCharCnt:n})},compositionStart:function(e){i.trigger(e,za.CompositionStart,void 0)},compositionEnd:function(e){i.trigger(e,za.CompositionEnd,void 0)},cut:function(e){i.trigger(e,za.Cut,void 0)}}:{executeEditorCommand:function(e,n){e.runCoreEditorCommand(t,n)},paste:function(e,t,n,o,r){i._commandService.executeCommand(za.Paste,{text:t,pasteOnNewLine:n,multicursorText:o,mode:r})},type:function(e,t){i._commandService.executeCommand(za.Type,{text:t})},replacePreviousChar:function(e,t,n){i._commandService.executeCommand(za.ReplacePreviousChar,{text:t,replaceCharCnt:n})},compositionStart:function(e){i._commandService.executeCommand(za.CompositionStart,{})},compositionEnd:function(e){i._commandService.executeCommand(za.CompositionEnd,{})},cut:function(e){i._commandService.executeCommand(za.Cut,{})}};var o=new SC(e);return o.onDidContentSizeChange=function(e){return i._onDidContentSizeChange.fire(e)},o.onDidScroll=function(e){return i._onDidScrollChange.fire(e)},o.onDidGainFocus=function(){return i._editorTextFocus.setValue(!0)},o.onDidLoseFocus=function(){return i._editorTextFocus.setValue(!1)},o.onContextMenu=function(e){return i._onContextMenu.fire(e)},o.onMouseDown=function(e){return i._onMouseDown.fire(e)},o.onMouseUp=function(e){return i._onMouseUp.fire(e)},o.onMouseDrag=function(e){return i._onMouseDrag.fire(e)},o.onMouseDrop=function(e){return i._onMouseDrop.fire(e)},o.onKeyUp=function(e){return i._onKeyUp.fire(e)},o.onMouseMove=function(e){return i._onMouseMove.fire(e)},o.onMouseLeave=function(e){return i._onMouseLeave.fire(e)},o.onMouseWheel=function(e){return i._onMouseWheel.fire(e)},o.onKeyDown=function(e){return i._onKeyDown.fire(e)},[new EL(n,this._configuration,this._themeService,e,t,o),!0]},t.prototype._postDetachModelCleanup=function(e){e&&e.removeAllDecorationsWithOwnerId(this._id)},t.prototype._detachModel=function(){if(!this._modelData)return null;var e=this._modelData.model,t=this._modelData.hasRealView?this._modelData.view.domNode.domNode:null;return this._modelData.dispose(),this._modelData=null,this._domElement.removeAttribute("data-mode-id"),t&&this._domElement.removeChild(t),e},t.prototype._removeDecorationType=function(e){this._codeEditorService.removeDecorationType(e)},t.prototype.hasModel=function(){return null!==this._modelData},t=Tx([Px(3,In),Px(4,Pn),Px(5,la),Px(6,qh),Px(7,fg),Px(8,ap),Px(9,gx)],t)}(He),Wx=function(e){function t(){var t=e.call(this)||this;return t._onDidChangeToTrue=t._register(new nt),t.onDidChangeToTrue=t._onDidChangeToTrue.event,t._onDidChangeToFalse=t._register(new nt),t.onDidChangeToFalse=t._onDidChangeToFalse.event,t._value=0,t}return Mx(t,e),t.prototype.setValue=function(e){var t=e?2:1;this._value!==t&&(this._value=t,2===this._value?this._onDidChangeToTrue.fire():1===this._value&&this._onDidChangeToFalse.fire())},t}(He),Vx=function(e){function t(t,n){var i=e.call(this)||this;return i._editor=t,n.createKey("editorId",t.getId()),i._editorSimpleInput=eC.editorSimpleInput.bindTo(n),i._editorFocus=eC.focus.bindTo(n),i._textInputFocus=eC.textInputFocus.bindTo(n),i._editorTextFocus=eC.editorTextFocus.bindTo(n),i._editorTabMovesFocus=eC.tabMovesFocus.bindTo(n),i._editorReadonly=eC.readOnly.bindTo(n),i._hasMultipleSelections=eC.hasMultipleSelections.bindTo(n),i._hasNonEmptySelection=eC.hasNonEmptySelection.bindTo(n),i._canUndo=eC.canUndo.bindTo(n),i._canRedo=eC.canRedo.bindTo(n),i._register(i._editor.onDidChangeConfiguration((function(){return i._updateFromConfig()}))),i._register(i._editor.onDidChangeCursorSelection((function(){return i._updateFromSelection()}))),i._register(i._editor.onDidFocusEditorWidget((function(){return i._updateFromFocus()}))),i._register(i._editor.onDidBlurEditorWidget((function(){return i._updateFromFocus()}))),i._register(i._editor.onDidFocusEditorText((function(){return i._updateFromFocus()}))),i._register(i._editor.onDidBlurEditorText((function(){return i._updateFromFocus()}))),i._register(i._editor.onDidChangeModel((function(){return i._updateFromModel()}))),i._register(i._editor.onDidChangeConfiguration((function(){return i._updateFromModel()}))),i._updateFromConfig(),i._updateFromSelection(),i._updateFromFocus(),i._updateFromModel(),i._editorSimpleInput.set(i._editor.isSimpleWidget),i}return Mx(t,e),t.prototype._updateFromConfig=function(){var e=this._editor.getOptions();this._editorTabMovesFocus.set(e.get(106)),this._editorReadonly.set(e.get(68))},t.prototype._updateFromSelection=function(){var e=this._editor.getSelections();e?(this._hasMultipleSelections.set(e.length>1),this._hasNonEmptySelection.set(e.some((function(e){return!e.isEmpty()})))):(this._hasMultipleSelections.reset(),this._hasNonEmptySelection.reset())},t.prototype._updateFromFocus=function(){this._editorFocus.set(this._editor.hasWidgetFocus()&&!this._editor.isSimpleWidget),this._editorTextFocus.set(this._editor.hasTextFocus()&&!this._editor.isSimpleWidget),this._textInputFocus.set(this._editor.hasTextFocus())},t.prototype._updateFromModel=function(){var e=this._editor.getModel();this._canUndo.set(Boolean(e&&e.canUndo())),this._canRedo.set(Boolean(e&&e.canRedo()))},t}(He),Bx=function(e){function t(t,n){var i=e.call(this)||this;i._editor=t,i._contextKeyService=n,i._langId=eC.languageId.bindTo(n),i._hasCompletionItemProvider=eC.hasCompletionItemProvider.bindTo(n),i._hasCodeActionsProvider=eC.hasCodeActionsProvider.bindTo(n),i._hasCodeLensProvider=eC.hasCodeLensProvider.bindTo(n),i._hasDefinitionProvider=eC.hasDefinitionProvider.bindTo(n),i._hasDeclarationProvider=eC.hasDeclarationProvider.bindTo(n),i._hasImplementationProvider=eC.hasImplementationProvider.bindTo(n),i._hasTypeDefinitionProvider=eC.hasTypeDefinitionProvider.bindTo(n),i._hasHoverProvider=eC.hasHoverProvider.bindTo(n),i._hasDocumentHighlightProvider=eC.hasDocumentHighlightProvider.bindTo(n),i._hasDocumentSymbolProvider=eC.hasDocumentSymbolProvider.bindTo(n),i._hasReferenceProvider=eC.hasReferenceProvider.bindTo(n),i._hasRenameProvider=eC.hasRenameProvider.bindTo(n),i._hasSignatureHelpProvider=eC.hasSignatureHelpProvider.bindTo(n),i._hasDocumentFormattingProvider=eC.hasDocumentFormattingProvider.bindTo(n),i._hasDocumentSelectionFormattingProvider=eC.hasDocumentSelectionFormattingProvider.bindTo(n),i._hasMultipleDocumentFormattingProvider=eC.hasMultipleDocumentFormattingProvider.bindTo(n),i._hasMultipleDocumentSelectionFormattingProvider=eC.hasMultipleDocumentSelectionFormattingProvider.bindTo(n),i._isInWalkThrough=eC.isInEmbeddedEditor.bindTo(n);var o=function(){return i._update()};return i._register(t.onDidChangeModel(o)),i._register(t.onDidChangeModelLanguage(o)),i._register(Eu.onDidChange(o)),i._register(Vu.onDidChange(o)),i._register(Wu.onDidChange(o)),i._register(Pu.onDidChange(o)),i._register(Ru.onDidChange(o)),i._register(Au.onDidChange(o)),i._register(Fu.onDidChange(o)),i._register(Ou.onDidChange(o)),i._register(Tu.onDidChange(o)),i._register(Mu.onDidChange(o)),i._register(Nu.onDidChange(o)),i._register(ku.onDidChange(o)),i._register(Bu.onDidChange(o)),i._register(Hu.onDidChange(o)),i._register(Iu.onDidChange(o)),o(),i}return Mx(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.reset=function(){var e=this;this._contextKeyService.bufferChangeEvents((function(){e._langId.reset(),e._hasCompletionItemProvider.reset(),e._hasCodeActionsProvider.reset(),e._hasCodeLensProvider.reset(),e._hasDefinitionProvider.reset(),e._hasDeclarationProvider.reset(),e._hasImplementationProvider.reset(),e._hasTypeDefinitionProvider.reset(),e._hasHoverProvider.reset(),e._hasDocumentHighlightProvider.reset(),e._hasDocumentSymbolProvider.reset(),e._hasReferenceProvider.reset(),e._hasRenameProvider.reset(),e._hasDocumentFormattingProvider.reset(),e._hasDocumentSelectionFormattingProvider.reset(),e._hasSignatureHelpProvider.reset(),e._isInWalkThrough.reset()}))},t.prototype._update=function(){var e=this,t=this._editor.getModel();t?this._contextKeyService.bufferChangeEvents((function(){e._langId.set(t.getLanguageIdentifier().language),e._hasCompletionItemProvider.set(Eu.has(t)),e._hasCodeActionsProvider.set(Vu.has(t)),e._hasCodeLensProvider.set(Wu.has(t)),e._hasDefinitionProvider.set(Pu.has(t)),e._hasDeclarationProvider.set(Ru.has(t)),e._hasImplementationProvider.set(Au.has(t)),e._hasTypeDefinitionProvider.set(Fu.has(t)),e._hasHoverProvider.set(Ou.has(t)),e._hasDocumentHighlightProvider.set(Tu.has(t)),e._hasDocumentSymbolProvider.set(Mu.has(t)),e._hasReferenceProvider.set(Nu.has(t)),e._hasRenameProvider.set(ku.has(t)),e._hasSignatureHelpProvider.set(Iu.has(t)),e._hasDocumentFormattingProvider.set(Bu.has(t)||Hu.has(t)),e._hasDocumentSelectionFormattingProvider.set(Hu.has(t)),e._hasMultipleDocumentFormattingProvider.set(Bu.all(t).length+Hu.all(t).length>1),e._hasMultipleDocumentSelectionFormattingProvider.set(Hu.all(t).length>1),e._isInWalkThrough.set(t.uri.scheme===Ci.walkThroughSnippet)})):this.reset()},t}(He),Hx=function(e){function t(t){var n=e.call(this)||this;return n._onChange=n._register(new nt),n.onChange=n._onChange.event,n._hasFocus=!1,n._domFocusTracker=n._register(Yo(t)),n._register(n._domFocusTracker.onDidFocus((function(){n._hasFocus=!0,n._onChange.fire(void 0)}))),n._register(n._domFocusTracker.onDidBlur((function(){n._hasFocus=!1,n._onChange.fire(void 0)}))),n}return Mx(t,e),t.prototype.hasFocus=function(){return this._hasFocus},t}(He),zx=encodeURIComponent("<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 3' enable-background='new 0 0 6 3' height='3' width='6'><g fill='"),jx=encodeURIComponent("'><polygon points='5.5,0 2.5,3 1.1,3 4.1,0'/><polygon points='4,0 6,2 6,0.6 5.4,0'/><polygon points='0,2 1,3 2.4,3 0,0.6'/></g></svg>");function Ux(e){return zx+encodeURIComponent(e.toString())+jx}var Kx=encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" height="3" width="12"><g fill="'),qx=encodeURIComponent('"><circle cx="1" cy="1" r="1"/><circle cx="5" cy="1" r="1"/><circle cx="9" cy="1" r="1"/></g></svg>');yg((function(e,t){var n=e.getColor(ly);n&&t.addRule(".monaco-editor .squiggly-error { border-bottom: 4px double "+n+"; }");var i=e.getColor(uy);i&&t.addRule('.monaco-editor .squiggly-error { background: url("data:image/svg+xml,'+Ux(i)+'") repeat-x bottom left; }');var o=e.getColor(dy);o&&t.addRule(".monaco-editor .squiggly-warning { border-bottom: 4px double "+o+"; }");var r=e.getColor(cy);r&&t.addRule('.monaco-editor .squiggly-warning { background: url("data:image/svg+xml,'+Ux(r)+'") repeat-x bottom left; }');var s=e.getColor(py);s&&t.addRule(".monaco-editor .squiggly-info { border-bottom: 4px double "+s+"; }");var a=e.getColor(hy);a&&t.addRule('.monaco-editor .squiggly-info { background: url("data:image/svg+xml,'+Ux(a)+'") repeat-x bottom left; }');var u=e.getColor(gy);u&&t.addRule(".monaco-editor .squiggly-hint { border-bottom: 2px dotted "+u+"; }");var l=e.getColor(fy);l&&t.addRule('.monaco-editor .squiggly-hint { background: url("data:image/svg+xml,'+(Kx+encodeURIComponent(l.toString())+qx+'") no-repeat bottom left; }'));var c=e.getColor(iw);c&&t.addRule(".monaco-editor.showUnused .squiggly-inline-unnecessary { opacity: "+c.rgba.a+"; }");var d=e.getColor(nw);d&&t.addRule(".monaco-editor.showUnused .squiggly-unnecessary { border-bottom: 2px dashed "+d+"; }");var h=e.getColor(vy)||"inherit";t.addRule(".monaco-editor .squiggly-inline-deprecated { text-decoration: line-through; text-decoration-color: "+h+"}")}));n(389),n(390);var Gx=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Zx=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},Yx=function(e){function t(t,n,i){void 0===i&&(i={});var o=e.call(this)||this;return o._state=3,o._onDidEnablementChange=o._register(new nt),o.onDidEnablementChange=o._onDidEnablementChange.event,o._onDidStart=o._register(new nt),o.onDidStart=o._onDidStart.event,o._onDidChange=o._register(new nt),o.onDidChange=o._onDidChange.event,o._onDidReset=o._register(new nt),o.onDidReset=o._onDidReset.event,o._onDidEnd=o._register(new nt),o.onDidEnd=o._onDidEnd.event,o.linkedSash=void 0,o.orthogonalStartSashDisposables=o._register(new Be),o.orthogonalEndSashDisposables=o._register(new Be),o.el=Xo(t,er(".monaco-sash")),_&&no(o.el,"mac"),o._register(Xn(o.el,"mousedown")(o.onMouseDown,o)),o._register(Xn(o.el,"dblclick")(o.onMouseDoubleClick,o)),o._register(jf.addTarget(o.el)),o._register(Xn(o.el,Bf.Start)(o.onTouchStart,o)),Gn&&no(o.el,"touch"),o.setOrientation(i.orientation||0),o.hidden=!1,o.layoutProvider=n,o.orthogonalStartSash=i.orthogonalStartSash,o.orthogonalEndSash=i.orthogonalEndSash,so(o.el,"debug",!1),o}return Gx(t,e),Object.defineProperty(t.prototype,"state",{get:function(){return this._state},set:function(e){this._state!==e&&(so(this.el,"disabled",0===e),so(this.el,"minimum",1===e),so(this.el,"maximum",2===e),this._state=e,this._onDidEnablementChange.fire(e))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"orthogonalStartSash",{get:function(){return this._orthogonalStartSash},set:function(e){this.orthogonalStartSashDisposables.clear(),e?(this.orthogonalStartSashDisposables.add(e.onDidEnablementChange(this.onOrthogonalStartSashEnablementChange,this)),this.onOrthogonalStartSashEnablementChange(e.state)):this.onOrthogonalStartSashEnablementChange(0),this._orthogonalStartSash=e},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"orthogonalEndSash",{get:function(){return this._orthogonalEndSash},set:function(e){this.orthogonalEndSashDisposables.clear(),e?(this.orthogonalEndSashDisposables.add(e.onDidEnablementChange(this.onOrthogonalEndSashEnablementChange,this)),this.onOrthogonalEndSashEnablementChange(e.state)):this.onOrthogonalEndSashEnablementChange(0),this._orthogonalEndSash=e},enumerable:!0,configurable:!0}),t.prototype.setOrientation=function(e){this.orientation=e,1===this.orientation?(no(this.el,"horizontal"),oo(this.el,"vertical")):(oo(this.el,"horizontal"),no(this.el,"vertical")),this.layoutProvider&&this.layout()},t.prototype.onMouseDown=function(e){var t=this;Go(e,!1);var n=!1;if(!e.__orthogonalSashEvent){var i=this.getOrthogonalSash(e);i&&(n=!0,e.__orthogonalSashEvent=!0,i.onMouseDown(e))}if(this.linkedSash&&!e.__linkedSashEvent&&(e.__linkedSashEvent=!0,this.linkedSash.onMouseDown(e)),this.state){for(var o=Zx(or("iframe"),or("webview")),r=0,s=o;r<s.length;r++){s[r].style.pointerEvents="none"}var a=new li(e),u=a.posx,l=a.posy,c=a.altKey,d={startX:u,currentX:u,startY:l,currentY:l,altKey:c};no(this.el,"active"),this._onDidStart.fire(d);var h=zo(this.el),p=function(){var e="";e=n?"all-scroll":1===t.orientation?1===t.state?"s-resize":2===t.state?"n-resize":_?"row-resize":"ns-resize":1===t.state?"e-resize":2===t.state?"w-resize":_?"col-resize":"ew-resize",h.innerHTML="* { cursor: "+e+" !important; }"},f=new Be;p(),n||this.onDidEnablementChange(p,null,f);Xn(window,"mousemove")((function(e){Go(e,!1);var n=new li(e),i={startX:u,currentX:n.posx,startY:l,currentY:n.posy,altKey:c};t._onDidChange.fire(i)}),null,f),Xn(window,"mouseup")((function(e){Go(e,!1),t.el.removeChild(h),oo(t.el,"active"),t._onDidEnd.fire(),f.dispose();for(var n=0,i=o;n<i.length;n++){i[n].style.pointerEvents="auto"}}),null,f)}},t.prototype.onMouseDoubleClick=function(e){var t=this.getOrthogonalSash(e);t&&t._onDidReset.fire(),this.linkedSash&&this.linkedSash._onDidReset.fire(),this._onDidReset.fire()},t.prototype.onTouchStart=function(e){var t=this;Go(e);var n=[],i=e.pageX,o=e.pageY,r=e.altKey;this._onDidStart.fire({startX:i,currentX:i,startY:o,currentY:o,altKey:r}),n.push(uo(this.el,Bf.Change,(function(e){Ws(e.pageX)&&Ws(e.pageY)&&t._onDidChange.fire({startX:i,currentX:e.pageX,startY:o,currentY:e.pageY,altKey:r})}))),n.push(uo(this.el,Bf.End,(function(e){t._onDidEnd.fire(),Ae(n)})))},t.prototype.layout=function(){var e=Gn?20:4;if(0===this.orientation){var t=this.layoutProvider;this.el.style.left=t.getVerticalSashLeft(this)-e/2+"px",t.getVerticalSashTop&&(this.el.style.top=t.getVerticalSashTop(this)+"px"),t.getVerticalSashHeight&&(this.el.style.height=t.getVerticalSashHeight(this)+"px")}else{var n=this.layoutProvider;this.el.style.top=n.getHorizontalSashTop(this)-e/2+"px",n.getHorizontalSashLeft&&(this.el.style.left=n.getHorizontalSashLeft(this)+"px"),n.getHorizontalSashWidth&&(this.el.style.width=n.getHorizontalSashWidth(this)+"px")}},t.prototype.hide=function(){this.hidden=!0,this.el.style.display="none",this.el.setAttribute("aria-hidden","true")},t.prototype.onOrthogonalStartSashEnablementChange=function(e){so(this.el,"orthogonal-start",0!==e)},t.prototype.onOrthogonalEndSashEnablementChange=function(e){so(this.el,"orthogonal-end",0!==e)},t.prototype.getOrthogonalSash=function(e){if(0===this.orientation){if(e.offsetY<=4)return this.orthogonalStartSash;if(e.offsetY>=this.el.clientHeight-4)return this.orthogonalEndSash}else{if(e.offsetX<=4)return this.orthogonalStartSash;if(e.offsetX>=this.el.clientWidth-4)return this.orthogonalEndSash}},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.el.remove()},t}(He),Xx=function(e,t,n){void 0===t&&(t=[]),void 0===n&&(n=!1),this.ctor=e,this.staticArguments=t,this.supportsDelayedInstantiation=n},$x=[];function Qx(e,t,n){$x.push([e,new Xx(t,[],n)])}var Jx=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),eD=Mn("IEditorCancelService"),tD=new Kh("cancellableOperation",!1);Qx(eD,function(){function e(){this._tokens=new WeakMap}return e.prototype.add=function(e,t){var n,i=this._tokens.get(e);return i||(i=e.invokeWithinContext((function(e){return{key:tD.bindTo(e.get(qh)),tokens:new Qe}})),this._tokens.set(e,i)),i.key.set(!0),n=i.tokens.push(t),function(){n&&(n(),i.key.set(!i.tokens.isEmpty()),n=void 0)}},e.prototype.cancel=function(e){var t=this._tokens.get(e);if(t){var n=t.tokens.pop();n&&(n.cancel(),t.key.set(!t.tokens.isEmpty()))}},e}(),!0);var nD=function(e){function t(t,n){var i=e.call(this,n)||this;return i.editor=t,i._unregister=t.invokeWithinContext((function(e){return e.get(eD).add(t,i)})),i}return Jx(t,e),t.prototype.dispose=function(){this._unregister(),e.prototype.dispose.call(this)},t}(ct);Mf(new(function(e){function t(){return e.call(this,{id:"editor.cancelOperation",kbOpts:{weight:100,primary:9},precondition:tD})||this}return Jx(t,e),t.prototype.runEditorCommand=function(e,t){e.get(eD).cancel(t)},t}(Nf)));var iD=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),oD=function(){function e(e,t){if(this.flags=t,0!=(1&this.flags)){var n=e.getModel();this.modelVersionId=n?pr("{0}#{1}",n.uri.toString(),n.getVersionId()):null}else this.modelVersionId=null;0!=(4&this.flags)?this.position=e.getPosition():this.position=null,0!=(2&this.flags)?this.selection=e.getSelection():this.selection=null,0!=(8&this.flags)?(this.scrollLeft=e.getScrollLeft(),this.scrollTop=e.getScrollTop()):(this.scrollLeft=-1,this.scrollTop=-1)}return e.prototype._equals=function(t){if(!(t instanceof e))return!1;var n=t;return this.modelVersionId===n.modelVersionId&&(this.scrollLeft===n.scrollLeft&&this.scrollTop===n.scrollTop&&(!(!this.position&&n.position||this.position&&!n.position||this.position&&n.position&&!this.position.equals(n.position))&&!(!this.selection&&n.selection||this.selection&&!n.selection||this.selection&&n.selection&&!this.selection.equalsRange(n.selection))))},e.prototype.validate=function(t){return this._equals(new e(t,this.flags))},e}(),rD=function(e){function t(t,n,i){var o=e.call(this,t,i)||this;return o.editor=t,o._listener=new Be,4&n&&o._listener.add(t.onDidChangeCursorPosition((function(e){return o.cancel()}))),2&n&&o._listener.add(t.onDidChangeCursorSelection((function(e){return o.cancel()}))),8&n&&o._listener.add(t.onDidScrollChange((function(e){return o.cancel()}))),1&n&&(o._listener.add(t.onDidChangeModel((function(e){return o.cancel()}))),o._listener.add(t.onDidChangeModelContent((function(e){return o.cancel()})))),o}return iD(t,e),t.prototype.dispose=function(){this._listener.dispose(),e.prototype.dispose.call(this)},t}(nD),sD=function(e){function t(t,n){var i=e.call(this,n)||this;return i._listener=t.onDidChangeContent((function(){return i.cancel()})),i}return iD(t,e),t.prototype.dispose=function(){this._listener.dispose(),e.prototype.dispose.call(this)},t}(ct),aD=function(){function e(e,t){this._visiblePosition=e,this._visiblePositionScrollDelta=t}return e.capture=function(t){var n=null,i=0;if(0!==t.getScrollTop()){var o=t.getVisibleRanges();if(o.length>0){n=o[0].getStartPosition();var r=t.getTopForPosition(n.lineNumber,n.column);i=t.getScrollTop()-r}}return new e(n,i)},e.prototype.restore=function(e){if(this._visiblePosition){var t=e.getTopForPosition(this._visiblePosition.lineNumber,this._visiblePosition.column);e.setScrollTop(t+this._visiblePositionScrollDelta)}},e}(),uD=(n(391),n(392),"ResourceURLs"),lD="text/plain",cD=function(){function e(e){this.data=e}return e.prototype.update=function(){},e.prototype.getData=function(){return this.data},e}(),dD={CurrentDragAndDropData:void 0},hD=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),pD=function(e){function t(t,n,i){var o=e.call(this)||this;return o.options=i,o._context=t||o,o._action=n,n instanceof df&&o._register(n.onDidChange((function(e){o.element&&o.handleActionChangeEvent(e)}))),o}return hD(t,e),t.prototype.handleActionChangeEvent=function(e){void 0!==e.enabled&&this.updateEnabled(),void 0!==e.checked&&this.updateChecked(),void 0!==e.class&&this.updateClass(),void 0!==e.label&&(this.updateLabel(),this.updateTooltip()),void 0!==e.tooltip&&this.updateTooltip()},Object.defineProperty(t.prototype,"actionRunner",{get:function(){return this._actionRunner||(this._actionRunner=this._register(new hf)),this._actionRunner},set:function(e){this._actionRunner=e},enumerable:!0,configurable:!0}),t.prototype.getAction=function(){return this._action},t.prototype.isEnabled=function(){return this._action.enabled},t.prototype.setActionContext=function(e){this._context=e},t.prototype.render=function(e){var t=this,n=this.element=e;this._register(jf.addTarget(e));var i=this.options&&this.options.draggable;i&&(e.draggable=!0,zn&&this._register(uo(e,qo.DRAG_START,(function(e){var n;return null===(n=e.dataTransfer)||void 0===n?void 0:n.setData(lD,t._action.label)})))),this._register(uo(n,Bf.Tap,(function(e){return t.onClick(e)}))),this._register(uo(n,qo.MOUSE_DOWN,(function(e){i||Go(e,!0),t._action.enabled&&0===e.button&&no(n,"active")}))),this._register(uo(n,qo.CLICK,(function(e){Go(e,!0),t.options&&t.options.isMenu?t.onClick(e):L((function(){return t.onClick(e)}))}))),this._register(uo(n,qo.DBLCLICK,(function(e){Go(e,!0)}))),[qo.MOUSE_UP,qo.MOUSE_OUT].forEach((function(e){t._register(uo(n,e,(function(e){Go(e),oo(n,"active")})))}))},t.prototype.onClick=function(e){var t;Go(e,!0),Hs(this._context)?t=e:Fs(t=this._context)&&(t.event=e),this.actionRunner.run(this._action,t)},t.prototype.focus=function(){this.element&&(this.element.focus(),no(this.element,"focused"))},t.prototype.blur=function(){this.element&&(this.element.blur(),oo(this.element,"focused"))},t.prototype.updateEnabled=function(){},t.prototype.updateLabel=function(){},t.prototype.updateTooltip=function(){},t.prototype.updateClass=function(){},t.prototype.updateChecked=function(){},t.prototype.dispose=function(){this.element&&(Xi(this.element),this.element=void 0),e.prototype.dispose.call(this)},t}(He),fD=function(e){function t(n){var i=e.call(this,t.ID,n,n?"separator text":"separator")||this;return i.checked=!1,i.enabled=!1,i}return hD(t,e),t.ID="vs.actions.separator",t}(df),gD=function(e){function t(t,n,i){void 0===i&&(i={});var o=e.call(this,t,n,i)||this;return o.options=i,o.options.icon=void 0!==i.icon&&i.icon,o.options.label=void 0===i.label||i.label,o.cssClass="",o}return hD(t,e),t.prototype.render=function(t){e.prototype.render.call(this,t),this.element&&(this.label=Xo(this.element,er("a.action-label"))),this.label&&(this._action.id===fD.ID?this.label.setAttribute("role","presentation"):this.options.isMenu?this.label.setAttribute("role","menuitem"):this.label.setAttribute("role","button")),this.options.label&&this.options.keybinding&&this.element&&(Xo(this.element,er("span.keybinding")).textContent=this.options.keybinding),this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked()},t.prototype.focus=function(){e.prototype.focus.call(this),this.label&&this.label.focus()},t.prototype.updateLabel=function(){this.options.label&&this.label&&(this.label.textContent=this.getAction().label)},t.prototype.updateTooltip=function(){var e=null;this.getAction().tooltip?e=this.getAction().tooltip:!this.options.label&&this.getAction().label&&this.options.icon&&(e=this.getAction().label,this.options.keybinding&&(e=r({key:"titleLabel",comment:["action title","action keybinding"]},"{0} ({1})",e,this.options.keybinding))),e&&this.label&&(this.label.title=e)},t.prototype.updateClass=function(){this.cssClass&&this.label&&ro(this.label,this.cssClass),this.options.icon?(this.cssClass=this.getAction().class,this.label&&(no(this.label,"codicon"),this.cssClass&&io(this.label,this.cssClass)),this.updateEnabled()):this.label&&oo(this.label,"codicon")},t.prototype.updateEnabled=function(){this.getAction().enabled?(this.label&&(this.label.removeAttribute("aria-disabled"),oo(this.label,"disabled"),this.label.tabIndex=0),this.element&&oo(this.element,"disabled")):(this.label&&(this.label.setAttribute("aria-disabled","true"),no(this.label,"disabled"),ir(this.label)),this.element&&no(this.element,"disabled"))},t.prototype.updateChecked=function(){this.label&&(this.getAction().checked?no(this.label,"checked"):oo(this.label,"checked"))},t}(pD),mD={orientation:0,context:null,triggerKeys:{keys:[3,10],keyDown:!1}},vD=function(e){function t(t,n){void 0===n&&(n=mD);var i,o,r=e.call(this)||this;switch(r._onDidBlur=r._register(new nt),r.onDidBlur=r._onDidBlur.event,r._onDidCancel=r._register(new nt),r.onDidCancel=r._onDidCancel.event,r._onDidRun=r._register(new nt),r.onDidRun=r._onDidRun.event,r._onDidBeforeRun=r._register(new nt),r.onDidBeforeRun=r._onDidBeforeRun.event,r.options=n,r._context=n.context,r.options.triggerKeys||(r.options.triggerKeys=mD.triggerKeys),r.options.actionRunner?r._actionRunner=r.options.actionRunner:(r._actionRunner=new hf,r._register(r._actionRunner)),r._register(r._actionRunner.onDidRun((function(e){return r._onDidRun.fire(e)}))),r._register(r._actionRunner.onDidBeforeRun((function(e){return r._onDidBeforeRun.fire(e)}))),r.viewItems=[],r.focusedItem=void 0,r.domNode=document.createElement("div"),r.domNode.className="monaco-action-bar",!1!==n.animated&&no(r.domNode,"animated"),r.options.orientation){case 0:i=15,o=17;break;case 1:i=17,o=15,r.domNode.className+=" reverse";break;case 2:i=16,o=18,r.domNode.className+=" vertical";break;case 3:i=18,o=16,r.domNode.className+=" vertical reverse"}return r._register(uo(r.domNode,qo.KEY_DOWN,(function(e){var t=new ni(e),n=!0;t.equals(i)?r.focusPrevious():t.equals(o)?r.focusNext():t.equals(9)?r.cancel():r.isTriggerKeyEvent(t)?r.options.triggerKeys&&r.options.triggerKeys.keyDown&&r.doTrigger(t):n=!1,n&&(t.preventDefault(),t.stopPropagation())}))),r._register(uo(r.domNode,qo.KEY_UP,(function(e){var t=new ni(e);r.isTriggerKeyEvent(t)?(r.options.triggerKeys&&!r.options.triggerKeys.keyDown&&r.doTrigger(t),t.preventDefault(),t.stopPropagation()):(t.equals(2)||t.equals(1026))&&r.updateFocusedItem()}))),r.focusTracker=r._register(Yo(r.domNode)),r._register(r.focusTracker.onDidBlur((function(){document.activeElement!==r.domNode&&Fo(document.activeElement,r.domNode)||(r._onDidBlur.fire(),r.focusedItem=void 0)}))),r._register(r.focusTracker.onDidFocus((function(){return r.updateFocusedItem()}))),r.actionsList=document.createElement("ul"),r.actionsList.className="actions-container",r.actionsList.setAttribute("role","toolbar"),r.options.ariaLabel&&r.actionsList.setAttribute("aria-label",r.options.ariaLabel),r.domNode.appendChild(r.actionsList),t.appendChild(r.domNode),r}return hD(t,e),t.prototype.isTriggerKeyEvent=function(e){var t=!1;return this.options.triggerKeys&&this.options.triggerKeys.keys.forEach((function(n){t=t||e.equals(n)})),t},t.prototype.updateFocusedItem=function(){for(var e=0;e<this.actionsList.children.length;e++){var t=this.actionsList.children[e];if(Fo(document.activeElement,t)){this.focusedItem=e;break}}},Object.defineProperty(t.prototype,"context",{get:function(){return this._context},set:function(e){this._context=e,this.viewItems.forEach((function(t){return t.setActionContext(e)}))},enumerable:!0,configurable:!0}),t.prototype.getContainer=function(){return this.domNode},t.prototype.push=function(e,t){var n=this;void 0===t&&(t={});var i=Array.isArray(e)?e:[e],o=Ws(t.index)?t.index:null;i.forEach((function(e){var i,r=document.createElement("li");r.className="action-item",r.setAttribute("role","presentation"),n._register(uo(r,qo.CONTEXT_MENU,(function(e){e.preventDefault(),e.stopPropagation()}))),n.options.actionViewItemProvider&&(i=n.options.actionViewItemProvider(e)),i||(i=new gD(n.context,e,t)),i.actionRunner=n._actionRunner,i.setActionContext(n.context),i.render(r),null===o||o<0||o>=n.actionsList.children.length?(n.actionsList.appendChild(r),n.viewItems.push(i)):(n.actionsList.insertBefore(r,n.actionsList.children[o]),n.viewItems.splice(o,0,i),o++)}))},t.prototype.clear=function(){this.viewItems=Ae(this.viewItems),Yi(this.actionsList)},t.prototype.isEmpty=function(){return 0===this.viewItems.length},t.prototype.focus=function(e){var t=!1,n=void 0;void 0===e?t=!0:"number"==typeof e?n=e:"boolean"==typeof e&&(t=e),t&&void 0===this.focusedItem?(this.focusedItem=this.viewItems.length-1,this.focusNext()):(void 0!==n&&(this.focusedItem=n),this.updateFocus())},t.prototype.focusNext=function(){void 0===this.focusedItem&&(this.focusedItem=this.viewItems.length-1);var e,t=this.focusedItem;do{this.focusedItem=(this.focusedItem+1)%this.viewItems.length,e=this.viewItems[this.focusedItem]}while(this.focusedItem!==t&&!e.isEnabled());this.focusedItem!==t||e.isEnabled()||(this.focusedItem=void 0),this.updateFocus()},t.prototype.focusPrevious=function(){void 0===this.focusedItem&&(this.focusedItem=0);var e,t=this.focusedItem;do{this.focusedItem=this.focusedItem-1,this.focusedItem<0&&(this.focusedItem=this.viewItems.length-1),e=this.viewItems[this.focusedItem]}while(this.focusedItem!==t&&!e.isEnabled());this.focusedItem!==t||e.isEnabled()||(this.focusedItem=void 0),this.updateFocus(!0)},t.prototype.updateFocus=function(e,t){void 0===this.focusedItem&&this.actionsList.focus({preventScroll:t});for(var n=0;n<this.viewItems.length;n++){var i=this.viewItems[n];n===this.focusedItem?Ks(i.isEnabled)&&(i.isEnabled()&&Ks(i.focus)?i.focus(e):this.actionsList.focus({preventScroll:t})):Ks(i.blur)&&i.blur()}},t.prototype.doTrigger=function(e){if(void 0!==this.focusedItem){var t=this.viewItems[this.focusedItem];if(t instanceof pD){var n=null===t._context||void 0===t._context?e:t._context;this.run(t._action,n)}}},t.prototype.cancel=function(){document.activeElement instanceof HTMLElement&&document.activeElement.blur(),this._onDidCancel.fire()},t.prototype.run=function(e,t){return this._actionRunner.run(e,t)},t.prototype.dispose=function(){Ae(this.viewItems),this.viewItems=[],Xi(this.getContainer()),e.prototype.dispose.call(this)},t}(He),_D=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),yD=function(){function e(e,t,n,i){this.originalLineStart=e,this.originalLineEnd=t,this.modifiedLineStart=n,this.modifiedLineEnd=i}return e.prototype.getType=function(){return 0===this.originalLineStart?1:0===this.modifiedLineStart?2:0},e}(),bD=function(e){this.entries=e},wD=function(e){function t(t){var n=e.call(this)||this;return n._width=0,n._diffEditor=t,n._isVisible=!1,n.shadow=Ff(document.createElement("div")),n.shadow.setClassName("diff-review-shadow"),n.actionBarContainer=Ff(document.createElement("div")),n.actionBarContainer.setClassName("diff-review-actions"),n._actionBar=n._register(new vD(n.actionBarContainer.domNode)),n._actionBar.push(new df("diffreview.close",r("label.close","Close"),"close-diff-review",!0,(function(){return n.hide(),Promise.resolve(null)})),{label:!1,icon:!0}),n.domNode=Ff(document.createElement("div")),n.domNode.setClassName("diff-review monaco-editor-background"),n._content=Ff(document.createElement("div")),n._content.setClassName("diff-review-content"),n.scrollbar=n._register(new gS(n._content.domNode,{})),n.domNode.domNode.appendChild(n.scrollbar.getDomNode()),n._register(t.onDidUpdateDiff((function(){n._isVisible&&(n._diffs=n._compute(),n._render())}))),n._register(t.getModifiedEditor().onDidChangeCursorPosition((function(){n._isVisible&&n._render()}))),n._register(t.getOriginalEditor().onDidFocusEditorWidget((function(){n._isVisible&&n.hide()}))),n._register(t.getModifiedEditor().onDidFocusEditorWidget((function(){n._isVisible&&n.hide()}))),n._register(co(n.domNode.domNode,"click",(function(e){e.preventDefault();var t=Wo(e.target,"diff-review-row");t&&n._goToRow(t)}))),n._register(co(n.domNode.domNode,"keydown",(function(e){(e.equals(18)||e.equals(2066)||e.equals(530))&&(e.preventDefault(),n._goToRow(n._getNextRow())),(e.equals(16)||e.equals(2064)||e.equals(528))&&(e.preventDefault(),n._goToRow(n._getPrevRow())),(e.equals(9)||e.equals(2057)||e.equals(521)||e.equals(1033))&&(e.preventDefault(),n.hide()),(e.equals(10)||e.equals(3))&&(e.preventDefault(),n.accept())}))),n._diffs=[],n._currentDiff=null,n}return _D(t,e),t.prototype.prev=function(){var e=0;if(this._isVisible||(this._diffs=this._compute()),this._isVisible){for(var t=-1,n=0,i=this._diffs.length;n<i;n++)if(this._diffs[n]===this._currentDiff){t=n;break}e=this._diffs.length+t-1}else e=this._findDiffIndex(this._diffEditor.getPosition());0!==this._diffs.length&&(e%=this._diffs.length,this._diffEditor.setPosition(new bn(this._diffs[e].entries[0].modifiedLineStart,1)),this._isVisible=!0,this._diffEditor.doLayout(),this._render(),this._goToRow(this._getNextRow()))},t.prototype.next=function(){var e=0;if(this._isVisible||(this._diffs=this._compute()),this._isVisible){for(var t=-1,n=0,i=this._diffs.length;n<i;n++)if(this._diffs[n]===this._currentDiff){t=n;break}e=t+1}else e=this._findDiffIndex(this._diffEditor.getPosition());0!==this._diffs.length&&(e%=this._diffs.length,this._diffEditor.setPosition(new bn(this._diffs[e].entries[0].modifiedLineStart,1)),this._isVisible=!0,this._diffEditor.doLayout(),this._render(),this._goToRow(this._getNextRow()))},t.prototype.accept=function(){var e=-1,t=this._getCurrentFocusedRow();if(t){var n=parseInt(t.getAttribute("data-line"),10);isNaN(n)||(e=n)}this.hide(),-1!==e&&(this._diffEditor.setPosition(new bn(e,1)),this._diffEditor.revealPosition(new bn(e,1),1))},t.prototype.hide=function(){this._isVisible=!1,this._diffEditor.focus(),this._diffEditor.doLayout(),this._render()},t.prototype._getPrevRow=function(){var e=this._getCurrentFocusedRow();return e?e.previousElementSibling?e.previousElementSibling:e:this._getFirstRow()},t.prototype._getNextRow=function(){var e=this._getCurrentFocusedRow();return e?e.nextElementSibling?e.nextElementSibling:e:this._getFirstRow()},t.prototype._getFirstRow=function(){return this.domNode.domNode.querySelector(".diff-review-row")},t.prototype._getCurrentFocusedRow=function(){var e=document.activeElement;return e&&/diff-review-row/.test(e.className)?e:null},t.prototype._goToRow=function(e){var t=this._getCurrentFocusedRow();e.tabIndex=0,e.focus(),t&&t!==e&&(t.tabIndex=-1),this.scrollbar.scanDomNode()},t.prototype.isVisible=function(){return this._isVisible},t.prototype.layout=function(e,t,n){this._width=t,this.shadow.setTop(e-6),this.shadow.setWidth(t),this.shadow.setHeight(this._isVisible?6:0),this.domNode.setTop(e),this.domNode.setWidth(t),this.domNode.setHeight(n),this._content.setHeight(n),this._content.setWidth(t),this._isVisible?(this.actionBarContainer.setAttribute("aria-hidden","false"),this.actionBarContainer.setDisplay("block")):(this.actionBarContainer.setAttribute("aria-hidden","true"),this.actionBarContainer.setDisplay("none"))},t.prototype._compute=function(){var e=this._diffEditor.getLineChanges();if(!e||0===e.length)return[];var n=this._diffEditor.getOriginalEditor().getModel(),i=this._diffEditor.getModifiedEditor().getModel();return n&&i?t._mergeAdjacent(e,n.getLineCount(),i.getLineCount()):[]},t._mergeAdjacent=function(e,t,n){if(!e||0===e.length)return[];for(var i=[],o=0,r=0,s=e.length;r<s;r++){var a=e[r],u=a.originalStartLineNumber,l=a.originalEndLineNumber,c=a.modifiedStartLineNumber,d=a.modifiedEndLineNumber,h=[],p=0,f=0===l?u:u-1,g=0===d?c:c-1,m=1,v=1;if(r>0){var _=e[r-1];m=0===_.originalEndLineNumber?_.originalStartLineNumber+1:_.originalEndLineNumber+1,v=0===_.modifiedEndLineNumber?_.modifiedStartLineNumber+1:_.modifiedEndLineNumber+1}var y=f-3+1,b=g-3+1;if(y<m)y+=D=m-y,b+=D;if(b<v)y+=D=v-b,b+=D;h[p++]=new yD(y,f,b,g),0!==l&&(h[p++]=new yD(u,l,0,0)),0!==d&&(h[p++]=new yD(0,0,c,d));var w=0===l?u+1:l+1,C=0===d?c+1:d+1,S=t,L=n;if(r+1<s){var x=e[r+1];S=0===x.originalEndLineNumber?x.originalStartLineNumber:x.originalStartLineNumber-1,L=0===x.modifiedEndLineNumber?x.modifiedStartLineNumber:x.modifiedStartLineNumber-1}var D,N=w+3-1,k=C+3-1;if(N>S)N+=D=S-N,k+=D;if(k>L)N+=D=L-k,k+=D;h[p++]=new yD(w,N,C,k),i[o++]=new bD(h)}var E=i[0].entries,I=[],O=0;for(r=1,s=i.length;r<s;r++){var M=i[r].entries,T=E[E.length-1],P=M[0];0===T.getType()&&0===P.getType()&&P.originalLineStart<=T.originalLineEnd?(E[E.length-1]=new yD(T.originalLineStart,P.originalLineEnd,T.modifiedLineStart,P.modifiedLineEnd),E=E.concat(M.slice(1))):(I[O++]=new bD(E),E=M)}return I[O++]=new bD(E),I},t.prototype._findDiffIndex=function(e){for(var t=e.lineNumber,n=0,i=this._diffs.length;n<i;n++){var o=this._diffs[n].entries;if(t<=o[o.length-1].modifiedLineEnd)return n}return 0},t.prototype._render=function(){var e=this._diffEditor.getOriginalEditor().getOptions(),n=this._diffEditor.getModifiedEditor().getOptions(),i=this._diffEditor.getOriginalEditor().getModel(),o=this._diffEditor.getModifiedEditor().getModel(),s=i.getOptions(),a=o.getOptions();if(!this._isVisible||!i||!o)return Yi(this._content.domNode),this._currentDiff=null,void this.scrollbar.scanDomNode();var u=this._findDiffIndex(this._diffEditor.getPosition());if(this._diffs[u]!==this._currentDiff){this._currentDiff=this._diffs[u];var l=this._diffs[u].entries,c=document.createElement("div");c.className="diff-review-table",c.setAttribute("role","list"),af.applyFontInfoSlow(c,n.get(34));for(var d=0,h=0,p=0,f=0,g=0,m=l.length;g<m;g++){var v=(E=l[g]).originalLineStart,_=E.originalLineEnd,y=E.modifiedLineStart,b=E.modifiedLineEnd;0!==v&&(0===d||v<d)&&(d=v),0!==_&&(0===h||_>h)&&(h=_),0!==y&&(0===p||y<p)&&(p=y),0!==b&&(0===f||b>f)&&(f=b)}var w=document.createElement("div");w.className="diff-review-row";var C=document.createElement("div");C.className="diff-review-cell diff-review-summary";var S=h-d+1,L=f-p+1;C.appendChild(document.createTextNode(u+1+"/"+this._diffs.length+": @@ -"+d+","+S+" +"+p+","+L+" @@")),w.setAttribute("data-line",String(p));var x=function(e){return 0===e?r("no_lines","no lines"):1===e?r("one_line","1 line"):r("more_lines","{0} lines",e)},D=x(S),N=x(L);w.setAttribute("aria-label",r({key:"header",comment:["This is the ARIA label for a git diff header.","A git diff header looks like this: @@ -154,12 +159,39 @@.","That encodes that at original line 154 (which is now line 159), 12 lines were removed/changed with 39 lines.","Variables 0 and 1 refer to the diff index out of total number of diffs.","Variables 2 and 4 will be numbers (a line number).",'Variables 3 and 5 will be "no lines", "1 line" or "X lines", localized separately.']},"Difference {0} of {1}: original {2}, {3}, modified {4}, {5}",u+1,this._diffs.length,d,D,p,N)),w.appendChild(C),w.setAttribute("role","listitem"),c.appendChild(w);var k=p;for(g=0,m=l.length;g<m;g++){var E=l[g];t._renderSection(c,E,k,this._width,e,i,s,n,o,a),0!==E.modifiedLineStart&&(k=E.modifiedLineEnd)}Yi(this._content.domNode),this._content.domNode.appendChild(c),this.scrollbar.scanDomNode()}},t._renderSection=function(e,t,n,i,o,s,a,u,l,c){var d=t.getType(),h="diff-review-row",p="",f="diff-review-spacer";switch(d){case 1:h="diff-review-row line-insert",p=" char-insert",f="diff-review-spacer insert-sign";break;case 2:h="diff-review-row line-delete",p=" char-delete",f="diff-review-spacer delete-sign"}for(var g=t.originalLineStart,m=t.originalLineEnd,v=t.modifiedLineStart,_=t.modifiedLineEnd,y=Math.max(_-v,m-g),b=o.get(107),w=b.glyphMarginWidth+b.lineNumbersWidth,C=u.get(107),S=10+C.glyphMarginWidth+C.lineNumbersWidth,L=0;L<=y;L++){var x=0===g?0:g+L,D=0===v?0:v+L,N=document.createElement("div");N.style.minWidth=i+"px",N.className=h,N.setAttribute("role","listitem"),0!==D&&(n=D),N.setAttribute("data-line",String(n));var k=document.createElement("div");k.className="diff-review-cell",N.appendChild(k);var E=document.createElement("span");E.style.width=w+"px",E.style.minWidth=w+"px",E.className="diff-review-line-number"+p,0!==x?E.appendChild(document.createTextNode(String(x))):E.innerHTML=" ",k.appendChild(E);var I=document.createElement("span");I.style.width=S+"px",I.style.minWidth=S+"px",I.style.paddingRight="10px",I.className="diff-review-line-number"+p,0!==D?I.appendChild(document.createTextNode(String(D))):I.innerHTML=" ",k.appendChild(I);var O=document.createElement("span");O.className=f,O.innerHTML="  ",k.appendChild(O);var M=void 0;0!==D?(k.insertAdjacentHTML("beforeend",this._renderLine(l,u,c.tabSize,D)),M=l.getLineContent(D)):(k.insertAdjacentHTML("beforeend",this._renderLine(s,o,a.tabSize,x)),M=s.getLineContent(x)),0===M.length&&(M=r("blankLine","blank"));var T="";switch(d){case 0:T=r("equalLine","original {0}, modified {1}: {2}",x,D,M);break;case 1:T=r("insertLine","+ modified {0}: {1}",D,M);break;case 2:T=r("deleteLine","- original {0}: {1}",x,M)}N.setAttribute("aria-label",T),e.appendChild(N)}},t._renderLine=function(e,t,n,i){var o=e.getLineContent(i),r=t.get(34),s=new Uint32Array(2);s[0]=o.length,s[1]=16793600;var a=new Vc(s,o),u=rd.isBasicASCII(o,e.mightContainNonBasicASCII()),l=rd.containsRTL(o,u,e.mightContainRTL());return ed(new Yc(r.isMonospace&&!t.get(23),r.canUseHalfwidthRightwardsArrow,o,!1,u,l,0,a,[],n,0,r.spaceWidth,r.middotWidth,t.get(88),t.get(74),t.get(69),t.get(35)!==Y.OFF,null)).html},t}(He);yg((function(e,t){var n=e.getColor(Gb);n&&t.addRule(".monaco-diff-editor .diff-review-line-number { color: "+n+"; }");var i=e.getColor(iy);i&&t.addRule(".monaco-diff-editor .diff-review-shadow { box-shadow: "+i+" 0 -6px 6px -6px inset; }")}));var CD=function(e){function t(){return e.call(this,{id:"editor.action.diffReview.next",label:r("editor.action.diffReview.next","Go to Next Difference"),alias:"Go to Next Difference",precondition:Rh.has("isInDiffEditor"),kbOpts:{kbExpr:null,primary:65,weight:100}})||this}return _D(t,e),t.prototype.run=function(e,t){var n=LD(e);n&&n.diffReviewNext()},t}(kf),SD=function(e){function t(){return e.call(this,{id:"editor.action.diffReview.prev",label:r("editor.action.diffReview.prev","Go to Previous Difference"),alias:"Go to Previous Difference",precondition:Rh.has("isInDiffEditor"),kbOpts:{kbExpr:null,primary:1089,weight:100}})||this}return _D(t,e),t.prototype.run=function(e,t){var n=LD(e);n&&n.diffReviewPrev()},t}(kf);function LD(e){for(var t=e.get(Pn).listDiffEditors(),n=0,i=t.length;n<i;n++){var o=t[n];if(o.hasWidgetFocus())return o}return null}Tf(CD),Tf(SD);var xD=Mn("contextViewService"),DD=Mn("contextMenuService"),ND=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),kD=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},ED=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},ID=function(e){function t(t,n,i,o,s,a){var u=e.call(this)||this;u._viewZoneId=t,u._marginDomNode=n,u.editor=i,u.diff=o,u._contextMenuService=s,u._clipboardService=a,u._visibility=!1,u._marginDomNode.style.zIndex="10",u._diffActions=document.createElement("div"),u._diffActions.className="codicon codicon-lightbulb lightbulb-glyph",u._diffActions.style.position="absolute";var l=i.getOption(49),c=i.getModel().getEOL();u._diffActions.style.right="0px",u._diffActions.style.visibility="hidden",u._diffActions.style.height=l+"px",u._diffActions.style.lineHeight=l+"px",u._marginDomNode.appendChild(u._diffActions);var d=[];d.push(new df("diff.clipboard.copyDeletedContent",o.originalEndLineNumber>o.modifiedStartLineNumber?r("diff.clipboard.copyDeletedLinesContent.label","Copy deleted lines"):r("diff.clipboard.copyDeletedLinesContent.single.label","Copy deleted line"),void 0,!0,(function(){return kD(u,void 0,void 0,(function(){return ED(this,(function(e){switch(e.label){case 0:return[4,this._clipboardService.writeText(o.originalContent.join(c)+c)];case 1:return e.sent(),[2]}}))}))})));var h=0,p=void 0;o.originalEndLineNumber>o.modifiedStartLineNumber&&(p=new df("diff.clipboard.copyDeletedLineContent",r("diff.clipboard.copyDeletedLineContent.label","Copy deleted line ({0})",o.originalStartLineNumber),void 0,!0,(function(){return kD(u,void 0,void 0,(function(){return ED(this,(function(e){switch(e.label){case 0:return[4,this._clipboardService.writeText(o.originalContent[h])];case 1:return e.sent(),[2]}}))}))})),d.push(p)),i.getOption(68)||d.push(new df("diff.inline.revertChange",r("diff.inline.revertChange.label","Revert this change"),void 0,!0,(function(){return kD(u,void 0,void 0,(function(){var e;return ED(this,(function(t){return 0===o.modifiedEndLineNumber?(e=i.getModel().getLineMaxColumn(o.modifiedStartLineNumber),i.executeEdits("diffEditor",[{range:new wn(o.modifiedStartLineNumber,e,o.modifiedStartLineNumber,e),text:c+o.originalContent.join(c)}])):(e=i.getModel().getLineMaxColumn(o.modifiedEndLineNumber),i.executeEdits("diffEditor",[{range:new wn(o.modifiedStartLineNumber,1,o.modifiedEndLineNumber,e),text:o.originalContent.join(c)}])),[2]}))}))})));var f=function(e,t){u._contextMenuService.showContextMenu({getAnchor:function(){return{x:e,y:t}},getActions:function(){return p&&(p.label=r("diff.clipboard.copyDeletedLineContent.label","Copy deleted line ({0})",o.originalStartLineNumber+h)),d},autoSelectFirstItem:!0})};return u._register(co(u._diffActions,"mousedown",(function(e){var t=Oo(u._diffActions),n=t.top,i=t.height,o=Math.floor(l/3);e.preventDefault(),f(e.posx,n+i+o)}))),u._register(i.onMouseMove((function(e){8===e.target.type||5===e.target.type?e.target.detail.viewZoneId===u._viewZoneId?(u.visibility=!0,h=u._updateLightBulbPosition(u._marginDomNode,e.event.browserEvent.y,l)):u.visibility=!1:u.visibility=!1}))),u._register(i.onMouseDown((function(e){e.event.rightButton&&(8!==e.target.type&&5!==e.target.type||e.target.detail.viewZoneId===u._viewZoneId&&(e.event.preventDefault(),h=u._updateLightBulbPosition(u._marginDomNode,e.event.browserEvent.y,l),f(e.event.posx,e.event.posy+l)))}))),u}return ND(t,e),Object.defineProperty(t.prototype,"visibility",{get:function(){return this._visibility},set:function(e){this._visibility!==e&&(this._visibility=e,this._diffActions.style.visibility=e?"visible":"hidden")},enumerable:!0,configurable:!0}),t.prototype._updateLightBulbPosition=function(e,t,n){var i=t-Oo(e).top,o=Math.floor(i/n),r=o*n;return this._diffActions.style.top=r+"px",o},t}(He),OD=Mn("editorProgressService"),MD=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),TD=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},PD=function(e,t){return function(n,i){t(n,i,e)}},RD=function(){function e(e,t){this._contextMenuService=e,this._clipboardService=t,this._zones=[],this.inlineDiffMargins=[],this._zonesMap={},this._decorations=[]}return e.prototype.getForeignViewZones=function(e){var t=this;return e.filter((function(e){return!t._zonesMap[String(e.id)]}))},e.prototype.clean=function(e){var t=this;this._zones.length>0&&e.changeViewZones((function(e){for(var n=0,i=t._zones.length;n<i;n++)e.removeZone(t._zones[n])})),this._zones=[],this._zonesMap={},this._decorations=e.deltaDecorations(this._decorations,[])},e.prototype.apply=function(e,t,n,i){var o=this,r=i?aD.capture(e):null;e.changeViewZones((function(t){for(var i=0,r=o._zones.length;i<r;i++)t.removeZone(o._zones[i]);i=0;for(var s=o.inlineDiffMargins.length;i<s;i++)o.inlineDiffMargins[i].dispose();o._zones=[],o._zonesMap={},o.inlineDiffMargins=[];i=0;for(var a=n.zones.length;i<a;i++){var u=n.zones[i];u.suppressMouseDown=!0;var l=t.addZone(u);o._zones.push(l),o._zonesMap[String(l)]=!0,n.zones[i].diff&&u.marginDomNode&&o._clipboardService&&(u.suppressMouseDown=!1,o.inlineDiffMargins.push(new ID(l,u.marginDomNode,e,n.zones[i].diff,o._contextMenuService,o._clipboardService)))}})),r&&r.restore(e),this._decorations=e.deltaDecorations(this._decorations,n.decorations),t&&t.setZones(n.overviewZones)},e}(),AD=0,FD=function(e){function t(n,i,o,r,s,a,u,l,c,d,h){var p=e.call(this)||this;p._editorProgressService=h,p._onDidDispose=p._register(new nt),p.onDidDispose=p._onDidDispose.event,p._onDidUpdateDiff=p._register(new nt),p.onDidUpdateDiff=p._onDidUpdateDiff.event,p._lastOriginalWarning=null,p._lastModifiedWarning=null,p._editorWorkerService=r,p._codeEditorService=u,p._contextKeyService=p._register(s.createScoped(n)),p._contextKeyService.createKey("isInDiffEditor",!0),p._themeService=l,p._notificationService=c,p.id=++AD,p._state=0,p._updatingDiffProgress=null,p._domElement=n,i=i||{},p._renderSideBySide=!0,void 0!==i.renderSideBySide&&(p._renderSideBySide=i.renderSideBySide),p._maxComputationTime=5e3,void 0!==i.maxComputationTime&&(p._maxComputationTime=i.maxComputationTime),p._ignoreTrimWhitespace=!0,void 0!==i.ignoreTrimWhitespace&&(p._ignoreTrimWhitespace=i.ignoreTrimWhitespace),p._renderIndicators=!0,void 0!==i.renderIndicators&&(p._renderIndicators=i.renderIndicators),p._originalIsEditable=!1,void 0!==i.originalEditable&&(p._originalIsEditable=Boolean(i.originalEditable)),p._updateDecorationsRunner=p._register(new wi((function(){return p._updateDecorations()}),0)),p._containerDomElement=document.createElement("div"),p._containerDomElement.className=t._getClassName(p._themeService.getTheme(),p._renderSideBySide),p._containerDomElement.style.position="relative",p._containerDomElement.style.height="100%",p._domElement.appendChild(p._containerDomElement),p._overviewViewportDomElement=Ff(document.createElement("div")),p._overviewViewportDomElement.setClassName("diffViewport"),p._overviewViewportDomElement.setPosition("absolute"),p._overviewDomElement=document.createElement("div"),p._overviewDomElement.className="diffOverview",p._overviewDomElement.style.position="absolute",p._overviewDomElement.appendChild(p._overviewViewportDomElement.domNode),p._register(co(p._overviewDomElement,"mousedown",(function(e){p.modifiedEditor.delegateVerticalScrollbarMouseDown(e)}))),p._containerDomElement.appendChild(p._overviewDomElement),p._originalDomNode=document.createElement("div"),p._originalDomNode.className="editor original",p._originalDomNode.style.position="absolute",p._originalDomNode.style.height="100%",p._containerDomElement.appendChild(p._originalDomNode),p._modifiedDomNode=document.createElement("div"),p._modifiedDomNode.className="editor modified",p._modifiedDomNode.style.position="absolute",p._modifiedDomNode.style.height="100%",p._containerDomElement.appendChild(p._modifiedDomNode),p._beginUpdateDecorationsTimeout=-1,p._currentlyChangingViewZones=!1,p._diffComputationToken=0,p._originalEditorState=new RD(d,o),p._modifiedEditorState=new RD(d,o),p._isVisible=!0,p._isHandlingScrollEvent=!1,p._elementSizeObserver=p._register(new nf(p._containerDomElement,void 0,(function(){return p._onDidContainerSizeChanged()}))),i.automaticLayout&&p._elementSizeObserver.startObserving(),p._diffComputationResult=null;var f=p._contextKeyService.createScoped();f.createKey("isInDiffLeftEditor",!0);var g=new fx;g.set(qh,f);var m=a.createChild(g),v=p._contextKeyService.createScoped();v.createKey("isInDiffRightEditor",!0);var _=new fx;_.set(qh,v);var y=a.createChild(_);p.originalEditor=p._createLeftHandSideEditor(i,m),p.modifiedEditor=p._createRightHandSideEditor(i,y),p._originalOverviewRuler=null,p._modifiedOverviewRuler=null,p._reviewPane=new wD(p),p._containerDomElement.appendChild(p._reviewPane.domNode.domNode),p._containerDomElement.appendChild(p._reviewPane.shadow.domNode),p._containerDomElement.appendChild(p._reviewPane.actionBarContainer.domNode),p._enableSplitViewResizing=!0,void 0!==i.enableSplitViewResizing&&(p._enableSplitViewResizing=i.enableSplitViewResizing),p._renderSideBySide?p._setStrategy(new jD(p._createDataSource(),p._enableSplitViewResizing)):p._setStrategy(new KD(p._createDataSource(),p._enableSplitViewResizing)),p._register(l.onThemeChange((function(e){p._strategy&&p._strategy.applyColors(e)&&p._updateDecorationsRunner.schedule(),p._containerDomElement.className=t._getClassName(p._themeService.getTheme(),p._renderSideBySide)})));for(var b=0,w=_f.getDiffEditorContributions();b<w.length;b++){var C=w[b];try{p._register(a.createInstance(C.ctor,p))}catch(e){De(e)}}return p._codeEditorService.addDiffEditor(p),p}return MD(t,e),t.prototype._setState=function(e){this._state!==e&&(this._state=e,this._updatingDiffProgress&&(this._updatingDiffProgress.done(),this._updatingDiffProgress=null),1===this._state&&(this._updatingDiffProgress=this._editorProgressService.show(!0,1e3)))},t.prototype.hasWidgetFocus=function(){return Fo(document.activeElement,this._domElement)},t.prototype.diffReviewNext=function(){this._reviewPane.next()},t.prototype.diffReviewPrev=function(){this._reviewPane.prev()},t._getClassName=function(e,t){var n="monaco-diff-editor monaco-editor-background ";return t&&(n+="side-by-side "),n+=mg(e.type)},t.prototype._recreateOverviewRulers=function(){this._originalOverviewRuler&&(this._overviewDomElement.removeChild(this._originalOverviewRuler.getDomNode()),this._originalOverviewRuler.dispose()),this.originalEditor.hasModel()&&(this._originalOverviewRuler=this.originalEditor.createOverviewRuler("original diffOverviewRuler"),this._overviewDomElement.appendChild(this._originalOverviewRuler.getDomNode())),this._modifiedOverviewRuler&&(this._overviewDomElement.removeChild(this._modifiedOverviewRuler.getDomNode()),this._modifiedOverviewRuler.dispose()),this.modifiedEditor.hasModel()&&(this._modifiedOverviewRuler=this.modifiedEditor.createOverviewRuler("modified diffOverviewRuler"),this._overviewDomElement.appendChild(this._modifiedOverviewRuler.getDomNode())),this._layoutOverviewRulers()},t.prototype._createLeftHandSideEditor=function(e,t){var n=this,i=this._createInnerEditor(t,this._originalDomNode,this._adjustOptionsForLeftHandSide(e,this._originalIsEditable));return this._register(i.onDidScrollChange((function(e){n._isHandlingScrollEvent||(e.scrollTopChanged||e.scrollLeftChanged||e.scrollHeightChanged)&&(n._isHandlingScrollEvent=!0,n.modifiedEditor.setScrollPosition({scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}),n._isHandlingScrollEvent=!1,n._layoutOverviewViewport())}))),this._register(i.onDidChangeViewZones((function(){n._onViewZonesChanged()}))),this._register(i.onDidChangeModelContent((function(){n._isVisible&&n._beginUpdateDecorationsSoon()}))),i},t.prototype._createRightHandSideEditor=function(e,t){var n=this,i=this._createInnerEditor(t,this._modifiedDomNode,this._adjustOptionsForRightHandSide(e));return this._register(i.onDidScrollChange((function(e){n._isHandlingScrollEvent||(e.scrollTopChanged||e.scrollLeftChanged||e.scrollHeightChanged)&&(n._isHandlingScrollEvent=!0,n.originalEditor.setScrollPosition({scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}),n._isHandlingScrollEvent=!1,n._layoutOverviewViewport())}))),this._register(i.onDidChangeViewZones((function(){n._onViewZonesChanged()}))),this._register(i.onDidChangeConfiguration((function(e){e.hasChanged(34)&&i.getModel()&&n._onViewZonesChanged()}))),this._register(i.onDidChangeModelContent((function(){n._isVisible&&n._beginUpdateDecorationsSoon()}))),this._register(i.onDidChangeModelOptions((function(e){e.tabSize&&n._updateDecorationsRunner.schedule()}))),i},t.prototype._createInnerEditor=function(e,t,n){return e.createInstance(Fx,t,n,{})},t.prototype.dispose=function(){this._codeEditorService.removeDiffEditor(this),-1!==this._beginUpdateDecorationsTimeout&&(window.clearTimeout(this._beginUpdateDecorationsTimeout),this._beginUpdateDecorationsTimeout=-1),this._cleanViewZonesAndDecorations(),this._originalOverviewRuler&&(this._overviewDomElement.removeChild(this._originalOverviewRuler.getDomNode()),this._originalOverviewRuler.dispose()),this._modifiedOverviewRuler&&(this._overviewDomElement.removeChild(this._modifiedOverviewRuler.getDomNode()),this._modifiedOverviewRuler.dispose()),this._overviewDomElement.removeChild(this._overviewViewportDomElement.domNode),this._containerDomElement.removeChild(this._overviewDomElement),this._containerDomElement.removeChild(this._originalDomNode),this.originalEditor.dispose(),this._containerDomElement.removeChild(this._modifiedDomNode),this.modifiedEditor.dispose(),this._strategy.dispose(),this._containerDomElement.removeChild(this._reviewPane.domNode.domNode),this._containerDomElement.removeChild(this._reviewPane.shadow.domNode),this._containerDomElement.removeChild(this._reviewPane.actionBarContainer.domNode),this._reviewPane.dispose(),this._domElement.removeChild(this._containerDomElement),this._onDidDispose.fire(),e.prototype.dispose.call(this)},t.prototype.getId=function(){return this.getEditorType()+":"+this.id},t.prototype.getEditorType=function(){return Ha.IDiffEditor},t.prototype.getLineChanges=function(){return this._diffComputationResult?this._diffComputationResult.changes:null},t.prototype.getOriginalEditor=function(){return this.originalEditor},t.prototype.getModifiedEditor=function(){return this.modifiedEditor},t.prototype.updateOptions=function(e){var n=!1;void 0!==e.renderSideBySide&&this._renderSideBySide!==e.renderSideBySide&&(this._renderSideBySide=e.renderSideBySide,n=!0),void 0!==e.maxComputationTime&&(this._maxComputationTime=e.maxComputationTime,this._isVisible&&this._beginUpdateDecorationsSoon());var i=!1;void 0!==e.ignoreTrimWhitespace&&this._ignoreTrimWhitespace!==e.ignoreTrimWhitespace&&(this._ignoreTrimWhitespace=e.ignoreTrimWhitespace,i=!0),void 0!==e.renderIndicators&&this._renderIndicators!==e.renderIndicators&&(this._renderIndicators=e.renderIndicators,i=!0),i&&this._beginUpdateDecorations(),void 0!==e.originalEditable&&(this._originalIsEditable=Boolean(e.originalEditable)),this.modifiedEditor.updateOptions(this._adjustOptionsForRightHandSide(e)),this.originalEditor.updateOptions(this._adjustOptionsForLeftHandSide(e,this._originalIsEditable)),void 0!==e.enableSplitViewResizing&&(this._enableSplitViewResizing=e.enableSplitViewResizing),this._strategy.setEnableSplitViewResizing(this._enableSplitViewResizing),n&&(this._renderSideBySide?this._setStrategy(new jD(this._createDataSource(),this._enableSplitViewResizing)):this._setStrategy(new KD(this._createDataSource(),this._enableSplitViewResizing)),this._containerDomElement.className=t._getClassName(this._themeService.getTheme(),this._renderSideBySide))},t.prototype.getModel=function(){return{original:this.originalEditor.getModel(),modified:this.modifiedEditor.getModel()}},t.prototype.setModel=function(e){if(e&&(!e.original||!e.modified))throw new Error(e.original?"DiffEditorWidget.setModel: Modified model is null":"DiffEditorWidget.setModel: Original model is null");this._cleanViewZonesAndDecorations(),this.originalEditor.setModel(e?e.original:null),this.modifiedEditor.setModel(e?e.modified:null),this._updateDecorationsRunner.cancel(),e&&(this.originalEditor.setScrollTop(0),this.modifiedEditor.setScrollTop(0)),this._diffComputationResult=null,this._diffComputationToken++,this._setState(0),e&&(this._recreateOverviewRulers(),this._beginUpdateDecorations()),this._layoutOverviewViewport()},t.prototype.getDomNode=function(){return this._domElement},t.prototype.getVisibleColumnFromPosition=function(e){return this.modifiedEditor.getVisibleColumnFromPosition(e)},t.prototype.getPosition=function(){return this.modifiedEditor.getPosition()},t.prototype.setPosition=function(e){this.modifiedEditor.setPosition(e)},t.prototype.revealLine=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealLine(e,t)},t.prototype.revealLineInCenter=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealLineInCenter(e,t)},t.prototype.revealLineInCenterIfOutsideViewport=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealLineInCenterIfOutsideViewport(e,t)},t.prototype.revealPosition=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealPosition(e,t)},t.prototype.revealPositionInCenter=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealPositionInCenter(e,t)},t.prototype.revealPositionInCenterIfOutsideViewport=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealPositionInCenterIfOutsideViewport(e,t)},t.prototype.getSelection=function(){return this.modifiedEditor.getSelection()},t.prototype.getSelections=function(){return this.modifiedEditor.getSelections()},t.prototype.setSelection=function(e){this.modifiedEditor.setSelection(e)},t.prototype.setSelections=function(e){this.modifiedEditor.setSelections(e)},t.prototype.revealLines=function(e,t,n){void 0===n&&(n=0),this.modifiedEditor.revealLines(e,t,n)},t.prototype.revealLinesInCenter=function(e,t,n){void 0===n&&(n=0),this.modifiedEditor.revealLinesInCenter(e,t,n)},t.prototype.revealLinesInCenterIfOutsideViewport=function(e,t,n){void 0===n&&(n=0),this.modifiedEditor.revealLinesInCenterIfOutsideViewport(e,t,n)},t.prototype.revealRange=function(e,t,n,i){void 0===t&&(t=0),void 0===n&&(n=!1),void 0===i&&(i=!0),this.modifiedEditor.revealRange(e,t,n,i)},t.prototype.revealRangeInCenter=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealRangeInCenter(e,t)},t.prototype.revealRangeInCenterIfOutsideViewport=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealRangeInCenterIfOutsideViewport(e,t)},t.prototype.revealRangeAtTop=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealRangeAtTop(e,t)},t.prototype.getSupportedActions=function(){return this.modifiedEditor.getSupportedActions()},t.prototype.saveViewState=function(){return{original:this.originalEditor.saveViewState(),modified:this.modifiedEditor.saveViewState()}},t.prototype.restoreViewState=function(e){if(e.original&&e.modified){var t=e;this.originalEditor.restoreViewState(t.original),this.modifiedEditor.restoreViewState(t.modified)}},t.prototype.layout=function(e){this._elementSizeObserver.observe(e)},t.prototype.focus=function(){this.modifiedEditor.focus()},t.prototype.hasTextFocus=function(){return this.originalEditor.hasTextFocus()||this.modifiedEditor.hasTextFocus()},t.prototype.trigger=function(e,t,n){this.modifiedEditor.trigger(e,t,n)},t.prototype.changeDecorations=function(e){return this.modifiedEditor.changeDecorations(e)},t.prototype._onDidContainerSizeChanged=function(){this._doLayout()},t.prototype._getReviewHeight=function(){return this._reviewPane.isVisible()?this._elementSizeObserver.getHeight():0},t.prototype._layoutOverviewRulers=function(){if(this._originalOverviewRuler&&this._modifiedOverviewRuler){var e=this._elementSizeObserver.getHeight(),n=this._getReviewHeight(),i=t.ENTIRE_DIFF_OVERVIEW_WIDTH-2*t.ONE_OVERVIEW_WIDTH;this.modifiedEditor.getLayoutInfo()&&(this._originalOverviewRuler.setLayout({top:0,width:t.ONE_OVERVIEW_WIDTH,right:i+t.ONE_OVERVIEW_WIDTH,height:e-n}),this._modifiedOverviewRuler.setLayout({top:0,right:0,width:t.ONE_OVERVIEW_WIDTH,height:e-n}))}},t.prototype._onViewZonesChanged=function(){this._currentlyChangingViewZones||this._updateDecorationsRunner.schedule()},t.prototype._beginUpdateDecorationsSoon=function(){var e=this;-1!==this._beginUpdateDecorationsTimeout&&(window.clearTimeout(this._beginUpdateDecorationsTimeout),this._beginUpdateDecorationsTimeout=-1),this._beginUpdateDecorationsTimeout=window.setTimeout((function(){return e._beginUpdateDecorations()}),t.UPDATE_DIFF_DECORATIONS_DELAY)},t._equals=function(e,t){return!e&&!t||!(!e||!t)&&e.toString()===t.toString()},t.prototype._beginUpdateDecorations=function(){var e=this;this._beginUpdateDecorationsTimeout=-1;var n=this.originalEditor.getModel(),i=this.modifiedEditor.getModel();if(n&&i){this._diffComputationToken++;var o=this._diffComputationToken;this._setState(1),this._editorWorkerService.canComputeDiff(n.uri,i.uri)?this._editorWorkerService.computeDiff(n.uri,i.uri,this._ignoreTrimWhitespace,this._maxComputationTime).then((function(t){o===e._diffComputationToken&&n===e.originalEditor.getModel()&&i===e.modifiedEditor.getModel()&&(e._setState(2),e._diffComputationResult=t,e._updateDecorationsRunner.schedule(),e._onDidUpdateDiff.fire())}),(function(t){o===e._diffComputationToken&&n===e.originalEditor.getModel()&&i===e.modifiedEditor.getModel()&&(e._setState(2),e._diffComputationResult=null,e._updateDecorationsRunner.schedule())})):t._equals(n.uri,this._lastOriginalWarning)&&t._equals(i.uri,this._lastModifiedWarning)||(this._lastOriginalWarning=n.uri,this._lastModifiedWarning=i.uri,this._notificationService.warn(r("diff.tooLarge","Cannot compare files because one file is too large.")))}},t.prototype._cleanViewZonesAndDecorations=function(){this._originalEditorState.clean(this.originalEditor),this._modifiedEditorState.clean(this.modifiedEditor)},t.prototype._updateDecorations=function(){if(this.originalEditor.getModel()&&this.modifiedEditor.getModel()&&this._originalOverviewRuler&&this._modifiedOverviewRuler){var e=this._diffComputationResult?this._diffComputationResult.changes:[],t=this._originalEditorState.getForeignViewZones(this.originalEditor.getWhitespaces()),n=this._modifiedEditorState.getForeignViewZones(this.modifiedEditor.getWhitespaces()),i=this._strategy.getEditorsDiffDecorations(e,this._ignoreTrimWhitespace,this._renderIndicators,t,n,this.originalEditor,this.modifiedEditor);try{this._currentlyChangingViewZones=!0,this._originalEditorState.apply(this.originalEditor,this._originalOverviewRuler,i.original,!1),this._modifiedEditorState.apply(this.modifiedEditor,this._modifiedOverviewRuler,i.modified,!0)}finally{this._currentlyChangingViewZones=!1}}},t.prototype._adjustOptionsForSubEditor=function(e){var t=xa(e||{});return t.inDiffEditor=!0,t.wordWrap="off",t.wordWrapMinified=!1,t.automaticLayout=!1,t.scrollbar=t.scrollbar||{},t.scrollbar.vertical="visible",t.folding=!1,t.codeLens=!1,t.fixedOverflowWidgets=!0,t.minimap||(t.minimap={}),t.minimap.enabled=!1,t},t.prototype._adjustOptionsForLeftHandSide=function(e,t){var n=this._adjustOptionsForSubEditor(e);return n.readOnly=!t,n.extraEditorClassName="original-in-monaco-diff-editor",n},t.prototype._adjustOptionsForRightHandSide=function(e){var n=this._adjustOptionsForSubEditor(e);return n.revealHorizontalRightPadding=Le.revealHorizontalRightPadding.defaultValue+t.ENTIRE_DIFF_OVERVIEW_WIDTH,n.scrollbar.verticalHasArrows=!1,n.extraEditorClassName="modified-in-monaco-diff-editor",n},t.prototype.doLayout=function(){this._elementSizeObserver.observe(),this._doLayout()},t.prototype._doLayout=function(){var e=this._elementSizeObserver.getWidth(),n=this._elementSizeObserver.getHeight(),i=this._getReviewHeight(),o=this._strategy.layout();this._originalDomNode.style.width=o+"px",this._originalDomNode.style.left="0px",this._modifiedDomNode.style.width=e-o+"px",this._modifiedDomNode.style.left=o+"px",this._overviewDomElement.style.top="0px",this._overviewDomElement.style.height=n-i+"px",this._overviewDomElement.style.width=t.ENTIRE_DIFF_OVERVIEW_WIDTH+"px",this._overviewDomElement.style.left=e-t.ENTIRE_DIFF_OVERVIEW_WIDTH+"px",this._overviewViewportDomElement.setWidth(t.ENTIRE_DIFF_OVERVIEW_WIDTH),this._overviewViewportDomElement.setHeight(30),this.originalEditor.layout({width:o,height:n-i}),this.modifiedEditor.layout({width:e-o-t.ENTIRE_DIFF_OVERVIEW_WIDTH,height:n-i}),(this._originalOverviewRuler||this._modifiedOverviewRuler)&&this._layoutOverviewRulers(),this._reviewPane.layout(n-i,e,i),this._layoutOverviewViewport()},t.prototype._layoutOverviewViewport=function(){var e=this._computeOverviewViewport();e?(this._overviewViewportDomElement.setTop(e.top),this._overviewViewportDomElement.setHeight(e.height)):(this._overviewViewportDomElement.setTop(0),this._overviewViewportDomElement.setHeight(0))},t.prototype._computeOverviewViewport=function(){var e=this.modifiedEditor.getLayoutInfo();if(!e)return null;var t=this.modifiedEditor.getScrollTop(),n=this.modifiedEditor.getScrollHeight(),i=Math.max(0,e.height),o=Math.max(0,i-0),r=n>0?o/n:0;return{height:Math.max(0,Math.floor(e.height*r)),top:Math.floor(t*r)}},t.prototype._createDataSource=function(){var e=this;return{getWidth:function(){return e._elementSizeObserver.getWidth()},getHeight:function(){return e._elementSizeObserver.getHeight()-e._getReviewHeight()},getContainerDomNode:function(){return e._containerDomElement},relayoutEditors:function(){e._doLayout()},getOriginalEditor:function(){return e.originalEditor},getModifiedEditor:function(){return e.modifiedEditor}}},t.prototype._setStrategy=function(e){this._strategy&&this._strategy.dispose(),this._strategy=e,e.applyColors(this._themeService.getTheme()),this._diffComputationResult&&this._updateDecorations(),this._doLayout()},t.prototype._getLineChangeAtOrBeforeLineNumber=function(e,t){var n=this._diffComputationResult?this._diffComputationResult.changes:[];if(0===n.length||e<t(n[0]))return null;for(var i=0,o=n.length-1;i<o;){var r=Math.floor((i+o)/2),s=t(n[r]),a=r+1<=o?t(n[r+1]):1073741824;e<s?o=r-1:e>=a?i=r+1:(i=r,o=r)}return n[i]},t.prototype._getEquivalentLineForOriginalLineNumber=function(e){var t=this._getLineChangeAtOrBeforeLineNumber(e,(function(e){return e.originalStartLineNumber}));if(!t)return e;var n=t.originalStartLineNumber+(t.originalEndLineNumber>0?-1:0),i=t.modifiedStartLineNumber+(t.modifiedEndLineNumber>0?-1:0),o=t.originalEndLineNumber>0?t.originalEndLineNumber-t.originalStartLineNumber+1:0,r=t.modifiedEndLineNumber>0?t.modifiedEndLineNumber-t.modifiedStartLineNumber+1:0,s=e-n;return s<=o?i+Math.min(s,r):i+r-o+s},t.prototype._getEquivalentLineForModifiedLineNumber=function(e){var t=this._getLineChangeAtOrBeforeLineNumber(e,(function(e){return e.modifiedStartLineNumber}));if(!t)return e;var n=t.originalStartLineNumber+(t.originalEndLineNumber>0?-1:0),i=t.modifiedStartLineNumber+(t.modifiedEndLineNumber>0?-1:0),o=t.originalEndLineNumber>0?t.originalEndLineNumber-t.originalStartLineNumber+1:0,r=t.modifiedEndLineNumber>0?t.modifiedEndLineNumber-t.modifiedStartLineNumber+1:0,s=e-i;return s<=r?n+Math.min(s,o):n+o-r+s},t.prototype.getDiffLineInformationForOriginal=function(e){return this._diffComputationResult?{equivalentLineNumber:this._getEquivalentLineForOriginalLineNumber(e)}:null},t.prototype.getDiffLineInformationForModified=function(e){return this._diffComputationResult?{equivalentLineNumber:this._getEquivalentLineForModifiedLineNumber(e)}:null},t.ONE_OVERVIEW_WIDTH=15,t.ENTIRE_DIFF_OVERVIEW_WIDTH=30,t.UPDATE_DIFF_DECORATIONS_DELAY=200,t=TD([PD(3,el),PD(4,qh),PD(5,In),PD(6,Pn),PD(7,fg),PD(8,ap),PD(9,DD),PD(10,OD)],t)}(He),WD=function(e){function t(t){var n=e.call(this)||this;return n._dataSource=t,n._insertColor=null,n._removeColor=null,n}return MD(t,e),t.prototype.applyColors=function(e){var t=(e.getColor(jy)||Hy).transparent(2),n=(e.getColor(Uy)||zy).transparent(2),i=!t.equals(this._insertColor)||!n.equals(this._removeColor);return this._insertColor=t,this._removeColor=n,i},t.prototype.getEditorsDiffDecorations=function(e,t,n,i,o,r,s){o=o.sort((function(e,t){return e.afterLineNumber-t.afterLineNumber})),i=i.sort((function(e,t){return e.afterLineNumber-t.afterLineNumber}));var a=this._getViewZones(e,i,o,r,s,n),u=this._getOriginalEditorDecorations(e,t,n,r,s),l=this._getModifiedEditorDecorations(e,t,n,r,s);return{original:{decorations:u.decorations,overviewZones:u.overviewZones,zones:a.original},modified:{decorations:l.decorations,overviewZones:l.overviewZones,zones:a.modified}}},t}(He),VD=function(){function e(e){this._source=e,this._index=-1,this.current=null,this.advance()}return e.prototype.advance=function(){this._index++,this._index<this._source.length?this.current=this._source[this._index]:this.current=null},e}(),BD=function(){function e(e,t,n,i,o){this.lineChanges=e,this.originalForeignVZ=t,this.originalLineHeight=n,this.modifiedForeignVZ=i,this.modifiedLineHeight=o}return e.prototype.getViewZones=function(){for(var t=[],n=[],i=0,o=0,r=0,s=0,a=0,u=0,l=function(e,t){return e.afterLineNumber-t.afterLineNumber},c=function(e,t){if(null===t.domNode&&e.length>0){var n=e[e.length-1];if(n.afterLineNumber===t.afterLineNumber&&null===n.domNode)return void(n.heightInLines+=t.heightInLines)}e.push(t)},d=new VD(this.modifiedForeignVZ),h=new VD(this.originalForeignVZ),p=0,f=this.lineChanges.length;p<=f;p++){var g=p<f?this.lineChanges[p]:null;null!==g?(r=g.originalStartLineNumber+(g.originalEndLineNumber>0?-1:0),s=g.modifiedStartLineNumber+(g.modifiedEndLineNumber>0?-1:0),o=g.originalEndLineNumber>0?g.originalEndLineNumber-g.originalStartLineNumber+1:0,i=g.modifiedEndLineNumber>0?g.modifiedEndLineNumber-g.modifiedStartLineNumber+1:0,a=Math.max(g.originalStartLineNumber,g.originalEndLineNumber),u=Math.max(g.modifiedStartLineNumber,g.modifiedEndLineNumber)):(a=r+=1e7+o,u=s+=1e7+i);for(var m,v=[],_=[];d.current&&d.current.afterLineNumber<=u;){var y=void 0;y=d.current.afterLineNumber<=s?r-s+d.current.afterLineNumber:a;var b=null;g&&g.modifiedStartLineNumber<=d.current.afterLineNumber&&d.current.afterLineNumber<=g.modifiedEndLineNumber&&(b=this._createOriginalMarginDomNodeForModifiedForeignViewZoneInAddedRegion()),v.push({afterLineNumber:y,heightInLines:d.current.height/this.modifiedLineHeight,domNode:null,marginDomNode:b}),d.advance()}for(;h.current&&h.current.afterLineNumber<=a;){y=void 0;y=h.current.afterLineNumber<=r?s-r+h.current.afterLineNumber:u,_.push({afterLineNumber:y,heightInLines:h.current.height/this.originalLineHeight,domNode:null}),h.advance()}if(null!==g&&GD(g))(m=this._produceOriginalFromDiff(g,o,i))&&v.push(m);if(null!==g&&ZD(g))(m=this._produceModifiedFromDiff(g,o,i))&&_.push(m);var w=0,C=0;for(v=v.sort(l),_=_.sort(l);w<v.length&&C<_.length;){var S=v[w],L=_[C],x=S.afterLineNumber-r,D=L.afterLineNumber-s;x<D?(c(t,S),w++):D<x?(c(n,L),C++):S.shouldNotShrink?(c(t,S),w++):L.shouldNotShrink?(c(n,L),C++):S.heightInLines>=L.heightInLines?(S.heightInLines-=L.heightInLines,C++):(L.heightInLines-=S.heightInLines,w++)}for(;w<v.length;)c(t,v[w]),w++;for(;C<_.length;)c(n,_[C]),C++}return{original:e._ensureDomNodes(t),modified:e._ensureDomNodes(n)}},e._ensureDomNodes=function(e){return e.map((function(e){var t;return e.domNode||(e.domNode=((t=document.createElement("div")).className="diagonal-fill",t)),e}))},e}();function HD(e,t,n,i,o){return{range:new wn(e,t,n,i),options:o}}var zD={charDelete:kv.register({className:"char-delete"}),charDeleteWholeLine:kv.register({className:"char-delete",isWholeLine:!0}),charInsert:kv.register({className:"char-insert"}),charInsertWholeLine:kv.register({className:"char-insert",isWholeLine:!0}),lineInsert:kv.register({className:"line-insert",marginClassName:"line-insert",isWholeLine:!0}),lineInsertWithSign:kv.register({className:"line-insert",linesDecorationsClassName:"insert-sign codicon codicon-add",marginClassName:"line-insert",isWholeLine:!0}),lineDelete:kv.register({className:"line-delete",marginClassName:"line-delete",isWholeLine:!0}),lineDeleteWithSign:kv.register({className:"line-delete",linesDecorationsClassName:"delete-sign codicon codicon-remove",marginClassName:"line-delete",isWholeLine:!0}),lineDeleteMargin:kv.register({marginClassName:"line-delete"})},jD=function(e){function t(t,n){var i=e.call(this,t)||this;return i._disableSash=!1===n,i._sashRatio=null,i._sashPosition=null,i._startSashPosition=null,i._sash=i._register(new Yx(i._dataSource.getContainerDomNode(),i)),i._disableSash&&(i._sash.state=0),i._sash.onDidStart((function(){return i.onSashDragStart()})),i._sash.onDidChange((function(e){return i.onSashDrag(e)})),i._sash.onDidEnd((function(){return i.onSashDragEnd()})),i._sash.onDidReset((function(){return i.onSashReset()})),i}return MD(t,e),t.prototype.setEnableSplitViewResizing=function(e){var t=!1===e;this._disableSash!==t&&(this._disableSash=t,this._sash.state=this._disableSash?0:3)},t.prototype.layout=function(e){void 0===e&&(e=this._sashRatio);var n=this._dataSource.getWidth()-FD.ENTIRE_DIFF_OVERVIEW_WIDTH,i=Math.floor((e||.5)*n),o=Math.floor(.5*n);return i=this._disableSash?o:i||o,n>2*t.MINIMUM_EDITOR_WIDTH?(i<t.MINIMUM_EDITOR_WIDTH&&(i=t.MINIMUM_EDITOR_WIDTH),i>n-t.MINIMUM_EDITOR_WIDTH&&(i=n-t.MINIMUM_EDITOR_WIDTH)):i=o,this._sashPosition!==i&&(this._sashPosition=i,this._sash.layout()),this._sashPosition},t.prototype.onSashDragStart=function(){this._startSashPosition=this._sashPosition},t.prototype.onSashDrag=function(e){var t=this._dataSource.getWidth()-FD.ENTIRE_DIFF_OVERVIEW_WIDTH,n=this.layout((this._startSashPosition+(e.currentX-e.startX))/t);this._sashRatio=n/t,this._dataSource.relayoutEditors()},t.prototype.onSashDragEnd=function(){this._sash.layout()},t.prototype.onSashReset=function(){this._sashRatio=.5,this._dataSource.relayoutEditors(),this._sash.layout()},t.prototype.getVerticalSashTop=function(e){return 0},t.prototype.getVerticalSashLeft=function(e){return this._sashPosition},t.prototype.getVerticalSashHeight=function(e){return this._dataSource.getHeight()},t.prototype._getViewZones=function(e,t,n,i,o){return new UD(e,t,i.getOption(49),n,o.getOption(49)).getViewZones()},t.prototype._getOriginalEditorDecorations=function(e,t,n,i,o){for(var r=String(this._removeColor),s={decorations:[],overviewZones:[]},a=i.getModel(),u=0,l=e.length;u<l;u++){var c=e[u];if(ZD(c)&&(s.decorations.push({range:new wn(c.originalStartLineNumber,1,c.originalEndLineNumber,1073741824),options:n?zD.lineDeleteWithSign:zD.lineDelete}),GD(c)&&c.charChanges||s.decorations.push(HD(c.originalStartLineNumber,1,c.originalEndLineNumber,1073741824,zD.charDeleteWholeLine)),s.overviewZones.push(new nL(c.originalStartLineNumber,c.originalEndLineNumber,r)),c.charChanges))for(var d=0,h=c.charChanges.length;d<h;d++){var p=c.charChanges[d];if(ZD(p))if(t)for(var f=p.originalStartLineNumber;f<=p.originalEndLineNumber;f++){var g=void 0,m=void 0;g=f===p.originalStartLineNumber?p.originalStartColumn:a.getLineFirstNonWhitespaceColumn(f),m=f===p.originalEndLineNumber?p.originalEndColumn:a.getLineLastNonWhitespaceColumn(f),s.decorations.push(HD(f,g,f,m,zD.charDelete))}else s.decorations.push(HD(p.originalStartLineNumber,p.originalStartColumn,p.originalEndLineNumber,p.originalEndColumn,zD.charDelete))}}return s},t.prototype._getModifiedEditorDecorations=function(e,t,n,i,o){for(var r=String(this._insertColor),s={decorations:[],overviewZones:[]},a=o.getModel(),u=0,l=e.length;u<l;u++){var c=e[u];if(GD(c)&&(s.decorations.push({range:new wn(c.modifiedStartLineNumber,1,c.modifiedEndLineNumber,1073741824),options:n?zD.lineInsertWithSign:zD.lineInsert}),ZD(c)&&c.charChanges||s.decorations.push(HD(c.modifiedStartLineNumber,1,c.modifiedEndLineNumber,1073741824,zD.charInsertWholeLine)),s.overviewZones.push(new nL(c.modifiedStartLineNumber,c.modifiedEndLineNumber,r)),c.charChanges))for(var d=0,h=c.charChanges.length;d<h;d++){var p=c.charChanges[d];if(GD(p))if(t)for(var f=p.modifiedStartLineNumber;f<=p.modifiedEndLineNumber;f++){var g=void 0,m=void 0;g=f===p.modifiedStartLineNumber?p.modifiedStartColumn:a.getLineFirstNonWhitespaceColumn(f),m=f===p.modifiedEndLineNumber?p.modifiedEndColumn:a.getLineLastNonWhitespaceColumn(f),s.decorations.push(HD(f,g,f,m,zD.charInsert))}else s.decorations.push(HD(p.modifiedStartLineNumber,p.modifiedStartColumn,p.modifiedEndLineNumber,p.modifiedEndColumn,zD.charInsert))}}return s},t.MINIMUM_EDITOR_WIDTH=100,t}(WD),UD=function(e){function t(t,n,i,o,r){return e.call(this,t,n,i,o,r)||this}return MD(t,e),t.prototype._createOriginalMarginDomNodeForModifiedForeignViewZoneInAddedRegion=function(){return null},t.prototype._produceOriginalFromDiff=function(e,t,n){return n>t?{afterLineNumber:Math.max(e.originalStartLineNumber,e.originalEndLineNumber),heightInLines:n-t,domNode:null}:null},t.prototype._produceModifiedFromDiff=function(e,t,n){return t>n?{afterLineNumber:Math.max(e.modifiedStartLineNumber,e.modifiedEndLineNumber),heightInLines:t-n,domNode:null}:null},t}(BD),KD=function(e){function t(t,n){var i=e.call(this,t)||this;return i.decorationsLeft=t.getOriginalEditor().getLayoutInfo().decorationsLeft,i._register(t.getOriginalEditor().onDidLayoutChange((function(e){i.decorationsLeft!==e.decorationsLeft&&(i.decorationsLeft=e.decorationsLeft,t.relayoutEditors())}))),i}return MD(t,e),t.prototype.setEnableSplitViewResizing=function(e){},t.prototype._getViewZones=function(e,t,n,i,o,r){return new qD(e,t,n,i,o,r).getViewZones()},t.prototype._getOriginalEditorDecorations=function(e,t,n,i,o){for(var r=String(this._removeColor),s={decorations:[],overviewZones:[]},a=0,u=e.length;a<u;a++){var l=e[a];ZD(l)&&(s.decorations.push({range:new wn(l.originalStartLineNumber,1,l.originalEndLineNumber,1073741824),options:zD.lineDeleteMargin}),s.overviewZones.push(new nL(l.originalStartLineNumber,l.originalEndLineNumber,r)))}return s},t.prototype._getModifiedEditorDecorations=function(e,t,n,i,o){for(var r=String(this._insertColor),s={decorations:[],overviewZones:[]},a=o.getModel(),u=0,l=e.length;u<l;u++){var c=e[u];if(GD(c))if(s.decorations.push({range:new wn(c.modifiedStartLineNumber,1,c.modifiedEndLineNumber,1073741824),options:n?zD.lineInsertWithSign:zD.lineInsert}),s.overviewZones.push(new nL(c.modifiedStartLineNumber,c.modifiedEndLineNumber,r)),c.charChanges)for(var d=0,h=c.charChanges.length;d<h;d++){var p=c.charChanges[d];if(GD(p))if(t)for(var f=p.modifiedStartLineNumber;f<=p.modifiedEndLineNumber;f++){var g=void 0,m=void 0;g=f===p.modifiedStartLineNumber?p.modifiedStartColumn:a.getLineFirstNonWhitespaceColumn(f),m=f===p.modifiedEndLineNumber?p.modifiedEndColumn:a.getLineLastNonWhitespaceColumn(f),s.decorations.push(HD(f,g,f,m,zD.charInsert))}else s.decorations.push(HD(p.modifiedStartLineNumber,p.modifiedStartColumn,p.modifiedEndLineNumber,p.modifiedEndColumn,zD.charInsert))}else s.decorations.push(HD(c.modifiedStartLineNumber,1,c.modifiedEndLineNumber,1073741824,zD.charInsertWholeLine))}return s},t.prototype.layout=function(){return Math.max(5,this.decorationsLeft)},t}(WD),qD=function(e){function t(t,n,i,o,r,s){var a=e.call(this,t,n,o.getOption(49),i,r.getOption(49))||this;return a.originalModel=o.getModel(),a.modifiedEditorOptions=r.getOptions(),a.modifiedEditorTabSize=r.getModel().getOptions().tabSize,a.renderIndicators=s,a}return MD(t,e),t.prototype._createOriginalMarginDomNodeForModifiedForeignViewZoneInAddedRegion=function(){var e=document.createElement("div");return e.className="inline-added-margin-view-zone",e},t.prototype._produceOriginalFromDiff=function(e,t,n){var i=document.createElement("div");return i.className="inline-added-margin-view-zone",{afterLineNumber:Math.max(e.originalStartLineNumber,e.originalEndLineNumber),heightInLines:n,domNode:document.createElement("div"),marginDomNode:i}},t.prototype._produceModifiedFromDiff=function(e,t,n){var i=[];if(e.charChanges)for(var o=0,r=e.charChanges.length;o<r;o++){var s=e.charChanges[o];ZD(s)&&i.push(new sd(new wn(s.originalStartLineNumber,s.originalStartColumn,s.originalEndLineNumber,s.originalEndColumn),"char-delete",0))}for(var a=Fc(1e4),u=[],l=this.modifiedEditorOptions.get(107),c=this.modifiedEditorOptions.get(34),d=l.decorationsWidth,h=this.modifiedEditorOptions.get(49),p=c.typicalHalfwidthCharacterWidth,f=0,g=[],m=e.originalStartLineNumber;m<=e.originalEndLineNumber;m++)if(f=Math.max(f,this._renderOriginalLine(m-e.originalStartLineNumber,this.originalModel,this.modifiedEditorOptions,this.modifiedEditorTabSize,m,i,a)),g.push(this.originalModel.getLineContent(m)),this.renderIndicators){var v=m-e.originalStartLineNumber;u=u.concat(['<div class="delete-sign codicon codicon-remove" style="position:absolute;top:'+v*h+"px;width:"+d+"px;height:"+h+'px;right:0;"></div>'])}f+=this.modifiedEditorOptions.get(79);var _=document.createElement("div");_.className="view-lines line-delete",_.innerHTML=a.build(),af.applyFontInfoSlow(_,c);var y=document.createElement("div");return y.className="inline-deleted-margin-view-zone",y.innerHTML=u.join(""),af.applyFontInfoSlow(y,c),{shouldNotShrink:!0,afterLineNumber:0===e.modifiedEndLineNumber?e.modifiedStartLineNumber:e.modifiedStartLineNumber-1,heightInLines:t,minWidthInPx:f*p,domNode:_,marginDomNode:y,diff:{originalStartLineNumber:e.originalStartLineNumber,originalEndLineNumber:e.originalEndLineNumber,modifiedStartLineNumber:e.modifiedStartLineNumber,modifiedEndLineNumber:e.modifiedEndLineNumber,originalContent:g}}},t.prototype._renderOriginalLine=function(e,t,n,i,o,r,s){var a=t.getLineTokens(o),u=a.getLineContent(),l=n.get(34),c=jc.filter(r,o,1,u.length+1);s.appendASCIIString('<div class="view-line'),0===r.length&&s.appendASCIIString(" char-delete"),s.appendASCIIString('" style="top:'),s.appendASCIIString(String(e*n.get(49))),s.appendASCIIString('px;width:1000000px;">');var d=rd.isBasicASCII(u,t.mightContainNonBasicASCII()),h=rd.containsRTL(u,d,t.mightContainRTL()),p=Qc(new Yc(l.isMonospace&&!n.get(23),l.canUseHalfwidthRightwardsArrow,u,!1,d,h,0,a,c,i,0,l.spaceWidth,l.middotWidth,n.get(88),n.get(74),n.get(69),n.get(35)!==Y.OFF,null),s);s.appendASCIIString("</div>");var f=p.characterMapping.getAbsoluteOffsets();return f.length>0?f[f.length-1]:0},t}(BD);function GD(e){return e.modifiedEndLineNumber>0}function ZD(e){return e.originalEndLineNumber>0}yg((function(e,t){var n=e.getColor(jy);n&&(t.addRule(".monaco-editor .line-insert, .monaco-editor .char-insert { background-color: "+n+"; }"),t.addRule(".monaco-diff-editor .line-insert, .monaco-diff-editor .char-insert { background-color: "+n+"; }"),t.addRule(".monaco-editor .inline-added-margin-view-zone { background-color: "+n+"; }"));var i=e.getColor(Uy);i&&(t.addRule(".monaco-editor .line-delete, .monaco-editor .char-delete { background-color: "+i+"; }"),t.addRule(".monaco-diff-editor .line-delete, .monaco-diff-editor .char-delete { background-color: "+i+"; }"),t.addRule(".monaco-editor .inline-deleted-margin-view-zone { background-color: "+i+"; }"));var o=e.getColor(Ky);o&&t.addRule(".monaco-editor .line-insert, .monaco-editor .char-insert { border: 1px "+("hc"===e.type?"dashed":"solid")+" "+o+"; }");var r=e.getColor(qy);r&&t.addRule(".monaco-editor .line-delete, .monaco-editor .char-delete { border: 1px "+("hc"===e.type?"dashed":"solid")+" "+r+"; }");var s=e.getColor(iy);s&&t.addRule(".monaco-diff-editor.side-by-side .editor.modified { box-shadow: -6px 0 5px -5px "+s+"; }");var a=e.getColor(Gy);a&&t.addRule(".monaco-diff-editor.side-by-side .editor.modified { border-left: 1px solid "+a+"; }")}));var YD=Mn("themeService"),XD=Mn("keybindingService"),$D=Mn("clipboardService"),QD=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),JD=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},eN=function(e,t){return function(n,i){t(n,i,e)}},tN=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},nN=0,iN=!1;function oN(){var e;iN||(iN=!0,e=document.body,(zp=document.createElement("div")).className="monaco-aria-container",(jp=document.createElement("div")).className="monaco-alert",jp.setAttribute("role","alert"),jp.setAttribute("aria-atomic","true"),zp.appendChild(jp),(Up=document.createElement("div")).className="monaco-status",Up.setAttribute("role","status"),Up.setAttribute("aria-atomic","true"),zp.appendChild(Up),e.appendChild(zp))}var rN=function(e){function t(t,n,i,o,r,s,a,u,l,c){var d=this;return(n=n||{}).ariaLabel=n.ariaLabel||yp.editorViewAccessibleLabel,n.ariaLabel=n.ariaLabel+";"+(Vn?yp.accessibilityHelpMessageIE:yp.accessibilityHelpMessage),(d=e.call(this,t,n,{},i,o,r,s,u,l,c)||this)._standaloneKeybindingService=a instanceof Pp?a:null,oN(),d}return QD(t,e),t.prototype.addCommand=function(e,t,n){if(!this._standaloneKeybindingService)return console.warn("Cannot add command because the editor is configured with an unrecognized KeybindingService"),null;var i="DYNAMIC_"+ ++nN,o=Rh.deserialize(n);return this._standaloneKeybindingService.addDynamicKeybinding(i,e,t,o),i},t.prototype.createContextKey=function(e,t){return this._contextKeyService.createKey(e,t)},t.prototype.addAction=function(e){var t=this;if("string"!=typeof e.id||"string"!=typeof e.label||"function"!=typeof e.run)throw new Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");if(!this._standaloneKeybindingService)return console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),He.None;var n=e.id,i=e.label,o=Rh.and(Rh.equals("editorId",this.getId()),Rh.deserialize(e.precondition)),r=e.keybindings,s=Rh.and(o,Rh.deserialize(e.keybindingContext)),a=e.contextMenuGroupId||null,u=e.contextMenuOrder||0,l=function(n){for(var i=[],o=1;o<arguments.length;o++)i[o-1]=arguments[o];return Promise.resolve(e.run.apply(e,tN([t],i)))},c=new Be,d=this.getId()+":"+n;if(c.add(ca.registerCommand(d,l)),a){var h={command:{id:d,title:i},when:o,group:a,order:u};c.add(bf.appendMenuItem(7,h))}if(Array.isArray(r))for(var p=0,f=r;p<f.length;p++){var g=f[p];c.add(this._standaloneKeybindingService.addDynamicKeybinding(d,g,l,s))}var m=new VL(d,i,i,o,l,this._contextKeyService);return this._actions[n]=m,c.add(We((function(){delete t._actions[n]}))),c},t=JD([eN(2,In),eN(3,Pn),eN(4,la),eN(5,qh),eN(6,XD),eN(7,fg),eN(8,ap),eN(9,gx)],t)}(Fx),sN=function(e){function t(t,n,i,o,r,s,a,u,l,c,d,h,p){var f=this;Hp(h,n,!1);var g=c.registerEditorContainer(t);"string"==typeof(n=n||{}).theme&&c.setTheme(n.theme);var m,v=n.model;if(delete n.model,(f=e.call(this,t,n,o,r,s,a,u,c,d,p)||this)._contextViewService=l,f._configurationService=h,f._register(i),f._register(g),void 0===v?(m=self.monaco.editor.createModel(n.value||"",n.language||"text/plain"),f._ownsModel=!0):(m=v,f._ownsModel=!1),f._attachModel(m),m){var _={oldModelUrl:null,newModelUrl:m.uri};f._onDidChangeModel.fire(_)}return f}return QD(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.updateOptions=function(t){Hp(this._configurationService,t,!1),e.prototype.updateOptions.call(this,t)},t.prototype._attachModel=function(t){e.prototype._attachModel.call(this,t),this._modelData&&this._contextViewService.setContainer(this._modelData.view.domNode.domNode)},t.prototype._postDetachModelCleanup=function(t){e.prototype._postDetachModelCleanup.call(this,t),t&&this._ownsModel&&(t.dispose(),this._ownsModel=!1)},t=JD([eN(3,In),eN(4,Pn),eN(5,la),eN(6,qh),eN(7,XD),eN(8,xD),eN(9,YD),eN(10,ap),eN(11,wh),eN(12,gx)],t)}(rN),aN=function(e){function t(t,n,i,o,r,s,a,u,l,c,d,h,p,f,g){var m=this;Hp(h,n,!0);var v=c.registerEditorContainer(t);return"string"==typeof(n=n||{}).theme&&(n.theme=c.setTheme(n.theme)),(m=e.call(this,t,n,g,u,r,o,l,c,d,p,f)||this)._contextViewService=a,m._configurationService=h,m._register(i),m._register(v),m._contextViewService.setContainer(m._containerDomElement),m}return QD(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.updateOptions=function(t){Hp(this._configurationService,t,!0),e.prototype.updateOptions.call(this,t)},t.prototype._createInnerEditor=function(e,t,n){return e.createInstance(rN,t,n)},t.prototype.getOriginalEditor=function(){return e.prototype.getOriginalEditor.call(this)},t.prototype.getModifiedEditor=function(){return e.prototype.getModifiedEditor.call(this)},t.prototype.addCommand=function(e,t,n){return this.getModifiedEditor().addCommand(e,t,n)},t.prototype.createContextKey=function(e,t){return this.getModifiedEditor().createContextKey(e,t)},t.prototype.addAction=function(e){return this.getModifiedEditor().addAction(e)},t=JD([eN(3,In),eN(4,qh),eN(5,XD),eN(6,xD),eN(7,el),eN(8,Pn),eN(9,YD),eN(10,ap),eN(11,wh),eN(12,DD),eN(13,OD),eN(14,Tn($D))],t)}(FD),uN=Mn("IWorkspaceEditService"),lN=Mn("modeService"),cN=function(){function e(e){this._languageIdentifier=e}return e.prototype.getId=function(){return this._languageIdentifier.language},e}(),dN=[],hN=[],pN=[];function fN(e,t){void 0===t&&(t=!1);var n=function(e){return{id:e.id,mime:e.mime,filename:e.filename,extension:e.extension,filepattern:e.filepattern,firstline:e.firstline,userConfigured:e.userConfigured,filenameLowercase:e.filename?e.filename.toLowerCase():void 0,extensionLowercase:e.extension?e.extension.toLowerCase():void 0,filepatternLowercase:e.filepattern?e.filepattern.toLowerCase():void 0,filepatternOnPath:!!e.filepattern&&e.filepattern.indexOf(hs.sep)>=0}}(e);dN.push(n),n.userConfigured?pN.push(n):hN.push(n),t&&!n.userConfigured&&dN.forEach((function(e){e.mime===n.mime||e.userConfigured||(n.extension&&e.extension===n.extension&&console.warn("Overwriting extension <<"+n.extension+">> to now point to mime <<"+n.mime+">>"),n.filename&&e.filename===n.filename&&console.warn("Overwriting filename <<"+n.filename+">> to now point to mime <<"+n.mime+">>"),n.filepattern&&e.filepattern===n.filepattern&&console.warn("Overwriting filepattern <<"+n.filepattern+">> to now point to mime <<"+n.mime+">>"),n.firstline&&e.firstline===n.firstline&&console.warn("Overwriting firstline <<"+n.firstline+">> to now point to mime <<"+n.mime+">>"))}))}function gN(e,t){var n;if(e)switch(e.scheme){case Ci.file:n=e.fsPath;break;case Ci.data:n=bs.parseMetaData(e).get(bs.META_DATA_LABEL);break;default:n=e.path}if(!n)return["application/unknown"];n=n.toLowerCase();var i=vs(n),o=mN(n,i,pN);if(o)return[o,"text/plain"];var r=mN(n,i,hN);if(r)return[r,"text/plain"];if(t){var s=function(e){qr(e)&&(e=e.substr(1));if(e.length>0)for(var t=dN.length-1;t>=0;t--){var n=dN[t];if(n.firstline){var i=e.match(n.firstline);if(i&&i.length>0)return n.mime}}return null}(t);if(s)return[s,"text/plain"]}return["application/unknown"]}function mN(e,t,n){for(var i=null,o=null,r=null,s=n.length-1;s>=0;s--){var a=n[s];if(t===a.filenameLowercase){i=a;break}if(a.filepattern&&(!o||a.filepattern.length>o.filepattern.length)){var u=a.filepatternOnPath?e:t;uu(a.filepatternLowercase,u)&&(o=a)}a.extension&&(!r||a.extension.length>r.extension.length)&&_r(t,a.extensionLowercase)&&(r=a)}return i?i.mime:o?o.mime:r?r.mime:null}var vN=new(function(){function e(){this._onDidChangeLanguages=new nt,this.onDidChangeLanguages=this._onDidChangeLanguages.event,this._languages=[],this._dynamicLanguages=[]}return e.prototype.registerLanguage=function(e){this._languages.push(e),this._onDidChangeLanguages.fire(void 0)},e.prototype.getLanguages=function(){return[].concat(this._languages).concat(this._dynamicLanguages)},e}());Td.add("editor.modesRegistry",vN);var _N=new bu("plaintext",1);vN.registerLanguage({id:"plaintext",extensions:[".txt",".gitignore"],aliases:[r("plainText.alias","Plain Text"),"text"],mimetypes:["text/plain"]}),Ol.register(_N,{brackets:[["(",")"],["[","]"],["{","}"]],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],folding:{offSide:!0}});var yN=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),bN=Object.prototype.hasOwnProperty,wN=function(e){function t(t,n){void 0===t&&(t=!0),void 0===n&&(n=!1);var i=e.call(this)||this;return i._onDidChange=i._register(new nt),i.onDidChange=i._onDidChange.event,i._warnOnOverwrite=n,i._nextLanguageId2=1,i._languageIdToLanguage=[],i._languageToLanguageId=Object.create(null),i._languages={},i._mimeTypesMap={},i._nameMap={},i._lowercaseNameMap={},t&&(i._initializeFromRegistry(),i._register(vN.onDidChangeLanguages((function(e){return i._initializeFromRegistry()})))),i}return yN(t,e),t.prototype._initializeFromRegistry=function(){this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={};var e=vN.getLanguages();this._registerLanguages(e)},t.prototype._registerLanguages=function(e){for(var t=this,n=0,i=e;n<i.length;n++){var o=i[n];this._registerLanguage(o)}this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},Object.keys(this._languages).forEach((function(e){var n=t._languages[e];n.name&&(t._nameMap[n.name]=n.identifier),n.aliases.forEach((function(e){t._lowercaseNameMap[e.toLowerCase()]=n.identifier})),n.mimetypes.forEach((function(e){t._mimeTypesMap[e]=n.identifier}))})),Td.as(Ad).registerOverrideIdentifiers(vN.getLanguages().map((function(e){return e.id}))),this._onDidChange.fire()},t.prototype._getLanguageId=function(e){if(this._languageToLanguageId[e])return this._languageToLanguageId[e];var t=this._nextLanguageId2++;return this._languageIdToLanguage[t]=e,this._languageToLanguageId[e]=t,t},t.prototype._registerLanguage=function(e){var t,n=e.id;if(bN.call(this._languages,n))t=this._languages[n];else{var i=this._getLanguageId(n);t={identifier:new bu(n,i),name:null,mimetypes:[],aliases:[],extensions:[],filenames:[],configurationFiles:[]},this._languages[n]=t}this._mergeLanguage(t,e)},t.prototype._mergeLanguage=function(e,t){var n,i,o=t.id,r=null;if(Array.isArray(t.mimetypes)&&t.mimetypes.length>0&&((n=e.mimetypes).push.apply(n,t.mimetypes),r=t.mimetypes[0]),r||(r="text/x-"+o,e.mimetypes.push(r)),Array.isArray(t.extensions))for(var s=0,a=t.extensions;s<a.length;s++){var u=a[s];fN({id:o,mime:r,extension:u},this._warnOnOverwrite),e.extensions.push(u)}if(Array.isArray(t.filenames))for(var l=0,c=t.filenames;l<c.length;l++){var d=c[l];fN({id:o,mime:r,filename:d},this._warnOnOverwrite),e.filenames.push(d)}if(Array.isArray(t.filenamePatterns))for(var h=0,p=t.filenamePatterns;h<p.length;h++){fN({id:o,mime:r,filepattern:p[h]},this._warnOnOverwrite)}if("string"==typeof t.firstLine&&t.firstLine.length>0){var f=t.firstLine;"^"!==f.charAt(0)&&(f="^"+f);try{var g=new RegExp(f);"^"!==(i=g).source&&"^$"!==i.source&&"$"!==i.source&&"^\\s*$"!==i.source&&i.exec("")&&0===i.lastIndex||fN({id:o,mime:r,firstline:g},this._warnOnOverwrite)}catch(e){De(e)}}e.aliases.push(o);var m=null;if(void 0!==t.aliases&&Array.isArray(t.aliases)&&(m=0===t.aliases.length?[null]:t.aliases),null!==m)for(var v=0,_=m;v<_.length;v++){var y=_[v];y&&0!==y.length&&e.aliases.push(y)}var b=null!==m&&m.length>0;if(b&&null===m[0]);else{var w=(b?m[0]:null)||o;!b&&e.name||(e.name=w)}t.configuration&&e.configurationFiles.push(t.configuration)},t.prototype.isRegisteredMode=function(e){return!!bN.call(this._mimeTypesMap,e)||bN.call(this._languages,e)},t.prototype.getModeIdForLanguageNameLowercase=function(e){return bN.call(this._lowercaseNameMap,e)?this._lowercaseNameMap[e].language:null},t.prototype.extractModeIds=function(e){var t=this;return e?e.split(",").map((function(e){return e.trim()})).map((function(e){return bN.call(t._mimeTypesMap,e)?t._mimeTypesMap[e].language:e})).filter((function(e){return bN.call(t._languages,e)})):[]},t.prototype.getLanguageIdentifier=function(e){if("vs.editor.nullMode"===e||0===e)return $u;var t;if("string"==typeof e)t=e;else if(!(t=this._languageIdToLanguage[e]))return null;return bN.call(this._languages,t)?this._languages[t].identifier:null},t.prototype.getModeIdsFromFilepathOrFirstLine=function(e,t){if(!e&&!t)return[];var n=gN(e,t);return this.extractModeIds(n.join(","))},t}(He),CN=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),SN=function(e){function t(t,n){var i=e.call(this)||this;return i._onDidChange=i._register(new nt),i.onDidChange=i._onDidChange.event,i._selector=n,i.languageIdentifier=i._selector(),i._register(t((function(){return i._evaluate()}))),i}return CN(t,e),t.prototype._evaluate=function(){var e=this._selector();e.id!==this.languageIdentifier.id&&(this.languageIdentifier=e,this._onDidChange.fire(this.languageIdentifier))},t}(He),LN=function(){function e(e){var t=this;void 0===e&&(e=!1),this._onDidCreateMode=new nt,this.onDidCreateMode=this._onDidCreateMode.event,this._onLanguagesMaybeChanged=new nt,this.onLanguagesMaybeChanged=this._onLanguagesMaybeChanged.event,this._instantiatedModes={},this._registry=new wN(!0,e),this._registry.onDidChange((function(){return t._onLanguagesMaybeChanged.fire()}))}return e.prototype.isRegisteredMode=function(e){return this._registry.isRegisteredMode(e)},e.prototype.getModeIdForLanguageName=function(e){return this._registry.getModeIdForLanguageNameLowercase(e)},e.prototype.getModeIdByFilepathOrFirstLine=function(e,t){return Ai(this._registry.getModeIdsFromFilepathOrFirstLine(e,t),null)},e.prototype.getModeId=function(e){return Ai(this._registry.extractModeIds(e),null)},e.prototype.getLanguageIdentifier=function(e){return this._registry.getLanguageIdentifier(e)},e.prototype.create=function(e){var t=this;return new SN(this.onLanguagesMaybeChanged,(function(){var n=t.getModeId(e);return t._createModeAndGetLanguageIdentifier(n)}))},e.prototype.createByFilepathOrFirstLine=function(e,t){var n=this;return new SN(this.onLanguagesMaybeChanged,(function(){var i=n.getModeIdByFilepathOrFirstLine(e,t);return n._createModeAndGetLanguageIdentifier(i)}))},e.prototype._createModeAndGetLanguageIdentifier=function(e){var t=this.getLanguageIdentifier(e||"plaintext")||$u;return this._getOrCreateMode(t.language),t},e.prototype.triggerMode=function(e){var t=this.getModeId(e);this._getOrCreateMode(t||"plaintext")},e.prototype._getOrCreateMode=function(e){if(!this._instantiatedModes.hasOwnProperty(e)){var t=this.getLanguageIdentifier(e)||$u;this._instantiatedModes[e]=new cN(t),this._onDidCreateMode.fire(this._instantiatedModes[e])}return this._instantiatedModes[e]},e}(),xN=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),DN=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},NN=function(e,t){return function(n,i){t(n,i,e)}};function kN(e){return e.toString()}var EN=function(){function e(e,t,n){this._modelEventListeners=new Be,this.model=e,this._languageSelection=null,this._languageSelectionListener=null,this._modelEventListeners.add(e.onWillDispose((function(){return t(e)}))),this._modelEventListeners.add(e.onDidChangeLanguage((function(t){return n(e,t)})))}return e.prototype._disposeLanguageSelection=function(){this._languageSelectionListener&&(this._languageSelectionListener.dispose(),this._languageSelectionListener=null),this._languageSelection&&(this._languageSelection.dispose(),this._languageSelection=null)},e.prototype.dispose=function(){this._modelEventListeners.dispose(),this._disposeLanguageSelection()},e.prototype.setLanguage=function(e){var t=this;this._disposeLanguageSelection(),this._languageSelection=e,this._languageSelectionListener=this._languageSelection.onDidChange((function(){return t.model.setMode(e.languageIdentifier)})),this.model.setMode(e.languageIdentifier)},e}(),IN=y||_?1:2,ON=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r._onModelAdded=r._register(new nt),r.onModelAdded=r._onModelAdded.event,r._onModelRemoved=r._register(new nt),r.onModelRemoved=r._onModelRemoved.event,r._onModelModeChanged=r._register(new nt),r.onModelModeChanged=r._onModelModeChanged.event,r._configurationService=t,r._resourcePropertiesService=n,r._models={},r._modelCreationOptionsByLanguageAndResource=Object.create(null),r._configurationServiceSubscription=r._configurationService.onDidChangeConfiguration((function(e){return r._updateModelOptions()})),r._updateModelOptions(),r._register(new MN(r,i,t,o)),r}return xN(t,e),t._readModelOptions=function(e,t){var n=me;if(e.editor&&void 0!==e.editor.tabSize){var i=parseInt(e.editor.tabSize,10);isNaN(i)||(n=i),n<1&&(n=1)}var o=n;if(e.editor&&void 0!==e.editor.indentSize&&"tabSize"!==e.editor.indentSize){var r=parseInt(e.editor.indentSize,10);isNaN(r)||(o=r),o<1&&(o=1)}var s=_e;e.editor&&void 0!==e.editor.insertSpaces&&(s="false"!==e.editor.insertSpaces&&Boolean(e.editor.insertSpaces));var a=IN,u=e.eol;"\r\n"===u?a=2:"\n"===u&&(a=1);var l=be;e.editor&&void 0!==e.editor.trimAutoWhitespace&&(l="false"!==e.editor.trimAutoWhitespace&&Boolean(e.editor.trimAutoWhitespace));var c=ye;e.editor&&void 0!==e.editor.detectIndentation&&(c="false"!==e.editor.detectIndentation&&Boolean(e.editor.detectIndentation));var d=we;return e.editor&&void 0!==e.editor.largeFileOptimizations&&(d="false"!==e.editor.largeFileOptimizations&&Boolean(e.editor.largeFileOptimizations)),{isForSimpleWidget:t,tabSize:n,indentSize:o,insertSpaces:s,detectIndentation:c,defaultEOL:a,trimAutoWhitespace:l,largeFileOptimizations:d}},t.prototype.getCreationOptions=function(e,n,i){var o=this._modelCreationOptionsByLanguageAndResource[e+n];if(!o){var r=this._configurationService.getValue("editor",{overrideIdentifier:e,resource:n}),s=this._resourcePropertiesService.getEOL(n,e);o=t._readModelOptions({editor:r,eol:s},i),this._modelCreationOptionsByLanguageAndResource[e+n]=o}return o},t.prototype._updateModelOptions=function(){var e=this._modelCreationOptionsByLanguageAndResource;this._modelCreationOptionsByLanguageAndResource=Object.create(null);for(var n=Object.keys(this._models),i=0,o=n.length;i<o;i++){var r=n[i],s=this._models[r],a=s.model.getLanguageIdentifier().language,u=s.model.uri,l=e[a+u],c=this.getCreationOptions(a,u,s.model.isForSimpleWidget);t._setModelOptionsForModel(s.model,c,l)}},t._setModelOptionsForModel=function(e,t,n){n&&n.defaultEOL!==t.defaultEOL&&1===e.getLineCount()&&e.setEOL(1===t.defaultEOL?0:1),n&&n.detectIndentation===t.detectIndentation&&n.insertSpaces===t.insertSpaces&&n.tabSize===t.tabSize&&n.indentSize===t.indentSize&&n.trimAutoWhitespace===t.trimAutoWhitespace||(t.detectIndentation?(e.detectIndentation(t.insertSpaces,t.tabSize),e.updateOptions({trimAutoWhitespace:t.trimAutoWhitespace})):e.updateOptions({insertSpaces:t.insertSpaces,tabSize:t.tabSize,indentSize:t.indentSize,trimAutoWhitespace:t.trimAutoWhitespace}))},t.prototype.dispose=function(){this._configurationServiceSubscription.dispose(),e.prototype.dispose.call(this)},t.prototype._createModelData=function(e,t,n,i){var o=this,r=this.getCreationOptions(t.language,n,i),s=new Cv(e,r,t,n),a=kN(s.uri);if(this._models[a])throw new Error("ModelService: Cannot add model because it already exists!");var u=new EN(s,(function(e){return o._onWillDispose(e)}),(function(e,t){return o._onDidChangeLanguage(e,t)}));return this._models[a]=u,u},t.prototype.createModel=function(e,t,n,i){var o;return void 0===i&&(i=!1),t?(o=this._createModelData(e,t.languageIdentifier,n,i),this.setMode(o.model,t)):o=this._createModelData(e,_N,n,i),this._onModelAdded.fire(o.model),o.model},t.prototype.setMode=function(e,t){if(t){var n=this._models[kN(e.uri)];n&&n.setLanguage(t)}},t.prototype.getModels=function(){for(var e=[],t=Object.keys(this._models),n=0,i=t.length;n<i;n++){var o=t[n];e.push(this._models[o].model)}return e},t.prototype.getModel=function(e){var t=kN(e),n=this._models[t];return n?n.model:null},t.prototype._onWillDispose=function(e){var t=kN(e.uri),n=this._models[t];delete this._models[t],n.dispose(),delete this._modelCreationOptionsByLanguageAndResource[e.getLanguageIdentifier().language+e.uri],this._onModelRemoved.fire(e)},t.prototype._onDidChangeLanguage=function(e,n){var i=n.oldLanguage,o=e.getLanguageIdentifier().language,r=this.getCreationOptions(i,e.uri,e.isForSimpleWidget),s=this.getCreationOptions(o,e.uri,e.isForSimpleWidget);t._setModelOptionsForModel(e,s,r),this._onModelModeChanged.fire({model:e,oldModeId:i})},t=DN([NN(0,wh),NN(1,_c),NN(2,fg),NN(3,yc)],t)}(He),MN=function(e){function t(n,i,o,r){var s=e.call(this)||this;s._configurationService=o,s._watchers=Object.create(null),s._semanticStyling=s._register(new TN(i,r));var a=function(e){var n=o.getValue(t.SETTING_ID,{overrideIdentifier:e.getLanguageIdentifier().language,resource:e.uri});return n&&n.enabled},u=function(e){s._watchers[e.uri.toString()]=new WN(e,i,s._semanticStyling)},l=function(e,t){t.dispose(),delete s._watchers[e.uri.toString()]};return s._register(n.onModelAdded((function(e){a(e)&&u(e)}))),s._register(n.onModelRemoved((function(e){var t=s._watchers[e.uri.toString()];t&&l(e,t)}))),s._configurationService.onDidChangeConfiguration((function(e){if(e.affectsConfiguration(t.SETTING_ID))for(var i=0,o=n.getModels();i<o.length;i++){var r=o[i],c=s._watchers[r.uri.toString()];a(r)?c||u(r):c&&l(r,c)}})),s}return xN(t,e),t.SETTING_ID="editor.semanticHighlighting",t}(He),TN=function(e){function t(t,n){var i=e.call(this)||this;return i._themeService=t,i._logService=n,i._caches=new WeakMap,i._themeService&&i._register(i._themeService.onThemeChange((function(){i._caches=new WeakMap}))),i}return xN(t,e),t.prototype.get=function(e){return this._caches.has(e)||this._caches.set(e,new AN(e.getLegend(),this._themeService,this._logService)),this._caches.get(e)},t}(He),PN=function(e,t,n){this.tokenTypeIndex=e,this.tokenModifierSet=t,this.metadata=n,this.next=null},RN=function(){function e(){this._elementsCount=0,this._currentLengthIndex=0,this._currentLength=e._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1<e._SIZES.length?2/3*this._currentLength:0),this._elements=[],e._nullOutEntries(this._elements,this._currentLength)}return e._nullOutEntries=function(e,t){for(var n=0;n<t;n++)e[n]=null},e.prototype._hashFunc=function(e,t){return((e<<5)-e+t|0)%this._currentLength},e.prototype.get=function(e,t){for(var n=this._hashFunc(e,t),i=this._elements[n];i;){if(i.tokenTypeIndex===e&&i.tokenModifierSet===t)return i;i=i.next}return null},e.prototype.add=function(t,n,i){if(this._elementsCount++,0!==this._growCount&&this._elementsCount>=this._growCount){var o=this._elements;this._currentLengthIndex++,this._currentLength=e._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1<e._SIZES.length?2/3*this._currentLength:0),this._elements=[],e._nullOutEntries(this._elements,this._currentLength);for(var r=0,s=o;r<s.length;r++)for(var a=s[r];a;){var u=a.next;a.next=null,this._add(a),a=u}}this._add(new PN(t,n,i))},e.prototype._add=function(e){var t=this._hashFunc(e.tokenTypeIndex,e.tokenModifierSet);e.next=this._elements[t],this._elements[t]=e},e._SIZES=[3,7,13,31,61,127,251,509,1021,2039,4093,8191,16381,32749,65521,131071,262139,524287,1048573,2097143],e}(),AN=function(){function e(e,t,n){this._legend=e,this._themeService=t,this._logService=n,this._hashTable=new RN}return e.prototype.getMetadata=function(e,t){var n,i=this._hashTable.get(e,t);if(i)n=i.metadata;else{for(var o=this._legend.tokenTypes[e],r=[],s=t,a=0;s>0&&a<this._legend.tokenModifiers.length;a++)1&s&&r.push(this._legend.tokenModifiers[a]),s>>=1;var u=this._themeService.getTheme().getTokenStyleMetadata(o,r);if(void 0===u)n=2147483647;else{if(n=0,void 0!==u.italic)n|=1|(u.italic?1:0)<<11;if(void 0!==u.bold)n|=2|(u.bold?2:0)<<11;if(void 0!==u.underline)n|=4|(u.underline?4:0)<<11;if(u.foreground)n|=8|u.foreground<<14;0===n&&(n=2147483647)}this._hashTable.add(e,t,n)}if(this._logService.getLevel()===mc.Trace){var l=this._legend.tokenTypes[e],c=t?" "+this._legend.tokenModifiers.filter((function(e,n){return t&1<<n})).join(" "):"";this._logService.trace("tokenStyleMetadata "+(i?"[CACHED] ":"")+l+c+": foreground "+wu.getForeground(n)+", fontStyle "+wu.getFontStyle(n).toString(2))}return n},e}(),FN=function(){function e(e,t,n){this._provider=e,this.resultId=t,this.data=n}return e.prototype.dispose=function(){this._provider.releaseDocumentSemanticTokens(this.resultId)},e}(),WN=function(e){function t(t,n,i){var o=e.call(this)||this;return o._isDisposed=!1,o._model=t,o._semanticStyling=i,o._fetchSemanticTokens=o._register(new wi((function(){return o._fetchSemanticTokensNow()}),300)),o._currentResponse=null,o._currentRequestCancellationTokenSource=null,o._register(o._model.onDidChangeContent((function(e){o._fetchSemanticTokens.isScheduled()||o._fetchSemanticTokens.schedule()}))),o._register(Gu.onDidChange((function(e){return o._fetchSemanticTokens.schedule()}))),n&&o._register(n.onThemeChange((function(e){o._setSemanticTokens(null,null,null,[]),o._fetchSemanticTokens.schedule()}))),o._fetchSemanticTokens.schedule(0),o}return xN(t,e),t.prototype.dispose=function(){this._currentResponse&&(this._currentResponse.dispose(),this._currentResponse=null),this._currentRequestCancellationTokenSource&&(this._currentRequestCancellationTokenSource.cancel(),this._currentRequestCancellationTokenSource=null),this._setSemanticTokens(null,null,null,[]),this._isDisposed=!0,e.prototype.dispose.call(this)},t.prototype._fetchSemanticTokensNow=function(){var e=this;if(!this._currentRequestCancellationTokenSource){var t=this._getSemanticColoringProvider();if(t){this._currentRequestCancellationTokenSource=new ct;var n=[],i=this._model.onDidChangeContent((function(e){n.push(e)})),o=this._semanticStyling.get(t),r=this._currentResponse&&this._currentResponse.resultId||null;Promise.resolve(t.provideDocumentSemanticTokens(this._model,r,this._currentRequestCancellationTokenSource.token)).then((function(r){e._currentRequestCancellationTokenSource=null,i.dispose(),e._setSemanticTokens(t,r||null,o,n)}),(function(t){t&&"string"==typeof t.message&&-1!==t.message.indexOf("busy")||De(t),e._currentRequestCancellationTokenSource=null,i.dispose(),n.length>0&&(e._fetchSemanticTokens.isScheduled()||e._fetchSemanticTokens.schedule())}))}}},t._isSemanticTokens=function(e){return e&&!!e.data},t._isSemanticTokensEdits=function(e){return e&&Array.isArray(e.edits)},t._copy=function(e,t,n,i,o){for(var r=0;r<o;r++)n[i+r]=e[t+r]},t.prototype._setSemanticTokens=function(e,n,i,o){var r=this._currentResponse;if(this._currentResponse&&(this._currentResponse.dispose(),this._currentResponse=null),this._isDisposed)e&&n&&e.releaseDocumentSemanticTokens(n.resultId);else if(e&&n&&i){if(t._isSemanticTokensEdits(n)){if(!r)return void this._model.setSemanticTokens(null);if(0===n.edits.length)n={resultId:n.resultId,data:r.data};else{for(var s=0,a=0,u=n.edits;a<u.length;a++){s+=((f=u[a]).data?f.data.length:0)-f.deleteCount}for(var l=r.data,c=new Uint32Array(l.length+s),d=l.length,h=c.length,p=n.edits.length-1;p>=0;p--){var f,g=d-((f=n.edits[p]).start+f.deleteCount);g>0&&(t._copy(l,d-g,c,h-g,g),h-=g),f.data&&(t._copy(f.data,0,c,h-f.data.length,f.data.length),h-=f.data.length),d=f.start}d>0&&t._copy(l,0,c,0,d),n={resultId:n.resultId,data:c}}}if(t._isSemanticTokens(n)){this._currentResponse=new FN(e,n.resultId,n.data);l=n.data;for(var m=n.data.length/5|0,v=Math.max(Math.ceil(m/1024),400),_=[],y=0,b=1,w=0;y<m;){var C=y,S=Math.min(C+v,m);if(S<m){for(var L=S;L-1>C&&0===l[5*L];)L--;if(L-1===C){for(var x=S;x+1<m&&0===l[5*x];)x++;S=x}else S=L}c=new Uint32Array(4*(S-C));for(var D=0,N=0;y<S;){var k=5*y,E=l[k],I=l[k+1],O=b+E,M=0===E?w+I:I,T=l[k+2],P=l[k+3],R=l[k+4],A=i.getMetadata(P,R);2147483647!==A&&(0===N&&(N=O),c[D]=O-N,c[D+1]=M,c[D+2]=M+T,c[D+3]=A,D+=4),b=O,w=M,y++}D!==c.length&&(c=c.subarray(0,D));var F=new iv(N,new tv(c));_.push(F)}if(o.length>0){for(var W=0,V=o;W<V.length;W++)for(var B=V[W],H=0,z=_;H<z.length;H++)for(var j=z[H],U=0,K=B.changes;U<K.length;U++){var q=K[U];j.applyEdit(q.range,q.text)}this._fetchSemanticTokens.isScheduled()||this._fetchSemanticTokens.schedule()}this._model.setSemanticTokens(_)}else this._model.setSemanticTokens(null)}else this._model.setSemanticTokens(null)},t.prototype._getSemanticColoringProvider=function(){var e=Gu.ordered(this._model);return e.length>0?e[0]:null},t}(He),VN=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),BN=function(e){function t(){var t=e.call(this)||this;return t._onCodeEditorAdd=t._register(new nt),t.onCodeEditorAdd=t._onCodeEditorAdd.event,t._onCodeEditorRemove=t._register(new nt),t.onCodeEditorRemove=t._onCodeEditorRemove.event,t._onDiffEditorAdd=t._register(new nt),t._onDiffEditorRemove=t._register(new nt),t._codeEditors=Object.create(null),t._diffEditors=Object.create(null),t}return VN(t,e),t.prototype.addCodeEditor=function(e){this._codeEditors[e.getId()]=e,this._onCodeEditorAdd.fire(e)},t.prototype.removeCodeEditor=function(e){delete this._codeEditors[e.getId()]&&this._onCodeEditorRemove.fire(e)},t.prototype.listCodeEditors=function(){var e=this;return Object.keys(this._codeEditors).map((function(t){return e._codeEditors[t]}))},t.prototype.addDiffEditor=function(e){this._diffEditors[e.getId()]=e,this._onDiffEditorAdd.fire(e)},t.prototype.removeDiffEditor=function(e){delete this._diffEditors[e.getId()]&&this._onDiffEditorRemove.fire(e)},t.prototype.listDiffEditors=function(){var e=this;return Object.keys(this._diffEditors).map((function(t){return e._diffEditors[t]}))},t.prototype.getFocusedCodeEditor=function(){for(var e=null,t=0,n=this.listCodeEditors();t<n.length;t++){var i=n[t];if(i.hasTextFocus())return i;i.hasWidgetFocus()&&(e=i)}return e},t}(He),HN=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),zN=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},jN=function(e,t){return function(n,i){t(n,i,e)}},UN=function(){function e(e,t,n){this._parent=e,this._editorId=t,this.styleSheet=n,this._refCount=0}return e.prototype.ref=function(){this._refCount++},e.prototype.unref=function(){var e;this._refCount--,0===this._refCount&&(null===(e=this.styleSheet.parentNode)||void 0===e||e.removeChild(this.styleSheet),this._parent._removeEditorStyleSheets(this._editorId))},e}(),KN=function(){function e(e){this.styleSheet=e}return e.prototype.ref=function(){},e.prototype.unref=function(){},e}(),qN=function(e){function t(t,n){void 0===n&&(n=null);var i=e.call(this)||this;return i._decorationOptionProviders=new Map,i._editorStyleSheets=new Map,i._globalStyleSheet=n?new KN(n):null,i._themeService=t,i}return HN(t,e),t.prototype._getOrCreateGlobalStyleSheet=function(){return this._globalStyleSheet||(this._globalStyleSheet=new KN(zo())),this._globalStyleSheet},t.prototype._getOrCreateStyleSheet=function(e){if(!e)return this._getOrCreateGlobalStyleSheet();var t=e.getContainerDomNode();if(!Bo(t))return this._getOrCreateGlobalStyleSheet();var n=e.getId();if(!this._editorStyleSheets.has(n)){var i=new UN(this,n,zo(t));this._editorStyleSheets.set(n,i)}return this._editorStyleSheets.get(n)},t.prototype._removeEditorStyleSheets=function(e){this._editorStyleSheets.delete(e)},t.prototype.registerDecorationType=function(e,t,n,i){var o=this._decorationOptionProviders.get(e);if(!o){var r=this._getOrCreateStyleSheet(i),s={styleSheet:r.styleSheet,key:e,parentTypeKey:n,options:t||Object.create(null)};o=n?new GN(this._themeService,r,s):new ZN(this._themeService,r,s),this._decorationOptionProviders.set(e,o)}o.refCount++},t.prototype.removeDecorationType=function(e){var t=this._decorationOptionProviders.get(e);t&&(t.refCount--,t.refCount<=0&&(this._decorationOptionProviders.delete(e),t.dispose(),this.listCodeEditors().forEach((function(t){return t.removeDecorations(e)}))))},t.prototype.resolveDecorationOptions=function(e,t){var n=this._decorationOptionProviders.get(e);if(!n)throw new Error("Unknown decoration type key: "+e);return n.getOptions(this,t)},t=zN([jN(0,fg)],t)}(BN),GN=function(){function e(e,t,n){this._styleSheet=t,this._styleSheet.ref(),this._parentTypeKey=n.parentTypeKey,this.refCount=0,this._beforeContentRules=new XN(3,n,e),this._afterContentRules=new XN(4,n,e)}return e.prototype.getOptions=function(e,t){var n=e.resolveDecorationOptions(this._parentTypeKey,!0);return this._beforeContentRules&&(n.beforeContentClassName=this._beforeContentRules.className),this._afterContentRules&&(n.afterContentClassName=this._afterContentRules.className),n},e.prototype.dispose=function(){this._beforeContentRules&&(this._beforeContentRules.dispose(),this._beforeContentRules=null),this._afterContentRules&&(this._afterContentRules.dispose(),this._afterContentRules=null),this._styleSheet.unref()},e}(),ZN=function(){function e(e,t,n){var i=this;this._disposables=new Be,this._styleSheet=t,this._styleSheet.ref(),this.refCount=0;var o=function(t){var o=new XN(t,n,e);if(i._disposables.add(o),o.hasContent)return o.className};this.className=o(0);var r,s=(r=new XN(1,n,e),i._disposables.add(r),r.hasContent?{className:r.className,hasLetterSpacing:r.hasLetterSpacing}:null);s&&(this.inlineClassName=s.className,this.inlineClassNameAffectsLetterSpacing=s.hasLetterSpacing),this.beforeContentClassName=o(3),this.afterContentClassName=o(4),this.glyphMarginClassName=o(2);var a=n.options;this.isWholeLine=Boolean(a.isWholeLine),this.stickiness=a.rangeBehavior;var u=a.light&&a.light.overviewRulerColor||a.overviewRulerColor,l=a.dark&&a.dark.overviewRulerColor||a.overviewRulerColor;void 0===u&&void 0===l||(this.overviewRuler={color:u||l,darkColor:l||u,position:a.overviewRulerLane||Va.Center})}return e.prototype.getOptions=function(e,t){return t?{inlineClassName:this.inlineClassName,beforeContentClassName:this.beforeContentClassName,afterContentClassName:this.afterContentClassName,className:this.className,glyphMarginClassName:this.glyphMarginClassName,isWholeLine:this.isWholeLine,overviewRuler:this.overviewRuler,stickiness:this.stickiness}:this},e.prototype.dispose=function(){this._disposables.dispose(),this._styleSheet.unref()},e}(),YN={color:"color:{0} !important;",opacity:"opacity:{0};",backgroundColor:"background-color:{0};",outline:"outline:{0};",outlineColor:"outline-color:{0};",outlineStyle:"outline-style:{0};",outlineWidth:"outline-width:{0};",border:"border:{0};",borderColor:"border-color:{0};",borderRadius:"border-radius:{0};",borderSpacing:"border-spacing:{0};",borderStyle:"border-style:{0};",borderWidth:"border-width:{0};",fontStyle:"font-style:{0};",fontWeight:"font-weight:{0};",textDecoration:"text-decoration:{0};",cursor:"cursor:{0};",letterSpacing:"letter-spacing:{0};",gutterIconPath:"background:{0} center center no-repeat;",gutterIconSize:"background-size:{0};",contentText:"content:'{0}';",contentIconPath:"content:{0};",margin:"margin:{0};",width:"width:{0};",height:"height:{0};"},XN=function(){function e(e,t,n){var i=this;this._theme=n.getTheme(),this._ruleType=e,this._providerArgs=t,this._usesThemeColors=!1,this._hasContent=!1,this._hasLetterSpacing=!1;var o=$N.getClassName(this._providerArgs.key,e);this._providerArgs.parentTypeKey&&(o=o+" "+$N.getClassName(this._providerArgs.parentTypeKey,e)),this._className=o,this._unThemedSelector=$N.getSelector(this._providerArgs.key,this._providerArgs.parentTypeKey,e),this._buildCSS(),this._usesThemeColors?this._themeListener=n.onThemeChange((function(e){i._theme=n.getTheme(),i._removeCSS(),i._buildCSS()})):this._themeListener=null}return e.prototype.dispose=function(){this._hasContent&&(this._removeCSS(),this._hasContent=!1),this._themeListener&&(this._themeListener.dispose(),this._themeListener=null)},Object.defineProperty(e.prototype,"hasContent",{get:function(){return this._hasContent},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasLetterSpacing",{get:function(){return this._hasLetterSpacing},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"className",{get:function(){return this._className},enumerable:!0,configurable:!0}),e.prototype._buildCSS=function(){var e,t,n,i=this._providerArgs.options;switch(this._ruleType){case 0:e=this.getCSSTextForModelDecorationClassName(i),t=this.getCSSTextForModelDecorationClassName(i.light),n=this.getCSSTextForModelDecorationClassName(i.dark);break;case 1:e=this.getCSSTextForModelDecorationInlineClassName(i),t=this.getCSSTextForModelDecorationInlineClassName(i.light),n=this.getCSSTextForModelDecorationInlineClassName(i.dark);break;case 2:e=this.getCSSTextForModelDecorationGlyphMarginClassName(i),t=this.getCSSTextForModelDecorationGlyphMarginClassName(i.light),n=this.getCSSTextForModelDecorationGlyphMarginClassName(i.dark);break;case 3:e=this.getCSSTextForModelDecorationContentClassName(i.before),t=this.getCSSTextForModelDecorationContentClassName(i.light&&i.light.before),n=this.getCSSTextForModelDecorationContentClassName(i.dark&&i.dark.before);break;case 4:e=this.getCSSTextForModelDecorationContentClassName(i.after),t=this.getCSSTextForModelDecorationContentClassName(i.light&&i.light.after),n=this.getCSSTextForModelDecorationContentClassName(i.dark&&i.dark.after);break;default:throw new Error("Unknown rule type: "+this._ruleType)}var o=this._providerArgs.styleSheet.sheet,r=!1;e.length>0&&(o.insertRule(this._unThemedSelector+" {"+e+"}",0),r=!0),t.length>0&&(o.insertRule(".vs"+this._unThemedSelector+" {"+t+"}",0),r=!0),n.length>0&&(o.insertRule(".vs-dark"+this._unThemedSelector+", .hc-black"+this._unThemedSelector+" {"+n+"}",0),r=!0),this._hasContent=r},e.prototype._removeCSS=function(){Ko(this._unThemedSelector,this._providerArgs.styleSheet)},e.prototype.getCSSTextForModelDecorationClassName=function(e){if(!e)return"";var t=[];return this.collectCSSText(e,["backgroundColor"],t),this.collectCSSText(e,["outline","outlineColor","outlineStyle","outlineWidth"],t),this.collectBorderSettingsCSSText(e,t),t.join("")},e.prototype.getCSSTextForModelDecorationInlineClassName=function(e){if(!e)return"";var t=[];return this.collectCSSText(e,["fontStyle","fontWeight","textDecoration","cursor","color","opacity","letterSpacing"],t),e.letterSpacing&&(this._hasLetterSpacing=!0),t.join("")},e.prototype.getCSSTextForModelDecorationContentClassName=function(e){if(!e)return"";var t=[];if(void 0!==e){if(this.collectBorderSettingsCSSText(e,t),void 0!==e.contentIconPath&&t.push(pr(YN.contentIconPath,ur(Et.revive(e.contentIconPath)))),"string"==typeof e.contentText){var n=e.contentText.match(/^.*$/m)[0].replace(/['\\]/g,"\\$&");t.push(pr(YN.contentText,n))}this.collectCSSText(e,["fontStyle","fontWeight","textDecoration","color","opacity","backgroundColor","margin"],t),this.collectCSSText(e,["width","height"],t)&&t.push("display:inline-block;")}return t.join("")},e.prototype.getCSSTextForModelDecorationGlyphMarginClassName=function(e){if(!e)return"";var t=[];return void 0!==e.gutterIconPath&&(t.push(pr(YN.gutterIconPath,ur(Et.revive(e.gutterIconPath)))),void 0!==e.gutterIconSize&&t.push(pr(YN.gutterIconSize,e.gutterIconSize))),t.join("")},e.prototype.collectBorderSettingsCSSText=function(e,t){return!!this.collectCSSText(e,["border","borderColor","borderRadius","borderSpacing","borderStyle","borderWidth"],t)&&(t.push(pr("box-sizing: border-box;")),!0)},e.prototype.collectCSSText=function(e,t,n){for(var i=n.length,o=0,r=t;o<r.length;o++){var s=r[o],a=this.resolveValue(e[s]);"string"==typeof a&&n.push(pr(YN[s],a))}return n.length!==i},e.prototype.resolveValue=function(e){if((n=e)&&"string"==typeof n.id){this._usesThemeColors=!0;var t=this._theme.getColor(e.id);return t?t.toString():"transparent"}var n;return e},e}(),$N=function(){function e(){}return e.getClassName=function(e,t){return"ced-"+e+"-"+t},e.getSelector=function(e,t,n){var i=".monaco-editor ."+this.getClassName(e,n);return t&&(i=i+"."+this.getClassName(t,n)),3===n?i+="::before":4===n&&(i+="::after"),i},e}(),QN=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),JN=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return QN(t,e),t.prototype.getActiveCodeEditor=function(){return null},t.prototype.openCodeEditor=function(e,t,n){return t?Promise.resolve(this.doOpenEditor(t,e)):Promise.resolve(null)},t.prototype.doOpenEditor=function(e,t){if(!this.findModel(e,t.resource)){if(t.resource){var n=t.resource.scheme;if(n===Ci.http||n===Ci.https)return sr(t.resource.toString()),e}return null}var i=t.options?t.options.selection:null;if(i)if("number"==typeof i.endLineNumber&&"number"==typeof i.endColumn)e.setSelection(i),e.revealRangeInCenter(i,1);else{var o={lineNumber:i.startLineNumber,column:i.startColumn};e.setPosition(o),e.revealPositionInCenter(o,1)}return e},t.prototype.findModel=function(e,t){var n=e.getModel();return n&&n.uri.toString()!==t.toString()?null:n},t}(qN),ek=function(e,t,n,i,o){this.token=e,this.index=t,this.fontStyle=n,this.foreground=i,this.background=o};function tk(e,t){e.sort((function(e,t){var n=function(e,t){if(e<t)return-1;if(e>t)return 1;return 0}(e.token,t.token);return 0!==n?n:e.index-t.index}));for(var n=0,i="000000",o="ffffff";e.length>=1&&""===e[0].token;){var r=e.shift();-1!==r.fontStyle&&(n=r.fontStyle),null!==r.foreground&&(i=r.foreground),null!==r.background&&(o=r.background)}for(var s=new ik,a=0,u=t;a<u.length;a++){var l=u[a];s.getId(l)}for(var c=s.getId(i),d=s.getId(o),h=new lk(n,c,d),p=new ck(h),f=0,g=e.length;f<g;f++){var m=e[f];p.insert(m.token,m.fontStyle,s.getId(m.foreground),s.getId(m.background))}return new ok(s,p)}var nk=/^#?([0-9A-Fa-f]{6})([0-9A-Fa-f]{2})?$/,ik=function(){function e(){this._lastColorId=0,this._id2color=[],this._color2id=new Map}return e.prototype.getId=function(e){if(null===e)return 0;var t=e.match(nk);if(!t)throw new Error("Illegal value for token color: "+e);e=t[1].toUpperCase();var n=this._color2id.get(e);return n||(n=++this._lastColorId,this._color2id.set(e,n),this._id2color[n]=mv.fromHex("#"+e),n)},e.prototype.getColorMap=function(){return this._id2color.slice(0)},e}(),ok=function(){function e(e,t){this._colorMap=e,this._root=t,this._cache=new Map}return e.createFromRawTokenTheme=function(e,t){return this.createFromParsedTokenTheme(function(e){if(!e||!Array.isArray(e))return[];for(var t=[],n=0,i=0,o=e.length;i<o;i++){var r=e[i],s=-1;if("string"==typeof r.fontStyle){s=0;for(var a=r.fontStyle.split(" "),u=0,l=a.length;u<l;u++){switch(a[u]){case"italic":s|=1;break;case"bold":s|=2;break;case"underline":s|=4}}}var c=null;"string"==typeof r.foreground&&(c=r.foreground);var d=null;"string"==typeof r.background&&(d=r.background),t[n++]=new ek(r.token||"",i,s,c,d)}return t}(e),t)},e.createFromParsedTokenTheme=function(e,t){return tk(e,t)},e.prototype.getColorMap=function(){return this._colorMap.getColorMap()},e.prototype._match=function(e){return this._root.match(e)},e.prototype.match=function(e,t){var n=this._cache.get(t);if(void 0===n){var i=this._match(t),o=function(e){var t=e.match(rk);if(!t)return 0;switch(t[1]){case"comment":return 1;case"string":return 2;case"regex":case"regexp":return 4}throw new Error("Unexpected match for standard token type!")}(t);n=(i.metadata|o<<8)>>>0,this._cache.set(t,n)}return(n|e<<0)>>>0},e}(),rk=/\b(comment|string|regex|regexp)\b/;var sk,ak,uk,lk=function(){function e(e,t,n){this._fontStyle=e,this._foreground=t,this._background=n,this.metadata=(this._fontStyle<<11|this._foreground<<14|this._background<<23)>>>0}return e.prototype.clone=function(){return new e(this._fontStyle,this._foreground,this._background)},e.prototype.acceptOverwrite=function(e,t,n){-1!==e&&(this._fontStyle=e),0!==t&&(this._foreground=t),0!==n&&(this._background=n),this.metadata=(this._fontStyle<<11|this._foreground<<14|this._background<<23)>>>0},e}(),ck=function(){function e(e){this._mainRule=e,this._children=new Map}return e.prototype.match=function(e){if(""===e)return this._mainRule;var t,n,i=e.indexOf(".");-1===i?(t=e,n=""):(t=e.substring(0,i),n=e.substring(i+1));var o=this._children.get(t);return void 0!==o?o.match(n):this._mainRule},e.prototype.insert=function(t,n,i,o){if(""!==t){var r,s,a=t.indexOf(".");-1===a?(r=t,s=""):(r=t.substring(0,a),s=t.substring(a+1));var u=this._children.get(r);void 0===u&&(u=new e(this._mainRule.clone()),this._children.set(r,u)),u.insert(s,n,i,o)}else this._mainRule.acceptOverwrite(n,i,o)},e}();var dk={base:"vs",inherit:!1,rules:[{token:"",foreground:"000000",background:"fffffe"},{token:"invalid",foreground:"cd3131"},{token:"emphasis",fontStyle:"italic"},{token:"strong",fontStyle:"bold"},{token:"variable",foreground:"001188"},{token:"variable.predefined",foreground:"4864AA"},{token:"constant",foreground:"dd0000"},{token:"comment",foreground:"008000"},{token:"number",foreground:"098658"},{token:"number.hex",foreground:"3030c0"},{token:"regexp",foreground:"800000"},{token:"annotation",foreground:"808080"},{token:"type",foreground:"008080"},{token:"delimiter",foreground:"000000"},{token:"delimiter.html",foreground:"383838"},{token:"delimiter.xml",foreground:"0000FF"},{token:"tag",foreground:"800000"},{token:"tag.id.pug",foreground:"4F76AC"},{token:"tag.class.pug",foreground:"4F76AC"},{token:"meta.scss",foreground:"800000"},{token:"metatag",foreground:"e00000"},{token:"metatag.content.html",foreground:"FF0000"},{token:"metatag.html",foreground:"808080"},{token:"metatag.xml",foreground:"808080"},{token:"metatag.php",fontStyle:"bold"},{token:"key",foreground:"863B00"},{token:"string.key.json",foreground:"A31515"},{token:"string.value.json",foreground:"0451A5"},{token:"attribute.name",foreground:"FF0000"},{token:"attribute.value",foreground:"0451A5"},{token:"attribute.value.number",foreground:"098658"},{token:"attribute.value.unit",foreground:"098658"},{token:"attribute.value.html",foreground:"0000FF"},{token:"attribute.value.xml",foreground:"0000FF"},{token:"string",foreground:"A31515"},{token:"string.html",foreground:"0000FF"},{token:"string.sql",foreground:"FF0000"},{token:"string.yaml",foreground:"0451A5"},{token:"keyword",foreground:"0000FF"},{token:"keyword.json",foreground:"0451A5"},{token:"keyword.flow",foreground:"AF00DB"},{token:"keyword.flow.scss",foreground:"0000FF"},{token:"operator.scss",foreground:"666666"},{token:"operator.sql",foreground:"778899"},{token:"operator.swift",foreground:"666666"},{token:"predefined.sql",foreground:"FF00FF"}],colors:(sk={},sk[my]="#FFFFFE",sk[vy]="#000000",sk[Ly]="#E5EBF1",sk[Kb]="#D3D3D3",sk[qb]="#939393",sk[xy]="#ADD6FF4D",sk)},hk={base:"vs-dark",inherit:!1,rules:[{token:"",foreground:"D4D4D4",background:"1E1E1E"},{token:"invalid",foreground:"f44747"},{token:"emphasis",fontStyle:"italic"},{token:"strong",fontStyle:"bold"},{token:"variable",foreground:"74B0DF"},{token:"variable.predefined",foreground:"4864AA"},{token:"variable.parameter",foreground:"9CDCFE"},{token:"constant",foreground:"569CD6"},{token:"comment",foreground:"608B4E"},{token:"number",foreground:"B5CEA8"},{token:"number.hex",foreground:"5BB498"},{token:"regexp",foreground:"B46695"},{token:"annotation",foreground:"cc6666"},{token:"type",foreground:"3DC9B0"},{token:"delimiter",foreground:"DCDCDC"},{token:"delimiter.html",foreground:"808080"},{token:"delimiter.xml",foreground:"808080"},{token:"tag",foreground:"569CD6"},{token:"tag.id.pug",foreground:"4F76AC"},{token:"tag.class.pug",foreground:"4F76AC"},{token:"meta.scss",foreground:"A79873"},{token:"meta.tag",foreground:"CE9178"},{token:"metatag",foreground:"DD6A6F"},{token:"metatag.content.html",foreground:"9CDCFE"},{token:"metatag.html",foreground:"569CD6"},{token:"metatag.xml",foreground:"569CD6"},{token:"metatag.php",fontStyle:"bold"},{token:"key",foreground:"9CDCFE"},{token:"string.key.json",foreground:"9CDCFE"},{token:"string.value.json",foreground:"CE9178"},{token:"attribute.name",foreground:"9CDCFE"},{token:"attribute.value",foreground:"CE9178"},{token:"attribute.value.number.css",foreground:"B5CEA8"},{token:"attribute.value.unit.css",foreground:"B5CEA8"},{token:"attribute.value.hex.css",foreground:"D4D4D4"},{token:"string",foreground:"CE9178"},{token:"string.sql",foreground:"FF0000"},{token:"keyword",foreground:"569CD6"},{token:"keyword.flow",foreground:"C586C0"},{token:"keyword.json",foreground:"CE9178"},{token:"keyword.flow.scss",foreground:"569CD6"},{token:"operator.scss",foreground:"909090"},{token:"operator.sql",foreground:"778899"},{token:"operator.swift",foreground:"909090"},{token:"predefined.sql",foreground:"FF00FF"}],colors:(ak={},ak[my]="#1E1E1E",ak[vy]="#D4D4D4",ak[Ly]="#3A3D41",ak[Kb]="#404040",ak[qb]="#707070",ak[xy]="#ADD6FF26",ak)},pk={base:"hc-black",inherit:!1,rules:[{token:"",foreground:"FFFFFF",background:"000000"},{token:"invalid",foreground:"f44747"},{token:"emphasis",fontStyle:"italic"},{token:"strong",fontStyle:"bold"},{token:"variable",foreground:"1AEBFF"},{token:"variable.parameter",foreground:"9CDCFE"},{token:"constant",foreground:"569CD6"},{token:"comment",foreground:"608B4E"},{token:"number",foreground:"FFFFFF"},{token:"regexp",foreground:"C0C0C0"},{token:"annotation",foreground:"569CD6"},{token:"type",foreground:"3DC9B0"},{token:"delimiter",foreground:"FFFF00"},{token:"delimiter.html",foreground:"FFFF00"},{token:"tag",foreground:"569CD6"},{token:"tag.id.pug",foreground:"4F76AC"},{token:"tag.class.pug",foreground:"4F76AC"},{token:"meta",foreground:"D4D4D4"},{token:"meta.tag",foreground:"CE9178"},{token:"metatag",foreground:"569CD6"},{token:"metatag.content.html",foreground:"1AEBFF"},{token:"metatag.html",foreground:"569CD6"},{token:"metatag.xml",foreground:"569CD6"},{token:"metatag.php",fontStyle:"bold"},{token:"key",foreground:"9CDCFE"},{token:"string.key",foreground:"9CDCFE"},{token:"string.value",foreground:"CE9178"},{token:"attribute.name",foreground:"569CD6"},{token:"attribute.value",foreground:"3FF23F"},{token:"string",foreground:"CE9178"},{token:"string.sql",foreground:"FF0000"},{token:"keyword",foreground:"569CD6"},{token:"keyword.flow",foreground:"C586C0"},{token:"operator.sql",foreground:"778899"},{token:"operator.swift",foreground:"909090"},{token:"predefined.sql",foreground:"FF00FF"}],colors:(uk={},uk[my]="#000000",uk[vy]="#FFFFFF",uk[Kb]="#FFFFFF",uk[qb]="#FFFFFF",uk)},fk=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),gk=Td.as(L_),mk=Td.as(vg),vk=function(){function e(e,t){this.themeData=t;var n=t.base;e.length>0?(this.id=n+" "+e,this.themeName=e):(this.id=n,this.themeName=n),this.colors=null,this.defaultColors=Object.create(null),this._tokenTheme=null}return Object.defineProperty(e.prototype,"base",{get:function(){return this.themeData.base},enumerable:!0,configurable:!0}),e.prototype.notifyBaseUpdated=function(){this.themeData.inherit&&(this.colors=null,this._tokenTheme=null)},e.prototype.getColors=function(){if(!this.colors){var e=new Map;for(var t in this.themeData.colors)e.set(t,mv.fromHex(this.themeData.colors[t]));if(this.themeData.inherit){var n=yk(this.themeData.base);for(var t in n.colors)e.has(t)||e.set(t,mv.fromHex(n.colors[t]))}this.colors=e}return this.colors},e.prototype.getColor=function(e,t){var n=this.getColors().get(e);return n||(!1!==t?this.getDefault(e):void 0)},e.prototype.getDefault=function(e){var t=this.defaultColors[e];return t||(t=gk.resolveDefaultColor(e,this),this.defaultColors[e]=t,t)},e.prototype.defines=function(e){return Object.prototype.hasOwnProperty.call(this.getColors(),e)},Object.defineProperty(e.prototype,"type",{get:function(){switch(this.base){case"vs":return"light";case"hc-black":return"hc";default:return"dark"}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"tokenTheme",{get:function(){if(!this._tokenTheme){var e=[],t=[];if(this.themeData.inherit){var n=yk(this.themeData.base);e=n.rules,n.encodedTokensColors&&(t=n.encodedTokensColors)}e=e.concat(this.themeData.rules),this.themeData.encodedTokensColors&&(t=this.themeData.encodedTokensColors),this._tokenTheme=ok.createFromRawTokenTheme(e,t)}return this._tokenTheme},enumerable:!0,configurable:!0}),e.prototype.getTokenStyleMetadata=function(e,t){},e}();function _k(e){return"vs"===e||"vs-dark"===e||"hc-black"===e}function yk(e){switch(e){case"vs":return dk;case"vs-dark":return hk;case"hc-black":return pk}}function bk(e){var t=yk(e);return new vk(e,t)}var wk=function(e){function t(){var t=e.call(this)||this;return t._onThemeChange=t._register(new nt),t.onThemeChange=t._onThemeChange.event,t._environment=Object.create(null),t._knownThemes=new Map,t._knownThemes.set("vs",bk("vs")),t._knownThemes.set("vs-dark",bk("vs-dark")),t._knownThemes.set("hc-black",bk("hc-black")),t._css="",t._globalStyleElement=null,t._styleElements=[],t.setTheme("vs"),t}return fk(t,e),t.prototype.registerEditorContainer=function(e){return Bo(e)?this._registerShadowDomContainer(e):this._registerRegularEditorContainer()},t.prototype._registerRegularEditorContainer=function(){return this._globalStyleElement||(this._globalStyleElement=zo(),this._globalStyleElement.className="monaco-colors",this._globalStyleElement.innerHTML=this._css,this._styleElements.push(this._globalStyleElement)),He.None},t.prototype._registerShadowDomContainer=function(e){var t=this,n=zo(e);return n.className="monaco-colors",n.innerHTML=this._css,this._styleElements.push(n),{dispose:function(){for(var e=0;e<t._styleElements.length;e++)if(t._styleElements[e]===n)return void t._styleElements.splice(e,1)}}},t.prototype.defineTheme=function(e,t){if(!/^[a-z0-9\-]+$/i.test(e))throw new Error("Illegal theme name!");if(!_k(t.base)&&!_k(e))throw new Error("Illegal theme base!");this._knownThemes.set(e,new vk(e,t)),_k(e)&&this._knownThemes.forEach((function(t){t.base===e&&t.notifyBaseUpdated()})),this._theme&&this._theme.themeName===e&&this.setTheme(e)},t.prototype.getTheme=function(){return this._theme},t.prototype.setTheme=function(e){var t,n=this;if(t=this._knownThemes.has(e)?this._knownThemes.get(e):this._knownThemes.get("vs"),this._theme===t)return t.id;this._theme=t;var i=[],o={},r={addRule:function(e){o[e]||(i.push(e),o[e]=!0)}};mk.getThemingParticipants().forEach((function(e){return e(t,r,n._environment)}));var s=t.tokenTheme.getColorMap();return r.addRule(function(e){for(var t=[],n=1,i=e.length;n<i;n++){var o=e[n];t[n]=".mtk"+n+" { color: "+o+"; }"}return t.push(".mtki { font-style: italic; }"),t.push(".mtkb { font-weight: bold; }"),t.push(".mtku { text-decoration: underline; text-underline-position: under; }"),t.join("\n")}(s)),this._css=i.join("\n"),this._styleElements.forEach((function(e){return e.innerHTML=n._css})),Yu.setColorMap(s),this._onThemeChange.fire(t),t.id},t.prototype.getIconTheme=function(){return{hasFileIcons:!1,hasFolderIcons:!1,hidesExplorerArrows:!1}},t}(He),Ck=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Sk=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Lk=function(e,t){return function(n,i){t(n,i,e)}},xk=function(){function e(e,t){this._id=e,this._parent=t,this._value=Object.create(null),this._value._contextId=e}return e.prototype.setValue=function(e,t){return this._value[e]!==t&&(this._value[e]=t,!0)},e.prototype.removeValue=function(e){return e in this._value&&(delete this._value[e],!0)},e.prototype.getValue=function(e){var t=this._value[e];return void 0===t&&this._parent?this._parent.getValue(e):t},e}(),Dk=function(e){function t(){return e.call(this,-1,null)||this}return Ck(t,e),t.prototype.setValue=function(e,t){return!1},t.prototype.removeValue=function(e){return!1},t.prototype.getValue=function(e){},t.INSTANCE=new t,t}(xk),Nk=function(e){function t(t,n,i){var o=e.call(this,t,null)||this;return o._configurationService=n,o._values=new Map,o._listener=o._configurationService.onDidChangeConfiguration((function(e){if(6===e.source){var t=ea(o._values);o._values.clear(),i.fire(new Ik(t))}else{for(var n=[],r=0,s=e.affectedKeys;r<s.length;r++){var a="config."+s[r];o._values.has(a)&&(o._values.delete(a),n.push(a))}i.fire(new Ik(n))}})),o}return Ck(t,e),t.prototype.dispose=function(){this._listener.dispose()},t.prototype.getValue=function(n){if(0!==n.indexOf(t._keyPrefix))return e.prototype.getValue.call(this,n);if(this._values.has(n))return this._values.get(n);var i=n.substr(t._keyPrefix.length),o=this._configurationService.getValue(i),r=void 0;switch(typeof o){case"number":case"boolean":case"string":r=o}return this._values.set(n,r),r},t.prototype.setValue=function(t,n){return e.prototype.setValue.call(this,t,n)},t.prototype.removeValue=function(t){return e.prototype.removeValue.call(this,t)},t._keyPrefix="config.",t}(xk),kk=function(){function e(e,t,n){this._service=e,this._key=t,this._defaultValue=n,this.reset()}return e.prototype.set=function(e){this._service.setContext(this._key,e)},e.prototype.reset=function(){void 0===this._defaultValue?this._service.removeContext(this._key):this._service.setContext(this._key,this._defaultValue)},e.prototype.get=function(){return this._service.getContextKeyValue(this._key)},e}(),Ek=function(){function e(e){this.key=e}return e.prototype.affectsSome=function(e){return e.has(this.key)},e}(),Ik=function(){function e(e){this.keys=e}return e.prototype.affectsSome=function(e){for(var t=0,n=this.keys;t<n.length;t++){var i=n[t];if(e.has(i))return!0}return!1},e}(),Ok=function(){function e(e){this.events=e}return e.prototype.affectsSome=function(e){for(var t=0,n=this.events;t<n.length;t++){if(n[t].affectsSome(e))return!0}return!1},e}(),Mk=function(){function e(e){this._onDidChangeContext=new it({merge:function(e){return new Ok(e)}}),this._isDisposed=!1,this._myContextId=e}return e.prototype.createKey=function(e,t){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new kk(this,e,t)},Object.defineProperty(e.prototype,"onDidChangeContext",{get:function(){return this._onDidChangeContext.event},enumerable:!0,configurable:!0}),e.prototype.bufferChangeEvents=function(e){this._onDidChangeContext.pause();try{e()}finally{this._onDidChangeContext.resume()}},e.prototype.createScoped=function(e){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new Pk(this,e)},e.prototype.contextMatchesRules=function(e){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");var t=this.getContextValuesContainer(this._myContextId);return Gh.contextMatchesRules(t,e)},e.prototype.getContextKeyValue=function(e){if(!this._isDisposed)return this.getContextValuesContainer(this._myContextId).getValue(e)},e.prototype.setContext=function(e,t){if(!this._isDisposed){var n=this.getContextValuesContainer(this._myContextId);n&&n.setValue(e,t)&&this._onDidChangeContext.fire(new Ek(e))}},e.prototype.removeContext=function(e){this._isDisposed||this.getContextValuesContainer(this._myContextId).removeValue(e)&&this._onDidChangeContext.fire(new Ek(e))},e.prototype.getContext=function(e){return this._isDisposed?Dk.INSTANCE:this.getContextValuesContainer(function(e){for(;e;){if(e.hasAttribute("data-keybinding-context")){var t=e.getAttribute("data-keybinding-context");return t?parseInt(t,10):NaN}e=e.parentElement}return 0}(e))},e}(),Tk=function(e){function t(t){var n=e.call(this,0)||this;n._contexts=new Map,n._toDispose=new Be,n._lastContextId=0;var i=new Nk(n._myContextId,t,n._onDidChangeContext);return n._contexts.set(n._myContextId,i),n._toDispose.add(i),n}return Ck(t,e),t.prototype.dispose=function(){this._isDisposed=!0,this._toDispose.dispose()},t.prototype.getContextValuesContainer=function(e){return this._isDisposed?Dk.INSTANCE:this._contexts.get(e)||Dk.INSTANCE},t.prototype.createChildContext=function(e){if(void 0===e&&(e=this._myContextId),this._isDisposed)throw new Error("ContextKeyService has been disposed");var t=++this._lastContextId;return this._contexts.set(t,new xk(t,this.getContextValuesContainer(e))),t},t.prototype.disposeContext=function(e){this._isDisposed||this._contexts.delete(e)},t=Sk([Lk(0,wh)],t)}(Mk),Pk=function(e){function t(t,n){var i=e.call(this,t.createChildContext())||this;return i._parent=t,n&&(i._domNode=n,i._domNode.setAttribute("data-keybinding-context",String(i._myContextId))),i}return Ck(t,e),t.prototype.dispose=function(){this._isDisposed=!0,this._parent.disposeContext(this._myContextId),this._domNode&&(this._domNode.removeAttribute("data-keybinding-context"),this._domNode=void 0)},Object.defineProperty(t.prototype,"onDidChangeContext",{get:function(){return Ge.any(this._parent.onDidChangeContext,this._onDidChangeContext.event)},enumerable:!0,configurable:!0}),t.prototype.getContextValuesContainer=function(e){return this._isDisposed?Dk.INSTANCE:this._parent.getContextValuesContainer(e)},t.prototype.createChildContext=function(e){if(void 0===e&&(e=this._myContextId),this._isDisposed)throw new Error("ScopedContextKeyService has been disposed");return this._parent.createChildContext(e)},t.prototype.disposeContext=function(e){this._isDisposed||this._parent.disposeContext(e)},t}(Mk);ca.registerCommand("setContext",(function(e,t,n){e.get(qh).createKey(String(t),n)}));n(393),n(394);var Rk,Ak=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Fk=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},Wk=/\(&([^\s&])\)|(^|[^&])&([^\s&])/,Vk=/(&)?(&)([^\s&])/g;!function(e){e[e.Right=0]="Right",e[e.Left=1]="Left"}(Rk||(Rk={}));var Bk=function(e){function t(t,n,i){var o=e.call(this,i||"submenu",t,"",!0)||this;return o.entries=n,o}return Ak(t,e),t}(df),Hk=function(e){function t(t,n,i){void 0===i&&(i={});var o=this;no(t,"monaco-menu-container"),t.setAttribute("role","presentation");var r=document.createElement("div");no(r,"monaco-menu"),r.setAttribute("role","presentation"),(o=e.call(this,r,{orientation:2,actionViewItemProvider:function(e){return o.doGetActionViewItem(e,i,s)},context:i.context,actionRunner:i.actionRunner,ariaLabel:i.ariaLabel,triggerKeys:{keys:Fk([3],_?[10]:[]),keyDown:!0}})||this).menuElement=r,o.actionsList.setAttribute("role","menu"),o.actionsList.tabIndex=0,o.menuDisposables=o._register(new Be),uo(r,qo.KEY_DOWN,(function(e){new ni(e).equals(2)&&e.preventDefault()})),i.enableMnemonics&&o.menuDisposables.add(uo(r,qo.KEY_DOWN,(function(e){var t=e.key.toLocaleLowerCase();if(o.mnemonics.has(t)){Go(e,!0);var n=o.mnemonics.get(t);if(1===n.length&&(n[0]instanceof jk&&n[0].container&&o.focusItemByElement(n[0].container),n[0].onClick(e)),n.length>1){var i=n.shift();i&&i.container&&(o.focusItemByElement(i.container),n.push(i)),o.mnemonics.set(t,n)}}}))),y&&o._register(uo(r,qo.KEY_DOWN,(function(e){var t=new ni(e);t.equals(14)||t.equals(11)?(o.focusedItem=o.viewItems.length-1,o.focusNext(),Go(e,!0)):(t.equals(13)||t.equals(12))&&(o.focusedItem=0,o.focusPrevious(),Go(e,!0))}))),o._register(uo(o.domNode,qo.MOUSE_OUT,(function(e){Fo(e.relatedTarget,o.domNode)||(o.focusedItem=void 0,o.updateFocus(),e.stopPropagation())}))),o._register(uo(o.actionsList,qo.MOUSE_OVER,(function(e){var t=e.target;if(t&&Fo(t,o.actionsList)&&t!==o.actionsList){for(;t.parentElement!==o.actionsList&&null!==t.parentElement;)t=t.parentElement;if(to(t,"action-item")){var n=o.focusedItem;o.setFocusedItem(t),n!==o.focusedItem&&o.updateFocus()}}})));var s={parent:o};o.mnemonics=new Map,o.scrollableElement=o._register(new gS(r,{alwaysConsumeMouseWheel:!0,horizontal:2,vertical:3,verticalScrollbarSize:7,handleMouseWheel:!0,useShadows:!0}));var a=o.scrollableElement.getDomNode();return a.style.position="",o._register(uo(a,qo.MOUSE_UP,(function(e){e.preventDefault()}))),r.style.maxHeight=Math.max(10,window.innerHeight-t.getBoundingClientRect().top-30)+"px",o.push(n,{icon:!0,label:!0,isMenu:!0}),t.appendChild(o.scrollableElement.getDomNode()),o.scrollableElement.scanDomNode(),o.viewItems.filter((function(e){return!(e instanceof Uk)})).forEach((function(e,t,n){e.updatePositionInSet(t+1,n.length)})),o}return Ak(t,e),t.prototype.style=function(e){var t=this.getContainer(),n=e.foregroundColor?""+e.foregroundColor:"",i=e.backgroundColor?""+e.backgroundColor:"",o=e.borderColor?"1px solid "+e.borderColor:"",r=e.shadowColor?"0 2px 4px "+e.shadowColor:"";t.style.border=o,this.domNode.style.color=n,this.domNode.style.backgroundColor=i,t.style.boxShadow=r,this.viewItems&&this.viewItems.forEach((function(t){(t instanceof zk||t instanceof Uk)&&t.style(e)}))},t.prototype.getContainer=function(){return this.scrollableElement.getDomNode()},Object.defineProperty(t.prototype,"onScroll",{get:function(){return this.scrollableElement.onScroll},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"scrollOffset",{get:function(){return this.menuElement.scrollTop},enumerable:!0,configurable:!0}),t.prototype.focusItemByElement=function(e){var t=this.focusedItem;this.setFocusedItem(e),t!==this.focusedItem&&this.updateFocus()},t.prototype.setFocusedItem=function(e){for(var t=0;t<this.actionsList.children.length;t++){if(e===this.actionsList.children[t]){this.focusedItem=t;break}}},t.prototype.updateFocus=function(t){e.prototype.updateFocus.call(this,t,!0),void 0!==this.focusedItem&&this.scrollableElement.setScrollPosition({scrollTop:Math.round(this.menuElement.scrollTop)})},t.prototype.doGetActionViewItem=function(e,t,n){if(e instanceof fD)return new Uk(t.context,e,{icon:!0});if(e instanceof Bk){var i=new jk(e,e.entries,n,t);if(t.enableMnemonics)if((u=i.getMnemonic())&&i.isEnabled()){var o=[];this.mnemonics.has(u)&&(o=this.mnemonics.get(u)),o.push(i),this.mnemonics.set(u,o)}return i}var r={enableMnemonics:t.enableMnemonics};if(t.getKeyBinding){var s=t.getKeyBinding(e);if(s){var a=s.getLabel();a&&(r.keybinding=a)}}var u;i=new zk(t.context,e,r);if(t.enableMnemonics&&(u=i.getMnemonic())&&i.isEnabled()){o=[];this.mnemonics.has(u)&&(o=this.mnemonics.get(u)),o.push(i),this.mnemonics.set(u,o)}return i},t}(vD),zk=function(e){function t(t,n,i){void 0===i&&(i={});var o=this;if(i.isMenu=!0,(o=e.call(this,n,n,i)||this).options=i,o.options.icon=void 0!==i.icon&&i.icon,o.options.label=void 0===i.label||i.label,o.cssClass="",o.options.label&&i.enableMnemonics){var r=o.getAction().label;if(r){var s=Wk.exec(r);s&&(o.mnemonic=(s[1]?s[1]:s[3]).toLocaleLowerCase())}}return o.runOnceToEnableMouseUp=new wi((function(){o.element&&o._register(uo(o.element,qo.MOUSE_UP,(function(e){e.defaultPrevented||(Go(e,!0),o.onClick(e))})))}),100),o._register(o.runOnceToEnableMouseUp),o}return Ak(t,e),t.prototype.render=function(t){e.prototype.render.call(this,t),this.element&&(this.container=t,this.item=Xo(this.element,er("a.action-menu-item")),this._action.id===fD.ID?this.item.setAttribute("role","presentation"):(this.item.setAttribute("role","menuitem"),this.mnemonic&&this.item.setAttribute("aria-keyshortcuts",""+this.mnemonic)),this.check=Xo(this.item,er("span.menu-item-check.codicon.codicon-check")),this.check.setAttribute("role","none"),this.label=Xo(this.item,er("span.action-label")),this.options.label&&this.options.keybinding&&(Xo(this.item,er("span.keybinding")).textContent=this.options.keybinding),this.runOnceToEnableMouseUp.schedule(),this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked())},t.prototype.blur=function(){e.prototype.blur.call(this),this.applyStyle()},t.prototype.focus=function(){e.prototype.focus.call(this),this.item&&this.item.focus(),this.applyStyle()},t.prototype.updatePositionInSet=function(e,t){this.item&&(this.item.setAttribute("aria-posinset",""+e),this.item.setAttribute("aria-setsize",""+t))},t.prototype.updateLabel=function(){if(this.options.label){var e=this.getAction().label;if(e){var t=function(e){var t=Wk,n=t.exec(e);if(!n)return e;var i=!n[1];return e.replace(t,i?"$2$3":"").trim()}(e);this.options.enableMnemonics||(e=t),this.label&&this.label.setAttribute("aria-label",t.replace(/&&/g,"&"));var n=Wk.exec(e);if(n){e=fr(e),Vk.lastIndex=0;for(var i=Vk.exec(e);i&&i[1];)i=Vk.exec(e);i&&(e=e.substr(0,i.index)+'<u aria-hidden="true">'+i[3]+"</u>"+e.substr(i.index+i[0].length)),e=e.replace(/&&/g,"&"),this.item&&this.item.setAttribute("aria-keyshortcuts",(n[1]?n[1]:n[3]).toLocaleLowerCase())}else e=e.replace(/&&/g,"&")}this.label&&(this.label.innerHTML=e.trim())}},t.prototype.updateTooltip=function(){var e=null;this.getAction().tooltip?e=this.getAction().tooltip:!this.options.label&&this.getAction().label&&this.options.icon&&(e=this.getAction().label,this.options.keybinding&&(e=r({key:"titleLabel",comment:["action title","action keybinding"]},"{0} ({1})",e,this.options.keybinding))),e&&this.item&&(this.item.title=e)},t.prototype.updateClass=function(){this.cssClass&&this.item&&ro(this.item,this.cssClass),this.options.icon&&this.label?(this.cssClass=this.getAction().class||"",no(this.label,"icon"),this.cssClass&&io(this.label,this.cssClass),this.updateEnabled()):this.label&&oo(this.label,"icon")},t.prototype.updateEnabled=function(){this.getAction().enabled?(this.element&&oo(this.element,"disabled"),this.item&&(oo(this.item,"disabled"),this.item.tabIndex=0)):(this.element&&no(this.element,"disabled"),this.item&&(no(this.item,"disabled"),ir(this.item)))},t.prototype.updateChecked=function(){this.item&&(this.getAction().checked?(no(this.item,"checked"),this.item.setAttribute("role","menuitemcheckbox"),this.item.setAttribute("aria-checked","true")):(oo(this.item,"checked"),this.item.setAttribute("role","menuitem"),this.item.setAttribute("aria-checked","false")))},t.prototype.getMnemonic=function(){return this.mnemonic},t.prototype.applyStyle=function(){if(this.menuStyle){var e=this.element&&to(this.element,"focused"),t=e&&this.menuStyle.selectionForegroundColor?this.menuStyle.selectionForegroundColor:this.menuStyle.foregroundColor,n=e&&this.menuStyle.selectionBackgroundColor?this.menuStyle.selectionBackgroundColor:void 0,i=e&&this.menuStyle.selectionBorderColor?"thin solid "+this.menuStyle.selectionBorderColor:"";this.item&&(this.item.style.color=t?t.toString():"",this.item.style.backgroundColor=n?n.toString():""),this.check&&(this.check.style.color=t?t.toString():""),this.container&&(this.container.style.border=i)}},t.prototype.style=function(e){this.menuStyle=e,this.applyStyle()},t}(pD),jk=function(e){function t(t,n,i,o){var r=e.call(this,t,t,o)||this;return r.submenuActions=n,r.parentData=i,r.submenuOptions=o,r.mysubmenu=null,r.submenuDisposables=r._register(new Be),r.mouseOver=!1,r.expandDirection=o&&void 0!==o.expandDirection?o.expandDirection:Rk.Right,r.showScheduler=new wi((function(){r.mouseOver&&(r.cleanupExistingSubmenu(!1),r.createSubmenu(!1))}),250),r.hideScheduler=new wi((function(){r.element&&!Fo(document.activeElement,r.element)&&r.parentData.submenu===r.mysubmenu&&(r.parentData.parent.focus(!1),r.cleanupExistingSubmenu(!0))}),750),r}return Ak(t,e),t.prototype.render=function(t){var n=this;e.prototype.render.call(this,t),this.element&&(this.item&&(no(this.item,"monaco-submenu-item"),this.item.setAttribute("aria-haspopup","true"),this.updateAriaExpanded("false"),this.submenuIndicator=Xo(this.item,er("span.submenu-indicator.codicon.codicon-chevron-right")),this.submenuIndicator.setAttribute("aria-hidden","true")),this._register(uo(this.element,qo.KEY_UP,(function(e){var t=new ni(e);(t.equals(17)||t.equals(3))&&(Go(e,!0),n.createSubmenu(!0))}))),this._register(uo(this.element,qo.KEY_DOWN,(function(e){var t=new ni(e);document.activeElement===n.item&&(t.equals(17)||t.equals(3))&&Go(e,!0)}))),this._register(uo(this.element,qo.MOUSE_OVER,(function(e){n.mouseOver||(n.mouseOver=!0,n.showScheduler.schedule())}))),this._register(uo(this.element,qo.MOUSE_LEAVE,(function(e){n.mouseOver=!1}))),this._register(uo(this.element,qo.FOCUS_OUT,(function(e){n.element&&!Fo(document.activeElement,n.element)&&n.hideScheduler.schedule()}))),this._register(this.parentData.parent.onScroll((function(){n.parentData.parent.focus(!1),n.cleanupExistingSubmenu(!1)}))))},t.prototype.onClick=function(e){Go(e,!0),this.cleanupExistingSubmenu(!1),this.createSubmenu(!0)},t.prototype.cleanupExistingSubmenu=function(e){this.parentData.submenu&&(e||this.parentData.submenu!==this.mysubmenu)&&(this.parentData.submenu.dispose(),this.parentData.submenu=void 0,this.updateAriaExpanded("false"),this.submenuContainer&&(this.submenuDisposables.clear(),this.submenuContainer=void 0))},t.prototype.createSubmenu=function(e){var t=this;if(void 0===e&&(e=!0),this.element)if(this.parentData.submenu)this.parentData.submenu.focus(!1);else{this.updateAriaExpanded("true"),this.submenuContainer=Xo(this.element,er("div.monaco-submenu")),io(this.submenuContainer,"menubar-menu-items-holder","context-view");var n=getComputedStyle(this.parentData.parent.domNode),i=parseFloat(n.paddingTop||"0")||0;this.submenuContainer.style.top=this.element.offsetTop-this.parentData.parent.scrollOffset-i+"px",this.parentData.submenu=new Hk(this.submenuContainer,this.submenuActions,this.submenuOptions),this.menuStyle&&this.parentData.submenu.style(this.menuStyle);var o=this.element.getBoundingClientRect(),r=this.submenuContainer.getBoundingClientRect();this.expandDirection===Rk.Right?window.innerWidth<=o.right+r.width?(this.submenuContainer.style.left="10px",this.submenuContainer.style.top=this.element.offsetTop-this.parentData.parent.scrollOffset+o.height+"px"):(this.submenuContainer.style.left=this.element.offsetWidth+"px",this.submenuContainer.style.top=this.element.offsetTop-this.parentData.parent.scrollOffset-i+"px"):this.expandDirection===Rk.Left&&(this.submenuContainer.style.right=this.element.offsetWidth+"px",this.submenuContainer.style.left="auto",this.submenuContainer.style.top=this.element.offsetTop-this.parentData.parent.scrollOffset-i+"px"),this.submenuDisposables.add(uo(this.submenuContainer,qo.KEY_UP,(function(e){new ni(e).equals(15)&&(Go(e,!0),t.parentData.parent.focus(),t.cleanupExistingSubmenu(!0))}))),this.submenuDisposables.add(uo(this.submenuContainer,qo.KEY_DOWN,(function(e){new ni(e).equals(15)&&Go(e,!0)}))),this.submenuDisposables.add(this.parentData.submenu.onDidCancel((function(){t.parentData.parent.focus(),t.cleanupExistingSubmenu(!0)}))),this.parentData.submenu.focus(e),this.mysubmenu=this.parentData.submenu}},t.prototype.updateAriaExpanded=function(e){var t;this.item&&(null===(t=this.item)||void 0===t||t.setAttribute("aria-expanded",e))},t.prototype.applyStyle=function(){if(e.prototype.applyStyle.call(this),this.menuStyle){var t=this.element&&to(this.element,"focused")&&this.menuStyle.selectionForegroundColor?this.menuStyle.selectionForegroundColor:this.menuStyle.foregroundColor;this.submenuIndicator&&(this.submenuIndicator.style.color=t?""+t:""),this.parentData.submenu&&this.parentData.submenu.style(this.menuStyle)}},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.hideScheduler.dispose(),this.mysubmenu&&(this.mysubmenu.dispose(),this.mysubmenu=null),this.submenuContainer&&(this.submenuContainer=void 0)},t}(zk),Uk=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Ak(t,e),t.prototype.style=function(e){this.label&&(this.label.style.borderBottomColor=e.separatorColor?""+e.separatorColor:"")},t}(gD);var Kk=function(){return(Kk=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function qk(e,t,n){function i(i){var o=function(e,t){var n=Object.create(null);for(var i in t){var o=t[i];o&&(n[i]=Tb(o,e))}return n}(e.getTheme(),t);"function"==typeof n?n(o):n.style(o)}return i(e.getTheme()),e.onThemeChange(i)}function Gk(e,t,n){return qk(t,Kk(Kk({},Zk),n||{}),e)}var Zk={listFocusBackground:Zy,listFocusForeground:Yy,listActiveSelectionBackground:Eb(Xy,.1),listActiveSelectionForeground:$y,listFocusAndSelectionBackground:Xy,listFocusAndSelectionForeground:$y,listInactiveSelectionBackground:Qy,listInactiveSelectionForeground:Jy,listInactiveFocusBackground:eb,listHoverBackground:tb,listHoverForeground:nb,listDropBackground:ib,listFocusOutline:T_,listSelectionOutline:T_,listHoverOutline:T_,listFilterWidgetBackground:rb,listFilterWidgetOutline:sb,listFilterWidgetNoMatchesOutline:ab,listMatchesShadow:A_,treeIndentGuidesStroke:ub},Yk={shadowColor:A_,borderColor:lb,foregroundColor:cb,backgroundColor:db,selectionForegroundColor:hb,selectionBackgroundColor:pb,selectionBorderColor:fb,separatorColor:gb};var Xk,$k=function(){function e(e,t,n,i,o){this.contextViewService=e,this.telemetryService=t,this.notificationService=n,this.keybindingService=i,this.themeService=o,this.focusToReturn=null,this.block=null,this.options={blockMouse:!0}}return e.prototype.configure=function(e){this.options=e},e.prototype.showContextMenu=function(e){var t,n=this,i=e.getActions();i.length&&(this.focusToReturn=document.activeElement,this.contextViewService.showContextView({getAnchor:function(){return e.getAnchor()},canRelayout:!1,anchorAlignment:e.anchorAlignment,render:function(o){var r=e.getMenuClassName?e.getMenuClassName():"";r&&(o.className+=" "+r),n.options.blockMouse&&(n.block=o.appendChild(er(".context-view-block")));var s,a,u=new Be,l=e.actionRunner||new hf;return l.onDidBeforeRun(n.onActionRun,n,u),l.onDidRun(n.onDidActionRun,n,u),t=new Hk(o,i,{actionViewItemProvider:e.getActionViewItem,context:e.getActionsContext?e.getActionsContext():null,actionRunner:l,getKeyBinding:e.getKeyBinding?e.getKeyBinding:function(e){return n.keybindingService.lookupKeybinding(e.id)}}),u.add((s=t,qk(n.themeService,Kk(Kk({},Yk),a),s))),t.onDidCancel((function(){return n.contextViewService.hideContextView(!0)}),null,u),t.onDidBlur((function(){return n.contextViewService.hideContextView(!0)}),null,u),Xn(window,qo.BLUR)((function(){n.contextViewService.hideContextView(!0)}),null,u),Xn(window,qo.MOUSE_DOWN)((function(e){if(!e.defaultPrevented){var t=new li(e),i=t.target;if(!t.rightButton){for(;i;){if(i===o)return;i=i.parentElement}n.contextViewService.hideContextView(!0)}}}),null,u),Fe(u,t)},focus:function(){t&&t.focus(!!e.autoSelectFirstItem)},onHide:function(t){e.onHide&&e.onHide(!!t),n.block&&(Xi(n.block),n.block=null),n.focusToReturn&&n.focusToReturn.focus()}}))},e.prototype.onActionRun=function(e){this.telemetryService&&this.telemetryService.publicLog2("workbenchActionExecuted",{id:e.action.id,from:"contextMenu"}),this.contextViewService.hideContextView(!1),this.focusToReturn&&this.focusToReturn.focus()},e.prototype.onDidActionRun=function(e){e.error&&this.notificationService&&this.notificationService.error(e.error)},e}(),Qk=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Jk=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},eE=function(e,t){return function(n,i){t(n,i,e)}},tE=function(e){function t(t,n,i,o,r){var s=e.call(this)||this;return s._onDidContextMenu=s._register(new nt),s.contextMenuHandler=new $k(i,t,n,o,r),s}return Qk(t,e),t.prototype.configure=function(e){this.contextMenuHandler.configure(e)},t.prototype.showContextMenu=function(e){this.contextMenuHandler.showContextMenu(e),this._onDidContextMenu.fire()},t=Jk([eE(0,Lf),eE(1,ap),eE(2,xD),eE(3,XD),eE(4,fg)],t)}(He);n(395);!function(e){function t(e,t){if(e.start>=t.end||t.start>=e.end)return{start:0,end:0};var n=Math.max(e.start,t.start),i=Math.min(e.end,t.end);return i-n<=0?{start:0,end:0}:{start:n,end:i}}function n(e){return e.end-e.start<=0}e.intersect=t,e.isEmpty=n,e.intersects=function(e,i){return!n(t(e,i))},e.relativeComplement=function(e,t){var i=[],o={start:e.start,end:Math.min(t.start,e.end)},r={start:Math.max(t.end,e.start),end:e.end};return n(o)||i.push(o),n(r)||i.push(r),i}}(Xk||(Xk={}));var nE=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function iE(e,t,n){var i=n.offset+n.size;return 0===n.position?t<=e-i?i:t<=n.offset?n.offset-t:Math.max(e-t,0):t<=n.offset?n.offset-t:t<=e-i?i:0}var oE=function(e){function t(t){var n=e.call(this)||this;return n.container=null,n.delegate=null,n.toDisposeOnClean=He.None,n.toDisposeOnSetContainer=He.None,n.view=er(".context-view"),nr(n.view),n.setContainer(t),n._register(We((function(){return n.setContainer(null)}))),n}return nE(t,e),t.prototype.setContainer=function(e){var n=this;if(this.container&&(this.toDisposeOnSetContainer.dispose(),this.container.removeChild(this.view),this.container=null),e){this.container=e,this.container.appendChild(this.view);var i=new Be;t.BUBBLE_UP_EVENTS.forEach((function(e){i.add(co(n.container,e,(function(e){n.onDOMEvent(e,!1)})))})),t.BUBBLE_DOWN_EVENTS.forEach((function(e){i.add(co(n.container,e,(function(e){n.onDOMEvent(e,!0)}),!0))})),this.toDisposeOnSetContainer=i}},t.prototype.show=function(e){this.isVisible()&&this.hide(),Yi(this.view),this.view.className="context-view",this.view.style.top="0px",this.view.style.left="0px",tr(this.view),this.toDisposeOnClean=e.render(this.view)||He.None,this.delegate=e,this.doLayout(),this.delegate.focus&&this.delegate.focus()},t.prototype.layout=function(){this.isVisible()&&(!1!==this.delegate.canRelayout||C&&Ki.pointerEvents?(this.delegate.layout&&this.delegate.layout(),this.doLayout()):this.hide())},t.prototype.doLayout=function(){if(this.isVisible()){var e,t,n=this.delegate.getAnchor();if(t=n,"object"==typeof HTMLElement?t instanceof HTMLElement:t&&"object"==typeof t&&1===t.nodeType&&"string"==typeof t.nodeName){var i=Oo(n);e={top:i.top,left:i.left,width:i.width,height:i.height}}else e={top:n.y,left:n.x,width:n.width||1,height:n.height||2};var o,r=To(this.view),s=Ao(this.view),a=this.delegate.anchorPosition||0,u=this.delegate.anchorAlignment||0,l={offset:e.top-window.pageYOffset,size:e.height,position:0===a?0:1};o=0===u?{offset:e.left,size:0,position:0}:{offset:e.left+e.width,size:0,position:1};var c=iE(window.innerHeight,s,l)+window.pageYOffset;Xk.intersects({start:c,end:c+s},{start:l.offset,end:l.offset+l.size})&&(o.size=e.width,1===u&&(o.offset=e.left));var d=iE(window.innerWidth,r,o);ro(this.view,"top","bottom","left","right"),no(this.view,0===a?"bottom":"top"),no(this.view,0===u?"left":"right");var h=Oo(this.container);this.view.style.top=c-h.top+"px",this.view.style.left=d-h.left+"px",this.view.style.width="initial"}},t.prototype.hide=function(e){var t=this.delegate;this.delegate=null,(null==t?void 0:t.onHide)&&t.onHide(e),this.toDisposeOnClean.dispose(),nr(this.view)},t.prototype.isVisible=function(){return!!this.delegate},t.prototype.onDOMEvent=function(e,t){this.delegate&&(this.delegate.onDOMEvent?this.delegate.onDOMEvent(e,document.activeElement):t&&!Fo(e.target,this.container)&&this.hide())},t.prototype.dispose=function(){this.hide(),e.prototype.dispose.call(this)},t.BUBBLE_UP_EVENTS=["click","keydown","focus","blur"],t.BUBBLE_DOWN_EVENTS=["click"],t}(He),rE=Mn("layoutService"),sE=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),aE=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},uE=function(e,t){return function(n,i){t(n,i,e)}},lE=function(e){function t(t){var n=e.call(this)||this;return n.layoutService=t,n.contextView=n._register(new oE(t.container)),n.layout(),n._register(t.onLayout((function(){return n.layout()}))),n}return sE(t,e),t.prototype.setContainer=function(e){this.contextView.setContainer(e)},t.prototype.showContextView=function(e){this.contextView.show(e)},t.prototype.layout=function(){this.contextView.layout()},t.prototype.hideContextView=function(e){this.contextView.hide(e)},t=aE([uE(0,rE)],t)}(He),cE=Mn("dialogService");var dE,hE=function(){function e(e){this._hashFn=e,this._nodes=Object.create(null)}return e.prototype.roots=function(){var e=[];return Qd(this._nodes,(function(t){Us(t.value.outgoing)&&e.push(t.value)})),e},e.prototype.insertEdge=function(e,t){var n=this.lookupOrInsertNode(e),i=this.lookupOrInsertNode(t);n.outgoing[this._hashFn(t)]=i,i.incoming[this._hashFn(e)]=n},e.prototype.removeNode=function(e){var t=this._hashFn(e);delete this._nodes[t],Qd(this._nodes,(function(e){delete e.value.outgoing[t],delete e.value.incoming[t]}))},e.prototype.lookupOrInsertNode=function(e){var t=this._hashFn(e),n=this._nodes[t];return n||(n=function(e){return{data:e,incoming:Object.create(null),outgoing:Object.create(null)}}(e),this._nodes[t]=n),n},e.prototype.isEmpty=function(){for(var e in this._nodes)return!1;return!0},e.prototype.toString=function(){var e=[];return Qd(this._nodes,(function(t){e.push(t.key+", (incoming)["+Object.keys(t.value.incoming).join(", ")+"], (outgoing)["+Object.keys(t.value.outgoing).join(",")+"]")})),e.join("\n")},e}(),pE=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),fE=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},gE="function"==typeof Proxy,mE=function(e){function t(t){var n=e.call(this,"cyclic dependency between services")||this;return n.message=t.toString(),n}return pE(t,e),t}(Error),vE=function(){function e(e,t,n){void 0===e&&(e=new fx),void 0===t&&(t=!1),this._services=e,this._strict=t,this._parent=n,this._services.set(In,this)}return e.prototype.createChild=function(t){return new e(t,this._strict,this)},e.prototype.invokeFunction=function(e){for(var t=this,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];var o=_E.traceInvocation(e),r=!1;try{var s={get:function(e,n){if(r)throw Me("service accessor is only valid during the invocation of its target method");var i=t._getOrCreateServiceInstance(e,o);if(!i&&n!==Tn)throw new Error("[invokeFunction] unknown service '"+e+"'");return i}};return e.apply(void 0,fE([s],n))}finally{r=!0,o.stop()}},e.prototype.createInstance=function(e){for(var t,n,i=[],o=1;o<arguments.length;o++)i[o-1]=arguments[o];return e instanceof Xx?(t=_E.traceCreation(e.ctor),n=this._createInstance(e.ctor,e.staticArguments.concat(i),t)):(t=_E.traceCreation(e),n=this._createInstance(e,i,t)),t.stop(),n},e.prototype._createInstance=function(e,t,n){void 0===t&&(t=[]);for(var i=En.getServiceDependencies(e).sort((function(e,t){return e.index-t.index})),o=[],r=0,s=i;r<s.length;r++){var a=s[r],u=this._getOrCreateServiceInstance(a.id,n);if(!u&&this._strict&&!a.optional)throw new Error("[createInstance] "+e.name+" depends on UNKNOWN service "+a.id+".");o.push(u)}var l=i.length>0?i[0].index:t.length;if(t.length!==l){console.warn("[createInstance] First service dependency of "+e.name+" at position "+(l+1)+" conflicts with "+t.length+" static arguments");var c=l-t.length;t=c>0?t.concat(new Array(c)):t.slice(0,l)}return new(e.bind.apply(e,fE([void 0],fE(t,o))))},e.prototype._setServiceInstance=function(e,t){if(this._services.get(e)instanceof Xx)this._services.set(e,t);else{if(!this._parent)throw new Error("illegalState - setting UNKNOWN service instance");this._parent._setServiceInstance(e,t)}},e.prototype._getServiceInstanceOrDescriptor=function(e){var t=this._services.get(e);return!t&&this._parent?this._parent._getServiceInstanceOrDescriptor(e):t},e.prototype._getOrCreateServiceInstance=function(e,t){var n=this._getServiceInstanceOrDescriptor(e);return n instanceof Xx?this._createAndCacheServiceInstance(e,n,t.branch(e,!0)):(t.branch(e,!1),n)},e.prototype._createAndCacheServiceInstance=function(e,t,n){for(var i=new hE((function(e){return e.id.toString()})),o=0,r=[{id:e,desc:t,_trace:n}];r.length;){var s=r.pop();if(i.lookupOrInsertNode(s),o++>150)throw new mE(i);for(var a=0,u=En.getServiceDependencies(s.desc.ctor);a<u.length;a++){var l=u[a],c=this._getServiceInstanceOrDescriptor(l.id);if(c||l.optional||console.warn("[createInstance] "+e+" depends on "+l.id+" which is NOT registered."),c instanceof Xx){var d={id:l.id,desc:c,_trace:s._trace.branch(l.id,!0)};i.insertEdge(s,d),r.push(d)}}}for(;;){var h=i.roots();if(0===h.length){if(!i.isEmpty())throw new mE(i);break}for(var p=0,f=h;p<f.length;p++){var g=f[p].data,m=this._createServiceInstanceWithOwner(g.id,g.desc.ctor,g.desc.staticArguments,g.desc.supportsDelayedInstantiation,g._trace);this._setServiceInstance(g.id,m),i.removeNode(g)}}return this._getServiceInstanceOrDescriptor(e)},e.prototype._createServiceInstanceWithOwner=function(e,t,n,i,o){if(void 0===n&&(n=[]),this._services.get(e)instanceof Xx)return this._createServiceInstance(t,n,i,o);if(this._parent)return this._parent._createServiceInstanceWithOwner(e,t,n,i,o);throw new Error("illegalState - creating UNKNOWN service instance "+t.name)},e.prototype._createServiceInstance=function(e,t,n,i){var o=this;if(void 0===t&&(t=[]),n&&gE){var r=new Si((function(){return o._createInstance(e,t,i)}));return new Proxy(Object.create(null),{get:function(e,t){if(t in e)return e[t];var n=r.getValue(),i=n[t];return"function"!=typeof i||(i=i.bind(n),e[t]=i),i},set:function(e,t,n){return r.getValue()[t]=n,!0}})}return this._createInstance(e,t,i)},e}(),_E=function(){function e(e,t){this.type=e,this.name=t,this._start=Date.now(),this._dep=[]}return e.traceInvocation=function(t){return e._None},e.traceCreation=function(t){return e._None},e.prototype.branch=function(t,n){var i=new e(2,t.toString());return this._dep.push([t,n,i]),i},e.prototype.stop=function(){var t=Date.now()-this._start;e._totals+=t;var n=!1;var i=[(0===this.type?"CREATE":"CALL")+" "+this.name,""+function e(t,i){for(var o=[],r=new Array(t+1).join("\t"),s=0,a=i._dep;s<a.length;s++){var u=a[s],l=u[0],c=u[1],d=u[2];if(c&&d){n=!0,o.push(r+"CREATES -> "+l);var h=e(t+1,d);h&&o.push(h)}else o.push(r+"uses -> "+l)}return o.join("\n")}(1,this),"DONE, took "+t.toFixed(2)+"ms (grand total "+e._totals.toFixed(2)+"ms)"];(t>2||n)&&console.log(i.join("\n"))},e._None=new(function(e){function t(){return e.call(this,-1,null)||this}return pE(t,e),t.prototype.stop=function(){},t.prototype.branch=function(){return this},t}(e)),e._totals=0,e}(),yE=Mn("label"),bE=(n(396),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}());!function(e){e.TREE="tree",e.FORM="form"}(dE||(dE={}));var wE=function(e){function t(t,n){return e.call(this,"ListError ["+t+"] "+n)||this}return bE(t,e),t}(Error);function CE(e,t){for(var n=[],i=0,o=t;i<o.length;i++){var r=o[i];if(!(e.start>=r.range.end)){if(e.end<r.range.start)break;var s=Xk.intersect(e,r.range);Xk.isEmpty(s)||n.push({range:s,size:r.size})}}return n}function SE(e,t){return{start:e.start+t,end:e.end+t}}function LE(e){for(var t=[],n=null,i=0,o=e;i<o.length;i++){var r=o[i],s=r.range.start,a=r.range.end,u=r.size;n&&u===n.size?n.range.end=a:(n={range:{start:s,end:a},size:u},t.push(n))}return t}var xE=function(){function e(){this.groups=[],this._size=0}return e.prototype.splice=function(e,t,n){void 0===n&&(n=[]);var i=n.length-t,o=CE({start:0,end:e},this.groups),r=CE({start:e+t,end:Number.POSITIVE_INFINITY},this.groups).map((function(e){return{range:SE(e.range,i),size:e.size}})),s=n.map((function(t,n){return{range:{start:e+n,end:e+n+1},size:t.size}}));this.groups=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return LE(e.reduce((function(e,t){return e.concat(t)}),[]))}(o,s,r),this._size=this.groups.reduce((function(e,t){return e+t.size*(t.range.end-t.range.start)}),0)},Object.defineProperty(e.prototype,"count",{get:function(){var e=this.groups.length;return e?this.groups[e-1].range.end:0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"size",{get:function(){return this._size},enumerable:!0,configurable:!0}),e.prototype.indexAt=function(e){if(e<0)return-1;for(var t=0,n=0,i=0,o=this.groups;i<o.length;i++){var r=o[i],s=r.range.end-r.range.start,a=n+s*r.size;if(e<a)return t+Math.floor((e-n)/r.size);t+=s,n=a}return t},e.prototype.indexAfter=function(e){return Math.min(this.indexAt(e)+1,this.count)},e.prototype.positionAt=function(e){if(e<0)return-1;for(var t=0,n=0,i=0,o=this.groups;i<o.length;i++){var r=o[i],s=r.range.end-r.range.start,a=n+s;if(e<a)return t+(e-n)*r.size;t+=s*r.size,n=a}return-1},e}();var DE=function(){function e(e){this.renderers=e,this.cache=new Map}return e.prototype.alloc=function(e){var t=this.getTemplateCache(e).pop();if(!t){var n=er(".monaco-list-row");t={domNode:n,templateId:e,templateData:this.getRenderer(e).renderTemplate(n)}}return t},e.prototype.release=function(e){e&&this.releaseRow(e)},e.prototype.releaseRow=function(e){var t=e.domNode,n=e.templateId;t&&(oo(t,"scrolling"),function(e){try{e.parentElement&&e.parentElement.removeChild(e)}catch(e){}}(t)),this.getTemplateCache(n).push(e)},e.prototype.getTemplateCache=function(e){var t=this.cache.get(e);return t||(t=[],this.cache.set(e,t)),t},e.prototype.dispose=function(){var e=this;this.cache.forEach((function(t,n){for(var i=0,o=t;i<o.length;i++){var r=o[i];e.getRenderer(n).disposeTemplate(r.templateData),r.domNode=null,r.templateData=null}})),this.cache.clear()},e.prototype.getRenderer=function(e){var t=this.renderers.get(e);if(!t)throw new Error("No renderer found for "+e);return t},e}(),NE=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},kE=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},EE={useShadows:!0,verticalScrollMode:1,setRowLineHeight:!0,supportDynamicHeights:!1,dnd:{getDragElements:function(e){return[e]},getDragURI:function(){return null},onDragStart:function(){},onDragOver:function(){return!1},drop:function(){}},horizontalScrolling:!1},IE=function(){function e(e){this.elements=e}return e.prototype.update=function(){},e.prototype.getData=function(){return this.elements},e}(),OE=function(){function e(e){this.elements=e}return e.prototype.update=function(){},e.prototype.getData=function(){return this.elements},e}(),ME=function(){function e(){this.types=[],this.files=[]}return e.prototype.update=function(e){var t;if(e.types&&(t=this.types).splice.apply(t,kE([0,this.types.length],e.types)),e.files){this.files.splice(0,this.files.length);for(var n=0;n<e.files.length;n++){var i=e.files.item(n);i&&(i.size||i.type)&&this.files.push(i)}}},e.prototype.getData=function(){return{types:this.types,files:this.files}},e}();var TE=function(){function e(t,n,i,o){var r=this;if(void 0===o&&(o=EE),this.virtualDelegate=n,this.domId="list_id_"+ ++e.InstanceCount,this.renderers=new Map,this.renderWidth=0,this._scrollHeight=0,this.scrollableElementUpdateDisposable=null,this.scrollableElementWidthDelayer=new fi(50),this.splicing=!1,this.dragOverAnimationStopDisposable=He.None,this.dragOverMouseY=0,this.canDrop=!1,this.currentDragFeedbackDisposable=He.None,this.onDragLeaveTimeout=He.None,this.disposables=new Be,this._onDidChangeContentHeight=new nt,o.horizontalScrolling&&o.supportDynamicHeights)throw new Error("Horizontal scrolling and dynamic heights not supported simultaneously");this.items=[],this.itemId=0,this.rangeMap=new xE;for(var s=0,a=i;s<a.length;s++){var u=a[s];this.renderers.set(u.templateId,u)}this.cache=this.disposables.add(new DE(this.renderers)),this.lastRenderTop=0,this.lastRenderHeight=0,this.domNode=document.createElement("div"),this.domNode.className="monaco-list",no(this.domNode,this.domId),this.domNode.tabIndex=0,so(this.domNode,"mouse-support","boolean"!=typeof o.mouseSupport||o.mouseSupport),this.horizontalScrolling=Ia(o,(function(e){return e.horizontalScrolling}),EE.horizontalScrolling),so(this.domNode,"horizontal-scrolling",this.horizontalScrolling),this.additionalScrollHeight=void 0===o.additionalScrollHeight?0:o.additionalScrollHeight,this.ariaProvider=o.ariaProvider||{getSetSize:function(e,t,n){return n},getPosInSet:function(e,t){return t+1}},this.rowsContainer=document.createElement("div"),this.rowsContainer.className="monaco-list-rows",this.rowsContainer.style.transform="translate3d(0px, 0px, 0px)",this.disposables.add(jf.addTarget(this.rowsContainer)),this.scrollableElement=this.disposables.add(new pS(this.rowsContainer,{alwaysConsumeMouseWheel:!0,horizontal:this.horizontalScrolling?1:2,vertical:Ia(o,(function(e){return e.verticalScrollMode}),EE.verticalScrollMode),useShadows:Ia(o,(function(e){return e.useShadows}),EE.useShadows)})),this.domNode.appendChild(this.scrollableElement.getDomNode()),t.appendChild(this.domNode),this.scrollableElement.onScroll(this.onScroll,this,this.disposables),Xn(this.rowsContainer,Bf.Change)(this.onTouchChange,this,this.disposables),Xn(this.scrollableElement.getDomNode(),"scroll")((function(e){return e.target.scrollTop=0}),null,this.disposables),Ge.map(Xn(this.domNode,"dragover"),(function(e){return r.toDragEvent(e)}))(this.onDragOver,this,this.disposables),Ge.map(Xn(this.domNode,"drop"),(function(e){return r.toDragEvent(e)}))(this.onDrop,this,this.disposables),Xn(this.domNode,"dragleave")(this.onDragLeave,this,this.disposables),Xn(window,"dragend")(this.onDragEnd,this,this.disposables),this.setRowLineHeight=Ia(o,(function(e){return e.setRowLineHeight}),EE.setRowLineHeight),this.supportDynamicHeights=Ia(o,(function(e){return e.supportDynamicHeights}),EE.supportDynamicHeights),this.dnd=Ia(o,(function(e){return e.dnd}),EE.dnd),this.layout()}return Object.defineProperty(e.prototype,"contentHeight",{get:function(){return this.rangeMap.size},enumerable:!0,configurable:!0}),e.prototype.splice=function(e,t,n){if(void 0===n&&(n=[]),this.splicing)throw new Error("Can't run recursive splices.");this.splicing=!0;try{return this._splice(e,t,n)}finally{this.splicing=!1,this._onDidChangeContentHeight.fire(this.contentHeight)}},e.prototype._splice=function(e,t,n){var i,o=this;void 0===n&&(n=[]);for(var r=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),s={start:e,end:e+t},a=Xk.intersect(r,s),u=a.start;u<a.end;u++)this.removeItemFromDOM(u);var l,c={start:e+t,end:this.items.length},d=Xk.intersect(c,r),h=Xk.relativeComplement(c,r),p=n.map((function(e){return{id:String(o.itemId++),element:e,templateId:o.virtualDelegate.getTemplateId(e),size:o.virtualDelegate.getHeight(e),width:void 0,hasDynamicHeight:!!o.virtualDelegate.hasDynamicHeight&&o.virtualDelegate.hasDynamicHeight(e),lastDynamicHeightWidth:void 0,row:null,uri:void 0,dropTarget:!1,dragStartDisposable:He.None}}));0===e&&t>=this.items.length?(this.rangeMap=new xE,this.rangeMap.splice(0,0,p),this.items=p,l=[]):(this.rangeMap.splice(e,t,p),l=(i=this.items).splice.apply(i,kE([e,t],p)));var f=n.length-t,g=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),m=SE(d,f),v=Xk.intersect(g,m);for(u=v.start;u<v.end;u++)this.updateItemInDOM(this.items[u],u);for(var _=0,y=Xk.relativeComplement(m,g);_<y.length;_++)for(u=(D=y[_]).start;u<D.end;u++)this.removeItemFromDOM(u);for(var b=h.map((function(e){return SE(e,f)})),w={start:e,end:e+n.length},C=kE([w],b).map((function(e){return Xk.intersect(g,e)})),S=this.getNextToLastElement(C),L=0,x=C;L<x.length;L++){var D;for(u=(D=x[L]).start;u<D.end;u++)this.insertItemInDOM(u,S)}return this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight),l.map((function(e){return e.element}))},e.prototype.eventuallyUpdateScrollDimensions=function(){var e=this;this._scrollHeight=this.contentHeight,this.rowsContainer.style.height=this._scrollHeight+"px",this.scrollableElementUpdateDisposable||(this.scrollableElementUpdateDisposable=mo((function(){e.scrollableElement.setScrollDimensions({scrollHeight:e.scrollHeight}),e.updateScrollWidth(),e.scrollableElementUpdateDisposable=null})))},e.prototype.eventuallyUpdateScrollWidth=function(){var e=this;this.horizontalScrolling&&this.scrollableElementWidthDelayer.trigger((function(){return e.updateScrollWidth()}))},e.prototype.updateScrollWidth=function(){if(this.horizontalScrolling){0===this.items.length&&this.scrollableElement.setScrollDimensions({scrollWidth:0});for(var e=0,t=0,n=this.items;t<n.length;t++){var i=n[t];void 0!==i.width&&(e=Math.max(e,i.width))}this.scrollWidth=e,this.scrollableElement.setScrollDimensions({scrollWidth:e+10})}},e.prototype.rerender=function(){if(this.supportDynamicHeights){for(var e=0,t=this.items;e<t.length;e++){t[e].lastDynamicHeightWidth=void 0}this._rerender(this.lastRenderTop,this.lastRenderHeight)}},Object.defineProperty(e.prototype,"length",{get:function(){return this.items.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"renderHeight",{get:function(){return this.scrollableElement.getScrollDimensions().height},enumerable:!0,configurable:!0}),e.prototype.element=function(e){return this.items[e].element},e.prototype.domElement=function(e){var t=this.items[e].row;return t&&t.domNode},e.prototype.elementHeight=function(e){return this.items[e].size},e.prototype.elementTop=function(e){return this.rangeMap.positionAt(e)},e.prototype.indexAt=function(e){return this.rangeMap.indexAt(e)},e.prototype.indexAfter=function(e){return this.rangeMap.indexAfter(e)},e.prototype.layout=function(e,t){var n={height:"number"==typeof e?e:Ro(this.domNode)};this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,n.scrollHeight=this.scrollHeight),this.scrollableElement.setScrollDimensions(n),void 0!==t&&(this.renderWidth=t,this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight),this.horizontalScrolling&&this.scrollableElement.setScrollDimensions({width:"number"==typeof t?t:Po(this.domNode)}))},e.prototype.render=function(e,t,n,i){for(var o=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),r=this.getRenderRange(e,t),s=Xk.relativeComplement(r,o),a=Xk.relativeComplement(o,r),u=this.getNextToLastElement(s),l=0,c=s;l<c.length;l++)for(var d=(f=c[l]).start;d<f.end;d++)this.insertItemInDOM(d,u);for(var h=0,p=a;h<p.length;h++){var f;for(d=(f=p[h]).start;d<f.end;d++)this.removeItemFromDOM(d)}this.rowsContainer.style.left="-"+n+"px",this.rowsContainer.style.top="-"+e+"px",this.horizontalScrolling&&(this.rowsContainer.style.width=Math.max(i,this.renderWidth)+"px"),this.lastRenderTop=e,this.lastRenderHeight=t},e.prototype.insertItemInDOM=function(e,t){var n=this,i=this.items[e];if(!i.row){i.row=this.cache.alloc(i.templateId);var o=this.ariaProvider.getRole?this.ariaProvider.getRole(i.element):"treeitem";i.row.domNode.setAttribute("role",o);var r=this.ariaProvider.isChecked?this.ariaProvider.isChecked(i.element):void 0;void 0!==r&&i.row.domNode.setAttribute("aria-checked",String(r))}i.row.domNode.parentElement||(t?this.rowsContainer.insertBefore(i.row.domNode,t):this.rowsContainer.appendChild(i.row.domNode)),this.updateItemInDOM(i,e);var s=this.renderers.get(i.templateId);if(!s)throw new Error("No renderer found for template id "+i.templateId);s&&s.renderElement(i.element,e,i.row.templateData,i.size);var a=this.dnd.getDragURI(i.element);if(i.dragStartDisposable.dispose(),i.row.domNode.draggable=!!a,a){var u=Xn(i.row.domNode,"dragstart");i.dragStartDisposable=u((function(e){return n.onDragStart(i.element,a,e)}))}this.horizontalScrolling&&(this.measureItemWidth(i),this.eventuallyUpdateScrollWidth())},e.prototype.measureItemWidth=function(e){if(e.row&&e.row.domNode){e.row.domNode.style.width=zn?"-moz-fit-content":"fit-content",e.width=Po(e.row.domNode);var t=window.getComputedStyle(e.row.domNode);t.paddingLeft&&(e.width+=parseFloat(t.paddingLeft)),t.paddingRight&&(e.width+=parseFloat(t.paddingRight)),e.row.domNode.style.width=""}},e.prototype.updateItemInDOM=function(e,t){e.row.domNode.style.top=this.elementTop(t)+"px",e.row.domNode.style.height=e.size+"px",this.setRowLineHeight&&(e.row.domNode.style.lineHeight=e.size+"px"),e.row.domNode.setAttribute("data-index",""+t),e.row.domNode.setAttribute("data-last-element",t===this.length-1?"true":"false"),e.row.domNode.setAttribute("aria-setsize",String(this.ariaProvider.getSetSize(e.element,t,this.length))),e.row.domNode.setAttribute("aria-posinset",String(this.ariaProvider.getPosInSet(e.element,t))),e.row.domNode.setAttribute("id",this.getElementDomId(t)),so(e.row.domNode,"drop-target",e.dropTarget)},e.prototype.removeItemFromDOM=function(e){var t=this.items[e];t.dragStartDisposable.dispose();var n=this.renderers.get(t.templateId);n&&n.disposeElement&&n.disposeElement(t.element,e,t.row.templateData,t.size),this.cache.release(t.row),t.row=null,this.horizontalScrolling&&this.eventuallyUpdateScrollWidth()},e.prototype.getScrollTop=function(){return this.scrollableElement.getScrollPosition().scrollTop},e.prototype.setScrollTop=function(e){this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),this.scrollableElement.setScrollPosition({scrollTop:e})},Object.defineProperty(e.prototype,"scrollTop",{get:function(){return this.getScrollTop()},set:function(e){this.setScrollTop(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"scrollHeight",{get:function(){return this._scrollHeight+(this.horizontalScrolling?10:0)+this.additionalScrollHeight},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMouseClick",{get:function(){var e=this;return Ge.map(Xn(this.domNode,"click"),(function(t){return e.toMouseEvent(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMouseDblClick",{get:function(){var e=this;return Ge.map(Xn(this.domNode,"dblclick"),(function(t){return e.toMouseEvent(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMouseMiddleClick",{get:function(){var e=this;return Ge.filter(Ge.map(Xn(this.domNode,"auxclick"),(function(t){return e.toMouseEvent(t)})),(function(e){return 1===e.browserEvent.button}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMouseDown",{get:function(){var e=this;return Ge.map(Xn(this.domNode,"mousedown"),(function(t){return e.toMouseEvent(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onContextMenu",{get:function(){var e=this;return Ge.map(Xn(this.domNode,"contextmenu"),(function(t){return e.toMouseEvent(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onTouchStart",{get:function(){var e=this;return Ge.map(Xn(this.domNode,"touchstart"),(function(t){return e.toTouchEvent(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onTap",{get:function(){var e=this;return Ge.map(Xn(this.rowsContainer,Bf.Tap),(function(t){return e.toGestureEvent(t)}))},enumerable:!0,configurable:!0}),e.prototype.toMouseEvent=function(e){var t=this.getItemIndexFromEventTarget(e.target||null),n=void 0===t?void 0:this.items[t];return{browserEvent:e,index:t,element:n&&n.element}},e.prototype.toTouchEvent=function(e){var t=this.getItemIndexFromEventTarget(e.target||null),n=void 0===t?void 0:this.items[t];return{browserEvent:e,index:t,element:n&&n.element}},e.prototype.toGestureEvent=function(e){var t=this.getItemIndexFromEventTarget(e.initialTarget||null),n=void 0===t?void 0:this.items[t];return{browserEvent:e,index:t,element:n&&n.element}},e.prototype.toDragEvent=function(e){var t=this.getItemIndexFromEventTarget(e.target||null),n=void 0===t?void 0:this.items[t];return{browserEvent:e,index:t,element:n&&n.element}},e.prototype.onScroll=function(e){try{this.render(e.scrollTop,e.height,e.scrollLeft,e.scrollWidth),this.supportDynamicHeights&&this._rerender(e.scrollTop,e.height)}catch(t){throw console.error("Got bad scroll event:",e),t}},e.prototype.onTouchChange=function(e){e.preventDefault(),e.stopPropagation(),this.scrollTop-=e.translationY},e.prototype.onDragStart=function(e,t,n){if(n.dataTransfer){var i=this.dnd.getDragElements(e);if(n.dataTransfer.effectAllowed="copyMove",n.dataTransfer.setData(uD,JSON.stringify([t])),n.dataTransfer.setDragImage){var o=void 0;this.dnd.getDragLabel&&(o=this.dnd.getDragLabel(i,n)),void 0===o&&(o=String(i.length));var r=er(".monaco-drag-image");r.textContent=o,document.body.appendChild(r),n.dataTransfer.setDragImage(r,-10,-10),setTimeout((function(){return document.body.removeChild(r)}),0)}this.currentDragData=new IE(i),dD.CurrentDragAndDropData=new OE(i),this.dnd.onDragStart&&this.dnd.onDragStart(this.currentDragData,n)}},e.prototype.onDragOver=function(e){var t=this;if(e.browserEvent.preventDefault(),this.onDragLeaveTimeout.dispose(),dD.CurrentDragAndDropData&&"vscode-ui"===dD.CurrentDragAndDropData.getData())return!1;if(this.setupDragAndDropScrollTopAnimation(e.browserEvent),!e.browserEvent.dataTransfer)return!1;if(!this.currentDragData)if(dD.CurrentDragAndDropData)this.currentDragData=dD.CurrentDragAndDropData;else{if(!e.browserEvent.dataTransfer.types)return!1;this.currentDragData=new ME}var n,i,o,r=this.dnd.onDragOver(this.currentDragData,e.element,e.index,e.browserEvent);if(this.canDrop="boolean"==typeof r?r:r.accept,!this.canDrop)return this.currentDragFeedback=void 0,this.currentDragFeedbackDisposable.dispose(),!1;if(e.browserEvent.dataTransfer.dropEffect="boolean"!=typeof r&&0===r.effect?"copy":"move",n=-1===(n=Mi(n="boolean"!=typeof r&&r.feedback?r.feedback:void 0===e.index?[-1]:[e.index]).filter((function(e){return e>=-1&&e<t.length})).sort((function(e,t){return e-t})))[0]?[-1]:n,i=this.currentDragFeedback,o=n,Array.isArray(i)&&Array.isArray(o)?xi(i,o):i===o)return!0;if(this.currentDragFeedback=n,this.currentDragFeedbackDisposable.dispose(),-1===n[0])no(this.domNode,"drop-target"),no(this.rowsContainer,"drop-target"),this.currentDragFeedbackDisposable=We((function(){oo(t.domNode,"drop-target"),oo(t.rowsContainer,"drop-target")}));else{for(var s=0,a=n;s<a.length;s++){var u=a[s],l=this.items[u];l.dropTarget=!0,l.row&&l.row.domNode&&no(l.row.domNode,"drop-target")}this.currentDragFeedbackDisposable=We((function(){for(var e=0,i=n;e<i.length;e++){var o=i[e],r=t.items[o];r.dropTarget=!1,r.row&&r.row.domNode&&oo(r.row.domNode,"drop-target")}}))}return!0},e.prototype.onDragLeave=function(){var e=this;this.onDragLeaveTimeout.dispose(),this.onDragLeaveTimeout=mi((function(){return e.clearDragOverFeedback()}),100)},e.prototype.onDrop=function(e){if(this.canDrop){var t=this.currentDragData;this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.currentDragData=void 0,dD.CurrentDragAndDropData=void 0,t&&e.browserEvent.dataTransfer&&(e.browserEvent.preventDefault(),t.update(e.browserEvent.dataTransfer),this.dnd.drop(t,e.element,e.index,e.browserEvent))}},e.prototype.onDragEnd=function(e){this.canDrop=!1,this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.currentDragData=void 0,dD.CurrentDragAndDropData=void 0,this.dnd.onDragEnd&&this.dnd.onDragEnd(e)},e.prototype.clearDragOverFeedback=function(){this.currentDragFeedback=void 0,this.currentDragFeedbackDisposable.dispose(),this.currentDragFeedbackDisposable=He.None},e.prototype.setupDragAndDropScrollTopAnimation=function(e){var t,n,i,o=this;if(!this.dragOverAnimationDisposable){var r=Io(this.domNode).top;this.dragOverAnimationDisposable=(t=this.animateDragAndDropScrollTop.bind(this,r),n=function(){t(),i=mo(n)},i=mo(n),We((function(){return i.dispose()})))}this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationStopDisposable=mi((function(){o.dragOverAnimationDisposable&&(o.dragOverAnimationDisposable.dispose(),o.dragOverAnimationDisposable=void 0)}),1e3),this.dragOverMouseY=e.pageY},e.prototype.animateDragAndDropScrollTop=function(e){if(void 0!==this.dragOverMouseY){var t=this.dragOverMouseY-e,n=this.renderHeight-35;t<35?this.scrollTop+=Math.max(-14,Math.floor(.3*(t-35))):t>n&&(this.scrollTop+=Math.min(14,Math.floor(.3*(t-n))))}},e.prototype.teardownDragAndDropScrollTopAnimation=function(){this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)},e.prototype.getItemIndexFromEventTarget=function(e){for(var t=e;t instanceof HTMLElement&&t!==this.rowsContainer;){var n=t.getAttribute("data-index");if(n){var i=Number(n);if(!isNaN(i))return i}t=t.parentElement}},e.prototype.getRenderRange=function(e,t){return{start:this.rangeMap.indexAt(e),end:this.rangeMap.indexAfter(e+t-1)}},e.prototype._rerender=function(e,t){var n,i,o=this.getRenderRange(e,t);e===this.elementTop(o.start)?(n=o.start,i=0):o.end-o.start>1&&(n=o.start+1,i=this.elementTop(n)-e);for(var r=0;;){for(var s=this.getRenderRange(e,t),a=!1,u=s.start;u<s.end;u++){var l=this.probeDynamicHeight(u);0!==l&&this.rangeMap.splice(u,1,[this.items[u]]),r+=l,a=a||0!==l}if(!a){0!==r&&this.eventuallyUpdateScrollDimensions();for(var c=0,d=Xk.relativeComplement(o,s);c<d.length;c++)for(u=(f=d[c]).start;u<f.end;u++)this.items[u].row&&this.removeItemFromDOM(u);for(var h=0,p=Xk.relativeComplement(s,o);h<p.length;h++){var f;for(u=(f=p[h]).start;u<f.end;u++){var g=u+1,m=g<this.items.length?this.items[g].row:null,v=m?m.domNode:null;this.insertItemInDOM(u,v)}}for(u=s.start;u<s.end;u++)this.items[u].row&&this.updateItemInDOM(this.items[u],u);return"number"==typeof n&&(this.scrollTop=this.elementTop(n)-i),void this._onDidChangeContentHeight.fire(this.contentHeight)}}},e.prototype.probeDynamicHeight=function(e){var t=this.items[e];if(!t.hasDynamicHeight||t.lastDynamicHeightWidth===this.renderWidth)return 0;var n=t.size,i=this.cache.alloc(t.templateId);i.domNode.style.height="",this.rowsContainer.appendChild(i.domNode);var o=this.renderers.get(t.templateId);return o&&(o.renderElement(t.element,e,i.templateData,void 0),o.disposeElement&&o.disposeElement(t.element,e,i.templateData,void 0)),t.size=i.domNode.offsetHeight,this.virtualDelegate.setDynamicHeight&&this.virtualDelegate.setDynamicHeight(t.element,t.size),t.lastDynamicHeightWidth=this.renderWidth,this.rowsContainer.removeChild(i.domNode),this.cache.release(i),t.size-n},e.prototype.getNextToLastElement=function(e){var t=e[e.length-1];if(!t)return null;var n=this.items[t.end];return n&&n.row?n.row.domNode:null},e.prototype.getElementDomId=function(e){return this.domId+"_"+e},e.prototype.dispose=function(){if(this.items){for(var e=0,t=this.items;e<t.length;e++){var n=t[e];if(n.row){var i=this.renderers.get(n.row.templateId);i&&i.disposeTemplate(n.row.templateData)}}this.items=[]}this.domNode&&this.domNode.parentNode&&this.domNode.parentNode.removeChild(this.domNode),Ae(this.disposables)},e.InstanceCount=0,NE([Vf],e.prototype,"onMouseClick",null),NE([Vf],e.prototype,"onMouseDblClick",null),NE([Vf],e.prototype,"onMouseMiddleClick",null),NE([Vf],e.prototype,"onMouseDown",null),NE([Vf],e.prototype,"onContextMenu",null),NE([Vf],e.prototype,"onTouchStart",null),NE([Vf],e.prototype,"onTap",null),e}(),PE=function(){function e(e){this.spliceables=e}return e.prototype.splice=function(e,t,n){this.spliceables.forEach((function(i){return i.splice(e,t,n)}))},e}();function RE(e,t,n){return Math.min(Math.max(e,t),n)}function AE(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(t,n){for(var i=0,o=e.length;i<o;i++){var r=e[i](t,n);if(r)return r}return null}}var FE=function(e,t,n){if(!n||n.length<t.length)return null;var i;i=e?Or(n,t):0===n.indexOf(t);if(!i)return null;return t.length>0?[{start:0,end:t.length}]:[]}.bind(void 0,!0);function WE(e){return 97<=e&&e<=122}function VE(e){return 65<=e&&e<=90}function BE(e){return 48<=e&&e<=57}function HE(e){return 32===e||9===e||10===e||13===e}var zE=new Set;function jE(e){return WE(e)||VE(e)||BE(e)}function UE(e,t){return 0===t.length?t=[e]:e.end===t[0].start?t[0].start=e.start:t.unshift(e),t}function KE(e,t){for(var n=t;n<e.length;n++){var i=e.charCodeAt(n);if(VE(i)||BE(i)||n>0&&!jE(e.charCodeAt(n-1)))return n}return e.length}function qE(e,t,n,i){if(n===e.length)return[];if(i===t.length)return null;if(e[n]!==t[i].toLowerCase())return null;var o=null,r=i+1;for(o=qE(e,t,n+1,i+1);!o&&(r=KE(t,r))<t.length;)o=qE(e,t,n+1,r),r++;return null===o?null:UE({start:i,end:i+1},o)}function GE(e,t){if(!t)return null;if(0===(t=t.trim()).length)return null;if(!function(e){for(var t=0,n=0,i=0,o=0,r=0;r<e.length;r++)VE(i=e.charCodeAt(r))&&t++,WE(i)&&n++,HE(i)&&o++;return 0!==t&&0!==n||0!==o?t<=5:e.length<=30}(e))return null;if(t.length>60)return null;var n=function(e){for(var t=0,n=0,i=0,o=0,r=0,s=0;s<e.length;s++)VE(r=e.charCodeAt(s))&&t++,WE(r)&&n++,jE(r)&&i++,BE(r)&&o++;return{upperPercent:t/e.length,lowerPercent:n/e.length,alphaPercent:i/e.length,numericPercent:o/e.length}}(t);if(!function(e){var t=e.upperPercent,n=e.lowerPercent,i=e.alphaPercent,o=e.numericPercent;return n>.2&&t<.8&&i>.6&&o<.2}(n)){if(!function(e){var t=e.upperPercent;return 0===e.lowerPercent&&t>.6}(n))return null;t=t.toLowerCase()}var i=null,o=0;for(e=e.toLowerCase();o<t.length&&null===(i=qE(e,t,0,o));)o=KE(t,o+1);return i}"`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?".split("").forEach((function(e){return zE.add(e.charCodeAt(0))}));var ZE=AE(FE,GE,(function(e,t){var n=t.toLowerCase().indexOf(e.toLowerCase());return-1===n?null:[{start:n,end:n+e.length}]})),YE=AE(FE,GE,(function(e,t){return function e(t,n,i,o){if(i===t.length)return[];if(o===n.length)return null;if(t[i]===n[o]){var r;return(r=e(t,n,i+1,o+1))?UE({start:o,end:o+1},r):null}return e(t,n,i,o+1)}(e.toLowerCase(),t.toLowerCase(),0,0)})),XE=new aa(1e4);function $E(e,t,n){if(void 0===n&&(n=!1),"string"!=typeof e||"string"!=typeof t)return null;var i=XE.get(e);i||(i=new RegExp(e.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*"),"i"),XE.set(e,i));var o=i.exec(t);return o?[{start:o.index,end:o.index+o[0].length}]:n?YE(e,t):ZE(e,t)}function QE(e,t,n,i,o,r){var s=uI(e,t,0,i,o,0,!0);if(s)return s;for(var a=0,u=0,l=r,c=0;c<t.length&&c<eI;++c){var d=o.indexOf(t.charAt(c),l);if(d>=0)u+=1,a+=Math.pow(2,d),l=d+1;else if(0!==a)break}return[u,a,r]}function JE(e){if(void 0===e)return[];for(var t=e[1].toString(2),n=[],i=e[2];i<eI;i++)if("1"===t[t.length-(i+1)]){var o=n[n.length-1];o&&o.end===i?o.end=i+1:n.push({start:i,end:i+1})}return n}var eI=128;function tI(){for(var e=[],t=[0],n=1;n<=eI;n++)t.push(-n);for(n=0;n<=eI;n++){var i=t.slice(0);i[0]=-n,e.push(i)}return e}var nI,iI=tI(),oI=tI(),rI=tI();function sI(e,t){if(t<0||t>=e.length)return!1;switch(e.charCodeAt(t)){case 95:case 45:case 46:case 32:case 47:case 92:case 39:case 34:case 58:case 36:return!0;default:return!1}}function aI(e,t,n){return t[e]!==n[e]}function uI(e,t,n,i,o,r,s){var a=e.length>eI?eI:e.length,u=i.length>eI?eI:i.length;if(!(n>=a||r>=u||a-n>u-r)&&function(e,t,n,i,o,r){for(;t<n&&o<r;)e[t]===i[o]&&(t+=1),o+=1;return t===n}(t,n,a,o,r,u)){var l=1,c=1,d=n,h=r;for(l=1,d=n;d<a;l++,d++)for(c=1,h=r;h<u;c++,h++){var p=lI(e,t,d,n,i,o,h);oI[l][c]=p;var f=iI[l-1][c-1]+(p>1?1:p),g=iI[l-1][c]+-1,m=iI[l][c-1]+-1;m>=g?m>f?(iI[l][c]=m,rI[l][c]=4):m===f?(iI[l][c]=m,rI[l][c]=6):(iI[l][c]=f,rI[l][c]=2):g>f?(iI[l][c]=g,rI[l][c]=1):g===f?(iI[l][c]=g,rI[l][c]=3):(iI[l][c]=f,rI[l][c]=2)}if(cI=0,hI=-100,pI=r,fI=s,function e(t,n,i,o,r){if(cI>=10||i<-25)return;var s=0;for(;t>0&&n>0;){var a=oI[t][n],u=rI[t][n];if(4===u)n-=1,r?i-=5:0!==o&&(i-=1),r=!1,s=0;else{if(!(2&u))return;if(4&u&&e(t,n-1,0!==o?i-1:i,o,r),i+=a,t-=1,n-=1,r=!0,o+=Math.pow(2,n+pI),1===a){if(s+=1,0===t&&!fI)return}else i+=1+s*(a-1),s=0}}cI+=1,(i-=n>=3?9:3*n)>hI&&(hI=i,dI=o)}(l-1,c-1,a===u?1:0,0,!1),0!==cI)return[hI,dI,r]}}function lI(e,t,n,i,o,r,s){return t[n]!==r[s]?-1:s===n-i?e[n]===o[s]?7:5:!aI(s,o,r)||0!==s&&aI(s-1,o,r)?!sI(r,s)||0!==s&&sI(r,s-1)?sI(r,s-1)||function(e,t){if(t<0||t>=e.length)return!1;switch(e.charCodeAt(t)){case 32:case 9:return!0;default:return!1}}(r,s-1)?5:1:5:e[n]===o[s]?7:5}!function(e){e.Default=Object.freeze([-100,0,0]),e.isDefault=function(e){return!e||-100===e[0]&&0===e[1]&&0===e[2]}}(nI||(nI={}));var cI=0,dI=0,hI=0,pI=0,fI=!1;function gI(e,t,n,i,o,r,s){return function(e,t,n,i,o,r,s,a){var u=uI(e,t,n,i,o,r,a);if(u&&!s)return u;if(e.length>=3)for(var l=Math.min(7,e.length-1),c=n+1;c<l;c++){var d=mI(e,c);if(d){var h=uI(d,d.toLowerCase(),n,i,o,r,a);h&&(h[0]-=3,(!u||h[0]>u[0])&&(u=h))}}return u}(e,t,n,i,o,r,!0,s)}function mI(e,t){if(!(t+1>=e.length)){var n=e[t],i=e[t+1];if(n!==i)return e.slice(0,t)+i+n+e.slice(t+2)}}var vI=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),_I=function(){return(_I=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},yI=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},bI=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},wI=function(){function e(e){this.trait=e,this.renderedElements=[]}return Object.defineProperty(e.prototype,"templateId",{get:function(){return"template:"+this.trait.trait},enumerable:!0,configurable:!0}),e.prototype.renderTemplate=function(e){return e},e.prototype.renderElement=function(e,t,n){var i=Pi(this.renderedElements,(function(e){return e.templateData===n}));if(i>=0){var o=this.renderedElements[i];this.trait.unrender(n),o.index=t}else{o={index:t,templateData:n};this.renderedElements.push(o)}this.trait.renderIndex(t,n)},e.prototype.splice=function(e,t,n){for(var i=[],o=0,r=this.renderedElements;o<r.length;o++){var s=r[o];s.index<e?i.push(s):s.index>=e+t&&i.push({index:s.index+n-t,templateData:s.templateData})}this.renderedElements=i},e.prototype.renderIndexes=function(e){for(var t=0,n=this.renderedElements;t<n.length;t++){var i=n[t],o=i.index,r=i.templateData;e.indexOf(o)>-1&&this.trait.renderIndex(o,r)}},e.prototype.disposeTemplate=function(e){var t=Pi(this.renderedElements,(function(t){return t.templateData===e}));t<0||this.renderedElements.splice(t,1)},e}(),CI=function(){function e(e){this._trait=e,this.indexes=[],this.sortedIndexes=[],this._onChange=new nt,this.onChange=this._onChange.event}return Object.defineProperty(e.prototype,"trait",{get:function(){return this._trait},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"renderer",{get:function(){return new wI(this)},enumerable:!0,configurable:!0}),e.prototype.splice=function(e,t,n){var i=n.length-t,o=e+t,r=bI(this.sortedIndexes.filter((function(t){return t<e})),n.map((function(t,n){return t?n+e:-1})).filter((function(e){return-1!==e})),this.sortedIndexes.filter((function(e){return e>=o})).map((function(e){return e+i})));this.renderer.splice(e,t,n.length),this._set(r,r)},e.prototype.renderIndex=function(e,t){so(t,this._trait,this.contains(e))},e.prototype.unrender=function(e){oo(e,this._trait)},e.prototype.set=function(e,t){return this._set(e,bI(e).sort(HI),t)},e.prototype._set=function(e,t,n){var i=this.indexes,o=this.sortedIndexes;this.indexes=e,this.sortedIndexes=t;var r=BI(o,e);return this.renderer.renderIndexes(r),this._onChange.fire({indexes:e,browserEvent:n}),i},e.prototype.get=function(){return this.indexes},e.prototype.contains=function(e){return Di(this.sortedIndexes,e,HI)>=0},e.prototype.dispose=function(){Ae(this._onChange)},yI([Vf],e.prototype,"renderer",null),e}(),SI=function(e){function t(){return e.call(this,"focused")||this}return vI(t,e),t.prototype.renderIndex=function(t,n){e.prototype.renderIndex.call(this,t,n),this.contains(t)?n.setAttribute("aria-selected","true"):n.removeAttribute("aria-selected")},t}(CI),LI=function(){function e(e,t,n){this.trait=e,this.view=t,this.identityProvider=n}return e.prototype.splice=function(e,t,n){var i=this;if(!this.identityProvider)return this.trait.splice(e,t,n.map((function(){return!1})));var o=this.trait.get().map((function(e){return i.identityProvider.getId(i.view.element(e)).toString()})),r=n.map((function(e){return o.indexOf(i.identityProvider.getId(e).toString())>-1}));this.trait.splice(e,t,r)},e}();function xI(e){return"INPUT"===e.tagName||"TEXTAREA"===e.tagName}var DI,NI=function(){function e(e,t,n){this.list=e,this.view=t,this.disposables=new Be;var i=!1!==n.multipleSelectionSupport;this.openController=n.openController||RI;var o=Ge.chain(Xn(t.domNode,"keydown")).filter((function(e){return!xI(e.target)})).map((function(e){return new ni(e)}));o.filter((function(e){return 3===e.keyCode})).on(this.onEnter,this,this.disposables),o.filter((function(e){return 16===e.keyCode})).on(this.onUpArrow,this,this.disposables),o.filter((function(e){return 18===e.keyCode})).on(this.onDownArrow,this,this.disposables),o.filter((function(e){return 11===e.keyCode})).on(this.onPageUpArrow,this,this.disposables),o.filter((function(e){return 12===e.keyCode})).on(this.onPageDownArrow,this,this.disposables),o.filter((function(e){return 9===e.keyCode})).on(this.onEscape,this,this.disposables),i&&o.filter((function(e){return(_?e.metaKey:e.ctrlKey)&&31===e.keyCode})).on(this.onCtrlA,this,this.disposables)}return e.prototype.onEnter=function(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection(this.list.getFocus(),e.browserEvent),this.openController.shouldOpen(e.browserEvent)&&this.list.open(this.list.getFocus(),e.browserEvent)},e.prototype.onUpArrow=function(e){e.preventDefault(),e.stopPropagation(),this.list.focusPrevious(1,!1,e.browserEvent),this.list.reveal(this.list.getFocus()[0]),this.view.domNode.focus()},e.prototype.onDownArrow=function(e){e.preventDefault(),e.stopPropagation(),this.list.focusNext(1,!1,e.browserEvent),this.list.reveal(this.list.getFocus()[0]),this.view.domNode.focus()},e.prototype.onPageUpArrow=function(e){e.preventDefault(),e.stopPropagation(),this.list.focusPreviousPage(e.browserEvent),this.list.reveal(this.list.getFocus()[0]),this.view.domNode.focus()},e.prototype.onPageDownArrow=function(e){e.preventDefault(),e.stopPropagation(),this.list.focusNextPage(e.browserEvent),this.list.reveal(this.list.getFocus()[0]),this.view.domNode.focus()},e.prototype.onCtrlA=function(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection(Wi(this.list.length),e.browserEvent),this.view.domNode.focus()},e.prototype.onEscape=function(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection([],e.browserEvent),this.view.domNode.focus()},e.prototype.dispose=function(){this.disposables.dispose()},e}();!function(e){e[e.Idle=0]="Idle",e[e.Typing=1]="Typing"}(DI||(DI={}));var kI=new(function(){function e(){}return e.prototype.mightProducePrintableCharacter=function(e){return!(e.ctrlKey||e.metaKey||e.altKey)&&(e.keyCode>=31&&e.keyCode<=56||e.keyCode>=21&&e.keyCode<=30||e.keyCode>=93&&e.keyCode<=102||e.keyCode>=80&&e.keyCode<=90)},e}()),EI=function(){function e(e,t,n,i){this.list=e,this.view=t,this.keyboardNavigationLabelProvider=n,this.delegate=i,this.enabled=!1,this.state=DI.Idle,this.automaticKeyboardNavigation=!0,this.triggered=!1,this.enabledDisposables=new Be,this.disposables=new Be,this.updateOptions(e.options)}return e.prototype.updateOptions=function(e){void 0===e.enableKeyboardNavigation||!!e.enableKeyboardNavigation?this.enable():this.disable(),void 0!==e.automaticKeyboardNavigation&&(this.automaticKeyboardNavigation=e.automaticKeyboardNavigation)},e.prototype.enable=function(){var e=this;if(!this.enabled){var t=Ge.chain(Xn(this.view.domNode,"keydown")).filter((function(e){return!xI(e.target)})).filter((function(){return e.automaticKeyboardNavigation||e.triggered})).map((function(e){return new ni(e)})).filter((function(t){return e.delegate.mightProducePrintableCharacter(t)})).forEach((function(e){e.stopPropagation(),e.preventDefault()})).map((function(e){return e.browserEvent.key})).event,n=Ge.debounce(t,(function(){return null}),800);Ge.reduce(Ge.any(t,n),(function(e,t){return null===t?null:(e||"")+t}))(this.onInput,this,this.enabledDisposables),this.enabled=!0,this.triggered=!1}},e.prototype.disable=function(){this.enabled&&(this.enabledDisposables.clear(),this.enabled=!1,this.triggered=!1)},e.prototype.onInput=function(e){if(!e)return this.state=DI.Idle,void(this.triggered=!1);var t=this.list.getFocus(),n=t.length>0?t[0]:0,i=this.state===DI.Idle?1:0;this.state=DI.Typing;for(var o=0;o<this.list.length;o++){var r=(n+o+i)%this.list.length,s=this.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(this.view.element(r)),a=s&&s.toString();if(void 0===a||FE(e,a))return this.list.setFocus([r]),void this.list.reveal(r)}},e.prototype.dispose=function(){this.disable(),this.enabledDisposables.dispose(),this.disposables.dispose()},e}(),II=function(){function e(e,t){this.list=e,this.view=t,this.disposables=new Be,Ge.chain(Xn(t.domNode,"keydown")).filter((function(e){return!xI(e.target)})).map((function(e){return new ni(e)})).filter((function(e){return!(2!==e.keyCode||e.ctrlKey||e.metaKey||e.shiftKey||e.altKey)})).on(this.onTab,this,this.disposables)}return e.prototype.onTab=function(e){if(e.target===this.view.domNode){var t=this.list.getFocus();if(0!==t.length){var n=this.view.domElement(t[0]);if(n){var i=n.querySelector("[tabIndex]");if(i&&i instanceof HTMLElement&&-1!==i.tabIndex){var o=window.getComputedStyle(i);"hidden"!==o.visibility&&"none"!==o.display&&(e.preventDefault(),e.stopPropagation(),i.focus())}}}}},e.prototype.dispose=function(){this.disposables.dispose()},e}();function OI(e){return _?e.browserEvent.metaKey:e.browserEvent.ctrlKey}function MI(e){return e.browserEvent.shiftKey}function TI(e){return e instanceof MouseEvent&&2===e.button}var PI={isSelectionSingleChangeEvent:OI,isSelectionRangeChangeEvent:MI},RI={shouldOpen:function(e){return!(e instanceof MouseEvent)||!TI(e)}},AI=function(){function e(e){this.list=e,this.disposables=new Be,this.multipleSelectionSupport=!(!1===e.options.multipleSelectionSupport),this.multipleSelectionSupport&&(this.multipleSelectionController=e.options.multipleSelectionController||PI),this.openController=e.options.openController||RI,this.mouseSupport=void 0===e.options.mouseSupport||!!e.options.mouseSupport,this.mouseSupport&&(e.onMouseDown(this.onMouseDown,this,this.disposables),e.onContextMenu(this.onContextMenu,this,this.disposables),e.onMouseDblClick(this.onDoubleClick,this,this.disposables),e.onTouchStart(this.onMouseDown,this,this.disposables),this.disposables.add(jf.addTarget(e.getHTMLElement()))),e.onMouseClick(this.onPointer,this,this.disposables),e.onMouseMiddleClick(this.onPointer,this,this.disposables),e.onTap(this.onPointer,this,this.disposables)}return e.prototype.isSelectionSingleChangeEvent=function(e){return this.multipleSelectionController?this.multipleSelectionController.isSelectionSingleChangeEvent(e):_?e.browserEvent.metaKey:e.browserEvent.ctrlKey},e.prototype.isSelectionRangeChangeEvent=function(e){return this.multipleSelectionController?this.multipleSelectionController.isSelectionRangeChangeEvent(e):e.browserEvent.shiftKey},e.prototype.isSelectionChangeEvent=function(e){return this.isSelectionSingleChangeEvent(e)||this.isSelectionRangeChangeEvent(e)},e.prototype.onMouseDown=function(e){document.activeElement!==e.browserEvent.target&&this.list.domFocus()},e.prototype.onContextMenu=function(e){var t=void 0===e.index?[]:[e.index];this.list.setFocus(t,e.browserEvent)},e.prototype.onPointer=function(e){if(this.mouseSupport&&!xI(e.browserEvent.target)){var t=this.list.getFocus()[0],n=this.list.getSelection();t=void 0===t?n[0]:t;var i=e.index;if(void 0===i)return this.list.setFocus([],e.browserEvent),void this.list.setSelection([],e.browserEvent);if(this.multipleSelectionSupport&&this.isSelectionRangeChangeEvent(e))return this.changeSelection(e,t);if(this.multipleSelectionSupport&&this.isSelectionChangeEvent(e))return this.changeSelection(e,t);this.list.setFocus([i],e.browserEvent),TI(e.browserEvent)||(this.list.setSelection([i],e.browserEvent),this.openController.shouldOpen(e.browserEvent)&&this.list.open([i],e.browserEvent))}},e.prototype.onDoubleClick=function(e){if(!(xI(e.browserEvent.target)||this.multipleSelectionSupport&&this.isSelectionChangeEvent(e))){var t=this.list.getFocus();this.list.setSelection(t,e.browserEvent),this.list.pin(t)}},e.prototype.changeSelection=function(e,t){var n=e.index;if(this.isSelectionRangeChangeEvent(e)&&void 0!==t){var i=Wi(Math.min(t,n),Math.max(t,n)+1),o=function(e,t){var n=e.indexOf(t);if(-1===n)return[];var i=[],o=n-1;for(;o>=0&&e[o]===t-(n-o);)i.push(e[o--]);i.reverse(),o=n;for(;o<e.length&&e[o]===t+(o-n);)i.push(e[o++]);return i}(BI(s=this.list.getSelection(),[t]),t);if(0===o.length)return;var r=BI(i,function(e,t){var n=[],i=0,o=0;for(;i<e.length||o<t.length;)if(i>=e.length)n.push(t[o++]);else if(o>=t.length)n.push(e[i++]);else{if(e[i]===t[o]){i++,o++;continue}e[i]<t[o]?n.push(e[i++]):o++}return n}(s,o));this.list.setSelection(r,e.browserEvent)}else if(this.isSelectionSingleChangeEvent(e)){var s;r=(s=this.list.getSelection()).filter((function(e){return e!==n}));this.list.setFocus([n]),s.length===r.length?this.list.setSelection(bI(r,[n]),e.browserEvent):this.list.setSelection(r,e.browserEvent)}},e.prototype.dispose=function(){this.disposables.dispose()},e}(),FI=function(){function e(e,t){this.styleElement=e,this.selectorSuffix=t}return e.prototype.style=function(e){var t=this.selectorSuffix&&"."+this.selectorSuffix,n=[];e.listBackground&&(e.listBackground.isOpaque()?n.push(".monaco-list"+t+" .monaco-list-rows { background: "+e.listBackground+"; }"):_||console.warn("List with id '"+this.selectorSuffix+"' was styled with a non-opaque background color. This will break sub-pixel antialiasing.")),e.listFocusBackground&&(n.push(".monaco-list"+t+":focus .monaco-list-row.focused { background-color: "+e.listFocusBackground+"; }"),n.push(".monaco-list"+t+":focus .monaco-list-row.focused:hover { background-color: "+e.listFocusBackground+"; }")),e.listFocusForeground&&n.push(".monaco-list"+t+":focus .monaco-list-row.focused { color: "+e.listFocusForeground+"; }"),e.listActiveSelectionBackground&&(n.push(".monaco-list"+t+":focus .monaco-list-row.selected { background-color: "+e.listActiveSelectionBackground+"; }"),n.push(".monaco-list"+t+":focus .monaco-list-row.selected:hover { background-color: "+e.listActiveSelectionBackground+"; }")),e.listActiveSelectionForeground&&n.push(".monaco-list"+t+":focus .monaco-list-row.selected { color: "+e.listActiveSelectionForeground+"; }"),e.listFocusAndSelectionBackground&&n.push("\n\t\t\t\t.monaco-drag-image,\n\t\t\t\t.monaco-list"+t+":focus .monaco-list-row.selected.focused { background-color: "+e.listFocusAndSelectionBackground+"; }\n\t\t\t"),e.listFocusAndSelectionForeground&&n.push("\n\t\t\t\t.monaco-drag-image,\n\t\t\t\t.monaco-list"+t+":focus .monaco-list-row.selected.focused { color: "+e.listFocusAndSelectionForeground+"; }\n\t\t\t"),e.listInactiveFocusBackground&&(n.push(".monaco-list"+t+" .monaco-list-row.focused { background-color: "+e.listInactiveFocusBackground+"; }"),n.push(".monaco-list"+t+" .monaco-list-row.focused:hover { background-color: "+e.listInactiveFocusBackground+"; }")),e.listInactiveSelectionBackground&&(n.push(".monaco-list"+t+" .monaco-list-row.selected { background-color: "+e.listInactiveSelectionBackground+"; }"),n.push(".monaco-list"+t+" .monaco-list-row.selected:hover { background-color: "+e.listInactiveSelectionBackground+"; }")),e.listInactiveSelectionForeground&&n.push(".monaco-list"+t+" .monaco-list-row.selected { color: "+e.listInactiveSelectionForeground+"; }"),e.listHoverBackground&&n.push(".monaco-list"+t+":not(.drop-target) .monaco-list-row:hover:not(.selected):not(.focused) { background-color: "+e.listHoverBackground+"; }"),e.listHoverForeground&&n.push(".monaco-list"+t+" .monaco-list-row:hover:not(.selected):not(.focused) { color: "+e.listHoverForeground+"; }"),e.listSelectionOutline&&n.push(".monaco-list"+t+" .monaco-list-row.selected { outline: 1px dotted "+e.listSelectionOutline+"; outline-offset: -1px; }"),e.listFocusOutline&&n.push("\n\t\t\t\t.monaco-drag-image,\n\t\t\t\t.monaco-list"+t+":focus .monaco-list-row.focused { outline: 1px solid "+e.listFocusOutline+"; outline-offset: -1px; }\n\t\t\t"),e.listInactiveFocusOutline&&n.push(".monaco-list"+t+" .monaco-list-row.focused { outline: 1px dotted "+e.listInactiveFocusOutline+"; outline-offset: -1px; }"),e.listHoverOutline&&n.push(".monaco-list"+t+" .monaco-list-row:hover { outline: 1px dashed "+e.listHoverOutline+"; outline-offset: -1px; }"),e.listDropBackground&&n.push("\n\t\t\t\t.monaco-list"+t+".drop-target,\n\t\t\t\t.monaco-list"+t+" .monaco-list-rows.drop-target,\n\t\t\t\t.monaco-list"+t+" .monaco-list-row.drop-target { background-color: "+e.listDropBackground+" !important; color: inherit !important; }\n\t\t\t"),e.listFilterWidgetBackground&&n.push(".monaco-list-type-filter { background-color: "+e.listFilterWidgetBackground+" }"),e.listFilterWidgetOutline&&n.push(".monaco-list-type-filter { border: 1px solid "+e.listFilterWidgetOutline+"; }"),e.listFilterWidgetNoMatchesOutline&&n.push(".monaco-list-type-filter.no-matches { border: 1px solid "+e.listFilterWidgetNoMatchesOutline+"; }"),e.listMatchesShadow&&n.push(".monaco-list-type-filter { box-shadow: 1px 1px 1px "+e.listMatchesShadow+"; }");var i=n.join("\n");i!==this.styleElement.innerHTML&&(this.styleElement.innerHTML=i)},e}(),WI={listFocusBackground:mv.fromHex("#7FB0D0"),listActiveSelectionBackground:mv.fromHex("#0E639C"),listActiveSelectionForeground:mv.fromHex("#FFFFFF"),listFocusAndSelectionBackground:mv.fromHex("#094771"),listFocusAndSelectionForeground:mv.fromHex("#FFFFFF"),listInactiveSelectionBackground:mv.fromHex("#3F3F46"),listHoverBackground:mv.fromHex("#2A2D2E"),listDropBackground:mv.fromHex("#383B3D"),treeIndentGuidesStroke:mv.fromHex("#a9a9a9")},VI={keyboardSupport:!0,mouseSupport:!0,multipleSelectionSupport:!0,dnd:{getDragURI:function(){return null},onDragStart:function(){},onDragOver:function(){return!1},drop:function(){}},ariaRootRole:dE.TREE};function BI(e,t){for(var n=[],i=0,o=0;i<e.length||o<t.length;)if(i>=e.length)n.push(t[o++]);else if(o>=t.length)n.push(e[i++]);else{if(e[i]===t[o]){n.push(e[i]),i++,o++;continue}e[i]<t[o]?n.push(e[i++]):n.push(t[o++])}return n}var HI=function(e,t){return e-t},zI=function(){function e(e,t){this._templateId=e,this.renderers=t}return Object.defineProperty(e.prototype,"templateId",{get:function(){return this._templateId},enumerable:!0,configurable:!0}),e.prototype.renderTemplate=function(e){return this.renderers.map((function(t){return t.renderTemplate(e)}))},e.prototype.renderElement=function(e,t,n,i){for(var o=0,r=0,s=this.renderers;r<s.length;r++){s[r].renderElement(e,t,n[o++],i)}},e.prototype.disposeElement=function(e,t,n,i){for(var o=0,r=0,s=this.renderers;r<s.length;r++){var a=s[r];a.disposeElement&&a.disposeElement(e,t,n[o],i),o+=1}},e.prototype.disposeTemplate=function(e){for(var t=0,n=0,i=this.renderers;n<i.length;n++){i[n].disposeTemplate(e[t++])}},e}(),jI=function(){function e(e){this.accessibilityProvider=e,this.templateId="a18n"}return e.prototype.renderTemplate=function(e){return e},e.prototype.renderElement=function(e,t,n){var i=this.accessibilityProvider.getAriaLabel(e);i?n.setAttribute("aria-label",i):n.removeAttribute("aria-label");var o=this.accessibilityProvider.getAriaLevel&&this.accessibilityProvider.getAriaLevel(e);"number"==typeof o?n.setAttribute("aria-level",""+o):n.removeAttribute("aria-level")},e.prototype.disposeTemplate=function(e){},e}(),UI=function(){function e(e,t){this.list=e,this.dnd=t}return e.prototype.getDragElements=function(e){var t=this.list.getSelectedElements();return t.indexOf(e)>-1?t:[e]},e.prototype.getDragURI=function(e){return this.dnd.getDragURI(e)},e.prototype.getDragLabel=function(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e,t)},e.prototype.onDragStart=function(e,t){this.dnd.onDragStart&&this.dnd.onDragStart(e,t)},e.prototype.onDragOver=function(e,t,n,i){return this.dnd.onDragOver(e,t,n,i)},e.prototype.onDragEnd=function(e){this.dnd.onDragEnd&&this.dnd.onDragEnd(e)},e.prototype.drop=function(e,t,n,i){this.dnd.drop(e,t,n,i)},e}(),KI=function(){function e(e,t,n,i,o){void 0===o&&(o=VI),this.user=e,this._options=o,this.eventBufferer=new rt,this.disposables=new Be,this._onDidOpen=new nt,this.onDidOpen=this._onDidOpen.event,this._onDidPin=new nt,this.didJustPressContextMenuKey=!1,this._onDidDispose=new nt,this.onDidDispose=this._onDidDispose.event,this.focus=new SI,this.selection=new CI("selected"),ka(o,WI,!1);var s=[this.focus.renderer,this.selection.renderer];this.accessibilityProvider=o.accessibilityProvider,this.accessibilityProvider&&(s.push(new jI(this.accessibilityProvider)),this.accessibilityProvider.onDidChangeActiveDescendant&&this.accessibilityProvider.onDidChangeActiveDescendant(this.onDidChangeActiveDescendant,this,this.disposables)),i=i.map((function(e){return new zI(e.templateId,bI(s,[e]))}));var a=_I(_I({},o),{dnd:o.dnd&&new UI(this,o.dnd)});if(this.view=new TE(t,n,i,a),"string"!=typeof o.ariaRole?this.view.domNode.setAttribute("role",dE.TREE):this.view.domNode.setAttribute("role",o.ariaRole),o.styleController)this.styleController=o.styleController(this.view.domId);else{var u=zo(this.view.domNode);this.styleController=new FI(u,this.view.domId)}if(this.spliceable=new PE([new LI(this.focus,this.view,o.identityProvider),new LI(this.selection,this.view,o.identityProvider),this.view]),this.disposables.add(this.focus),this.disposables.add(this.selection),this.disposables.add(this.view),this.disposables.add(this._onDidDispose),this.onDidFocus=Ge.map(Xn(this.view.domNode,"focus",!0),(function(){return null})),this.onDidBlur=Ge.map(Xn(this.view.domNode,"blur",!0),(function(){return null})),this.disposables.add(new II(this,this.view)),"boolean"!=typeof o.keyboardSupport||o.keyboardSupport){var l=new NI(this,this.view,o);this.disposables.add(l)}if(o.keyboardNavigationLabelProvider){var c=o.keyboardNavigationDelegate||kI;this.typeLabelController=new EI(this,this.view,o.keyboardNavigationLabelProvider,c),this.disposables.add(this.typeLabelController)}this.disposables.add(this.createMouseController(o)),this.onFocusChange(this._onFocusChange,this,this.disposables),this.onSelectionChange(this._onSelectionChange,this,this.disposables),o.ariaLabel&&this.view.domNode.setAttribute("aria-label",r("aria list","{0}. Use the navigation keys to navigate.",o.ariaLabel))}return Object.defineProperty(e.prototype,"onFocusChange",{get:function(){var e=this;return Ge.map(this.eventBufferer.wrapEvent(this.focus.onChange),(function(t){return e.toListEvent(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onSelectionChange",{get:function(){var e=this;return Ge.map(this.eventBufferer.wrapEvent(this.selection.onChange),(function(t){return e.toListEvent(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"domId",{get:function(){return this.view.domId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMouseClick",{get:function(){return this.view.onMouseClick},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMouseDblClick",{get:function(){return this.view.onMouseDblClick},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMouseMiddleClick",{get:function(){return this.view.onMouseMiddleClick},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMouseDown",{get:function(){return this.view.onMouseDown},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onTouchStart",{get:function(){return this.view.onTouchStart},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onTap",{get:function(){return this.view.onTap},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onContextMenu",{get:function(){var e=this,t=Ge.chain(Xn(this.view.domNode,"keydown")).map((function(e){return new ni(e)})).filter((function(t){return e.didJustPressContextMenuKey=58===t.keyCode||t.shiftKey&&68===t.keyCode})).filter((function(e){return e.preventDefault(),e.stopPropagation(),!1})).event,n=Ge.chain(Xn(this.view.domNode,"keyup")).filter((function(){var t=e.didJustPressContextMenuKey;return e.didJustPressContextMenuKey=!1,t})).filter((function(){return e.getFocus().length>0&&!!e.view.domElement(e.getFocus()[0])})).map((function(t){var n=e.getFocus()[0];return{index:n,element:e.view.element(n),anchor:e.view.domElement(n),browserEvent:t}})).event,i=Ge.chain(this.view.onContextMenu).filter((function(){return!e.didJustPressContextMenuKey})).map((function(e){var t=e.element,n=e.index,i=e.browserEvent;return{element:t,index:n,anchor:{x:i.clientX+1,y:i.clientY},browserEvent:i}})).event;return Ge.any(t,n,i)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onKeyDown",{get:function(){return Xn(this.view.domNode,"keydown")},enumerable:!0,configurable:!0}),e.prototype.createMouseController=function(e){return new AI(this)},e.prototype.updateOptions=function(e){void 0===e&&(e={}),this._options=_I(_I({},this._options),e),this.typeLabelController&&this.typeLabelController.updateOptions(this._options)},Object.defineProperty(e.prototype,"options",{get:function(){return this._options},enumerable:!0,configurable:!0}),e.prototype.splice=function(e,t,n){var i=this;if(void 0===n&&(n=[]),e<0||e>this.view.length)throw new wE(this.user,"Invalid start index: "+e);if(t<0)throw new wE(this.user,"Invalid delete count: "+t);0===t&&0===n.length||this.eventBufferer.bufferEvents((function(){return i.spliceable.splice(e,t,n)}))},e.prototype.rerender=function(){this.view.rerender()},e.prototype.element=function(e){return this.view.element(e)},Object.defineProperty(e.prototype,"length",{get:function(){return this.view.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"contentHeight",{get:function(){return this.view.contentHeight},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"scrollTop",{get:function(){return this.view.getScrollTop()},set:function(e){this.view.setScrollTop(e)},enumerable:!0,configurable:!0}),e.prototype.domFocus=function(){this.view.domNode.focus()},e.prototype.layout=function(e,t){this.view.layout(e,t)},e.prototype.setSelection=function(e,t){for(var n=0,i=e;n<i.length;n++){var o=i[n];if(o<0||o>=this.length)throw new wE(this.user,"Invalid index "+o)}this.selection.set(e,t)},e.prototype.getSelection=function(){return this.selection.get()},e.prototype.getSelectedElements=function(){var e=this;return this.getSelection().map((function(t){return e.view.element(t)}))},e.prototype.setFocus=function(e,t){for(var n=0,i=e;n<i.length;n++){var o=i[n];if(o<0||o>=this.length)throw new wE(this.user,"Invalid index "+o)}this.focus.set(e,t)},e.prototype.focusNext=function(e,t,n,i){if(void 0===e&&(e=1),void 0===t&&(t=!1),0!==this.length){var o=this.focus.get(),r=this.findNextIndex(o.length>0?o[0]+e:0,t,i);r>-1&&this.setFocus([r],n)}},e.prototype.focusPrevious=function(e,t,n,i){if(void 0===e&&(e=1),void 0===t&&(t=!1),0!==this.length){var o=this.focus.get(),r=this.findPreviousIndex(o.length>0?o[0]-e:0,t,i);r>-1&&this.setFocus([r],n)}},e.prototype.focusNextPage=function(e,t){var n=this,i=this.view.indexAt(this.view.getScrollTop()+this.view.renderHeight);i=0===i?0:i-1;var o=this.view.element(i),r=this.getFocusedElements()[0];if(r!==o){var s=this.findPreviousIndex(i,!1,t);s>-1&&r!==this.view.element(s)?this.setFocus([s],e):this.setFocus([i],e)}else{var a=this.view.getScrollTop();this.view.setScrollTop(a+this.view.renderHeight-this.view.elementHeight(i)),this.view.getScrollTop()!==a&&setTimeout((function(){return n.focusNextPage(e,t)}),0)}},e.prototype.focusPreviousPage=function(e,t){var n,i=this,o=this.view.getScrollTop();n=0===o?this.view.indexAt(o):this.view.indexAfter(o-1);var r=this.view.element(n),s=this.getFocusedElements()[0];if(s!==r){var a=this.findNextIndex(n,!1,t);a>-1&&s!==this.view.element(a)?this.setFocus([a],e):this.setFocus([n],e)}else{var u=o;this.view.setScrollTop(o-this.view.renderHeight),this.view.getScrollTop()!==u&&setTimeout((function(){return i.focusPreviousPage(e,t)}),0)}},e.prototype.focusLast=function(e,t){if(0!==this.length){var n=this.findPreviousIndex(this.length-1,!1,t);n>-1&&this.setFocus([n],e)}},e.prototype.focusFirst=function(e,t){if(0!==this.length){var n=this.findNextIndex(0,!1,t);n>-1&&this.setFocus([n],e)}},e.prototype.findNextIndex=function(e,t,n){void 0===t&&(t=!1);for(var i=0;i<this.length;i++){if(e>=this.length&&!t)return-1;if(e%=this.length,!n||n(this.element(e)))return e;e++}return-1},e.prototype.findPreviousIndex=function(e,t,n){void 0===t&&(t=!1);for(var i=0;i<this.length;i++){if(e<0&&!t)return-1;if(e=(this.length+e%this.length)%this.length,!n||n(this.element(e)))return e;e--}return-1},e.prototype.getFocus=function(){return this.focus.get()},e.prototype.getFocusedElements=function(){var e=this;return this.getFocus().map((function(t){return e.view.element(t)}))},e.prototype.reveal=function(e,t){if(e<0||e>=this.length)throw new wE(this.user,"Invalid index "+e);var n=this.view.getScrollTop(),i=this.view.elementTop(e),o=this.view.elementHeight(e);if(Ws(t)){var r=o-this.view.renderHeight;this.view.setScrollTop(r*RE(t,0,1)+i)}else{var s=i+o,a=n+this.view.renderHeight;i<n&&s>=a||(i<n?this.view.setScrollTop(i):s>=a&&this.view.setScrollTop(s-this.view.renderHeight))}},e.prototype.getRelativeTop=function(e){if(e<0||e>=this.length)throw new wE(this.user,"Invalid index "+e);var t=this.view.getScrollTop(),n=this.view.elementTop(e),i=this.view.elementHeight(e);if(n<t||n+i>t+this.view.renderHeight)return null;var o=i-this.view.renderHeight;return Math.abs((t-n)/o)},e.prototype.getHTMLElement=function(){return this.view.domNode},e.prototype.open=function(e,t){for(var n=this,i=0,o=e;i<o.length;i++){var r=o[i];if(r<0||r>=this.length)throw new wE(this.user,"Invalid index "+r)}this._onDidOpen.fire({indexes:e,elements:e.map((function(e){return n.view.element(e)})),browserEvent:t})},e.prototype.pin=function(e,t){for(var n=this,i=0,o=e;i<o.length;i++){var r=o[i];if(r<0||r>=this.length)throw new wE(this.user,"Invalid index "+r)}this._onDidPin.fire({indexes:e,elements:e.map((function(e){return n.view.element(e)})),browserEvent:t})},e.prototype.style=function(e){this.styleController.style(e)},e.prototype.toListEvent=function(e){var t=this,n=e.indexes,i=e.browserEvent;return{indexes:n,elements:n.map((function(e){return t.view.element(e)})),browserEvent:i}},e.prototype._onFocusChange=function(){var e=this.focus.get();so(this.view.domNode,"element-focused",e.length>0),this.onDidChangeActiveDescendant()},e.prototype.onDidChangeActiveDescendant=function(){var e,t=this.focus.get();if(t.length>0){var n=void 0;(null===(e=this.accessibilityProvider)||void 0===e?void 0:e.getActiveDescendantId)&&(n=this.accessibilityProvider.getActiveDescendantId(this.view.element(t[0]))),this.view.domNode.setAttribute("aria-activedescendant",n||this.view.getElementDomId(t[0]))}else this.view.domNode.removeAttribute("aria-activedescendant")},e.prototype._onSelectionChange=function(){var e=this.selection.get();so(this.view.domNode,"selection-none",0===e.length),so(this.view.domNode,"selection-single",1===e.length),so(this.view.domNode,"selection-multiple",e.length>1)},e.prototype.dispose=function(){this._onDidDispose.fire(),this.disposables.dispose(),this._onDidOpen.dispose(),this._onDidPin.dispose(),this._onDidDispose.dispose()},yI([Vf],e.prototype,"onFocusChange",null),yI([Vf],e.prototype,"onSelectionChange",null),yI([Vf],e.prototype,"onContextMenu",null),e}(),qI=(n(397),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),GI=function(e){function t(t,n){return e.call(this,"TreeError ["+t+"] "+n)||this}return qI(t,e),t}(Error),ZI=function(){function e(e){this.fn=e,this._map=new WeakMap}return e.prototype.map=function(e){var t=this._map.get(e);return t||(t=this.fn(e),this._map.set(e,t)),t},e}(),YI=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i};function XI(e){return"object"==typeof e&&"visibility"in e&&"data"in e}function $I(e){switch(e){case!0:return 1;case!1:return 0;default:return e}}function QI(e){return"boolean"==typeof e.collapsible}var JI=function(){function e(e,t,n,i){void 0===i&&(i={}),this.user=e,this.list=t,this.rootRef=[],this.eventBufferer=new rt,this._onDidChangeCollapseState=new nt,this.onDidChangeCollapseState=this.eventBufferer.wrapEvent(this._onDidChangeCollapseState.event),this._onDidChangeRenderNodeCount=new nt,this.onDidChangeRenderNodeCount=this.eventBufferer.wrapEvent(this._onDidChangeRenderNodeCount.event),this._onDidSplice=new nt,this.onDidSplice=this._onDidSplice.event,this.collapseByDefault=void 0!==i.collapseByDefault&&i.collapseByDefault,this.filter=i.filter,this.autoExpandSingleChildren=void 0!==i.autoExpandSingleChildren&&i.autoExpandSingleChildren,this.root={parent:void 0,element:n,children:[],depth:0,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:!1,collapsed:!1,renderNodeCount:0,visible:!0,filterData:void 0}}return e.prototype.splice=function(e,t,n,i,o){var r,s=this;if(0===e.length)throw new GI(this.user,"Invalid tree location");for(var a=this.getParentNodeWithListIndex(e),u=a.parentNode,l=a.listIndex,c=a.revealed,d=a.visible,h=[],p=Ve.map(Ve.from(n),(function(e){return s.createTreeNode(e,u,u.visible?1:0,c,h,i)})),f=e[e.length-1],g=0,m=f;m>=0&&m<u.children.length;m--){if((L=u.children[m]).visible){g=L.visibleChildIndex;break}}var v=[],_=0,y=0;Ve.forEach(p,(function(e){v.push(e),y+=e.renderNodeCount,e.visible&&(e.visibleChildIndex=g+_++)}));for(var b=(r=u.children).splice.apply(r,YI([f,t],v)),w=0,C=0,S=b;C<S.length;C++){(L=S[C]).visible&&w++}if(0!==w)for(m=f+v.length;m<u.children.length;m++){var L;(L=u.children[m]).visible&&(L.visibleChildIndex-=w)}if(u.visibleChildrenCount+=_-w,c&&d){var x=b.reduce((function(e,t){return e+(t.visible?t.renderNodeCount:0)}),0);this._updateAncestorsRenderNodeCount(u,y-x),this.list.splice(l,x,h)}if(b.length>0&&o){var D=function(e){o(e),e.children.forEach(D)};b.forEach(D)}this._onDidSplice.fire({insertedNodes:v,deletedNodes:b})},e.prototype.rerender=function(e){if(0===e.length)throw new GI(this.user,"Invalid tree location");var t=this.getTreeNodeWithListIndex(e),n=t.node,i=t.listIndex;t.revealed&&this.list.splice(i,1,[n])},e.prototype.has=function(e){return this.hasTreeNode(e)},e.prototype.getListIndex=function(e){var t=this.getTreeNodeWithListIndex(e),n=t.listIndex,i=t.visible,o=t.revealed;return i&&o?n:-1},e.prototype.getListRenderCount=function(e){return this.getTreeNode(e).renderNodeCount},e.prototype.isCollapsible=function(e){return this.getTreeNode(e).collapsible},e.prototype.setCollapsible=function(e,t){var n=this,i=this.getTreeNode(e);void 0===t&&(t=!i.collapsible);var o={collapsible:t};return this.eventBufferer.bufferEvents((function(){return n._setCollapseState(e,o)}))},e.prototype.isCollapsed=function(e){return this.getTreeNode(e).collapsed},e.prototype.setCollapsed=function(e,t,n){var i=this,o=this.getTreeNode(e);void 0===t&&(t=!o.collapsed);var r={collapsed:t,recursive:n||!1};return this.eventBufferer.bufferEvents((function(){return i._setCollapseState(e,r)}))},e.prototype._setCollapseState=function(e,t){var n=this.getTreeNodeWithListIndex(e),i=n.node,o=n.listIndex,r=n.revealed,s=this._setListNodeCollapseState(i,o,r,t);if(i!==this.root&&this.autoExpandSingleChildren&&s&&!QI(t)&&i.collapsible&&!i.collapsed&&!t.recursive){for(var a=-1,u=0;u<i.children.length;u++){if(i.children[u].visible){if(a>-1){a=-1;break}a=u}}a>-1&&this._setCollapseState(YI(e,[a]),t)}return s},e.prototype._setListNodeCollapseState=function(e,t,n,i){var o=this._setNodeCollapseState(e,i,!1);if(!n||!e.visible||!o)return o;var r=e.renderNodeCount,s=this.updateNodeAfterCollapseChange(e),a=r-(-1===t?0:1);return this.list.splice(t+1,a,s.slice(1)),o},e.prototype._setNodeCollapseState=function(e,t,n){var i;if(e===this.root?i=!1:(QI(t)?(i=e.collapsible!==t.collapsible,e.collapsible=t.collapsible):e.collapsible?(i=e.collapsed!==t.collapsed,e.collapsed=t.collapsed):i=!1,i&&this._onDidChangeCollapseState.fire({node:e,deep:n})),!QI(t)&&t.recursive)for(var o=0,r=e.children;o<r.length;o++){var s=r[o];i=this._setNodeCollapseState(s,t,!0)||i}return i},e.prototype.expandTo=function(e){var t=this;this.eventBufferer.bufferEvents((function(){for(var n=t.getTreeNode(e);n.parent;)n=n.parent,e=e.slice(0,e.length-1),n.collapsed&&t._setCollapseState(e,{collapsed:!1,recursive:!1})}))},e.prototype.refilter=function(){var e=this.root.renderNodeCount,t=this.updateNodeAfterFilterChange(this.root);this.list.splice(0,e,t)},e.prototype.createTreeNode=function(e,t,n,i,o,r){var s=this,a={parent:t,element:e.element,children:[],depth:t.depth+1,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:"boolean"==typeof e.collapsible?e.collapsible:void 0!==e.collapsed,collapsed:void 0===e.collapsed?this.collapseByDefault:e.collapsed,renderNodeCount:1,visible:!0,filterData:void 0},u=this._filterNode(a,n);i&&o.push(a);var l=Ve.from(e.children),c=i&&0!==u&&!a.collapsed,d=Ve.map(l,(function(e){return s.createTreeNode(e,a,u,c,o,r)})),h=0,p=1;return Ve.forEach(d,(function(e){a.children.push(e),p+=e.renderNodeCount,e.visible&&(e.visibleChildIndex=h++)})),a.collapsible=a.collapsible||a.children.length>0,a.visibleChildrenCount=h,a.visible=2===u?h>0:1===u,a.visible?a.collapsed||(a.renderNodeCount=p):(a.renderNodeCount=0,i&&o.pop()),r&&r(a),a},e.prototype.updateNodeAfterCollapseChange=function(e){var t=e.renderNodeCount,n=[];return this._updateNodeAfterCollapseChange(e,n),this._updateAncestorsRenderNodeCount(e.parent,n.length-t),n},e.prototype._updateNodeAfterCollapseChange=function(e,t){if(!1===e.visible)return 0;if(t.push(e),e.renderNodeCount=1,!e.collapsed)for(var n=0,i=e.children;n<i.length;n++){var o=i[n];e.renderNodeCount+=this._updateNodeAfterCollapseChange(o,t)}return this._onDidChangeRenderNodeCount.fire(e),e.renderNodeCount},e.prototype.updateNodeAfterFilterChange=function(e){var t=e.renderNodeCount,n=[];return this._updateNodeAfterFilterChange(e,e.visible?1:0,n),this._updateAncestorsRenderNodeCount(e.parent,n.length-t),n},e.prototype._updateNodeAfterFilterChange=function(e,t,n,i){var o;if(void 0===i&&(i=!0),e!==this.root){if(0===(o=this._filterNode(e,t)))return e.visible=!1,e.renderNodeCount=0,!1;i&&n.push(e)}var r=n.length;e.renderNodeCount=e===this.root?0:1;var s=!1;if(e.collapsed&&0===o)e.visibleChildrenCount=0;else{for(var a=0,u=0,l=e.children;u<l.length;u++){var c=l[u];s=this._updateNodeAfterFilterChange(c,o,n,i&&!e.collapsed)||s,c.visible&&(c.visibleChildIndex=a++)}e.visibleChildrenCount=a}return e!==this.root&&(e.visible=2===o?s:1===o),e.visible?e.collapsed||(e.renderNodeCount+=n.length-r):(e.renderNodeCount=0,i&&n.pop()),this._onDidChangeRenderNodeCount.fire(e),e.visible},e.prototype._updateAncestorsRenderNodeCount=function(e,t){if(0!==t)for(;e;)e.renderNodeCount+=t,this._onDidChangeRenderNodeCount.fire(e),e=e.parent},e.prototype._filterNode=function(e,t){var n=this.filter?this.filter.filter(e.element,t):1;return"boolean"==typeof n?(e.filterData=void 0,n?1:0):XI(n)?(e.filterData=n.data,$I(n.visibility)):(e.filterData=void 0,$I(n))},e.prototype.hasTreeNode=function(e,t){if(void 0===t&&(t=this.root),!e||0===e.length)return!0;var n=e[0],i=e.slice(1);return!(n<0||n>t.children.length)&&this.hasTreeNode(i,t.children[n])},e.prototype.getTreeNode=function(e,t){if(void 0===t&&(t=this.root),!e||0===e.length)return t;var n=e[0],i=e.slice(1);if(n<0||n>t.children.length)throw new GI(this.user,"Invalid tree location");return this.getTreeNode(i,t.children[n])},e.prototype.getTreeNodeWithListIndex=function(e){if(0===e.length)return{node:this.root,listIndex:-1,revealed:!0,visible:!1};var t=this.getParentNodeWithListIndex(e),n=t.parentNode,i=t.listIndex,o=t.revealed,r=t.visible,s=e[e.length-1];if(s<0||s>n.children.length)throw new GI(this.user,"Invalid tree location");var a=n.children[s];return{node:a,listIndex:i,revealed:o,visible:r&&a.visible}},e.prototype.getParentNodeWithListIndex=function(e,t,n,i,o){void 0===t&&(t=this.root),void 0===n&&(n=0),void 0===i&&(i=!0),void 0===o&&(o=!0);var r=e[0],s=e.slice(1);if(r<0||r>t.children.length)throw new GI(this.user,"Invalid tree location");for(var a=0;a<r;a++)n+=t.children[a].renderNodeCount;return i=i&&!t.collapsed,o=o&&t.visible,0===s.length?{parentNode:t,listIndex:n,revealed:i,visible:o}:this.getParentNodeWithListIndex(s,t.children[r],n+1,i,o)},e.prototype.getNode=function(e){return void 0===e&&(e=[]),this.getTreeNode(e)},e.prototype.getNodeLocation=function(e){for(var t=[],n=e;n.parent;)t.push(n.parent.children.indexOf(n)),n=n.parent;return t.reverse()},e.prototype.getParentNodeLocation=function(e){return 0===e.length?void 0:1===e.length?[]:function(e){if(0===e.length)throw new Error("Invalid tail call");return[e.slice(0,e.length-1),e[e.length-1]]}(e)[0]},e}(),eO=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),tO=function(){return(tO=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},nO=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},iO=function(e){function t(t){var n=e.call(this,t.elements.map((function(e){return e.element})))||this;return n.data=t,n}return eO(t,e),t}(IE);function oO(e){return e instanceof IE?new iO(e):e}var rO=function(){function e(e,t){this.modelProvider=e,this.dnd=t,this.autoExpandDisposable=He.None}return e.prototype.getDragURI=function(e){return this.dnd.getDragURI(e.element)},e.prototype.getDragLabel=function(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e.map((function(e){return e.element})),t)},e.prototype.onDragStart=function(e,t){this.dnd.onDragStart&&this.dnd.onDragStart(oO(e),t)},e.prototype.onDragOver=function(e,t,n,i,o){var r=this;void 0===o&&(o=!0);var s=this.dnd.onDragOver(oO(e),t&&t.element,n,i),a=this.autoExpandNode!==t;if(a&&(this.autoExpandDisposable.dispose(),this.autoExpandNode=t),void 0===t)return s;if(a&&"boolean"!=typeof s&&s.autoExpand&&(this.autoExpandDisposable=mi((function(){var e=r.modelProvider(),n=e.getNodeLocation(t);e.isCollapsed(n)&&e.setCollapsed(n,!1),r.autoExpandNode=void 0}),500)),"boolean"==typeof s||!s.accept||void 0===s.bubble||s.feedback)return o?s:{accept:"boolean"==typeof s?s:s.accept,effect:"boolean"==typeof s?void 0:s.effect,feedback:[n]};if(1===s.bubble){var u=this.modelProvider(),l=u.getNodeLocation(t),c=u.getParentNodeLocation(l),d=u.getNode(c),h=c&&u.getListIndex(c);return this.onDragOver(e,d,h,i,!1)}var p=this.modelProvider(),f=p.getNodeLocation(t),g=p.getListIndex(f),m=p.getListRenderCount(f);return tO(tO({},s),{feedback:Wi(g,g+m)})},e.prototype.drop=function(e,t,n,i){this.autoExpandDisposable.dispose(),this.autoExpandNode=void 0,this.dnd.drop(oO(e),t&&t.element,n,i)},e.prototype.onDragEnd=function(e){this.dnd.onDragEnd&&this.dnd.onDragEnd(e)},e}();var sO,aO=function(){function e(e){this.delegate=e}return e.prototype.getHeight=function(e){return this.delegate.getHeight(e.element)},e.prototype.getTemplateId=function(e){return this.delegate.getTemplateId(e.element)},e.prototype.hasDynamicHeight=function(e){return!!this.delegate.hasDynamicHeight&&this.delegate.hasDynamicHeight(e.element)},e.prototype.setDynamicHeight=function(e,t){this.delegate.setDynamicHeight&&this.delegate.setDynamicHeight(e.element,t)},e}();!function(e){e.None="none",e.OnHover="onHover",e.Always="always"}(sO||(sO={}));var uO=function(){function e(e,t){var n=this;void 0===t&&(t=[]),this._elements=t,this.onDidChange=Ge.forEach(e,(function(e){return n._elements=e}))}return Object.defineProperty(e.prototype,"elements",{get:function(){return this._elements},enumerable:!0,configurable:!0}),e}(),lO=function(){function e(t,n,i,o,r){void 0===r&&(r={}),this.renderer=t,this.modelProvider=n,this.activeNodes=o,this.renderedElements=new Map,this.renderedNodes=new Map,this.indent=e.DefaultIndent,this.hideTwistiesOfChildlessElements=!1,this.shouldRenderIndentGuides=!1,this.renderedIndentGuides=new Jd,this.activeIndentNodes=new Set,this.indentGuidesDisposable=He.None,this.disposables=new Be,this.templateId=t.templateId,this.updateOptions(r),Ge.map(i,(function(e){return e.node}))(this.onDidChangeNodeTwistieState,this,this.disposables),t.onDidChangeTwistieState&&t.onDidChangeTwistieState(this.onDidChangeTwistieState,this,this.disposables)}return e.prototype.updateOptions=function(e){if(void 0===e&&(e={}),void 0!==e.indent&&(this.indent=RE(e.indent,0,40)),void 0!==e.renderIndentGuides){var t=e.renderIndentGuides!==sO.None;if(t!==this.shouldRenderIndentGuides&&(this.shouldRenderIndentGuides=t,this.indentGuidesDisposable.dispose(),t)){var n=new Be;this.activeNodes.onDidChange(this._onDidChangeActiveNodes,this,n),this.indentGuidesDisposable=n,this._onDidChangeActiveNodes(this.activeNodes.elements)}}void 0!==e.hideTwistiesOfChildlessElements&&(this.hideTwistiesOfChildlessElements=e.hideTwistiesOfChildlessElements)},e.prototype.renderTemplate=function(e){var t=Xo(e,er(".monaco-tl-row")),n=Xo(t,er(".monaco-tl-indent")),i=Xo(t,er(".monaco-tl-twistie")),o=Xo(t,er(".monaco-tl-contents")),r=this.renderer.renderTemplate(o);return{container:e,indent:n,twistie:i,indentGuidesDisposable:He.None,templateData:r}},e.prototype.renderElement=function(t,n,i,o){"number"==typeof o&&(this.renderedNodes.set(t,{templateData:i,height:o}),this.renderedElements.set(t.element,t));var r=e.DefaultIndent+(t.depth-1)*this.indent;i.twistie.style.paddingLeft=r+"px",i.indent.style.width=r+this.indent-16+"px",this.renderTwistie(t,i),"number"==typeof o&&this.renderIndentGuides(t,i),this.renderer.renderElement(t,n,i.templateData,o)},e.prototype.disposeElement=function(e,t,n,i){n.indentGuidesDisposable.dispose(),this.renderer.disposeElement&&this.renderer.disposeElement(e,t,n.templateData,i),"number"==typeof i&&(this.renderedNodes.delete(e),this.renderedElements.delete(e.element))},e.prototype.disposeTemplate=function(e){this.renderer.disposeTemplate(e.templateData)},e.prototype.onDidChangeTwistieState=function(e){var t=this.renderedElements.get(e);t&&this.onDidChangeNodeTwistieState(t)},e.prototype.onDidChangeNodeTwistieState=function(e){var t=this.renderedNodes.get(e);t&&(this.renderTwistie(e,t.templateData),this._onDidChangeActiveNodes(this.activeNodes.elements),this.renderIndentGuides(e,t.templateData))},e.prototype.renderTwistie=function(e,t){this.renderer.renderTwistie&&this.renderer.renderTwistie(e.element,t.twistie),e.collapsible&&(!this.hideTwistiesOfChildlessElements||e.visibleChildrenCount>0)?(io(t.twistie,"codicon","codicon-chevron-down","collapsible"),so(t.twistie,"collapsed",e.collapsed)):ro(t.twistie,"codicon","codicon-chevron-down","collapsible","collapsed"),e.collapsible?t.container.setAttribute("aria-expanded",String(!e.collapsed)):t.container.removeAttribute("aria-expanded")},e.prototype.renderIndentGuides=function(e,t){var n=this;if(Yi(t.indent),t.indentGuidesDisposable.dispose(),this.shouldRenderIndentGuides){for(var i=new Be,o=this.modelProvider(),r=e,s=function(){var e=o.getNodeLocation(r),s=o.getParentNodeLocation(e);if(!s)return"break";var u=o.getNode(s),l=er(".indent-guide",{style:"width: "+a.indent+"px"});a.activeIndentNodes.has(u)&&no(l,"active"),0===t.indent.childElementCount?t.indent.appendChild(l):t.indent.insertBefore(l,t.indent.firstElementChild),a.renderedIndentGuides.add(u,l),i.add(We((function(){return n.renderedIndentGuides.delete(u,l)}))),r=u},a=this;;){if("break"===s())break}t.indentGuidesDisposable=i}},e.prototype._onDidChangeActiveNodes=function(e){var t=this;if(this.shouldRenderIndentGuides){var n=new Set,i=this.modelProvider();e.forEach((function(e){var t=i.getNodeLocation(e);try{var o=i.getParentNodeLocation(t);e.collapsible&&e.children.length>0&&!e.collapsed?n.add(e):o&&n.add(i.getNode(o))}catch(e){}})),this.activeIndentNodes.forEach((function(e){n.has(e)||t.renderedIndentGuides.forEach(e,(function(e){return oo(e,"active")}))})),n.forEach((function(e){t.activeIndentNodes.has(e)||t.renderedIndentGuides.forEach(e,(function(e){return no(e,"active")}))})),this.activeIndentNodes=n}},e.prototype.dispose=function(){this.renderedNodes.clear(),this.renderedElements.clear(),this.indentGuidesDisposable.dispose(),Ae(this.disposables)},e.DefaultIndent=8,e}(),cO=function(){function e(e,t,n){this.tree=e,this.keyboardNavigationLabelProvider=t,this._filter=n,this._totalCount=0,this._matchCount=0,this._pattern="",this._lowercasePattern="",this.disposables=new Be,e.onWillRefilter(this.reset,this,this.disposables)}return Object.defineProperty(e.prototype,"totalCount",{get:function(){return this._totalCount},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"matchCount",{get:function(){return this._matchCount},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"pattern",{set:function(e){this._pattern=e,this._lowercasePattern=e.toLowerCase()},enumerable:!0,configurable:!0}),e.prototype.filter=function(e,t){if(this._filter){var n=this._filter.filter(e,t);if(this.tree.options.simpleKeyboardNavigation)return n;if(0===("boolean"==typeof n?n?1:0:XI(n)?$I(n.visibility):n))return!1}if(this._totalCount++,this.tree.options.simpleKeyboardNavigation||!this._pattern)return this._matchCount++,{data:nI.Default,visibility:!0};var i=this.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(e),o=i&&i.toString();if(void 0===o)return{data:nI.Default,visibility:!0};var r=uI(this._pattern,this._lowercasePattern,0,o,o.toLowerCase(),0,!0);return r?(this._matchCount++,{data:r,visibility:!0}):this.tree.options.filterOnType?2:{data:nI.Default,visibility:!0}},e.prototype.reset=function(){this._totalCount=0,this._matchCount=0},e.prototype.dispose=function(){Ae(this.disposables)},e}(),dO=function(){function e(e,t,n,i,o){this.tree=e,this.view=n,this.filter=i,this.keyboardNavigationDelegate=o,this._enabled=!1,this._pattern="",this._empty=!1,this._onDidChangeEmptyState=new nt,this.positionClassName="ne",this.automaticKeyboardNavigation=!0,this.triggered=!1,this._onDidChangePattern=new nt,this.enabledDisposables=new Be,this.disposables=new Be,this.domNode=er(".monaco-list-type-filter."+this.positionClassName),this.domNode.draggable=!0,Xn(this.domNode,"dragstart")(this.onDragStart,this,this.disposables),this.messageDomNode=Xo(n.getHTMLElement(),er(".monaco-list-type-filter-message")),this.labelDomNode=Xo(this.domNode,er("span.label"));var s=Xo(this.domNode,er(".controls"));this._filterOnType=!!e.options.filterOnType,this.filterOnTypeDomNode=Xo(s,er("input.filter.codicon.codicon-list-selection")),this.filterOnTypeDomNode.type="checkbox",this.filterOnTypeDomNode.checked=this._filterOnType,this.filterOnTypeDomNode.tabIndex=-1,this.updateFilterOnTypeTitle(),Xn(this.filterOnTypeDomNode,"input")(this.onDidChangeFilterOnType,this,this.disposables),this.clearDomNode=Xo(s,er("button.clear.codicon.codicon-close")),this.clearDomNode.tabIndex=-1,this.clearDomNode.title=r("clear","Clear"),this.keyboardNavigationEventFilter=e.options.keyboardNavigationEventFilter,t.onDidSplice(this.onDidSpliceModel,this,this.disposables),this.updateOptions(e.options)}return Object.defineProperty(e.prototype,"enabled",{get:function(){return this._enabled},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"pattern",{get:function(){return this._pattern},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"filterOnType",{get:function(){return this._filterOnType},enumerable:!0,configurable:!0}),e.prototype.updateOptions=function(e){e.simpleKeyboardNavigation?this.disable():this.enable(),void 0!==e.filterOnType&&(this._filterOnType=!!e.filterOnType,this.filterOnTypeDomNode.checked=this._filterOnType),void 0!==e.automaticKeyboardNavigation&&(this.automaticKeyboardNavigation=e.automaticKeyboardNavigation),this.tree.refilter(),this.render(),this.automaticKeyboardNavigation||this.onEventOrInput("")},e.prototype.enable=function(){var e=this;if(!this._enabled){var t=Ge.chain(Xn(this.view.getHTMLElement(),"keydown")).filter((function(t){return!hO(t.target)||t.target===e.filterOnTypeDomNode})).filter((function(e){return"Dead"!==e.key&&!/^Media/.test(e.key)})).map((function(e){return new ni(e)})).filter(this.keyboardNavigationEventFilter||function(){return!0}).filter((function(){return e.automaticKeyboardNavigation||e.triggered})).filter((function(t){return e.keyboardNavigationDelegate.mightProducePrintableCharacter(t)||(e.pattern.length>0||e.triggered)&&(9===t.keyCode||1===t.keyCode)&&!t.altKey&&!t.ctrlKey&&!t.metaKey||1===t.keyCode&&(_?t.altKey&&!t.metaKey:t.ctrlKey)&&!t.shiftKey})).forEach((function(e){e.stopPropagation(),e.preventDefault()})).event,n=Xn(this.clearDomNode,"click");Ge.chain(Ge.any(t,n)).event(this.onEventOrInput,this,this.enabledDisposables),this.filter.pattern="",this.tree.refilter(),this.render(),this._enabled=!0,this.triggered=!1}},e.prototype.disable=function(){this._enabled&&(this.domNode.remove(),this.enabledDisposables.clear(),this.tree.refilter(),this.render(),this._enabled=!1,this.triggered=!1)},e.prototype.onEventOrInput=function(e){"string"==typeof e?this.onInput(e):e instanceof MouseEvent||9===e.keyCode||1===e.keyCode&&(_?e.altKey:e.ctrlKey)?this.onInput(""):1===e.keyCode?this.onInput(0===this.pattern.length?"":this.pattern.substr(0,this.pattern.length-1)):this.onInput(this.pattern+e.browserEvent.key)},e.prototype.onInput=function(e){var t=this.view.getHTMLElement();e&&!this.domNode.parentElement?t.append(this.domNode):!e&&this.domNode.parentElement&&(this.domNode.remove(),this.tree.domFocus()),this._pattern=e,this._onDidChangePattern.fire(e),this.filter.pattern=e,this.tree.refilter(),e&&this.tree.focusNext(0,!0,void 0,(function(e){return!nI.isDefault(e.filterData)}));var n=this.tree.getFocus();if(n.length>0){var i=n[0];null===this.tree.getRelativeTop(i)&&this.tree.reveal(i,.5)}this.render(),e||(this.triggered=!1)},e.prototype.onDragStart=function(){var e=this,t=this.view.getHTMLElement(),n=Oo(t).left,i=t.clientWidth,o=i/2,r=this.domNode.clientWidth,s=new Be,a=this.positionClassName,u=function(){switch(a){case"nw":e.domNode.style.top="4px",e.domNode.style.left="4px";break;case"ne":e.domNode.style.top="4px",e.domNode.style.left=i-r-6+"px"}};u(),oo(this.domNode,a),no(this.domNode,"dragging"),s.add(We((function(){return oo(e.domNode,"dragging")}))),Xn(document,"dragover")((function(e){e.preventDefault();var t=e.screenX-n;e.dataTransfer&&(e.dataTransfer.dropEffect="none"),a=t<o?"nw":"ne",u()}),null,s),Xn(this.domNode,"dragend")((function(){e.positionClassName=a,e.domNode.className="monaco-list-type-filter "+e.positionClassName,e.domNode.style.top="",e.domNode.style.left="",Ae(s)}),null,s),dD.CurrentDragAndDropData=new cD("vscode-ui"),s.add(We((function(){return dD.CurrentDragAndDropData=void 0})))},e.prototype.onDidSpliceModel=function(){this._enabled&&0!==this.pattern.length&&(this.tree.refilter(),this.render())},e.prototype.onDidChangeFilterOnType=function(){this.tree.updateOptions({filterOnType:this.filterOnTypeDomNode.checked}),this.tree.refilter(),this.tree.domFocus(),this.render(),this.updateFilterOnTypeTitle()},e.prototype.updateFilterOnTypeTitle=function(){this.filterOnType?this.filterOnTypeDomNode.title=r("disable filter on type","Disable Filter on Type"):this.filterOnTypeDomNode.title=r("enable filter on type","Enable Filter on Type")},e.prototype.render=function(){var e=this.filter.totalCount>0&&0===this.filter.matchCount;this.pattern&&this.tree.options.filterOnType&&e?(this.messageDomNode.textContent=r("empty","No elements found"),this._empty=!0):(this.messageDomNode.innerHTML="",this._empty=!1),so(this.domNode,"no-matches",e),this.domNode.title=r("found","Matched {0} out of {1} elements",this.filter.matchCount,this.filter.totalCount),this.labelDomNode.textContent=this.pattern.length>16?"…"+this.pattern.substr(this.pattern.length-16):this.pattern,this._onDidChangeEmptyState.fire(this._empty)},e.prototype.shouldAllowFocus=function(e){return!(this.enabled&&this.pattern&&!this.filterOnType)||(this.filter.totalCount>0&&this.filter.matchCount<=1||!nI.isDefault(e.filterData))},e.prototype.dispose=function(){this._enabled&&(this.domNode.remove(),this.enabledDisposables.dispose(),this._enabled=!1,this.triggered=!1),this._onDidChangePattern.dispose(),Ae(this.disposables)},e}();function hO(e){return"INPUT"===e.tagName||"TEXTAREA"===e.tagName}function pO(e){return{elements:e.elements.map((function(e){return e.element})),browserEvent:e.browserEvent}}function fO(e,t){t(e),e.children.forEach((function(e){return fO(e,t)}))}var gO=function(){function e(e){this.identityProvider=e,this.nodes=[],this._onDidChange=new nt,this.onDidChange=this._onDidChange.event}return Object.defineProperty(e.prototype,"nodeSet",{get:function(){return this._nodeSet||(this._nodeSet=this.createNodeSet()),this._nodeSet},enumerable:!0,configurable:!0}),e.prototype.set=function(e,t){xi(this.nodes,e)||this._set(e,!1,t)},e.prototype._set=function(e,t,n){if(this.nodes=nO(e),this.elements=void 0,this._nodeSet=void 0,!t){var i=this;this._onDidChange.fire({get elements(){return i.get()},browserEvent:n})}},e.prototype.get=function(){return this.elements||(this.elements=this.nodes.map((function(e){return e.element}))),nO(this.elements)},e.prototype.getNodes=function(){return this.nodes},e.prototype.has=function(e){return this.nodeSet.has(e)},e.prototype.onDidModelSplice=function(e){var t=this,n=e.insertedNodes,i=e.deletedNodes;if(!this.identityProvider){var o=this.createNodeSet(),r=function(e){return o.delete(e)};return i.forEach((function(e){return fO(e,r)})),void this.set(Js(o))}var s=new Set,a=function(e){return s.add(t.identityProvider.getId(e.element).toString())};i.forEach((function(e){return fO(e,a)}));var u=new Map,l=function(e){return u.set(t.identityProvider.getId(e.element).toString(),e)};n.forEach((function(e){return fO(e,l)}));for(var c=[],d=0,h=this.nodes;d<h.length;d++){var p=h[d],f=this.identityProvider.getId(p.element).toString();if(s.has(f)){var g=u.get(f);g&&c.push(g)}else c.push(p)}this._set(c,!0)},e.prototype.createNodeSet=function(){for(var e=new Set,t=0,n=this.nodes;t<n.length;t++){var i=n[t];e.add(i)}return e},e}(),mO=function(e){function t(t,n){var i=e.call(this,t)||this;return i.tree=n,i}return eO(t,e),t.prototype.onPointer=function(t){if(!hO(t.browserEvent.target)){var n=t.element;if(!n)return e.prototype.onPointer.call(this,t);if(this.isSelectionRangeChangeEvent(t)||this.isSelectionSingleChangeEvent(t))return e.prototype.onPointer.call(this,t);var i=to(t.browserEvent.target,"monaco-tl-twistie");if(!this.tree.openOnSingleClick&&2!==t.browserEvent.detail&&!i)return e.prototype.onPointer.call(this,t);var o=!1;if((o="function"==typeof this.tree.expandOnlyOnTwistieClick?this.tree.expandOnlyOnTwistieClick(n.element):!!this.tree.expandOnlyOnTwistieClick)&&!i)return e.prototype.onPointer.call(this,t);if(n.collapsible){var r=this.tree.model,s=r.getNodeLocation(n),a=t.browserEvent.altKey;if(r.setCollapsed(s,void 0,a),o&&i)return}e.prototype.onPointer.call(this,t)}},t.prototype.onDoubleClick=function(t){to(t.browserEvent.target,"monaco-tl-twistie")||e.prototype.onDoubleClick.call(this,t)},t}(AI),vO=function(e){function t(t,n,i,o,r,s,a){var u=e.call(this,t,n,i,o,a)||this;return u.focusTrait=r,u.selectionTrait=s,u}return eO(t,e),t.prototype.createMouseController=function(e){return new mO(this,e.tree)},t.prototype.splice=function(t,n,i){var o=this;if(void 0===i&&(i=[]),e.prototype.splice.call(this,t,n,i),0!==i.length){var r=[],s=[];i.forEach((function(e,n){o.focusTrait.has(e)&&r.push(t+n),o.selectionTrait.has(e)&&s.push(t+n)})),r.length>0&&e.prototype.setFocus.call(this,Ti(nO(e.prototype.getFocus.call(this),r))),s.length>0&&e.prototype.setSelection.call(this,Ti(nO(e.prototype.getSelection.call(this),s)))}},t.prototype.setFocus=function(t,n,i){var o=this;void 0===i&&(i=!1),e.prototype.setFocus.call(this,t,n),i||this.focusTrait.set(t.map((function(e){return o.element(e)})),n)},t.prototype.setSelection=function(t,n,i){var o=this;void 0===i&&(i=!1),e.prototype.setSelection.call(this,t,n),i||this.selectionTrait.set(t.map((function(e){return o.element(e)})),n)},t}(KI),_O=function(){function e(e,t,n,i,o){var r=this;void 0===o&&(o={}),this._options=o,this.eventBufferer=new rt,this.disposables=new Be,this._onWillRefilter=new nt,this.onWillRefilter=this._onWillRefilter.event,this._onDidUpdateOptions=new nt;var s,a,u,l=new aO(n),c=new st,d=new st,h=new uO(d.event);this.renderers=i.map((function(e){return new lO(e,(function(){return r.model}),c.event,h,o)}));for(var p=0,f=this.renderers;p<f.length;p++){var g=f[p];this.disposables.add(g)}o.keyboardNavigationLabelProvider&&(s=new cO(this,o.keyboardNavigationLabelProvider,o.filter),o=tO(tO({},o),{filter:s}),this.disposables.add(s)),this.focus=new gO(o.identityProvider),this.selection=new gO(o.identityProvider),this.view=new vO(e,t,l,this.renderers,this.focus,this.selection,tO(tO({},(a=function(){return r.model},(u=o)&&tO(tO({},u),{identityProvider:u.identityProvider&&{getId:function(e){return u.identityProvider.getId(e.element)}},dnd:u.dnd&&new rO(a,u.dnd),multipleSelectionController:u.multipleSelectionController&&{isSelectionSingleChangeEvent:function(e){return u.multipleSelectionController.isSelectionSingleChangeEvent(tO(tO({},e),{element:e.element}))},isSelectionRangeChangeEvent:function(e){return u.multipleSelectionController.isSelectionRangeChangeEvent(tO(tO({},e),{element:e.element}))}},accessibilityProvider:u.accessibilityProvider&&tO(tO({},u.accessibilityProvider),{getAriaLabel:function(e){return u.accessibilityProvider.getAriaLabel(e.element)},getAriaLevel:function(e){return e.depth},getActiveDescendantId:u.accessibilityProvider.getActiveDescendantId&&function(e){return u.accessibilityProvider.getActiveDescendantId(e.element)}}),keyboardNavigationLabelProvider:u.keyboardNavigationLabelProvider&&tO(tO({},u.keyboardNavigationLabelProvider),{getKeyboardNavigationLabel:function(e){return u.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(e.element)}}),enableKeyboardNavigation:u.simpleKeyboardNavigation,ariaProvider:{getSetSize:function(e){var t=a(),n=t.getNodeLocation(e),i=t.getParentNodeLocation(n);return t.getNode(i).visibleChildrenCount},getPosInSet:function(e){return e.visibleChildIndex+1},isChecked:u.ariaProvider&&u.ariaProvider.isChecked?function(e){return u.ariaProvider.isChecked(e.element)}:void 0,getRole:u.ariaProvider&&u.ariaProvider.getRole?function(e){return u.ariaProvider.getRole(e.element)}:void 0}}))),{tree:this})),this.model=this.createModel(e,this.view,o),c.input=this.model.onDidChangeCollapseState;var m=Ge.forEach(this.model.onDidSplice,(function(e){r.eventBufferer.bufferEvents((function(){r.focus.onDidModelSplice(e),r.selection.onDidModelSplice(e)}))}));if(m((function(){return null}),null,this.disposables),d.input=Ge.chain(Ge.any(m,this.focus.onDidChange,this.selection.onDidChange)).debounce((function(){return null}),0).map((function(){for(var e=new Set,t=0,n=r.focus.getNodes();t<n.length;t++){var i=n[t];e.add(i)}for(var o=0,s=r.selection.getNodes();o<s.length;o++){i=s[o];e.add(i)}return function(e){var t=[];return e.forEach((function(e){return t.push(e)})),t}(e)})).event,!1!==o.keyboardSupport){var v=Ge.chain(this.view.onKeyDown).filter((function(e){return!hO(e.target)})).map((function(e){return new ni(e)}));v.filter((function(e){return 15===e.keyCode})).on(this.onLeftArrow,this,this.disposables),v.filter((function(e){return 17===e.keyCode})).on(this.onRightArrow,this,this.disposables),v.filter((function(e){return 10===e.keyCode})).on(this.onSpace,this,this.disposables)}if(o.keyboardNavigationLabelProvider){var _=o.keyboardNavigationDelegate||kI;this.typeFilterController=new dO(this,this.model,this.view,s,_),this.focusNavigationFilter=function(e){return r.typeFilterController.shouldAllowFocus(e)},this.disposables.add(this.typeFilterController)}this.styleElement=zo(this.view.getHTMLElement()),so(this.getHTMLElement(),"always",this._options.renderIndentGuides===sO.Always)}return Object.defineProperty(e.prototype,"onDidChangeFocus",{get:function(){return this.eventBufferer.wrapEvent(this.focus.onDidChange)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidChangeSelection",{get:function(){return this.eventBufferer.wrapEvent(this.selection.onDidChange)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidOpen",{get:function(){return Ge.map(this.view.onDidOpen,pO)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidFocus",{get:function(){return this.view.onDidFocus},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidChangeCollapseState",{get:function(){return this.model.onDidChangeCollapseState},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"openOnSingleClick",{get:function(){return void 0===this._options.openOnSingleClick||this._options.openOnSingleClick},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"expandOnlyOnTwistieClick",{get:function(){return void 0!==this._options.expandOnlyOnTwistieClick&&this._options.expandOnlyOnTwistieClick},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidDispose",{get:function(){return this.view.onDidDispose},enumerable:!0,configurable:!0}),e.prototype.updateOptions=function(e){void 0===e&&(e={}),this._options=tO(tO({},this._options),e);for(var t=0,n=this.renderers;t<n.length;t++){n[t].updateOptions(e)}this.view.updateOptions({enableKeyboardNavigation:this._options.simpleKeyboardNavigation,automaticKeyboardNavigation:this._options.automaticKeyboardNavigation}),this.typeFilterController&&this.typeFilterController.updateOptions(this._options),this._onDidUpdateOptions.fire(this._options),so(this.getHTMLElement(),"always",this._options.renderIndentGuides===sO.Always)},Object.defineProperty(e.prototype,"options",{get:function(){return this._options},enumerable:!0,configurable:!0}),e.prototype.getHTMLElement=function(){return this.view.getHTMLElement()},Object.defineProperty(e.prototype,"scrollTop",{get:function(){return this.view.scrollTop},set:function(e){this.view.scrollTop=e},enumerable:!0,configurable:!0}),e.prototype.domFocus=function(){this.view.domFocus()},e.prototype.layout=function(e,t){this.view.layout(e,t)},e.prototype.style=function(e){var t="."+this.view.domId,n=[];e.treeIndentGuidesStroke&&(n.push(".monaco-list"+t+":hover .monaco-tl-indent > .indent-guide, .monaco-list"+t+".always .monaco-tl-indent > .indent-guide { border-color: "+e.treeIndentGuidesStroke.transparent(.4)+"; }"),n.push(".monaco-list"+t+" .monaco-tl-indent > .indent-guide.active { border-color: "+e.treeIndentGuidesStroke+"; }"));var i=n.join("\n");i!==this.styleElement.innerHTML&&(this.styleElement.innerHTML=i),this.view.style(e)},e.prototype.collapse=function(e,t){return void 0===t&&(t=!1),this.model.setCollapsed(e,!0,t)},e.prototype.expand=function(e,t){return void 0===t&&(t=!1),this.model.setCollapsed(e,!1,t)},e.prototype.isCollapsible=function(e){return this.model.isCollapsible(e)},e.prototype.setCollapsible=function(e,t){return this.model.setCollapsible(e,t)},e.prototype.isCollapsed=function(e){return this.model.isCollapsed(e)},e.prototype.refilter=function(){this._onWillRefilter.fire(void 0),this.model.refilter()},e.prototype.setSelection=function(e,t){var n=this,i=e.map((function(e){return n.model.getNode(e)}));this.selection.set(i,t);var o=e.map((function(e){return n.model.getListIndex(e)})).filter((function(e){return e>-1}));this.view.setSelection(o,t,!0)},e.prototype.getSelection=function(){return this.selection.get()},e.prototype.setFocus=function(e,t){var n=this,i=e.map((function(e){return n.model.getNode(e)}));this.focus.set(i,t);var o=e.map((function(e){return n.model.getListIndex(e)})).filter((function(e){return e>-1}));this.view.setFocus(o,t,!0)},e.prototype.focusNext=function(e,t,n,i){void 0===e&&(e=1),void 0===t&&(t=!1),void 0===i&&(i=this.focusNavigationFilter),this.view.focusNext(e,t,n,i)},e.prototype.getFocus=function(){return this.focus.get()},e.prototype.reveal=function(e,t){this.model.expandTo(e);var n=this.model.getListIndex(e);-1!==n&&this.view.reveal(n,t)},e.prototype.getRelativeTop=function(e){var t=this.model.getListIndex(e);return-1===t?null:this.view.getRelativeTop(t)},e.prototype.onLeftArrow=function(e){e.preventDefault(),e.stopPropagation();var t=this.view.getFocusedElements();if(0!==t.length){var n=t[0],i=this.model.getNodeLocation(n);if(!this.model.setCollapsed(i,!0)){var o=this.model.getParentNodeLocation(i);if(!o)return;var r=this.model.getListIndex(o);this.view.reveal(r),this.view.setFocus([r])}}},e.prototype.onRightArrow=function(e){e.preventDefault(),e.stopPropagation();var t=this.view.getFocusedElements();if(0!==t.length){var n=t[0],i=this.model.getNodeLocation(n);if(!this.model.setCollapsed(i,!1)){if(!n.children.some((function(e){return e.visible})))return;var o=this.view.getFocus()[0]+1;this.view.reveal(o),this.view.setFocus([o])}}},e.prototype.onSpace=function(e){e.preventDefault(),e.stopPropagation();var t=this.view.getFocusedElements();if(0!==t.length){var n=t[0],i=this.model.getNodeLocation(n),o=e.browserEvent.altKey;this.model.setCollapsed(i,void 0,o)}},e.prototype.dispose=function(){Ae(this.disposables),this.view.dispose()},e}(),yO=function(){return(yO=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},bO=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},wO=function(){function e(e,t,n){void 0===n&&(n={}),this.user=e,this.nodes=new Map,this.nodesByIdentity=new Map,this.model=new JI(e,t,null,n),this.onDidSplice=this.model.onDidSplice,this.onDidChangeCollapseState=this.model.onDidChangeCollapseState,this.onDidChangeRenderNodeCount=this.model.onDidChangeRenderNodeCount,n.sorter&&(this.sorter={compare:function(e,t){return n.sorter.compare(e.element,t.element)}}),this.identityProvider=n.identityProvider}return e.prototype.setChildren=function(e,t,n,i){var o=this.getElementLocation(e);this._setChildren(o,this.preserveCollapseState(t),n,i)},e.prototype._setChildren=function(e,t,n,i){var o=this,r=new Set,s=new Set;this.model.splice(bO(e,[0]),Number.MAX_VALUE,t,(function(e){if(r.add(e.element),o.nodes.set(e.element,e),o.identityProvider){var t=o.identityProvider.getId(e.element).toString();s.add(t),o.nodesByIdentity.set(t,e)}n&&n(e)}),(function(e){if(r.has(e.element)||o.nodes.delete(e.element),o.identityProvider){var t=o.identityProvider.getId(e.element).toString();s.has(t)||o.nodesByIdentity.delete(t)}i&&i(e)}))},e.prototype.preserveCollapseState=function(e){var t,n=this,i=e?(t=e,Array.isArray(t)?Ve.fromArray(t):t||Ve.empty()):Ve.empty();return this.sorter&&(i=Ve.fromArray(Ni(Ve.collect(i),this.sorter.compare.bind(this.sorter)))),Ve.map(i,(function(e){var t=n.nodes.get(e.element);if(!t&&n.identityProvider){var i=n.identityProvider.getId(e.element).toString();t=n.nodesByIdentity.get(i)}if(!t)return yO(yO({},e),{children:n.preserveCollapseState(e.children)});var o="boolean"==typeof e.collapsible?e.collapsible:t.collapsible,r=void 0!==e.collapsed?e.collapsed:t.collapsed;return yO(yO({},e),{collapsible:o,collapsed:r,children:n.preserveCollapseState(e.children)})}))},e.prototype.rerender=function(e){var t=this.getElementLocation(e);this.model.rerender(t)},e.prototype.has=function(e){return this.nodes.has(e)},e.prototype.getListIndex=function(e){var t=this.getElementLocation(e);return this.model.getListIndex(t)},e.prototype.getListRenderCount=function(e){var t=this.getElementLocation(e);return this.model.getListRenderCount(t)},e.prototype.isCollapsible=function(e){var t=this.getElementLocation(e);return this.model.isCollapsible(t)},e.prototype.setCollapsible=function(e,t){var n=this.getElementLocation(e);return this.model.setCollapsible(n,t)},e.prototype.isCollapsed=function(e){var t=this.getElementLocation(e);return this.model.isCollapsed(t)},e.prototype.setCollapsed=function(e,t,n){var i=this.getElementLocation(e);return this.model.setCollapsed(i,t,n)},e.prototype.expandTo=function(e){var t=this.getElementLocation(e);this.model.expandTo(t)},e.prototype.refilter=function(){this.model.refilter()},e.prototype.getNode=function(e){if(void 0===e&&(e=null),null===e)return this.model.getNode(this.model.rootRef);var t=this.nodes.get(e);if(!t)throw new GI(this.user,"Tree element not found: "+e);return t},e.prototype.getNodeLocation=function(e){return e.element},e.prototype.getParentNodeLocation=function(e){if(null===e)throw new GI(this.user,"Invalid getParentNodeLocation call");var t=this.nodes.get(e);if(!t)throw new GI(this.user,"Tree element not found: "+e);var n=this.model.getNodeLocation(t),i=this.model.getParentNodeLocation(n);return this.model.getNode(i).element},e.prototype.getElementLocation=function(e){if(null===e)return[];var t=this.nodes.get(e);if(!t)throw new GI(this.user,"Tree element not found: "+e);return this.model.getNodeLocation(t)},e}(),CO=function(){return(CO=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function SO(e){return{element:{elements:[e.element],incompressible:e.incompressible||!1},children:Ve.map(Ve.from(e.children),SO),collapsible:e.collapsible,collapsed:e.collapsed}}function LO(e){for(var t,n,i=[e.element],o=e.incompressible||!1;t=Ve.from(e.children),1===(n=Ve.collect(t,2)).length&&!(e=n[0]).incompressible;)i.push(e.element);return{element:{elements:i,incompressible:o},children:Ve.map(Ve.concat(Ve.fromArray(n),t),LO),collapsible:e.collapsible,collapsed:e.collapsed}}function xO(e){return function e(t,n){var i;return void 0===n&&(n=0),i=n<t.element.elements.length-1?Ve.single(e(t,n+1)):Ve.map(Ve.from(t.children),(function(t){return e(t,0)})),0===n&&t.element.incompressible?{element:t.element.elements[n],children:i,incompressible:!0,collapsible:t.collapsible,collapsed:t.collapsed}:{element:t.element.elements[n],children:i,collapsible:t.collapsible,collapsed:t.collapsed}}(e,0)}var DO=function(){function e(e,t,n){void 0===n&&(n={}),this.user=e,this.nodes=new Map,this.model=new wO(e,t,n),this.enabled=void 0===n.compressionEnabled||n.compressionEnabled}return Object.defineProperty(e.prototype,"onDidSplice",{get:function(){return this.model.onDidSplice},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidChangeCollapseState",{get:function(){return this.model.onDidChangeCollapseState},enumerable:!0,configurable:!0}),e.prototype.setChildren=function(e,t){if(null!==e){var n=this.nodes.get(e);if(!n)throw new Error("Unknown compressed tree node");var i=this.model.getNode(n),o=this.model.getParentNodeLocation(n),r=this.model.getNode(o),s=function e(t,n,i){return t.element===n?CO(CO({},t),{children:i}):CO(CO({},t),{children:Ve.map(Ve.from(t.children),(function(t){return e(t,n,i)}))})}(xO(i),e,Ve.from(t)),a=(this.enabled?LO:SO)(s),u=r.children.map((function(e){return e===i?a:e}));this._setChildren(r.element,u)}else{var l=Ve.map(Ve.from(t),this.enabled?LO:SO);this._setChildren(null,l)}},e.prototype.setCompressionEnabled=function(e){if(e!==this.enabled){this.enabled=e;var t=this.model.getNode(),n=Ve.from(t.children),i=Ve.map(n,xO),o=Ve.map(i,e?LO:SO);this._setChildren(null,o)}},e.prototype._setChildren=function(e,t){var n=this,i=new Set;this.model.setChildren(e,t,(function(e){for(var t=0,o=e.element.elements;t<o.length;t++){var r=o[t];i.add(r),n.nodes.set(r,e.element)}}),(function(e){for(var t=0,o=e.element.elements;t<o.length;t++){var r=o[t];i.has(r)||n.nodes.delete(r)}}))},e.prototype.has=function(e){return this.nodes.has(e)},e.prototype.getListIndex=function(e){var t=this.getCompressedNode(e);return this.model.getListIndex(t)},e.prototype.getListRenderCount=function(e){var t=this.getCompressedNode(e);return this.model.getListRenderCount(t)},e.prototype.getNode=function(e){if(void 0===e)return this.model.getNode();var t=this.getCompressedNode(e);return this.model.getNode(t)},e.prototype.getNodeLocation=function(e){var t=this.model.getNodeLocation(e);return null===t?null:t.elements[t.elements.length-1]},e.prototype.getParentNodeLocation=function(e){var t=this.getCompressedNode(e),n=this.model.getParentNodeLocation(t);return null===n?null:n.elements[n.elements.length-1]},e.prototype.isCollapsible=function(e){var t=this.getCompressedNode(e);return this.model.isCollapsible(t)},e.prototype.setCollapsible=function(e,t){var n=this.getCompressedNode(e);return this.model.setCollapsible(n,t)},e.prototype.isCollapsed=function(e){var t=this.getCompressedNode(e);return this.model.isCollapsed(t)},e.prototype.setCollapsed=function(e,t,n){var i=this.getCompressedNode(e);return this.model.setCollapsed(i,t,n)},e.prototype.expandTo=function(e){var t=this.getCompressedNode(e);this.model.expandTo(t)},e.prototype.rerender=function(e){var t=this.getCompressedNode(e);this.model.rerender(t)},e.prototype.refilter=function(){this.model.refilter()},e.prototype.getCompressedNode=function(e){if(null===e)return null;var t=this.nodes.get(e);if(!t)throw new GI(this.user,"Tree element not found: "+e);return t},e}(),NO=function(e){return e[e.length-1]},kO=function(){function e(e,t){this.unwrapper=e,this.node=t}return Object.defineProperty(e.prototype,"element",{get:function(){return null===this.node.element?null:this.unwrapper(this.node.element)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"children",{get:function(){var t=this;return this.node.children.map((function(n){return new e(t.unwrapper,n)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"depth",{get:function(){return this.node.depth},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visibleChildrenCount",{get:function(){return this.node.visibleChildrenCount},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visibleChildIndex",{get:function(){return this.node.visibleChildIndex},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"collapsible",{get:function(){return this.node.collapsible},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"collapsed",{get:function(){return this.node.collapsed},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visible",{get:function(){return this.node.visible},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"filterData",{get:function(){return this.node.filterData},enumerable:!0,configurable:!0}),e}();var EO=function(){function e(e,t,n){var i=this;void 0===n&&(n={}),this.elementMapper=n.elementMapper||NO;var o=function(e){return i.elementMapper(e.elements)};this.nodeMapper=new ZI((function(e){return new kO(o,e)})),this.model=new DO(e,function(e,t){return{splice:function(n,i,o){t.splice(n,i,o.map((function(t){return e.map(t)})))}}}(this.nodeMapper,t),function(e,t){return CO(CO({},t),{sorter:t.sorter&&{compare:function(e,n){return t.sorter.compare(e.elements[0],n.elements[0])}},identityProvider:t.identityProvider&&{getId:function(n){return t.identityProvider.getId(e(n))}},filter:t.filter&&{filter:function(n,i){return t.filter.filter(e(n),i)}}})}(o,n))}return Object.defineProperty(e.prototype,"onDidSplice",{get:function(){var e=this;return Ge.map(this.model.onDidSplice,(function(t){var n=t.insertedNodes,i=t.deletedNodes;return{insertedNodes:n.map((function(t){return e.nodeMapper.map(t)})),deletedNodes:i.map((function(t){return e.nodeMapper.map(t)}))}}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidChangeCollapseState",{get:function(){var e=this;return Ge.map(this.model.onDidChangeCollapseState,(function(t){var n=t.node,i=t.deep;return{node:e.nodeMapper.map(n),deep:i}}))},enumerable:!0,configurable:!0}),e.prototype.setChildren=function(e,t){this.model.setChildren(e,t)},e.prototype.setCompressionEnabled=function(e){this.model.setCompressionEnabled(e)},e.prototype.has=function(e){return this.model.has(e)},e.prototype.getListIndex=function(e){return this.model.getListIndex(e)},e.prototype.getListRenderCount=function(e){return this.model.getListRenderCount(e)},e.prototype.getNode=function(e){return this.nodeMapper.map(this.model.getNode(e))},e.prototype.getNodeLocation=function(e){return e.element},e.prototype.getParentNodeLocation=function(e){return this.model.getParentNodeLocation(e)},e.prototype.isCollapsible=function(e){return this.model.isCollapsible(e)},e.prototype.setCollapsible=function(e,t){return this.model.setCollapsible(e,t)},e.prototype.isCollapsed=function(e){return this.model.isCollapsed(e)},e.prototype.setCollapsed=function(e,t,n){return this.model.setCollapsed(e,t,n)},e.prototype.expandTo=function(e){return this.model.expandTo(e)},e.prototype.rerender=function(e){return this.model.rerender(e)},e.prototype.refilter=function(){return this.model.refilter()},e.prototype.getCompressedTreeNode=function(e){return void 0===e&&(e=null),this.model.getNode(e)},e}(),IO=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),OO=function(){return(OO=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},MO=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},TO=function(e){function t(t,n,i,o,r){return void 0===r&&(r={}),e.call(this,t,n,i,o,r)||this}return IO(t,e),Object.defineProperty(t.prototype,"onDidChangeCollapseState",{get:function(){return this.model.onDidChangeCollapseState},enumerable:!0,configurable:!0}),t.prototype.setChildren=function(e,t){this.model.setChildren(e,t)},t.prototype.rerender=function(e){void 0!==e?this.model.rerender(e):this.view.rerender()},t.prototype.hasElement=function(e){return this.model.has(e)},t.prototype.createModel=function(e,t,n){return new wO(e,t,n)},t}(_O),PO=function(){function e(e,t){this._compressedTreeNodeProvider=e,this.renderer=t,this.templateId=t.templateId,t.onDidChangeTwistieState&&(this.onDidChangeTwistieState=t.onDidChangeTwistieState)}return Object.defineProperty(e.prototype,"compressedTreeNodeProvider",{get:function(){return this._compressedTreeNodeProvider()},enumerable:!0,configurable:!0}),e.prototype.renderTemplate=function(e){return{compressedTreeNode:void 0,data:this.renderer.renderTemplate(e)}},e.prototype.renderElement=function(e,t,n,i){var o=this.compressedTreeNodeProvider.getCompressedTreeNode(e.element);1===o.element.elements.length?(n.compressedTreeNode=void 0,this.renderer.renderElement(e,t,n.data,i)):(n.compressedTreeNode=o,this.renderer.renderCompressedElements(o,t,n.data,i))},e.prototype.disposeElement=function(e,t,n,i){n.compressedTreeNode?this.renderer.disposeCompressedElements&&this.renderer.disposeCompressedElements(n.compressedTreeNode,t,n.data,i):this.renderer.disposeElement&&this.renderer.disposeElement(e,t,n.data,i)},e.prototype.disposeTemplate=function(e){this.renderer.disposeTemplate(e.data)},e.prototype.renderTwistie=function(e,t){this.renderer.renderTwistie&&this.renderer.renderTwistie(e,t)},MO([Vf],e.prototype,"compressedTreeNodeProvider",null),e}();var RO=function(e){function t(t,n,i,o,r){void 0===r&&(r={});var s=this,a=function(){return s},u=o.map((function(e){return new PO(a,e)}));return s=e.call(this,t,n,i,u,function(e,t){return t&&OO(OO({},t),{keyboardNavigationLabelProvider:t.keyboardNavigationLabelProvider&&{getKeyboardNavigationLabel:function(n){var i;try{i=e().getCompressedTreeNode(n)}catch(e){return t.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(n)}return 1===i.element.elements.length?t.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(n):t.keyboardNavigationLabelProvider.getCompressedNodeKeyboardNavigationLabel(i.element.elements)}}})}(a,r))||this}return IO(t,e),t.prototype.setChildren=function(e,t){this.model.setChildren(e,t)},t.prototype.createModel=function(e,t,n){return new EO(e,t,n)},t.prototype.updateOptions=function(t){void 0===t&&(t={}),e.prototype.updateOptions.call(this,t),void 0!==t.compressionEnabled&&this.model.setCompressionEnabled(t.compressionEnabled)},t.prototype.getCompressedTreeNode=function(e){return void 0===e&&(e=null),this.model.getCompressedTreeNode(e)},t}(TO),AO=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),FO=function(){return(FO=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},WO=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},VO=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},BO=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i};function HO(e){return FO(FO({},e),{children:[],refreshPromise:void 0,stale:!0,slow:!1,collapsedByDefault:void 0})}function zO(e,t){return!!t.parent&&(t.parent===e||zO(e,t.parent))}var jO=function(){function e(e){this.node=e}return Object.defineProperty(e.prototype,"element",{get:function(){return this.node.element.element},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"children",{get:function(){return this.node.children.map((function(t){return new e(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"depth",{get:function(){return this.node.depth},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visibleChildrenCount",{get:function(){return this.node.visibleChildrenCount},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visibleChildIndex",{get:function(){return this.node.visibleChildIndex},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"collapsible",{get:function(){return this.node.collapsible},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"collapsed",{get:function(){return this.node.collapsed},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visible",{get:function(){return this.node.visible},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"filterData",{get:function(){return this.node.filterData},enumerable:!0,configurable:!0}),e}(),UO=function(){function e(e,t,n){this.renderer=e,this.nodeMapper=t,this.onDidChangeTwistieState=n,this.renderedNodes=new Map,this.templateId=e.templateId}return e.prototype.renderTemplate=function(e){return{templateData:this.renderer.renderTemplate(e)}},e.prototype.renderElement=function(e,t,n,i){this.renderer.renderElement(this.nodeMapper.map(e),t,n.templateData,i)},e.prototype.renderTwistie=function(e,t){return so(t,"codicon-loading",e.slow),!1},e.prototype.disposeElement=function(e,t,n,i){this.renderer.disposeElement&&this.renderer.disposeElement(this.nodeMapper.map(e),t,n.templateData,i)},e.prototype.disposeTemplate=function(e){this.renderer.disposeTemplate(e.templateData)},e.prototype.dispose=function(){this.renderedNodes.clear()},e}();function KO(e){return{browserEvent:e.browserEvent,elements:e.elements.map((function(e){return e.element}))}}var qO=function(e){function t(t){var n=e.call(this,t.elements.map((function(e){return e.element})))||this;return n.data=t,n}return AO(t,e),t}(IE);function GO(e){return e instanceof IE?new qO(e):e}var ZO=function(){function e(e){this.dnd=e}return e.prototype.getDragURI=function(e){return this.dnd.getDragURI(e.element)},e.prototype.getDragLabel=function(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e.map((function(e){return e.element})),t)},e.prototype.onDragStart=function(e,t){this.dnd.onDragStart&&this.dnd.onDragStart(GO(e),t)},e.prototype.onDragOver=function(e,t,n,i,o){return void 0===o&&(o=!0),this.dnd.onDragOver(GO(e),t&&t.element,n,i)},e.prototype.drop=function(e,t,n,i){this.dnd.drop(GO(e),t&&t.element,n,i)},e.prototype.onDragEnd=function(e){this.dnd.onDragEnd&&this.dnd.onDragEnd(e)},e}();function YO(e){return e&&FO(FO({},e),{collapseByDefault:!0,identityProvider:e.identityProvider&&{getId:function(t){return e.identityProvider.getId(t.element)}},dnd:e.dnd&&new ZO(e.dnd),multipleSelectionController:e.multipleSelectionController&&{isSelectionSingleChangeEvent:function(t){return e.multipleSelectionController.isSelectionSingleChangeEvent(FO(FO({},t),{element:t.element}))},isSelectionRangeChangeEvent:function(t){return e.multipleSelectionController.isSelectionRangeChangeEvent(FO(FO({},t),{element:t.element}))}},accessibilityProvider:e.accessibilityProvider&&FO(FO({},e.accessibilityProvider),{getAriaLabel:function(t){return e.accessibilityProvider.getAriaLabel(t.element)},getAriaLevel:e.accessibilityProvider.getAriaLevel&&function(t){return e.accessibilityProvider.getAriaLevel(t.element)},getActiveDescendantId:e.accessibilityProvider.getActiveDescendantId&&function(t){return e.accessibilityProvider.getActiveDescendantId(t.element)}}),filter:e.filter&&{filter:function(t,n){return e.filter.filter(t.element,n)}},keyboardNavigationLabelProvider:e.keyboardNavigationLabelProvider&&FO(FO({},e.keyboardNavigationLabelProvider),{getKeyboardNavigationLabel:function(t){return e.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(t.element)}}),sorter:void 0,expandOnlyOnTwistieClick:void 0===e.expandOnlyOnTwistieClick?void 0:"function"!=typeof e.expandOnlyOnTwistieClick?e.expandOnlyOnTwistieClick:function(t){return e.expandOnlyOnTwistieClick(t.element)},ariaProvider:e.ariaProvider&&{getPosInSet:function(t,n){return e.ariaProvider.getPosInSet(t.element,n)},getSetSize:function(t,n,i){return e.ariaProvider.getSetSize(t.element,n,i)},getRole:e.ariaProvider.getRole?function(t){return e.ariaProvider.getRole(t.element)}:void 0,isChecked:e.ariaProvider.isChecked?function(t){var n;return(null===(n=e.ariaProvider)||void 0===n?void 0:n.isChecked)(t.element)}:void 0},additionalScrollHeight:e.additionalScrollHeight})}function XO(e,t){t(e),e.children.forEach((function(e){return XO(e,t)}))}var $O=function(){function e(e,t,n,i,o,r){void 0===r&&(r={}),this.user=e,this.dataSource=o,this.nodes=new Map,this.subTreeRefreshPromises=new Map,this.refreshPromises=new Map,this._onDidRender=new nt,this._onDidChangeNodeSlowState=new nt,this.nodeMapper=new ZI((function(e){return new jO(e)})),this.disposables=new Be,this.identityProvider=r.identityProvider,this.autoExpandSingleChildren=void 0!==r.autoExpandSingleChildren&&r.autoExpandSingleChildren,this.sorter=r.sorter,this.collapseByDefault=r.collapseByDefault,this.tree=this.createTree(e,t,n,i,r),this.root=HO({element:void 0,parent:null,hasChildren:!0}),this.identityProvider&&(this.root=FO(FO({},this.root),{id:null})),this.nodes.set(null,this.root),this.tree.onDidChangeCollapseState(this._onDidChangeCollapseState,this,this.disposables)}return Object.defineProperty(e.prototype,"onDidChangeFocus",{get:function(){return Ge.map(this.tree.onDidChangeFocus,KO)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidChangeSelection",{get:function(){return Ge.map(this.tree.onDidChangeSelection,KO)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidOpen",{get:function(){return Ge.map(this.tree.onDidOpen,KO)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidFocus",{get:function(){return this.tree.onDidFocus},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidDispose",{get:function(){return this.tree.onDidDispose},enumerable:!0,configurable:!0}),e.prototype.createTree=function(e,t,n,i,o){var r=this,s=new aO(n),a=i.map((function(e){return new UO(e,r.nodeMapper,r._onDidChangeNodeSlowState.event)})),u=YO(o)||{};return new TO(e,t,s,a,u)},e.prototype.updateOptions=function(e){void 0===e&&(e={}),this.tree.updateOptions(e)},e.prototype.getHTMLElement=function(){return this.tree.getHTMLElement()},Object.defineProperty(e.prototype,"scrollTop",{get:function(){return this.tree.scrollTop},set:function(e){this.tree.scrollTop=e},enumerable:!0,configurable:!0}),e.prototype.domFocus=function(){this.tree.domFocus()},e.prototype.layout=function(e,t){this.tree.layout(e,t)},e.prototype.style=function(e){this.tree.style(e)},e.prototype.getInput=function(){return this.root.element},e.prototype.setInput=function(e,t){return WO(this,void 0,void 0,(function(){var n;return VO(this,(function(i){switch(i.label){case 0:return this.refreshPromises.forEach((function(e){return e.cancel()})),this.refreshPromises.clear(),this.root.element=e,n=t&&{viewState:t,focus:[],selection:[]},[4,this._updateChildren(e,!0,!1,n)];case 1:return i.sent(),n&&(this.tree.setFocus(n.focus),this.tree.setSelection(n.selection)),t&&"number"==typeof t.scrollTop&&(this.scrollTop=t.scrollTop),[2]}}))}))},e.prototype._updateChildren=function(e,t,n,i){return void 0===e&&(e=this.root.element),void 0===t&&(t=!0),void 0===n&&(n=!1),WO(this,void 0,void 0,(function(){var o;return VO(this,(function(r){switch(r.label){case 0:if(void 0===this.root.element)throw new GI(this.user,"Tree input not set");return this.root.refreshPromise?[4,this.root.refreshPromise]:[3,3];case 1:return r.sent(),[4,Ge.toPromise(this._onDidRender.event)];case 2:r.sent(),r.label=3;case 3:return o=this.getDataNode(e),[4,this.refreshAndRenderNode(o,t,i)];case 4:if(r.sent(),n)try{this.tree.rerender(o)}catch(e){}return[2]}}))}))},e.prototype.rerender=function(e){if(void 0!==e&&e!==this.root.element){var t=this.getDataNode(e);this.tree.rerender(t)}else this.tree.rerender()},e.prototype.collapse=function(e,t){void 0===t&&(t=!1);var n=this.getDataNode(e);return this.tree.collapse(n===this.root?null:n,t)},e.prototype.expand=function(e,t){return void 0===t&&(t=!1),WO(this,void 0,void 0,(function(){var n,i;return VO(this,(function(o){switch(o.label){case 0:if(void 0===this.root.element)throw new GI(this.user,"Tree input not set");return this.root.refreshPromise?[4,this.root.refreshPromise]:[3,3];case 1:return o.sent(),[4,Ge.toPromise(this._onDidRender.event)];case 2:o.sent(),o.label=3;case 3:return n=this.getDataNode(e),this.tree.hasElement(n)&&!this.tree.isCollapsible(n)?[2,!1]:n.refreshPromise?[4,this.root.refreshPromise]:[3,6];case 4:return o.sent(),[4,Ge.toPromise(this._onDidRender.event)];case 5:o.sent(),o.label=6;case 6:return n===this.root||n.refreshPromise||this.tree.isCollapsed(n)?(i=this.tree.expand(n===this.root?null:n,t),n.refreshPromise?[4,this.root.refreshPromise]:[3,9]):[2,!1];case 7:return o.sent(),[4,Ge.toPromise(this._onDidRender.event)];case 8:o.sent(),o.label=9;case 9:return[2,i]}}))}))},e.prototype.setSelection=function(e,t){var n=this,i=e.map((function(e){return n.getDataNode(e)}));this.tree.setSelection(i,t)},e.prototype.getSelection=function(){return this.tree.getSelection().map((function(e){return e.element}))},e.prototype.setFocus=function(e,t){var n=this,i=e.map((function(e){return n.getDataNode(e)}));this.tree.setFocus(i,t)},e.prototype.getFocus=function(){return this.tree.getFocus().map((function(e){return e.element}))},e.prototype.reveal=function(e,t){this.tree.reveal(this.getDataNode(e),t)},e.prototype.getDataNode=function(e){var t=this.nodes.get(e===this.root.element?null:e);if(!t)throw new GI(this.user,"Data tree node not found: "+e);return t},e.prototype.refreshAndRenderNode=function(e,t,n){return WO(this,void 0,void 0,(function(){return VO(this,(function(i){switch(i.label){case 0:return[4,this.refreshNode(e,t,n)];case 1:return i.sent(),this.render(e,n),[2]}}))}))},e.prototype.refreshNode=function(e,t,n){return WO(this,void 0,void 0,(function(){var i,o=this;return VO(this,(function(r){return this.subTreeRefreshPromises.forEach((function(r,s){!i&&function(e,t){return e===t||zO(e,t)||zO(t,e)}(s,e)&&(i=r.then((function(){return o.refreshNode(e,t,n)})))})),i?[2,i]:[2,this.doRefreshSubTree(e,t,n)]}))}))},e.prototype.doRefreshSubTree=function(e,t,n){return WO(this,void 0,void 0,(function(){var i,o,r=this;return VO(this,(function(s){switch(s.label){case 0:e.refreshPromise=new Promise((function(e){return i=e})),this.subTreeRefreshPromises.set(e,e.refreshPromise),e.refreshPromise.finally((function(){e.refreshPromise=void 0,r.subTreeRefreshPromises.delete(e)})),s.label=1;case 1:return s.trys.push([1,,4,5]),[4,this.doRefreshNode(e,t,n)];case 2:return o=s.sent(),e.stale=!1,[4,Promise.all(o.map((function(e){return r.doRefreshSubTree(e,t,n)})))];case 3:return s.sent(),[3,5];case 4:return i(),[7];case 5:return[2]}}))}))},e.prototype.doRefreshNode=function(e,t,n){return WO(this,void 0,void 0,(function(){var i,o,r,s,a=this;return VO(this,(function(u){switch(u.label){case 0:e.hasChildren=!!this.dataSource.hasChildren(e.element),e.hasChildren?((o=gi(800)).then((function(){e.slow=!0,a._onDidChangeNodeSlowState.fire(e)}),(function(e){return null})),i=this.doGetChildren(e).finally((function(){return o.cancel()}))):i=Promise.resolve([]),u.label=1;case 1:return u.trys.push([1,3,4,5]),[4,i];case 2:return r=u.sent(),[2,this.setChildren(e,r,t,n)];case 3:if(s=u.sent(),e!==this.root&&this.tree.collapse(e===this.root?null:e),Ee(s))return[2,[]];throw s;case 4:return e.slow&&(e.slow=!1,this._onDidChangeNodeSlowState.fire(e)),[7];case 5:return[2]}}))}))},e.prototype.doGetChildren=function(e){var t=this,n=this.refreshPromises.get(e);return n||(n=hi((function(){return WO(t,void 0,void 0,(function(){var t;return VO(this,(function(n){switch(n.label){case 0:return[4,this.dataSource.getChildren(e.element)];case 1:return t=n.sent(),[2,this.processChildren(t)]}}))}))})),this.refreshPromises.set(e,n),n.finally((function(){return t.refreshPromises.delete(e)})))},e.prototype._onDidChangeCollapseState=function(e){var t=e.node,n=e.deep;!t.collapsed&&t.element.stale&&(n?this.collapse(t.element.element):this.refreshAndRenderNode(t.element,!1).catch(De))},e.prototype.setChildren=function(e,t,n,i){var o,r=this;if(0===e.children.length&&0===t.length)return[];for(var s=new Map,a=new Map,u=0,l=e.children;u<l.length;u++){var c=l[u];if(s.set(c.element,c),this.identityProvider){var d=this.tree.isCollapsed(c);a.set(c.id,{node:c,collapsed:d})}}for(var h=[],p=t.map((function(t){var o=!!r.dataSource.hasChildren(t);if(!r.identityProvider){var u=HO({element:t,parent:e,hasChildren:o});return o&&r.collapseByDefault&&!r.collapseByDefault(t)&&(u.collapsedByDefault=!1,h.push(u)),u}var l=r.identityProvider.getId(t).toString(),c=a.get(l);if(c){u=c.node;return s.delete(u.element),r.nodes.delete(u.element),r.nodes.set(t,u),u.element=t,u.hasChildren=o,n?c.collapsed?(u.children.forEach((function(e){return XO(e,(function(e){return r.nodes.delete(e.element)}))})),u.children.splice(0,u.children.length),u.stale=!0):h.push(u):o&&r.collapseByDefault&&!r.collapseByDefault(t)&&(u.collapsedByDefault=!1,h.push(u)),u}var d=HO({element:t,parent:e,id:l,hasChildren:o});return i&&i.viewState.focus&&i.viewState.focus.indexOf(l)>-1&&i.focus.push(d),i&&i.viewState.selection&&i.viewState.selection.indexOf(l)>-1&&i.selection.push(d),i&&i.viewState.expanded&&i.viewState.expanded.indexOf(l)>-1?h.push(d):o&&r.collapseByDefault&&!r.collapseByDefault(t)&&(d.collapsedByDefault=!1,h.push(d)),d})),f=0,g=Js(s);f<g.length;f++){XO(g[f],(function(e){return r.nodes.delete(e.element)}))}for(var m=0,v=p;m<v.length;m++){c=v[m];this.nodes.set(c.element,c)}return(o=e.children).splice.apply(o,BO([0,e.children.length],p)),e!==this.root&&this.autoExpandSingleChildren&&1===p.length&&0===h.length&&(p[0].collapsedByDefault=!1,h.push(p[0])),h},e.prototype.render=function(e,t){var n=this,i=e.children.map((function(e){return n.asTreeElement(e,t)}));this.tree.setChildren(e===this.root?null:e,i),e!==this.root&&this.tree.setCollapsible(e,e.hasChildren),this._onDidRender.fire()},e.prototype.asTreeElement=function(e,t){var n,i=this;return e.stale?{element:e,collapsible:e.hasChildren,collapsed:!0}:(n=!(t&&t.viewState.expanded&&e.id&&t.viewState.expanded.indexOf(e.id)>-1)&&e.collapsedByDefault,e.collapsedByDefault=void 0,{element:e,children:e.hasChildren?Ve.map(Ve.fromArray(e.children),(function(e){return i.asTreeElement(e,t)})):[],collapsible:e.hasChildren,collapsed:n})},e.prototype.processChildren=function(e){return this.sorter&&e.sort(this.sorter.compare.bind(this.sorter)),e},e.prototype.dispose=function(){this.disposables.dispose()},e}(),QO=function(){function e(e){this.node=e}return Object.defineProperty(e.prototype,"element",{get:function(){return{elements:this.node.element.elements.map((function(e){return e.element})),incompressible:this.node.element.incompressible}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"children",{get:function(){return this.node.children.map((function(t){return new e(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"depth",{get:function(){return this.node.depth},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visibleChildrenCount",{get:function(){return this.node.visibleChildrenCount},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visibleChildIndex",{get:function(){return this.node.visibleChildIndex},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"collapsible",{get:function(){return this.node.collapsible},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"collapsed",{get:function(){return this.node.collapsed},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visible",{get:function(){return this.node.visible},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"filterData",{get:function(){return this.node.filterData},enumerable:!0,configurable:!0}),e}(),JO=function(){function e(e,t,n,i){this.renderer=e,this.nodeMapper=t,this.compressibleNodeMapperProvider=n,this.onDidChangeTwistieState=i,this.renderedNodes=new Map,this.disposables=[],this.templateId=e.templateId}return e.prototype.renderTemplate=function(e){return{templateData:this.renderer.renderTemplate(e)}},e.prototype.renderElement=function(e,t,n,i){this.renderer.renderElement(this.nodeMapper.map(e),t,n.templateData,i)},e.prototype.renderCompressedElements=function(e,t,n,i){this.renderer.renderCompressedElements(this.compressibleNodeMapperProvider().map(e),t,n.templateData,i)},e.prototype.renderTwistie=function(e,t){return so(t,"codicon-loading",e.slow),!1},e.prototype.disposeElement=function(e,t,n,i){this.renderer.disposeElement&&this.renderer.disposeElement(this.nodeMapper.map(e),t,n.templateData,i)},e.prototype.disposeCompressedElements=function(e,t,n,i){this.renderer.disposeCompressedElements&&this.renderer.disposeCompressedElements(this.compressibleNodeMapperProvider().map(e),t,n.templateData,i)},e.prototype.disposeTemplate=function(e){this.renderer.disposeTemplate(e.templateData)},e.prototype.dispose=function(){this.renderedNodes.clear(),this.disposables=Ae(this.disposables)},e}();var eM=function(e){function t(t,n,i,o,r,s,a){void 0===a&&(a={});var u=e.call(this,t,n,i,r,s,a)||this;return u.compressionDelegate=o,u.compressibleNodeMapper=new ZI((function(e){return new QO(e)})),u.filter=a.filter,u}return AO(t,e),t.prototype.createTree=function(e,t,n,i,o){var r=this,s=new aO(n),a=i.map((function(e){return new JO(e,r.nodeMapper,(function(){return r.compressibleNodeMapper}),r._onDidChangeNodeSlowState.event)})),u=function(e){var t=e&&YO(e);return t&&FO(FO({},t),{keyboardNavigationLabelProvider:t.keyboardNavigationLabelProvider&&FO(FO({},t.keyboardNavigationLabelProvider),{getCompressedNodeKeyboardNavigationLabel:function(t){return e.keyboardNavigationLabelProvider.getCompressedNodeKeyboardNavigationLabel(t.map((function(e){return e.element})))}})})}(o)||{};return new RO(e,t,s,a,u)},t.prototype.asTreeElement=function(t,n){return FO({incompressible:this.compressionDelegate.isIncompressible(t.element)},e.prototype.asTreeElement.call(this,t,n))},t.prototype.updateOptions=function(e){void 0===e&&(e={}),this.tree.updateOptions(e)},t.prototype.render=function(t,n){var i=this;if(!this.identityProvider)return e.prototype.render.call(this,t,n);var o=function(e){return i.identityProvider.getId(e).toString()},r=function(e){for(var t=new Set,n=0,r=e;n<r.length;n++){var s=r[n],a=i.tree.getCompressedTreeNode(s===i.root?null:s);if(a.element)for(var u=0,l=a.element.elements;u<l.length;u++){var c=l[u];t.add(o(c.element))}}return t},s=r(this.tree.getSelection()),a=r(this.tree.getFocus());e.prototype.render.call(this,t,n);var u=this.getSelection(),l=!1,c=this.getFocus(),d=!1,h=function(e){var t=e.element;if(t)for(var n=0;n<t.elements.length;n++){var i=o(t.elements[n].element),r=t.elements[t.elements.length-1].element;s.has(i)&&-1===u.indexOf(r)&&(u.push(r),l=!0),a.has(i)&&-1===c.indexOf(r)&&(c.push(r),d=!0)}e.children.forEach(h)};h(this.tree.getCompressedTreeNode(t===this.root?null:t)),l&&this.setSelection(u),d&&this.setFocus(c)},t.prototype.processChildren=function(t){var n=this;return this.filter&&(t=t.filter((function(e){var t,i=n.filter.filter(e,1),o="boolean"==typeof(t=i)?t?1:0:XI(t)?$I(t.visibility):$I(t);if(2===o)throw new Error("Recursive tree visibility not supported in async data compressed trees");return 1===o}))),e.prototype.processChildren.call(this,t)},t}($O);var tM,nM=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),iM=function(e){function t(t,n,i,o,r,s){void 0===s&&(s={});var a=e.call(this,t,n,i,o,s)||this;return a.user=t,a.dataSource=r,a.identityProvider=s.identityProvider,a}return nM(t,e),t.prototype.createModel=function(e,t,n){return new wO(e,t,n)},t}(_O),oM=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),rM=function(){return(rM=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},sM=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},aM=function(e,t){return function(n,i){t(n,i,e)}},uM=Mn("listService"),lM=function(){function e(e){this._themeService=e,this.disposables=new Be,this.lists=[],this._lastFocusedWidget=void 0,this._hasCreatedStyleController=!1}return Object.defineProperty(e.prototype,"lastFocusedList",{get:function(){return this._lastFocusedWidget},enumerable:!0,configurable:!0}),e.prototype.register=function(e,t){var n=this;if(!this._hasCreatedStyleController){this._hasCreatedStyleController=!0;var i=new FI(zo(),"");this.disposables.add(Gk(i,this._themeService))}if(this.lists.some((function(t){return t.widget===e})))throw new Error("Cannot register the same widget multiple times");var o={widget:e,extraContextKeys:t};return this.lists.push(o),e.getHTMLElement()===document.activeElement&&(this._lastFocusedWidget=e),Fe(e.onDidFocus((function(){return n._lastFocusedWidget=e})),We((function(){return n.lists.splice(n.lists.indexOf(o),1)})),e.onDidDispose((function(){n.lists=n.lists.filter((function(e){return e!==o})),n._lastFocusedWidget===e&&(n._lastFocusedWidget=void 0)})))},e.prototype.dispose=function(){this.disposables.dispose()},e=sM([aM(0,fg)],e)}(),cM=new Kh("listFocus",!0),dM=new Kh("listSupportsMultiselect",!0),hM=Rh.and(cM,Rh.not("inputFocus")),pM=new Kh("listHasSelectionOrFocus",!1),fM=new Kh("listDoubleSelection",!1),gM=new Kh("listMultiSelection",!1),mM=new Kh("listSupportsKeyboardNavigation",!0),vM=new Kh("listAutomaticKeyboardNavigation",!0),_M=!1;var yM="workbench.tree.indent";function bM(e){return"alt"===e.getValue("workbench.list.multiSelectModifier")}function wM(e){return"doubleClick"!==e.getValue("workbench.list.openMode")}var CM=function(e){function t(t){var n=e.call(this)||this;return n.configurationService=t,n.useAltAsMultipleSelectionModifier=bM(t),n.registerListeners(),n}return oM(t,e),t.prototype.registerListeners=function(){var e=this;this._register(this.configurationService.onDidChangeConfiguration((function(t){t.affectsConfiguration("workbench.list.multiSelectModifier")&&(e.useAltAsMultipleSelectionModifier=bM(e.configurationService))})))},t.prototype.isSelectionSingleChangeEvent=function(e){return this.useAltAsMultipleSelectionModifier?e.browserEvent.altKey:OI(e)},t.prototype.isSelectionRangeChangeEvent=function(e){return MI(e)},t}(He),SM=function(e){function t(t,n){var i=e.call(this)||this;return i.configurationService=t,i.existingOpenController=n,i.openOnSingleClick=wM(t),i.registerListeners(),i}return oM(t,e),t.prototype.registerListeners=function(){var e=this;this._register(this.configurationService.onDidChangeConfiguration((function(t){t.affectsConfiguration("workbench.list.openMode")&&(e.openOnSingleClick=wM(e.configurationService))})))},t.prototype.shouldOpen=function(e){if(e instanceof MouseEvent){var t=0===e.button,n=2===e.detail;return!(t&&!this.openOnSingleClick&&!n)&&(!(!t&&1!==e.button)&&(!this.existingOpenController||this.existingOpenController.shouldOpen(e)))}return!this.existingOpenController||this.existingOpenController.shouldOpen(e)},t}(He);function LM(e,t){var n=!1;return function(i){if(n)return n=!1,!1;var o=t.softDispatch(i,e);return o&&o.enterChord?(n=!0,!1):(n=!1,!0)}}(function(e){function t(t,n,i,o,r,s,a,u,l,c,d){var h=this,p=DM(n,r,s,l,c,d),f=p.options,g=p.getAutomaticKeyboardNavigation,m=p.disposable;return(h=e.call(this,t,n,i,o,f)||this).disposables.add(m),h.internals=new EM(h,f,g,r.overrideStyles,s,a,u,l,d),h.disposables.add(h.internals),h}oM(t,e),t=sM([aM(5,qh),aM(6,uM),aM(7,fg),aM(8,wh),aM(9,XD),aM(10,gx)],t)})(TO),function(e){function t(t,n,i,o,r,s,a,u,l,c,d,h){var p=this,f=DM(n,s,a,c,d,h),g=f.options,m=f.getAutomaticKeyboardNavigation,v=f.disposable;return(p=e.call(this,t,n,i,o,r,g)||this).disposables.add(v),p.internals=new EM(p,g,m,s.overrideStyles,a,u,l,c,h),p.disposables.add(p.internals),p}oM(t,e),t.prototype.updateOptions=function(t){void 0===t&&(t={}),e.prototype.updateOptions.call(this,t),t.overrideStyles&&this.internals.updateStyleOverrides(t.overrideStyles)},t=sM([aM(6,qh),aM(7,uM),aM(8,fg),aM(9,wh),aM(10,XD),aM(11,gx)],t)}(iM);var xM=function(e){function t(t,n,i,o,r,s,a,u,l,c,d,h){var p=this,f=DM(n,s,a,c,d,h),g=f.options,m=f.getAutomaticKeyboardNavigation,v=f.disposable;return(p=e.call(this,t,n,i,o,r,g)||this).disposables.add(v),p.internals=new EM(p,g,m,s.overrideStyles,a,u,l,c,h),p.disposables.add(p.internals),p}return oM(t,e),t.prototype.updateOptions=function(t){void 0===t&&(t={}),e.prototype.updateOptions.call(this,t),t.overrideStyles&&this.internals.updateStyleOverrides(t.overrideStyles)},t=sM([aM(6,qh),aM(7,uM),aM(8,fg),aM(9,wh),aM(10,XD),aM(11,gx)],t)}($O);!function(e){function t(t,n,i,o,r,s,a,u,l,c,d,h,p){var f=this,g=DM(n,a,u,d,h,p),m=g.options,v=g.getAutomaticKeyboardNavigation,_=g.disposable;return(f=e.call(this,t,n,i,o,r,s,m)||this).disposables.add(_),f.internals=new EM(f,m,v,a.overrideStyles,u,l,c,d,p),f.disposables.add(f.internals),f}oM(t,e),t=sM([aM(7,qh),aM(8,uM),aM(9,fg),aM(10,wh),aM(11,XD),aM(12,gx)],t)}(eM);function DM(e,t,n,i,o,r){mM.bindTo(n),_M||(vM.bindTo(n),_M=!0);var s=function(){var e=n.getContextKeyValue("listAutomaticKeyboardNavigation");return e&&(e=i.getValue("workbench.list.automaticKeyboardNavigation")),e},a=r.isScreenReaderOptimized()?"simple":i.getValue("workbench.list.keyboardNavigation"),u=void 0!==t.horizontalScrolling?t.horizontalScrolling:function(e){return function(e,t,n){var i=e.inspect(t),o=e.inspect(n);return void 0!==i.userValue||void 0!==i.workspaceValue||void 0!==i.workspaceFolderValue?i.value:void 0!==o.userValue||void 0!==o.workspaceValue||void 0!==o.workspaceFolderValue?o.value:i.defaultValue}(e,"workbench.list.horizontalScrolling","workbench.tree.horizontalScrolling")}(i),l=wM(i),c=function(e,t,n){var i=new Be,o=rM({},e);if(!1!==e.multipleSelectionSupport&&!e.multipleSelectionController){var r=new CM(t);o.multipleSelectionController=r,i.add(r)}var s=new SM(t,e.openController);return o.openController=s,i.add(s),o.keyboardNavigationDelegate={mightProducePrintableCharacter:function(e){return n.mightProducePrintableCharacter(e)}},[o,i]}(t,i,o),d=c[0],h=c[1],p=t.additionalScrollHeight;return{getAutomaticKeyboardNavigation:s,disposable:h,options:rM(rM({keyboardSupport:!1},d),{indent:i.getValue(yM),renderIndentGuides:i.getValue("workbench.tree.renderIndentGuides"),automaticKeyboardNavigation:s(),simpleKeyboardNavigation:"simple"===a,filterOnType:"filter"===a,horizontalScrolling:u,openOnSingleClick:l,keyboardNavigationEventFilter:LM(e,o),additionalScrollHeight:p,hideTwistiesOfChildlessElements:t.hideTwistiesOfChildlessElements})}}var NM,kM,EM=function(){function e(e,t,n,i,o,r,s,a,u){var l=this;this.tree=e,this.themeService=s,this.disposables=[],this.contextKeyService=function(e,t){var n=e.createScoped(t.getHTMLElement());return cM.bindTo(n),n}(o,e),dM.bindTo(this.contextKeyService).set(!(!1===t.multipleSelectionSupport)),this.hasSelectionOrFocus=pM.bindTo(this.contextKeyService),this.hasDoubleSelection=fM.bindTo(this.contextKeyService),this.hasMultiSelection=gM.bindTo(this.contextKeyService),this._useAltAsMultipleSelectionModifier=bM(a);var c=new Set;c.add("listAutomaticKeyboardNavigation");var d=function(){var t=u.isScreenReaderOptimized()?"simple":a.getValue("workbench.list.keyboardNavigation");e.updateOptions({simpleKeyboardNavigation:"simple"===t,filterOnType:"filter"===t})};this.updateStyleOverrides(i),this.disposables.push(this.contextKeyService,r.register(e),e.onDidChangeSelection((function(){var t=e.getSelection(),n=e.getFocus();l.hasSelectionOrFocus.set(t.length>0||n.length>0),l.hasMultiSelection.set(t.length>1),l.hasDoubleSelection.set(2===t.length)})),e.onDidChangeFocus((function(){var t=e.getSelection(),n=e.getFocus();l.hasSelectionOrFocus.set(t.length>0||n.length>0)})),a.onDidChangeConfiguration((function(t){if(t.affectsConfiguration("workbench.list.openMode")&&e.updateOptions({openOnSingleClick:wM(a)}),t.affectsConfiguration("workbench.list.multiSelectModifier")&&(l._useAltAsMultipleSelectionModifier=bM(a)),t.affectsConfiguration(yM)){var i=a.getValue(yM);e.updateOptions({indent:i})}if(t.affectsConfiguration("workbench.tree.renderIndentGuides")){var o=a.getValue("workbench.tree.renderIndentGuides");e.updateOptions({renderIndentGuides:o})}t.affectsConfiguration("workbench.list.keyboardNavigation")&&d(),t.affectsConfiguration("workbench.list.automaticKeyboardNavigation")&&e.updateOptions({automaticKeyboardNavigation:n()})})),this.contextKeyService.onDidChangeContext((function(t){t.affectsSome(c)&&e.updateOptions({automaticKeyboardNavigation:n()})})),u.onDidChangeScreenReaderOptimized((function(){return d()})))}return e.prototype.updateStyleOverrides=function(e){Ae(this.styler),this.styler=e?Gk(this.tree,this.themeService,e):He.None},e.prototype.dispose=function(){this.disposables=Ae(this.disposables),this.styler=Ae(this.styler)},e=sM([aM(4,qh),aM(5,uM),aM(6,fg),aM(7,wh),aM(8,gx)],e)}();Td.as(Ad).registerConfiguration({id:"workbench",order:7,title:r("workbenchConfigurationTitle","Workbench"),type:"object",properties:(tM={},tM["workbench.list.multiSelectModifier"]={type:"string",enum:["ctrlCmd","alt"],enumDescriptions:[r("multiSelectModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),r("multiSelectModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],default:"ctrlCmd",description:r({key:"multiSelectModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add an item in trees and lists to a multi-selection with the mouse (for example in the explorer, open editors and scm view). The 'Open to Side' mouse gestures - if supported - will adapt such that they do not conflict with the multiselect modifier.")},tM["workbench.list.openMode"]={type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:r({key:"openModeModifier",comment:["`singleClick` and `doubleClick` refers to a value the setting can take and should not be localized."]},"Controls how to open items in trees and lists using the mouse (if supported). For parents with children in trees, this setting will control if a single click expands the parent or a double click. Note that some trees and lists might choose to ignore this setting if it is not applicable. ")},tM["workbench.list.horizontalScrolling"]={type:"boolean",default:!1,description:r("horizontalScrolling setting","Controls whether lists and trees support horizontal scrolling in the workbench.")},tM["workbench.tree.horizontalScrolling"]={type:"boolean",default:!1,description:r("tree horizontalScrolling setting","Controls whether trees support horizontal scrolling in the workbench."),deprecationMessage:r("deprecated","This setting is deprecated, please use '{0}' instead.","workbench.list.horizontalScrolling")},tM[yM]={type:"number",default:8,minimum:0,maximum:40,description:r("tree indent setting","Controls tree indentation in pixels.")},tM["workbench.tree.renderIndentGuides"]={type:"string",enum:["none","onHover","always"],default:"onHover",description:r("render tree indent guides","Controls whether the tree should render indent guides.")},tM["workbench.list.keyboardNavigation"]={type:"string",enum:["simple","highlight","filter"],enumDescriptions:[r("keyboardNavigationSettingKey.simple","Simple keyboard navigation focuses elements which match the keyboard input. Matching is done only on prefixes."),r("keyboardNavigationSettingKey.highlight","Highlight keyboard navigation highlights elements which match the keyboard input. Further up and down navigation will traverse only the highlighted elements."),r("keyboardNavigationSettingKey.filter","Filter keyboard navigation will filter out and hide all the elements which do not match the keyboard input.")],default:"highlight",description:r("keyboardNavigationSettingKey","Controls the keyboard navigation style for lists and trees in the workbench. Can be simple, highlight and filter.")},tM["workbench.list.automaticKeyboardNavigation"]={type:"boolean",default:!0,markdownDescription:r("automatic keyboard navigation setting","Controls whether keyboard navigation in lists and trees is automatically triggered simply by typing. If set to `false`, keyboard navigation is only triggered when executing the `list.toggleKeyboardNavigation` command, for which you can assign a keyboard shortcut.")},tM)}),function(e){e[e.Hint=1]="Hint",e[e.Info=2]="Info",e[e.Warning=4]="Warning",e[e.Error=8]="Error"}(NM||(NM={})),function(e){e.compare=function(e,t){return t-e};var t=Object.create(null);t[e.Error]=r("sev.error","Error"),t[e.Warning]=r("sev.warning","Warning"),t[e.Info]=r("sev.info","Info"),e.toString=function(e){return t[e]||""},e.fromSeverity=function(t){switch(t){case Od.Error:return e.Error;case Od.Warning:return e.Warning;case Od.Info:return e.Info;case Od.Ignore:return e.Hint}},e.toSeverity=function(t){switch(t){case e.Error:return Od.Error;case e.Warning:return Od.Warning;case e.Info:return Od.Info;case e.Hint:return Od.Ignore}}}(NM||(NM={})),function(e){function t(e,t){var n=[""];return e.source?n.push(e.source.replace("¦","¦")):n.push(""),e.code?"string"==typeof e.code?n.push(e.code.replace("¦","¦")):n.push(e.code.value.replace("¦","¦")):n.push(""),void 0!==e.severity&&null!==e.severity?n.push(NM.toString(e.severity)):n.push(""),e.message&&t?n.push(e.message.replace("¦","¦")):n.push(""),void 0!==e.startLineNumber&&null!==e.startLineNumber?n.push(e.startLineNumber.toString()):n.push(""),void 0!==e.startColumn&&null!==e.startColumn?n.push(e.startColumn.toString()):n.push(""),void 0!==e.endLineNumber&&null!==e.endLineNumber?n.push(e.endLineNumber.toString()):n.push(""),void 0!==e.endColumn&&null!==e.endColumn?n.push(e.endColumn.toString()):n.push(""),n.push(""),n.join("¦")}e.makeKey=function(e){return t(e,!0)},e.makeKeyOptionalMessage=t}(kM||(kM={}));var IM,OM,MM=Mn("markerService");(OM=IM||(IM={})).get=function(e,t,n){if(e[t])return e[t][n]},OM.set=function(e,t,n,i){e[t]||(e[t]=Object.create(null)),e[t][n]=i},OM.remove=function(e,t,n){return!(!e[t]||!e[t][n]||(delete e[t][n],Us(e[t])&&delete e[t],0))};var TM,PM=function(){function e(e){this.errors=0,this.infos=0,this.warnings=0,this.unknowns=0,this._data=Object.create(null),this._service=e,this._subscription=e.onMarkerChanged(this._update,this)}return e.prototype.dispose=function(){this._subscription.dispose(),this._data=void 0},e.prototype._update=function(e){if(this._data)for(var t=0,n=e;t<n.length;t++){var i=n[t],o=i.toString(),r=this._data[o];r&&this._substract(r);var s=this._resourceStats(i);this._add(s),this._data[o]=s}},e.prototype._resourceStats=function(e){var t={errors:0,warnings:0,infos:0,unknowns:0};if(e.scheme===Ci.inMemory||e.scheme===Ci.walkThrough||e.scheme===Ci.walkThroughSnippet)return t;for(var n=0,i=this._service.read({resource:e});n<i.length;n++){var o=i[n].severity;o===NM.Error?t.errors+=1:o===NM.Warning?t.warnings+=1:o===NM.Info?t.infos+=1:t.unknowns+=1}return t},e.prototype._substract=function(e){this.errors-=e.errors,this.warnings-=e.warnings,this.infos-=e.infos,this.unknowns-=e.unknowns},e.prototype._add=function(e){this.errors+=e.errors,this.warnings+=e.warnings,this.infos+=e.infos,this.unknowns+=e.unknowns},e}(),RM=function(){function e(){this._onMarkerChanged=new nt,this._onMarkerChangedEvent=Ge.debounce(this._onMarkerChanged.event,e._debouncer,0),this._byResource=Object.create(null),this._byOwner=Object.create(null),this._stats=new PM(this)}return e.prototype.dispose=function(){this._stats.dispose()},Object.defineProperty(e.prototype,"onMarkerChanged",{get:function(){return this._onMarkerChangedEvent},enumerable:!0,configurable:!0}),e.prototype.remove=function(e,t){for(var n=0,i=t||[];n<i.length;n++){var o=i[n];this.changeOne(e,o,[])}},e.prototype.changeOne=function(t,n,i){if(Ii(i)){var o=IM.remove(this._byResource,n.toString(),t),r=IM.remove(this._byOwner,t,n.toString());if(o!==r)throw new Error("invalid marker service state");o&&r&&this._onMarkerChanged.fire([n])}else{for(var s=[],a=0,u=i;a<u.length;a++){var l=u[a],c=e._toMarker(t,n,l);c&&s.push(c)}IM.set(this._byResource,n.toString(),t,s),IM.set(this._byOwner,t,n.toString(),s),this._onMarkerChanged.fire([n])}},e._toMarker=function(e,t,n){var i=n.code,o=n.severity,r=n.message,s=n.source,a=n.startLineNumber,u=n.startColumn,l=n.endLineNumber,c=n.endColumn,d=n.relatedInformation,h=n.tags;if(r)return{resource:t,owner:e,code:i,severity:o,message:r,source:s,startLineNumber:a=a>0?a:1,startColumn:u=u>0?u:1,endLineNumber:l=l>=a?l:a,endColumn:c=c>0?c:u,relatedInformation:d,tags:h}},e.prototype.read=function(t){void 0===t&&(t=Object.create(null));var n=t.owner,i=t.resource,o=t.severities,r=t.take;if((!r||r<0)&&(r=-1),n&&i){if(y=IM.get(this._byResource,i.toString(),n)){for(var s=[],a=0,u=y;a<u.length;a++){var l=u[a];if(e._accept(l,o)){var c=s.push(l);if(r>0&&c===r)break}}return s}return[]}if(n||i){var d=n?this._byOwner[n]:i?this._byResource[i.toString()]:void 0;if(!d)return[];s=[];for(var h in d)for(var p=0,f=d[h];p<f.length;p++){y=f[p];if(e._accept(y,o)){c=s.push(y);if(r>0&&c===r)return s}}return s}var s=[];for(var g in this._byResource)for(var m in this._byResource[g])for(var v=0,_=this._byResource[g][m];v<_.length;v++){var y=_[v];if(e._accept(y,o)){var c=s.push(y);if(r>0&&c===r)return s}}return s},e._accept=function(e,t){return void 0===t||(t&e.severity)===e.severity},e._debouncer=function(t,n){t||(e._dedupeMap=Object.create(null),t=[]);for(var i=0,o=n;i<o.length;i++){var r=o[i];void 0===e._dedupeMap[r.toString()]&&(e._dedupeMap[r.toString()]=!0,t.push(r))}return t},e}(),AM=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),FM=Mn("storageService");!function(e){e[e.NONE=0]="NONE",e[e.SHUTDOWN=1]="SHUTDOWN"}(TM||(TM={}));var WM=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._onDidChangeStorage=t._register(new nt),t.onDidChangeStorage=t._onDidChangeStorage.event,t._onWillSaveState=t._register(new nt),t.onWillSaveState=t._onWillSaveState.event,t.globalCache=new Map,t.workspaceCache=new Map,t}return AM(t,e),t.prototype.getCache=function(e){return 0===e?this.globalCache:this.workspaceCache},t.prototype.get=function(e,t,n){var i=this.getCache(t).get(e);return Hs(i)?n:i},t.prototype.getBoolean=function(e,t,n){var i=this.getCache(t).get(e);return Hs(i)?n:"true"===i},t.prototype.store=function(e,t,n){if(Hs(t))return this.remove(e,n);var i=String(t);return this.getCache(n).get(e)===i||(this.getCache(n).set(e,i),this._onDidChangeStorage.fire({scope:n,key:e})),Promise.resolve()},t.prototype.remove=function(e,t){return this.getCache(t).delete(e)?(this._onDidChangeStorage.fire({scope:t,key:e}),Promise.resolve()):Promise.resolve()},t}(He),VM=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},BM=function(e,t){return function(n,i){t(n,i,e)}},HM=function(){function e(e){this._commandService=e}return e.prototype.createMenu=function(e,t){return new zM(e,this._commandService,t)},e=VM([BM(0,la)],e)}(),zM=function(){function e(e,t,n){var i=this;this._id=e,this._commandService=t,this._contextKeyService=n,this._onDidChange=new nt,this._dispoables=new Be,this._menuGroups=[],this._contextKeys=new Set,this._build(),this._dispoables.add(Ge.debounce(Ge.filter(bf.onDidChangeMenu,(function(e){return e===i._id})),(function(){}),50)(this._build,this)),this._dispoables.add(Ge.debounce(this._contextKeyService.onDidChangeContext,(function(e,t){return e||t.affectsSome(i._contextKeys)}),50)((function(e){return e&&i._onDidChange.fire(void 0)}),this))}return e.prototype.dispose=function(){this._dispoables.dispose(),this._onDidChange.dispose()},e.prototype._build=function(){this._menuGroups.length=0,this._contextKeys.clear();var t,n=bf.getMenuItems(this._id);n.sort(e._compareMenuItems);for(var i=0,o=n;i<o.length;i++){var r=o[i],s=r.group||"";t&&t[0]===s||(t=[s,[]],this._menuGroups.push(t)),t[1].push(r),e._fillInKbExprKeys(r.when,this._contextKeys),vf(r)&&r.command.precondition&&e._fillInKbExprKeys(r.command.precondition,this._contextKeys),vf(r)&&r.command.toggled&&e._fillInKbExprKeys(r.command.toggled,this._contextKeys)}this._onDidChange.fire(this)},e.prototype.getActions=function(e){for(var t=[],n=0,i=this._menuGroups;n<i.length;n++){for(var o=i[n],r=o[0],s=[],a=0,u=o[1];a<u.length;a++){var l=u[a];if(this._contextKeyService.contextMatchesRules(l.when)){var c=vf(l)?new Sf(l.command,l.alt,e,this._contextKeyService,this._commandService):new Cf(l);s.push(c)}}s.length>0&&t.push([r,s])}return t},e._fillInKbExprKeys=function(e,t){if(e)for(var n=0,i=e.keys();n<i.length;n++){var o=i[n];t.add(o)}},e._compareMenuItems=function(t,n){var i=t.group,o=n.group;if(i!==o){if(!i)return 1;if(!o)return-1;if("navigation"===i)return-1;if("navigation"===o)return 1;var r=i.localeCompare(o);if(0!==r)return r}var s=t.order||0,a=n.order||0;return s<a?-1:s>a?1:e._compareTitles(vf(t)?t.command.title:t.title,vf(n)?n.command.title:n.title)},e._compareTitles=function(e,t){var n="string"==typeof e?e:e.value,i="string"==typeof t?t:t.value;return n.localeCompare(i)},e=VM([BM(1,la),BM(2,qh)],e)}(),jM=Mn("markerDecorationsService"),UM=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),KM=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},qM=function(e,t){return function(n,i){t(n,i,e)}};function GM(e){return e.toString()}var ZM,YM=function(e){function t(t){var n=e.call(this)||this;return n.model=t,n._markersData=new Map,n._register(We((function(){n.model.deltaDecorations(ea(n._markersData),[]),n._markersData.clear()}))),n}return UM(t,e),t.prototype.update=function(e,t){var n=ea(this._markersData);this._markersData.clear();for(var i=this.model.deltaDecorations(n,t),o=0;o<i.length;o++)this._markersData.set(i[o],e[o])},t.prototype.getMarker=function(e){return this._markersData.get(e.id)},t}(He),XM=function(e){function t(t,n){var i=e.call(this)||this;return i._markerService=n,i._onDidChangeMarker=i._register(new nt),i._markerDecorations=new Map,t.getModels().forEach((function(e){return i._onModelAdded(e)})),i._register(t.onModelAdded(i._onModelAdded,i)),i._register(t.onModelRemoved(i._onModelRemoved,i)),i._register(i._markerService.onMarkerChanged(i._handleMarkerChange,i)),i}return UM(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._markerDecorations.forEach((function(e){return e.dispose()})),this._markerDecorations.clear()},t.prototype.getMarker=function(e,t){var n=this._markerDecorations.get(GM(e.uri));return n?$s(n.getMarker(t)):null},t.prototype._handleMarkerChange=function(e){var t=this;e.forEach((function(e){var n=t._markerDecorations.get(GM(e));n&&t._updateDecorations(n)}))},t.prototype._onModelAdded=function(e){var t=new YM(e);this._markerDecorations.set(GM(e.uri),t),this._updateDecorations(t)},t.prototype._onModelRemoved=function(e){var t=this,n=this._markerDecorations.get(GM(e.uri));n&&(n.dispose(),this._markerDecorations.delete(GM(e.uri))),e.uri.scheme!==Ci.inMemory&&e.uri.scheme!==Ci.internal&&e.uri.scheme!==Ci.vscode||this._markerService&&this._markerService.read({resource:e.uri}).map((function(e){return e.owner})).forEach((function(n){return t._markerService.remove(n,[e.uri])}))},t.prototype._updateDecorations=function(e){var t=this,n=this._markerService.read({resource:e.model.uri,take:500}),i=n.map((function(n){return{range:t._createDecorationRange(e.model,n),options:t._createDecorationOption(n)}}));e.update(n,i),this._onDidChangeMarker.fire(e.model)},t.prototype._createDecorationRange=function(e,t){var n=wn.lift(t);if(t.severity!==NM.Hint||this._hasMarkerTag(t,1)||this._hasMarkerTag(t,2)||(n=n.setEndPosition(n.startLineNumber,n.startColumn+2)),(n=e.validateRange(n)).isEmpty()){var i=e.getWordAtPosition(n.getStartPosition());if(i)n=new wn(n.startLineNumber,i.startColumn,n.endLineNumber,i.endColumn);else{var o=e.getLineLastNonWhitespaceColumn(n.startLineNumber)||e.getLineMaxColumn(n.startLineNumber);1===o||(n=n.endColumn>=o?new wn(n.startLineNumber,o-1,n.endLineNumber,o):new wn(n.startLineNumber,n.startColumn,n.endLineNumber,n.endColumn+1))}}else if(t.endColumn===Number.MAX_VALUE&&1===t.startColumn&&n.startLineNumber===n.endLineNumber){var r=e.getLineFirstNonWhitespaceColumn(t.startLineNumber);r<n.endColumn&&(n=new wn(n.startLineNumber,r,n.endLineNumber,n.endColumn),t.startColumn=r)}return n},t.prototype._createDecorationOption=function(e){var t,n,i,o=void 0,r=void 0;switch(e.severity){case NM.Hint:t=this._hasMarkerTag(e,2)?void 0:this._hasMarkerTag(e,1)?"squiggly-unnecessary":"squiggly-hint",n=0;break;case NM.Warning:t="squiggly-warning",o=gg(rw),n=20,i={color:gg(xb),position:Ba.Inline};break;case NM.Info:t="squiggly-info",o=gg(sw),n=10;break;case NM.Error:default:t="squiggly-error",o=gg(ow),n=30,i={color:gg(Lb),position:Ba.Inline}}return e.tags&&(-1!==e.tags.indexOf(1)&&(r="squiggly-inline-unnecessary"),-1!==e.tags.indexOf(2)&&(r="squiggly-inline-deprecated")),{stickiness:1,className:t,showIfCollapsed:!0,overviewRuler:{color:o,position:Va.Right},minimap:i,zIndex:n,inlineClassName:r}},t.prototype._hasMarkerTag=function(e,t){return!!e.tags&&e.tags.indexOf(t)>=0},t=KM([qM(0,du),qM(1,MM)],t)}(He),$M=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),QM=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},JM=function(e,t){return function(n,i){t(n,i,e)}},eT=function(e){function t(t,n){var i=e.call(this)||this;i._contextKeyService=t,i._configurationService=n,i._accessibilitySupport=0,i._onDidChangeScreenReaderOptimized=new nt,i._accessibilityModeEnabledContext=mx.bindTo(i._contextKeyService);var o=function(){return i._accessibilityModeEnabledContext.set(i.isScreenReaderOptimized())};return i._register(i._configurationService.onDidChangeConfiguration((function(e){e.affectsConfiguration("editor.accessibilitySupport")&&(o(),i._onDidChangeScreenReaderOptimized.fire())}))),o(),i.onDidChangeScreenReaderOptimized((function(){return o()})),i}return $M(t,e),Object.defineProperty(t.prototype,"onDidChangeScreenReaderOptimized",{get:function(){return this._onDidChangeScreenReaderOptimized.event},enumerable:!0,configurable:!0}),t.prototype.isScreenReaderOptimized=function(){var e=this._configurationService.getValue("editor.accessibilitySupport");return"on"===e||"auto"===e&&2===this._accessibilitySupport},t.prototype.getAccessibilitySupport=function(){return this._accessibilitySupport},t=QM([JM(0,qh),JM(1,wh)],t)}(He),tT=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();!function(e){var t=new fx,n=function(){function e(e,t){this._serviceId=e,this._factory=t,this._value=null}return Object.defineProperty(e.prototype,"id",{get:function(){return this._serviceId},enumerable:!0,configurable:!0}),e.prototype.get=function(e){if(!this._value){if(e&&(this._value=e[this._serviceId.toString()]),this._value||(this._value=this._factory(e)),!this._value)throw new Error("Service "+this._serviceId+" is missing!");t.set(this._serviceId,this._value)}return this._value},e}();e.LazyStaticService=n;var i=[];function o(e,t){var o=new n(e,t);return i.push(o),o}e.init=function(e){for(var t=new fx,n=0,o=$x;n<o.length;n++){var r=o[n],s=r[0],a=r[1];t.set(s,a)}for(var u in e)e.hasOwnProperty(u)&&t.set(Mn(u),e[u]);i.forEach((function(n){return t.set(n.id,n.get(e))}));var l=new vE(t,!0);return t.set(In,l),[t,l]},e.instantiationService=o(In,(function(){return new vE(t,!0)}));var r=new Ap;e.configurationService=o(wh,(function(){return r})),e.resourceConfigurationService=o(vc,(function(){return new Fp(r)})),e.resourcePropertiesService=o(_c,(function(){return new Wp(r)})),e.contextService=o(lp,(function(){return new Bp})),e.labelService=o(yE,(function(){return new qp})),e.telemetryService=o(Lf,(function(){return new Vp})),e.dialogService=o(cE,(function(){return new Op})),e.notificationService=o(ap,(function(){return new Mp})),e.markerService=o(MM,(function(){return new RM})),e.modeService=o(lN,(function(e){return new LN})),e.standaloneThemeService=o(YD,(function(){return new wk})),e.logService=o(yc,(function(){return new bc})),e.modelService=o(du,(function(t){return new ON(e.configurationService.get(t),e.resourcePropertiesService.get(t),e.standaloneThemeService.get(t),e.logService.get(t))})),e.markerDecorationsService=o(jM,(function(t){return new XM(e.modelService.get(t),e.markerService.get(t))})),e.codeEditorService=o(Pn,(function(t){return new JN(e.standaloneThemeService.get(t))})),e.editorProgressService=o(OD,(function(){return new Ip})),e.storageService=o(FM,(function(){return new WM})),e.editorWorkerService=o(el,(function(t){return new Ec(e.modelService.get(t),e.resourceConfigurationService.get(t),e.logService.get(t))}))}(ZM||(ZM={}));var nT=function(e){function t(t,n){var i=e.call(this)||this,o=ZM.init(n),r=o[0],s=o[1];i._serviceCollection=r,i._instantiationService=s;var a=i.get(wh),u=i.get(ap),l=i.get(Lf),c=i.get(fg),d=function(e,t){var o=null;return n&&(o=n[e.toString()]),o||(o=t()),i._serviceCollection.set(e,o),o},h=d(qh,(function(){return i._register(new Tk(a))}));d(gx,(function(){return new eT(h,a)})),d(uM,(function(){return new lM(c)}));var p=d(la,(function(){return new Tp(i._instantiationService)})),f=d(XD,(function(){return i._register(new Pp(h,p,l,u,t))})),g=d(rE,(function(){return new Gp(t)})),m=d(xD,(function(){return i._register(new lE(g))}));return d(DD,(function(){var e=new tE(l,u,m,f,c);return e.configure({blockMouse:!1}),i._register(e)})),d(yf,(function(){return new HM(p)})),d(uN,(function(){return new Kp(ZM.modelService.get(du))})),i}return tT(t,e),t.prototype.get=function(e){var t=this._serviceCollection.get(e);if(!t)throw new Error("Missing service "+e);return t},t.prototype.set=function(e,t){this._serviceCollection.set(e,t)},t.prototype.has=function(e){return this._serviceCollection.has(e)},t}(He);function iT(e,t,n){var i=new nT(e,t),o=null;i.has(tl)||(o=new Ep(ZM.modelService.get()),i.set(tl,o)),i.has(pa)||i.set(pa,new Sa(i.get(Pn),i.get(la)));var r=n(i);return o&&o.setEditor(r),r}function oT(e,t,n){return iT(e,n||{},(function(n){return new sN(e,t,n,n.get(In),n.get(Pn),n.get(la),n.get(qh),n.get(XD),n.get(xD),n.get(YD),n.get(ap),n.get(wh),n.get(gx))}))}function rT(e){return ZM.codeEditorService.get().onCodeEditorAdd((function(t){e(t)}))}function sT(e,t,n){return iT(e,n||{},(function(n){return new aN(e,t,n,n.get(In),n.get(qh),n.get(XD),n.get(xD),n.get(el),n.get(Pn),n.get(YD),n.get(ap),n.get(wh),n.get(DD),n.get(OD),null)}))}function aT(e,t){return new Ta(e,t)}function uT(e,t,n){return ZM.modelService.get().createModel(e,t,n)}function lT(e,t,n){if(e=e||"",!t){var i=e.indexOf("\n"),o=e;return-1!==i&&(o=e.substring(0,i)),uT(e,ZM.modeService.get().createByFilepathOrFirstLine(n||null,o),n)}return uT(e,ZM.modeService.get().create(t),n)}function cT(e,t){ZM.modelService.get().setMode(e,ZM.modeService.get().create(t))}function dT(e,t,n){e&&ZM.markerService.get().changeOne(t,e.uri,n)}function hT(e){return ZM.markerService.get().read(e)}function pT(e){return ZM.modelService.get().getModel(e)}function fT(){return ZM.modelService.get().getModels()}function gT(e){return ZM.modelService.get().onModelAdded(e)}function mT(e){return ZM.modelService.get().onModelRemoved(e)}function vT(e){return ZM.modelService.get().onModelModeChanged((function(t){e({model:t.model,oldLanguage:t.oldModeId})}))}function _T(e){return function(e,t){return new Wc(e,t)}(ZM.modelService.get(),e)}function yT(e,t){return kd.colorizeElement(ZM.standaloneThemeService.get(),ZM.modeService.get(),e,t)}function bT(e,t,n){return kd.colorize(ZM.modeService.get(),e,t,n)}function wT(e,t,n){return void 0===n&&(n=4),kd.colorizeModelLine(e,t,n)}function CT(e,t){ZM.modeService.get().triggerMode(t);for(var n=function(e){var t=Yu.get(e);return t||{getInitialState:function(){return Xu},tokenize:function(t,n,i){return Qu(e,0,n,i)}}}(t),i=e.split(/\r\n|\r|\n/),o=[],r=n.getInitialState(),s=0,a=i.length;s<a;s++){var u=i[s],l=n.tokenize(u,r,0);o[s]=l.tokens,r=l.endState}return o}function ST(e,t){ZM.standaloneThemeService.get().defineTheme(e,t)}function LT(e){ZM.standaloneThemeService.get().setTheme(e)}function xT(){sf.INSTANCE.clearCache()}function DT(e,t){return"boolean"==typeof e?e:t}function NT(e,t){return"string"==typeof e?e:t}function kT(e,t){void 0===t&&(t=!1),t&&(e=e.map((function(e){return e.toLowerCase()})));var n=function(e){for(var t={},n=0,i=e;n<i.length;n++){t[i[n]]=!0}return t}(e);return t?function(e){return void 0!==n[e.toLowerCase()]&&n.hasOwnProperty(e.toLowerCase())}:function(e){return void 0!==n[e]&&n.hasOwnProperty(e)}}function ET(e,t){for(var n=0;t.indexOf("@")>=0&&n<5;)n++,t=t.replace(/@(\w+)/g,(function(n,i){var o="";if("string"==typeof e[i])o=e[i];else{if(!(e[i]&&e[i]instanceof RegExp))throw void 0===e[i]?fd(e,"language definition does not contain attribute '"+i+"', used at: "+t):fd(e,"attribute reference '"+i+"' must be a string, used at: "+t);o=e[i].source}return dd(o)?"":"(?:"+o+")"}));return new RegExp(t,e.ignoreCase?"i":"")}function IT(e,t,n,i){var o=-1,r=n,s=n.match(/^\$(([sS]?)(\d\d?)|#)(.*)$/);s&&(s[3]&&(o=parseInt(s[3]),s[2]&&(o+=100)),r=s[4]);var a,u="~",l=r;if(r&&0!==r.length?/^\w*$/.test(l)?u="==":(s=r.match(/^(@|!@|~|!~|==|!=)(.*)$/))&&(u=s[1],l=s[2]):(u="!=",l=""),"~"!==u&&"!~"!==u||!/^(\w|\|)*$/.test(l))if("@"===u||"!@"===u){var c=e[l];if(!c)throw fd(e,"the @ match target '"+l+"' is not defined, in rule: "+t);if(!function(e,t){if(!t)return!1;if(!Array.isArray(t))return!1;for(var n=0,i=t;n<i.length;n++){if(!e(i[n]))return!1}return!0}((function(e){return"string"==typeof e}),c))throw fd(e,"the @ match target '"+l+"' must be an array of strings, in rule: "+t);var d=kT(c,e.ignoreCase);a=function(e){return"@"===u?d(e):!d(e)}}else if("~"===u||"!~"===u)if(l.indexOf("$")<0){var h=ET(e,"^"+l+"$");a=function(e){return"~"===u?h.test(e):!h.test(e)}}else a=function(t,n,i,o){return ET(e,"^"+gd(e,l,n,i,o)+"$").test(t)};else if(l.indexOf("$")<0){var p=hd(e,l);a=function(e){return"=="===u?e===p:e!==p}}else{var f=hd(e,l);a=function(t,n,i,o,r){var s=gd(e,f,n,i,o);return"=="===u?t===s:t!==s}}else{var g=kT(l.split("|"),e.ignoreCase);a=function(e){return"~"===u?g(e):!g(e)}}return-1===o?{name:n,value:i,test:function(e,t,n,i){return a(e,e,t,n,i)}}:{name:n,value:i,test:function(e,t,n,i){var r=function(e,t,n,i){if(i<0)return e;if(i<t.length)return t[i];if(i>=100){i-=100;var o=n.split(".");if(o.unshift(n),i<o.length)return o[i]}return null}(e,t,n,o);return a(r||"",e,t,n,i)}}}var OT=function(){function e(e){this.regex=new RegExp(""),this.action={token:""},this.matchOnlyAtLineStart=!1,this.name="",this.name=e}return e.prototype.setRegex=function(e,t){var n;if("string"==typeof t)n=t;else{if(!(t instanceof RegExp))throw fd(e,"rules must start with a match string or regular expression: "+this.name);n=t.source}this.matchOnlyAtLineStart=n.length>0&&"^"===n[0],this.name=this.name+": "+n,this.regex=ET(e,"^(?:"+(this.matchOnlyAtLineStart?n.substr(1):n)+")")},e.prototype.setAction=function(e,t){this.action=function e(t,n,i){if(i){if("string"==typeof i)return i;if(i.token||""===i.token){if("string"!=typeof i.token)throw fd(t,"a 'token' attribute must be of type string, in rule: "+n);var o={token:i.token};if(i.token.indexOf("$")>=0&&(o.tokenSubst=!0),"string"==typeof i.bracket)if("@open"===i.bracket)o.bracket=1;else{if("@close"!==i.bracket)throw fd(t,"a 'bracket' attribute must be either '@open' or '@close', in rule: "+n);o.bracket=-1}if(i.next){if("string"!=typeof i.next)throw fd(t,"the next state must be a string value in rule: "+n);var r=i.next;if(!/^(@pop|@push|@popall)$/.test(r)&&("@"===r[0]&&(r=r.substr(1)),r.indexOf("$")<0&&!function(e,t){for(var n=t;n&&n.length>0;){if(e.stateNames[n])return!0;var i=n.lastIndexOf(".");n=i<0?null:n.substr(0,i)}return!1}(t,gd(t,r,"",[],""))))throw fd(t,"the next state '"+i.next+"' is not defined in rule: "+n);o.next=r}return"number"==typeof i.goBack&&(o.goBack=i.goBack),"string"==typeof i.switchTo&&(o.switchTo=i.switchTo),"string"==typeof i.log&&(o.log=i.log),"string"==typeof i.nextEmbedded&&(o.nextEmbedded=i.nextEmbedded,t.usesEmbedded=!0),o}if(Array.isArray(i)){for(var s=[],a=0,u=i.length;a<u;a++)s[a]=e(t,n,i[a]);return{group:s}}if(i.cases){var l=[];for(var c in i.cases)if(i.cases.hasOwnProperty(c)){var d=e(t,n,i.cases[c]);"@default"===c||"@"===c||""===c?l.push({test:void 0,value:d,name:c}):"@eos"===c?l.push({test:function(e,t,n,i){return i},value:d,name:c}):l.push(IT(t,n,c,d))}var h=t.defaultToken;return{test:function(e,t,n,i){for(var o=0,r=l;o<r.length;o++){var s=r[o];if(!s.test||s.test(e,t,n,i))return s.value}return h}}}throw fd(t,"an action must be a string, an object with a 'token' or 'cases' attribute, or an array of actions; in rule: "+n)}return{token:""}}(e,this.name,t)},e}();function MT(e){vN.registerLanguage(e)}function TT(){var e=[];return e=e.concat(vN.getLanguages())}function PT(e){var t=ZM.modeService.get().getLanguageIdentifier(e);return t?t.id:0}function RT(e,t){var n=ZM.modeService.get().onDidCreateMode((function(i){i.getId()===e&&(n.dispose(),t())}));return n}function AT(e,t){var n=ZM.modeService.get().getLanguageIdentifier(e);if(!n)throw new Error("Cannot set configuration for unknown language "+e);return Ol.register(n,t)}var FT=function(){function e(e){this._actual=e}return e.prototype.getInitialState=function(){return this._actual.getInitialState()},e.prototype.tokenize=function(e,t,n){throw new Error("Not supported!")},e.prototype.tokenize2=function(e,t){var n=this._actual.tokenizeEncoded(e,t);return new Dn(n.tokens,n.endState)},e}(),WT=function(){function e(e,t,n){this._standaloneThemeService=e,this._languageIdentifier=t,this._actual=n}return e.prototype.getInitialState=function(){return this._actual.getInitialState()},e.prototype._toClassicTokens=function(e,t,n){for(var i=[],o=0,r=0,s=e.length;r<s;r++){var a=e[r],u=a.startIndex;0===r?u=0:u<o&&(u=o),i[r]=new Ln(u+n,a.scopes,t),o=u}return i},e.prototype.tokenize=function(e,t,n){var i,o=this._actual.tokenize(e,t),r=this._toClassicTokens(o.tokens,this._languageIdentifier.language,n);return i=o.endState.equals(t)?t:o.endState,new xn(r,i)},e.prototype._toBinaryTokens=function(e,t){for(var n=this._languageIdentifier.id,i=this._standaloneThemeService.getTheme().tokenTheme,o=[],r=0,s=0,a=0,u=e.length;a<u;a++){var l=e[a],c=i.match(n,l.scopes);if(!(r>0&&o[r-1]===c)){var d=l.startIndex;0===a?d=0:d<s&&(d=s),o[r++]=d+t,o[r++]=c,s=d}}var h=new Uint32Array(r);for(a=0;a<r;a++)h[a]=o[a];return h},e.prototype.tokenize2=function(e,t,n){var i,o=this._actual.tokenize(e,t),r=this._toBinaryTokens(o.tokens,n);return i=o.endState.equals(t)?t:o.endState,new Dn(r,i)},e}();function VT(e){return e&&"function"==typeof e.then}function BT(e,t){var n=ZM.modeService.get().getLanguageIdentifier(e);if(!n)throw new Error("Cannot set tokens provider for unknown language "+e);var i=function(e){return function(e){return"tokenizeEncoded"in e}(e)?new FT(e):new WT(ZM.standaloneThemeService.get(),n,e)};return VT(t)?Yu.registerPromise(e,t.then((function(e){return i(e)}))):Yu.register(e,i(t))}function HT(e,t){var n=function(t){return function(e,t,n,i){return new Ld(e,t,n,i)}(ZM.modeService.get(),ZM.standaloneThemeService.get(),e,function(e,t){if(!t||"object"!=typeof t)throw new Error("Monarch: expecting a language definition object");var n={};n.languageId=e,n.noThrow=!1,n.maxStack=100,n.start="string"==typeof t.start?t.start:null,n.ignoreCase=DT(t.ignoreCase,!1),n.tokenPostfix=NT(t.tokenPostfix,"."+n.languageId),n.defaultToken=NT(t.defaultToken,"source"),n.usesEmbedded=!1;var i=t;function o(e,r,s){for(var a=0,u=s;a<u.length;a++){var l=u[a],c=l.include;if(c){if("string"!=typeof c)throw fd(n,"an 'include' attribute must be a string at: "+e);if("@"===c[0]&&(c=c.substr(1)),!t.tokenizer[c])throw fd(n,"include target '"+c+"' is not defined at: "+e);o(e+"."+c,r,t.tokenizer[c])}else{var d=new OT(e);if(Array.isArray(l)&&l.length>=1&&l.length<=3)if(d.setRegex(i,l[0]),l.length>=3)if("string"==typeof l[1])d.setAction(i,{token:l[1],next:l[2]});else{if("object"!=typeof l[1])throw fd(n,"a next state as the last element of a rule can only be given if the action is either an object or a string, at: "+e);var h=l[1];h.next=l[2],d.setAction(i,h)}else d.setAction(i,l[1]);else{if(!l.regex)throw fd(n,"a rule must either be an array, or an object with a 'regex' or 'include' field at: "+e);l.name&&"string"==typeof l.name&&(d.name=l.name),l.matchOnlyAtStart&&(d.matchOnlyAtLineStart=DT(l.matchOnlyAtLineStart,!1)),d.setRegex(i,l.regex),d.setAction(i,l.action)}r.push(d)}}}if(i.languageId=e,i.ignoreCase=n.ignoreCase,i.noThrow=n.noThrow,i.usesEmbedded=n.usesEmbedded,i.stateNames=t.tokenizer,i.defaultToken=n.defaultToken,!t.tokenizer||"object"!=typeof t.tokenizer)throw fd(n,"a language definition must define the 'tokenizer' attribute as an object");for(var r in n.tokenizer=[],t.tokenizer)if(t.tokenizer.hasOwnProperty(r)){n.start||(n.start=r);var s=t.tokenizer[r];n.tokenizer[r]=new Array,o("tokenizer."+r,n.tokenizer[r],s)}if(n.usesEmbedded=i.usesEmbedded,t.brackets){if(!Array.isArray(t.brackets))throw fd(n,"the 'brackets' attribute must be defined as an array")}else t.brackets=[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}];for(var a=[],u=0,l=t.brackets;u<l.length;u++){var c=l[u];if(c&&Array.isArray(c)&&3===c.length&&(c={token:c[2],open:c[0],close:c[1]}),c.open===c.close)throw fd(n,"open and close brackets in a 'brackets' attribute must be different: "+c.open+"\n hint: use the 'bracket' attribute if matching on equal brackets is required.");if("string"!=typeof c.open||"string"!=typeof c.token||"string"!=typeof c.close)throw fd(n,"every element in the 'brackets' array must be a '{open,close,token}' object or array");a.push({token:c.token+n.tokenPostfix,open:hd(n,c.open),close:hd(n,c.close)})}return n.brackets=a,n.noThrow=!0,n}(e,t))};return VT(t)?Yu.registerPromise(e,t.then((function(e){return n(e)}))):Yu.register(e,n(t))}function zT(e,t){return Nu.register(e,t)}function jT(e,t){return ku.register(e,t)}function UT(e,t){return Iu.register(e,t)}function KT(e,t){return Ou.register(e,{provideHover:function(e,n,i){var o=e.getWordAtPosition(n);return Promise.resolve(t.provideHover(e,n,i)).then((function(e){if(e)return!e.range&&o&&(e.range=new wn(n.lineNumber,o.startColumn,n.lineNumber,o.endColumn)),e.range||(e.range=new wn(n.lineNumber,n.column,n.lineNumber,n.column)),e}))}})}function qT(e,t){return Mu.register(e,t)}function GT(e,t){return Tu.register(e,t)}function ZT(e,t){return Pu.register(e,t)}function YT(e,t){return Au.register(e,t)}function XT(e,t){return Fu.register(e,t)}function $T(e,t){return Wu.register(e,t)}function QT(e,t){return Vu.register(e,{provideCodeActions:function(e,n,i,o){var r=ZM.markerService.get().read({resource:e.uri}).filter((function(e){return wn.areIntersectingOrTouching(e,n)}));return t.provideCodeActions(e,n,{markers:r,only:i.only},o)}})}function JT(e,t){return Bu.register(e,t)}function eP(e,t){return Hu.register(e,t)}function tP(e,t){return zu.register(e,t)}function nP(e,t){return ju.register(e,t)}function iP(e,t){return Eu.register(e,t)}function oP(e,t){return Uu.register(e,t)}function rP(e,t){return qu.register(e,t)}function sP(e,t){return Ru.register(e,t)}function aP(e,t){return Ku.register(e,t)}function uP(e,t){return Gu.register(e,t)}function lP(e,t){return Zu.register(e,t)}var cP=self;Le.wrappingIndent.defaultValue=0,Le.glyphMargin.defaultValue=!1,Le.autoIndent.defaultValue=3,Le.overviewRulerLanes.defaultValue=2;var dP=kn();dP.editor={create:oT,onDidCreateEditor:rT,createDiffEditor:sT,createDiffNavigator:aT,createModel:lT,setModelLanguage:cT,setModelMarkers:dT,getModelMarkers:hT,getModels:fT,getModel:pT,onDidCreateModel:gT,onWillDisposeModel:mT,onDidChangeModelLanguage:vT,createWebWorker:_T,colorizeElement:yT,colorize:bT,colorizeModelLine:wT,tokenize:CT,defineTheme:ST,setTheme:LT,remeasureFonts:xT,AccessibilitySupport:Vt,ContentWidgetPositionPreference:Ut,CursorChangeReason:Kt,DefaultEndOfLine:qt,EditorAutoIndentStrategy:Zt,EditorOption:Yt,EndOfLinePreference:Xt,EndOfLineSequence:$t,MinimapPosition:on,MouseTargetType:rn,OverlayWidgetPositionPreference:sn,OverviewRulerLane:an,RenderLineNumbersType:un,RenderMinimap:ln,ScrollbarVisibility:dn,ScrollType:cn,TextEditorCursorBlinkingStyle:mn,TextEditorCursorStyle:vn,TrackedRangeStickiness:_n,WrappingIndent:yn,ConfigurationChangedEvent:M,BareFontInfo:Fa,FontInfo:Wa,TextModelResolvedOptions:ja,FindMatch:Ua,EditorType:Ha,EditorOptions:Le},dP.languages={register:MT,getLanguages:TT,onLanguage:RT,getEncodedLanguageId:PT,setLanguageConfiguration:AT,setTokensProvider:BT,setMonarchTokensProvider:HT,registerReferenceProvider:zT,registerRenameProvider:jT,registerCompletionItemProvider:iP,registerSignatureHelpProvider:UT,registerHoverProvider:KT,registerDocumentSymbolProvider:qT,registerDocumentHighlightProvider:GT,registerDefinitionProvider:ZT,registerImplementationProvider:YT,registerTypeDefinitionProvider:XT,registerCodeLensProvider:$T,registerCodeActionProvider:QT,registerDocumentFormattingEditProvider:JT,registerDocumentRangeFormattingEditProvider:eP,registerOnTypeFormattingEditProvider:tP,registerLinkProvider:nP,registerColorProvider:oP,registerFoldingRangeProvider:rP,registerDeclarationProvider:sP,registerSelectionRangeProvider:aP,registerDocumentSemanticTokensProvider:uP,registerDocumentRangeSemanticTokensProvider:lP,DocumentHighlightKind:Gt,CompletionItemKind:Ht,CompletionItemTag:zt,CompletionItemInsertTextRule:Bt,SymbolKind:fn,SymbolTag:gn,IndentAction:Qt,CompletionTriggerKind:jt,SignatureHelpTriggerKind:pn,FoldingRangeKind:Du};var hP=dP.CancellationTokenSource,pP=dP.Emitter,fP=dP.KeyCode,gP=dP.KeyMod,mP=dP.Position,vP=dP.Range,_P=dP.Selection,yP=dP.SelectionDirection,bP=dP.MarkerSeverity,wP=dP.MarkerTag,CP=dP.Uri,SP=dP.Token,LP=dP.editor,xP=dP.languages;cP.monaco=dP,void 0!==cP.require&&"function"==typeof cP.require.config&&cP.require.config({ignoreDuplicateModules:["vscode-languageserver-types","vscode-languageserver-types/main","vscode-nls","vscode-nls/vscode-nls","jsonc-parser","jsonc-parser/main","vscode-uri","vscode-uri/index","vs/basic-languages/typescript/typescript"]});var DP,NP,kP,EP,IP,OP=monaco.Emitter,MP=function(){function e(e,t){this._onDidChange=new OP,this._onDidExtraLibsChange=new OP,this._extraLibs=Object.create(null),this._eagerModelSync=!1,this.setCompilerOptions(e),this.setDiagnosticsOptions(t),this._onDidExtraLibsChangeTimeout=-1}return Object.defineProperty(e.prototype,"onDidChange",{get:function(){return this._onDidChange.event},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidExtraLibsChange",{get:function(){return this._onDidExtraLibsChange.event},enumerable:!0,configurable:!0}),e.prototype.getExtraLibs=function(){return this._extraLibs},e.prototype.addExtraLib=function(e,t){var n,i=this;if(n=void 0===t?"ts:extralib-"+Math.random().toString(36).substring(2,15):t,this._extraLibs[n]&&this._extraLibs[n].content===e)return{dispose:function(){}};var o=1;return this._extraLibs[n]&&(o=this._extraLibs[n].version+1),this._extraLibs[n]={content:e,version:o},this._fireOnDidExtraLibsChangeSoon(),{dispose:function(){var e=i._extraLibs[n];e&&e.version===o&&(delete i._extraLibs[n],i._fireOnDidExtraLibsChangeSoon())}}},e.prototype.setExtraLibs=function(e){if(this._extraLibs=Object.create(null),e&&e.length>0)for(var t=0,n=e;t<n.length;t++){var i=n[t],o=i.filePath||"ts:extralib-"+Math.random().toString(36).substring(2,15),r=i.content;this._extraLibs[o]={content:r,version:1}}this._fireOnDidExtraLibsChangeSoon()},e.prototype._fireOnDidExtraLibsChangeSoon=function(){var e=this;-1===this._onDidExtraLibsChangeTimeout&&(this._onDidExtraLibsChangeTimeout=setTimeout((function(){e._onDidExtraLibsChangeTimeout=-1,e._onDidExtraLibsChange.fire(void 0)}),0))},e.prototype.getCompilerOptions=function(){return this._compilerOptions},e.prototype.setCompilerOptions=function(e){this._compilerOptions=e||Object.create(null),this._onDidChange.fire(void 0)},e.prototype.getDiagnosticsOptions=function(){return this._diagnosticsOptions},e.prototype.setDiagnosticsOptions=function(e){this._diagnosticsOptions=e||Object.create(null),this._onDidChange.fire(void 0)},e.prototype.setMaximumWorkerIdleTime=function(e){},e.prototype.setEagerModelSync=function(e){this._eagerModelSync=e},e.prototype.getEagerModelSync=function(){return this._eagerModelSync},e}();!function(e){e[e.None=0]="None",e[e.CommonJS=1]="CommonJS",e[e.AMD=2]="AMD",e[e.UMD=3]="UMD",e[e.System=4]="System",e[e.ES2015=5]="ES2015",e[e.ESNext=99]="ESNext"}(DP||(DP={})),function(e){e[e.None=0]="None",e[e.Preserve=1]="Preserve",e[e.React=2]="React",e[e.ReactNative=3]="ReactNative"}(NP||(NP={})),function(e){e[e.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",e[e.LineFeed=1]="LineFeed"}(kP||(kP={})),function(e){e[e.ES3=0]="ES3",e[e.ES5=1]="ES5",e[e.ES2015=2]="ES2015",e[e.ES2016=3]="ES2016",e[e.ES2017=4]="ES2017",e[e.ES2018=5]="ES2018",e[e.ES2019=6]="ES2019",e[e.ES2020=7]="ES2020",e[e.ESNext=99]="ESNext",e[e.JSON=100]="JSON",e[e.Latest=99]="Latest"}(EP||(EP={})),function(e){e[e.Classic=1]="Classic",e[e.NodeJs=2]="NodeJs"}(IP||(IP={}));var TP=new MP({allowNonTsExtensions:!0,target:EP.Latest},{noSemanticValidation:!1,noSyntaxValidation:!1}),PP=new MP({allowNonTsExtensions:!0,allowJs:!0,target:EP.Latest},{noSemanticValidation:!0,noSyntaxValidation:!1});function RP(){return FP().then((function(e){return e.getTypeScriptWorker()}))}function AP(){return FP().then((function(e){return e.getJavaScriptWorker()}))}function FP(){return n.e(105).then(n.bind(null,544))}monaco.languages.typescript={ModuleKind:DP,JsxEmit:NP,NewLineKind:kP,ScriptTarget:EP,ModuleResolutionKind:IP,typescriptVersion:"3.7.5",typescriptDefaults:TP,javascriptDefaults:PP,getTypeScriptWorker:RP,getJavaScriptWorker:AP},monaco.languages.onLanguage("typescript",(function(){return FP().then((function(e){return e.setupTypeScript(TP)}))})),monaco.languages.onLanguage("javascript",(function(){return FP().then((function(e){return e.setupJavaScript(PP)}))}));var WP=monaco.Emitter,VP=function(){function e(e,t,n){this._onDidChange=new WP,this._languageId=e,this.setDiagnosticsOptions(t),this.setModeConfiguration(n)}return Object.defineProperty(e.prototype,"onDidChange",{get:function(){return this._onDidChange.event},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"modeConfiguration",{get:function(){return this._modeConfiguration},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"diagnosticsOptions",{get:function(){return this._diagnosticsOptions},enumerable:!0,configurable:!0}),e.prototype.setDiagnosticsOptions=function(e){this._diagnosticsOptions=e||Object.create(null),this._onDidChange.fire(this)},e.prototype.setModeConfiguration=function(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)},e}(),BP={validate:!0,lint:{compatibleVendorPrefixes:"ignore",vendorPrefix:"warning",duplicateProperties:"warning",emptyRules:"warning",importStatement:"ignore",boxModel:"ignore",universalSelector:"ignore",zeroUnits:"ignore",fontFaceProperties:"warning",hexColorLength:"error",argumentsInColorFunction:"error",unknownProperties:"warning",ieHack:"ignore",unknownVendorSpecificProperties:"ignore",propertyIgnoredDueToDisplay:"warning",important:"ignore",float:"ignore",idSelector:"ignore"}},HP={completionItems:!0,hovers:!0,documentSymbols:!0,definitions:!0,references:!0,documentHighlights:!0,rename:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0},zP=new VP("css",BP,HP),jP=new VP("scss",BP,HP),UP=new VP("less",BP,HP);function KP(){return n.e(102).then(n.bind(null,504))}monaco.languages.css={cssDefaults:zP,lessDefaults:UP,scssDefaults:jP},monaco.languages.onLanguage("less",(function(){KP().then((function(e){return e.setupMode(UP)}))})),monaco.languages.onLanguage("scss",(function(){KP().then((function(e){return e.setupMode(jP)}))})),monaco.languages.onLanguage("css",(function(){KP().then((function(e){return e.setupMode(zP)}))}));var qP=monaco.Emitter,GP=new(function(){function e(e,t,n){this._onDidChange=new qP,this._languageId=e,this.setDiagnosticsOptions(t),this.setModeConfiguration(n)}return Object.defineProperty(e.prototype,"onDidChange",{get:function(){return this._onDidChange.event},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"modeConfiguration",{get:function(){return this._modeConfiguration},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"diagnosticsOptions",{get:function(){return this._diagnosticsOptions},enumerable:!0,configurable:!0}),e.prototype.setDiagnosticsOptions=function(e){this._diagnosticsOptions=e||Object.create(null),this._onDidChange.fire(this)},e.prototype.setModeConfiguration=function(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)},e}())("json",{validate:!0,allowComments:!0,schemas:[],enableSchemaRequest:!1},{documentFormattingEdits:!0,documentRangeFormattingEdits:!0,completionItems:!0,hovers:!0,documentSymbols:!0,tokens:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0});monaco.languages.json={jsonDefaults:GP},monaco.languages.register({id:"json",extensions:[".json",".bowerrc",".jshintrc",".jscsrc",".eslintrc",".babelrc",".har"],aliases:["JSON","json"],mimetypes:["application/json"]}),monaco.languages.onLanguage("json",(function(){n.e(104).then(n.bind(null,506)).then((function(e){return e.setupMode(GP)}))}));var ZP=monaco.Emitter,YP=function(){function e(e,t,n){this._onDidChange=new ZP,this._languageId=e,this.setOptions(t),this.setModeConfiguration(n)}return Object.defineProperty(e.prototype,"onDidChange",{get:function(){return this._onDidChange.event},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"options",{get:function(){return this._options},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"modeConfiguration",{get:function(){return this._modeConfiguration},enumerable:!0,configurable:!0}),e.prototype.setOptions=function(e){this._options=e||Object.create(null),this._onDidChange.fire(this)},e.prototype.setModeConfiguration=function(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)},e}(),XP={tabSize:4,insertSpaces:!1,wrapLineLength:120,unformatted:'default": "a, abbr, acronym, b, bdo, big, br, button, cite, code, dfn, em, i, img, input, kbd, label, map, object, q, samp, select, small, span, strong, sub, sup, textarea, tt, var',contentUnformatted:"pre",indentInnerHtml:!1,preserveNewLines:!0,maxPreserveNewLines:null,indentHandlebars:!1,endWithNewline:!1,extraLiners:"head, body, /html",wrapAttributes:"auto"},$P={format:XP,suggest:{html5:!0}},QP={format:XP,suggest:{html5:!0,razor:!0}};function JP(e){return{completionItems:!0,hovers:!0,documentSymbols:!0,links:!0,documentHighlights:!0,rename:!0,colors:!0,foldingRanges:!0,selectionRanges:!0,diagnostics:e===eR,documentFormattingEdits:e===eR,documentRangeFormattingEdits:e===eR}}var eR="html",tR=new YP(eR,{format:XP,suggest:{html5:!0,angular1:!0,ionic:!0}},JP(eR)),nR=new YP("handlebars",$P,JP("handlebars")),iR=new YP("razor",QP,JP("razor"));function oR(){return n.e(103).then(n.bind(null,505))}monaco.languages.html={htmlDefaults:tR,razorDefaults:iR,handlebarDefaults:nR},monaco.languages.onLanguage(eR,(function(){oR().then((function(e){return e.setupMode(tR)}))})),monaco.languages.onLanguage("handlebars",(function(){oR().then((function(e){return e.setupMode(nR)}))})),monaco.languages.onLanguage("razor",(function(){oR().then((function(e){return e.setupMode(iR)}))}));var rR="undefined"==typeof monaco?self.monaco:monaco,sR={},aR={},uR=function(){function e(e){var t=this;this._languageId=e,this._loadingTriggered=!1,this._lazyLoadPromise=new Promise((function(e,n){t._lazyLoadPromiseResolve=e,t._lazyLoadPromiseReject=n}))}return e.getOrCreate=function(t){return aR[t]||(aR[t]=new e(t)),aR[t]},e.prototype.whenLoaded=function(){return this._lazyLoadPromise},e.prototype.load=function(){var e=this;return this._loadingTriggered||(this._loadingTriggered=!0,sR[this._languageId].loader().then((function(t){return e._lazyLoadPromiseResolve(t)}),(function(t){return e._lazyLoadPromiseReject(t)}))),this._lazyLoadPromise},e}();function lR(e){var t=e.id;sR[t]=e,rR.languages.register(e);var n=uR.getOrCreate(t);rR.languages.setMonarchTokensProvider(t,n.whenLoaded().then((function(e){return e.language}))),rR.languages.onLanguage(t,(function(){n.load().then((function(e){rR.languages.setLanguageConfiguration(t,e.conf)}))}))}lR({id:"abap",extensions:[".abap"],aliases:["abap","ABAP"],loader:function(){return n.e(44).then(n.bind(null,444))}}),lR({id:"apex",extensions:[".cls"],aliases:["Apex","apex"],mimetypes:["text/x-apex-source","text/x-apex"],loader:function(){return n.e(45).then(n.bind(null,445))}}),lR({id:"azcli",extensions:[".azcli"],aliases:["Azure CLI","azcli"],loader:function(){return n.e(46).then(n.bind(null,446))}}),lR({id:"bat",extensions:[".bat",".cmd"],aliases:["Batch","bat"],loader:function(){return n.e(47).then(n.bind(null,447))}}),lR({id:"cameligo",extensions:[".mligo"],aliases:["Cameligo"],loader:function(){return n.e(48).then(n.bind(null,448))}}),lR({id:"clojure",extensions:[".clj",".cljs",".cljc",".edn"],aliases:["clojure","Clojure"],loader:function(){return n.e(49).then(n.bind(null,449))}}),lR({id:"coffeescript",extensions:[".coffee"],aliases:["CoffeeScript","coffeescript","coffee"],mimetypes:["text/x-coffeescript","text/coffeescript"],loader:function(){return n.e(50).then(n.bind(null,450))}}),lR({id:"c",extensions:[".c",".h"],aliases:["C","c"],loader:function(){return n.e(1).then(n.bind(null,451))}}),lR({id:"cpp",extensions:[".cpp",".cc",".cxx",".hpp",".hh",".hxx"],aliases:["C++","Cpp","cpp"],loader:function(){return n.e(1).then(n.bind(null,451))}}),lR({id:"csharp",extensions:[".cs",".csx",".cake"],aliases:["C#","csharp"],loader:function(){return n.e(51).then(n.bind(null,452))}}),lR({id:"csp",extensions:[],aliases:["CSP","csp"],loader:function(){return n.e(52).then(n.bind(null,453))}}),lR({id:"css",extensions:[".css"],aliases:["CSS","css"],mimetypes:["text/css"],loader:function(){return n.e(53).then(n.bind(null,454))}}),lR({id:"dockerfile",extensions:[".dockerfile"],filenames:["Dockerfile"],aliases:["Dockerfile"],loader:function(){return n.e(54).then(n.bind(null,455))}}),lR({id:"fsharp",extensions:[".fs",".fsi",".ml",".mli",".fsx",".fsscript"],aliases:["F#","FSharp","fsharp"],loader:function(){return n.e(55).then(n.bind(null,456))}}),lR({id:"go",extensions:[".go"],aliases:["Go"],loader:function(){return n.e(56).then(n.bind(null,457))}}),lR({id:"graphql",extensions:[".graphql",".gql"],aliases:["GraphQL","graphql","gql"],mimetypes:["application/graphql"],loader:function(){return n.e(57).then(n.bind(null,458))}}),lR({id:"handlebars",extensions:[".handlebars",".hbs"],aliases:["Handlebars","handlebars"],mimetypes:["text/x-handlebars-template"],loader:function(){return n.e(58).then(n.bind(null,459))}}),lR({id:"html",extensions:[".html",".htm",".shtml",".xhtml",".mdoc",".jsp",".asp",".aspx",".jshtm"],aliases:["HTML","htm","html","xhtml"],mimetypes:["text/html","text/x-jshtm","text/template","text/ng-template"],loader:function(){return n.e(59).then(n.bind(null,460))}}),lR({id:"ini",extensions:[".ini",".properties",".gitconfig"],filenames:["config",".gitattributes",".gitconfig",".editorconfig"],aliases:["Ini","ini"],loader:function(){return n.e(60).then(n.bind(null,461))}}),lR({id:"java",extensions:[".java",".jav"],aliases:["Java","java"],mimetypes:["text/x-java-source","text/x-java"],loader:function(){return n.e(61).then(n.bind(null,462))}}),lR({id:"javascript",extensions:[".js",".es6",".jsx"],firstLine:"^#!.*\\bnode",filenames:["jakefile"],aliases:["JavaScript","javascript","js"],mimetypes:["text/javascript"],loader:function(){return n.e(10).then(n.bind(null,463))}}),lR({id:"kotlin",extensions:[".kt"],aliases:["Kotlin","kotlin"],mimetypes:["text/x-kotlin-source","text/x-kotlin"],loader:function(){return n.e(62).then(n.bind(null,464))}}),lR({id:"less",extensions:[".less"],aliases:["Less","less"],mimetypes:["text/x-less","text/less"],loader:function(){return n.e(63).then(n.bind(null,465))}}),lR({id:"lua",extensions:[".lua"],aliases:["Lua","lua"],loader:function(){return n.e(64).then(n.bind(null,466))}}),lR({id:"markdown",extensions:[".md",".markdown",".mdown",".mkdn",".mkd",".mdwn",".mdtxt",".mdtext"],aliases:["Markdown","markdown"],loader:function(){return n.e(65).then(n.bind(null,467))}}),lR({id:"mips",extensions:[".s"],aliases:["MIPS","MIPS-V"],mimetypes:["text/x-mips","text/mips","text/plaintext"],loader:function(){return n.e(66).then(n.bind(null,468))}}),lR({id:"msdax",extensions:[".dax",".msdax"],aliases:["DAX","MSDAX"],loader:function(){return n.e(67).then(n.bind(null,469))}}),lR({id:"mysql",extensions:[],aliases:["MySQL","mysql"],loader:function(){return n.e(68).then(n.bind(null,470))}}),lR({id:"objective-c",extensions:[".m"],aliases:["Objective-C"],loader:function(){return n.e(69).then(n.bind(null,471))}}),lR({id:"pascal",extensions:[".pas",".p",".pp"],aliases:["Pascal","pas"],mimetypes:["text/x-pascal-source","text/x-pascal"],loader:function(){return n.e(70).then(n.bind(null,472))}}),lR({id:"pascaligo",extensions:[".ligo"],aliases:["Pascaligo","ligo"],loader:function(){return n.e(71).then(n.bind(null,473))}}),lR({id:"perl",extensions:[".pl"],aliases:["Perl","pl"],loader:function(){return n.e(72).then(n.bind(null,474))}}),lR({id:"pgsql",extensions:[],aliases:["PostgreSQL","postgres","pg","postgre"],loader:function(){return n.e(73).then(n.bind(null,475))}}),lR({id:"php",extensions:[".php",".php4",".php5",".phtml",".ctp"],aliases:["PHP","php"],mimetypes:["application/x-php"],loader:function(){return n.e(74).then(n.bind(null,476))}}),lR({id:"postiats",extensions:[".dats",".sats",".hats"],aliases:["ATS","ATS/Postiats"],loader:function(){return n.e(75).then(n.bind(null,477))}}),lR({id:"powerquery",extensions:[".pq",".pqm"],aliases:["PQ","M","Power Query","Power Query M"],loader:function(){return n.e(76).then(n.bind(null,478))}}),lR({id:"powershell",extensions:[".ps1",".psm1",".psd1"],aliases:["PowerShell","powershell","ps","ps1"],loader:function(){return n.e(77).then(n.bind(null,479))}}),lR({id:"pug",extensions:[".jade",".pug"],aliases:["Pug","Jade","jade"],loader:function(){return n.e(78).then(n.bind(null,480))}}),lR({id:"python",extensions:[".py",".rpy",".pyw",".cpy",".gyp",".gypi"],aliases:["Python","py"],firstLine:"^#!/.*\\bpython[0-9.-]*\\b",loader:function(){return n.e(79).then(n.bind(null,481))}}),lR({id:"r",extensions:[".r",".rhistory",".rprofile",".rt"],aliases:["R","r"],loader:function(){return n.e(80).then(n.bind(null,482))}}),lR({id:"razor",extensions:[".cshtml"],aliases:["Razor","razor"],mimetypes:["text/x-cshtml"],loader:function(){return n.e(81).then(n.bind(null,483))}}),lR({id:"redis",extensions:[".redis"],aliases:["redis"],loader:function(){return n.e(82).then(n.bind(null,484))}}),lR({id:"redshift",extensions:[],aliases:["Redshift","redshift"],loader:function(){return n.e(83).then(n.bind(null,485))}}),lR({id:"restructuredtext",extensions:[".rst"],aliases:["reStructuredText","restructuredtext"],loader:function(){return n.e(84).then(n.bind(null,486))}}),lR({id:"ruby",extensions:[".rb",".rbx",".rjs",".gemspec",".pp"],filenames:["rakefile"],aliases:["Ruby","rb"],loader:function(){return n.e(85).then(n.bind(null,487))}}),lR({id:"rust",extensions:[".rs",".rlib"],aliases:["Rust","rust"],loader:function(){return n.e(86).then(n.bind(null,488))}}),lR({id:"sb",extensions:[".sb"],aliases:["Small Basic","sb"],loader:function(){return n.e(87).then(n.bind(null,489))}}),lR({id:"scheme",extensions:[".scm",".ss",".sch",".rkt"],aliases:["scheme","Scheme"],loader:function(){return n.e(88).then(n.bind(null,490))}}),lR({id:"scss",extensions:[".scss"],aliases:["Sass","sass","scss"],mimetypes:["text/x-scss","text/scss"],loader:function(){return n.e(89).then(n.bind(null,491))}}),lR({id:"shell",extensions:[".sh",".bash"],aliases:["Shell","sh"],loader:function(){return n.e(90).then(n.bind(null,492))}}),lR({id:"sol",extensions:[".sol"],aliases:["sol","solidity","Solidity"],loader:function(){return n.e(91).then(n.bind(null,493))}}),lR({id:"aes",extensions:[".aes"],aliases:["aes","sophia","Sophia"],loader:function(){return n.e(92).then(n.bind(null,494))}}),lR({id:"sql",extensions:[".sql"],aliases:["SQL"],loader:function(){return n.e(93).then(n.bind(null,495))}}),lR({id:"st",extensions:[".st",".iecst",".iecplc",".lc3lib"],aliases:["StructuredText","scl","stl"],loader:function(){return n.e(94).then(n.bind(null,496))}}),lR({id:"swift",aliases:["Swift","swift"],extensions:[".swift"],mimetypes:["text/swift"],loader:function(){return n.e(95).then(n.bind(null,497))}}),lR({id:"tcl",extensions:[".tcl"],aliases:["tcl","Tcl","tcltk","TclTk","tcl/tk","Tcl/Tk"],loader:function(){return n.e(96).then(n.bind(null,498))}}),lR({id:"twig",extensions:[".twig"],aliases:["Twig","twig"],mimetypes:["text/x-twig"],loader:function(){return n.e(97).then(n.bind(null,499))}}),lR({id:"typescript",extensions:[".ts",".tsx"],aliases:["TypeScript","ts","typescript"],mimetypes:["text/typescript"],loader:function(){return n.e(98).then(n.bind(null,335))}}),lR({id:"vb",extensions:[".vb"],aliases:["Visual Basic","vb"],loader:function(){return n.e(99).then(n.bind(null,500))}}),lR({id:"xml",extensions:[".xml",".dtd",".ascx",".csproj",".config",".wxi",".wxl",".wxs",".xaml",".svg",".svgz",".opf",".xsl"],firstLine:"(\\<\\?xml.*)|(\\<svg)|(\\<\\!doctype\\s+svg)",aliases:["XML","xml"],mimetypes:["text/xml","application/xml","application/xaml+xml","application/xml-dtd"],loader:function(){return n.e(100).then(n.bind(null,501))}}),lR({id:"yaml",extensions:[".yaml",".yml"],aliases:["YAML","yaml","YML","yml"],mimetypes:["application/x-yaml"],loader:function(){return n.e(101).then(n.bind(null,502))}});n(398);var cR=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),dR=D_("editorOverviewRuler.bracketMatchForeground",{dark:"#A0A0A0",light:"#A0A0A0",hc:"#A0A0A0"},r("overviewRulerBracketMatchForeground","Overview ruler marker color for matching brackets.")),hR=function(e){function t(){return e.call(this,{id:"editor.action.jumpToBracket",label:r("smartSelect.jumpBracket","Go to Bracket"),alias:"Go to Bracket",precondition:void 0,kbOpts:{kbExpr:eC.editorTextFocus,primary:3160,weight:100}})||this}return cR(t,e),t.prototype.run=function(e,t){var n=gR.get(t);n&&n.jumpToBracket()},t}(kf),pR=function(e){function t(){return e.call(this,{id:"editor.action.selectToBracket",label:r("smartSelect.selectToBracket","Select to Bracket"),alias:"Select to Bracket",precondition:void 0,description:{description:"Select to Bracket",args:[{name:"args",schema:{type:"object",properties:{selectBrackets:{type:"boolean",default:!0}}}}]}})||this}return cR(t,e),t.prototype.run=function(e,t,n){var i=gR.get(t);if(i){var o=!0;n&&!1===n.selectBrackets&&(o=!1),i.selectToBracket(o)}},t}(kf),fR=function(e,t,n){this.position=e,this.brackets=t,this.options=n},gR=function(e){function t(t){var n=e.call(this)||this;return n._editor=t,n._lastBracketsData=[],n._lastVersionId=0,n._decorations=[],n._updateBracketsSoon=n._register(new wi((function(){return n._updateBrackets()}),50)),n._matchBrackets=n._editor.getOption(53),n._updateBracketsSoon.schedule(),n._register(t.onDidChangeCursorPosition((function(e){"never"!==n._matchBrackets&&n._updateBracketsSoon.schedule()}))),n._register(t.onDidChangeModelContent((function(e){n._updateBracketsSoon.schedule()}))),n._register(t.onDidChangeModel((function(e){n._lastBracketsData=[],n._decorations=[],n._updateBracketsSoon.schedule()}))),n._register(t.onDidChangeModelLanguageConfiguration((function(e){n._lastBracketsData=[],n._updateBracketsSoon.schedule()}))),n._register(t.onDidChangeConfiguration((function(e){e.hasChanged(53)&&(n._matchBrackets=n._editor.getOption(53),n._decorations=n._editor.deltaDecorations(n._decorations,[]),n._lastBracketsData=[],n._lastVersionId=0,n._updateBracketsSoon.schedule())}))),n}return cR(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.jumpToBracket=function(){if(this._editor.hasModel()){var e=this._editor.getModel(),t=this._editor.getSelections().map((function(t){var n=t.getStartPosition(),i=e.matchBracket(n),o=null;if(i)i[0].containsPosition(n)?o=i[1].getStartPosition():i[1].containsPosition(n)&&(o=i[0].getStartPosition());else{var r=e.findEnclosingBrackets(n);if(r)o=r[0].getStartPosition();else{var s=e.findNextBracket(n);s&&s.range&&(o=s.range.getStartPosition())}}return o?new Sn(o.lineNumber,o.column,o.lineNumber,o.column):new Sn(n.lineNumber,n.column,n.lineNumber,n.column)}));this._editor.setSelections(t),this._editor.revealRange(t[0])}},t.prototype.selectToBracket=function(e){if(this._editor.hasModel()){var t=this._editor.getModel(),n=[];this._editor.getSelections().forEach((function(i){var o=i.getStartPosition(),r=t.matchBracket(o);if(!r&&!(r=t.findEnclosingBrackets(o))){var s=t.findNextBracket(o);s&&s.range&&(r=t.matchBracket(s.range.getStartPosition()))}var a=null,u=null;if(r){r.sort(wn.compareRangesUsingStarts);var l=r[0],c=r[1];a=e?l.getStartPosition():l.getEndPosition(),u=e?c.getEndPosition():c.getStartPosition()}a&&u&&n.push(new Sn(a.lineNumber,a.column,u.lineNumber,u.column))})),n.length>0&&(this._editor.setSelections(n),this._editor.revealRange(n[0]))}},t.prototype._updateBrackets=function(){if("never"!==this._matchBrackets){this._recomputeBrackets();for(var e=[],t=0,n=0,i=this._lastBracketsData;n<i.length;n++){var o=i[n],r=o.brackets;r&&(e[t++]={range:r[0],options:o.options},e[t++]={range:r[1],options:o.options})}this._decorations=this._editor.deltaDecorations(this._decorations,e)}},t.prototype._recomputeBrackets=function(){if(!this._editor.hasModel())return this._lastBracketsData=[],void(this._lastVersionId=0);var e=this._editor.getSelections();if(e.length>100)return this._lastBracketsData=[],void(this._lastVersionId=0);var n=this._editor.getModel(),i=n.getVersionId(),o=[];this._lastVersionId===i&&(o=this._lastBracketsData);for(var r=[],s=0,a=0,u=e.length;a<u;a++){var l=e[a];l.isEmpty()&&(r[s++]=l.getStartPosition())}r.length>1&&r.sort(bn.compare);var c=[],d=0,h=0,p=o.length;for(a=0,u=r.length;a<u;a++){for(var f=r[a];h<p&&o[h].position.isBefore(f);)h++;if(h<p&&o[h].position.equals(f))c[d++]=o[h];else{var g=n.matchBracket(f),m=t._DECORATION_OPTIONS_WITH_OVERVIEW_RULER;g||"always"!==this._matchBrackets||(g=n.findEnclosingBrackets(f,20),m=t._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER),c[d++]=new fR(f,g,m)}}this._lastBracketsData=c,this._lastVersionId=i},t.ID="editor.contrib.bracketMatchingController",t._DECORATION_OPTIONS_WITH_OVERVIEW_RULER=kv.register({stickiness:1,className:"bracket-match",overviewRuler:{color:gg(dR),position:Va.Center}}),t._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER=kv.register({stickiness:1,className:"bracket-match"}),t}(He);Pf(gR.ID,gR),Tf(pR),Tf(hR),yg((function(e,t){var n=e.getColor(Qb);n&&t.addRule(".monaco-editor .bracket-match { background-color: "+n+"; }");var i=e.getColor(Jb);i&&t.addRule(".monaco-editor .bracket-match { border: 1px solid "+i+"; }")})),bf.appendMenuItem(19,{group:"5_infile_nav",command:{id:"editor.action.jumpToBracket",title:r({key:"miGoToBracket",comment:["&& denotes a mnemonic"]},"Go to &&Bracket")},order:2});var mR=function(){function e(e,t){this._selection=e,this._isMovingLeft=t,this._cutStartIndex=-1,this._cutEndIndex=-1,this._moved=!1,this._selectionId=null}return e.prototype.getEditOperations=function(e,t){var n=this._selection;if(this._selectionId=t.trackSelection(n),n.startLineNumber===n.endLineNumber&&(!this._isMovingLeft||0!==n.startColumn)&&(this._isMovingLeft||n.endColumn!==e.getLineMaxColumn(n.startLineNumber))){var i,o,r,s=n.selectionStartLineNumber,a=e.getLineContent(s);this._isMovingLeft?(i=a.substring(0,n.startColumn-2),o=a.substring(n.startColumn-1,n.endColumn-1),r=a.substring(n.startColumn-2,n.startColumn-1)+a.substring(n.endColumn-1)):(i=a.substring(0,n.startColumn-1)+a.substring(n.endColumn-1,n.endColumn),o=a.substring(n.startColumn-1,n.endColumn-1),r=a.substring(n.endColumn));var u=i+o+r;t.addEditOperation(new wn(s,1,s,e.getLineMaxColumn(s)),null),t.addEditOperation(new wn(s,1,s,1),u),this._cutStartIndex=n.startColumn+(this._isMovingLeft?-1:1),this._cutEndIndex=this._cutStartIndex+n.endColumn-n.startColumn,this._moved=!0}},e.prototype.computeCursorState=function(e,t){var n=t.getTrackedSelection(this._selectionId);return this._moved&&(n=(n=n.setStartPosition(n.startLineNumber,this._cutStartIndex)).setEndPosition(n.startLineNumber,this._cutEndIndex)),n},e}(),vR=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),_R=function(e){function t(t,n){var i=e.call(this,n)||this;return i.left=t,i}return vR(t,e),t.prototype.run=function(e,t){if(t.hasModel()){for(var n=[],i=0,o=t.getSelections();i<o.length;i++){var r=o[i];n.push(new mR(r,this.left))}t.pushUndoStop(),t.executeCommands(this.id,n),t.pushUndoStop()}},t}(kf),yR=function(e){function t(){return e.call(this,!0,{id:"editor.action.moveCarretLeftAction",label:r("caret.moveLeft","Move Caret Left"),alias:"Move Caret Left",precondition:eC.writable})||this}return vR(t,e),t}(_R),bR=function(e){function t(){return e.call(this,!1,{id:"editor.action.moveCarretRightAction",label:r("caret.moveRight","Move Caret Right"),alias:"Move Caret Right",precondition:eC.writable})||this}return vR(t,e),t}(_R);Tf(yR),Tf(bR);var wR=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Tf(function(e){function t(){return e.call(this,{id:"editor.action.transposeLetters",label:r("transposeLetters.label","Transpose Letters"),alias:"Transpose Letters",precondition:eC.writable,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:306},weight:100}})||this}return wR(t,e),t.prototype.run=function(e,t){if(t.hasModel()){for(var n=t.getModel(),i=[],o=0,r=t.getSelections();o<r.length;o++){var s=r[o];if(s.isEmpty()){var a=s.startLineNumber,u=s.startColumn,l=n.getLineMaxColumn(a);if(1!==a||1!==u&&(2!==u||2!==l)){var c=u===l?s.getPosition():jw.rightPosition(n,s.getPosition().lineNumber,s.getPosition().column),d=jw.leftPosition(n,c.lineNumber,c.column),h=jw.leftPosition(n,d.lineNumber,d.column),p=n.getValueInRange(wn.fromPositions(h,d)),f=n.getValueInRange(wn.fromPositions(d,c)),g=wn.fromPositions(h,c);i.push(new Fw(g,f+p))}}}i.length>0&&(t.pushUndoStop(),t.executeCommands(this.id,i),t.pushUndoStop())}},t}(kf));n(399);var CR=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),SR=b||document.queryCommandSupported("cut"),LR=b||document.queryCommandSupported("copy"),xR=LR&&!Hn,DR=b||!Un&&document.queryCommandSupported("paste"),NR=function(e){function t(t,n){var i=e.call(this,n)||this;return i.browserCommand=t,i}return CR(t,e),t.prototype.runCommand=function(e,t){var n=e.get(Pn).getFocusedCodeEditor();n&&n.hasTextFocus()?n.trigger("keyboard",this.id,t):document.execCommand(this.browserCommand)},t.prototype.run=function(e,t){t.focus(),document.execCommand(this.browserCommand)},t}(kf),kR=function(e){function t(){var t={kbExpr:eC.textInputFocus,primary:2102,win:{primary:2102,secondary:[1044]},weight:100};return b||(t=void 0),e.call(this,"cut",{id:"editor.action.clipboardCutAction",label:r("actions.clipboard.cutLabel","Cut"),alias:"Cut",precondition:eC.writable,kbOpts:t,contextMenuOpts:{group:"9_cutcopypaste",order:1},menuOpts:{menuId:17,group:"2_ccp",title:r({key:"miCut",comment:["&& denotes a mnemonic"]},"Cu&&t"),order:1}})||this}return CR(t,e),t.prototype.run=function(t,n){n.hasModel()&&(!n.getOption(25)&&n.getSelection().isEmpty()||e.prototype.run.call(this,t,n))},t}(NR),ER=function(e){function t(){var t={kbExpr:eC.textInputFocus,primary:2081,win:{primary:2081,secondary:[2067]},weight:100};return b||(t=void 0),e.call(this,"copy",{id:"editor.action.clipboardCopyAction",label:r("actions.clipboard.copyLabel","Copy"),alias:"Copy",precondition:void 0,kbOpts:t,contextMenuOpts:{group:"9_cutcopypaste",order:2},menuOpts:{menuId:17,group:"2_ccp",title:r({key:"miCopy",comment:["&& denotes a mnemonic"]},"&&Copy"),order:2}})||this}return CR(t,e),t.prototype.run=function(t,n){n.hasModel()&&(!n.getOption(25)&&n.getSelection().isEmpty()||e.prototype.run.call(this,t,n))},t}(NR),IR=function(e){function t(){var t={kbExpr:eC.textInputFocus,primary:2100,win:{primary:2100,secondary:[1043]},weight:100};return b||(t=void 0),e.call(this,"paste",{id:"editor.action.clipboardPasteAction",label:r("actions.clipboard.pasteLabel","Paste"),alias:"Paste",precondition:eC.writable,kbOpts:t,contextMenuOpts:{group:"9_cutcopypaste",order:3},menuOpts:{menuId:17,group:"2_ccp",title:r({key:"miPaste",comment:["&& denotes a mnemonic"]},"&&Paste"),order:3}})||this}return CR(t,e),t}(NR),OR=function(e){function t(){return e.call(this,"copy",{id:"editor.action.clipboardCopyWithSyntaxHighlightingAction",label:r("actions.clipboard.copyWithSyntaxHighlightingLabel","Copy With Syntax Highlighting"),alias:"Copy With Syntax Highlighting",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:0,weight:100}})||this}return CR(t,e),t.prototype.run=function(t,n){n.hasModel()&&(!n.getOption(25)&&n.getSelection().isEmpty()||(v_.forceCopyWithSyntaxHighlighting=!0,e.prototype.run.call(this,t,n),v_.forceCopyWithSyntaxHighlighting=!1))},t}(NR);SR&&Tf(kR),LR&&Tf(ER),DR&&Tf(IR),xR&&Tf(OR);var MR=function(){function e(e){this.executor=e,this._didRun=!1}return e.prototype.getValue=function(){if(!this._didRun)try{this._value=this.executor()}catch(e){this._error=e}finally{this._didRun=!0}if(this._error)throw this._error;return this._value},Object.defineProperty(e.prototype,"rawValue",{get:function(){return this._value},enumerable:!0,configurable:!0}),e}(),TR=function(){function e(e){this.value=e}return e.prototype.equals=function(e){return this.value===e.value},e.prototype.contains=function(t){return this.equals(t)||""===this.value||vr(t.value,this.value+e.sep)},e.prototype.intersects=function(e){return this.contains(e)||e.contains(this)},e.prototype.append=function(t){return new e(this.value+e.sep+t)},e.sep=".",e.None=new e("@@none@@"),e.Empty=new e(""),e.QuickFix=new e("quickfix"),e.Refactor=new e("refactor"),e.Source=new e("source"),e.SourceOrganizeImports=e.Source.append("organizeImports"),e.SourceFixAll=e.Source.append("fixAll"),e}();function PR(e,t,n){return!!t.contains(e)&&(!n||!t.contains(n))}var RR=function(){function e(e,t,n){this.kind=e,this.apply=t,this.preferred=n}return e.fromUser=function(t,n){return t&&"object"==typeof t?new e(e.getKindFromUser(t,n.kind),e.getApplyFromUser(t,n.apply),e.getPreferredUser(t)):new e(n.kind,n.apply,!1)},e.getApplyFromUser=function(e,t){switch("string"==typeof e.apply?e.apply.toLowerCase():""){case"first":return"first";case"never":return"never";case"ifsingle":return"ifSingle";default:return t}},e.getKindFromUser=function(e,t){return"string"==typeof e.kind?new TR(e.kind):t},e.getPreferredUser=function(e){return"boolean"==typeof e.preferred&&e.preferred},e}(),AR=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),FR=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},WR=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},VR=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},BR=function(e){function t(n,i){var o=e.call(this)||this;return o._register(i),o.allActions=Ni(VR(n),t.codeActionsComparator),o.validActions=o.allActions.filter((function(e){return!e.disabled})),o}return AR(t,e),t.codeActionsComparator=function(e,t){return Oi(e.diagnostics)?Oi(t.diagnostics)?e.diagnostics[0].message.localeCompare(t.diagnostics[0].message):-1:Oi(t.diagnostics)?1:0},Object.defineProperty(t.prototype,"hasAutoFix",{get:function(){return this.validActions.some((function(e){return!!e.kind&&TR.QuickFix.contains(new TR(e.kind))&&!!e.isPreferred}))},enumerable:!0,configurable:!0}),t}(He);function HR(e,t,n,i){var o,r=this,s=n.filter||{},a={only:null===(o=s.include)||void 0===o?void 0:o.value,trigger:n.type},u=new sD(e,i),l=function(e,t){return Vu.all(e).filter((function(e){return!e.providedCodeActionKinds||e.providedCodeActionKinds.some((function(e){return function(e,t){return!(e.include&&!e.include.intersects(t))&&((!e.excludes||!e.excludes.some((function(n){return PR(t,n,e.include)})))&&!(!e.includeSourceActions&&TR.Source.contains(t)))}(t,new TR(e))}))}))}(e,s),c=new Be,d=l.map((function(n){return FR(r,void 0,void 0,(function(){var i,o;return WR(this,(function(r){switch(r.label){case 0:return r.trys.push([0,2,,3]),[4,n.provideCodeActions(e,t,a,u.token)];case 1:return i=r.sent(),u.token.isCancellationRequested||!i?[2,[]]:(c.add(i),[2,i.actions.filter((function(e){return e&&function(e,t){var n=t.kind?new TR(t.kind):void 0;return!!(!e.include||n&&e.include.contains(n))&&(!(e.excludes&&n&&e.excludes.some((function(t){return PR(n,t,e.include)})))&&(!(!e.includeSourceActions&&n&&TR.Source.contains(n))&&!(e.onlyIncludePreferredActions&&!t.isPreferred)))}(s,e)}))]);case 2:if(Ee(o=r.sent()))throw o;return Ne(o),[2,[]];case 3:return[2]}}))}))})),h=Vu.onDidChange((function(){xi(Vu.all(e),l)||u.cancel()}));return Promise.all(d).then(Fi).then((function(e){return new BR(e,c)})).finally((function(){h.dispose(),u.dispose()}))}Ef("_executeCodeActionProvider",(function(e,t){return FR(this,void 0,void 0,(function(){var n,i,o,r,s,a;return WR(this,(function(u){switch(u.label){case 0:if(n=t.resource,i=t.rangeOrSelection,o=t.kind,!(n instanceof Et))throw Oe();if(!(r=e.get(du).getModel(n)))throw Oe();if(!(s=Sn.isISelection(i)?Sn.liftSelection(i):wn.isIRange(i)?r.validateRange(i):void 0))throw Oe();return[4,HR(r,s,{type:2,filter:{includeSourceActions:!0,include:o&&o.value?new TR(o.value):void 0}},et.None)];case 1:return a=u.sent(),setTimeout((function(){return a.dispose()}),100),[2,a.validActions]}}))}))}));n(400);var zR=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),jR=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},UR=function(e,t){return function(n,i){t(n,i,e)}},KR=function(e){function t(n,i){var o=e.call(this)||this;return o.closeTimeout=3e3,o._messageWidget=o._register(new ze),o._messageListeners=o._register(new Be),o._editor=n,o._visible=t.MESSAGE_VISIBLE.bindTo(i),o._register(o._editor.onDidAttemptReadOnlyEdit((function(){return o._onDidAttemptReadOnlyEdit()}))),o}return zR(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.dispose=function(){e.prototype.dispose.call(this),this._visible.reset()},t.prototype.showMessage=function(e,t){var n,i=this;Zp(e),this._visible.set(!0),this._messageWidget.clear(),this._messageListeners.clear(),this._messageWidget.value=new qR(this._editor,t,e),this._messageListeners.add(this._editor.onDidBlurEditorText((function(){return i.closeMessage()}))),this._messageListeners.add(this._editor.onDidChangeCursorPosition((function(){return i.closeMessage()}))),this._messageListeners.add(this._editor.onDidDispose((function(){return i.closeMessage()}))),this._messageListeners.add(this._editor.onDidChangeModel((function(){return i.closeMessage()}))),this._messageListeners.add(new yi((function(){return i.closeMessage()}),this.closeTimeout)),this._messageListeners.add(this._editor.onMouseMove((function(e){e.target.position&&(n?n.containsPosition(e.target.position)||i.closeMessage():n=new wn(t.lineNumber-3,1,e.target.position.lineNumber+3,1))})))},t.prototype.closeMessage=function(){this._visible.reset(),this._messageListeners.clear(),this._messageWidget.value&&this._messageListeners.add(qR.fadeOut(this._messageWidget.value))},t.prototype._onDidAttemptReadOnlyEdit=function(){this._editor.hasModel()&&this.showMessage(r("editor.readonly","Cannot edit in read-only editor"),this._editor.getPosition())},t.ID="editor.contrib.messageController",t.MESSAGE_VISIBLE=new Kh("messageVisible",!1),t=jR([UR(1,qh)],t)}(He);Mf(new(Nf.bindToContribution(KR.get))({id:"leaveEditorMessage",precondition:KR.MESSAGE_VISIBLE,handler:function(e){return e.closeMessage()},kbOpts:{weight:130,primary:9}}));var qR=function(){function e(e,t,n){var i=t.lineNumber,o=t.column;this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._editor=e,this._editor.revealLinesInCenterIfOutsideViewport(i,i,0),this._position={lineNumber:i,column:o-1},this._domNode=document.createElement("div"),this._domNode.classList.add("monaco-editor-overlaymessage");var r=document.createElement("div");r.classList.add("message"),r.textContent=n,this._domNode.appendChild(r);var s=document.createElement("div");s.classList.add("anchor"),this._domNode.appendChild(s),this._editor.addContentWidget(this),this._domNode.classList.add("fadeIn")}return e.fadeOut=function(e){var t,n=function(){e.dispose(),clearTimeout(t),e.getDomNode().removeEventListener("animationend",n)};return t=setTimeout(n,110),e.getDomNode().addEventListener("animationend",n),e.getDomNode().classList.add("fadeOut"),{dispose:n}},e.prototype.dispose=function(){this._editor.removeContentWidget(this)},e.prototype.getId=function(){return"messageoverlay"},e.prototype.getDomNode=function(){return this._domNode},e.prototype.getPosition=function(){return{position:this._position,preference:[1,2]}},e}();Pf(KR.ID,KR),yg((function(e,t){var n=e.getColor(U_);if(n){var i="hc"===e.type?2:1;t.addRule(".monaco-editor .monaco-editor-overlaymessage .anchor { border-top-color: "+n+"; }"),t.addRule(".monaco-editor .monaco-editor-overlaymessage .message { border: "+i+"px solid "+n+"; }")}var o=e.getColor(z_);o&&t.addRule(".monaco-editor .monaco-editor-overlaymessage .message { background-color: "+o+"; }");var r=e.getColor(j_);r&&t.addRule(".monaco-editor .monaco-editor-overlaymessage .message { color: "+r+"; }")}));var GR,ZR=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),YR=function(){return(YR=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},XR=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},$R=function(e,t){return function(n,i){t(n,i,e)}},QR=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},JR=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},eA=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},tA=function(e){function t(t,n){var i=e.call(this,t.command?t.command.id:t.title,t.title,void 0,!t.disabled,n)||this;return i.action=t,i}return ZR(t,e),t}(df),nA=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r._editor=t,r._delegate=n,r._contextMenuService=i,r._visible=!1,r._showingActions=r._register(new ze),r._keybindingResolver=new iA({getKeybindings:function(){return o.getKeybindings()}}),r}return ZR(t,e),Object.defineProperty(t.prototype,"isVisible",{get:function(){return this._visible},enumerable:!0,configurable:!0}),t.prototype.show=function(e,t,n,i){return QR(this,void 0,void 0,(function(){var o,r,s,a,u=this;return JR(this,(function(l){if(!(o=i.includeDisabledActions?t.allActions:t.validActions).length)return this._visible=!1,[2];if(!this._editor.getDomNode())throw this._visible=!1,Ie();return this._visible=!0,this._showingActions.value=t,r=this.getMenuActions(e,o),s=bn.isIPosition(n)?this._toCoords(n):n||{x:0,y:0},a=this._keybindingResolver.getResolver(),this._contextMenuService.showContextMenu({getAnchor:function(){return s},getActions:function(){return r},onHide:function(){u._visible=!1,u._editor.focus()},autoSelectFirstItem:!0,getKeyBinding:function(e){return e instanceof tA?a(e.action):void 0}}),[2]}))}))},t.prototype.getMenuActions=function(e,t){var n,i,o=this,r=function(e){return new tA(e,(function(){return o._delegate.onSelectCodeAction(e)}))},s=t.map(r),a=this._editor.getModel();if(a&&s.length)for(var u=0,l=Vu.all(a);u<l.length;u++){var c=l[u];if(c._getAdditionalMenuItems){var d=c._getAdditionalMenuItems({trigger:e.type,only:null===(i=null===(n=e.filter)||void 0===n?void 0:n.include)||void 0===i?void 0:i.value},t);d.length&&s.push.apply(s,eA([new fD],d.map((function(e){return r({title:e.title,command:e})}))))}}return s},t.prototype._toCoords=function(e){if(!this._editor.hasModel())return{x:0,y:0};this._editor.revealPosition(e,1),this._editor.render();var t=this._editor.getScrolledVisiblePosition(e),n=Oo(this._editor.getDomNode());return{x:n.left+t.left,y:n.top+t.top+t.height}},t=XR([$R(2,DD),$R(3,XD)],t)}(He),iA=function(){function e(e){this._keybindingProvider=e}return e.prototype.getResolver=function(){var t=this,n=new MR((function(){return t._keybindingProvider.getKeybindings().filter((function(t){return e.codeActionCommands.indexOf(t.command)>=0})).filter((function(e){return e.resolvedKeybinding})).map((function(e){var t=e.commandArgs;return"editor.action.organizeImports"===e.command?t={kind:TR.SourceOrganizeImports.value}:"editor.action.fixAll"===e.command&&(t={kind:TR.SourceFixAll.value}),YR({resolvedKeybinding:e.resolvedKeybinding},RR.fromUser(t,{kind:TR.None,apply:"never"}))}))}));return function(e){if(e.kind){var i=t.bestKeybindingForCodeAction(e,n.getValue());return null==i?void 0:i.resolvedKeybinding}}},e.prototype.bestKeybindingForCodeAction=function(e,t){if(e.kind){var n=new TR(e.kind);return t.filter((function(e){return e.kind.contains(n)})).filter((function(t){return!t.preferred||e.isPreferred})).reduceRight((function(e,t){return e?e.kind.contains(t.kind)?t:e:t}),void 0)}},e.codeActionCommands=["editor.action.refactor","editor.action.codeAction","editor.action.sourceAction","editor.action.organizeImports","editor.action.fixAll"],e}(),oA=(n(401),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),rA=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},sA=function(e,t){return function(n,i){t(n,i,e)}};!function(e){e.Hidden={type:0};var t=function(e,t,n,i){this.actions=e,this.trigger=t,this.editorPosition=n,this.widgetPosition=i,this.type=1};e.Showing=t}(GR||(GR={}));var aA=function(e){function t(t,n,i,o){var r,s=e.call(this)||this;return s._editor=t,s._quickFixActionId=n,s._preferredFixActionId=i,s._keybindingService=o,s._onClick=s._register(new nt),s.onClick=s._onClick.event,s._state=GR.Hidden,s._domNode=document.createElement("div"),s._domNode.className="codicon codicon-lightbulb",s._editor.addContentWidget(s),s._register(s._editor.onDidChangeModelContent((function(e){var t=s._editor.getModel();(1!==s.state.type||!t||s.state.editorPosition.lineNumber>=t.getLineCount())&&s.hide()}))),jf.ignoreTarget(s._domNode),s._register(ho(s._domNode,lo((function(e){if(1===s.state.type){s._editor.focus(),e.preventDefault();var t=Oo(s._domNode),n=t.top,i=t.height,o=s._editor.getOption(49),r=Math.floor(o/3);null!==s.state.widgetPosition.position&&s.state.widgetPosition.position.lineNumber<s.state.editorPosition.lineNumber&&(r+=o),s._onClick.fire({x:e.posx,y:n+i+r,actions:s.state.actions,trigger:s.state.trigger})}})),r)),s._register(uo(s._domNode,"mouseenter",(function(e){if(1==(1&e.buttons)){s.hide();var t=new Kf;t.startMonitoring(e.target,e.buttons,Uf,(function(){}),(function(){t.dispose()}))}}))),s._register(s._editor.onDidChangeConfiguration((function(e){e.hasChanged(47)&&!s._editor.getOption(47).enabled&&s.hide()}))),s._updateLightBulbTitle(),s._register(s._keybindingService.onDidUpdateKeybindings(s._updateLightBulbTitle,s)),s}return oA(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._editor.removeContentWidget(this)},t.prototype.getId=function(){return"LightBulbWidget"},t.prototype.getDomNode=function(){return this._domNode},t.prototype.getPosition=function(){return 1===this._state.type?this._state.widgetPosition:null},t.prototype.update=function(e,n,i){var o=this;if(e.validActions.length<=0)return this.hide();var r=this._editor.getOptions();if(!r.get(47).enabled)return this.hide();var s=i.lineNumber,a=i.column,u=this._editor.getModel();if(!u)return this.hide();var l=u.getOptions().tabSize,c=r.get(34),d=u.getLineContent(s),h=Cv.computeIndentLevel(d,l),p=function(e){return e>2&&o._editor.getTopForLineNumber(e)===o._editor.getTopForLineNumber(e-1)},f=s;if(!(c.spaceWidth*h>22))if(s>1&&!p(s-1))f-=1;else if(p(s+1)){if(a*c.spaceWidth<22)return this.hide()}else f+=1;this.state=new GR.Showing(e,n,i,{position:{lineNumber:f,column:1},preference:t._posPref}),so(this._domNode,"codicon-lightbulb-autofix",e.hasAutoFix),this._editor.layoutContentWidget(this)},t.prototype.hide=function(){this.state=GR.Hidden,this._editor.layoutContentWidget(this)},Object.defineProperty(t.prototype,"state",{get:function(){return this._state},set:function(e){this._state=e,this._updateLightBulbTitle()},enumerable:!0,configurable:!0}),t.prototype._updateLightBulbTitle=function(){if(1===this.state.type&&this.state.actions.hasAutoFix){var e=this._keybindingService.lookupKeybinding(this._preferredFixActionId);if(e)return void(this.title=r("prefferedQuickFixWithKb","Show Fixes. Preferred Fix Available ({0})",e.getLabel()))}var t=this._keybindingService.lookupKeybinding(this._quickFixActionId);this.title=t?r("quickFixWithKb","Show Fixes ({0})",t.getLabel()):r("quickFix","Show Fixes")},Object.defineProperty(t.prototype,"title",{set:function(e){this._domNode.title=e},enumerable:!0,configurable:!0}),t._posPref=[0],t=rA([sA(3,XD)],t)}(He);yg((function(e,t){var n=e.getColor(Vy);n&&t.addRule("\n\t\t.monaco-editor .contentWidgets .codicon-lightbulb {\n\t\t\tcolor: "+n+";\n\t\t}");var i=e.getColor(By);i&&t.addRule("\n\t\t.monaco-editor .contentWidgets .codicon-lightbulb-autofix {\n\t\t\tcolor: "+i+";\n\t\t}")}));var uA,lA=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),cA=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},dA=function(e,t){return function(n,i){t(n,i,e)}},hA=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},pA=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},fA=function(e){function t(t,n,i,o,r){var s=e.call(this)||this;return s._editor=t,s.delegate=o,s._activeCodeActions=s._register(new ze),s._codeActionWidget=new MR((function(){return s._register(r.createInstance(nA,s._editor,{onSelectCodeAction:function(e){return hA(s,void 0,void 0,(function(){return pA(this,(function(t){return this.delegate.applyCodeAction(e,!0),[2]}))}))}}))})),s._lightBulbWidget=new MR((function(){var e=s._register(r.createInstance(aA,s._editor,n,i));return s._register(e.onClick((function(e){return s.showCodeActionList(e.trigger,e.actions,e,{includeDisabledActions:!1})}))),e})),s}return lA(t,e),t.prototype.update=function(e){var t,n,i;return hA(this,void 0,void 0,(function(){var o,r,s,a;return pA(this,(function(u){switch(u.label){case 0:if(1!==e.type)return null===(t=this._lightBulbWidget.rawValue)||void 0===t||t.hide(),[2];u.label=1;case 1:return u.trys.push([1,3,,4]),[4,e.actions];case 2:return o=u.sent(),[3,4];case 3:return De(u.sent()),[2];case 4:if(this._lightBulbWidget.getValue().update(o,e.trigger,e.position),2!==e.trigger.type)return[3,11];if(!(null===(n=e.trigger.filter)||void 0===n?void 0:n.include))return[3,10];if(!(r=this.tryGetValidActionToApply(e.trigger,o)))return[3,9];u.label=5;case 5:return u.trys.push([5,,7,8]),[4,this.delegate.applyCodeAction(r,!1)];case 6:return u.sent(),[3,8];case 7:return o.dispose(),[7];case 8:return[2];case 9:if(e.trigger.context&&(s=this.getInvalidActionThatWouldHaveBeenApplied(e.trigger,o))&&s.disabled)return KR.get(this._editor).showMessage(s.disabled,e.trigger.context.position),o.dispose(),[2];u.label=10;case 10:return a=!!(null===(i=e.trigger.filter)||void 0===i?void 0:i.include),!e.trigger.context||o.allActions.length&&(a||o.validActions.length)?(this._activeCodeActions.value=o,this._codeActionWidget.getValue().show(e.trigger,o,e.position,{includeDisabledActions:a}),[3,12]):(KR.get(this._editor).showMessage(e.trigger.context.notAvailableMessage,e.trigger.context.position),this._activeCodeActions.value=o,o.dispose(),[2]);case 11:this._codeActionWidget.getValue().isVisible?o.dispose():this._activeCodeActions.value=o,u.label=12;case 12:return[2]}}))}))},t.prototype.getInvalidActionThatWouldHaveBeenApplied=function(e,t){if(t.allActions.length)return"first"===e.autoApply&&0===t.validActions.length||"ifSingle"===e.autoApply&&1===t.allActions.length?zi(t.allActions,(function(e){return e.disabled})):void 0},t.prototype.tryGetValidActionToApply=function(e,t){if(t.validActions.length)return"first"===e.autoApply&&t.validActions.length>0||"ifSingle"===e.autoApply&&1===t.validActions.length?t.validActions[0]:void 0},t.prototype.showCodeActionList=function(e,t,n,i){return hA(this,void 0,void 0,(function(){return pA(this,(function(o){return this._codeActionWidget.getValue().show(e,t,n,i),[2]}))}))},t=cA([dA(4,In)],t)}(He),gA=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),mA=new Kh("supportedCodeAction",""),vA=function(e){function t(t,n,i,o){void 0===o&&(o=250);var r=e.call(this)||this;return r._editor=t,r._markerService=n,r._signalChange=i,r._delay=o,r._autoTriggerTimer=r._register(new yi),r._register(r._markerService.onMarkerChanged((function(e){return r._onMarkerChanges(e)}))),r._register(r._editor.onDidChangeCursorPosition((function(){return r._onCursorChange()}))),r}return gA(t,e),t.prototype.trigger=function(e){var t=this._getRangeOfSelectionUnlessWhitespaceEnclosed(e);return this._createEventAndSignalChange(e,t)},t.prototype._onMarkerChanges=function(e){var t=this,n=this._editor.getModel();n&&e.some((function(e){return xs(e,n.uri)}))&&this._autoTriggerTimer.cancelAndSet((function(){t.trigger({type:1})}),this._delay)},t.prototype._onCursorChange=function(){var e=this;this._autoTriggerTimer.cancelAndSet((function(){e.trigger({type:1})}),this._delay)},t.prototype._getRangeOfMarker=function(e){var t=this._editor.getModel();if(t)for(var n=0,i=this._markerService.read({resource:t.uri});n<i.length;n++){var o=i[n],r=t.validateRange(o);if(wn.intersectRanges(r,e))return wn.lift(r)}},t.prototype._getRangeOfSelectionUnlessWhitespaceEnclosed=function(e){if(this._editor.hasModel()){var t=this._editor.getModel(),n=this._editor.getSelection();if(n.isEmpty()&&1===e.type){var i=n.getPosition(),o=i.lineNumber,r=i.column,s=t.getLineContent(o);if(0===s.length)return;if(1===r){if(/\s/.test(s[0]))return}else if(r===t.getLineMaxColumn(o)){if(/\s/.test(s[s.length-1]))return}else if(/\s/.test(s[r-2])&&/\s/.test(s[r-1]))return}return n}},t.prototype._createEventAndSignalChange=function(e,t){var n=this._editor.getModel();if(t&&n){var i=this._getRangeOfMarker(t),o=i?i.getStartPosition():t.getStartPosition(),r={trigger:e,selection:t,position:o};return this._signalChange(r),r}this._signalChange(void 0)},t}(He);!function(e){e.Empty={type:0};var t=function(e,t,n,i){this.trigger=e,this.rangeOrSelection=t,this.position=n,this.actions=i,this.type=1};e.Triggered=t}(uA||(uA={}));var _A=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r._editor=t,r._markerService=n,r._progressService=o,r._codeActionOracle=r._register(new ze),r._state=uA.Empty,r._onDidChangeState=r._register(new nt),r.onDidChangeState=r._onDidChangeState.event,r._supportedCodeActions=mA.bindTo(i),r._register(r._editor.onDidChangeModel((function(){return r._update()}))),r._register(r._editor.onDidChangeModelLanguage((function(){return r._update()}))),r._register(Vu.onDidChange((function(){return r._update()}))),r._update(),r}return gA(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this.setState(uA.Empty,!0)},t.prototype._update=function(){var e=this;this._codeActionOracle.value=void 0,this.setState(uA.Empty);var t=this._editor.getModel();if(t&&Vu.has(t)&&!this._editor.getOption(68)){for(var n=[],i=0,o=Vu.all(t);i<o.length;i++){var r=o[i];Array.isArray(r.providedCodeActionKinds)&&n.push.apply(n,r.providedCodeActionKinds)}this._supportedCodeActions.set(n.join(" ")),this._codeActionOracle.value=new vA(this._editor,this._markerService,(function(n){if(n){var i=hi((function(e){return HR(t,n.selection,n.trigger,e)}));e._progressService&&2===n.trigger.type&&e._progressService.showWhile(i,250),e.setState(new uA.Triggered(n.trigger,n.selection,n.position,i))}else e.setState(uA.Empty)}),void 0),this._codeActionOracle.value.trigger({type:1})}else this._supportedCodeActions.reset()},t.prototype.trigger=function(e){this._codeActionOracle.value&&this._codeActionOracle.value.trigger(e)},t.prototype.setState=function(e,t){e!==this._state&&(1===this._state.type&&this._state.actions.cancel(),this._state=e,t||this._onDidChangeState.fire(e))},t}(He),yA=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),bA=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},wA=function(e,t){return function(n,i){t(n,i,e)}},CA=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},SA=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},LA=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i};function xA(e){return Rh.regex(mA.keys()[0],new RegExp("(\\s|^)"+gr(e.value)+"\\b"))}var DA={type:"object",required:["kind"],defaultSnippets:[{body:{kind:""}}],properties:{kind:{type:"string",description:r("args.schema.kind","Kind of the code action to run.")},apply:{type:"string",description:r("args.schema.apply","Controls when the returned actions are applied."),default:"ifSingle",enum:["first","ifSingle","never"],enumDescriptions:[r("args.schema.apply.first","Always apply the first returned code action."),r("args.schema.apply.ifSingle","Apply the first returned code action if it is the only one."),r("args.schema.apply.never","Do not apply the returned code actions.")]},preferred:{type:"boolean",default:!1,description:r("args.schema.preferred","Controls if only preferred code actions should be returned.")}}},NA=function(e){function t(t,n,i,o,r){var s=e.call(this)||this;return s._instantiationService=r,s._editor=t,s._model=s._register(new _A(s._editor,n,i,o)),s._register(s._model.onDidChangeState((function(e){return s.update(e)}))),s._ui=new MR((function(){return s._register(new fA(t,IA.Id,AA.Id,{applyCodeAction:function(e,t){return CA(s,void 0,void 0,(function(){return SA(this,(function(n){switch(n.label){case 0:return n.trys.push([0,,2,3]),[4,this._applyCodeAction(e)];case 1:return n.sent(),[3,3];case 2:return t&&this._trigger({type:1,filter:{}}),[7];case 3:return[2]}}))}))}},s._instantiationService))})),s}return yA(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.update=function(e){this._ui.getValue().update(e)},t.prototype.showCodeActions=function(e,t,n){return this._ui.getValue().showCodeActionList(e,t,n,{includeDisabledActions:!1})},t.prototype.manualTriggerAtCurrentPosition=function(e,t,n){if(this._editor.hasModel()){KR.get(this._editor).closeMessage();var i=this._editor.getPosition();this._trigger({type:2,filter:t,autoApply:n,context:{notAvailableMessage:e,position:i}})}},t.prototype._trigger=function(e){return this._model.trigger(e)},t.prototype._applyCodeAction=function(e){return this._instantiationService.invokeFunction(kA,e,this._editor)},t.ID="editor.contrib.quickFixController",t=bA([wA(1,MM),wA(2,qh),wA(3,OD),wA(4,In)],t)}(He);function kA(e,t,n){return CA(this,void 0,void 0,(function(){var i,o,s,a,u,l;return SA(this,(function(c){switch(c.label){case 0:return i=e.get(uN),o=e.get(la),s=e.get(Lf),a=e.get(ap),s.publicLog2("codeAction.applyCodeAction",{codeActionTitle:t.title,codeActionKind:t.kind,codeActionIsPreferred:!!t.isPreferred}),t.edit?[4,i.apply(t.edit,{editor:n})]:[3,2];case 1:c.sent(),c.label=2;case 2:if(!t.command)return[3,6];c.label=3;case 3:return c.trys.push([3,5,,6]),[4,o.executeCommand.apply(o,LA([t.command.id],t.command.arguments||[]))];case 4:return c.sent(),[3,6];case 5:return u=c.sent(),l="string"==typeof(d=u)?d:d instanceof Error&&"string"==typeof d.message?d.message:void 0,a.error("string"==typeof l?l:r("applyCodeActionFailed","An unknown error occurred while applying the code action")),[3,6];case 6:return[2]}var d}))}))}function EA(e,t,n,i){if(e.hasModel()){var o=NA.get(e);o&&o.manualTriggerAtCurrentPosition(t,n,i)}}var IA=function(e){function t(){return e.call(this,{id:t.Id,label:r("quickfix.trigger.label","Quick Fix..."),alias:"Quick Fix...",precondition:Rh.and(eC.writable,eC.hasCodeActionsProvider),kbOpts:{kbExpr:eC.editorTextFocus,primary:2132,weight:100}})||this}return yA(t,e),t.prototype.run=function(e,t){return EA(t,r("editor.action.quickFix.noneMessage","No code actions available"),void 0,void 0)},t.Id="editor.action.quickFix",t}(kf),OA=function(e){function t(){return e.call(this,{id:"editor.action.codeAction",precondition:Rh.and(eC.writable,eC.hasCodeActionsProvider),description:{description:"Trigger a code action",args:[{name:"args",schema:DA}]}})||this}return yA(t,e),t.prototype.runEditorCommand=function(e,t,n){var i=RR.fromUser(n,{kind:TR.Empty,apply:"ifSingle"});return EA(t,"string"==typeof(null==n?void 0:n.kind)?i.preferred?r("editor.action.codeAction.noneMessage.preferred.kind","No preferred code actions for '{0}' available",n.kind):r("editor.action.codeAction.noneMessage.kind","No code actions for '{0}' available",n.kind):i.preferred?r("editor.action.codeAction.noneMessage.preferred","No preferred code actions available"):r("editor.action.codeAction.noneMessage","No code actions available"),{include:i.kind,includeSourceActions:!0,onlyIncludePreferredActions:i.preferred},i.apply)},t}(Nf),MA=function(e){function t(){return e.call(this,{id:"editor.action.refactor",label:r("refactor.label","Refactor..."),alias:"Refactor...",precondition:Rh.and(eC.writable,eC.hasCodeActionsProvider),kbOpts:{kbExpr:eC.editorTextFocus,primary:3120,mac:{primary:1328},weight:100},contextMenuOpts:{group:"1_modification",order:2,when:Rh.and(eC.writable,xA(TR.Refactor))},description:{description:"Refactor...",args:[{name:"args",schema:DA}]}})||this}return yA(t,e),t.prototype.run=function(e,t,n){var i=RR.fromUser(n,{kind:TR.Refactor,apply:"never"});return EA(t,"string"==typeof(null==n?void 0:n.kind)?i.preferred?r("editor.action.refactor.noneMessage.preferred.kind","No preferred refactorings for '{0}' available",n.kind):r("editor.action.refactor.noneMessage.kind","No refactorings for '{0}' available",n.kind):i.preferred?r("editor.action.refactor.noneMessage.preferred","No preferred refactorings available"):r("editor.action.refactor.noneMessage","No refactorings available"),{include:TR.Refactor.contains(i.kind)?i.kind:TR.None,onlyIncludePreferredActions:i.preferred},i.apply)},t}(kf),TA=function(e){function t(){return e.call(this,{id:"editor.action.sourceAction",label:r("source.label","Source Action..."),alias:"Source Action...",precondition:Rh.and(eC.writable,eC.hasCodeActionsProvider),contextMenuOpts:{group:"1_modification",order:2.1,when:Rh.and(eC.writable,xA(TR.Source))},description:{description:"Source Action...",args:[{name:"args",schema:DA}]}})||this}return yA(t,e),t.prototype.run=function(e,t,n){var i=RR.fromUser(n,{kind:TR.Source,apply:"never"});return EA(t,"string"==typeof(null==n?void 0:n.kind)?i.preferred?r("editor.action.source.noneMessage.preferred.kind","No preferred source actions for '{0}' available",n.kind):r("editor.action.source.noneMessage.kind","No source actions for '{0}' available",n.kind):i.preferred?r("editor.action.source.noneMessage.preferred","No preferred source actions available"):r("editor.action.source.noneMessage","No source actions available"),{include:TR.Source.contains(i.kind)?i.kind:TR.None,includeSourceActions:!0,onlyIncludePreferredActions:i.preferred},i.apply)},t}(kf),PA=function(e){function t(){return e.call(this,{id:"editor.action.organizeImports",label:r("organizeImports.label","Organize Imports"),alias:"Organize Imports",precondition:Rh.and(eC.writable,xA(TR.SourceOrganizeImports)),kbOpts:{kbExpr:eC.editorTextFocus,primary:1581,weight:100}})||this}return yA(t,e),t.prototype.run=function(e,t){return EA(t,r("editor.action.organize.noneMessage","No organize imports action available"),{include:TR.SourceOrganizeImports,includeSourceActions:!0},"ifSingle")},t}(kf),RA=function(e){function t(){return e.call(this,{id:"editor.action.fixAll",label:r("fixAll.label","Fix All"),alias:"Fix All",precondition:Rh.and(eC.writable,xA(TR.SourceFixAll))})||this}return yA(t,e),t.prototype.run=function(e,t){return EA(t,r("fixAll.noneMessage","No fix all action available"),{include:TR.SourceFixAll,includeSourceActions:!0},"ifSingle")},t}(kf),AA=function(e){function t(){return e.call(this,{id:t.Id,label:r("autoFix.label","Auto Fix..."),alias:"Auto Fix...",precondition:Rh.and(eC.writable,xA(TR.QuickFix)),kbOpts:{kbExpr:eC.editorTextFocus,primary:1620,mac:{primary:2644},weight:100}})||this}return yA(t,e),t.prototype.run=function(e,t){return EA(t,r("editor.action.autoFix.noneMessage","No auto fixes available"),{include:TR.QuickFix,onlyIncludePreferredActions:!0},"ifSingle")},t.Id="editor.action.autoFix",t}(kf);Pf(NA.ID,NA),Tf(IA),Tf(MA),Tf(TA),Tf(PA),Tf(AA),Tf(RA),Mf(new OA);var FA=function(){function e(){this.lenses=[],this._disposables=new Be}return e.prototype.dispose=function(){this._disposables.dispose()},e.prototype.add=function(e,t){this._disposables.add(e);for(var n=0,i=e.lenses;n<i.length;n++){var o=i[n];this.lenses.push({symbol:o,provider:t})}},e}();function WA(e,t){var n=Wu.ordered(e),i=new Map,o=new FA,r=n.map((function(n,r){return i.set(n,r),Promise.resolve(n.provideCodeLenses(e,t)).then((function(e){return e&&o.add(e,n)})).catch(Ne)}));return Promise.all(r).then((function(){return o.lenses=Ni(o.lenses,(function(e,t){return e.symbol.range.startLineNumber<t.symbol.range.startLineNumber?-1:e.symbol.range.startLineNumber>t.symbol.range.startLineNumber?1:i.get(e.provider)<i.get(t.provider)?-1:i.get(e.provider)>i.get(t.provider)?1:e.symbol.range.startColumn<t.symbol.range.startColumn?-1:e.symbol.range.startColumn>t.symbol.range.startColumn?1:0})),o}))}Ef("_executeCodeLensProvider",(function(e,t){var n=t.resource,i=t.itemResolveCount;if(!(n instanceof Et))throw Oe();var o=e.get(du).getModel(n);if(!o)throw Oe();var r=[],s=new Be;return WA(o,et.None).then((function(e){s.add(e);for(var t=[],n=function(e){void 0===i||Boolean(e.symbol.command)?r.push(e.symbol):i-- >0&&e.provider.resolveCodeLens&&t.push(Promise.resolve(e.provider.resolveCodeLens(o,e.symbol,et.None)).then((function(t){return r.push(t||e.symbol)})))},a=0,u=e.lenses;a<u.length;a++){n(u[a])}return Promise.all(t)})).then((function(){return r})).finally((function(){setTimeout((function(){return s.dispose()}),100)}))}));n(402);var VA=/(\\)?\$\([a-z0-9\-]+?(?:~[a-z0-9\-]*?)?\)/gi;var BA=/\\\$\([a-z0-9\-]+?(?:~[a-z0-9\-]*?)?\)/gi;var HA=/(\\)?\$\((([a-z0-9\-]+?)(?:~([a-z0-9\-]*?))?)\)/gi;function zA(e){return e.replace(HA,(function(e,t,n,i,o){return t?"$("+n+")":'<span class="codicon codicon-'+i+(o?" codicon-animation-"+o:"")+'"></span>'}))}var jA=function(){function e(e,t){this.afterLineNumber=e,this._onHeight=t,this.heightInLines=1,this.suppressMouseDown=!0,this.domNode=document.createElement("div")}return e.prototype.onComputedHeight=function(e){void 0===this._lastHeight?this._lastHeight=e:this._lastHeight!==e&&(this._lastHeight=e,this._onHeight())},e}(),UA=function(){function e(t,n,i){this.allowEditorOverflow=!1,this.suppressMouseDown=!0,this._commands=new Map,this._isEmpty=!0,this._editor=t,this._id="codelens.widget-"+e._idPool++,this.updatePosition(i),this._domNode=document.createElement("span"),this._domNode.className="codelens-decoration "+n}return e.prototype.withCommands=function(e,t){this._commands.clear();for(var n="",i=!1,o=0;o<e.length;o++){var r=e[o];if(r&&(i=!0,r.command)){var s=zA(fr(r.command.title));r.command.id?(n+="<a id="+o+">"+s+"</a>",this._commands.set(String(o),r.command)):n+="<span>"+s+"</span>",o+1<e.length&&(n+="<span> | </span>")}}i?(n||(n=" "),this._domNode.innerHTML=n,this._isEmpty&&t&&no(this._domNode,"fadein"),this._isEmpty=!1):this._domNode.innerHTML="<span>no commands</span>"},e.prototype.getCommand=function(e){return e.parentElement===this._domNode?this._commands.get(e.id):void 0},e.prototype.getId=function(){return this._id},e.prototype.getDomNode=function(){return this._domNode},e.prototype.updatePosition=function(e){var t=this._editor.getModel().getLineFirstNonWhitespaceColumn(e);this._widgetPosition={position:{lineNumber:e,column:t},preference:[1]}},e.prototype.getPosition=function(){return this._widgetPosition||null},e._idPool=0,e}(),KA=function(){function e(){this._removeDecorations=[],this._addDecorations=[],this._addDecorationsCallbacks=[]}return e.prototype.addDecoration=function(e,t){this._addDecorations.push(e),this._addDecorationsCallbacks.push(t)},e.prototype.removeDecoration=function(e){this._removeDecorations.push(e)},e.prototype.commit=function(e){for(var t=e.deltaDecorations(this._removeDecorations,this._addDecorations),n=0,i=t.length;n<i;n++)this._addDecorationsCallbacks[n](t[n])},e}(),qA=function(){function e(e,t,n,i,o,r){var s,a=this;this._isDisposed=!1,this._editor=t,this._className=n,this._data=e,this._decorationIds=[];var u=[];this._data.forEach((function(e,t){e.symbol.command&&u.push(e.symbol),i.addDecoration({range:e.symbol.range,options:kv.EMPTY},(function(e){return a._decorationIds[t]=e})),s=s?wn.plusRange(s,e.symbol.range):wn.lift(e.symbol.range)})),this._viewZone=new jA(s.startLineNumber-1,r),this._viewZoneId=o.addZone(this._viewZone),u.length>0&&(this._createContentWidgetIfNecessary(),this._contentWidget.withCommands(u,!1))}return e.prototype._createContentWidgetIfNecessary=function(){this._contentWidget||(this._contentWidget=new UA(this._editor,this._className,this._viewZone.afterLineNumber+1),this._editor.addContentWidget(this._contentWidget))},e.prototype.dispose=function(e,t){this._decorationIds.forEach(e.removeDecoration,e),this._decorationIds=[],t&&t.removeZone(this._viewZoneId),this._contentWidget&&(this._editor.removeContentWidget(this._contentWidget),this._contentWidget=void 0),this._isDisposed=!0},e.prototype.isDisposed=function(){return this._isDisposed},e.prototype.isValid=function(){var e=this;return this._decorationIds.some((function(t,n){var i=e._editor.getModel().getDecorationRange(t),o=e._data[n].symbol;return!(!i||wn.isEmpty(o.range)!==i.isEmpty())}))},e.prototype.updateCodeLensSymbols=function(e,t){var n=this;this._decorationIds.forEach(t.removeDecoration,t),this._decorationIds=[],this._data=e,this._data.forEach((function(e,i){t.addDecoration({range:e.symbol.range,options:kv.EMPTY},(function(e){return n._decorationIds[i]=e}))}))},e.prototype.computeIfNecessary=function(e){if(!this._viewZone.domNode.hasAttribute("monaco-visible-view-zone"))return null;for(var t=0;t<this._decorationIds.length;t++){var n=e.getDecorationRange(this._decorationIds[t]);n&&(this._data[t].symbol.range=n)}return this._data},e.prototype.updateCommands=function(e){this._createContentWidgetIfNecessary(),this._contentWidget.withCommands(e,!0);for(var t=0;t<this._data.length;t++){var n=e[t];if(n){var i=this._data[t].symbol;i.command=n.command||i.command}}},e.prototype.getCommand=function(e){var t;return null===(t=this._contentWidget)||void 0===t?void 0:t.getCommand(e)},e.prototype.getLineNumber=function(){var e=this._editor.getModel().getDecorationRange(this._decorationIds[0]);return e?e.startLineNumber:-1},e.prototype.update=function(e){if(this.isValid()){var t=this._editor.getModel().getDecorationRange(this._decorationIds[0]);t&&(this._viewZone.afterLineNumber=t.startLineNumber-1,e.layoutZone(this._viewZoneId),this._contentWidget&&(this._contentWidget.updatePosition(t.startLineNumber),this._editor.layoutContentWidget(this._contentWidget)))}},e}();yg((function(e,t){var n=e.getColor($b);n&&(t.addRule(".monaco-editor .codelens-decoration { color: "+n+"; }"),t.addRule(".monaco-editor .codelens-decoration .codicon { color: "+n+"; }"));var i=e.getColor(Wy);i&&(t.addRule(".monaco-editor .codelens-decoration > a:hover { color: "+i+" !important; }"),t.addRule(".monaco-editor .codelens-decoration > a:hover .codicon { color: "+i+" !important; }"))}));var GA=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},ZA=function(e,t){return function(n,i){t(n,i,e)}},YA=Mn("ICodeLensCache"),XA=function(e,t){this.lineCount=e,this.data=t},$A=function(){function e(e){var t=this;this._fakeProvider=new(function(){function e(){}return e.prototype.provideCodeLenses=function(){throw new Error("not supported")},e}()),this._cache=new aa(20,.75);_i((function(){return e.remove("codelens/cache",1)}));var n="codelens/cache2",i=e.get(n,1,"{}");this._deserialize(i),Te(e.onWillSaveState)((function(i){i.reason===TM.SHUTDOWN&&e.store(n,t._serialize(),1)}))}return e.prototype.put=function(e,t){var n=t.lenses.map((function(e){var t;return{range:e.symbol.range,command:e.symbol.command&&{id:"",title:null===(t=e.symbol.command)||void 0===t?void 0:t.title}}})),i=new FA;i.add({lenses:n,dispose:function(){}},this._fakeProvider);var o=new XA(e.getLineCount(),i);this._cache.set(e.uri.toString(),o)},e.prototype.get=function(e){var t=this._cache.get(e.uri.toString());return t&&t.lineCount===e.getLineCount()?t.data:void 0},e.prototype.delete=function(e){this._cache.delete(e.uri.toString())},e.prototype._serialize=function(){var e=Object.create(null);return this._cache.forEach((function(t,n){for(var i=new Set,o=0,r=t.data.lenses;o<r.length;o++){var s=r[o];i.add(s.symbol.range.startLineNumber)}e[n]={lineCount:t.lineCount,lines:Js(i)}})),JSON.stringify(e)},e.prototype._deserialize=function(e){try{var t=JSON.parse(e);for(var n in t){for(var i=t[n],o=[],r=0,s=i.lines;r<s.length;r++){var a=s[r];o.push({range:new wn(a,1,a,11)})}var u=new FA;u.add({lenses:o,dispose:function(){}},this._fakeProvider),this._cache.set(n,new XA(i.lineCount,u))}}catch(e){}},e=GA([ZA(0,FM)],e)}();Qx(YA,$A);var QA=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},JA=function(e,t){return function(n,i){t(n,i,e)}},eF=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},tF=function(){function e(e,t,n,i){var o=this;this._editor=e,this._commandService=t,this._notificationService=n,this._codeLensCache=i,this._globalToDispose=new Be,this._localToDispose=new Be,this._lenses=[],this._oldCodeLensModels=new Be,this._modelChangeCounter=0,this._isEnabled=this._editor.getOption(11),this._globalToDispose.add(this._editor.onDidChangeModel((function(){return o._onModelChange()}))),this._globalToDispose.add(this._editor.onDidChangeModelLanguage((function(){return o._onModelChange()}))),this._globalToDispose.add(this._editor.onDidChangeConfiguration((function(){var e=o._isEnabled;o._isEnabled=o._editor.getOption(11),e!==o._isEnabled&&o._onModelChange()}))),this._globalToDispose.add(Wu.onDidChange(this._onModelChange,this)),this._globalToDispose.add(this._editor.onDidChangeConfiguration((function(e){e.hasChanged(34)&&o._updateLensStyle()}))),this._onModelChange(),this._styleClassName=Tl(this._editor.getId()).toString(16),this._styleElement=zo(Bo(this._editor.getContainerDomNode())?this._editor.getContainerDomNode():void 0),this._updateLensStyle()}return e.prototype.dispose=function(){this._localDispose(),this._globalToDispose.dispose(),this._oldCodeLensModels.dispose(),Ae(this._currentCodeLensModel)},e.prototype._updateLensStyle=function(){var e=this._editor.getOptions(),t=e.get(34),n=e.get(49),i=Math.round(1.1*n),o=Math.round(.9*t.fontSize),r="\n\t\t.monaco-editor .codelens-decoration."+this._styleClassName+" { height: "+i+"px; line-height: "+n+"px; font-size: "+o+"px; padding-right: "+Math.round(.45*t.fontSize)+"px;}\n\t\t.monaco-editor .codelens-decoration."+this._styleClassName+" > a > .codicon { line-height: "+n+"px; font-size: "+o+"px; }\n\t\t";this._styleElement.innerHTML=r},e.prototype._localDispose=function(){this._currentFindCodeLensSymbolsPromise&&(this._currentFindCodeLensSymbolsPromise.cancel(),this._currentFindCodeLensSymbolsPromise=void 0,this._modelChangeCounter++),this._currentResolveCodeLensSymbolsPromise&&(this._currentResolveCodeLensSymbolsPromise.cancel(),this._currentResolveCodeLensSymbolsPromise=void 0),this._localToDispose.clear(),this._oldCodeLensModels.clear(),Ae(this._currentCodeLensModel)},e.prototype._onModelChange=function(){var e=this;this._localDispose();var t=this._editor.getModel();if(t&&this._isEnabled){var n=this._codeLensCache.get(t);if(n&&this._renderCodeLensSymbols(n),Wu.has(t)){for(var i=0,o=Wu.all(t);i<o.length;i++){var r=o[i];if("function"==typeof r.onDidChange){var s=r.onDidChange((function(){return u.schedule()}));this._localToDispose.add(s)}}var a=this._detectVisibleLenses=new wi((function(){return e._onViewportChanged()}),250),u=new wi((function(){var n=++e._modelChangeCounter;e._currentFindCodeLensSymbolsPromise&&e._currentFindCodeLensSymbolsPromise.cancel(),e._currentFindCodeLensSymbolsPromise=hi((function(e){return WA(t,e)})),e._currentFindCodeLensSymbolsPromise.then((function(i){n===e._modelChangeCounter&&(e._currentCodeLensModel&&e._oldCodeLensModels.add(e._currentCodeLensModel),e._currentCodeLensModel=i,e._codeLensCache.put(t,i),e._renderCodeLensSymbols(i),a.schedule())}),De)}),250);this._localToDispose.add(u),this._localToDispose.add(a),this._localToDispose.add(this._editor.onDidChangeModelContent((function(){e._editor.changeDecorations((function(t){e._editor.changeViewZones((function(n){var i=[],o=-1;e._lenses.forEach((function(e){e.isValid()&&o!==e.getLineNumber()?(e.update(n),o=e.getLineNumber()):i.push(e)}));var r=new KA;i.forEach((function(t){t.dispose(r,n),e._lenses.splice(e._lenses.indexOf(t),1)})),r.commit(t)}))})),a.schedule(),u.schedule()}))),this._localToDispose.add(this._editor.onDidScrollChange((function(t){t.scrollTopChanged&&e._lenses.length>0&&a.schedule()}))),this._localToDispose.add(this._editor.onDidLayoutChange((function(){a.schedule()}))),this._localToDispose.add(We((function(){if(e._editor.getModel()){var t=aD.capture(e._editor);e._editor.changeDecorations((function(t){e._editor.changeViewZones((function(n){e._disposeAllLenses(t,n)}))})),t.restore(e._editor)}else e._disposeAllLenses(void 0,void 0)}))),this._localToDispose.add(this._editor.onMouseUp((function(t){var n;if(9===t.target.type){var i=t.target.element;if("SPAN"===(null==i?void 0:i.tagName)&&(i=i.parentElement),"A"===(null==i?void 0:i.tagName))for(var o=0,r=e._lenses;o<r.length;o++){var s=r[o].getCommand(i);if(s){(n=e._commandService).executeCommand.apply(n,eF([s.id],s.arguments||[])).catch((function(t){return e._notificationService.error(t)}));break}}}}))),u.schedule()}else n&&this._localToDispose.add(mi((function(){var i=e._codeLensCache.get(t);n===i&&(e._codeLensCache.delete(t),e._onModelChange())}),3e4))}},e.prototype._disposeAllLenses=function(e,t){for(var n=new KA,i=0,o=this._lenses;i<o.length;i++){o[i].dispose(n,t)}e&&n.commit(e),this._lenses=[]},e.prototype._renderCodeLensSymbols=function(e){var t=this;if(this._editor.hasModel()){for(var n,i=this._editor.getModel().getLineCount(),o=[],r=0,s=e.lenses;r<s.length;r++){var a=s[r],u=a.symbol.range.startLineNumber;u<1||u>i||(n&&n[n.length-1].symbol.range.startLineNumber===u?n.push(a):(n=[a],o.push(n)))}var l=aD.capture(this._editor);this._editor.changeDecorations((function(e){t._editor.changeViewZones((function(n){for(var i=new KA,r=0,s=0;s<o.length&&r<t._lenses.length;){var a=o[s][0].symbol.range.startLineNumber,u=t._lenses[r].getLineNumber();u<a?(t._lenses[r].dispose(i,n),t._lenses.splice(r,1)):u===a?(t._lenses[r].updateCodeLensSymbols(o[s],i),s++,r++):(t._lenses.splice(r,0,new qA(o[s],t._editor,t._styleClassName,i,n,(function(){return t._detectVisibleLenses&&t._detectVisibleLenses.schedule()}))),r++,s++)}for(;r<t._lenses.length;)t._lenses[r].dispose(i,n),t._lenses.splice(r,1);for(;s<o.length;)t._lenses.push(new qA(o[s],t._editor,t._styleClassName,i,n,(function(){return t._detectVisibleLenses&&t._detectVisibleLenses.schedule()}))),s++;i.commit(e)}))})),l.restore(this._editor)}},e.prototype._onViewportChanged=function(){var e=this;this._currentResolveCodeLensSymbolsPromise&&(this._currentResolveCodeLensSymbolsPromise.cancel(),this._currentResolveCodeLensSymbolsPromise=void 0);var t=this._editor.getModel();if(t){var n=[],i=[];if(this._lenses.forEach((function(e){var o=e.computeIfNecessary(t);o&&(n.push(o),i.push(e))})),0!==n.length){var o=hi((function(e){var o=n.map((function(n,o){var r=new Array(n.length),s=n.map((function(n,i){return n.symbol.command||"function"!=typeof n.provider.resolveCodeLens?(r[i]=n.symbol,Promise.resolve(void 0)):Promise.resolve(n.provider.resolveCodeLens(t,n.symbol,e)).then((function(e){r[i]=e}),Ne)}));return Promise.all(s).then((function(){e.isCancellationRequested||i[o].isDisposed()||i[o].updateCommands(r)}))}));return Promise.all(o)}));this._currentResolveCodeLensSymbolsPromise=o,this._currentResolveCodeLensSymbolsPromise.then((function(){e._currentCodeLensModel&&e._codeLensCache.put(t,e._currentCodeLensModel),e._oldCodeLensModels.clear(),o===e._currentResolveCodeLensSymbolsPromise&&(e._currentResolveCodeLensSymbolsPromise=void 0)}),(function(t){De(t),o===e._currentResolveCodeLensSymbolsPromise&&(e._currentResolveCodeLensSymbolsPromise=void 0)}))}}},e.ID="css.editor.codeLens",e=QA([JA(1,la),JA(2,ap),JA(3,YA)],e)}();function nF(e,t,n,i){return Promise.resolve(n.provideColorPresentations(e,t,i))}Pf(tF.ID,tF),Ef("_executeDocumentColorProvider",(function(e,t){var n=t.resource;if(!(n instanceof Et))throw Oe();var i=e.get(du).getModel(n);if(!i)throw Oe();var o=[],r=Uu.ordered(i).reverse().map((function(e){return Promise.resolve(e.provideDocumentColors(i,et.None)).then((function(e){if(Array.isArray(e))for(var t=0,n=e;t<n.length;t++){var i=n[t];o.push({range:i.range,color:[i.color.red,i.color.green,i.color.blue,i.color.alpha]})}}))}));return Promise.all(r).then((function(){return o}))})),Ef("_executeColorPresentationProvider",(function(e,t){var n=t.resource,i=t.color,o=t.range;if(!(n instanceof Et&&Array.isArray(i)&&4===i.length&&wn.isIRange(o)))throw Oe();var r=i[0],s=i[1],a=i[2],u=i[3],l=e.get(du).getModel(n);if(!l)throw Oe();var c={range:o,color:{red:r,green:s,blue:a,alpha:u}},d=[],h=Uu.ordered(l).reverse().map((function(e){return Promise.resolve(e.provideColorPresentations(l,c,et.None)).then((function(e){Array.isArray(e)&&d.push.apply(d,e)}))}));return Promise.all(h).then((function(){return d}))}));var iF=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),oF=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},rF=function(e,t){return function(n,i){t(n,i,e)}},sF=function(e){function t(t,n,i){var o=e.call(this)||this;return o._editor=t,o._codeEditorService=n,o._configurationService=i,o._localToDispose=o._register(new Be),o._decorationsIds=[],o._colorDatas=new Map,o._colorDecoratorIds=[],o._decorationsTypes=new Set,o._register(t.onDidChangeModel((function(e){o._isEnabled=o.isEnabled(),o.onModelChanged()}))),o._register(t.onDidChangeModelLanguage((function(e){return o.onModelChanged()}))),o._register(Uu.onDidChange((function(e){return o.onModelChanged()}))),o._register(t.onDidChangeConfiguration((function(e){var t=o._isEnabled;o._isEnabled=o.isEnabled(),t!==o._isEnabled&&(o._isEnabled?o.onModelChanged():o.removeAllDecorations())}))),o._timeoutTimer=null,o._computePromise=null,o._isEnabled=o.isEnabled(),o.onModelChanged(),o}return iF(t,e),t.prototype.isEnabled=function(){var e=this._editor.getModel();if(!e)return!1;var t=e.getLanguageIdentifier(),n=this._configurationService.getValue(t.language);if(n){var i=n.colorDecorators;if(i&&void 0!==i.enable&&!i.enable)return i.enable}return this._editor.getOption(12)},t.get=function(e){return e.getContribution(this.ID)},t.prototype.dispose=function(){this.stop(),this.removeAllDecorations(),e.prototype.dispose.call(this)},t.prototype.onModelChanged=function(){var e=this;if(this.stop(),this._isEnabled){var n=this._editor.getModel();n&&Uu.has(n)&&(this._localToDispose.add(this._editor.onDidChangeModelContent((function(n){e._timeoutTimer||(e._timeoutTimer=new yi,e._timeoutTimer.cancelAndSet((function(){e._timeoutTimer=null,e.beginCompute()}),t.RECOMPUTE_TIME))}))),this.beginCompute())}},t.prototype.beginCompute=function(){var e=this;this._computePromise=hi((function(t){var n=e._editor.getModel();return n?function(e,t){var n=[],i=Uu.ordered(e).reverse().map((function(i){return Promise.resolve(i.provideDocumentColors(e,t)).then((function(e){if(Array.isArray(e))for(var t=0,o=e;t<o.length;t++){var r=o[t];n.push({colorInfo:r,provider:i})}}))}));return Promise.all(i).then((function(){return n}))}(n,t):Promise.resolve([])})),this._computePromise.then((function(t){e.updateDecorations(t),e.updateColorDecorators(t),e._computePromise=null}),De)},t.prototype.stop=function(){this._timeoutTimer&&(this._timeoutTimer.cancel(),this._timeoutTimer=null),this._computePromise&&(this._computePromise.cancel(),this._computePromise=null),this._localToDispose.clear()},t.prototype.updateDecorations=function(e){var t=this,n=e.map((function(e){return{range:{startLineNumber:e.colorInfo.range.startLineNumber,startColumn:e.colorInfo.range.startColumn,endLineNumber:e.colorInfo.range.endLineNumber,endColumn:e.colorInfo.range.endColumn},options:kv.EMPTY}}));this._decorationsIds=this._editor.deltaDecorations(this._decorationsIds,n),this._colorDatas=new Map,this._decorationsIds.forEach((function(n,i){return t._colorDatas.set(n,e[i])}))},t.prototype.updateColorDecorators=function(e){for(var t=this,n=[],i={},o=0;o<e.length&&n.length<500;o++){var r=e[o].colorInfo.color,s=r.red,a=r.green,u=r.blue,l=r.alpha,c=new pv(Math.round(255*s),Math.round(255*a),Math.round(255*u),l),d=Tl(c).toString(16),h="rgba("+c.r+", "+c.g+", "+c.b+", "+c.a+")",p="colorBox-"+d;this._decorationsTypes.has(p)||i[p]||this._codeEditorService.registerDecorationType(p,{before:{contentText:" ",border:"solid 0.1em #000",margin:"0.1em 0.2em 0 0.2em",width:"0.8em",height:"0.8em",backgroundColor:h},dark:{before:{border:"solid 0.1em #eee"}}},void 0,this._editor),i[p]=!0,n.push({range:{startLineNumber:e[o].colorInfo.range.startLineNumber,startColumn:e[o].colorInfo.range.startColumn,endLineNumber:e[o].colorInfo.range.endLineNumber,endColumn:e[o].colorInfo.range.endColumn},options:this._codeEditorService.resolveDecorationOptions(p,!0)})}this._decorationsTypes.forEach((function(e){i[e]||t._codeEditorService.removeDecorationType(e)})),this._colorDecoratorIds=this._editor.deltaDecorations(this._colorDecoratorIds,n)},t.prototype.removeAllDecorations=function(){var e=this;this._decorationsIds=this._editor.deltaDecorations(this._decorationsIds,[]),this._colorDecoratorIds=this._editor.deltaDecorations(this._colorDecoratorIds,[]),this._decorationsTypes.forEach((function(t){e._codeEditorService.removeDecorationType(t)}))},t.prototype.getColorData=function(e){var t=this,n=this._editor.getModel();if(!n)return null;var i=n.getDecorationsInRange(wn.fromPositions(e,e)).filter((function(e){return t._colorDatas.has(e.id)}));return 0===i.length?null:this._colorDatas.get(i[0].id)},t.ID="editor.contrib.colorDetector",t.RECOMPUTE_TIME=1e3,t=oF([rF(1,Pn),rF(2,wh)],t)}(He);Pf(sF.ID,sF);var aF=function(){function e(e,t){this._selection=e,this._insertSpace=t,this._usedEndToken=null}return e._haystackHasNeedleAtOffset=function(e,t,n){if(n<0)return!1;var i=t.length;if(n+i>e.length)return!1;for(var o=0;o<i;o++){var r=e.charCodeAt(n+o),s=t.charCodeAt(o);if(r!==s&&!(r>=65&&r<=90&&r+32===s||s>=65&&s<=90&&s+32===r))return!1}return!0},e.prototype._createOperationsForBlockComment=function(t,n,i,o,r,s){var a,u=t.startLineNumber,l=t.startColumn,c=t.endLineNumber,d=t.endColumn,h=r.getLineContent(u),p=r.getLineContent(c),f=h.lastIndexOf(n,l-1+n.length),g=p.indexOf(i,d-1-i.length);if(-1!==f&&-1!==g)if(u===c){h.substring(f+n.length,g).indexOf(i)>=0&&(f=-1,g=-1)}else{var m=h.substring(f+n.length),v=p.substring(0,g);(m.indexOf(i)>=0||v.indexOf(i)>=0)&&(f=-1,g=-1)}-1!==f&&-1!==g?(o&&f+n.length<h.length&&32===h.charCodeAt(f+n.length)&&(n+=" "),o&&g>0&&32===p.charCodeAt(g-1)&&(i=" "+i,g-=1),a=e._createRemoveBlockCommentOperations(new wn(u,f+n.length+1,c,g+1),n,i)):(a=e._createAddBlockCommentOperations(t,n,i,this._insertSpace),this._usedEndToken=1===a.length?i:null);for(var _=0,y=a;_<y.length;_++){var b=y[_];s.addTrackedEditOperation(b.range,b.text)}},e._createRemoveBlockCommentOperations=function(e,t,n){var i=[];return wn.isEmpty(e)?i.push(bh.delete(new wn(e.startLineNumber,e.startColumn-t.length,e.endLineNumber,e.endColumn+n.length))):(i.push(bh.delete(new wn(e.startLineNumber,e.startColumn-t.length,e.startLineNumber,e.startColumn))),i.push(bh.delete(new wn(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn+n.length)))),i},e._createAddBlockCommentOperations=function(e,t,n,i){var o=[];return wn.isEmpty(e)?o.push(bh.replace(new wn(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),t+" "+n)):(o.push(bh.insert(new bn(e.startLineNumber,e.startColumn),t+(i?" ":""))),o.push(bh.insert(new bn(e.endLineNumber,e.endColumn),(i?" ":"")+n))),o},e.prototype.getEditOperations=function(e,t){var n=this._selection.startLineNumber,i=this._selection.startColumn;e.tokenizeIfCheap(n);var o=e.getLanguageIdAtPosition(n,i),r=Ol.getComments(o);r&&r.blockCommentStartToken&&r.blockCommentEndToken&&this._createOperationsForBlockComment(this._selection,r.blockCommentStartToken,r.blockCommentEndToken,this._insertSpace,e,t)},e.prototype.computeCursorState=function(e,t){var n=t.getInverseEditOperations();if(2===n.length){var i=n[0],o=n[1];return new Sn(i.range.endLineNumber,i.range.endColumn,o.range.startLineNumber,o.range.startColumn)}var r=n[0].range,s=this._usedEndToken?-this._usedEndToken.length-1:0;return new Sn(r.endLineNumber,r.endColumn+s,r.endLineNumber,r.endColumn+s)},e}(),uF=function(){function e(e,t,n,i){this._selection=e,this._tabSize=t,this._type=n,this._insertSpace=i,this._selectionId=null,this._deltaColumn=0,this._moveEndPositionDown=!1}return e._gatherPreflightCommentStrings=function(e,t,n){e.tokenizeIfCheap(t);var i=e.getLanguageIdAtPosition(t,1),o=Ol.getComments(i),r=o?o.lineCommentToken:null;if(!r)return null;for(var s=[],a=0,u=n-t+1;a<u;a++)s[a]={ignore:!1,commentStr:r,commentStrOffset:0,commentStrLength:r.length};return s},e._analyzeLines=function(e,t,n,i,o){var r,s=!0;r=0===e||1!==e;for(var a=0,u=i.length;a<u;a++){var l=i[a],c=o+a,d=n.getLineContent(c),h=wr(d);if(-1!==h){if(s=!1,l.ignore=!1,l.commentStrOffset=h,r&&!aF._haystackHasNeedleAtOffset(d,l.commentStr,h)&&(0===e?r=!1:1===e||(l.ignore=!0)),r&&t){var p=h+l.commentStrLength;p<d.length&&32===d.charCodeAt(p)&&(l.commentStrLength+=1)}}else l.ignore=!0,l.commentStrOffset=d.length}if(0===e&&s){r=!1;for(a=0,u=i.length;a<u;a++)i[a].ignore=!1}return{supported:!0,shouldRemoveComments:r,lines:i}},e._gatherPreflightData=function(t,n,i,o,r){var s=e._gatherPreflightCommentStrings(i,o,r);return null===s?{supported:!1}:e._analyzeLines(t,n,i,s,o)},e.prototype._executeLineComments=function(t,n,i,o){var r;i.shouldRemoveComments?r=e._createRemoveLineCommentsOperations(i.lines,o.startLineNumber):(e._normalizeInsertionPoint(t,i.lines,o.startLineNumber,this._tabSize),r=this._createAddLineCommentsOperations(i.lines,o.startLineNumber));for(var s=new bn(o.positionLineNumber,o.positionColumn),a=0,u=r.length;a<u;a++){if(n.addEditOperation(r[a].range,r[a].text),r[a].range.isEmpty()&&r[a].range.getStartPosition().equals(s))t.getLineContent(s.lineNumber).length+1===s.column&&(this._deltaColumn=(r[a].text||"").length)}this._selectionId=n.trackSelection(o)},e.prototype._attemptRemoveBlockComment=function(e,t,n,i){var o=t.startLineNumber,r=t.endLineNumber,s=i.length+Math.max(e.getLineFirstNonWhitespaceColumn(t.startLineNumber),t.startColumn),a=e.getLineContent(o).lastIndexOf(n,s-1),u=e.getLineContent(r).indexOf(i,t.endColumn-1-n.length);return-1!==a&&-1===u&&(u=e.getLineContent(o).indexOf(i,a+n.length),r=o),-1===a&&-1!==u&&(a=e.getLineContent(r).lastIndexOf(n,u),o=r),!t.isEmpty()||-1!==a&&-1!==u||-1!==(a=e.getLineContent(o).indexOf(n))&&(u=e.getLineContent(o).indexOf(i,a+n.length)),-1!==a&&32===e.getLineContent(o).charCodeAt(a+n.length)&&(n+=" "),-1!==u&&32===e.getLineContent(r).charCodeAt(u-1)&&(i=" "+i,u-=1),-1!==a&&-1!==u?aF._createRemoveBlockCommentOperations(new wn(o,a+n.length+1,r,u+1),n,i):null},e.prototype._executeBlockComment=function(e,t,n){e.tokenizeIfCheap(n.startLineNumber);var i=e.getLanguageIdAtPosition(n.startLineNumber,1),o=Ol.getComments(i);if(o&&o.blockCommentStartToken&&o.blockCommentEndToken){var r=o.blockCommentStartToken,s=o.blockCommentEndToken,a=this._attemptRemoveBlockComment(e,n,r,s);if(!a){if(n.isEmpty()){var u=e.getLineContent(n.startLineNumber),l=wr(u);-1===l&&(l=u.length),a=aF._createAddBlockCommentOperations(new wn(n.startLineNumber,l+1,n.startLineNumber,u.length+1),r,s,this._insertSpace)}else a=aF._createAddBlockCommentOperations(new wn(n.startLineNumber,e.getLineFirstNonWhitespaceColumn(n.startLineNumber),n.endLineNumber,e.getLineMaxColumn(n.endLineNumber)),r,s,this._insertSpace);1===a.length&&(this._deltaColumn=r.length+1)}this._selectionId=t.trackSelection(n);for(var c=0,d=a;c<d.length;c++){var h=d[c];t.addEditOperation(h.range,h.text)}}},e.prototype.getEditOperations=function(t,n){var i=this._selection;this._moveEndPositionDown=!1,i.startLineNumber<i.endLineNumber&&1===i.endColumn&&(this._moveEndPositionDown=!0,i=i.setEndPosition(i.endLineNumber-1,t.getLineMaxColumn(i.endLineNumber-1)));var o=e._gatherPreflightData(this._type,this._insertSpace,t,i.startLineNumber,i.endLineNumber);return o.supported?this._executeLineComments(t,n,o,i):this._executeBlockComment(t,n,i)},e.prototype.computeCursorState=function(e,t){var n=t.getTrackedSelection(this._selectionId);return this._moveEndPositionDown&&(n=n.setEndPosition(n.endLineNumber+1,1)),new Sn(n.selectionStartLineNumber,n.selectionStartColumn+this._deltaColumn,n.positionLineNumber,n.positionColumn+this._deltaColumn)},e._createRemoveLineCommentsOperations=function(e,t){for(var n=[],i=0,o=e.length;i<o;i++){var r=e[i];r.ignore||n.push(bh.delete(new wn(t+i,r.commentStrOffset+1,t+i,r.commentStrOffset+r.commentStrLength+1)))}return n},e.prototype._createAddLineCommentsOperations=function(e,t){for(var n=[],i=this._insertSpace?" ":"",o=0,r=e.length;o<r;o++){var s=e[o];s.ignore||n.push(bh.insert(new bn(t+o,s.commentStrOffset+1),s.commentStr+i))}return n},e.nextVisibleColumn=function(e,t,n,i){return n?e+(t-e%t):e+i},e._normalizeInsertionPoint=function(t,n,i,o){for(var r,s,a=1073741824,u=0,l=n.length;u<l;u++)if(!n[u].ignore){for(var c=t.getLineContent(i+u),d=0,h=0,p=n[u].commentStrOffset;d<a&&h<p;h++)d=e.nextVisibleColumn(d,o,9===c.charCodeAt(h),1);d<a&&(a=d)}a=Math.floor(a/o)*o;for(u=0,l=n.length;u<l;u++)if(!n[u].ignore){c=t.getLineContent(i+u),d=0;for(r=0,s=n[u].commentStrOffset;d<a&&r<s;r++)d=e.nextVisibleColumn(d,o,9===c.charCodeAt(r),1);n[u].commentStrOffset=d>a?r-1:r}},e}(),lF=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),cF=function(e){function t(t,n){var i=e.call(this,n)||this;return i._type=t,i}return lF(t,e),t.prototype.run=function(e,t){if(t.hasModel()){for(var n=t.getModel(),i=[],o=t.getSelections(),r=n.getOptions(),s=t.getOption(13),a=0,u=o;a<u.length;a++){var l=u[a];i.push(new uF(l,r.tabSize,this._type,s.insertSpace))}t.pushUndoStop(),t.executeCommands(this.id,i),t.pushUndoStop()}},t}(kf),dF=function(e){function t(){return e.call(this,0,{id:"editor.action.commentLine",label:r("comment.line","Toggle Line Comment"),alias:"Toggle Line Comment",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:2133,weight:100},menuOpts:{menuId:17,group:"5_insert",title:r({key:"miToggleLineComment",comment:["&& denotes a mnemonic"]},"&&Toggle Line Comment"),order:1}})||this}return lF(t,e),t}(cF),hF=function(e){function t(){return e.call(this,1,{id:"editor.action.addCommentLine",label:r("comment.line.add","Add Line Comment"),alias:"Add Line Comment",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2081),weight:100}})||this}return lF(t,e),t}(cF),pF=function(e){function t(){return e.call(this,2,{id:"editor.action.removeCommentLine",label:r("comment.line.remove","Remove Line Comment"),alias:"Remove Line Comment",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2099),weight:100}})||this}return lF(t,e),t}(cF),fF=function(e){function t(){return e.call(this,{id:"editor.action.blockComment",label:r("comment.block","Toggle Block Comment"),alias:"Toggle Block Comment",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:1567,linux:{primary:3103},weight:100},menuOpts:{menuId:17,group:"5_insert",title:r({key:"miToggleBlockComment",comment:["&& denotes a mnemonic"]},"Toggle &&Block Comment"),order:2}})||this}return lF(t,e),t.prototype.run=function(e,t){if(t.hasModel()){for(var n=t.getOption(13),i=[],o=0,r=t.getSelections();o<r.length;o++){var s=r[o];i.push(new aF(s,n.insertSpace))}t.pushUndoStop(),t.executeCommands(this.id,i),t.pushUndoStop()}},t}(kf);Tf(dF),Tf(hF),Tf(pF),Tf(fF);var gF=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),mF=function(e){function t(t,n){var i=e.call(this,t,n,"contextsubmenu")||this;return i.entries=n,i}return gF(t,e),t}(Bk),vF=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),_F=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},yF=function(e,t){return function(n,i){t(n,i,e)}},bF=function(){function e(e,t,n,i,o,r){var s=this;this._contextMenuService=t,this._contextViewService=n,this._contextKeyService=i,this._keybindingService=o,this._menuService=r,this._toDispose=new Be,this._contextMenuIsBeingShownCount=0,this._editor=e,this._toDispose.add(this._editor.onContextMenu((function(e){return s._onContextMenu(e)}))),this._toDispose.add(this._editor.onMouseWheel((function(e){s._contextMenuIsBeingShownCount>0&&s._contextViewService.hideContextView()}))),this._toDispose.add(this._editor.onKeyDown((function(e){58===e.keyCode&&(e.preventDefault(),e.stopPropagation(),s.showContextMenu())})))}return e.get=function(t){return t.getContribution(e.ID)},e.prototype._onContextMenu=function(e){if(this._editor.hasModel()){if(!this._editor.getOption(14))return this._editor.focus(),void(e.target.position&&!this._editor.getSelection().containsPosition(e.target.position)&&this._editor.setPosition(e.target.position));if(12!==e.target.type&&(e.event.preventDefault(),6===e.target.type||7===e.target.type||1===e.target.type)){if(this._editor.focus(),e.target.position){for(var t=!1,n=0,i=this._editor.getSelections();n<i.length;n++){if(i[n].containsPosition(e.target.position)){t=!0;break}}t||this._editor.setPosition(e.target.position)}var o=null;1!==e.target.type&&(o={x:e.event.posx-1,width:2,y:e.event.posy-1,height:2}),this.showContextMenu(o)}}},e.prototype.showContextMenu=function(e){if(this._editor.getOption(14)&&this._editor.hasModel())if(this._contextMenuService){var t=this._getMenuActions(this._editor.getModel(),7);t.length>0&&this._doShowContextMenu(t,e)}else this._editor.focus()},e.prototype._getMenuActions=function(e,t){var n=[],i=this._menuService.createMenu(t,this._contextKeyService),o=i.getActions({arg:e.uri});i.dispose();for(var r=0,s=o;r<s.length;r++){for(var a=0,u=0,l=s[r][1];u<l.length;u++){var c=l[u];if(c instanceof Cf){var d=this._getMenuActions(e,c.item.submenu);d.length>0&&(n.push(new mF(c.label,d)),a++)}else n.push(c),a++}a&&n.push(new fD)}return n.length&&n.pop(),n},e.prototype._doShowContextMenu=function(e,t){var n=this;if(void 0===t&&(t=null),this._editor.hasModel()){var i=this._editor.getOption(44);if(this._editor.updateOptions({hover:{enabled:!1}}),!t){this._editor.revealPosition(this._editor.getPosition(),1),this._editor.render();var o=this._editor.getScrolledVisiblePosition(this._editor.getPosition()),r=Oo(this._editor.getDomNode()),s=r.left+o.left,a=r.top+o.top+o.height;t={x:s,y:a}}this._contextMenuIsBeingShownCount++,this._contextMenuService.showContextMenu({getAnchor:function(){return t},getActions:function(){return e},getActionViewItem:function(e){var t=n._keybindingFor(e);if(t)return new gD(e,e,{label:!0,keybinding:t.getLabel(),isMenu:!0});var i=e;return"function"==typeof i.getActionViewItem?i.getActionViewItem():new gD(e,e,{icon:!0,label:!0,isMenu:!0})},getKeyBinding:function(e){return n._keybindingFor(e)},onHide:function(e){n._contextMenuIsBeingShownCount--,n._editor.focus(),n._editor.updateOptions({hover:i})}})}},e.prototype._keybindingFor=function(e){return this._keybindingService.lookupKeybinding(e.id)},e.prototype.dispose=function(){this._contextMenuIsBeingShownCount>0&&this._contextViewService.hideContextView(),this._toDispose.dispose()},e.ID="editor.contrib.contextmenu",e=_F([yF(1,DD),yF(2,xD),yF(3,qh),yF(4,XD),yF(5,yf)],e)}(),wF=function(e){function t(){return e.call(this,{id:"editor.action.showContextMenu",label:r("action.showContextMenu.label","Show Editor Context Menu"),alias:"Show Editor Context Menu",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:1092,weight:100}})||this}return vF(t,e),t.prototype.run=function(e,t){bF.get(t).showContextMenu()},t}(kf);Pf(bF.ID,bF),Tf(wF);var CF=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),SF=function(){function e(e){this.selections=e}return e.prototype.equals=function(e){var t=this.selections.length;if(t!==e.selections.length)return!1;for(var n=0;n<t;n++)if(!this.selections[n].equalsSelection(e.selections[n]))return!1;return!0},e}(),LF=function(e,t,n){this.cursorState=e,this.scrollTop=t,this.scrollLeft=n},xF=function(e){function t(t){var n=e.call(this)||this;return n._editor=t,n._isCursorUndoRedo=!1,n._undoStack=[],n._redoStack=[],n._register(t.onDidChangeModel((function(e){n._undoStack=[],n._redoStack=[]}))),n._register(t.onDidChangeModelContent((function(e){n._undoStack=[],n._redoStack=[]}))),n._register(t.onDidChangeCursorSelection((function(e){if(!n._isCursorUndoRedo&&e.oldSelections&&e.oldModelVersionId===e.modelVersionId){var i=new SF(e.oldSelections);n._undoStack.length>0&&n._undoStack[n._undoStack.length-1].cursorState.equals(i)||(n._undoStack.push(new LF(i,t.getScrollTop(),t.getScrollLeft())),n._redoStack=[],n._undoStack.length>50&&n._undoStack.shift())}}))),n}return CF(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.cursorUndo=function(){this._editor.hasModel()&&0!==this._undoStack.length&&(this._redoStack.push(new LF(new SF(this._editor.getSelections()),this._editor.getScrollTop(),this._editor.getScrollLeft())),this._applyState(this._undoStack.pop()))},t.prototype.cursorRedo=function(){this._editor.hasModel()&&0!==this._redoStack.length&&(this._undoStack.push(new LF(new SF(this._editor.getSelections()),this._editor.getScrollTop(),this._editor.getScrollLeft())),this._applyState(this._redoStack.pop()))},t.prototype._applyState=function(e){this._isCursorUndoRedo=!0,this._editor.setSelections(e.cursorState.selections),this._editor.setScrollPosition({scrollTop:e.scrollTop,scrollLeft:e.scrollLeft}),this._isCursorUndoRedo=!1},t.ID="editor.contrib.cursorUndoRedoController",t}(He),DF=function(e){function t(){return e.call(this,{id:"cursorUndo",label:r("cursor.undo","Cursor Undo"),alias:"Cursor Undo",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:2099,weight:100}})||this}return CF(t,e),t.prototype.run=function(e,t,n){xF.get(t).cursorUndo()},t}(kf),NF=function(e){function t(){return e.call(this,{id:"cursorRedo",label:r("cursor.redo","Cursor Redo"),alias:"Cursor Redo",precondition:void 0})||this}return CF(t,e),t.prototype.run=function(e,t,n){xF.get(t).cursorRedo()},t}(kf);Pf(xF.ID,xF),Tf(DF),Tf(NF);n(403);var kF=function(){function e(e,t,n){this.selection=e,this.targetPosition=t,this.copy=n,this.targetSelection=null}return e.prototype.getEditOperations=function(e,t){var n=e.getValueInRange(this.selection);this.copy||t.addEditOperation(this.selection,null),t.addEditOperation(new wn(this.targetPosition.lineNumber,this.targetPosition.column,this.targetPosition.lineNumber,this.targetPosition.column),n),!this.selection.containsPosition(this.targetPosition)||this.copy&&(this.selection.getEndPosition().equals(this.targetPosition)||this.selection.getStartPosition().equals(this.targetPosition))?this.copy?this.targetSelection=new Sn(this.targetPosition.lineNumber,this.targetPosition.column,this.selection.endLineNumber-this.selection.startLineNumber+this.targetPosition.lineNumber,this.selection.startLineNumber===this.selection.endLineNumber?this.targetPosition.column+this.selection.endColumn-this.selection.startColumn:this.selection.endColumn):this.targetPosition.lineNumber>this.selection.endLineNumber?this.targetSelection=new Sn(this.targetPosition.lineNumber-this.selection.endLineNumber+this.selection.startLineNumber,this.targetPosition.column,this.targetPosition.lineNumber,this.selection.startLineNumber===this.selection.endLineNumber?this.targetPosition.column+this.selection.endColumn-this.selection.startColumn:this.selection.endColumn):this.targetPosition.lineNumber<this.selection.endLineNumber?this.targetSelection=new Sn(this.targetPosition.lineNumber,this.targetPosition.column,this.targetPosition.lineNumber+this.selection.endLineNumber-this.selection.startLineNumber,this.selection.startLineNumber===this.selection.endLineNumber?this.targetPosition.column+this.selection.endColumn-this.selection.startColumn:this.selection.endColumn):this.selection.endColumn<=this.targetPosition.column?this.targetSelection=new Sn(this.targetPosition.lineNumber-this.selection.endLineNumber+this.selection.startLineNumber,(this.selection.startLineNumber,this.selection.endLineNumber,this.targetPosition.column-this.selection.endColumn+this.selection.startColumn),this.targetPosition.lineNumber,this.selection.startLineNumber===this.selection.endLineNumber?this.targetPosition.column:this.selection.endColumn):this.targetSelection=new Sn(this.targetPosition.lineNumber-this.selection.endLineNumber+this.selection.startLineNumber,this.targetPosition.column,this.targetPosition.lineNumber,this.targetPosition.column+this.selection.endColumn-this.selection.startColumn):this.targetSelection=this.selection},e.prototype.computeCursorState=function(e,t){return this.targetSelection},e}(),EF=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function IF(e){return _?e.altKey:e.ctrlKey}var OF=function(e){function t(t){var n=e.call(this)||this;return n._editor=t,n._register(n._editor.onMouseDown((function(e){return n._onEditorMouseDown(e)}))),n._register(n._editor.onMouseUp((function(e){return n._onEditorMouseUp(e)}))),n._register(n._editor.onMouseDrag((function(e){return n._onEditorMouseDrag(e)}))),n._register(n._editor.onMouseDrop((function(e){return n._onEditorMouseDrop(e)}))),n._register(n._editor.onKeyDown((function(e){return n.onEditorKeyDown(e)}))),n._register(n._editor.onKeyUp((function(e){return n.onEditorKeyUp(e)}))),n._register(n._editor.onDidBlurEditorWidget((function(){return n.onEditorBlur()}))),n._dndDecorationIds=[],n._mouseDown=!1,n._modifierPressed=!1,n._dragSelection=null,n}return EF(t,e),t.prototype.onEditorBlur=function(){this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1,this._modifierPressed=!1},t.prototype.onEditorKeyDown=function(e){this._editor.getOption(24)&&(IF(e)&&(this._modifierPressed=!0),this._mouseDown&&IF(e)&&this._editor.updateOptions({mouseStyle:"copy"}))},t.prototype.onEditorKeyUp=function(e){this._editor.getOption(24)&&(IF(e)&&(this._modifierPressed=!1),this._mouseDown&&e.keyCode===t.TRIGGER_KEY_VALUE&&this._editor.updateOptions({mouseStyle:"default"}))},t.prototype._onEditorMouseDown=function(e){this._mouseDown=!0},t.prototype._onEditorMouseUp=function(e){this._mouseDown=!1,this._editor.updateOptions({mouseStyle:"text"})},t.prototype._onEditorMouseDrag=function(e){var t=e.target;if(null===this._dragSelection){var n=(this._editor.getSelections()||[]).filter((function(e){return t.position&&e.containsPosition(t.position)}));if(1!==n.length)return;this._dragSelection=n[0]}IF(e.event)?this._editor.updateOptions({mouseStyle:"copy"}):this._editor.updateOptions({mouseStyle:"default"}),t.position&&(this._dragSelection.containsPosition(t.position)?this._removeDecoration():this.showAt(t.position))},t.prototype._onEditorMouseDrop=function(e){if(e.target&&(this._hitContent(e.target)||this._hitMargin(e.target))&&e.target.position){var n=new bn(e.target.position.lineNumber,e.target.position.column);if(null===this._dragSelection){var i=null;if(e.event.shiftKey){var o=this._editor.getSelection();if(o){var r=o.selectionStartLineNumber,s=o.selectionStartColumn;i=[new Sn(r,s,n.lineNumber,n.column)]}}else i=(this._editor.getSelections()||[]).map((function(e){return e.containsPosition(n)?new Sn(n.lineNumber,n.column,n.lineNumber,n.column):e}));this._editor.setSelections(i||[],"mouse")}else(!this._dragSelection.containsPosition(n)||(IF(e.event)||this._modifierPressed)&&(this._dragSelection.getEndPosition().equals(n)||this._dragSelection.getStartPosition().equals(n)))&&(this._editor.pushUndoStop(),this._editor.executeCommand(t.ID,new kF(this._dragSelection,n,IF(e.event)||this._modifierPressed)),this._editor.pushUndoStop())}this._editor.updateOptions({mouseStyle:"text"}),this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1},t.prototype.showAt=function(e){var n=[{range:new wn(e.lineNumber,e.column,e.lineNumber,e.column),options:t._DECORATION_OPTIONS}];this._dndDecorationIds=this._editor.deltaDecorations(this._dndDecorationIds,n),this._editor.revealPosition(e,1)},t.prototype._removeDecoration=function(){this._dndDecorationIds=this._editor.deltaDecorations(this._dndDecorationIds,[])},t.prototype._hitContent=function(e){return 6===e.type||7===e.type},t.prototype._hitMargin=function(e){return 2===e.type||3===e.type||4===e.type},t.prototype.dispose=function(){this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1,this._modifierPressed=!1,e.prototype.dispose.call(this)},t.ID="editor.contrib.dragAndDrop",t.TRIGGER_KEY_VALUE=_?6:5,t._DECORATION_OPTIONS=kv.register({className:"dnd-target"}),t}(He);Pf(OF.ID,OF);var MF=function(){function e(e){this._editor=e,this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationId=null,this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null,this._startPosition=this._editor.getPosition()}return e.prototype.dispose=function(){this._editor.deltaDecorations(this._allDecorations(),[]),this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationId=null,this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null},e.prototype.reset=function(){this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationId=null,this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null},e.prototype.getCount=function(){return this._decorations.length},e.prototype.getFindScope=function(){return this._findScopeDecorationId?this._editor.getModel().getDecorationRange(this._findScopeDecorationId):null},e.prototype.getStartPosition=function(){return this._startPosition},e.prototype.setStartPosition=function(e){this._startPosition=e,this.setCurrentFindMatch(null)},e.prototype._getDecorationIndex=function(e){var t=this._decorations.indexOf(e);return t>=0?t+1:1},e.prototype.getCurrentMatchesPosition=function(t){for(var n=0,i=this._editor.getModel().getDecorationsInRange(t);n<i.length;n++){var o=i[n],r=o.options;if(r===e._FIND_MATCH_DECORATION||r===e._CURRENT_FIND_MATCH_DECORATION)return this._getDecorationIndex(o.id)}return 1},e.prototype.setCurrentFindMatch=function(t){var n=this,i=null,o=0;if(t)for(var r=0,s=this._decorations.length;r<s;r++){var a=this._editor.getModel().getDecorationRange(this._decorations[r]);if(t.equalsRange(a)){i=this._decorations[r],o=r+1;break}}return null===this._highlightedDecorationId&&null===i||this._editor.changeDecorations((function(t){if(null!==n._highlightedDecorationId&&(t.changeDecorationOptions(n._highlightedDecorationId,e._FIND_MATCH_DECORATION),n._highlightedDecorationId=null),null!==i&&(n._highlightedDecorationId=i,t.changeDecorationOptions(n._highlightedDecorationId,e._CURRENT_FIND_MATCH_DECORATION)),null!==n._rangeHighlightDecorationId&&(t.removeDecoration(n._rangeHighlightDecorationId),n._rangeHighlightDecorationId=null),null!==i){var o=n._editor.getModel().getDecorationRange(i);if(o.startLineNumber!==o.endLineNumber&&1===o.endColumn){var r=o.endLineNumber-1,s=n._editor.getModel().getLineMaxColumn(r);o=new wn(o.startLineNumber,o.startColumn,r,s)}n._rangeHighlightDecorationId=t.addDecoration(o,e._RANGE_HIGHLIGHT_DECORATION)}})),o},e.prototype.set=function(t,n){var i=this;this._editor.changeDecorations((function(o){var r=e._FIND_MATCH_DECORATION,s=[];if(t.length>1e3){r=e._FIND_MATCH_NO_OVERVIEW_DECORATION;for(var a=i._editor.getModel().getLineCount(),u=i._editor.getLayoutInfo().height/a,l=Math.max(2,Math.ceil(3/u)),c=t[0].range.startLineNumber,d=t[0].range.endLineNumber,h=1,p=t.length;h<p;h++){var f=t[h].range;d+l>=f.startLineNumber?f.endLineNumber>d&&(d=f.endLineNumber):(s.push({range:new wn(c,1,d,1),options:e._FIND_MATCH_ONLY_OVERVIEW_DECORATION}),c=f.startLineNumber,d=f.endLineNumber)}s.push({range:new wn(c,1,d,1),options:e._FIND_MATCH_ONLY_OVERVIEW_DECORATION})}var g=new Array(t.length);for(h=0,p=t.length;h<p;h++)g[h]={range:t[h].range,options:r};i._decorations=o.deltaDecorations(i._decorations,g),i._overviewRulerApproximateDecorations=o.deltaDecorations(i._overviewRulerApproximateDecorations,s),i._rangeHighlightDecorationId&&(o.removeDecoration(i._rangeHighlightDecorationId),i._rangeHighlightDecorationId=null),i._findScopeDecorationId&&(o.removeDecoration(i._findScopeDecorationId),i._findScopeDecorationId=null),n&&(i._findScopeDecorationId=o.addDecoration(n,e._FIND_SCOPE_DECORATION))}))},e.prototype.matchBeforePosition=function(e){if(0===this._decorations.length)return null;for(var t=this._decorations.length-1;t>=0;t--){var n=this._decorations[t],i=this._editor.getModel().getDecorationRange(n);if(i&&!(i.endLineNumber>e.lineNumber)){if(i.endLineNumber<e.lineNumber)return i;if(!(i.endColumn>e.column))return i}}return this._editor.getModel().getDecorationRange(this._decorations[this._decorations.length-1])},e.prototype.matchAfterPosition=function(e){if(0===this._decorations.length)return null;for(var t=0,n=this._decorations.length;t<n;t++){var i=this._decorations[t],o=this._editor.getModel().getDecorationRange(i);if(o&&!(o.startLineNumber<e.lineNumber)){if(o.startLineNumber>e.lineNumber)return o;if(!(o.startColumn<e.column))return o}}return this._editor.getModel().getDecorationRange(this._decorations[0])},e.prototype._allDecorations=function(){var e=[];return e=(e=e.concat(this._decorations)).concat(this._overviewRulerApproximateDecorations),this._findScopeDecorationId&&e.push(this._findScopeDecorationId),this._rangeHighlightDecorationId&&e.push(this._rangeHighlightDecorationId),e},e._CURRENT_FIND_MATCH_DECORATION=kv.register({stickiness:1,zIndex:13,className:"currentFindMatch",showIfCollapsed:!0,overviewRuler:{color:gg(bb),position:Va.Center},minimap:{color:gg(Cb),position:Ba.Inline}}),e._FIND_MATCH_DECORATION=kv.register({stickiness:1,className:"findMatch",showIfCollapsed:!0,overviewRuler:{color:gg(bb),position:Va.Center},minimap:{color:gg(Cb),position:Ba.Inline}}),e._FIND_MATCH_NO_OVERVIEW_DECORATION=kv.register({stickiness:1,className:"findMatch",showIfCollapsed:!0}),e._FIND_MATCH_ONLY_OVERVIEW_DECORATION=kv.register({stickiness:1,overviewRuler:{color:gg(bb),position:Va.Center}}),e._RANGE_HIGHLIGHT_DECORATION=kv.register({stickiness:1,className:"rangeHighlight",isWholeLine:!0}),e._FIND_SCOPE_DECORATION=kv.register({className:"findScope",isWholeLine:!0}),e}(),TF=function(){function e(e,t,n){this._editorSelection=e,this._ranges=t,this._replaceStrings=n,this._trackedEditorSelectionId=null}return e.prototype.getEditOperations=function(e,t){if(this._ranges.length>0){for(var n=[],i=0;i<this._ranges.length;i++)n.push({range:this._ranges[i],text:this._replaceStrings[i]});n.sort((function(e,t){return wn.compareRangesUsingStarts(e.range,t.range)}));var o=[],r=n[0];for(i=1;i<n.length;i++)r.range.endLineNumber===n[i].range.startLineNumber&&r.range.endColumn===n[i].range.startColumn?(r.range=r.range.plusRange(n[i].range),r.text=r.text+n[i].text):(o.push(r),r=n[i]);o.push(r);for(var s=0,a=o;s<a.length;s++){var u=a[s];t.addEditOperation(u.range,u.text)}}this._trackedEditorSelectionId=t.trackSelection(this._editorSelection)},e.prototype.computeCursorState=function(e,t){return t.getTrackedSelection(this._trackedEditorSelectionId)},e}();function PF(e,t){if(e&&""!==e[0]){var n=RF(e,t,"-"),i=RF(e,t,"_");return n&&!i?AF(e,t,"-"):!n&&i?AF(e,t,"_"):e[0].toUpperCase()===e[0]?t.toUpperCase():e[0].toLowerCase()===e[0]?t.toLowerCase():(o=e[0][0],void 0===r&&(r=!1),o&&(r&&(o=o.replace(/\\./g,"")),o.toLowerCase()!==o)?t[0].toUpperCase()+t.substr(1):t)}return t;var o,r}function RF(e,t,n){return-1!==e[0].indexOf(n)&&-1!==t.indexOf(n)&&e[0].split(n).length===t.split(n).length}function AF(e,t,n){var i=t.split(n),o=e[0].split(n),r="";return i.forEach((function(e,t){r+=PF([o[t]],e)+n})),r.slice(0,-1)}var FF=function(e){this.staticValue=e,this.kind=0},WF=function(e){this.pieces=e,this.kind=1},VF=function(){function e(e){e&&0!==e.length?1===e.length&&null!==e[0].staticValue?this._state=new FF(e[0].staticValue):this._state=new WF(e):this._state=new FF("")}return e.fromStaticValue=function(t){return new e([BF.staticValue(t)])},Object.defineProperty(e.prototype,"hasReplacementPatterns",{get:function(){return 1===this._state.kind},enumerable:!0,configurable:!0}),e.prototype.buildReplaceString=function(t,n){if(0===this._state.kind)return n?PF(t,this._state.staticValue):this._state.staticValue;for(var i="",o=0,r=this._state.pieces.length;o<r;o++){var s=this._state.pieces[o];null===s.staticValue?i+=e._substitute(s.matchIndex,t):i+=s.staticValue}return i},e._substitute=function(e,t){if(null===t)return"";if(0===e)return t[0];for(var n="";e>0;){if(e<t.length)return(t[e]||"")+n;n=String(e%10)+n,e=Math.floor(e/10)}return"$"+n},e}(),BF=function(){function e(e,t){this.staticValue=e,this.matchIndex=t}return e.staticValue=function(t){return new e(t,-1)},e.matchIndex=function(t){return new e(null,t)},e}(),HF=function(){function e(e){this._source=e,this._lastCharIndex=0,this._result=[],this._resultLen=0,this._currentStaticPiece=""}return e.prototype.emitUnchanged=function(e){this._emitStatic(this._source.substring(this._lastCharIndex,e)),this._lastCharIndex=e},e.prototype.emitStatic=function(e,t){this._emitStatic(e),this._lastCharIndex=t},e.prototype._emitStatic=function(e){0!==e.length&&(this._currentStaticPiece+=e)},e.prototype.emitMatchIndex=function(e,t){0!==this._currentStaticPiece.length&&(this._result[this._resultLen++]=BF.staticValue(this._currentStaticPiece),this._currentStaticPiece=""),this._result[this._resultLen++]=BF.matchIndex(e),this._lastCharIndex=t},e.prototype.finalize=function(){return this.emitUnchanged(this._source.length),0!==this._currentStaticPiece.length&&(this._result[this._resultLen++]=BF.staticValue(this._currentStaticPiece),this._currentStaticPiece=""),new VF(this._result)},e}();var zF=new Kh("findWidgetVisible",!1),jF=new Kh("findInputFocussed",!1),UF=new Kh("replaceInputFocussed",!1),KF={primary:545,mac:{primary:2593}},qF={primary:565,mac:{primary:2613}},GF={primary:560,mac:{primary:2608}},ZF={primary:554,mac:{primary:2602}},YF="actions.find",XF="actions.findWithSelection",$F="editor.action.nextMatchFindAction",QF="editor.action.previousMatchFindAction",JF="editor.action.nextSelectionMatchFindAction",eW="editor.action.previousSelectionMatchFindAction",tW="editor.action.startFindReplaceAction",nW="closeFindWidget",iW="toggleFindCaseSensitive",oW="toggleFindWholeWord",rW="toggleFindRegex",sW="toggleFindInSelection",aW="editor.action.replaceOne",uW="editor.action.replaceAll",lW="editor.action.selectAllMatches",cW=function(){function e(e,t){var n=this;this._toDispose=new Be,this._editor=e,this._state=t,this._isDisposed=!1,this._startSearchingTimer=new yi,this._decorations=new MF(e),this._toDispose.add(this._decorations),this._updateDecorationsScheduler=new wi((function(){return n.research(!1)}),100),this._toDispose.add(this._updateDecorationsScheduler),this._toDispose.add(this._editor.onDidChangeCursorPosition((function(e){3!==e.reason&&5!==e.reason&&6!==e.reason||n._decorations.setStartPosition(n._editor.getPosition())}))),this._ignoreModelContentChanged=!1,this._toDispose.add(this._editor.onDidChangeModelContent((function(e){n._ignoreModelContentChanged||(e.isFlush&&n._decorations.reset(),n._decorations.setStartPosition(n._editor.getPosition()),n._updateDecorationsScheduler.schedule())}))),this._toDispose.add(this._state.onFindReplaceStateChange((function(e){return n._onStateChanged(e)}))),this.research(!1,this._state.searchScope)}return e.prototype.dispose=function(){this._isDisposed=!0,Ae(this._startSearchingTimer),this._toDispose.dispose()},e.prototype._onStateChanged=function(e){var t=this;this._isDisposed||this._editor.hasModel()&&(e.searchString||e.isReplaceRevealed||e.isRegex||e.wholeWord||e.matchCase||e.searchScope)&&(this._editor.getModel().isTooLargeForSyncing()?(this._startSearchingTimer.cancel(),this._startSearchingTimer.setIfNotSet((function(){e.searchScope?t.research(e.moveCursor,t._state.searchScope):t.research(e.moveCursor)}),240)):e.searchScope?this.research(e.moveCursor,this._state.searchScope):this.research(e.moveCursor))},e._getSearchRange=function(e,t){return t||e.getFullModelRange()},e.prototype.research=function(e,t){var n=null;null!==(n=void 0!==t?t:this._decorations.getFindScope())&&n.startLineNumber!==n.endLineNumber&&(n=1===n.endColumn?new wn(n.startLineNumber,1,n.endLineNumber-1,this._editor.getModel().getLineMaxColumn(n.endLineNumber-1)):new wn(n.startLineNumber,1,n.endLineNumber,this._editor.getModel().getLineMaxColumn(n.endLineNumber)));var i=this._findMatches(n,!1,19999);this._decorations.set(i,n),this._state.changeMatchInfo(this._decorations.getCurrentMatchesPosition(this._editor.getSelection()),this._decorations.getCount(),void 0),e&&this._moveToNextMatch(this._decorations.getStartPosition())},e.prototype._hasMatches=function(){return this._state.matchesCount>0},e.prototype._cannotFind=function(){if(!this._hasMatches()){var e=this._decorations.getFindScope();return e&&this._editor.revealRangeInCenterIfOutsideViewport(e,0),!0}return!1},e.prototype._setCurrentFindMatch=function(e){var t=this._decorations.setCurrentFindMatch(e);this._state.changeMatchInfo(t,this._decorations.getCount(),e),this._editor.setSelection(e),this._editor.revealRangeInCenterIfOutsideViewport(e,0)},e.prototype._prevSearchPosition=function(e){var t=this._state.isRegex&&(this._state.searchString.indexOf("^")>=0||this._state.searchString.indexOf("$")>=0),n=e.lineNumber,i=e.column,o=this._editor.getModel();return t||1===i?(1===n?n=o.getLineCount():n--,i=o.getLineMaxColumn(n)):i--,new bn(n,i)},e.prototype._moveToPrevMatch=function(t,n){if(void 0===n&&(n=!1),this._decorations.getCount()<19999){var i=this._decorations.matchBeforePosition(t);return i&&i.isEmpty()&&i.getStartPosition().equals(t)&&(t=this._prevSearchPosition(t),i=this._decorations.matchBeforePosition(t)),void(i&&this._setCurrentFindMatch(i))}if(!this._cannotFind()){var o=this._decorations.getFindScope(),r=e._getSearchRange(this._editor.getModel(),o);r.getEndPosition().isBefore(t)&&(t=r.getEndPosition()),t.isBefore(r.getStartPosition())&&(t=r.getEndPosition());var s=t.lineNumber,a=t.column,u=this._editor.getModel(),l=new bn(s,a),c=u.findPreviousMatch(this._state.searchString,l,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(96):null,!1);if(c&&c.range.isEmpty()&&c.range.getStartPosition().equals(l)&&(l=this._prevSearchPosition(l),c=u.findPreviousMatch(this._state.searchString,l,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(96):null,!1)),c)return n||r.containsRange(c.range)?void this._setCurrentFindMatch(c.range):this._moveToPrevMatch(c.range.getStartPosition(),!0)}},e.prototype.moveToPrevMatch=function(){this._moveToPrevMatch(this._editor.getSelection().getStartPosition())},e.prototype._nextSearchPosition=function(e){var t=this._state.isRegex&&(this._state.searchString.indexOf("^")>=0||this._state.searchString.indexOf("$")>=0),n=e.lineNumber,i=e.column,o=this._editor.getModel();return t||i===o.getLineMaxColumn(n)?(n===o.getLineCount()?n=1:n++,i=1):i++,new bn(n,i)},e.prototype._moveToNextMatch=function(e){if(this._decorations.getCount()<19999){var t=this._decorations.matchAfterPosition(e);return t&&t.isEmpty()&&t.getStartPosition().equals(e)&&(e=this._nextSearchPosition(e),t=this._decorations.matchAfterPosition(e)),void(t&&this._setCurrentFindMatch(t))}var n=this._getNextMatch(e,!1,!0);n&&this._setCurrentFindMatch(n.range)},e.prototype._getNextMatch=function(t,n,i,o){if(void 0===o&&(o=!1),this._cannotFind())return null;var r=this._decorations.getFindScope(),s=e._getSearchRange(this._editor.getModel(),r);s.getEndPosition().isBefore(t)&&(t=s.getStartPosition()),t.isBefore(s.getStartPosition())&&(t=s.getStartPosition());var a=t.lineNumber,u=t.column,l=this._editor.getModel(),c=new bn(a,u),d=l.findNextMatch(this._state.searchString,c,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(96):null,n);return i&&d&&d.range.isEmpty()&&d.range.getStartPosition().equals(c)&&(c=this._nextSearchPosition(c),d=l.findNextMatch(this._state.searchString,c,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(96):null,n)),d?o||s.containsRange(d.range)?d:this._getNextMatch(d.range.getEndPosition(),n,i,!0):null},e.prototype.moveToNextMatch=function(){this._moveToNextMatch(this._editor.getSelection().getEndPosition())},e.prototype._getReplacePattern=function(){return this._state.isRegex?function(e){if(!e||0===e.length)return new VF(null);for(var t=new HF(e),n=0,i=e.length;n<i;n++){var o=e.charCodeAt(n);if(92!==o){if(36===o){if(++n>=i)break;if(36===(a=e.charCodeAt(n))){t.emitUnchanged(n-1),t.emitStatic("$",n+1);continue}if(48===a||38===a){t.emitUnchanged(n-1),t.emitMatchIndex(0,n+1);continue}if(49<=a&&a<=57){var r=a-48;if(n+1<i){var s=e.charCodeAt(n+1);if(48<=s&&s<=57){n++,r=10*r+(s-48),t.emitUnchanged(n-2),t.emitMatchIndex(r,n+1);continue}}t.emitUnchanged(n-1),t.emitMatchIndex(r,n+1);continue}}}else{if(++n>=i)break;var a;switch(a=e.charCodeAt(n)){case 92:t.emitUnchanged(n-1),t.emitStatic("\\",n+1);break;case 110:t.emitUnchanged(n-1),t.emitStatic("\n",n+1);break;case 116:t.emitUnchanged(n-1),t.emitStatic("\t",n+1)}}}return t.finalize()}(this._state.replaceString):VF.fromStaticValue(this._state.replaceString)},e.prototype.replace=function(){if(this._hasMatches()){var e=this._getReplacePattern(),t=this._editor.getSelection(),n=this._getNextMatch(t.getStartPosition(),!0,!1);if(n)if(t.equalsRange(n.range)){var i=e.buildReplaceString(n.matches,this._state.preserveCase),o=new Fw(t,i);this._executeEditorCommand("replace",o),this._decorations.setStartPosition(new bn(t.startLineNumber,t.startColumn+i.length)),this.research(!0)}else this._decorations.setStartPosition(this._editor.getPosition()),this._setCurrentFindMatch(n.range)}},e.prototype._findMatches=function(t,n,i){var o=e._getSearchRange(this._editor.getModel(),t);return this._editor.getModel().findMatches(this._state.searchString,o,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(96):null,n,i)},e.prototype.replaceAll=function(){if(this._hasMatches()){var e=this._decorations.getFindScope();null===e&&this._state.matchesCount>=19999?this._largeReplaceAll():this._regularReplaceAll(e),this.research(!1)}},e.prototype._largeReplaceAll=function(){var e=new Nm(this._state.searchString,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(96):null).parseSearchRequest();if(e){var t=e.regex;if(!t.multiline){var n="mu";t.ignoreCase&&(n+="i"),t.global&&(n+="g"),t=new RegExp(t.source,n)}var i,o=this._editor.getModel(),r=o.getValue(1),s=o.getFullModelRange(),a=this._getReplacePattern(),u=this._state.preserveCase;i=a.hasReplacementPatterns||u?r.replace(t,(function(){return a.buildReplaceString(arguments,u)})):r.replace(t,a.buildReplaceString(null,u));var l=new Hw(s,i,this._editor.getSelection());this._executeEditorCommand("replaceAll",l)}},e.prototype._regularReplaceAll=function(e){for(var t=this._getReplacePattern(),n=this._findMatches(e,t.hasReplacementPatterns||this._state.preserveCase,1073741824),i=[],o=0,r=n.length;o<r;o++)i[o]=t.buildReplaceString(n[o].matches,this._state.preserveCase);var s=new TF(this._editor.getSelection(),n.map((function(e){return e.range})),i);this._executeEditorCommand("replaceAll",s)},e.prototype.selectAllMatches=function(){if(this._hasMatches()){for(var e=this._decorations.getFindScope(),t=this._findMatches(e,!1,1073741824).map((function(e){return new Sn(e.range.startLineNumber,e.range.startColumn,e.range.endLineNumber,e.range.endColumn)})),n=this._editor.getSelection(),i=0,o=t.length;i<o;i++){if(t[i].equalsRange(n)){t=[n].concat(t.slice(0,i)).concat(t.slice(i+1));break}}this._editor.setSelections(t)}},e.prototype._executeEditorCommand=function(e,t){try{this._ignoreModelContentChanged=!0,this._editor.pushUndoStop(),this._editor.executeCommand(e,t),this._editor.pushUndoStop()}finally{this._ignoreModelContentChanged=!1}},e}(),dW=(n(404),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),hW={inputActiveOptionBorder:mv.fromHex("#007ACC00"),inputActiveOptionBackground:mv.fromHex("#0E639C50")},pW=function(e){function t(t){var n=e.call(this)||this;return n._onChange=n._register(new nt),n.onChange=n._onChange.event,n._onKeyDown=n._register(new nt),n.onKeyDown=n._onKeyDown.event,n._opts=xa(t),ka(n._opts,hW,!1),n._checked=n._opts.isChecked,n.domNode=document.createElement("div"),n.domNode.title=n._opts.title,n.domNode.className="monaco-custom-checkbox codicon "+(n._opts.actionClassName||"")+" "+(n._checked?"checked":"unchecked"),n.domNode.tabIndex=0,n.domNode.setAttribute("role","checkbox"),n.domNode.setAttribute("aria-checked",String(n._checked)),n.domNode.setAttribute("aria-label",n._opts.title),n.applyStyles(),n.onclick(n.domNode,(function(e){n.checked=!n._checked,n._onChange.fire(!1),e.preventDefault()})),n.ignoreGesture(n.domNode),n.onkeydown(n.domNode,(function(e){if(10===e.keyCode||3===e.keyCode)return n.checked=!n._checked,n._onChange.fire(!0),void e.preventDefault();n._onKeyDown.fire(e)})),n}return dW(t,e),Object.defineProperty(t.prototype,"enabled",{get:function(){return"true"!==this.domNode.getAttribute("aria-disabled")},enumerable:!0,configurable:!0}),t.prototype.focus=function(){this.domNode.focus()},Object.defineProperty(t.prototype,"checked",{get:function(){return this._checked},set:function(e){this._checked=e,this.domNode.setAttribute("aria-checked",String(this._checked)),this._checked?this.domNode.classList.add("checked"):this.domNode.classList.remove("checked"),this.applyStyles()},enumerable:!0,configurable:!0}),t.prototype.width=function(){return 22},t.prototype.style=function(e){e.inputActiveOptionBorder&&(this._opts.inputActiveOptionBorder=e.inputActiveOptionBorder),e.inputActiveOptionBackground&&(this._opts.inputActiveOptionBackground=e.inputActiveOptionBackground),this.applyStyles()},t.prototype.applyStyles=function(){this.domNode&&(this.domNode.style.borderColor=this._checked&&this._opts.inputActiveOptionBorder?this._opts.inputActiveOptionBorder.toString():"transparent",this.domNode.style.backgroundColor=this._checked&&this._opts.inputActiveOptionBackground?this._opts.inputActiveOptionBackground.toString():"transparent")},t.prototype.enable=function(){this.domNode.tabIndex=0,this.domNode.setAttribute("aria-disabled",String(!1))},t.prototype.disable=function(){ir(this.domNode),this.domNode.setAttribute("aria-disabled",String(!0))},t}(KC),fW=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),gW=r("caseDescription","Match Case"),mW=r("wordsDescription","Match Whole Word"),vW=r("regexDescription","Use Regular Expression"),_W=function(e){function t(t){return e.call(this,{actionClassName:"codicon-case-sensitive",title:gW+t.appendTitle,isChecked:t.isChecked,inputActiveOptionBorder:t.inputActiveOptionBorder,inputActiveOptionBackground:t.inputActiveOptionBackground})||this}return fW(t,e),t}(pW),yW=function(e){function t(t){return e.call(this,{actionClassName:"codicon-whole-word",title:mW+t.appendTitle,isChecked:t.isChecked,inputActiveOptionBorder:t.inputActiveOptionBorder,inputActiveOptionBackground:t.inputActiveOptionBackground})||this}return fW(t,e),t}(pW),bW=function(e){function t(t){return e.call(this,{actionClassName:"codicon-regex",title:vW+t.appendTitle,isChecked:t.isChecked,inputActiveOptionBorder:t.inputActiveOptionBorder,inputActiveOptionBackground:t.inputActiveOptionBackground})||this}return fW(t,e),t}(pW),wW=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),CW=function(e){function t(t,n,i,o){var r=e.call(this)||this;r._hideSoon=r._register(new wi((function(){return r._hide()}),2e3)),r._isVisible=!1,r._editor=t,r._state=n,r._keybindingService=i,r._domNode=document.createElement("div"),r._domNode.className="findOptionsWidget",r._domNode.style.display="none",r._domNode.style.top="10px",r._domNode.setAttribute("role","presentation"),r._domNode.setAttribute("aria-hidden","true");var s=o.getTheme().getColor(B_),a=o.getTheme().getColor(H_);return r.caseSensitive=r._register(new _W({appendTitle:r._keybindingLabelFor(iW),isChecked:r._state.matchCase,inputActiveOptionBorder:s,inputActiveOptionBackground:a})),r._domNode.appendChild(r.caseSensitive.domNode),r._register(r.caseSensitive.onChange((function(){r._state.change({matchCase:r.caseSensitive.checked},!1)}))),r.wholeWords=r._register(new yW({appendTitle:r._keybindingLabelFor(oW),isChecked:r._state.wholeWord,inputActiveOptionBorder:s,inputActiveOptionBackground:a})),r._domNode.appendChild(r.wholeWords.domNode),r._register(r.wholeWords.onChange((function(){r._state.change({wholeWord:r.wholeWords.checked},!1)}))),r.regex=r._register(new bW({appendTitle:r._keybindingLabelFor(rW),isChecked:r._state.isRegex,inputActiveOptionBorder:s,inputActiveOptionBackground:a})),r._domNode.appendChild(r.regex.domNode),r._register(r.regex.onChange((function(){r._state.change({isRegex:r.regex.checked},!1)}))),r._editor.addOverlayWidget(r),r._register(r._state.onFindReplaceStateChange((function(e){var t=!1;e.isRegex&&(r.regex.checked=r._state.isRegex,t=!0),e.wholeWord&&(r.wholeWords.checked=r._state.wholeWord,t=!0),e.matchCase&&(r.caseSensitive.checked=r._state.matchCase,t=!0),!r._state.isRevealed&&t&&r._revealTemporarily()}))),r._register(fo(r._domNode,(function(e){return r._onMouseOut()}))),r._register(uo(r._domNode,"mouseover",(function(e){return r._onMouseOver()}))),r._applyTheme(o.getTheme()),r._register(o.onThemeChange(r._applyTheme.bind(r))),r}return wW(t,e),t.prototype._keybindingLabelFor=function(e){var t=this._keybindingService.lookupKeybinding(e);return t?" ("+t.getLabel()+")":""},t.prototype.dispose=function(){this._editor.removeOverlayWidget(this),e.prototype.dispose.call(this)},t.prototype.getId=function(){return t.ID},t.prototype.getDomNode=function(){return this._domNode},t.prototype.getPosition=function(){return{preference:0}},t.prototype.highlightFindOptions=function(){this._revealTemporarily()},t.prototype._revealTemporarily=function(){this._show(),this._hideSoon.schedule()},t.prototype._onMouseOut=function(){this._hideSoon.schedule()},t.prototype._onMouseOver=function(){this._hideSoon.cancel()},t.prototype._show=function(){this._isVisible||(this._isVisible=!0,this._domNode.style.display="block")},t.prototype._hide=function(){this._isVisible&&(this._isVisible=!1,this._domNode.style.display="none")},t.prototype._applyTheme=function(e){var t={inputActiveOptionBorder:e.getColor(B_),inputActiveOptionBackground:e.getColor(H_)};this.caseSensitive.style(t),this.wholeWords.style(t),this.regex.style(t)},t.ID="editor.contrib.findOptionsWidget",t}(KC);yg((function(e,t){var n=e.getColor(_y);n&&t.addRule(".monaco-editor .findOptionsWidget { background-color: "+n+"; }");var i=e.getColor(yy);i&&t.addRule(".monaco-editor .findOptionsWidget { color: "+i+"; }");var o=e.getColor(A_);o&&t.addRule(".monaco-editor .findOptionsWidget { box-shadow: 0 2px 8px "+o+"; }");var r=e.getColor(M_);r&&t.addRule(".monaco-editor .findOptionsWidget { border: 2px solid "+r+"; }")}));var SW=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function LW(e,t){return 1===e||2!==e&&t}var xW=function(e){function t(){var t=e.call(this)||this;return t._onFindReplaceStateChange=t._register(new nt),t.onFindReplaceStateChange=t._onFindReplaceStateChange.event,t._searchString="",t._replaceString="",t._isRevealed=!1,t._isReplaceRevealed=!1,t._isRegex=!1,t._isRegexOverride=0,t._wholeWord=!1,t._wholeWordOverride=0,t._matchCase=!1,t._matchCaseOverride=0,t._preserveCase=!1,t._preserveCaseOverride=0,t._searchScope=null,t._matchesPosition=0,t._matchesCount=0,t._currentMatch=null,t}return SW(t,e),Object.defineProperty(t.prototype,"searchString",{get:function(){return this._searchString},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"replaceString",{get:function(){return this._replaceString},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isRevealed",{get:function(){return this._isRevealed},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isReplaceRevealed",{get:function(){return this._isReplaceRevealed},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isRegex",{get:function(){return LW(this._isRegexOverride,this._isRegex)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"wholeWord",{get:function(){return LW(this._wholeWordOverride,this._wholeWord)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"matchCase",{get:function(){return LW(this._matchCaseOverride,this._matchCase)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"preserveCase",{get:function(){return LW(this._preserveCaseOverride,this._preserveCase)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"actualIsRegex",{get:function(){return this._isRegex},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"actualWholeWord",{get:function(){return this._wholeWord},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"actualMatchCase",{get:function(){return this._matchCase},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"actualPreserveCase",{get:function(){return this._preserveCase},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"searchScope",{get:function(){return this._searchScope},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"matchesPosition",{get:function(){return this._matchesPosition},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"matchesCount",{get:function(){return this._matchesCount},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"currentMatch",{get:function(){return this._currentMatch},enumerable:!0,configurable:!0}),t.prototype.changeMatchInfo=function(e,t,n){var i={moveCursor:!1,updateHistory:!1,searchString:!1,replaceString:!1,isRevealed:!1,isReplaceRevealed:!1,isRegex:!1,wholeWord:!1,matchCase:!1,preserveCase:!1,searchScope:!1,matchesPosition:!1,matchesCount:!1,currentMatch:!1},o=!1;0===t&&(e=0),e>t&&(e=t),this._matchesPosition!==e&&(this._matchesPosition=e,i.matchesPosition=!0,o=!0),this._matchesCount!==t&&(this._matchesCount=t,i.matchesCount=!0,o=!0),void 0!==n&&(wn.equalsRange(this._currentMatch,n)||(this._currentMatch=n,i.currentMatch=!0,o=!0)),o&&this._onFindReplaceStateChange.fire(i)},t.prototype.change=function(e,t,n){void 0===n&&(n=!0);var i={moveCursor:t,updateHistory:n,searchString:!1,replaceString:!1,isRevealed:!1,isReplaceRevealed:!1,isRegex:!1,wholeWord:!1,matchCase:!1,preserveCase:!1,searchScope:!1,matchesPosition:!1,matchesCount:!1,currentMatch:!1},o=!1,r=this.isRegex,s=this.wholeWord,a=this.matchCase,u=this.preserveCase;void 0!==e.searchString&&this._searchString!==e.searchString&&(this._searchString=e.searchString,i.searchString=!0,o=!0),void 0!==e.replaceString&&this._replaceString!==e.replaceString&&(this._replaceString=e.replaceString,i.replaceString=!0,o=!0),void 0!==e.isRevealed&&this._isRevealed!==e.isRevealed&&(this._isRevealed=e.isRevealed,i.isRevealed=!0,o=!0),void 0!==e.isReplaceRevealed&&this._isReplaceRevealed!==e.isReplaceRevealed&&(this._isReplaceRevealed=e.isReplaceRevealed,i.isReplaceRevealed=!0,o=!0),void 0!==e.isRegex&&(this._isRegex=e.isRegex),void 0!==e.wholeWord&&(this._wholeWord=e.wholeWord),void 0!==e.matchCase&&(this._matchCase=e.matchCase),void 0!==e.preserveCase&&(this._preserveCase=e.preserveCase),void 0!==e.searchScope&&(wn.equalsRange(this._searchScope,e.searchScope)||(this._searchScope=e.searchScope,i.searchScope=!0,o=!0)),this._isRegexOverride=void 0!==e.isRegexOverride?e.isRegexOverride:0,this._wholeWordOverride=void 0!==e.wholeWordOverride?e.wholeWordOverride:0,this._matchCaseOverride=void 0!==e.matchCaseOverride?e.matchCaseOverride:0,this._preserveCaseOverride=void 0!==e.preserveCaseOverride?e.preserveCaseOverride:0,r!==this.isRegex&&(o=!0,i.isRegex=!0),s!==this.wholeWord&&(o=!0,i.wholeWord=!0),a!==this.matchCase&&(o=!0,i.matchCase=!0),u!==this.preserveCase&&(o=!0,i.preserveCase=!0),o&&this._onFindReplaceStateChange.fire(i)},t}(He);n(405),n(330),n(406);function DW(e,t){void 0===t&&(t={});var n=NW(t);return function e(t,n,i){var o;if(2===n.type)o=document.createTextNode(n.content||"");else if(3===n.type)o=document.createElement("b");else if(4===n.type)o=document.createElement("i");else if(5===n.type&&i){var r=document.createElement("a");r.href="#",i.disposeables.add(co(r,"click",(function(e){i.callback(String(n.index),e)}))),o=r}else 7===n.type?o=document.createElement("br"):1===n.type&&(o=t);o&&t!==o&&t.appendChild(o);o&&Array.isArray(n.children)&&n.children.forEach((function(t){e(o,t,i)}))}(n,function(e){var t={type:1,children:[]},n=0,i=t,o=[],r=new kW(e);for(;!r.eos();){var s=r.next(),a="\\"===s&&0!==EW(r.peek());if(a&&(s=r.next()),a||0===EW(s)||s!==r.peek())if("\n"===s)2===i.type&&(i=o.pop()),i.children.push({type:7});else if(2!==i.type){var u={type:2,content:s};i.children.push(u),o.push(i),i=u}else i.content+=s;else{r.advance(),2===i.type&&(i=o.pop());var l=EW(s);if(i.type===l||5===i.type&&6===l)i=o.pop();else{var c={type:l,children:[]};5===l&&(c.index=n,n++),i.children.push(c),o.push(i),i=c}}}2===i.type&&(i=o.pop());o.length;return t}(e),t.actionHandler),n}function NW(e){var t=e.inline?"span":"div",n=document.createElement(t);return e.className&&(n.className=e.className),n}var kW=function(){function e(e){this.source=e,this.index=0}return e.prototype.eos=function(){return this.index>=this.source.length},e.prototype.next=function(){var e=this.peek();return this.advance(),e},e.prototype.peek=function(){return this.source[this.index]},e.prototype.advance=function(){this.index++},e}();function EW(e){switch(e){case"*":return 3;case"_":return 4;case"[":return 5;case"]":return 6;default:return 0}}var IW=function(){function e(e,t){void 0===e&&(e=[]),void 0===t&&(t=10),this._initialize(e),this._limit=t,this._onChange()}return e.prototype.add=function(e){this._history.delete(e),this._history.add(e),this._onChange()},e.prototype.next=function(){return this._navigator.next()},e.prototype.previous=function(){return this._navigator.previous()},e.prototype.current=function(){return this._navigator.current()},e.prototype.parent=function(){return null},e.prototype.first=function(){return this._navigator.first()},e.prototype.last=function(){return this._navigator.last()},e.prototype.has=function(e){return this._history.has(e)},e.prototype._onChange=function(){this._reduceToLimit();var e=this._elements;this._navigator=new Ye(e,0,e.length,e.length)},e.prototype._reduceToLimit=function(){var e=this._elements;e.length>this._limit&&this._initialize(e.slice(e.length-this._limit))},e.prototype._initialize=function(e){this._history=new Set;for(var t=0,n=e;t<n.length;t++){var i=n[t];this._history.add(i)}},Object.defineProperty(e.prototype,"_elements",{get:function(){var e=[];return this._history.forEach((function(t){return e.push(t)})),e},enumerable:!0,configurable:!0}),e}(),OW=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),MW=er,TW={inputBackground:mv.fromHex("#3C3C3C"),inputForeground:mv.fromHex("#CCCCCC"),inputValidationInfoBorder:mv.fromHex("#55AAFF"),inputValidationInfoBackground:mv.fromHex("#063B49"),inputValidationWarningBorder:mv.fromHex("#B89500"),inputValidationWarningBackground:mv.fromHex("#352A05"),inputValidationErrorBorder:mv.fromHex("#BE1100"),inputValidationErrorBackground:mv.fromHex("#5A1D1D")},PW=function(e){function t(t,n,i){var o=e.call(this)||this;o.state="idle",o.maxHeight=Number.POSITIVE_INFINITY,o._onDidChange=o._register(new nt),o.onDidChange=o._onDidChange.event,o._onDidHeightChange=o._register(new nt),o.onDidHeightChange=o._onDidHeightChange.event,o.contextViewProvider=n,o.options=i||Object.create(null),ka(o.options,TW,!1),o.message=null,o.placeholder=o.options.placeholder||"",o.ariaLabel=o.options.ariaLabel||"",o.inputBackground=o.options.inputBackground,o.inputForeground=o.options.inputForeground,o.inputBorder=o.options.inputBorder,o.inputValidationInfoBorder=o.options.inputValidationInfoBorder,o.inputValidationInfoBackground=o.options.inputValidationInfoBackground,o.inputValidationInfoForeground=o.options.inputValidationInfoForeground,o.inputValidationWarningBorder=o.options.inputValidationWarningBorder,o.inputValidationWarningBackground=o.options.inputValidationWarningBackground,o.inputValidationWarningForeground=o.options.inputValidationWarningForeground,o.inputValidationErrorBorder=o.options.inputValidationErrorBorder,o.inputValidationErrorBackground=o.options.inputValidationErrorBackground,o.inputValidationErrorForeground=o.options.inputValidationErrorForeground,o.options.validationOptions&&(o.validation=o.options.validationOptions.validation),o.element=Xo(t,MW(".monaco-inputbox.idle"));var r=o.options.flexibleHeight?"textarea":"input",s=Xo(o.element,MW(".wrapper"));if(o.input=Xo(s,MW(r+".input.empty")),o.input.setAttribute("autocorrect","off"),o.input.setAttribute("autocapitalize","off"),o.input.setAttribute("spellcheck","false"),o.onfocus(o.input,(function(){return no(o.element,"synthetic-focus")})),o.onblur(o.input,(function(){return oo(o.element,"synthetic-focus")})),o.options.flexibleHeight){o.maxHeight="number"==typeof o.options.flexibleMaxHeight?o.options.flexibleMaxHeight:Number.POSITIVE_INFINITY,o.mirror=Xo(s,MW("div.mirror")),o.mirror.innerHTML=" ",o.scrollableElement=new pS(o.element,{vertical:1}),o.options.flexibleWidth&&(o.input.setAttribute("wrap","off"),o.mirror.style.whiteSpace="pre",o.mirror.style.wordWrap="initial"),Xo(t,o.scrollableElement.getDomNode()),o._register(o.scrollableElement),o._register(o.scrollableElement.onScroll((function(e){return o.input.scrollTop=e.scrollTop})));var a=Ge.filter(Xn(document,"selectionchange"),(function(){var e=document.getSelection();return(null==e?void 0:e.anchorNode)===s}));o._register(a(o.updateScrollDimensions,o)),o._register(o.onDidHeightChange(o.updateScrollDimensions,o))}else o.input.type=o.options.type||"text",o.input.setAttribute("wrap","off");return o.ariaLabel&&o.input.setAttribute("aria-label",o.ariaLabel),o.placeholder&&o.setPlaceHolder(o.placeholder),o.oninput(o.input,(function(){return o.onValueChange()})),o.onblur(o.input,(function(){return o.onBlur()})),o.onfocus(o.input,(function(){return o.onFocus()})),o.placeholder&&Vn&&o.onclick(o.input,(function(e){Go(e,!0),o.input.focus()})),o.ignoreGesture(o.input),setTimeout((function(){return o.updateMirror()}),0),o.options.actions&&(o.actionbar=o._register(new vD(o.element)),o.actionbar.push(o.options.actions,{icon:!0,label:!1})),o.applyStyles(),o}return OW(t,e),t.prototype.onBlur=function(){this._hideMessage()},t.prototype.onFocus=function(){this._showMessage()},t.prototype.setPlaceHolder=function(e){this.placeholder=e,this.input.setAttribute("placeholder",e),this.input.title=e},t.prototype.setAriaLabel=function(e){this.ariaLabel=e,e?this.input.setAttribute("aria-label",this.ariaLabel):this.input.removeAttribute("aria-label")},Object.defineProperty(t.prototype,"inputElement",{get:function(){return this.input},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"value",{get:function(){return this.input.value},set:function(e){this.input.value!==e&&(this.input.value=e,this.onValueChange())},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"height",{get:function(){return"number"==typeof this.cachedHeight?this.cachedHeight:Ao(this.element)},enumerable:!0,configurable:!0}),t.prototype.focus=function(){this.input.focus()},t.prototype.blur=function(){this.input.blur()},t.prototype.hasFocus=function(){return document.activeElement===this.input},t.prototype.select=function(e){void 0===e&&(e=null),this.input.select(),e&&this.input.setSelectionRange(e.start,e.end)},t.prototype.enable=function(){this.input.removeAttribute("disabled")},t.prototype.disable=function(){this.blur(),this.input.disabled=!0,this._hideMessage()},Object.defineProperty(t.prototype,"width",{get:function(){return To(this.input)},set:function(e){if(this.options.flexibleHeight&&this.options.flexibleWidth){var t=0;if(this.mirror)t=(parseFloat(this.mirror.style.paddingLeft||"")||0)+(parseFloat(this.mirror.style.paddingRight||"")||0);this.input.style.width=e-t+"px"}else this.input.style.width=e+"px";this.mirror&&(this.mirror.style.width=e+"px")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paddingRight",{set:function(e){this.options.flexibleHeight&&this.options.flexibleWidth?this.input.style.width="calc(100% - "+e+"px)":this.input.style.paddingRight=e+"px",this.mirror&&(this.mirror.style.paddingRight=e+"px")},enumerable:!0,configurable:!0}),t.prototype.updateScrollDimensions=function(){if("number"==typeof this.cachedContentHeight&&"number"==typeof this.cachedHeight&&this.scrollableElement){var e=this.cachedContentHeight,t=this.cachedHeight,n=this.input.scrollTop;this.scrollableElement.setScrollDimensions({scrollHeight:e,height:t}),this.scrollableElement.setScrollPosition({scrollTop:n})}},t.prototype.showMessage=function(e,t){this.message=e,oo(this.element,"idle"),oo(this.element,"info"),oo(this.element,"warning"),oo(this.element,"error"),no(this.element,this.classForType(e.type));var n=this.stylesForType(this.message.type);this.element.style.border=n.border?"1px solid "+n.border:"",Zp(3===e.type?r("alertErrorMessage","Error: {0}",e.content):2===e.type?r("alertWarningMessage","Warning: {0}",e.content):r("alertInfoMessage","Info: {0}",e.content)),(this.hasFocus()||t)&&this._showMessage()},t.prototype.hideMessage=function(){this.message=null,oo(this.element,"info"),oo(this.element,"warning"),oo(this.element,"error"),no(this.element,"idle"),this._hideMessage(),this.applyStyles()},t.prototype.validate=function(){var e=null;return this.validation&&((e=this.validation(this.value))?(this.inputElement.setAttribute("aria-invalid","true"),this.showMessage(e)):this.inputElement.hasAttribute("aria-invalid")&&(this.inputElement.removeAttribute("aria-invalid"),this.hideMessage())),!e},t.prototype.stylesForType=function(e){switch(e){case 1:return{border:this.inputValidationInfoBorder,background:this.inputValidationInfoBackground,foreground:this.inputValidationInfoForeground};case 2:return{border:this.inputValidationWarningBorder,background:this.inputValidationWarningBackground,foreground:this.inputValidationWarningForeground};default:return{border:this.inputValidationErrorBorder,background:this.inputValidationErrorBackground,foreground:this.inputValidationErrorForeground}}},t.prototype.classForType=function(e){switch(e){case 1:return"info";case 2:return"warning";default:return"error"}},t.prototype._showMessage=function(){var e=this;if(this.contextViewProvider&&this.message){var t,n=function(){return t.style.width=To(e.element)+"px"};this.contextViewProvider.showContextView({getAnchor:function(){return e.element},anchorAlignment:1,render:function(i){if(!e.message)return null;t=Xo(i,MW(".monaco-inputbox-container")),n();var o={inline:!0,className:"monaco-inputbox-message"},r=e.message.formatContent?DW(e.message.content,o):function(e,t){void 0===t&&(t={});var n=NW(t);return n.textContent=e,n}(e.message.content,o);no(r,e.classForType(e.message.type));var s=e.stylesForType(e.message.type);return r.style.backgroundColor=s.background?s.background.toString():"",r.style.color=s.foreground?s.foreground.toString():"",r.style.border=s.border?"1px solid "+s.border:"",Xo(t,r),null},onHide:function(){e.state="closed"},layout:n}),this.state="open"}},t.prototype._hideMessage=function(){this.contextViewProvider&&("open"===this.state&&this.contextViewProvider.hideContextView(),this.state="idle")},t.prototype.onValueChange=function(){this._onDidChange.fire(this.value),this.validate(),this.updateMirror(),so(this.input,"empty",!this.value),"open"===this.state&&this.contextViewProvider&&this.contextViewProvider.layout()},t.prototype.updateMirror=function(){if(this.mirror){var e=this.value,t=10===e.charCodeAt(e.length-1)?" ":"";e+t?this.mirror.textContent=e+t:this.mirror.innerHTML=" ",this.layout()}},t.prototype.style=function(e){this.inputBackground=e.inputBackground,this.inputForeground=e.inputForeground,this.inputBorder=e.inputBorder,this.inputValidationInfoBackground=e.inputValidationInfoBackground,this.inputValidationInfoForeground=e.inputValidationInfoForeground,this.inputValidationInfoBorder=e.inputValidationInfoBorder,this.inputValidationWarningBackground=e.inputValidationWarningBackground,this.inputValidationWarningForeground=e.inputValidationWarningForeground,this.inputValidationWarningBorder=e.inputValidationWarningBorder,this.inputValidationErrorBackground=e.inputValidationErrorBackground,this.inputValidationErrorForeground=e.inputValidationErrorForeground,this.inputValidationErrorBorder=e.inputValidationErrorBorder,this.applyStyles()},t.prototype.applyStyles=function(){var e=this.inputBackground?this.inputBackground.toString():"",t=this.inputForeground?this.inputForeground.toString():"",n=this.inputBorder?this.inputBorder.toString():"";this.element.style.backgroundColor=e,this.element.style.color=t,this.input.style.backgroundColor=e,this.input.style.color=t,this.element.style.borderWidth=n?"1px":"",this.element.style.borderStyle=n?"solid":"",this.element.style.borderColor=n},t.prototype.layout=function(){if(this.mirror){var e=this.cachedContentHeight;this.cachedContentHeight=Ao(this.mirror),e!==this.cachedContentHeight&&(this.cachedHeight=Math.min(this.cachedContentHeight,this.maxHeight),this.input.style.height=this.cachedHeight+"px",this._onDidHeightChange.fire(this.cachedContentHeight))}},t.prototype.insertAtCursor=function(e){var t=this.inputElement,n=t.selectionStart,i=t.selectionEnd,o=t.value;null!==n&&null!==i&&(this.value=o.substr(0,n)+e+o.substr(i),t.setSelectionRange(n+1,n+1),this.layout())},t.prototype.dispose=function(){this._hideMessage(),this.message=null,this.actionbar&&this.actionbar.dispose(),e.prototype.dispose.call(this)},t}(KC),RW=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;return o.history=new IW(i.history,100),o}return OW(t,e),t.prototype.addToHistory=function(){this.value&&this.value!==this.getCurrentValue()&&this.history.add(this.value)},t.prototype.showNextValue=function(){this.history.has(this.value)||this.addToHistory();var e=this.getNextValue();e&&(e=e===this.value?this.getNextValue():e),e&&(this.value=e,Yp(this.value))},t.prototype.showPreviousValue=function(){this.history.has(this.value)||this.addToHistory();var e=this.getPreviousValue();e&&(e=e===this.value?this.getPreviousValue():e),e&&(this.value=e,Yp(this.value))},t.prototype.getCurrentValue=function(){var e=this.history.current();return e||(e=this.history.last(),this.history.next()),e},t.prototype.getPreviousValue=function(){return this.history.previous()||this.history.first()},t.prototype.getNextValue=function(){return this.history.next()||this.history.last()},t}(PW),AW=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),FW=r("defaultLabel","input"),WW=function(e){function t(t,n,i,o){var r=e.call(this)||this;r._showOptionButtons=i,r.fixFocusOnOptionClickEnabled=!0,r._onDidOptionChange=r._register(new nt),r.onDidOptionChange=r._onDidOptionChange.event,r._onKeyDown=r._register(new nt),r.onKeyDown=r._onKeyDown.event,r._onMouseDown=r._register(new nt),r.onMouseDown=r._onMouseDown.event,r._onInput=r._register(new nt),r._onKeyUp=r._register(new nt),r._onCaseSensitiveKeyDown=r._register(new nt),r.onCaseSensitiveKeyDown=r._onCaseSensitiveKeyDown.event,r._onRegexKeyDown=r._register(new nt),r.onRegexKeyDown=r._onRegexKeyDown.event,r._lastHighlightFindOptions=0,r.contextViewProvider=n,r.placeholder=o.placeholder||"",r.validation=o.validation,r.label=o.label||FW,r.inputActiveOptionBorder=o.inputActiveOptionBorder,r.inputActiveOptionBackground=o.inputActiveOptionBackground,r.inputBackground=o.inputBackground,r.inputForeground=o.inputForeground,r.inputBorder=o.inputBorder,r.inputValidationInfoBorder=o.inputValidationInfoBorder,r.inputValidationInfoBackground=o.inputValidationInfoBackground,r.inputValidationInfoForeground=o.inputValidationInfoForeground,r.inputValidationWarningBorder=o.inputValidationWarningBorder,r.inputValidationWarningBackground=o.inputValidationWarningBackground,r.inputValidationWarningForeground=o.inputValidationWarningForeground,r.inputValidationErrorBorder=o.inputValidationErrorBorder,r.inputValidationErrorBackground=o.inputValidationErrorBackground,r.inputValidationErrorForeground=o.inputValidationErrorForeground;var s=o.appendCaseSensitiveLabel||"",a=o.appendWholeWordsLabel||"",u=o.appendRegexLabel||"",l=o.history||[],c=!!o.flexibleHeight,d=!!o.flexibleWidth,h=o.flexibleMaxHeight;r.domNode=document.createElement("div"),no(r.domNode,"monaco-findInput"),r.inputBox=r._register(new RW(r.domNode,r.contextViewProvider,{placeholder:r.placeholder||"",ariaLabel:r.label||"",validationOptions:{validation:r.validation},inputBackground:r.inputBackground,inputForeground:r.inputForeground,inputBorder:r.inputBorder,inputValidationInfoBackground:r.inputValidationInfoBackground,inputValidationInfoForeground:r.inputValidationInfoForeground,inputValidationInfoBorder:r.inputValidationInfoBorder,inputValidationWarningBackground:r.inputValidationWarningBackground,inputValidationWarningForeground:r.inputValidationWarningForeground,inputValidationWarningBorder:r.inputValidationWarningBorder,inputValidationErrorBackground:r.inputValidationErrorBackground,inputValidationErrorForeground:r.inputValidationErrorForeground,inputValidationErrorBorder:r.inputValidationErrorBorder,history:l,flexibleHeight:c,flexibleWidth:d,flexibleMaxHeight:h})),r.regex=r._register(new bW({appendTitle:u,isChecked:!1,inputActiveOptionBorder:r.inputActiveOptionBorder,inputActiveOptionBackground:r.inputActiveOptionBackground})),r._register(r.regex.onChange((function(e){r._onDidOptionChange.fire(e),!e&&r.fixFocusOnOptionClickEnabled&&r.inputBox.focus(),r.validate()}))),r._register(r.regex.onKeyDown((function(e){r._onRegexKeyDown.fire(e)}))),r.wholeWords=r._register(new yW({appendTitle:a,isChecked:!1,inputActiveOptionBorder:r.inputActiveOptionBorder,inputActiveOptionBackground:r.inputActiveOptionBackground})),r._register(r.wholeWords.onChange((function(e){r._onDidOptionChange.fire(e),!e&&r.fixFocusOnOptionClickEnabled&&r.inputBox.focus(),r.validate()}))),r.caseSensitive=r._register(new _W({appendTitle:s,isChecked:!1,inputActiveOptionBorder:r.inputActiveOptionBorder,inputActiveOptionBackground:r.inputActiveOptionBackground})),r._register(r.caseSensitive.onChange((function(e){r._onDidOptionChange.fire(e),!e&&r.fixFocusOnOptionClickEnabled&&r.inputBox.focus(),r.validate()}))),r._register(r.caseSensitive.onKeyDown((function(e){r._onCaseSensitiveKeyDown.fire(e)}))),r._showOptionButtons&&(r.inputBox.paddingRight=r.caseSensitive.width()+r.wholeWords.width()+r.regex.width());var p=[r.caseSensitive.domNode,r.wholeWords.domNode,r.regex.domNode];r.onkeydown(r.domNode,(function(e){if(e.equals(15)||e.equals(17)||e.equals(9)){var t=p.indexOf(document.activeElement);if(t>=0){var n=-1;e.equals(17)?n=(t+1)%p.length:e.equals(15)&&(n=0===t?p.length-1:t-1),e.equals(9)?p[t].blur():n>=0&&p[n].focus(),Go(e,!0)}}}));var f=document.createElement("div");return f.className="controls",f.style.display=r._showOptionButtons?"block":"none",f.appendChild(r.caseSensitive.domNode),f.appendChild(r.wholeWords.domNode),f.appendChild(r.regex.domNode),r.domNode.appendChild(f),t&&t.appendChild(r.domNode),r.onkeydown(r.inputBox.inputElement,(function(e){return r._onKeyDown.fire(e)})),r.onkeyup(r.inputBox.inputElement,(function(e){return r._onKeyUp.fire(e)})),r.oninput(r.inputBox.inputElement,(function(e){return r._onInput.fire()})),r.onmousedown(r.inputBox.inputElement,(function(e){return r._onMouseDown.fire(e)})),r}return AW(t,e),t.prototype.enable=function(){oo(this.domNode,"disabled"),this.inputBox.enable(),this.regex.enable(),this.wholeWords.enable(),this.caseSensitive.enable()},t.prototype.disable=function(){no(this.domNode,"disabled"),this.inputBox.disable(),this.regex.disable(),this.wholeWords.disable(),this.caseSensitive.disable()},t.prototype.setFocusInputOnOptionClick=function(e){this.fixFocusOnOptionClickEnabled=e},t.prototype.setEnabled=function(e){e?this.enable():this.disable()},t.prototype.getValue=function(){return this.inputBox.value},t.prototype.setValue=function(e){this.inputBox.value!==e&&(this.inputBox.value=e)},t.prototype.style=function(e){this.inputActiveOptionBorder=e.inputActiveOptionBorder,this.inputActiveOptionBackground=e.inputActiveOptionBackground,this.inputBackground=e.inputBackground,this.inputForeground=e.inputForeground,this.inputBorder=e.inputBorder,this.inputValidationInfoBackground=e.inputValidationInfoBackground,this.inputValidationInfoForeground=e.inputValidationInfoForeground,this.inputValidationInfoBorder=e.inputValidationInfoBorder,this.inputValidationWarningBackground=e.inputValidationWarningBackground,this.inputValidationWarningForeground=e.inputValidationWarningForeground,this.inputValidationWarningBorder=e.inputValidationWarningBorder,this.inputValidationErrorBackground=e.inputValidationErrorBackground,this.inputValidationErrorForeground=e.inputValidationErrorForeground,this.inputValidationErrorBorder=e.inputValidationErrorBorder,this.applyStyles()},t.prototype.applyStyles=function(){if(this.domNode){var e={inputActiveOptionBorder:this.inputActiveOptionBorder,inputActiveOptionBackground:this.inputActiveOptionBackground};this.regex.style(e),this.wholeWords.style(e),this.caseSensitive.style(e);var t={inputBackground:this.inputBackground,inputForeground:this.inputForeground,inputBorder:this.inputBorder,inputValidationInfoBackground:this.inputValidationInfoBackground,inputValidationInfoForeground:this.inputValidationInfoForeground,inputValidationInfoBorder:this.inputValidationInfoBorder,inputValidationWarningBackground:this.inputValidationWarningBackground,inputValidationWarningForeground:this.inputValidationWarningForeground,inputValidationWarningBorder:this.inputValidationWarningBorder,inputValidationErrorBackground:this.inputValidationErrorBackground,inputValidationErrorForeground:this.inputValidationErrorForeground,inputValidationErrorBorder:this.inputValidationErrorBorder};this.inputBox.style(t)}},t.prototype.select=function(){this.inputBox.select()},t.prototype.focus=function(){this.inputBox.focus()},t.prototype.getCaseSensitive=function(){return this.caseSensitive.checked},t.prototype.setCaseSensitive=function(e){this.caseSensitive.checked=e},t.prototype.getWholeWords=function(){return this.wholeWords.checked},t.prototype.setWholeWords=function(e){this.wholeWords.checked=e},t.prototype.getRegex=function(){return this.regex.checked},t.prototype.setRegex=function(e){this.regex.checked=e,this.validate()},t.prototype.focusOnCaseSensitive=function(){this.caseSensitive.focus()},t.prototype.highlightFindOptions=function(){oo(this.domNode,"highlight-"+this._lastHighlightFindOptions),this._lastHighlightFindOptions=1-this._lastHighlightFindOptions,no(this.domNode,"highlight-"+this._lastHighlightFindOptions)},t.prototype.validate=function(){this.inputBox.validate()},t.prototype.clearMessage=function(){this.inputBox.hideMessage()},t}(KC),VW=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),BW=r("defaultLabel","input"),HW=r("label.preserveCaseCheckbox","Preserve Case"),zW=function(e){function t(t){return e.call(this,{actionClassName:"codicon-preserve-case",title:HW+t.appendTitle,isChecked:t.isChecked,inputActiveOptionBorder:t.inputActiveOptionBorder,inputActiveOptionBackground:t.inputActiveOptionBackground})||this}return VW(t,e),t}(pW),jW=function(e){function t(t,n,i,o){var r=e.call(this)||this;r._showOptionButtons=i,r.fixFocusOnOptionClickEnabled=!0,r.cachedOptionsWidth=0,r._onDidOptionChange=r._register(new nt),r.onDidOptionChange=r._onDidOptionChange.event,r._onKeyDown=r._register(new nt),r.onKeyDown=r._onKeyDown.event,r._onMouseDown=r._register(new nt),r._onInput=r._register(new nt),r._onKeyUp=r._register(new nt),r._onPreserveCaseKeyDown=r._register(new nt),r.onPreserveCaseKeyDown=r._onPreserveCaseKeyDown.event,r.contextViewProvider=n,r.placeholder=o.placeholder||"",r.validation=o.validation,r.label=o.label||BW,r.inputActiveOptionBorder=o.inputActiveOptionBorder,r.inputActiveOptionBackground=o.inputActiveOptionBackground,r.inputBackground=o.inputBackground,r.inputForeground=o.inputForeground,r.inputBorder=o.inputBorder,r.inputValidationInfoBorder=o.inputValidationInfoBorder,r.inputValidationInfoBackground=o.inputValidationInfoBackground,r.inputValidationInfoForeground=o.inputValidationInfoForeground,r.inputValidationWarningBorder=o.inputValidationWarningBorder,r.inputValidationWarningBackground=o.inputValidationWarningBackground,r.inputValidationWarningForeground=o.inputValidationWarningForeground,r.inputValidationErrorBorder=o.inputValidationErrorBorder,r.inputValidationErrorBackground=o.inputValidationErrorBackground,r.inputValidationErrorForeground=o.inputValidationErrorForeground;var s=o.history||[],a=!!o.flexibleHeight,u=!!o.flexibleWidth,l=o.flexibleMaxHeight;r.domNode=document.createElement("div"),no(r.domNode,"monaco-findInput"),r.inputBox=r._register(new RW(r.domNode,r.contextViewProvider,{ariaLabel:r.label||"",placeholder:r.placeholder||"",validationOptions:{validation:r.validation},inputBackground:r.inputBackground,inputForeground:r.inputForeground,inputBorder:r.inputBorder,inputValidationInfoBackground:r.inputValidationInfoBackground,inputValidationInfoForeground:r.inputValidationInfoForeground,inputValidationInfoBorder:r.inputValidationInfoBorder,inputValidationWarningBackground:r.inputValidationWarningBackground,inputValidationWarningForeground:r.inputValidationWarningForeground,inputValidationWarningBorder:r.inputValidationWarningBorder,inputValidationErrorBackground:r.inputValidationErrorBackground,inputValidationErrorForeground:r.inputValidationErrorForeground,inputValidationErrorBorder:r.inputValidationErrorBorder,history:s,flexibleHeight:a,flexibleWidth:u,flexibleMaxHeight:l})),r.preserveCase=r._register(new zW({appendTitle:"",isChecked:!1,inputActiveOptionBorder:r.inputActiveOptionBorder,inputActiveOptionBackground:r.inputActiveOptionBackground})),r._register(r.preserveCase.onChange((function(e){r._onDidOptionChange.fire(e),!e&&r.fixFocusOnOptionClickEnabled&&r.inputBox.focus(),r.validate()}))),r._register(r.preserveCase.onKeyDown((function(e){r._onPreserveCaseKeyDown.fire(e)}))),r._showOptionButtons?r.cachedOptionsWidth=r.preserveCase.width():r.cachedOptionsWidth=0;var c=[r.preserveCase.domNode];r.onkeydown(r.domNode,(function(e){if(e.equals(15)||e.equals(17)||e.equals(9)){var t=c.indexOf(document.activeElement);if(t>=0){var n=-1;e.equals(17)?n=(t+1)%c.length:e.equals(15)&&(n=0===t?c.length-1:t-1),e.equals(9)?c[t].blur():n>=0&&c[n].focus(),Go(e,!0)}}}));var d=document.createElement("div");return d.className="controls",d.style.display=r._showOptionButtons?"block":"none",d.appendChild(r.preserveCase.domNode),r.domNode.appendChild(d),t&&t.appendChild(r.domNode),r.onkeydown(r.inputBox.inputElement,(function(e){return r._onKeyDown.fire(e)})),r.onkeyup(r.inputBox.inputElement,(function(e){return r._onKeyUp.fire(e)})),r.oninput(r.inputBox.inputElement,(function(e){return r._onInput.fire()})),r.onmousedown(r.inputBox.inputElement,(function(e){return r._onMouseDown.fire(e)})),r}return VW(t,e),t.prototype.enable=function(){oo(this.domNode,"disabled"),this.inputBox.enable(),this.preserveCase.enable()},t.prototype.disable=function(){no(this.domNode,"disabled"),this.inputBox.disable(),this.preserveCase.disable()},t.prototype.setEnabled=function(e){e?this.enable():this.disable()},t.prototype.style=function(e){this.inputActiveOptionBorder=e.inputActiveOptionBorder,this.inputActiveOptionBackground=e.inputActiveOptionBackground,this.inputBackground=e.inputBackground,this.inputForeground=e.inputForeground,this.inputBorder=e.inputBorder,this.inputValidationInfoBackground=e.inputValidationInfoBackground,this.inputValidationInfoForeground=e.inputValidationInfoForeground,this.inputValidationInfoBorder=e.inputValidationInfoBorder,this.inputValidationWarningBackground=e.inputValidationWarningBackground,this.inputValidationWarningForeground=e.inputValidationWarningForeground,this.inputValidationWarningBorder=e.inputValidationWarningBorder,this.inputValidationErrorBackground=e.inputValidationErrorBackground,this.inputValidationErrorForeground=e.inputValidationErrorForeground,this.inputValidationErrorBorder=e.inputValidationErrorBorder,this.applyStyles()},t.prototype.applyStyles=function(){if(this.domNode){var e={inputActiveOptionBorder:this.inputActiveOptionBorder,inputActiveOptionBackground:this.inputActiveOptionBackground};this.preserveCase.style(e);var t={inputBackground:this.inputBackground,inputForeground:this.inputForeground,inputBorder:this.inputBorder,inputValidationInfoBackground:this.inputValidationInfoBackground,inputValidationInfoForeground:this.inputValidationInfoForeground,inputValidationInfoBorder:this.inputValidationInfoBorder,inputValidationWarningBackground:this.inputValidationWarningBackground,inputValidationWarningForeground:this.inputValidationWarningForeground,inputValidationWarningBorder:this.inputValidationWarningBorder,inputValidationErrorBackground:this.inputValidationErrorBackground,inputValidationErrorForeground:this.inputValidationErrorForeground,inputValidationErrorBorder:this.inputValidationErrorBorder};this.inputBox.style(t)}},t.prototype.select=function(){this.inputBox.select()},t.prototype.focus=function(){this.inputBox.focus()},t.prototype.getPreserveCase=function(){return this.preserveCase.checked},t.prototype.setPreserveCase=function(e){this.preserveCase.checked=e},t.prototype.focusOnPreserve=function(){this.preserveCase.focus()},t.prototype.validate=function(){this.inputBox&&this.inputBox.validate()},Object.defineProperty(t.prototype,"width",{set:function(e){this.inputBox.paddingRight=this.cachedOptionsWidth,this.inputBox.width=e,this.domNode.style.width=e+"px"},enumerable:!0,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t}(KC),UW=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),KW=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},qW=function(e,t){return function(n,i){t(n,i,e)}};function GW(e,t){return e.getContext(document.activeElement).getValue(t)}function ZW(e,t){var n=function(e,t){return e.createScoped(t.target)}(e,t);return function(e,t,n){new Kh(n,t).bindTo(e)}(n,t,"historyNavigationWidget"),{scopedContextKeyService:n,historyNavigationEnablement:new Kh("historyNavigationEnabled",!0).bindTo(n)}}var YW=function(e){function t(t,n,i,o,r){void 0===r&&(r=!1);var s=e.call(this,t,n,r,i)||this;return s._register(ZW(o,{target:s.inputBox.element,historyNavigator:s.inputBox}).scopedContextKeyService),s}return UW(t,e),t=KW([qW(3,qh)],t)}(WW),XW=function(e){function t(t,n,i,o,r){void 0===r&&(r=!1);var s=e.call(this,t,n,r,i)||this;return s._register(ZW(o,{target:s.inputBox.element,historyNavigator:s.inputBox}).scopedContextKeyService),s}return UW(t,e),t=KW([qW(3,qh)],t)}(jW);Zh.registerCommandAndKeybindingRule({id:"history.showPrevious",weight:200,when:Rh.and(Rh.has("historyNavigationWidget"),Rh.equals("historyNavigationEnabled",!0)),primary:16,secondary:[528],handler:function(e,t){var n=GW(e.get(qh),"historyNavigationWidget");n&&n.historyNavigator.showPreviousValue()}}),Zh.registerCommandAndKeybindingRule({id:"history.showNext",weight:200,when:Rh.and(Rh.has("historyNavigationWidget"),Rh.equals("historyNavigationEnabled",!0)),primary:18,secondary:[530],handler:function(e,t){var n=GW(e.get(qh),"historyNavigationWidget");n&&n.historyNavigator.showNextValue()}});var $W=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),QW=r("label.find","Find"),JW=r("placeholder.find","Find"),eV=r("label.previousMatchButton","Previous match"),tV=r("label.nextMatchButton","Next match"),nV=r("label.toggleSelectionFind","Find in selection"),iV=r("label.closeButton","Close"),oV=r("label.replace","Replace"),rV=r("placeholder.replace","Replace"),sV=r("label.replaceButton","Replace"),aV=r("label.replaceAllButton","Replace All"),uV=r("label.toggleReplaceButton","Toggle Replace mode"),lV=r("title.matchesCountLimit","Only the first {0} results are highlighted, but all find operations work on the entire text.",19999),cV=r("label.matchesLocation","{0} of {1}"),dV=r("label.noResults","No Results"),hV=69,pV=_?256:2048,fV=function(e){this.afterLineNumber=e,this.heightInPx=33,this.suppressMouseDown=!1,this.domNode=document.createElement("div"),this.domNode.className="dock-find-viewzone"};function gV(e,t,n){var i=!!t.match(/\n/);n&&i&&n.selectionStart>0&&e.stopPropagation()}function mV(e,t,n){var i=!!t.match(/\n/);n&&i&&n.selectionEnd<n.value.length&&e.stopPropagation()}var vV=function(e){function t(t,n,i,o,r,s,a,u,l){var c=e.call(this)||this;return c._cachedHeight=null,c._codeEditor=t,c._controller=n,c._state=i,c._contextViewProvider=o,c._keybindingService=r,c._contextKeyService=s,c._storageService=u,c._notificationService=l,c._ctrlEnterReplaceAllWarningPrompted=!!u.getBoolean("ctrlEnterReplaceAll.windows.donotask",0),c._isVisible=!1,c._isReplaceVisible=!1,c._ignoreChangeEvent=!1,c._updateHistoryDelayer=new fi(500),c._register(We((function(){return c._updateHistoryDelayer.cancel()}))),c._register(c._state.onFindReplaceStateChange((function(e){return c._onStateChanged(e)}))),c._buildDomNode(),c._updateButtons(),c._tryUpdateWidgetWidth(),c._findInput.inputBox.layout(),c._register(c._codeEditor.onDidChangeConfiguration((function(e){if(e.hasChanged(68)&&(c._codeEditor.getOption(68)&&c._state.change({isReplaceRevealed:!1},!1),c._updateButtons()),e.hasChanged(107)&&c._tryUpdateWidgetWidth(),e.hasChanged(2)&&c.updateAccessibilitySupport(),e.hasChanged(28)){var t=c._codeEditor.getOption(28).addExtraSpaceOnTop;t&&!c._viewZone&&(c._viewZone=new fV(0),c._showViewZone()),!t&&c._viewZone&&c._removeViewZone()}}))),c.updateAccessibilitySupport(),c._register(c._codeEditor.onDidChangeCursorSelection((function(){c._isVisible&&c._updateToggleSelectionFindButton()}))),c._register(c._codeEditor.onDidFocusEditorWidget((function(){if(c._isVisible){var e=c._controller.getGlobalBufferTerm();e&&e!==c._state.searchString&&(c._state.change({searchString:e},!0),c._findInput.select())}}))),c._findInputFocused=jF.bindTo(s),c._findFocusTracker=c._register(Yo(c._findInput.inputBox.inputElement)),c._register(c._findFocusTracker.onDidFocus((function(){c._findInputFocused.set(!0),c._updateSearchScope()}))),c._register(c._findFocusTracker.onDidBlur((function(){c._findInputFocused.set(!1)}))),c._replaceInputFocused=UF.bindTo(s),c._replaceFocusTracker=c._register(Yo(c._replaceInput.inputBox.inputElement)),c._register(c._replaceFocusTracker.onDidFocus((function(){c._replaceInputFocused.set(!0),c._updateSearchScope()}))),c._register(c._replaceFocusTracker.onDidBlur((function(){c._replaceInputFocused.set(!1)}))),c._codeEditor.addOverlayWidget(c),c._codeEditor.getOption(28).addExtraSpaceOnTop&&(c._viewZone=new fV(0)),c._applyTheme(a.getTheme()),c._register(a.onThemeChange(c._applyTheme.bind(c))),c._register(c._codeEditor.onDidChangeModel((function(){c._isVisible&&(c._viewZoneId=void 0)}))),c._register(c._codeEditor.onDidScrollChange((function(e){e.scrollTopChanged?c._layoutViewZone():setTimeout((function(){c._layoutViewZone()}),0)}))),c}return $W(t,e),t.prototype.getId=function(){return t.ID},t.prototype.getDomNode=function(){return this._domNode},t.prototype.getPosition=function(){return this._isVisible?{preference:0}:null},t.prototype._onStateChanged=function(e){if(e.searchString){try{this._ignoreChangeEvent=!0,this._findInput.setValue(this._state.searchString)}finally{this._ignoreChangeEvent=!1}this._updateButtons()}if(e.replaceString&&(this._replaceInput.inputBox.value=this._state.replaceString),e.isRevealed&&(this._state.isRevealed?this._reveal():this._hide(!0)),e.isReplaceRevealed&&(this._state.isReplaceRevealed?this._codeEditor.getOption(68)||this._isReplaceVisible||(this._isReplaceVisible=!0,this._replaceInput.width=To(this._findInput.domNode),this._updateButtons(),this._replaceInput.inputBox.layout()):this._isReplaceVisible&&(this._isReplaceVisible=!1,this._updateButtons())),(e.isRevealed||e.isReplaceRevealed)&&(this._state.isRevealed||this._state.isReplaceRevealed)&&this._tryUpdateHeight()&&this._showViewZone(),e.isRegex&&this._findInput.setRegex(this._state.isRegex),e.wholeWord&&this._findInput.setWholeWords(this._state.wholeWord),e.matchCase&&this._findInput.setCaseSensitive(this._state.matchCase),e.searchScope&&(this._state.searchScope?this._toggleSelectionFind.checked=!0:this._toggleSelectionFind.checked=!1,this._updateToggleSelectionFindButton()),e.searchString||e.matchesCount||e.matchesPosition){var t=this._state.searchString.length>0&&0===this._state.matchesCount;so(this._domNode,"no-results",t),this._updateMatchesCount(),this._updateButtons()}(e.searchString||e.currentMatch)&&this._layoutViewZone(),e.updateHistory&&this._delayedUpdateHistory()},t.prototype._delayedUpdateHistory=function(){this._updateHistoryDelayer.trigger(this._updateHistory.bind(this))},t.prototype._updateHistory=function(){this._state.searchString&&this._findInput.inputBox.addToHistory(),this._state.replaceString&&this._replaceInput.inputBox.addToHistory()},t.prototype._updateMatchesCount=function(){var e;if(this._matchesCount.style.minWidth=hV+"px",this._state.matchesCount>=19999?this._matchesCount.title=lV:this._matchesCount.title="",this._matchesCount.firstChild&&this._matchesCount.removeChild(this._matchesCount.firstChild),this._state.matchesCount>0){var t=String(this._state.matchesCount);this._state.matchesCount>=19999&&(t+="+");var n=String(this._state.matchesPosition);"0"===n&&(n="?"),e=pr(cV,n,t)}else e=dV;this._matchesCount.appendChild(document.createTextNode(e)),Zp(this._getAriaLabel(e,this._state.currentMatch,this._state.searchString),!0),hV=Math.max(hV,this._matchesCount.clientWidth)},t.prototype._getAriaLabel=function(e,t,n){return e===dV?""===n?r("ariaSearchNoResultEmpty","{0} found",e):r("ariaSearchNoResult","{0} found for {1}",e,n):t?r("ariaSearchNoResultWithLineNum","{0} found for {1} at {2}",e,n,t.startLineNumber+":"+t.startColumn):r("ariaSearchNoResultWithLineNumNoCurrentMatch","{0} found for {1}",e,n)},t.prototype._updateToggleSelectionFindButton=function(){var e=this._codeEditor.getSelection(),t=!!e&&(e.startLineNumber!==e.endLineNumber||e.startColumn!==e.endColumn),n=this._toggleSelectionFind.checked;this._isVisible&&(n||t)?this._toggleSelectionFind.enable():this._toggleSelectionFind.disable()},t.prototype._updateButtons=function(){this._findInput.setEnabled(this._isVisible),this._replaceInput.setEnabled(this._isVisible&&this._isReplaceVisible),this._updateToggleSelectionFindButton(),this._closeBtn.setEnabled(this._isVisible);var e=this._state.searchString.length>0,t=!!this._state.matchesCount;this._prevBtn.setEnabled(this._isVisible&&e&&t),this._nextBtn.setEnabled(this._isVisible&&e&&t),this._replaceBtn.setEnabled(this._isVisible&&this._isReplaceVisible&&e),this._replaceAllBtn.setEnabled(this._isVisible&&this._isReplaceVisible&&e),so(this._domNode,"replaceToggled",this._isReplaceVisible),this._toggleReplaceBtn.toggleClass("codicon-chevron-right",!this._isReplaceVisible),this._toggleReplaceBtn.toggleClass("codicon-chevron-down",this._isReplaceVisible),this._toggleReplaceBtn.setExpanded(this._isReplaceVisible);var n=!this._codeEditor.getOption(68);this._toggleReplaceBtn.setEnabled(this._isVisible&&n)},t.prototype._reveal=function(){var e=this;if(!this._isVisible){this._isVisible=!0;var t=this._codeEditor.getSelection();switch(this._codeEditor.getOption(28).autoFindInSelection){case"always":this._toggleSelectionFind.checked=!0;break;case"never":this._toggleSelectionFind.checked=!1;break;case"multiline":var n=!!t&&t.startLineNumber!==t.endLineNumber;this._toggleSelectionFind.checked=n}this._tryUpdateWidgetWidth(),this._updateButtons(),setTimeout((function(){no(e._domNode,"visible"),e._domNode.setAttribute("aria-hidden","false")}),0),setTimeout((function(){e._findInput.validate()}),200),this._codeEditor.layoutOverlayWidget(this);var i=!0;if(this._codeEditor.getOption(28).seedSearchStringFromSelection&&t){var o=this._codeEditor.getDomNode();if(o){var r=Oo(o),s=this._codeEditor.getScrolledVisiblePosition(t.getStartPosition()),a=r.left+(s?s.left:0),u=s?s.top:0;if(this._viewZone&&u<this._viewZone.heightInPx){t.endLineNumber>t.startLineNumber&&(i=!1);var l=Io(this._domNode).left;a>l&&(i=!1);var c=this._codeEditor.getScrolledVisiblePosition(t.getEndPosition());r.left+(c?c.left:0)>l&&(i=!1)}}}this._showViewZone(i)}},t.prototype._hide=function(e){this._isVisible&&(this._isVisible=!1,this._updateButtons(),oo(this._domNode,"visible"),this._domNode.setAttribute("aria-hidden","true"),this._findInput.clearMessage(),e&&this._codeEditor.focus(),this._codeEditor.layoutOverlayWidget(this),this._removeViewZone())},t.prototype._layoutViewZone=function(){var e=this;if(this._codeEditor.getOption(28).addExtraSpaceOnTop){if(this._isVisible){var t=this._viewZone;void 0===this._viewZoneId&&t&&this._codeEditor.changeViewZones((function(n){t.heightInPx=e._getHeight(),e._viewZoneId=n.addZone(t),e._codeEditor.setScrollTop(e._codeEditor.getScrollTop()+t.heightInPx)}))}}else this._removeViewZone()},t.prototype._showViewZone=function(e){var t=this;if((void 0===e&&(e=!0),this._isVisible)&&this._codeEditor.getOption(28).addExtraSpaceOnTop){void 0===this._viewZone&&(this._viewZone=new fV(0));var n=this._viewZone;this._codeEditor.changeViewZones((function(i){if(void 0!==t._viewZoneId){var o=t._getHeight();if(o===n.heightInPx)return;var r=o-n.heightInPx;return n.heightInPx=o,i.layoutZone(t._viewZoneId),void(e&&t._codeEditor.setScrollTop(t._codeEditor.getScrollTop()+r))}r=t._getHeight();n.heightInPx=r,t._viewZoneId=i.addZone(n),e&&t._codeEditor.setScrollTop(t._codeEditor.getScrollTop()+r)}))}},t.prototype._removeViewZone=function(){var e=this;this._codeEditor.changeViewZones((function(t){void 0!==e._viewZoneId&&(t.removeZone(e._viewZoneId),e._viewZoneId=void 0,e._viewZone&&(e._codeEditor.setScrollTop(e._codeEditor.getScrollTop()-e._viewZone.heightInPx),e._viewZone=void 0))}))},t.prototype._applyTheme=function(e){var t={inputActiveOptionBorder:e.getColor(B_),inputActiveOptionBackground:e.getColor(H_),inputBackground:e.getColor(F_),inputForeground:e.getColor(W_),inputBorder:e.getColor(V_),inputValidationInfoBackground:e.getColor(z_),inputValidationInfoForeground:e.getColor(j_),inputValidationInfoBorder:e.getColor(U_),inputValidationWarningBackground:e.getColor(K_),inputValidationWarningForeground:e.getColor(q_),inputValidationWarningBorder:e.getColor(G_),inputValidationErrorBackground:e.getColor(Z_),inputValidationErrorForeground:e.getColor(Y_),inputValidationErrorBorder:e.getColor(X_)};this._findInput.style(t),this._replaceInput.style(t),this._toggleSelectionFind.style(t)},t.prototype._tryUpdateWidgetWidth=function(){if(this._isVisible&&$i(this._domNode)){var e=this._codeEditor.getLayoutInfo();if(e.contentWidth<=0)no(this._domNode,"hiddenEditor");else{to(this._domNode,"hiddenEditor")&&oo(this._domNode,"hiddenEditor");var t=e.width,n=e.minimapWidth,i=!1,o=!1,r=!1;if(this._resized)if(To(this._domNode)>419)return this._domNode.style.maxWidth=t-28-n-15+"px",void(this._replaceInput.width=To(this._findInput.domNode));if(447+n>=t&&(o=!0),447+n-hV>=t&&(r=!0),447+n-hV>=t+50&&(i=!0),so(this._domNode,"collapsed-find-widget",i),so(this._domNode,"narrow-find-widget",r),so(this._domNode,"reduced-find-widget",o),r||i||(this._domNode.style.maxWidth=t-28-n-15+"px"),this._resized){this._findInput.inputBox.layout();var s=this._findInput.inputBox.element.clientWidth;s>0&&(this._replaceInput.width=s)}else this._isReplaceVisible&&(this._replaceInput.width=To(this._findInput.domNode))}}},t.prototype._getHeight=function(){var e=0;return e+=4,e+=this._findInput.inputBox.height+2,this._isReplaceVisible&&(e+=4,e+=this._replaceInput.inputBox.height+2),e+=4},t.prototype._tryUpdateHeight=function(){var e=this._getHeight();return(null===this._cachedHeight||this._cachedHeight!==e)&&(this._cachedHeight=e,this._domNode.style.height=e+"px",!0)},t.prototype.focusFindInput=function(){this._findInput.select(),this._findInput.focus()},t.prototype.focusReplaceInput=function(){this._replaceInput.select(),this._replaceInput.focus()},t.prototype.highlightFindOptions=function(){this._findInput.highlightFindOptions()},t.prototype._updateSearchScope=function(){if(this._codeEditor.hasModel()&&this._toggleSelectionFind.checked){var e=this._codeEditor.getSelection();1===e.endColumn&&e.endLineNumber>e.startLineNumber&&(e=e.setEndPosition(e.endLineNumber-1,this._codeEditor.getModel().getLineMaxColumn(e.endLineNumber-1)));var t=this._state.currentMatch;e.startLineNumber!==e.endLineNumber&&(wn.equalsRange(e,t)||this._state.change({searchScope:e},!0))}},t.prototype._onFindInputMouseDown=function(e){e.middleButton&&e.stopPropagation()},t.prototype._onFindInputKeyDown=function(e){return e.equals(3|pV)?(this._findInput.inputBox.insertAtCursor("\n"),void e.preventDefault()):e.equals(2)?(this._isReplaceVisible?this._replaceInput.focus():this._findInput.focusOnCaseSensitive(),void e.preventDefault()):e.equals(2066)?(this._codeEditor.focus(),void e.preventDefault()):e.equals(16)?gV(e,this._findInput.getValue(),this._findInput.domNode.querySelector("textarea")):e.equals(18)?mV(e,this._findInput.getValue(),this._findInput.domNode.querySelector("textarea")):void 0},t.prototype._onReplaceInputKeyDown=function(e){return e.equals(3|pV)?(v&&b&&!this._ctrlEnterReplaceAllWarningPrompted&&(this._notificationService.info(r("ctrlEnter.keybindingChanged","Ctrl+Enter now inserts line break instead of replacing all. You can modify the keybinding for editor.action.replaceAll to override this behavior.")),this._ctrlEnterReplaceAllWarningPrompted=!0,this._storageService.store("ctrlEnterReplaceAll.windows.donotask",!0,0)),this._replaceInput.inputBox.insertAtCursor("\n"),void e.preventDefault()):e.equals(2)?(this._findInput.focusOnCaseSensitive(),void e.preventDefault()):e.equals(1026)?(this._findInput.focus(),void e.preventDefault()):e.equals(2066)?(this._codeEditor.focus(),void e.preventDefault()):e.equals(16)?gV(e,this._replaceInput.inputBox.value,this._replaceInput.inputBox.element.querySelector("textarea")):e.equals(18)?mV(e,this._replaceInput.inputBox.value,this._replaceInput.inputBox.element.querySelector("textarea")):void 0},t.prototype.getHorizontalSashTop=function(e){return 0},t.prototype.getHorizontalSashLeft=function(e){return 0},t.prototype.getHorizontalSashWidth=function(e){return 500},t.prototype._keybindingLabelFor=function(e){var t=this._keybindingService.lookupKeybinding(e);return t?" ("+t.getLabel()+")":""},t.prototype._buildDomNode=function(){var e=this;this._findInput=this._register(new YW(null,this._contextViewProvider,{width:221,label:QW,placeholder:JW,appendCaseSensitiveLabel:this._keybindingLabelFor(iW),appendWholeWordsLabel:this._keybindingLabelFor(oW),appendRegexLabel:this._keybindingLabelFor(rW),validation:function(t){if(0===t.length||!e._findInput.getRegex())return null;try{return new RegExp(t),null}catch(e){return{content:e.message}}},flexibleHeight:!0,flexibleWidth:!0,flexibleMaxHeight:118},this._contextKeyService,!0)),this._findInput.setRegex(!!this._state.isRegex),this._findInput.setCaseSensitive(!!this._state.matchCase),this._findInput.setWholeWords(!!this._state.wholeWord),this._register(this._findInput.onKeyDown((function(t){return e._onFindInputKeyDown(t)}))),this._register(this._findInput.inputBox.onDidChange((function(){e._ignoreChangeEvent||e._state.change({searchString:e._findInput.getValue()},!0)}))),this._register(this._findInput.onDidOptionChange((function(){e._state.change({isRegex:e._findInput.getRegex(),wholeWord:e._findInput.getWholeWords(),matchCase:e._findInput.getCaseSensitive()},!0)}))),this._register(this._findInput.onCaseSensitiveKeyDown((function(t){t.equals(1026)&&e._isReplaceVisible&&(e._replaceInput.focus(),t.preventDefault())}))),this._register(this._findInput.onRegexKeyDown((function(t){t.equals(2)&&e._isReplaceVisible&&(e._replaceInput.focusOnPreserve(),t.preventDefault())}))),this._register(this._findInput.inputBox.onDidHeightChange((function(t){e._tryUpdateHeight()&&e._showViewZone()}))),y&&this._register(this._findInput.onMouseDown((function(t){return e._onFindInputMouseDown(t)}))),this._matchesCount=document.createElement("div"),this._matchesCount.className="matchesCount",this._updateMatchesCount(),this._prevBtn=this._register(new _V({label:eV+this._keybindingLabelFor(QF),className:"codicon codicon-arrow-up",onTrigger:function(){e._codeEditor.getAction(QF).run().then(void 0,De)}})),this._nextBtn=this._register(new _V({label:tV+this._keybindingLabelFor($F),className:"codicon codicon-arrow-down",onTrigger:function(){e._codeEditor.getAction($F).run().then(void 0,De)}}));var t=document.createElement("div");t.className="find-part",t.appendChild(this._findInput.domNode);var n=document.createElement("div");n.className="find-actions",t.appendChild(n),n.appendChild(this._matchesCount),n.appendChild(this._prevBtn.domNode),n.appendChild(this._nextBtn.domNode),this._toggleSelectionFind=this._register(new pW({actionClassName:"codicon codicon-selection",title:nV+this._keybindingLabelFor(sW),isChecked:!1})),this._register(this._toggleSelectionFind.onChange((function(){if(e._toggleSelectionFind.checked){if(e._codeEditor.hasModel()){var t=e._codeEditor.getSelection();1===t.endColumn&&t.endLineNumber>t.startLineNumber&&(t=t.setEndPosition(t.endLineNumber-1,e._codeEditor.getModel().getLineMaxColumn(t.endLineNumber-1))),t.isEmpty()||e._state.change({searchScope:t},!0)}}else e._state.change({searchScope:null},!0)}))),n.appendChild(this._toggleSelectionFind.domNode),this._closeBtn=this._register(new _V({label:iV+this._keybindingLabelFor(nW),className:"codicon codicon-close",onTrigger:function(){e._state.change({isRevealed:!1,searchScope:null},!1)},onKeyDown:function(t){t.equals(2)&&e._isReplaceVisible&&(e._replaceBtn.isEnabled()?e._replaceBtn.focus():e._codeEditor.focus(),t.preventDefault())}})),n.appendChild(this._closeBtn.domNode),this._replaceInput=this._register(new XW(null,void 0,{label:oV,placeholder:rV,history:[],flexibleHeight:!0,flexibleWidth:!0,flexibleMaxHeight:118},this._contextKeyService,!0)),this._replaceInput.setPreserveCase(!!this._state.preserveCase),this._register(this._replaceInput.onKeyDown((function(t){return e._onReplaceInputKeyDown(t)}))),this._register(this._replaceInput.inputBox.onDidChange((function(){e._state.change({replaceString:e._replaceInput.inputBox.value},!1)}))),this._register(this._replaceInput.inputBox.onDidHeightChange((function(t){e._isReplaceVisible&&e._tryUpdateHeight()&&e._showViewZone()}))),this._register(this._replaceInput.onDidOptionChange((function(){e._state.change({preserveCase:e._replaceInput.getPreserveCase()},!0)}))),this._register(this._replaceInput.onPreserveCaseKeyDown((function(t){t.equals(2)&&(e._prevBtn.isEnabled()?e._prevBtn.focus():e._nextBtn.isEnabled()?e._nextBtn.focus():e._toggleSelectionFind.enabled?e._toggleSelectionFind.focus():e._closeBtn.isEnabled()&&e._closeBtn.focus(),t.preventDefault())}))),this._replaceBtn=this._register(new _V({label:sV+this._keybindingLabelFor(aW),className:"codicon codicon-replace",onTrigger:function(){e._controller.replace()},onKeyDown:function(t){t.equals(1026)&&(e._closeBtn.focus(),t.preventDefault())}})),this._replaceAllBtn=this._register(new _V({label:aV+this._keybindingLabelFor(uW),className:"codicon codicon-replace-all",onTrigger:function(){e._controller.replaceAll()}}));var i=document.createElement("div");i.className="replace-part",i.appendChild(this._replaceInput.domNode);var o=document.createElement("div");o.className="replace-actions",i.appendChild(o),o.appendChild(this._replaceBtn.domNode),o.appendChild(this._replaceAllBtn.domNode),this._toggleReplaceBtn=this._register(new _V({label:uV,className:"codicon toggle left",onTrigger:function(){e._state.change({isReplaceRevealed:!e._isReplaceVisible},!1),e._isReplaceVisible&&(e._replaceInput.width=To(e._findInput.domNode),e._replaceInput.inputBox.layout()),e._showViewZone()}})),this._toggleReplaceBtn.toggleClass("codicon-chevron-down",this._isReplaceVisible),this._toggleReplaceBtn.toggleClass("codicon-chevron-right",!this._isReplaceVisible),this._toggleReplaceBtn.setExpanded(this._isReplaceVisible),this._domNode=document.createElement("div"),this._domNode.className="editor-widget find-widget",this._domNode.setAttribute("aria-hidden","true"),this._domNode.style.width="419px",this._domNode.appendChild(this._toggleReplaceBtn.domNode),this._domNode.appendChild(t),this._domNode.appendChild(i),this._resizeSash=new Yx(this._domNode,this,{orientation:0}),this._resized=!1;var r=419;this._register(this._resizeSash.onDidStart((function(){r=To(e._domNode)}))),this._register(this._resizeSash.onDidChange((function(t){e._resized=!0;var n=r+t.startX-t.currentX;n<419||(n>(parseFloat(No(e._domNode).maxWidth)||0)||(e._domNode.style.width=n+"px",e._isReplaceVisible&&(e._replaceInput.width=To(e._findInput.domNode)),e._findInput.inputBox.layout(),e._tryUpdateHeight()))}))),this._register(this._resizeSash.onDidReset((function(){var t=To(e._domNode);if(!(t<419)){var n=419;if(!e._resized||419===t){var i=e._codeEditor.getLayoutInfo();n=i.width-28-i.minimapWidth-15,e._resized=!0}e._domNode.style.width=n+"px",e._isReplaceVisible&&(e._replaceInput.width=To(e._findInput.domNode)),e._findInput.inputBox.layout()}})))},t.prototype.updateAccessibilitySupport=function(){var e=this._codeEditor.getOption(2);this._findInput.setFocusInputOnOptionClick(2!==e)},t.ID="editor.contrib.findWidget",t}(KC),_V=function(e){function t(t){var n=e.call(this)||this;return n._opts=t,n._domNode=document.createElement("div"),n._domNode.title=n._opts.label,n._domNode.tabIndex=0,n._domNode.className="button "+n._opts.className,n._domNode.setAttribute("role","button"),n._domNode.setAttribute("aria-label",n._opts.label),n.onclick(n._domNode,(function(e){n._opts.onTrigger(),e.preventDefault()})),n.onkeydown(n._domNode,(function(e){if(e.equals(10)||e.equals(3))return n._opts.onTrigger(),void e.preventDefault();n._opts.onKeyDown&&n._opts.onKeyDown(e)})),n}return $W(t,e),Object.defineProperty(t.prototype,"domNode",{get:function(){return this._domNode},enumerable:!0,configurable:!0}),t.prototype.isEnabled=function(){return this._domNode.tabIndex>=0},t.prototype.focus=function(){this._domNode.focus()},t.prototype.setEnabled=function(e){so(this._domNode,"disabled",!e),this._domNode.setAttribute("aria-disabled",String(!e)),this._domNode.tabIndex=e?0:-1},t.prototype.setExpanded=function(e){this._domNode.setAttribute("aria-expanded",String(!!e))},t.prototype.toggleClass=function(e,t){so(this._domNode,e,t)},t}(KC);yg((function(e,t){var n=function(e,n){n&&t.addRule(".monaco-editor "+e+" { background-color: "+n+"; }")};n(".findMatch",e.getColor(ky)),n(".currentFindMatch",e.getColor(Ny)),n(".findScope",e.getColor(Ey)),n(".find-widget",e.getColor(_y));var i=e.getColor(A_);i&&t.addRule(".monaco-editor .find-widget { box-shadow: 0 2px 8px "+i+"; }");var o=e.getColor(Oy);o&&t.addRule(".monaco-editor .findMatch { border: 1px "+("hc"===e.type?"dotted":"solid")+" "+o+"; box-sizing: border-box; }");var r=e.getColor(Iy);r&&t.addRule(".monaco-editor .currentFindMatch { border: 2px solid "+r+"; padding: 1px; box-sizing: border-box; }");var s=e.getColor(My);s&&t.addRule(".monaco-editor .findScope { border: 1px "+("hc"===e.type?"dashed":"solid")+" "+s+"; }");var a=e.getColor(M_);a&&t.addRule(".monaco-editor .find-widget { border: 1px solid "+a+"; }");var u=e.getColor(yy);u&&t.addRule(".monaco-editor .find-widget { color: "+u+"; }");var l=e.getColor(I_);l&&t.addRule(".monaco-editor .find-widget.no-results .matchesCount { color: "+l+"; }");var c=e.getColor(wy);if(c)t.addRule(".monaco-editor .find-widget .monaco-sash { background-color: "+c+"; width: 3px !important; margin-left: -4px;}");else{var d=e.getColor(by);d&&t.addRule(".monaco-editor .find-widget .monaco-sash { background-color: "+d+"; width: 3px !important; margin-left: -4px;}")}var h=e.getColor(O_);h&&t.addRule(".monaco-editor .find-widget .monaco-inputbox.synthetic-focus { outline-color: "+h+"; }")}));var yV=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),bV=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},wV=function(e,t){return function(n,i){t(n,i,e)}};function CV(e){if(!e.hasModel())return null;var t=e.getSelection();if(t.startLineNumber===t.endLineNumber)if(t.isEmpty()){var n=e.getModel().getWordAtPosition(t.getStartPosition());if(n)return n.word}else if(e.getModel().getValueLengthInRange(t)<524288)return e.getModel().getValueInRange(t);return null}var SV=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r._editor=t,r._findWidgetVisible=zF.bindTo(n),r._contextKeyService=n,r._storageService=i,r._clipboardService=o,r._updateHistoryDelayer=new fi(500),r._state=r._register(new xW),r.loadQueryState(),r._register(r._state.onFindReplaceStateChange((function(e){return r._onStateChanged(e)}))),r._model=null,r._register(r._editor.onDidChangeModel((function(){var e=r._editor.getModel()&&r._state.isRevealed;r.disposeModel(),r._state.change({searchScope:null,matchCase:r._storageService.getBoolean("editor.matchCase",1,!1),wholeWord:r._storageService.getBoolean("editor.wholeWord",1,!1),isRegex:r._storageService.getBoolean("editor.isRegex",1,!1),preserveCase:r._storageService.getBoolean("editor.preserveCase",1,!1)},!1),e&&r._start({forceRevealReplace:!1,seedSearchStringFromSelection:!1,seedSearchStringFromGlobalClipboard:!1,shouldFocus:0,shouldAnimate:!1,updateSearchScope:!1})}))),r}return yV(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.dispose=function(){this.disposeModel(),e.prototype.dispose.call(this)},t.prototype.disposeModel=function(){this._model&&(this._model.dispose(),this._model=null)},t.prototype._onStateChanged=function(e){this.saveQueryState(e),e.isRevealed&&(this._state.isRevealed?this._findWidgetVisible.set(!0):(this._findWidgetVisible.reset(),this.disposeModel())),e.searchString&&this.setGlobalBufferTerm(this._state.searchString)},t.prototype.saveQueryState=function(e){e.isRegex&&this._storageService.store("editor.isRegex",this._state.actualIsRegex,1),e.wholeWord&&this._storageService.store("editor.wholeWord",this._state.actualWholeWord,1),e.matchCase&&this._storageService.store("editor.matchCase",this._state.actualMatchCase,1),e.preserveCase&&this._storageService.store("editor.preserveCase",this._state.actualPreserveCase,1)},t.prototype.loadQueryState=function(){this._state.change({matchCase:this._storageService.getBoolean("editor.matchCase",1,this._state.matchCase),wholeWord:this._storageService.getBoolean("editor.wholeWord",1,this._state.wholeWord),isRegex:this._storageService.getBoolean("editor.isRegex",1,this._state.isRegex),preserveCase:this._storageService.getBoolean("editor.preserveCase",1,this._state.preserveCase)},!1)},t.prototype.isFindInputFocused=function(){return!!jF.getValue(this._contextKeyService)},t.prototype.getState=function(){return this._state},t.prototype.closeFindWidget=function(){this._state.change({isRevealed:!1,searchScope:null},!1),this._editor.focus()},t.prototype.toggleCaseSensitive=function(){this._state.change({matchCase:!this._state.matchCase},!1),this._state.isRevealed||this.highlightFindOptions()},t.prototype.toggleWholeWords=function(){this._state.change({wholeWord:!this._state.wholeWord},!1),this._state.isRevealed||this.highlightFindOptions()},t.prototype.toggleRegex=function(){this._state.change({isRegex:!this._state.isRegex},!1),this._state.isRevealed||this.highlightFindOptions()},t.prototype.toggleSearchScope=function(){if(this._state.searchScope)this._state.change({searchScope:null},!0);else if(this._editor.hasModel()){var e=this._editor.getSelection();1===e.endColumn&&e.endLineNumber>e.startLineNumber&&(e=e.setEndPosition(e.endLineNumber-1,this._editor.getModel().getLineMaxColumn(e.endLineNumber-1))),e.isEmpty()||this._state.change({searchScope:e},!0)}},t.prototype.setSearchString=function(e){this._state.isRegex&&(e=gr(e)),this._state.change({searchString:e},!1)},t.prototype.highlightFindOptions=function(){},t.prototype._start=function(e){if(this.disposeModel(),this._editor.hasModel()){var t,n={isRevealed:!0};if(e.seedSearchStringFromSelection)(t=CV(this._editor))&&(this._state.isRegex?n.searchString=gr(t):n.searchString=t);if(!n.searchString&&e.seedSearchStringFromGlobalClipboard)(t=this.getGlobalBufferTerm())&&(n.searchString=t);if(e.forceRevealReplace?n.isReplaceRevealed=!0:this._findWidgetVisible.get()||(n.isReplaceRevealed=!1),e.updateSearchScope){var i=this._editor.getSelection();i.isEmpty()||(n.searchScope=i)}this._state.change(n,!1),this._model||(this._model=new cW(this._editor,this._state))}},t.prototype.start=function(e){this._start(e)},t.prototype.moveToNextMatch=function(){return!!this._model&&(this._model.moveToNextMatch(),!0)},t.prototype.moveToPrevMatch=function(){return!!this._model&&(this._model.moveToPrevMatch(),!0)},t.prototype.replace=function(){return!!this._model&&(this._model.replace(),!0)},t.prototype.replaceAll=function(){return!!this._model&&(this._model.replaceAll(),!0)},t.prototype.selectAllMatches=function(){return!!this._model&&(this._model.selectAllMatches(),this._editor.focus(),!0)},t.prototype.getGlobalBufferTerm=function(){return this._editor.getOption(28).globalFindClipboard&&this._clipboardService&&this._editor.hasModel()&&!this._editor.getModel().isTooLargeForSyncing()?this._clipboardService.readFindText():""},t.prototype.setGlobalBufferTerm=function(e){this._editor.getOption(28).globalFindClipboard&&this._clipboardService&&this._editor.hasModel()&&!this._editor.getModel().isTooLargeForSyncing()&&this._clipboardService.writeFindText(e)},t.ID="editor.contrib.findController",t=bV([wV(1,qh),wV(2,FM),wV(3,$D)],t)}(He),LV=function(e){function t(t,n,i,o,r,s,a,u){var l=e.call(this,t,i,a,u)||this;return l._contextViewService=n,l._keybindingService=o,l._themeService=r,l._notificationService=s,l._widget=null,l._findOptionsWidget=null,l}return yV(t,e),t.prototype._start=function(t){this._widget||this._createFindWidget();var n=this._editor.getSelection(),i=!1;switch(this._editor.getOption(28).autoFindInSelection){case"always":i=!0;break;case"never":i=!1;break;case"multiline":i=!!n&&n.startLineNumber!==n.endLineNumber}t.updateSearchScope=i,e.prototype._start.call(this,t),2===t.shouldFocus?this._widget.focusReplaceInput():1===t.shouldFocus&&this._widget.focusFindInput()},t.prototype.highlightFindOptions=function(){this._widget||this._createFindWidget(),this._state.isRevealed?this._widget.highlightFindOptions():this._findOptionsWidget.highlightFindOptions()},t.prototype._createFindWidget=function(){this._widget=this._register(new vV(this._editor,this,this._state,this._contextViewService,this._keybindingService,this._contextKeyService,this._themeService,this._storageService,this._notificationService)),this._findOptionsWidget=this._register(new CW(this._editor,this._state,this._keybindingService,this._themeService))},t=bV([wV(1,xD),wV(2,qh),wV(3,XD),wV(4,fg),wV(5,ap),wV(6,FM),wV(7,Tn($D))],t)}(SV),xV=function(e){function t(){return e.call(this,{id:YF,label:r("startFindAction","Find"),alias:"Find",precondition:void 0,kbOpts:{kbExpr:null,primary:2084,weight:100},menuOpts:{menuId:17,group:"3_find",title:r({key:"miFind",comment:["&& denotes a mnemonic"]},"&&Find"),order:1}})||this}return yV(t,e),t.prototype.run=function(e,t){var n=SV.get(t);n&&n.start({forceRevealReplace:!1,seedSearchStringFromSelection:t.getOption(28).seedSearchStringFromSelection,seedSearchStringFromGlobalClipboard:t.getOption(28).globalFindClipboard,shouldFocus:1,shouldAnimate:!0,updateSearchScope:!1})},t}(kf),DV=function(e){function t(){return e.call(this,{id:XF,label:r("startFindWithSelectionAction","Find With Selection"),alias:"Find With Selection",precondition:void 0,kbOpts:{kbExpr:null,primary:0,mac:{primary:2083},weight:100}})||this}return yV(t,e),t.prototype.run=function(e,t){var n=SV.get(t);n&&(n.start({forceRevealReplace:!1,seedSearchStringFromSelection:!0,seedSearchStringFromGlobalClipboard:!1,shouldFocus:0,shouldAnimate:!0,updateSearchScope:!1}),n.setGlobalBufferTerm(n.getState().searchString))},t}(kf),NV=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return yV(t,e),t.prototype.run=function(e,t){var n=SV.get(t);n&&!this._run(n)&&(n.start({forceRevealReplace:!1,seedSearchStringFromSelection:0===n.getState().searchString.length&&t.getOption(28).seedSearchStringFromSelection,seedSearchStringFromGlobalClipboard:!0,shouldFocus:0,shouldAnimate:!0,updateSearchScope:!1}),this._run(n))},t}(kf),kV=function(e){function t(){return e.call(this,{id:$F,label:r("findNextMatchAction","Find Next"),alias:"Find Next",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:61,mac:{primary:2085,secondary:[61]},weight:100}})||this}return yV(t,e),t.prototype._run=function(e){return e.moveToNextMatch()},t}(NV),EV=function(e){function t(){return e.call(this,{id:$F,label:r("findNextMatchAction","Find Next"),alias:"Find Next",precondition:void 0,kbOpts:{kbExpr:Rh.and(eC.focus,jF),primary:3,weight:100}})||this}return yV(t,e),t.prototype._run=function(e){return e.moveToNextMatch()},t}(NV),IV=function(e){function t(){return e.call(this,{id:QF,label:r("findPreviousMatchAction","Find Previous"),alias:"Find Previous",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:1085,mac:{primary:3109,secondary:[1085]},weight:100}})||this}return yV(t,e),t.prototype._run=function(e){return e.moveToPrevMatch()},t}(NV),OV=function(e){function t(){return e.call(this,{id:QF,label:r("findPreviousMatchAction","Find Previous"),alias:"Find Previous",precondition:void 0,kbOpts:{kbExpr:Rh.and(eC.focus,jF),primary:1027,weight:100}})||this}return yV(t,e),t.prototype._run=function(e){return e.moveToPrevMatch()},t}(NV),MV=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return yV(t,e),t.prototype.run=function(e,t){var n=SV.get(t);if(n){var i=CV(t);i&&n.setSearchString(i),this._run(n)||(n.start({forceRevealReplace:!1,seedSearchStringFromSelection:t.getOption(28).seedSearchStringFromSelection,seedSearchStringFromGlobalClipboard:!1,shouldFocus:0,shouldAnimate:!0,updateSearchScope:!1}),this._run(n))}},t}(kf),TV=function(e){function t(){return e.call(this,{id:JF,label:r("nextSelectionMatchFindAction","Find Next Selection"),alias:"Find Next Selection",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:2109,weight:100}})||this}return yV(t,e),t.prototype._run=function(e){return e.moveToNextMatch()},t}(MV),PV=function(e){function t(){return e.call(this,{id:eW,label:r("previousSelectionMatchFindAction","Find Previous Selection"),alias:"Find Previous Selection",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:3133,weight:100}})||this}return yV(t,e),t.prototype._run=function(e){return e.moveToPrevMatch()},t}(MV),RV=function(e){function t(){return e.call(this,{id:tW,label:r("startReplace","Replace"),alias:"Replace",precondition:void 0,kbOpts:{kbExpr:null,primary:2086,mac:{primary:2596},weight:100},menuOpts:{menuId:17,group:"3_find",title:r({key:"miReplace",comment:["&& denotes a mnemonic"]},"&&Replace"),order:2}})||this}return yV(t,e),t.prototype.run=function(e,t){if(t.hasModel()&&!t.getOption(68)){var n=SV.get(t),i=t.getSelection(),o=n.isFindInputFocused(),r=!i.isEmpty()&&i.startLineNumber===i.endLineNumber&&t.getOption(28).seedSearchStringFromSelection&&!o,s=o||r?2:1;n&&n.start({forceRevealReplace:!0,seedSearchStringFromSelection:r,seedSearchStringFromGlobalClipboard:t.getOption(28).seedSearchStringFromSelection,shouldFocus:s,shouldAnimate:!0,updateSearchScope:!1})}},t}(kf);Pf(SV.ID,LV),Tf(xV),Tf(DV),Tf(kV),Tf(EV),Tf(IV),Tf(OV),Tf(TV),Tf(PV),Tf(RV);var AV=Nf.bindToContribution(SV.get);Mf(new AV({id:nW,precondition:zF,handler:function(e){return e.closeFindWidget()},kbOpts:{weight:105,kbExpr:eC.focus,primary:9,secondary:[1033]}})),Mf(new AV({id:iW,precondition:void 0,handler:function(e){return e.toggleCaseSensitive()},kbOpts:{weight:105,kbExpr:eC.focus,primary:KF.primary,mac:KF.mac,win:KF.win,linux:KF.linux}})),Mf(new AV({id:oW,precondition:void 0,handler:function(e){return e.toggleWholeWords()},kbOpts:{weight:105,kbExpr:eC.focus,primary:qF.primary,mac:qF.mac,win:qF.win,linux:qF.linux}})),Mf(new AV({id:rW,precondition:void 0,handler:function(e){return e.toggleRegex()},kbOpts:{weight:105,kbExpr:eC.focus,primary:GF.primary,mac:GF.mac,win:GF.win,linux:GF.linux}})),Mf(new AV({id:sW,precondition:void 0,handler:function(e){return e.toggleSearchScope()},kbOpts:{weight:105,kbExpr:eC.focus,primary:ZF.primary,mac:ZF.mac,win:ZF.win,linux:ZF.linux}})),Mf(new AV({id:aW,precondition:zF,handler:function(e){return e.replace()},kbOpts:{weight:105,kbExpr:eC.focus,primary:3094}})),Mf(new AV({id:aW,precondition:zF,handler:function(e){return e.replace()},kbOpts:{weight:105,kbExpr:Rh.and(eC.focus,UF),primary:3}})),Mf(new AV({id:uW,precondition:zF,handler:function(e){return e.replaceAll()},kbOpts:{weight:105,kbExpr:eC.focus,primary:2563}})),Mf(new AV({id:uW,precondition:zF,handler:function(e){return e.replaceAll()},kbOpts:{weight:105,kbExpr:Rh.and(eC.focus,UF),primary:void 0,mac:{primary:2051}}})),Mf(new AV({id:lW,precondition:zF,handler:function(e){return e.selectAllMatches()},kbOpts:{weight:105,kbExpr:eC.focus,primary:515}}));n(407);var FV=function(){function e(e,t,n){if(e.length!==t.length||e.length>65535)throw new Error("invalid startIndexes or endIndexes size");this._startIndexes=e,this._endIndexes=t,this._collapseStates=new Uint32Array(Math.ceil(e.length/32)),this._types=n,this._parentsComputed=!1}return e.prototype.ensureParentIndices=function(){var e=this;if(!this._parentsComputed){this._parentsComputed=!0;for(var t=[],n=function(n,i){var o=t[t.length-1];return e.getStartLineNumber(o)<=n&&e.getEndLineNumber(o)>=i},i=0,o=this._startIndexes.length;i<o;i++){var r=this._startIndexes[i],s=this._endIndexes[i];if(r>16777215||s>16777215)throw new Error("startLineNumber or endLineNumber must not exceed 16777215");for(;t.length>0&&!n(r,s);)t.pop();var a=t.length>0?t[t.length-1]:-1;t.push(i),this._startIndexes[i]=r+((255&a)<<24),this._endIndexes[i]=s+((65280&a)<<16)}}},Object.defineProperty(e.prototype,"length",{get:function(){return this._startIndexes.length},enumerable:!0,configurable:!0}),e.prototype.getStartLineNumber=function(e){return 16777215&this._startIndexes[e]},e.prototype.getEndLineNumber=function(e){return 16777215&this._endIndexes[e]},e.prototype.getType=function(e){return this._types?this._types[e]:void 0},e.prototype.hasTypes=function(){return!!this._types},e.prototype.isCollapsed=function(e){var t=e/32|0,n=e%32;return 0!=(this._collapseStates[t]&1<<n)},e.prototype.setCollapsed=function(e,t){var n=e/32|0,i=e%32,o=this._collapseStates[n];this._collapseStates[n]=t?o|1<<i:o&~(1<<i)},e.prototype.toRegion=function(e){return new WV(this,e)},e.prototype.getParentIndex=function(e){this.ensureParentIndices();var t=((4278190080&this._startIndexes[e])>>>24)+((4278190080&this._endIndexes[e])>>>16);return 65535===t?-1:t},e.prototype.contains=function(e,t){return this.getStartLineNumber(e)<=t&&this.getEndLineNumber(e)>=t},e.prototype.findIndex=function(e){var t=0,n=this._startIndexes.length;if(0===n)return-1;for(;t<n;){var i=Math.floor((t+n)/2);e<this.getStartLineNumber(i)?n=i:t=i+1}return t-1},e.prototype.findRange=function(e){var t=this.findIndex(e);if(t>=0){if(this.getEndLineNumber(t)>=e)return t;for(t=this.getParentIndex(t);-1!==t;){if(this.contains(t,e))return t;t=this.getParentIndex(t)}}return-1},e.prototype.toString=function(){for(var e=[],t=0;t<this.length;t++)e[t]="["+(this.isCollapsed(t)?"+":"-")+"] "+this.getStartLineNumber(t)+"/"+this.getEndLineNumber(t);return e.join(", ")},e}(),WV=function(){function e(e,t){this.ranges=e,this.index=t}return Object.defineProperty(e.prototype,"startLineNumber",{get:function(){return this.ranges.getStartLineNumber(this.index)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"endLineNumber",{get:function(){return this.ranges.getEndLineNumber(this.index)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"regionIndex",{get:function(){return this.index},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"parentIndex",{get:function(){return this.ranges.getParentIndex(this.index)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isCollapsed",{get:function(){return this.ranges.isCollapsed(this.index)},enumerable:!0,configurable:!0}),e.prototype.containedBy=function(e){return e.startLineNumber<=this.startLineNumber&&e.endLineNumber>=this.endLineNumber},e.prototype.containsLine=function(e){return this.startLineNumber<=e&&e<=this.endLineNumber},e}(),VV=function(){function e(e,t){this._updateEventEmitter=new nt,this.onDidChange=this._updateEventEmitter.event,this._textModel=e,this._decorationProvider=t,this._regions=new FV(new Uint32Array(0),new Uint32Array(0)),this._editorDecorationIds=[],this._isInitialized=!1}return Object.defineProperty(e.prototype,"regions",{get:function(){return this._regions},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"textModel",{get:function(){return this._textModel},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isInitialized",{get:function(){return this._isInitialized},enumerable:!0,configurable:!0}),e.prototype.toggleCollapseState=function(e){var t=this;if(e.length){var n={};this._decorationProvider.changeDecorations((function(i){for(var o=0,r=e;o<r.length;o++){var s=r[o].regionIndex,a=t._editorDecorationIds[s];if(a&&!n[a]){n[a]=!0;var u=!t._regions.isCollapsed(s);t._regions.setCollapsed(s,u),i.changeDecorationOptions(a,t._decorationProvider.getDecorationOption(u))}}})),this._updateEventEmitter.fire({model:this,collapseStateChanged:e})}},e.prototype.update=function(e,t){var n=this;void 0===t&&(t=[]);for(var i=[],o=function(o,r){var s=e.getStartLineNumber(o);r&&function(e,n){for(var i=0,o=t;i<o.length;i++){var r=o[i];if(e<r&&r<=n)return!0}return!1}(s,e.getEndLineNumber(o))&&(r=!1),e.setCollapsed(o,r);var a=n._textModel.getLineMaxColumn(s),u={startLineNumber:s,startColumn:a,endLineNumber:s,endColumn:a};i.push({range:u,options:n._decorationProvider.getDecorationOption(r)})},r=0,s=function(){for(;r<n._regions.length;){var e=n._regions.isCollapsed(r);if(r++,e)return r-1}return-1},a=0,u=s();-1!==u&&a<e.length;){var l=this._textModel.getDecorationRange(this._editorDecorationIds[u]);if(l){var c=l.startLineNumber;if(this._textModel.getLineMaxColumn(c)===l.startColumn)for(;a<e.length;){var d=e.getStartLineNumber(a);if(!(c>=d))break;o(a,c===d),a++}}u=s()}for(;a<e.length;)o(a,!1),a++;this._editorDecorationIds=this._decorationProvider.deltaDecorations(this._editorDecorationIds,i),this._regions=e,this._isInitialized=!0,this._updateEventEmitter.fire({model:this})},e.prototype.getMemento=function(){for(var e=[],t=0;t<this._regions.length;t++)if(this._regions.isCollapsed(t)){var n=this._textModel.getDecorationRange(this._editorDecorationIds[t]);if(n){var i=n.startLineNumber,o=n.endLineNumber+this._regions.getEndLineNumber(t)-this._regions.getStartLineNumber(t);e.push({startLineNumber:i,endLineNumber:o})}}if(e.length>0)return e},e.prototype.applyMemento=function(e){if(Array.isArray(e)){for(var t=[],n=0,i=e;n<i.length;n++){var o=i[n],r=this.getRegionAtLine(o.startLineNumber);r&&!r.isCollapsed&&t.push(r)}this.toggleCollapseState(t)}},e.prototype.dispose=function(){this._decorationProvider.deltaDecorations(this._editorDecorationIds,[])},e.prototype.getAllRegionsAtLine=function(e,t){var n=[];if(this._regions)for(var i=this._regions.findRange(e),o=1;i>=0;){var r=this._regions.toRegion(i);t&&!t(r,o)||n.push(r),o++,i=r.parentIndex}return n},e.prototype.getRegionAtLine=function(e){if(this._regions){var t=this._regions.findRange(e);if(t>=0)return this._regions.toRegion(t)}return null},e.prototype.getRegionsInside=function(e,t){var n=[],i=e?e.regionIndex+1:0,o=e?e.endLineNumber:Number.MAX_VALUE;if(t&&2===t.length)for(var r=[],s=i,a=this._regions.length;s<a;s++){var u=this._regions.toRegion(s);if(!(this._regions.getStartLineNumber(s)<o))break;for(;r.length>0&&!u.containedBy(r[r.length-1]);)r.pop();r.push(u),t(u,r.length)&&n.push(u)}else for(s=i,a=this._regions.length;s<a;s++){u=this._regions.toRegion(s);if(!(this._regions.getStartLineNumber(s)<o))break;t&&!t(u)||n.push(u)}return n},e}();function BV(e,t,n,i){void 0===n&&(n=Number.MAX_VALUE);var o=[];if(i&&i.length>0)for(var r=0,s=i;r<s.length;r++){var a=s[r],u=e.getRegionAtLine(a);if(u&&(u.isCollapsed!==t&&o.push(u),n>1)){var l=e.getRegionsInside(u,(function(e,i){return e.isCollapsed!==t&&i<n}));o.push.apply(o,l)}}else{l=e.getRegionsInside(null,(function(e,i){return e.isCollapsed!==t&&i<n}));o.push.apply(o,l)}e.toggleCollapseState(o)}function HV(e,t,n,i){for(var o=[],r=0,s=i;r<s.length;r++){var a=s[r],u=e.getAllRegionsAtLine(a,(function(e,i){return e.isCollapsed!==t&&i<=n}));o.push.apply(o,u)}e.toggleCollapseState(o)}function zV(e,t,n){for(var i=e.textModel,o=e.regions,r=[],s=o.length-1;s>=0;s--)if(n!==o.isCollapsed(s)){var a=o.getStartLineNumber(s);t.test(i.getLineContent(a))&&r.push(o.toRegion(s))}e.toggleCollapseState(r)}function jV(e,t,n){for(var i=e.regions,o=[],r=i.length-1;r>=0;r--)n!==i.isCollapsed(r)&&t===i.getType(r)&&o.push(i.toRegion(r));e.toggleCollapseState(o)}var UV=function(){function e(e){this.editor=e,this.autoHideFoldingControls=!0,this.showFoldingHighlights=!0}return e.prototype.getDecorationOption=function(t){return t?this.showFoldingHighlights?e.COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION:e.COLLAPSED_VISUAL_DECORATION:this.autoHideFoldingControls?e.EXPANDED_AUTO_HIDE_VISUAL_DECORATION:e.EXPANDED_VISUAL_DECORATION},e.prototype.deltaDecorations=function(e,t){return this.editor.deltaDecorations(e,t)},e.prototype.changeDecorations=function(e){return this.editor.changeDecorations(e)},e.COLLAPSED_VISUAL_DECORATION=kv.register({stickiness:1,afterContentClassName:"inline-folded",linesDecorationsClassName:"codicon codicon-chevron-right"}),e.COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION=kv.register({stickiness:1,afterContentClassName:"inline-folded",className:"folded-background",isWholeLine:!0,linesDecorationsClassName:"codicon codicon-chevron-right"}),e.EXPANDED_AUTO_HIDE_VISUAL_DECORATION=kv.register({stickiness:1,linesDecorationsClassName:"codicon codicon-chevron-down"}),e.EXPANDED_VISUAL_DECORATION=kv.register({stickiness:1,linesDecorationsClassName:"codicon codicon-chevron-down alwaysShowFoldIcons"}),e}(),KV=function(){function e(e){var t=this;this._updateEventEmitter=new nt,this._foldingModel=e,this._foldingModelListener=e.onDidChange((function(e){return t.updateHiddenRanges()})),this._hiddenRanges=[],e.regions.length&&this.updateHiddenRanges()}return Object.defineProperty(e.prototype,"onDidChange",{get:function(){return this._updateEventEmitter.event},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hiddenRanges",{get:function(){return this._hiddenRanges},enumerable:!0,configurable:!0}),e.prototype.updateHiddenRanges=function(){for(var e=!1,t=[],n=0,i=0,o=Number.MAX_VALUE,r=-1,s=this._foldingModel.regions;n<s.length;n++)if(s.isCollapsed(n)){var a=s.getStartLineNumber(n)+1,u=s.getEndLineNumber(n);o<=a&&u<=r||(!e&&i<this._hiddenRanges.length&&this._hiddenRanges[i].startLineNumber===a&&this._hiddenRanges[i].endLineNumber===u?(t.push(this._hiddenRanges[i]),i++):(e=!0,t.push(new wn(a,1,u,1))),o=a,r=u)}(e||i<this._hiddenRanges.length)&&this.applyHiddenRanges(t)},e.prototype.applyMemento=function(e){if(!Array.isArray(e)||0===e.length)return!1;for(var t=[],n=0,i=e;n<i.length;n++){var o=i[n];if(!o.startLineNumber||!o.endLineNumber)return!1;t.push(new wn(o.startLineNumber+1,1,o.endLineNumber,1))}return this.applyHiddenRanges(t),!0},e.prototype.getMemento=function(){return this._hiddenRanges.map((function(e){return{startLineNumber:e.startLineNumber-1,endLineNumber:e.endLineNumber}}))},e.prototype.applyHiddenRanges=function(e){this._hiddenRanges=e,this._updateEventEmitter.fire(e)},e.prototype.hasRanges=function(){return this._hiddenRanges.length>0},e.prototype.isHidden=function(e){return null!==qV(this._hiddenRanges,e)},e.prototype.adjustSelections=function(e){for(var t=this,n=!1,i=this._foldingModel.textModel,o=null,r=function(e){return o&&function(e,t){return e>=t.startLineNumber&&e<=t.endLineNumber}(e,o)||(o=qV(t._hiddenRanges,e)),o?o.startLineNumber-1:null},s=0,a=e.length;s<a;s++){var u=e[s],l=r(u.startLineNumber);l&&(u=u.setStartPosition(l,i.getLineMaxColumn(l)),n=!0);var c=r(u.endLineNumber);c&&(u=u.setEndPosition(c,i.getLineMaxColumn(c)),n=!0),e[s]=u}return n},e.prototype.dispose=function(){this.hiddenRanges.length>0&&(this._hiddenRanges=[],this._updateEventEmitter.fire(this._hiddenRanges)),this._foldingModelListener&&(this._foldingModelListener.dispose(),this._foldingModelListener=null)},e}();function qV(e,t){var n=function(e,t){var n=0,i=e.length;if(0===i)return 0;for(;n<i;){var o=Math.floor((n+i)/2);t(e[o])?i=o:n=o+1}return n}(e,(function(e){return t<e.startLineNumber}))-1;return n>=0&&e[n].endLineNumber>=t?e[n]:null}var GV=function(){function e(e){this.editorModel=e,this.id="indent"}return e.prototype.dispose=function(){},e.prototype.compute=function(e){var t=Ol.getFoldingRules(this.editorModel.getLanguageIdentifier().id),n=t&&!!t.offSide,i=t&&t.markers;return Promise.resolve(function(e,t,n,i){void 0===i&&(i=5e3);var o=e.getOptions().tabSize,r=new ZV(i),s=void 0;n&&(s=new RegExp("("+n.start.source+")|(?:"+n.end.source+")"));var a=[],u=e.getLineCount()+1;a.push({indent:-1,endAbove:u,line:u});for(var l=e.getLineCount();l>0;l--){var c=e.getLineContent(l),d=Cv.computeIndentLevel(c,o),h=a[a.length-1];if(-1!==d){var p=void 0;if(s&&(p=c.match(s))){if(!p[1]){a.push({indent:-2,endAbove:l,line:l});continue}for(var f=a.length-1;f>0&&-2!==a[f].indent;)f--;if(f>0){a.length=f+1,h=a[f],r.insertFirst(l,h.line,d),h.line=l,h.indent=d,h.endAbove=l;continue}}if(h.indent>d){do{a.pop(),h=a[a.length-1]}while(h.indent>d);var g=h.endAbove-1;g-l>=1&&r.insertFirst(l,g,d)}h.indent===d?h.endAbove=l:a.push({indent:d,endAbove:l,line:l})}else t&&(h.endAbove=l)}return r.toIndentRanges(e)}(this.editorModel,n,i))},e}(),ZV=function(){function e(e){this._startIndexes=[],this._endIndexes=[],this._indentOccurrences=[],this._length=0,this._foldingRangesLimit=e}return e.prototype.insertFirst=function(e,t,n){if(!(e>16777215||t>16777215)){var i=this._length;this._startIndexes[i]=e,this._endIndexes[i]=t,this._length++,n<1e3&&(this._indentOccurrences[n]=(this._indentOccurrences[n]||0)+1)}},e.prototype.toIndentRanges=function(e){if(this._length<=this._foldingRangesLimit){for(var t=new Uint32Array(this._length),n=new Uint32Array(this._length),i=this._length-1,o=0;i>=0;i--,o++)t[o]=this._startIndexes[i],n[o]=this._endIndexes[i];return new FV(t,n)}var r=0,s=this._indentOccurrences.length;for(i=0;i<this._indentOccurrences.length;i++){var a=this._indentOccurrences[i];if(a){if(a+r>this._foldingRangesLimit){s=i;break}r+=a}}var u=e.getOptions().tabSize;for(t=new Uint32Array(this._foldingRangesLimit),n=new Uint32Array(this._foldingRangesLimit),i=this._length-1,o=0;i>=0;i--){var l=this._startIndexes[i],c=e.getLineContent(l),d=Cv.computeIndentLevel(c,u);(d<s||d===s&&r++<this._foldingRangesLimit)&&(t[o]=l,n[o]=this._endIndexes[i],o++)}return new FV(t,n)},e}();var YV={},XV=function(){function e(e,t,n){void 0===n&&(n=5e3),this.editorModel=e,this.providers=t,this.limit=n,this.id="syntax"}return e.prototype.compute=function(e){var t=this;return function(e,t,n){var i=null,o=e.map((function(e,o){return Promise.resolve(e.provideFoldingRanges(t,YV,n)).then((function(e){if(!n.isCancellationRequested&&Array.isArray(e)){Array.isArray(i)||(i=[]);for(var r=t.getLineCount(),s=0,a=e;s<a.length;s++){var u=a[s];u.start>0&&u.end>u.start&&u.end<=r&&i.push({start:u.start,end:u.end,rank:o,kind:u.kind})}}}),Ne)}));return Promise.all(o).then((function(e){return i}))}(this.providers,this.editorModel,e).then((function(e){return e?QV(e,t.limit):null}))},e.prototype.dispose=function(){},e}();var $V=function(){function e(e){this._startIndexes=[],this._endIndexes=[],this._nestingLevels=[],this._nestingLevelCounts=[],this._types=[],this._length=0,this._foldingRangesLimit=e}return e.prototype.add=function(e,t,n,i){if(!(e>16777215||t>16777215)){var o=this._length;this._startIndexes[o]=e,this._endIndexes[o]=t,this._nestingLevels[o]=i,this._types[o]=n,this._length++,i<30&&(this._nestingLevelCounts[i]=(this._nestingLevelCounts[i]||0)+1)}},e.prototype.toIndentRanges=function(){if(this._length<=this._foldingRangesLimit){for(var e=new Uint32Array(this._length),t=new Uint32Array(this._length),n=0;n<this._length;n++)e[n]=this._startIndexes[n],t[n]=this._endIndexes[n];return new FV(e,t,this._types)}var i=0,o=this._nestingLevelCounts.length;for(n=0;n<this._nestingLevelCounts.length;n++){var r=this._nestingLevelCounts[n];if(r){if(r+i>this._foldingRangesLimit){o=n;break}i+=r}}e=new Uint32Array(this._foldingRangesLimit),t=new Uint32Array(this._foldingRangesLimit);for(var s=[],a=(n=0,0);n<this._length;n++){var u=this._nestingLevels[n];(u<o||u===o&&i++<this._foldingRangesLimit)&&(e[a]=this._startIndexes[n],t[a]=this._endIndexes[n],s[a]=this._types[n],a++)}return new FV(e,t,s)},e}();function QV(e,t){for(var n=e.sort((function(e,t){var n=e.start-t.start;return 0===n&&(n=e.rank-t.rank),n})),i=new $V(t),o=void 0,r=[],s=0,a=n;s<a.length;s++){var u=a[s];if(o){if(u.start>o.start)if(u.end<=o.end)r.push(o),o=u,i.add(u.start,u.end,u.kind&&u.kind.value,r.length);else{if(u.start>o.end){do{o=r.pop()}while(o&&u.start>o.end);o&&r.push(o),o=u}i.add(u.start,u.end,u.kind&&u.kind.value,r.length)}}else o=u,i.add(u.start,u.end,u.kind&&u.kind.value,r.length)}return i.toIndentRanges()}var JV=function(){function e(e,t,n,i){if(this.editorModel=e,this.id="init",t.length){this.decorationIds=e.deltaDecorations([],t.map((function(t){return{range:{startLineNumber:t.startLineNumber,startColumn:0,endLineNumber:t.endLineNumber,endColumn:e.getLineLength(t.endLineNumber)},options:{stickiness:1}}}))),this.timeout=setTimeout(n,i)}}return e.prototype.dispose=function(){this.decorationIds&&(this.editorModel.deltaDecorations(this.decorationIds,[]),this.decorationIds=void 0),"number"==typeof this.timeout&&(clearTimeout(this.timeout),this.timeout=void 0)},e.prototype.compute=function(e){var t=[];if(this.decorationIds)for(var n=0,i=this.decorationIds;n<i.length;n++){var o=i[n],r=this.editorModel.getDecorationRange(o);r&&t.push({start:r.startLineNumber,end:r.endLineNumber,rank:1})}return Promise.resolve(QV(t,Number.MAX_VALUE))},e}(),eB=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),tB=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},nB=function(e,t){return function(n,i){t(n,i,e)}},iB=new Kh("foldingEnabled",!1),oB=function(e){function t(t,n){var i=e.call(this)||this;i.contextKeyService=n,i.localToDispose=i._register(new Be),i.editor=t;var o=i.editor.getOptions();return i._isEnabled=o.get(30),i._useFoldingProviders="indentation"!==o.get(31),i.foldingModel=null,i.hiddenRangeModel=null,i.rangeProvider=null,i.foldingRegionPromise=null,i.foldingStateMemento=null,i.foldingModelPromise=null,i.updateScheduler=null,i.cursorChangedScheduler=null,i.mouseDownInfo=null,i.foldingDecorationProvider=new UV(t),i.foldingDecorationProvider.autoHideFoldingControls="mouseover"===o.get(84),i.foldingDecorationProvider.showFoldingHighlights=o.get(32),i.foldingEnabled=iB.bindTo(i.contextKeyService),i.foldingEnabled.set(i._isEnabled),i._register(i.editor.onDidChangeModel((function(){return i.onModelChanged()}))),i._register(i.editor.onDidChangeConfiguration((function(e){if(e.hasChanged(30)){var t=i.editor.getOptions();i._isEnabled=t.get(30),i.foldingEnabled.set(i._isEnabled),i.onModelChanged()}if(e.hasChanged(84)||e.hasChanged(32)){var n=i.editor.getOptions();i.foldingDecorationProvider.autoHideFoldingControls="mouseover"===n.get(84),i.foldingDecorationProvider.showFoldingHighlights=n.get(32),i.onModelContentChanged()}if(e.hasChanged(31)){var o=i.editor.getOptions();i._useFoldingProviders="indentation"!==o.get(31),i.onFoldingStrategyChanged()}}))),i.onModelChanged(),i}return eB(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.saveViewState=function(){var e=this.editor.getModel();if(!e||!this._isEnabled||e.isTooLargeForTokenization())return{};if(this.foldingModel){var t=this.foldingModel.isInitialized?this.foldingModel.getMemento():this.hiddenRangeModel.getMemento(),n=this.rangeProvider?this.rangeProvider.id:void 0;return{collapsedRegions:t,lineCount:e.getLineCount(),provider:n}}},t.prototype.restoreViewState=function(e){var t=this.editor.getModel();if(t&&this._isEnabled&&!t.isTooLargeForTokenization()&&this.hiddenRangeModel&&e&&e.collapsedRegions&&e.lineCount===t.getLineCount()){"syntax"!==e.provider&&"init"!==e.provider||(this.foldingStateMemento=e);var n=e.collapsedRegions;if(this.hiddenRangeModel.applyMemento(n)){var i=this.getFoldingModel();i&&i.then((function(e){e&&e.applyMemento(n)})).then(void 0,De)}}},t.prototype.onModelChanged=function(){var e=this;this.localToDispose.clear();var t=this.editor.getModel();this._isEnabled&&t&&!t.isTooLargeForTokenization()&&(this.foldingModel=new VV(t,this.foldingDecorationProvider),this.localToDispose.add(this.foldingModel),this.hiddenRangeModel=new KV(this.foldingModel),this.localToDispose.add(this.hiddenRangeModel),this.localToDispose.add(this.hiddenRangeModel.onDidChange((function(t){return e.onHiddenRangesChanges(t)}))),this.updateScheduler=new fi(200),this.cursorChangedScheduler=new wi((function(){return e.revealCursor()}),200),this.localToDispose.add(this.cursorChangedScheduler),this.localToDispose.add(qu.onDidChange((function(){return e.onFoldingStrategyChanged()}))),this.localToDispose.add(this.editor.onDidChangeModelLanguageConfiguration((function(){return e.onFoldingStrategyChanged()}))),this.localToDispose.add(this.editor.onDidChangeModelContent((function(){return e.onModelContentChanged()}))),this.localToDispose.add(this.editor.onDidChangeCursorPosition((function(){return e.onCursorPositionChanged()}))),this.localToDispose.add(this.editor.onMouseDown((function(t){return e.onEditorMouseDown(t)}))),this.localToDispose.add(this.editor.onMouseUp((function(t){return e.onEditorMouseUp(t)}))),this.localToDispose.add({dispose:function(){e.foldingRegionPromise&&(e.foldingRegionPromise.cancel(),e.foldingRegionPromise=null),e.updateScheduler&&e.updateScheduler.cancel(),e.updateScheduler=null,e.foldingModel=null,e.foldingModelPromise=null,e.hiddenRangeModel=null,e.cursorChangedScheduler=null,e.foldingStateMemento=null,e.rangeProvider&&e.rangeProvider.dispose(),e.rangeProvider=null}}),this.onModelContentChanged())},t.prototype.onFoldingStrategyChanged=function(){this.rangeProvider&&this.rangeProvider.dispose(),this.rangeProvider=null,this.onModelContentChanged()},t.prototype.getRangeProvider=function(e){var t=this;if(this.rangeProvider)return this.rangeProvider;if(this.rangeProvider=new GV(e),this._useFoldingProviders&&this.foldingModel){var n=qu.ordered(this.foldingModel.textModel);if(0===n.length&&this.foldingStateMemento&&this.foldingStateMemento.collapsedRegions)return this.rangeProvider=new JV(e,this.foldingStateMemento.collapsedRegions,(function(){t.foldingStateMemento=null,t.onFoldingStrategyChanged()}),3e4);n.length>0&&(this.rangeProvider=new XV(e,n))}return this.foldingStateMemento=null,this.rangeProvider},t.prototype.getFoldingModel=function(){return this.foldingModelPromise},t.prototype.onModelContentChanged=function(){var e=this;this.updateScheduler&&(this.foldingRegionPromise&&(this.foldingRegionPromise.cancel(),this.foldingRegionPromise=null),this.foldingModelPromise=this.updateScheduler.trigger((function(){var t=e.foldingModel;if(!t)return null;var n=e.foldingRegionPromise=hi((function(n){return e.getRangeProvider(t.textModel).compute(n)}));return n.then((function(i){if(i&&n===e.foldingRegionPromise){var o=e.editor.getSelections(),r=o?o.map((function(e){return e.startLineNumber})):[];t.update(i,r)}return t}))})).then(void 0,(function(e){return De(e),null})))},t.prototype.onHiddenRangesChanges=function(e){if(this.hiddenRangeModel&&e.length){var t=this.editor.getSelections();t&&this.hiddenRangeModel.adjustSelections(t)&&this.editor.setSelections(t)}this.editor.setHiddenAreas(e)},t.prototype.onCursorPositionChanged=function(){this.hiddenRangeModel&&this.hiddenRangeModel.hasRanges()&&this.cursorChangedScheduler.schedule()},t.prototype.revealCursor=function(){var e=this,t=this.getFoldingModel();t&&t.then((function(t){if(t){var n=e.editor.getSelections();if(n&&n.length>0){for(var i=[],o=function(n){var o=n.selectionStartLineNumber;e.hiddenRangeModel&&e.hiddenRangeModel.isHidden(o)&&i.push.apply(i,t.getAllRegionsAtLine(o,(function(e){return e.isCollapsed&&o>e.startLineNumber})))},r=0,s=n;r<s.length;r++){o(s[r])}i.length&&(t.toggleCollapseState(i),e.reveal(n[0].getPosition()))}}})).then(void 0,De)},t.prototype.onEditorMouseDown=function(e){if(this.mouseDownInfo=null,this.hiddenRangeModel&&e.target&&e.target.range&&(e.event.leftButton||e.event.middleButton)){var t=e.target.range,n=!1;switch(e.target.type){case 4:var i=e.target.detail,o=e.target.element.offsetLeft;if(i.offsetX-o<5)return;n=!0;break;case 6:if(this.hiddenRangeModel.hasRanges()){var r=this.editor.getModel();if(r&&t.startColumn===r.getLineMaxColumn(t.startLineNumber))break}return;default:return}this.mouseDownInfo={lineNumber:t.startLineNumber,iconClicked:n}}},t.prototype.onEditorMouseUp=function(e){var t=this,n=this.getFoldingModel();if(n&&this.mouseDownInfo&&e.target){var i=this.mouseDownInfo.lineNumber,o=this.mouseDownInfo.iconClicked,r=e.target.range;if(r&&r.startLineNumber===i){if(o){if(4!==e.target.type)return}else{var s=this.editor.getModel();if(!s||r.startColumn!==s.getLineMaxColumn(i))return}n.then((function(n){if(n){var r=n.getRegionAtLine(i);if(r&&r.startLineNumber===i){var s=r.isCollapsed;if(o||s){var a=[],u=e.event.middleButton||e.event.shiftKey;if(u)for(var l=0,c=n.getRegionsInside(r);l<c.length;l++){var d=c[l];d.isCollapsed===s&&a.push(d)}!s&&u&&0!==a.length||a.push(r),n.toggleCollapseState(a),t.reveal({lineNumber:i,column:1})}}}})).then(void 0,De)}}},t.prototype.reveal=function(e){this.editor.revealPositionInCenterIfOutsideViewport(e,0)},t.ID="editor.contrib.folding",t=tB([nB(1,qh)],t)}(He),rB=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return eB(t,e),t.prototype.runEditorCommand=function(e,t,n){var i=this,o=oB.get(t);if(o){var r=o.getFoldingModel();return r?(this.reportTelemetry(e,t),r.then((function(e){if(e){i.invoke(o,e,t,n);var r=t.getSelection();r&&o.reveal(r.getStartPosition())}}))):void 0}},t.prototype.getSelectedLines=function(e){var t=e.getSelections();return t?t.map((function(e){return e.startLineNumber})):[]},t.prototype.getLineNumbers=function(e,t){return e&&e.selectionLines?e.selectionLines.map((function(e){return e+1})):this.getSelectedLines(t)},t.prototype.run=function(e,t){},t}(kf);function sB(e){if(!Bs(e)){if(!Fs(e))return!1;var t=e;if(!Bs(t.levels)&&!Ws(t.levels))return!1;if(!Bs(t.direction)&&!As(t.direction))return!1;if(!(Bs(t.selectionLines)||Rs(t.selectionLines)&&t.selectionLines.every(Ws)))return!1}return!0}var aB,uB=function(e){function t(){return e.call(this,{id:"editor.unfold",label:r("unfoldAction.label","Unfold"),alias:"Unfold",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:3161,mac:{primary:2649},weight:100},description:{description:"Unfold the content in the editor",args:[{name:"Unfold editor argument",description:"Property-value pairs that can be passed through this argument:\n\t\t\t\t\t\t* 'levels': Number of levels to unfold. If not set, defaults to 1.\n\t\t\t\t\t\t* 'direction': If 'up', unfold given number of levels up otherwise unfolds down.\n\t\t\t\t\t\t* 'selectionLines': The start lines (0-based) of the editor selections to apply the unfold action to. If not set, the active selection(s) will be used.\n\t\t\t\t\t\t",constraint:sB,schema:{type:"object",properties:{levels:{type:"number",default:1},direction:{type:"string",enum:["up","down"],default:"down"},selectionLines:{type:"array",items:{type:"number"}}}}}]}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n,i){var o=i&&i.levels||1,r=this.getLineNumbers(i,n);i&&"up"===i.direction?HV(t,!1,o,r):BV(t,!1,o,r)},t}(rB),lB=function(e){function t(){return e.call(this,{id:"editor.unfoldRecursively",label:r("unFoldRecursivelyAction.label","Unfold Recursively"),alias:"Unfold Recursively",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2137),weight:100}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n,i){BV(t,!1,Number.MAX_VALUE,this.getSelectedLines(n))},t}(rB),cB=function(e){function t(){return e.call(this,{id:"editor.fold",label:r("foldAction.label","Fold"),alias:"Fold",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:3159,mac:{primary:2647},weight:100},description:{description:"Fold the content in the editor",args:[{name:"Fold editor argument",description:"Property-value pairs that can be passed through this argument:\n\t\t\t\t\t\t\t* 'levels': Number of levels to fold.\n\t\t\t\t\t\t\t* 'direction': If 'up', folds given number of levels up otherwise folds down.\n\t\t\t\t\t\t\t* 'selectionLines': The start lines (0-based) of the editor selections to apply the fold action to. If not set, the active selection(s) will be used.\n\t\t\t\t\t\t\tIf no levels or direction is set, folds the region at the locations or if already collapsed, the first uncollapsed parent instead.\n\t\t\t\t\t\t",constraint:sB,schema:{type:"object",properties:{levels:{type:"number"},direction:{type:"string",enum:["up","down"]},selectionLines:{type:"array",items:{type:"number"}}}}}]}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n,i){var o=this.getLineNumbers(i,n),r=i&&i.levels,s=i&&i.direction;"number"!=typeof r&&"string"!=typeof s?function(e,t,n){for(var i=[],o=0,r=n;o<r.length;o++){var s=r[o],a=e.getAllRegionsAtLine(s,(function(e){return e.isCollapsed!==t}));a.length>0&&i.push(a[0])}e.toggleCollapseState(i)}(t,!0,o):"up"===s?HV(t,!0,r||1,o):BV(t,!0,r||1,o)},t}(rB),dB=function(e){function t(){return e.call(this,{id:"editor.toggleFold",label:r("toggleFoldAction.label","Toggle Fold"),alias:"Toggle Fold",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2090),weight:100}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n){!function(e,t,n){for(var i=[],o=function(n){var o=e.getRegionAtLine(n);if(o){var r=!o.isCollapsed;if(i.push(o),t>1){var s=e.getRegionsInside(o,(function(e,n){return e.isCollapsed!==r&&n<t}));i.push.apply(i,s)}}},r=0,s=n;r<s.length;r++){o(s[r])}e.toggleCollapseState(i)}(t,1,this.getSelectedLines(n))},t}(rB),hB=function(e){function t(){return e.call(this,{id:"editor.foldRecursively",label:r("foldRecursivelyAction.label","Fold Recursively"),alias:"Fold Recursively",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2135),weight:100}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n){var i=this.getSelectedLines(n);BV(t,!0,Number.MAX_VALUE,i)},t}(rB),pB=function(e){function t(){return e.call(this,{id:"editor.foldAllBlockComments",label:r("foldAllBlockComments.label","Fold All Block Comments"),alias:"Fold All Block Comments",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2133),weight:100}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n){if(t.regions.hasTypes())jV(t,Du.Comment.value,!0);else{var i=n.getModel();if(!i)return;var o=Ol.getComments(i.getLanguageIdentifier().id);if(o&&o.blockCommentStartToken)zV(t,new RegExp("^\\s*"+gr(o.blockCommentStartToken)),!0)}},t}(rB),fB=function(e){function t(){return e.call(this,{id:"editor.foldAllMarkerRegions",label:r("foldAllMarkerRegions.label","Fold All Regions"),alias:"Fold All Regions",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2077),weight:100}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n){if(t.regions.hasTypes())jV(t,Du.Region.value,!0);else{var i=n.getModel();if(!i)return;var o=Ol.getFoldingRules(i.getLanguageIdentifier().id);if(o&&o.markers&&o.markers.start)zV(t,new RegExp(o.markers.start),!0)}},t}(rB),gB=function(e){function t(){return e.call(this,{id:"editor.unfoldAllMarkerRegions",label:r("unfoldAllMarkerRegions.label","Unfold All Regions"),alias:"Unfold All Regions",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2078),weight:100}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n){if(t.regions.hasTypes())jV(t,Du.Region.value,!1);else{var i=n.getModel();if(!i)return;var o=Ol.getFoldingRules(i.getLanguageIdentifier().id);if(o&&o.markers&&o.markers.start)zV(t,new RegExp(o.markers.start),!1)}},t}(rB),mB=function(e){function t(){return e.call(this,{id:"editor.foldAll",label:r("foldAllAction.label","Fold All"),alias:"Fold All",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2069),weight:100}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n){BV(t,!0)},t}(rB),vB=function(e){function t(){return e.call(this,{id:"editor.unfoldAll",label:r("unfoldAllAction.label","Unfold All"),alias:"Unfold All",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2088),weight:100}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n){BV(t,!1)},t}(rB),_B=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return eB(t,e),t.prototype.getFoldingLevel=function(){return parseInt(this.id.substr(t.ID_PREFIX.length))},t.prototype.invoke=function(e,t,n){!function(e,t,n,i){var o=e.getRegionsInside(null,(function(e,o){return o===t&&e.isCollapsed!==n&&!i.some((function(t){return e.containsLine(t)}))}));e.toggleCollapseState(o)}(t,this.getFoldingLevel(),!0,this.getSelectedLines(n))},t.ID_PREFIX="editor.foldLevel",t.ID=function(e){return t.ID_PREFIX+e},t}(rB);Pf(oB.ID,oB),Tf(uB),Tf(lB),Tf(cB),Tf(hB),Tf(mB),Tf(vB),Tf(pB),Tf(fB),Tf(gB),Tf(dB);for(var yB=1;yB<=7;yB++)aB=new _B({id:_B.ID(yB),label:r("foldLevelAction.label","Fold Level {0}",yB),alias:"Fold Level "+yB,precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2048|21+yB),weight:100}}),Rf.INSTANCE.registerEditorAction(aB);var bB=D_("editor.foldBackground",{light:Ib(Cy,.3),dark:Ib(Cy,.3),hc:null},r("editorSelectionBackground","Color of the editor selection."));yg((function(e,t){var n=e.getColor(bB);n&&t.addRule(".monaco-editor .folded-background { background-color: "+n+"; }")}));var wB=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),CB=function(e){function t(){return e.call(this,{id:"editor.action.fontZoomIn",label:r("EditorFontZoomIn.label","Editor Font Zoom In"),alias:"Editor Font Zoom In",precondition:void 0})||this}return wB(t,e),t.prototype.run=function(e,t){Pa.setZoomLevel(Pa.getZoomLevel()+1)},t}(kf),SB=function(e){function t(){return e.call(this,{id:"editor.action.fontZoomOut",label:r("EditorFontZoomOut.label","Editor Font Zoom Out"),alias:"Editor Font Zoom Out",precondition:void 0})||this}return wB(t,e),t.prototype.run=function(e,t){Pa.setZoomLevel(Pa.getZoomLevel()-1)},t}(kf),LB=function(e){function t(){return e.call(this,{id:"editor.action.fontZoomReset",label:r("EditorFontZoomReset.label","Editor Font Zoom Reset"),alias:"Editor Font Zoom Reset",precondition:void 0})||this}return wB(t,e),t.prototype.run=function(e,t){Pa.setZoomLevel(0)},t}(kf);Tf(CB),Tf(SB),Tf(LB);var xB=function(){function e(){}return e._handleEolEdits=function(e,t){for(var n=void 0,i=[],o=0,r=t;o<r.length;o++){var s=r[o];"number"==typeof s.eol&&(n=s.eol),s.range&&"string"==typeof s.text&&i.push(s)}return"number"==typeof n&&e.hasModel()&&e.getModel().pushEOL(n),i},e._isFullModelReplaceEdit=function(e,t){if(!e.hasModel())return!1;var n=e.getModel(),i=n.validateRange(t.range);return n.getFullModelRange().equalsRange(i)},e.execute=function(t,n){t.pushUndoStop();var i=e._handleEolEdits(t,n);1===i.length&&e._isFullModelReplaceEdit(t,i[0])?t.executeEdits("formatEditsCommand",i.map((function(e){return bh.replace(wn.lift(e.range),e.text)}))):t.executeEdits("formatEditsCommand",i.map((function(e){return bh.replaceMove(wn.lift(e.range),e.text)}))),t.pushUndoStop()},e}(),DB=function(){function e(e){this.value=e,this._lower=e.toLowerCase()}return e.toKey=function(e){return"string"==typeof e?e.toLowerCase():e._lower},e}(),NB=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},kB=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}};function EB(e){if((e=e.filter((function(e){return e.range}))).length){for(var t=e[0].range,n=1;n<e.length;n++)t=wn.plusRange(t,e[n].range);var i=t.startLineNumber,o=t.endLineNumber;i===o?1===e.length?Zp(r("hint11","Made 1 formatting edit on line {0}",i)):Zp(r("hintn1","Made {0} formatting edits on line {1}",e.length,i)):1===e.length?Zp(r("hint1n","Made 1 formatting edit between lines {0} and {1}",i,o)):Zp(r("hintnn","Made {0} formatting edits between lines {1} and {2}",e.length,i,o))}}function IB(e){for(var t=[],n=new Set,i=0,o=Bu.ordered(e);i<o.length;i++){var r=o[i];t.push(r),r.extensionId&&n.add(DB.toKey(r.extensionId))}for(var s=function(e){if(e.extensionId){if(n.has(DB.toKey(e.extensionId)))return"continue";n.add(DB.toKey(e.extensionId))}t.push({displayName:e.displayName,extensionId:e.extensionId,provideDocumentFormattingEdits:function(t,n,i){return e.provideDocumentRangeFormattingEdits(t,t.getFullModelRange(),n,i)}})},a=0,u=Hu.ordered(e);a<u.length;a++){s(r=u[a])}return t}var OB=function(){function e(){}return e.select=function(t,n,i){return NB(this,void 0,void 0,(function(){var o;return kB(this,(function(r){switch(r.label){case 0:return 0===t.length?[2,void 0]:(o=e._selectors.iterator().next().value)?[4,o(t,n,i)]:[3,2];case 1:return[2,r.sent()];case 2:return[2,t[0]]}}))}))},e._selectors=new Qe,e}();function MB(e,t,n,i,o){return NB(this,void 0,void 0,(function(){var r,s,a,u;return kB(this,(function(l){switch(l.label){case 0:return r=e.get(In),s=Md(t)?t.getModel():t,a=Hu.ordered(s),[4,OB.select(a,s,i)];case 1:return(u=l.sent())?[4,r.invokeFunction(TB,u,t,n,o)]:[3,3];case 2:l.sent(),l.label=3;case 3:return[2]}}))}))}function TB(e,t,n,i,o){return NB(this,void 0,void 0,(function(){var r,s,a,u,l,c,d;return kB(this,(function(h){switch(h.label){case 0:r=e.get(el),Md(n)?(s=n.getModel(),a=new rD(n,5,o)):(s=n,a=new sD(n,o)),h.label=1;case 1:return h.trys.push([1,,4,5]),[4,t.provideDocumentRangeFormattingEdits(s,i,s.getFormattingOptions(),a.token)];case 2:return l=h.sent(),[4,r.computeMoreMinimalEdits(s.uri,l)];case 3:return u=h.sent(),a.token.isCancellationRequested?[2,!0]:[3,5];case 4:return a.dispose(),[7];case 5:return u&&0!==u.length?(Md(n)?(xB.execute(n,u),EB(u),n.pushUndoStop(),n.revealPositionInCenterIfOutsideViewport(n.getPosition(),1)):(c=u[0].range,d=new Sn(c.startLineNumber,c.startColumn,c.endLineNumber,c.endColumn),s.pushEditOperations([d],u.map((function(e){return{text:e.text,range:wn.lift(e.range),forceMoveMarkers:!0}})),(function(e){for(var t=0,n=e;t<n.length;t++){var i=n[t].range;if(wn.areIntersectingOrTouching(i,d))return[new Sn(i.startLineNumber,i.startColumn,i.endLineNumber,i.endColumn)]}return null}))),[2,!0]):[2,!1]}}))}))}function PB(e,t,n,i){return NB(this,void 0,void 0,(function(){var o,r,s,a;return kB(this,(function(u){switch(u.label){case 0:return o=e.get(In),r=Md(t)?t.getModel():t,s=IB(r),[4,OB.select(s,r,n)];case 1:return(a=u.sent())?[4,o.invokeFunction(RB,a,t,n,i)]:[3,3];case 2:u.sent(),u.label=3;case 3:return[2]}}))}))}function RB(e,t,n,i,o){return NB(this,void 0,void 0,(function(){var r,s,a,u,l,c,d;return kB(this,(function(h){switch(h.label){case 0:r=e.get(el),Md(n)?(s=n.getModel(),a=new rD(n,5,o)):(s=n,a=new sD(n,o)),h.label=1;case 1:return h.trys.push([1,,4,5]),[4,t.provideDocumentFormattingEdits(s,s.getFormattingOptions(),a.token)];case 2:return l=h.sent(),[4,r.computeMoreMinimalEdits(s.uri,l)];case 3:return u=h.sent(),a.token.isCancellationRequested?[2,!0]:[3,5];case 4:return a.dispose(),[7];case 5:return u&&0!==u.length?(Md(n)?(xB.execute(n,u),2!==i&&(EB(u),n.pushUndoStop(),n.revealPositionInCenterIfOutsideViewport(n.getPosition(),1))):(c=u[0].range,d=new Sn(c.startLineNumber,c.startColumn,c.endLineNumber,c.endColumn),s.pushEditOperations([d],u.map((function(e){return{text:e.text,range:wn.lift(e.range),forceMoveMarkers:!0}})),(function(e){for(var t=0,n=e;t<n.length;t++){var i=n[t].range;if(wn.areIntersectingOrTouching(i,d))return[new Sn(i.startLineNumber,i.startColumn,i.endLineNumber,i.endColumn)]}return null}))),[2,!0]):[2,!1]}}))}))}function AB(e,t,n,i,o){return NB(this,void 0,void 0,(function(){var r,s,a,u,l;return kB(this,(function(c){switch(c.label){case 0:r=Hu.ordered(t),s=0,a=r,c.label=1;case 1:return s<a.length?(u=a[s],[4,Promise.resolve(u.provideDocumentRangeFormattingEdits(t,n,i,o)).catch(Ne)]):[3,5];case 2:return Oi(l=c.sent())?[4,e.computeMoreMinimalEdits(t.uri,l)]:[3,4];case 3:return[2,c.sent()];case 4:return s++,[3,1];case 5:return[2,void 0]}}))}))}function FB(e,t,n,i){return NB(this,void 0,void 0,(function(){var o,r,s,a,u;return kB(this,(function(l){switch(l.label){case 0:o=IB(t),r=0,s=o,l.label=1;case 1:return r<s.length?(a=s[r],[4,Promise.resolve(a.provideDocumentFormattingEdits(t,n,i)).catch(Ne)]):[3,5];case 2:return Oi(u=l.sent())?[4,e.computeMoreMinimalEdits(t.uri,u)]:[3,4];case 3:return[2,l.sent()];case 4:return r++,[3,1];case 5:return[2,void 0]}}))}))}function WB(e,t,n,i,o){var r=zu.ordered(t);return 0===r.length||r[0].autoFormatTriggerCharacters.indexOf(i)<0?Promise.resolve(void 0):Promise.resolve(r[0].provideOnTypeFormattingEdits(t,n,i,o,et.None)).catch(Ne).then((function(n){return e.computeMoreMinimalEdits(t.uri,n)}))}ca.registerCommand("_executeFormatRangeProvider",(function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=t[0],o=t[1],r=t[2];zs(Et.isUri(i)),zs(wn.isIRange(o));var s=e.get(du).getModel(i);if(!s)throw Oe("resource");return AB(e.get(el),s,wn.lift(o),r,et.None)})),ca.registerCommand("_executeFormatDocumentProvider",(function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=t[0],o=t[1];zs(Et.isUri(i));var r=e.get(du).getModel(i);if(!r)throw Oe("resource");return FB(e.get(el),r,o,et.None)})),ca.registerCommand("_executeFormatOnTypeProvider",(function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=t[0],o=t[1],r=t[2],s=t[3];zs(Et.isUri(i)),zs(bn.isIPosition(o)),zs("string"==typeof r);var a=e.get(du).getModel(i);if(!a)throw Oe("resource");return WB(e.get(el),a,bn.lift(o),r,s)}));var VB=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),BB=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},HB=function(e,t){return function(n,i){t(n,i,e)}},zB=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},jB=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},UB=function(){function e(e,t){var n=this;this._workerService=t,this._callOnDispose=new Be,this._callOnModel=new Be,this._editor=e,this._callOnDispose.add(e.onDidChangeConfiguration((function(){return n._update()}))),this._callOnDispose.add(e.onDidChangeModel((function(){return n._update()}))),this._callOnDispose.add(e.onDidChangeModelLanguage((function(){return n._update()}))),this._callOnDispose.add(zu.onDidChange(this._update,this))}return e.prototype.dispose=function(){this._callOnDispose.dispose(),this._callOnModel.dispose()},e.prototype._update=function(){var e=this;if(this._callOnModel.clear(),this._editor.getOption(39)&&this._editor.hasModel()){var t=this._editor.getModel(),n=zu.ordered(t)[0];if(n&&n.autoFormatTriggerCharacters){for(var i=new ic,o=0,r=n.autoFormatTriggerCharacters;o<r.length;o++){var s=r[o];i.add(s.charCodeAt(0))}this._callOnModel.add(this._editor.onDidType((function(t){var n=t.charCodeAt(t.length-1);i.has(n)&&e._trigger(String.fromCharCode(n))})))}}},e.prototype._trigger=function(e){var t=this;if(this._editor.hasModel()&&!(this._editor.getSelections().length>1)){var n=this._editor.getModel(),i=this._editor.getPosition(),o=!1,r=this._editor.onDidChangeModelContent((function(e){if(e.isFlush)return o=!0,void r.dispose();for(var t=0,n=e.changes.length;t<n;t++){if(e.changes[t].range.endLineNumber<=i.lineNumber)return o=!0,void r.dispose()}}));WB(this._workerService,n,i,e,n.getFormattingOptions()).then((function(e){r.dispose(),o||Oi(e)&&(xB.execute(t._editor,e),EB(e))}),(function(e){throw r.dispose(),e}))}},e.ID="editor.contrib.autoFormat",e=BB([HB(1,el)],e)}(),KB=function(){function e(e,t){var n=this;this.editor=e,this._instantiationService=t,this._callOnDispose=new Be,this._callOnModel=new Be,this._callOnDispose.add(e.onDidChangeConfiguration((function(){return n._update()}))),this._callOnDispose.add(e.onDidChangeModel((function(){return n._update()}))),this._callOnDispose.add(e.onDidChangeModelLanguage((function(){return n._update()}))),this._callOnDispose.add(Hu.onDidChange(this._update,this))}return e.prototype.dispose=function(){this._callOnDispose.dispose(),this._callOnModel.dispose()},e.prototype._update=function(){var e=this;this._callOnModel.clear(),this.editor.getOption(38)&&this.editor.hasModel()&&Hu.has(this.editor.getModel())&&this._callOnModel.add(this.editor.onDidPaste((function(t){var n=t.range;return e._trigger(n)})))},e.prototype._trigger=function(e){this.editor.hasModel()&&(this.editor.getSelections().length>1||this._instantiationService.invokeFunction(MB,this.editor,e,2,et.None).catch(De))},e.ID="editor.contrib.formatOnPaste",e=BB([HB(1,In)],e)}(),qB=function(e){function t(){return e.call(this,{id:"editor.action.formatDocument",label:r("formatDocument.label","Format Document"),alias:"Format Document",precondition:Rh.and(eC.writable,eC.hasDocumentFormattingProvider),kbOpts:{kbExpr:Rh.and(eC.editorTextFocus,eC.hasDocumentFormattingProvider),primary:1572,linux:{primary:3111},weight:100},contextMenuOpts:{when:eC.hasDocumentFormattingProvider,group:"1_modification",order:1.3}})||this}return VB(t,e),t.prototype.run=function(e,t){return zB(this,void 0,void 0,(function(){return jB(this,(function(n){switch(n.label){case 0:return t.hasModel()?[4,e.get(In).invokeFunction(PB,t,1,et.None)]:[3,2];case 1:n.sent(),n.label=2;case 2:return[2]}}))}))},t}(kf),GB=function(e){function t(){return e.call(this,{id:"editor.action.formatSelection",label:r("formatSelection.label","Format Selection"),alias:"Format Selection",precondition:Rh.and(eC.writable,eC.hasDocumentSelectionFormattingProvider),kbOpts:{kbExpr:Rh.and(eC.editorTextFocus,eC.hasDocumentSelectionFormattingProvider),primary:gt(2089,2084),weight:100},contextMenuOpts:{when:Rh.and(eC.hasDocumentSelectionFormattingProvider,eC.hasNonEmptySelection),group:"1_modification",order:1.31}})||this}return VB(t,e),t.prototype.run=function(e,t){return zB(this,void 0,void 0,(function(){var n,i,o;return jB(this,(function(r){switch(r.label){case 0:return t.hasModel()?(n=e.get(In),i=t.getModel(),(o=t.getSelection()).isEmpty()&&(o=new wn(o.startLineNumber,1,o.startLineNumber,i.getLineMaxColumn(o.startLineNumber))),[4,n.invokeFunction(MB,t,o,1,et.None)]):[2];case 1:return r.sent(),[2]}}))}))},t}(kf);Pf(UB.ID,UB),Pf(KB.ID,KB),Tf(qB),Tf(GB),ca.registerCommand("editor.action.format",(function(e){return zB(void 0,void 0,void 0,(function(){var t,n;return jB(this,(function(i){switch(i.label){case 0:return(t=e.get(Pn).getFocusedCodeEditor())&&t.hasModel()?(n=e.get(la),t.getSelection().isEmpty()?[4,n.executeCommand("editor.action.formatDocument")]:[3,2]):[2];case 1:return i.sent(),[3,4];case 2:return[4,n.executeCommand("editor.action.formatSelection")];case 3:i.sent(),i.label=4;case 4:return[2]}}))}))}));n(408);var ZB,YB,XB=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),$B=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},QB=function(e,t){return function(n,i){t(n,i,e)}},JB=function(e){function t(t,n,i,o,r,s,a,u,l,c){var d=e.call(this,t,i.getRawOptions(),{},o,r,s,a,u,l,c)||this;return d._parentEditor=i,d._overwriteOptions=n,e.prototype.updateOptions.call(d,d._overwriteOptions),d._register(i.onDidChangeConfiguration((function(e){return d._onParentConfigurationChanged(e)}))),d}return XB(t,e),t.prototype.getParentEditor=function(){return this._parentEditor},t.prototype._onParentConfigurationChanged=function(t){e.prototype.updateOptions.call(this,this._parentEditor.getRawOptions()),e.prototype.updateOptions.call(this,this._overwriteOptions)},t.prototype.updateOptions=function(t){ka(this._overwriteOptions,t,!0),e.prototype.updateOptions.call(this,this._overwriteOptions)},t=$B([QB(3,In),QB(4,Pn),QB(5,la),QB(6,qh),QB(7,fg),QB(8,ap),QB(9,gx)],t)}(Fx),eH=(n(409),function(){function e(e){this._prefix=e,this._lastId=0}return e.prototype.nextId=function(){return this._prefix+ ++this._lastId},e}()),tH=new eH("id#"),nH=new mv(new pv(0,122,204)),iH={showArrow:!0,showFrame:!0,className:"",frameColor:nH,arrowColor:nH,keepEditorSelection:!1},oH=function(){function e(e,t,n,i,o,r){this.id="",this.domNode=e,this.afterLineNumber=t,this.afterColumn=n,this.heightInLines=i,this._onDomNodeTop=o,this._onComputedHeight=r}return e.prototype.onDomNodeTop=function(e){this._onDomNodeTop(e)},e.prototype.onComputedHeight=function(e){this._onComputedHeight(e)},e}(),rH=function(){function e(e,t){this._id=e,this._domNode=t}return e.prototype.getId=function(){return this._id},e.prototype.getDomNode=function(){return this._domNode},e.prototype.getPosition=function(){return null},e}(),sH=function(){function e(t){this._editor=t,this._ruleName=e._IdGenerator.nextId(),this._decorations=[],this._color=null,this._height=-1}return e.prototype.dispose=function(){this.hide(),Ko(this._ruleName)},Object.defineProperty(e.prototype,"color",{set:function(e){this._color!==e&&(this._color=e,this._updateStyle())},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"height",{set:function(e){this._height!==e&&(this._height=e,this._updateStyle())},enumerable:!0,configurable:!0}),e.prototype._updateStyle=function(){var e,t,n;Ko(this._ruleName),e=".monaco-editor "+this._ruleName,t="border-style: solid; border-color: transparent; border-bottom-color: "+this._color+"; border-width: "+this._height+"px; bottom: -"+this._height+"px; margin-left: -"+this._height+"px; ",void 0===n&&(n=Uo()),n&&t&&n.sheet.insertRule(e+"{"+t+"}",0)},e.prototype.show=function(e){this._decorations=this._editor.deltaDecorations(this._decorations,[{range:wn.fromPositions(e),options:{className:this._ruleName,stickiness:1}}])},e.prototype.hide=function(){this._editor.deltaDecorations(this._decorations,[])},e._IdGenerator=new eH(".arrow-decoration-"),e}(),aH=function(){function e(e,t){var n=this;void 0===t&&(t={}),this._arrow=null,this._overlayWidget=null,this._resizeSash=null,this._positionMarkerId=[],this._viewZone=null,this._disposables=new Be,this.container=null,this._isShowing=!1,this.editor=e,this.options=xa(t),ka(this.options,iH,!1),this.domNode=document.createElement("div"),this.options.isAccessible||(this.domNode.setAttribute("aria-hidden","true"),this.domNode.setAttribute("role","presentation")),this._disposables.add(this.editor.onDidLayoutChange((function(e){var t=n._getWidth(e);n.domNode.style.width=t+"px",n.domNode.style.left=n._getLeft(e)+"px",n._onWidth(t)})))}return e.prototype.dispose=function(){var e=this;this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this._viewZone&&this.editor.changeViewZones((function(t){e._viewZone&&t.removeZone(e._viewZone.id),e._viewZone=null})),this.editor.deltaDecorations(this._positionMarkerId,[]),this._positionMarkerId=[],this._disposables.dispose()},e.prototype.create=function(){no(this.domNode,"zone-widget"),this.options.className&&no(this.domNode,this.options.className),this.container=document.createElement("div"),no(this.container,"zone-widget-container"),this.domNode.appendChild(this.container),this.options.showArrow&&(this._arrow=new sH(this.editor),this._disposables.add(this._arrow)),this._fillContainer(this.container),this._initSash(),this._applyStyles()},e.prototype.style=function(e){e.frameColor&&(this.options.frameColor=e.frameColor),e.arrowColor&&(this.options.arrowColor=e.arrowColor),this._applyStyles()},e.prototype._applyStyles=function(){if(this.container&&this.options.frameColor){var e=this.options.frameColor.toString();this.container.style.borderTopColor=e,this.container.style.borderBottomColor=e}if(this._arrow&&this.options.arrowColor){var t=this.options.arrowColor.toString();this._arrow.color=t}},e.prototype._getWidth=function(e){return e.width-e.minimapWidth-e.verticalScrollbarWidth},e.prototype._getLeft=function(e){return e.minimapWidth>0&&0===e.minimapLeft?e.minimapWidth:0},e.prototype._onViewZoneTop=function(e){this.domNode.style.top=e+"px"},e.prototype._onViewZoneHeight=function(e){if(this.domNode.style.height=e+"px",this.container){var t=e-this._decoratingElementsHeight();this.container.style.height=t+"px";var n=this.editor.getLayoutInfo();this._doLayout(t,this._getWidth(n))}this._resizeSash&&this._resizeSash.layout()},Object.defineProperty(e.prototype,"position",{get:function(){var e=this._positionMarkerId[0];if(e){var t=this.editor.getModel();if(t){var n=t.getDecorationRange(e);if(n)return n.getStartPosition()}}},enumerable:!0,configurable:!0}),e.prototype.show=function(e,t){var n=wn.isIRange(e)?wn.lift(e):wn.fromPositions(e);this._isShowing=!0,this._showImpl(n,t),this._isShowing=!1,this._positionMarkerId=this.editor.deltaDecorations(this._positionMarkerId,[{range:n,options:kv.EMPTY}])},e.prototype.hide=function(){var e=this;this._viewZone&&(this.editor.changeViewZones((function(t){e._viewZone&&t.removeZone(e._viewZone.id)})),this._viewZone=null),this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this._arrow&&this._arrow.hide()},e.prototype._decoratingElementsHeight=function(){var e=this.editor.getOption(49),t=0;this.options.showArrow&&(t+=2*Math.round(e/3));this.options.showFrame&&(t+=2*Math.round(e/9));return t},e.prototype._showImpl=function(e,t){var n=this,i=e.getStartPosition(),o=this.editor.getLayoutInfo(),r=this._getWidth(o);this.domNode.style.width=r+"px",this.domNode.style.left=this._getLeft(o)+"px";var s=document.createElement("div");s.style.overflow="hidden";var a=this.editor.getOption(49),u=this.editor.getLayoutInfo().height/a*.8;t>=u&&(t=u);var l=0,c=0;if(this._arrow&&this.options.showArrow&&(l=Math.round(a/3),this._arrow.height=l,this._arrow.show(i)),this.options.showFrame&&(c=Math.round(a/9)),this.editor.changeViewZones((function(e){n._viewZone&&e.removeZone(n._viewZone.id),n._overlayWidget&&(n.editor.removeOverlayWidget(n._overlayWidget),n._overlayWidget=null),n.domNode.style.top="-1000px",n._viewZone=new oH(s,i.lineNumber,i.column,t,(function(e){return n._onViewZoneTop(e)}),(function(e){return n._onViewZoneHeight(e)})),n._viewZone.id=e.addZone(n._viewZone),n._overlayWidget=new rH("vs.editor.contrib.zoneWidget"+n._viewZone.id,n.domNode),n.editor.addOverlayWidget(n._overlayWidget)})),this.container&&this.options.showFrame){var d=this.options.frameWidth?this.options.frameWidth:c;this.container.style.borderTopWidth=d+"px",this.container.style.borderBottomWidth=d+"px"}var h=t*a-this._decoratingElementsHeight();this.container&&(this.container.style.top=l+"px",this.container.style.height=h+"px",this.container.style.overflow="hidden"),this._doLayout(h,r),this.options.keepEditorSelection||this.editor.setSelection(e);var p=this.editor.getModel();if(p){var f=e.endLineNumber+1;f<=p.getLineCount()?this.revealLine(f,!1):this.revealLine(p.getLineCount(),!0)}},e.prototype.revealLine=function(e,t){t?this.editor.revealLineInCenter(e,0):this.editor.revealLine(e,0)},e.prototype.setCssClass=function(e,t){this.container&&(t&&this.container.classList.remove(t),no(this.container,e))},e.prototype._onWidth=function(e){},e.prototype._doLayout=function(e,t){},e.prototype._relayout=function(e){var t=this;this._viewZone&&this._viewZone.heightInLines!==e&&this.editor.changeViewZones((function(n){t._viewZone&&(t._viewZone.heightInLines=e,n.layoutZone(t._viewZone.id))}))},e.prototype._initSash=function(){var e,t=this;this._resizeSash||(this._resizeSash=this._disposables.add(new Yx(this.domNode,this,{orientation:1})),this.options.isResizeable||(this._resizeSash.hide(),this._resizeSash.state=0),this._disposables.add(this._resizeSash.onDidStart((function(n){t._viewZone&&(e={startY:n.startY,heightInLines:t._viewZone.heightInLines})}))),this._disposables.add(this._resizeSash.onDidEnd((function(){e=void 0}))),this._disposables.add(this._resizeSash.onDidChange((function(n){if(e){var i=(n.currentY-e.startY)/t.editor.getOption(49),o=i<0?Math.ceil(i):Math.floor(i),r=e.heightInLines+o;r>5&&r<35&&t._relayout(r)}}))))},e.prototype.getHorizontalSashLeft=function(){return 0},e.prototype.getHorizontalSashTop=function(){return(null===this.domNode.style.height?0:parseInt(this.domNode.style.height))-this._decoratingElementsHeight()/2},e.prototype.getHorizontalSashWidth=function(){var e=this.editor.getLayoutInfo();return e.width-e.minimapWidth},e}(),uH=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),lH=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},cH=function(e,t){return function(n,i){t(n,i,e)}},dH=Mn("IPeekViewService");Qx(dH,function(){function e(){this._widgets=new Map}return e.prototype.addExclusiveWidget=function(e,t){var n=this,i=this._widgets.get(e);i&&(i.listener.dispose(),i.widget.dispose());this._widgets.set(e,{widget:t,listener:t.onDidClose((function(){var i=n._widgets.get(e);i&&i.widget===t&&(i.listener.dispose(),n._widgets.delete(e))}))})},e}()),(YB=ZB||(ZB={})).inPeekEditor=new Kh("inReferenceSearchEditor",!0),YB.notInPeekEditor=YB.inPeekEditor.toNegated();var hH=function(){function e(e,t){e instanceof JB&&ZB.inPeekEditor.bindTo(t)}return e.prototype.dispose=function(){},e.ID="editor.contrib.referenceController",e=lH([cH(1,qh)],e)}();Pf(hH.ID,hH);var pH={headerBackgroundColor:mv.white,primaryHeadingColor:mv.fromHex("#333333"),secondaryHeadingColor:mv.fromHex("#6c6c6cb3")},fH=function(e){function t(t,n){void 0===n&&(n={});var i=e.call(this,t,n)||this;return i._onDidClose=new nt,i.onDidClose=i._onDidClose.event,ka(i.options,pH,!1),i}return uH(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._onDidClose.fire(this)},t.prototype.style=function(t){var n=this.options;t.headerBackgroundColor&&(n.headerBackgroundColor=t.headerBackgroundColor),t.primaryHeadingColor&&(n.primaryHeadingColor=t.primaryHeadingColor),t.secondaryHeadingColor&&(n.secondaryHeadingColor=t.secondaryHeadingColor),e.prototype.style.call(this,t)},t.prototype._applyStyles=function(){e.prototype._applyStyles.call(this);var t=this.options;this._headElement&&t.headerBackgroundColor&&(this._headElement.style.backgroundColor=t.headerBackgroundColor.toString()),this._primaryHeading&&t.primaryHeadingColor&&(this._primaryHeading.style.color=t.primaryHeadingColor.toString()),this._secondaryHeading&&t.secondaryHeadingColor&&(this._secondaryHeading.style.color=t.secondaryHeadingColor.toString()),this._bodyElement&&t.frameColor&&(this._bodyElement.style.borderColor=t.frameColor.toString())},t.prototype._fillContainer=function(e){this.setCssClass("peekview-widget"),this._headElement=er(".head"),this._bodyElement=er(".body"),this._fillHead(this._headElement),this._fillBody(this._bodyElement),e.appendChild(this._headElement),e.appendChild(this._bodyElement)},t.prototype._fillHead=function(e){var t=this,n=er(".peekview-title");Xo(this._headElement,n),co(n,"click",(function(e){return t._onTitleClick(e)})),this._fillTitleIcon(n),this._primaryHeading=er("span.filename"),this._secondaryHeading=er("span.dirname"),this._metaHeading=er("span.meta"),Xo(n,this._primaryHeading,this._secondaryHeading,this._metaHeading);var i=er(".peekview-actions");Xo(this._headElement,i);var o=this._getActionBarOptions();this._actionbarWidget=new vD(i,o),this._disposables.add(this._actionbarWidget),this._actionbarWidget.push(new df("peekview.close",r("label.close","Close"),"codicon-close",!0,(function(){return t.dispose(),Promise.resolve()})),{label:!1,icon:!0})},t.prototype._fillTitleIcon=function(e){},t.prototype._getActionBarOptions=function(){return{}},t.prototype._onTitleClick=function(e){},t.prototype.setTitle=function(e,t){this._primaryHeading&&this._secondaryHeading&&(this._primaryHeading.innerHTML=fr(e),this._primaryHeading.setAttribute("aria-label",e),t?this._secondaryHeading.innerHTML=fr(t):Yi(this._secondaryHeading))},t.prototype.setMetaTitle=function(e){this._metaHeading&&(e?(this._metaHeading.innerHTML=fr(e),tr(this._metaHeading)):nr(this._metaHeading))},t.prototype._doLayout=function(e,t){if(!this._isShowing&&e<0)this.dispose();else{var n=Math.ceil(1.2*this.editor.getOption(49)),i=Math.round(e-(n+2));this._doLayoutHead(n,t),this._doLayoutBody(i,t)}},t.prototype._doLayoutHead=function(e,t){this._headElement&&(this._headElement.style.height=e+"px",this._headElement.style.lineHeight=this._headElement.style.height)},t.prototype._doLayoutBody=function(e,t){this._bodyElement&&(this._bodyElement.style.height=e+"px")},t}(aH),gH=D_("peekViewTitle.background",{dark:"#1E1E1E",light:"#FFFFFF",hc:"#0C141F"},r("peekViewTitleBackground","Background color of the peek view title area.")),mH=D_("peekViewTitleLabel.foreground",{dark:"#FFFFFF",light:"#333333",hc:"#FFFFFF"},r("peekViewTitleForeground","Color of the peek view title.")),vH=D_("peekViewTitleDescription.foreground",{dark:"#ccccccb3",light:"#616161e6",hc:"#FFFFFF99"},r("peekViewTitleInfoForeground","Color of the peek view title info.")),_H=D_("peekView.border",{dark:"#007acc",light:"#007acc",hc:M_},r("peekViewBorder","Color of the peek view borders and arrow.")),yH=D_("peekViewResult.background",{dark:"#252526",light:"#F3F3F3",hc:mv.black},r("peekViewResultsBackground","Background color of the peek view result list.")),bH=D_("peekViewResult.lineForeground",{dark:"#bbbbbb",light:"#646465",hc:mv.white},r("peekViewResultsMatchForeground","Foreground color for line nodes in the peek view result list.")),wH=D_("peekViewResult.fileForeground",{dark:mv.white,light:"#1E1E1E",hc:mv.white},r("peekViewResultsFileForeground","Foreground color for file nodes in the peek view result list.")),CH=D_("peekViewResult.selectionBackground",{dark:"#3399ff33",light:"#3399ff33",hc:null},r("peekViewResultsSelectionBackground","Background color of the selected entry in the peek view result list.")),SH=D_("peekViewResult.selectionForeground",{dark:mv.white,light:"#6C6C6C",hc:mv.white},r("peekViewResultsSelectionForeground","Foreground color of the selected entry in the peek view result list.")),LH=D_("peekViewEditor.background",{dark:"#001F33",light:"#F2F8FC",hc:mv.black},r("peekViewEditorBackground","Background color of the peek view editor.")),xH=D_("peekViewEditorGutter.background",{dark:LH,light:LH,hc:LH},r("peekViewEditorGutterBackground","Background color of the gutter in the peek view editor.")),DH=D_("peekViewResult.matchHighlightBackground",{dark:"#ea5c004d",light:"#ea5c004d",hc:null},r("peekViewResultsMatchHighlight","Match highlight color in the peek view result list.")),NH=D_("peekViewEditor.matchHighlightBackground",{dark:"#ff8f0099",light:"#f5d802de",hc:null},r("peekViewEditorMatchHighlight","Match highlight color in the peek view editor.")),kH=D_("peekViewEditor.matchHighlightBorder",{dark:null,light:null,hc:T_},r("peekViewEditorMatchHighlightBorder","Match highlight border in the peek view editor.")),EH=function(){function e(e,t,n,i){this.isProviderFirst=e,this.parent=t,this._range=n,this._rangeCallback=i,this.id=tH.nextId()}return Object.defineProperty(e.prototype,"uri",{get:function(){return this.parent.uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"range",{get:function(){return this._range},set:function(e){this._range=e,this._rangeCallback(this)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"ariaMessage",{get:function(){return r("aria.oneReference","symbol in {0} on line {1} at column {2}",Ds(this.uri),this.range.startLineNumber,this.range.startColumn)},enumerable:!0,configurable:!0}),e}(),IH=function(){function e(e){this._modelReference=e}return e.prototype.dispose=function(){this._modelReference.dispose()},e.prototype.preview=function(e,t){void 0===t&&(t=8);var n=this._modelReference.object.textEditorModel;if(n){var i=e.startLineNumber,o=e.startColumn,r=e.endLineNumber,s=e.endColumn,a=n.getWordUntilPosition({lineNumber:i,column:o-t}),u=new wn(i,a.startColumn,i,o),l=new wn(r,s,r,1073741824),c=n.getValueInRange(u).replace(/^\s+/,""),d=n.getValueInRange(e);return{value:c+d+n.getValueInRange(l).replace(/\s+$/,""),highlight:{start:c.length,end:c.length+d.length}}}},e}(),OH=function(){function e(e,t){this.parent=e,this.uri=t,this.children=[]}return e.prototype.dispose=function(){Ae(this._preview),this._preview=void 0},Object.defineProperty(e.prototype,"preview",{get:function(){return this._preview},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"failure",{get:function(){return this._loadFailure},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"ariaMessage",{get:function(){var e=this.children.length;return 1===e?r("aria.fileReferences.1","1 symbol in {0}, full path {1}",Ds(this.uri),this.uri.fsPath):r("aria.fileReferences.N","{0} symbols in {1}, full path {2}",e,Ds(this.uri),this.uri.fsPath)},enumerable:!0,configurable:!0}),e.prototype.resolve=function(e){var t=this;return this._resolved?Promise.resolve(this):Promise.resolve(e.createModelReference(this.uri).then((function(e){if(!e.object)throw e.dispose(),new Error;return t._preview=new IH(e),t._resolved=!0,t}),(function(e){return t.children.length=0,t._resolved=!0,t._loadFailure=e,t})))},e}(),MH=function(){function e(t,n){var i=this;this._disposables=new Be,this.groups=[],this.references=[],this._onDidChangeReferenceRange=new nt,this.onDidChangeReferenceRange=this._onDidChangeReferenceRange.event,this._links=t,this._title=n;var o,r=t[0];t.sort(e._compareReferences);for(var s=0,a=t;s<a.length;s++){var u=a[s];if(o&&o.uri.toString()===u.uri.toString()||(o=new OH(this,u.uri),this.groups.push(o)),0===o.children.length||!wn.equalsRange(u.range,o.children[o.children.length-1].range)){var l=new EH(r===u,o,u.targetSelectionRange||u.range,(function(e){return i._onDidChangeReferenceRange.fire(e)}));this.references.push(l),o.children.push(l)}}}return e.prototype.dispose=function(){Ae(this.groups),this._disposables.dispose(),this._onDidChangeReferenceRange.dispose(),this.groups.length=0},e.prototype.clone=function(){return new e(this._links,this._title)},Object.defineProperty(e.prototype,"title",{get:function(){return this._title},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isEmpty",{get:function(){return 0===this.groups.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"ariaMessage",{get:function(){return this.isEmpty?r("aria.result.0","No results found"):1===this.references.length?r("aria.result.1","Found 1 symbol in {0}",this.references[0].uri.fsPath):1===this.groups.length?r("aria.result.n1","Found {0} symbols in {1}",this.references.length,this.groups[0].uri.fsPath):r("aria.result.nm","Found {0} symbols in {1} files",this.references.length,this.groups.length)},enumerable:!0,configurable:!0}),e.prototype.nextOrPreviousReference=function(e,t){var n=e.parent,i=n.children.indexOf(e),o=n.children.length,r=n.parent.groups.length;return 1===r||t&&i+1<o||!t&&i>0?(i=t?(i+1)%o:(i+o-1)%o,n.children[i]):(i=n.parent.groups.indexOf(n),t?(i=(i+1)%r,n.parent.groups[i].children[0]):(i=(i+r-1)%r,n.parent.groups[i].children[n.parent.groups[i].children.length-1]))},e.prototype.nearestReference=function(e,t){var n=this.references.map((function(n,i){return{idx:i,prefixLen:Mr(n.uri.toString(),e.toString()),offsetDist:100*Math.abs(n.range.startLineNumber-t.lineNumber)+Math.abs(n.range.startColumn-t.column)}})).sort((function(e,t){return e.prefixLen>t.prefixLen?-1:e.prefixLen<t.prefixLen?1:e.offsetDist<t.offsetDist?-1:e.offsetDist>t.offsetDist?1:0}))[0];if(n)return this.references[n.idx]},e.prototype.referenceAt=function(e,t){for(var n=0,i=this.references;n<i.length;n++){var o=i[n];if(o.uri.toString()===e.toString()&&wn.containsPosition(o.range,t))return o}},e.prototype.firstReference=function(){for(var e=0,t=this.references;e<t.length;e++){var n=t[e];if(n.isProviderFirst)return n}return this.references[0]},e._compareReferences=function(e,t){return Lr(e.uri.toString(),t.uri.toString())||wn.compareRangesUsingStarts(e.range,t.range)},e}(),TH=(n(410),n(411),function(){function e(e,t){this.supportCodicons=t,this.text="",this.title="",this.highlights=[],this.didEverRender=!1,this.domNode=document.createElement("span"),this.domNode.className="monaco-highlighted-label",e.appendChild(this.domNode)}return Object.defineProperty(e.prototype,"element",{get:function(){return this.domNode},enumerable:!0,configurable:!0}),e.prototype.set=function(t,n,i,o){void 0===n&&(n=[]),void 0===i&&(i=""),t||(t=""),o&&(t=e.escapeNewLines(t,n)),this.didEverRender&&this.text===t&&this.title===i&&Ea(this.highlights,n)||(Array.isArray(n)||(n=[]),this.text=t,this.title=i,this.highlights=n,this.render())},e.prototype.render=function(){for(var e="",t=0,n=0,i=this.highlights;n<i.length;n++){var o=i[n];if(o.end!==o.start){if(t<o.start){e+="<span>";var r=this.text.substring(t,o.start);e+=this.supportCodicons?zA(fr(r)):fr(r),e+="</span>",t=o.end}o.extraClasses?e+='<span class="highlight '+o.extraClasses+'">':e+='<span class="highlight">';var s=this.text.substring(o.start,o.end);e+=this.supportCodicons?zA(fr(s)):fr(s),e+="</span>",t=o.end}}if(t<this.text.length){e+="<span>";s=this.text.substring(t);e+=this.supportCodicons?zA(fr(s)):fr(s),e+="</span>"}this.domNode.innerHTML=e,this.title?this.domNode.title=this.title:this.domNode.removeAttribute("title"),this.didEverRender=!0},e.escapeNewLines=function(e,t){var n=0,i=0;return e.replace(/\r\n|\r|\n/g,(function(e,o){i="\r\n"===e?-1:0,o+=n;for(var r=0,s=t;r<s.length;r++){var a=s[r];a.end<=o||(a.start>=o&&(a.start+=i),a.end>=o&&(a.end+=i))}return n+=i,"⏎"}))},e}()),PH=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),RH=function(){function e(e){this._element=e}return Object.defineProperty(e.prototype,"element",{get:function(){return this._element},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"textContent",{set:function(e){this.disposed||e===this._textContent||(this._textContent=e,this._element.textContent=e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"className",{set:function(e){this.disposed||e===this._className||(this._className=e,this._element.className=e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"title",{set:function(e){this.disposed||e===this._title||(this._title=e,this._title?this._element.title=e:this._element.removeAttribute("title"))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"empty",{set:function(e){this.disposed||e===this._empty||(this._empty=e,this._element.style.marginLeft=e?"0":"")},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){this.disposed=!0},e}(),AH=function(e){function t(t,n){var i=e.call(this)||this;i.domNode=i._register(new RH(Xo(t,er(".monaco-icon-label"))));var o=Xo(i.domNode.element,er(".monaco-icon-label-container")),r=Xo(o,er("span.monaco-icon-name-container"));return i.descriptionContainer=i._register(new RH(Xo(o,er("span.monaco-icon-description-container")))),(null==n?void 0:n.supportHighlights)?i.nameNode=new WH(r,!!n.supportCodicons):i.nameNode=new FH(r),(null==n?void 0:n.supportDescriptionHighlights)?i.descriptionNodeFactory=function(){return new TH(Xo(i.descriptionContainer.element,er("span.label-description")),!!n.supportCodicons)}:i.descriptionNodeFactory=function(){return i._register(new RH(Xo(i.descriptionContainer.element,er("span.label-description"))))},i}return PH(t,e),t.prototype.setLabel=function(e,t,n){var i=["monaco-icon-label"];n&&(n.extraClasses&&i.push.apply(i,n.extraClasses),n.italic&&i.push("italic")),this.domNode.className=i.join(" "),this.domNode.title=(null==n?void 0:n.title)||"",this.nameNode.setLabel(e,n),(t||this.descriptionNode)&&(this.descriptionNode||(this.descriptionNode=this.descriptionNodeFactory()),this.descriptionNode instanceof TH?(this.descriptionNode.set(t||"",n?n.descriptionMatches:void 0),(null==n?void 0:n.descriptionTitle)?this.descriptionNode.element.title=n.descriptionTitle:this.descriptionNode.element.removeAttribute("title")):(this.descriptionNode.textContent=t||"",this.descriptionNode.title=(null==n?void 0:n.descriptionTitle)||"",this.descriptionNode.empty=!t))},t}(He),FH=function(){function e(e){this.container=e,this.label=void 0,this.singleLabel=void 0}return e.prototype.setLabel=function(e,t){if(this.label!==e||!Ea(this.options,t))if(this.label=e,this.options=t,"string"==typeof e)this.singleLabel||(this.container.innerHTML="",oo(this.container,"multiple"),this.singleLabel=Xo(this.container,er("a.label-name",{id:null==t?void 0:t.domId}))),this.singleLabel.textContent=e;else{this.container.innerHTML="",no(this.container,"multiple"),this.singleLabel=void 0;for(var n=0;n<e.length;n++){var i=e[n],o=(null==t?void 0:t.domId)&&(null==t?void 0:t.domId)+"_"+n;Xo(this.container,er("a.label-name",{id:o,"data-icon-label-count":e.length,"data-icon-label-index":n},i)),n<e.length-1&&Xo(this.container,er("span.label-separator",void 0,(null==t?void 0:t.separator)||"/"))}}},e}();var WH=function(){function e(e,t){this.container=e,this.supportCodicons=t,this.label=void 0,this.singleLabel=void 0}return e.prototype.setLabel=function(e,t){if(this.label!==e||!Ea(this.options,t))if(this.label=e,this.options=t,"string"==typeof e)this.singleLabel||(this.container.innerHTML="",oo(this.container,"multiple"),this.singleLabel=new TH(Xo(this.container,er("a.label-name",{id:null==t?void 0:t.domId})),this.supportCodicons)),this.singleLabel.set(e,null==t?void 0:t.matches,null==t?void 0:t.title,null==t?void 0:t.labelEscapeNewLines);else{this.container.innerHTML="",no(this.container,"multiple"),this.singleLabel=void 0;for(var n=(null==t?void 0:t.separator)||"/",i=function(e,t,n){if(n){var i=0;return e.map((function(e){var o={start:i,end:i+e.length},r=n.map((function(e){return Xk.intersect(o,e)})).filter((function(e){return!Xk.isEmpty(e)})).map((function(e){var t=e.start,n=e.end;return{start:t-i,end:n-i}}));return i=o.end+t.length,r}))}}(e,n,null==t?void 0:t.matches),o=0;o<e.length;o++){var r=e[o],s=i?i[o]:void 0,a=er("a.label-name",{id:(null==t?void 0:t.domId)&&(null==t?void 0:t.domId)+"_"+o,"data-icon-label-count":e.length,"data-icon-label-index":o});new TH(Xo(this.container,a),this.supportCodicons).set(r,s,null==t?void 0:t.title,null==t?void 0:t.labelEscapeNewLines),o<e.length-1&&Xo(a,er("span.label-separator",void 0,n))}}},e}(),VH=(n(412),{badgeBackground:mv.fromHex("#4D4D4D"),badgeForeground:mv.fromHex("#FFFFFF")}),BH=function(){function e(e,t){this.count=0,this.options=t||Object.create(null),ka(this.options,VH,!1),this.badgeBackground=this.options.badgeBackground,this.badgeForeground=this.options.badgeForeground,this.badgeBorder=this.options.badgeBorder,this.element=Xo(e,er(".monaco-count-badge")),this.countFormat=this.options.countFormat||"{0}",this.titleFormat=this.options.titleFormat||"",this.setCount(this.options.count||0)}return e.prototype.setCount=function(e){this.count=e,this.render()},e.prototype.setTitleFormat=function(e){this.titleFormat=e,this.render()},e.prototype.render=function(){this.element.textContent=pr(this.countFormat,this.count),this.element.title=pr(this.titleFormat,this.count),this.applyStyles()},e.prototype.style=function(e){this.badgeBackground=e.badgeBackground,this.badgeForeground=e.badgeForeground,this.badgeBorder=e.badgeBorder,this.applyStyles()},e.prototype.applyStyles=function(){if(this.element){var e=this.badgeBackground?this.badgeBackground.toString():"",t=this.badgeForeground?this.badgeForeground.toString():"",n=this.badgeBorder?this.badgeBorder.toString():"";this.element.style.backgroundColor=e,this.element.style.color=t,this.element.style.borderWidth=n?"1px":"",this.element.style.borderStyle=n?"solid":"",this.element.style.borderColor=n}},e}();function HH(e,t,n){if("string"==typeof e&&(e=Et.file(e)),n){var i=n.getWorkspaceFolder(e);if(i){var o=n.getWorkspace().folders.length>1,r=void 0;if(r=xs(i.uri,e)?"":Es(i.uri,e),o){var s=i.name?i.name:Ds(i.uri);r=r?s+" • "+r:s}return r}}if(e.scheme!==Ci.file&&e.scheme!==Ci.untitled)return e.with({query:null,fragment:null}).toString(!0);if(jH(e.fsPath))return ps(UH(e.fsPath));var a=ps(e.fsPath);return!v&&t&&(a=function(e,t){if(v||!e||!t)return e;var n=KH.original===t?KH.normalized:void 0;n||(n=""+mr(t,hs.sep)+hs.sep,KH={original:t,normalized:n});(y?vr(e,n):Or(e,n))&&(e="~/"+e.substr(n.length));return e}(a,t.userHome)),a}function zH(e){if(e){"string"==typeof e&&(e=Et.file(e));var t=Ds(e)||(e.scheme===Ci.file?e.fsPath:e.path);return jH(t)?UH(t):t}}function jH(e){return!(!v||!e||":"!==e[1])}function UH(e){return jH(e)?e.charAt(0).toUpperCase()+e.slice(1):e}var KH=Object.create(null);var qH,GH,ZH=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),YH=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},XH=function(e,t){return function(n,i){t(n,i,e)}},$H=function(){function e(e){this._resolverService=e}return e.prototype.hasChildren=function(e){return e instanceof MH||e instanceof OH&&!e.failure},e.prototype.getChildren=function(e){if(e instanceof MH)return e.groups;if(e instanceof OH)return e.resolve(this._resolverService).then((function(e){return e.children}));throw new Error("bad tree")},e=YH([XH(0,tl)],e)}(),QH=function(){function e(){}return e.prototype.getHeight=function(){return 23},e.prototype.getTemplateId=function(e){return e instanceof OH?nz.id:oz.id},e}(),JH=function(){function e(e){this._keybindingService=e}return e.prototype.getKeyboardNavigationLabel=function(e){if(e instanceof EH){var t=e.parent.preview,n=t&&t.preview(e.range);if(n)return n.value}return Ds(e.uri)},e=YH([XH(0,XD)],e)}(),ez=function(){function e(){}return e.prototype.getId=function(e){return e instanceof EH?e.id:e.uri},e}(),tz=function(e){function t(t,n,i){var o=e.call(this)||this;o._uriLabel=n;var r=document.createElement("div");return no(r,"reference-file"),o.file=o._register(new AH(r,{supportHighlights:!0})),o.badge=new BH(Xo(r,er(".count"))),o._register(function(e,t,n){return qk(t,{badgeBackground:n&&n.badgeBackground||ty,badgeForeground:n&&n.badgeForeground||ny,badgeBorder:M_},e)}(o.badge,i)),t.appendChild(r),o}return ZH(t,e),t.prototype.set=function(e,t){var n=Ns(e.uri);this.file.setLabel(zH(e.uri),this._uriLabel.getUriLabel(n,{relative:!0}),{title:this._uriLabel.getUriLabel(e.uri),matches:t});var i=e.children.length;this.badge.setCount(i),e.failure?this.badge.setTitleFormat(r("referencesFailre","Failed to resolve file.")):i>1?this.badge.setTitleFormat(r("referencesCount","{0} references",i)):this.badge.setTitleFormat(r("referenceCount","{0} reference",i))},t=YH([XH(1,yE),XH(2,fg)],t)}(He),nz=function(){function e(t){this._instantiationService=t,this.templateId=e.id}return e.prototype.renderTemplate=function(e){return this._instantiationService.createInstance(tz,e)},e.prototype.renderElement=function(e,t,n){n.set(e.element,JE(e.filterData))},e.prototype.disposeTemplate=function(e){e.dispose()},e.id="FileReferencesRenderer",e=YH([XH(0,In)],e)}(),iz=function(){function e(e){this.label=new TH(e,!1)}return e.prototype.set=function(e,t){var n=e.parent.preview,i=n&&n.preview(e.range);if(i){var o=i.value,r=i.highlight;t&&!nI.isDefault(t)?(so(this.label.element,"referenceMatch",!1),this.label.set(o,JE(t))):(so(this.label.element,"referenceMatch",!0),this.label.set(o,[r]))}else this.label.set(Ds(e.uri)+":"+(e.range.startLineNumber+1)+":"+(e.range.startColumn+1))},e}(),oz=function(){function e(){this.templateId=e.id}return e.prototype.renderTemplate=function(e){return new iz(e)},e.prototype.renderElement=function(e,t,n){n.set(e.element,e.filterData)},e.prototype.disposeTemplate=function(){},e.id="OneReferenceRenderer",e}(),rz=function(){function e(){}return e.prototype.getAriaLabel=function(e){return e.ariaMessage},e}(),sz=(n(413),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),az=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},uz={separatorBorder:mv.transparent},lz=function(){function e(e,t,n,i){this.container=e,this.view=t,this.disposable=i,this._cachedVisibleSize=void 0,"number"==typeof n?(this._size=n,this._cachedVisibleSize=void 0,no(e,"visible")):(this._size=0,this._cachedVisibleSize=n.cachedVisibleSize)}return Object.defineProperty(e.prototype,"size",{get:function(){return this._size},set:function(e){this._size=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visible",{get:function(){return void 0===this._cachedVisibleSize},enumerable:!0,configurable:!0}),e.prototype.setVisible=function(e,t){e!==this.visible&&(e?(this.size=RE(this._cachedVisibleSize,this.viewMinimumSize,this.viewMaximumSize),this._cachedVisibleSize=void 0):(this._cachedVisibleSize="number"==typeof t?t:this.size,this.size=0),so(this.container,"visible",e),this.view.setVisible&&this.view.setVisible(e))},Object.defineProperty(e.prototype,"minimumSize",{get:function(){return this.visible?this.view.minimumSize:0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"viewMinimumSize",{get:function(){return this.view.minimumSize},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"maximumSize",{get:function(){return this.visible?this.view.maximumSize:0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"viewMaximumSize",{get:function(){return this.view.maximumSize},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"priority",{get:function(){return this.view.priority},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"snap",{get:function(){return!!this.view.snap},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"enabled",{set:function(e){this.container.style.pointerEvents=e?null:"none"},enumerable:!0,configurable:!0}),e.prototype.layout=function(e,t){this.layoutContainer(e),this.view.layout(this.size,e,t)},e.prototype.dispose=function(){return this.disposable.dispose(),this.view},e}(),cz=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return sz(t,e),t.prototype.layoutContainer=function(e){this.container.style.top=e+"px",this.container.style.height=this.size+"px"},t}(lz),dz=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return sz(t,e),t.prototype.layoutContainer=function(e){this.container.style.left=e+"px",this.container.style.width=this.size+"px"},t}(lz);!function(e){e[e.Idle=0]="Idle",e[e.Busy=1]="Busy"}(qH||(qH={})),function(e){e.Distribute={type:"distribute"},e.Split=function(e){return{type:"split",index:e}},e.Invisible=function(e){return{type:"invisible",cachedVisibleSize:e}}}(GH||(GH={}));var hz=function(e){function t(t,n){void 0===n&&(n={});var i=e.call(this)||this;return i.size=0,i.contentSize=0,i.proportions=void 0,i.viewItems=[],i.sashItems=[],i.state=qH.Idle,i._onDidSashChange=i._register(new nt),i.onDidSashChange=i._onDidSashChange.event,i._onDidSashReset=i._register(new nt),i._startSnappingEnabled=!0,i._endSnappingEnabled=!0,i.orientation=Bs(n.orientation)?0:n.orientation,i.inverseAltBehavior=!!n.inverseAltBehavior,i.proportionalLayout=!!Bs(n.proportionalLayout)||!!n.proportionalLayout,i.el=document.createElement("div"),no(i.el,"monaco-split-view2"),no(i.el,0===i.orientation?"vertical":"horizontal"),t.appendChild(i.el),i.sashContainer=Xo(i.el,er(".sash-container")),i.viewContainer=Xo(i.el,er(".split-view-container")),i.style(n.styles||uz),n.descriptor&&(i.size=n.descriptor.size,n.descriptor.views.forEach((function(e,t){var n=Bs(e.visible)||e.visible?e.size:{type:"invisible",cachedVisibleSize:e.size},o=e.view;i.doAddView(o,n,t,!0)})),i.contentSize=i.viewItems.reduce((function(e,t){return e+t.size}),0),i.saveProportions()),i}return sz(t,e),Object.defineProperty(t.prototype,"orthogonalStartSash",{get:function(){return this._orthogonalStartSash},set:function(e){for(var t=0,n=this.sashItems;t<n.length;t++){n[t].sash.orthogonalStartSash=e}this._orthogonalStartSash=e},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"orthogonalEndSash",{get:function(){return this._orthogonalEndSash},set:function(e){for(var t=0,n=this.sashItems;t<n.length;t++){n[t].sash.orthogonalEndSash=e}this._orthogonalEndSash=e},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"startSnappingEnabled",{get:function(){return this._startSnappingEnabled},set:function(e){this._startSnappingEnabled!==e&&(this._startSnappingEnabled=e,this.updateSashEnablement())},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"endSnappingEnabled",{get:function(){return this._endSnappingEnabled},set:function(e){this._endSnappingEnabled!==e&&(this._endSnappingEnabled=e,this.updateSashEnablement())},enumerable:!0,configurable:!0}),t.prototype.style=function(e){e.separatorBorder.isTransparent()?(oo(this.el,"separator-border"),this.el.style.removeProperty("--separator-border")):(no(this.el,"separator-border"),this.el.style.setProperty("--separator-border",e.separatorBorder.toString()))},t.prototype.addView=function(e,t,n){void 0===n&&(n=this.viewItems.length),this.doAddView(e,t,n,!1)},t.prototype.layout=function(e,t){var n=this,i=Math.max(this.size,this.contentSize);if(this.size=e,this.layoutContext=t,this.proportions)for(var o=0;o<this.viewItems.length;o++){var r=this.viewItems[o];r.size=RE(Math.round(this.proportions[o]*e),r.minimumSize,r.maximumSize)}else{var s=Wi(this.viewItems.length),a=s.filter((function(e){return 1===n.viewItems[e].priority})),u=s.filter((function(e){return 2===n.viewItems[e].priority}));this.resize(this.viewItems.length-1,e-i,void 0,a,u)}this.distributeEmptySpace(),this.layoutViews()},t.prototype.saveProportions=function(){var e=this;this.proportionalLayout&&this.contentSize>0&&(this.proportions=this.viewItems.map((function(t){return t.size/e.contentSize})))},t.prototype.onSashStart=function(e){for(var t=this,n=e.sash,i=e.start,o=e.alt,r=0,s=this.viewItems;r<s.length;r++){s[r].enabled=!1}var a=Pi(this.sashItems,(function(e){return e.sash===n})),u=Fe(Xn(document.body,"keydown")((function(e){return l(t.sashDragState.current,e.altKey)})),Xn(document.body,"keyup")((function(){return l(t.sashDragState.current,!1)}))),l=function(e,n){var i,o,r=t.viewItems.map((function(e){return e.size})),s=Number.NEGATIVE_INFINITY,l=Number.POSITIVE_INFINITY;(t.inverseAltBehavior&&(n=!n),n)&&(a===t.sashItems.length-1?(s=((b=t.viewItems[a]).minimumSize-b.size)/2,l=(b.maximumSize-b.size)/2):(s=((b=t.viewItems[a+1]).size-b.maximumSize)/2,l=(b.size-b.minimumSize)/2));if(!n){var c=Wi(a,-1),d=Wi(a+1,t.viewItems.length),h=c.reduce((function(e,n){return e+(t.viewItems[n].minimumSize-r[n])}),0),p=c.reduce((function(e,n){return e+(t.viewItems[n].viewMaximumSize-r[n])}),0),f=0===d.length?Number.POSITIVE_INFINITY:d.reduce((function(e,n){return e+(r[n]-t.viewItems[n].minimumSize)}),0),g=0===d.length?Number.NEGATIVE_INFINITY:d.reduce((function(e,n){return e+(r[n]-t.viewItems[n].viewMaximumSize)}),0),m=Math.max(h,g),v=Math.min(f,p),_=t.findFirstSnapIndex(c),y=t.findFirstSnapIndex(d);if("number"==typeof _){var b=t.viewItems[_],w=Math.floor(b.viewMinimumSize/2);i={index:_,limitDelta:b.visible?m-w:m+w,size:b.size}}if("number"==typeof y){b=t.viewItems[y],w=Math.floor(b.viewMinimumSize/2);o={index:y,limitDelta:b.visible?v+w:v-w,size:b.size}}}t.sashDragState={start:e,current:e,index:a,sizes:r,minDelta:s,maxDelta:l,alt:n,snapBefore:i,snapAfter:o,disposable:u}};l(i,o)},t.prototype.onSashChange=function(e){var t=e.current,n=this.sashDragState,i=n.index,o=n.start,r=n.sizes,s=n.alt,a=n.minDelta,u=n.maxDelta,l=n.snapBefore,c=n.snapAfter;this.sashDragState.current=t;var d=t-o,h=this.resize(i,d,r,void 0,void 0,a,u,l,c);if(s){var p=i===this.sashItems.length-1,f=this.viewItems.map((function(e){return e.size})),g=p?i:i+1,m=this.viewItems[g],v=m.size-m.maximumSize,_=m.size-m.minimumSize,y=p?i-1:i+1;this.resize(y,-h,f,void 0,void 0,v,_)}this.distributeEmptySpace(),this.layoutViews()},t.prototype.onSashEnd=function(e){this._onDidSashChange.fire(e),this.sashDragState.disposable.dispose(),this.saveProportions();for(var t=0,n=this.viewItems;t<n.length;t++){n[t].enabled=!0}},t.prototype.onViewChange=function(e,t){var n=this.viewItems.indexOf(e);n<0||n>=this.viewItems.length||(t=RE(t="number"==typeof t?t:e.size,e.minimumSize,e.maximumSize),this.inverseAltBehavior&&n>0?(this.resize(n-1,Math.floor((e.size-t)/2)),this.distributeEmptySpace(),this.layoutViews()):(e.size=t,this.relayout([n],void 0)))},t.prototype.resizeView=function(e,t){var n=this;if(this.state!==qH.Idle)throw new Error("Cant modify splitview");if(this.state=qH.Busy,!(e<0||e>=this.viewItems.length)){var i=Wi(this.viewItems.length).filter((function(t){return t!==e})),o=az(i.filter((function(e){return 1===n.viewItems[e].priority})),[e]),r=i.filter((function(e){return 2===n.viewItems[e].priority})),s=this.viewItems[e];t=RE(t=Math.round(t),s.minimumSize,Math.min(s.maximumSize,this.size)),s.size=t,this.relayout(o,r),this.state=qH.Idle}},t.prototype.distributeViewSizes=function(){for(var e=this,t=[],n=0,i=0,o=this.viewItems;i<o.length;i++){(u=o[i]).maximumSize-u.minimumSize>0&&(t.push(u),n+=u.size)}for(var r=Math.floor(n/t.length),s=0,a=t;s<a.length;s++){var u;(u=a[s]).size=RE(r,u.minimumSize,u.maximumSize)}var l=Wi(this.viewItems.length),c=l.filter((function(t){return 1===e.viewItems[t].priority})),d=l.filter((function(t){return 2===e.viewItems[t].priority}));this.relayout(c,d)},t.prototype.getViewSize=function(e){return e<0||e>=this.viewItems.length?-1:this.viewItems[e].size},t.prototype.doAddView=function(e,t,n,i){var o=this;if(void 0===n&&(n=this.viewItems.length),this.state!==qH.Idle)throw new Error("Cant modify splitview");this.state=qH.Busy;var r=er(".split-view-view");n===this.viewItems.length?this.viewContainer.appendChild(r):this.viewContainer.insertBefore(r,this.viewContainer.children.item(n));var s,a=Fe(e.onDidChange((function(e){return o.onViewChange(l,e)})),We((function(){return o.viewContainer.removeChild(r)})));s="number"==typeof t?t:"split"===t.type?this.getViewSize(t.index)/2:"invisible"===t.type?{cachedVisibleSize:t.cachedVisibleSize}:e.minimumSize;var u,l=0===this.orientation?new cz(r,e,s,a):new dz(r,e,s,a);if(this.viewItems.splice(n,0,l),this.viewItems.length>1){var c=0===this.orientation?1:0,d=0===this.orientation?{getHorizontalSashTop:function(e){return o.getSashPosition(e)}}:{getVerticalSashLeft:function(e){return o.getSashPosition(e)}},h=new Yx(this.sashContainer,d,{orientation:c,orthogonalStartSash:this.orthogonalStartSash,orthogonalEndSash:this.orthogonalEndSash}),p=0===this.orientation?function(e){return{sash:h,start:e.startY,current:e.currentY,alt:e.altKey}}:function(e){return{sash:h,start:e.startX,current:e.currentX,alt:e.altKey}},f=Fe(Ge.map(h.onDidStart,p)(this.onSashStart,this),Ge.map(h.onDidChange,p)(this.onSashChange,this),Ge.map(h.onDidEnd,(function(){return Pi(o.sashItems,(function(e){return e.sash===h}))}))(this.onSashEnd,this),h.onDidReset((function(){var e=Pi(o.sashItems,(function(e){return e.sash===h})),t=Wi(e,-1),n=Wi(e+1,o.viewItems.length),i=o.findFirstSnapIndex(t),r=o.findFirstSnapIndex(n);("number"!=typeof i||o.viewItems[i].visible)&&("number"!=typeof r||o.viewItems[r].visible)&&o._onDidSashReset.fire(e)})),h),g={sash:h,disposable:f};this.sashItems.splice(n-1,0,g)}r.appendChild(e.element),"number"!=typeof t&&"split"===t.type&&(u=[t.index]),i||this.relayout([n],u),this.state=qH.Idle,i||"number"==typeof t||"distribute"!==t.type||this.distributeViewSizes()},t.prototype.relayout=function(e,t){var n=this.viewItems.reduce((function(e,t){return e+t.size}),0);this.resize(this.viewItems.length-1,this.size-n,void 0,e,t),this.distributeEmptySpace(),this.layoutViews(),this.saveProportions()},t.prototype.resize=function(e,t,n,i,o,r,s,a,u){var l=this;if(void 0===n&&(n=this.viewItems.map((function(e){return e.size}))),void 0===r&&(r=Number.NEGATIVE_INFINITY),void 0===s&&(s=Number.POSITIVE_INFINITY),e<0||e>=this.viewItems.length)return 0;var c=Wi(e,-1),d=Wi(e+1,this.viewItems.length);if(o)for(var h=0,p=o;h<p.length;h++){var f=p[h];Bi(c,f),Bi(d,f)}if(i)for(var g=0,m=i;g<m.length;g++){var v=m[g];Hi(c,v),Hi(d,v)}var _=c.map((function(e){return l.viewItems[e]})),y=c.map((function(e){return n[e]})),b=d.map((function(e){return l.viewItems[e]})),w=d.map((function(e){return n[e]})),C=c.reduce((function(e,t){return e+(l.viewItems[t].minimumSize-n[t])}),0),S=c.reduce((function(e,t){return e+(l.viewItems[t].maximumSize-n[t])}),0),L=0===d.length?Number.POSITIVE_INFINITY:d.reduce((function(e,t){return e+(n[t]-l.viewItems[t].minimumSize)}),0),x=0===d.length?Number.NEGATIVE_INFINITY:d.reduce((function(e,t){return e+(n[t]-l.viewItems[t].maximumSize)}),0),D=Math.max(C,x,r),N=Math.min(L,S,s),k=!1;if(a){var E=this.viewItems[a.index];k=(I=t>=a.limitDelta)!==E.visible,E.setVisible(I,a.size)}if(!k&&u){var I;E=this.viewItems[u.index];k=(I=t<u.limitDelta)!==E.visible,E.setVisible(I,u.size)}if(k)return this.resize(e,t,n,i,o,r,s);for(var O=0,M=t=RE(t,D,N);O<_.length;O++){var T=_[O];M-=(R=RE(y[O]+M,T.minimumSize,T.maximumSize))-y[O],T.size=R}O=0;for(var P=t;O<b.length;O++){var R;T=b[O];P+=(R=RE(w[O]-P,T.minimumSize,T.maximumSize))-w[O],T.size=R}return t},t.prototype.distributeEmptySpace=function(e){for(var t=this,n=this.viewItems.reduce((function(e,t){return e+t.size}),0),i=this.size-n,o=Wi(this.viewItems.length-1,-1),r=o.filter((function(e){return 1===t.viewItems[e].priority})),s=0,a=o.filter((function(e){return 2===t.viewItems[e].priority}));s<a.length;s++){Bi(o,a[s])}for(var u=0,l=r;u<l.length;u++){Hi(o,l[u])}"number"==typeof e&&Hi(o,e);for(var c=0;0!==i&&c<o.length;c++){var d=this.viewItems[o[c]],h=RE(d.size+i,d.minimumSize,d.maximumSize);i-=h-d.size,d.size=h}},t.prototype.layoutViews=function(){this.contentSize=this.viewItems.reduce((function(e,t){return e+t.size}),0);for(var e=0,t=0,n=this.viewItems;t<n.length;t++){var i=n[t];i.layout(e,this.layoutContext),e+=i.size}this.sashItems.forEach((function(e){return e.sash.layout()})),this.updateSashEnablement()},t.prototype.updateSashEnablement=function(){var e=!1,t=this.viewItems.map((function(t){return e=t.size-t.minimumSize>0||e}));e=!1;var n=this.viewItems.map((function(t){return e=t.maximumSize-t.size>0||e})),i=az(this.viewItems).reverse();e=!1;var o=i.map((function(t){return e=t.size-t.minimumSize>0||e})).reverse();e=!1;for(var r=i.map((function(t){return e=t.maximumSize-t.size>0||e})).reverse(),s=0,a=0;a<this.sashItems.length;a++){var u=this.sashItems[a].sash;s+=this.viewItems[a].size;var l=!(t[a]&&r[a+1]),c=!(n[a]&&o[a+1]);if(l&&c){var d=Wi(a,-1),h=Wi(a+1,this.viewItems.length),p=this.findFirstSnapIndex(d),f=this.findFirstSnapIndex(h),g="number"==typeof p&&!this.viewItems[p].visible,m="number"==typeof f&&!this.viewItems[f].visible;g&&o[a]&&(s>0||this.startSnappingEnabled)?u.state=1:m&&t[a]&&(s<this.contentSize||this.endSnappingEnabled)?u.state=2:u.state=0}else u.state=l&&!c?1:!l&&c?2:3}},t.prototype.getSashPosition=function(e){for(var t=0,n=0;n<this.sashItems.length;n++)if(t+=this.viewItems[n].size,this.sashItems[n].sash===e)return Math.min(t,this.contentSize-2);return 0},t.prototype.findFirstSnapIndex=function(e){for(var t=0,n=e;t<n.length;t++){var i=n[t];if((s=this.viewItems[i]).visible&&s.snap)return i}for(var o=0,r=e;o<r.length;o++){var s;i=r[o];if((s=this.viewItems[i]).visible&&s.maximumSize-s.minimumSize>0)return;if(!s.visible&&s.snap)return i}},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.viewItems.forEach((function(e){return e.dispose()})),this.viewItems=[],this.sashItems.forEach((function(e){return e.disposable.dispose()})),this.sashItems=[]},t}(He),pz=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),fz=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},gz=function(e,t){return function(n,i){t(n,i,e)}},mz=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},vz=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},_z=function(){function e(e,t){var n=this;this._editor=e,this._model=t,this._decorations=new Map,this._decorationIgnoreSet=new Set,this._callOnDispose=new Be,this._callOnModelChange=new Be,this._callOnDispose.add(this._editor.onDidChangeModel((function(){return n._onModelChanged()}))),this._onModelChanged()}return e.prototype.dispose=function(){this._callOnModelChange.dispose(),this._callOnDispose.dispose(),this.removeDecorations()},e.prototype._onModelChanged=function(){this._callOnModelChange.clear();var e=this._editor.getModel();if(e)for(var t=0,n=this._model.groups;t<n.length;t++){var i=n[t];if(xs(i.uri,e.uri))return void this._addDecorations(i)}},e.prototype._addDecorations=function(t){var n=this;if(this._editor.hasModel()){this._callOnModelChange.add(this._editor.getModel().onDidChangeDecorations((function(e){return n._onDecorationChanged()})));for(var i=[],o=[],r=0,s=t.children.length;r<s;r++){var a=t.children[r];this._decorationIgnoreSet.has(a.id)||(i.push({range:a.range,options:e.DecorationOptions}),o.push(r))}var u=this._editor.deltaDecorations([],i);for(r=0;r<u.length;r++)this._decorations.set(u[r],t.children[o[r]])}},e.prototype._onDecorationChanged=function(){var e=this,t=[],n=this._editor.getModel();if(n){this._decorations.forEach((function(i,o){var r=n.getDecorationRange(o);if(r){var s=!1;if(!wn.equalsRange(r,i.range))(wn.spansMultipleLines(r)||i.range.endColumn-i.range.startColumn!==r.endColumn-r.startColumn)&&(s=!0),s?(e._decorationIgnoreSet.add(i.id),t.push(o)):i.range=r}}));for(var i=0,o=t.length;i<o;i++)this._decorations.delete(t[i]);this._editor.deltaDecorations(t,[])}},e.prototype.removeDecorations=function(){var e=[];this._decorations.forEach((function(t,n){e.push(n)})),this._editor.deltaDecorations(e,[]),this._decorations.clear()},e.DecorationOptions=kv.register({stickiness:1,className:"reference-decoration"}),e}(),yz=function(){function e(){this.ratio=.7,this.heightInLines=18}return e.fromJSON=function(e){var t,n;try{var i=JSON.parse(e);t=i.ratio,n=i.heightInLines}catch(e){}return{ratio:t||.7,heightInLines:n||18}},e}(),bz=function(e){function t(t,n,i,o,r,s,a,u){var l=e.call(this,t,{showFrame:!1,showArrow:!0,isResizeable:!0,isAccessible:!0})||this;return l._defaultTreeKeyboardSupport=n,l.layoutData=i,l._textModelResolverService=r,l._instantiationService=s,l._peekViewService=a,l._uriLabel=u,l._disposeOnNewModel=new Be,l._callOnDispose=new Be,l._onDidSelectReference=new nt,l.onDidSelectReference=l._onDidSelectReference.event,l._dim={height:0,width:0},l._applyTheme(o.getTheme()),l._callOnDispose.add(o.onThemeChange(l._applyTheme.bind(l))),l._peekViewService.addExclusiveWidget(t,l),l.create(),l}return pz(t,e),t.prototype.dispose=function(){this.setModel(void 0),this._callOnDispose.dispose(),this._disposeOnNewModel.dispose(),Ae(this._preview),Ae(this._previewNotAvailableMessage),Ae(this._tree),Ae(this._previewModelReference),this._splitView.dispose(),e.prototype.dispose.call(this)},t.prototype._applyTheme=function(e){var t=e.getColor(_H)||mv.transparent;this.style({arrowColor:t,frameColor:t,headerBackgroundColor:e.getColor(gH)||mv.transparent,primaryHeadingColor:e.getColor(mH),secondaryHeadingColor:e.getColor(vH)})},t.prototype.show=function(t){this.editor.revealRangeInCenterIfOutsideViewport(t,0),e.prototype.show.call(this,t,this.layoutData.heightInLines||18)},t.prototype.focusOnReferenceTree=function(){this._tree.domFocus()},t.prototype.focusOnPreviewEditor=function(){this._preview.focus()},t.prototype.isPreviewEditorFocused=function(){return this._preview.hasTextFocus()},t.prototype._onTitleClick=function(e){this._preview&&this._preview.getModel()&&this._onDidSelectReference.fire({element:this._getFocusedReference(),kind:e.ctrlKey||e.metaKey||e.altKey?"side":"open",source:"title"})},t.prototype._fillBody=function(e){var t=this;this.setCssClass("reference-zone-widget"),this._messageContainer=Xo(e,er("div.messages")),nr(this._messageContainer),this._splitView=new hz(e,{orientation:1}),this._previewContainer=Xo(e,er("div.preview.inline"));this._preview=this._instantiationService.createInstance(JB,this._previewContainer,{scrollBeyondLastLine:!1,scrollbar:{verticalScrollbarSize:14,horizontal:"auto",useShadows:!0,verticalHasArrows:!1,horizontalHasArrows:!1,alwaysConsumeMouseWheel:!1},overviewRulerLanes:2,fixedOverflowWidgets:!0,minimap:{enabled:!1}},this.editor),nr(this._previewContainer),this._previewNotAvailableMessage=Cv.createFromString(r("missingPreviewMessage","no preview available")),this._treeContainer=Xo(e,er("div.ref-tree.inline"));var n={ariaLabel:r("treeAriaLabel","References"),keyboardSupport:this._defaultTreeKeyboardSupport,accessibilityProvider:new rz,keyboardNavigationLabelProvider:this._instantiationService.createInstance(JH),identityProvider:new ez,overrideStyles:{listBackground:yH}};this._tree=this._instantiationService.createInstance(xM,"ReferencesWidget",this._treeContainer,new QH,[this._instantiationService.createInstance(nz),this._instantiationService.createInstance(oz)],this._instantiationService.createInstance($H),n),this._splitView.addView({onDidChange:Ge.None,element:this._previewContainer,minimumSize:200,maximumSize:Number.MAX_VALUE,layout:function(e){t._preview.layout({height:t._dim.height,width:e})}},GH.Distribute),this._splitView.addView({onDidChange:Ge.None,element:this._treeContainer,minimumSize:100,maximumSize:Number.MAX_VALUE,layout:function(e){t._treeContainer.style.height=t._dim.height+"px",t._treeContainer.style.width=e+"px",t._tree.layout(t._dim.height,e)}},GH.Distribute),this._disposables.add(this._splitView.onDidSashChange((function(){t._dim.width&&(t.layoutData.ratio=t._splitView.getViewSize(0)/t._dim.width)}),void 0));var i=function(e,n){e instanceof EH&&("show"===n&&t._revealReference(e,!1),t._onDidSelectReference.fire({element:e,kind:n,source:"tree"}))};this._tree.onDidChangeFocus((function(e){i(e.elements[0],"show")})),this._tree.onDidOpen((function(e){e.browserEvent instanceof MouseEvent&&(e.browserEvent.ctrlKey||e.browserEvent.metaKey||e.browserEvent.altKey)?i(e.elements[0],"side"):e.browserEvent instanceof KeyboardEvent||e.browserEvent instanceof MouseEvent&&2===e.browserEvent.detail||2===e.browserEvent.tapCount?i(e.elements[0],"goto"):i(e.elements[0],"show")})),nr(this._treeContainer)},t.prototype._onWidth=function(e){this._dim&&this._doLayoutBody(this._dim.height,e)},t.prototype._doLayoutBody=function(t,n){e.prototype._doLayoutBody.call(this,t,n),this._dim={height:t,width:n},this.layoutData.heightInLines=this._viewZone?this._viewZone.heightInLines:this.layoutData.heightInLines,this._splitView.layout(n),this._splitView.resizeView(0,n*this.layoutData.ratio)},t.prototype.setSelection=function(e){var t=this;return this._revealReference(e,!0).then((function(){t._model&&(t._tree.setSelection([e]),t._tree.setFocus([e]))}))},t.prototype.setModel=function(e){return this._disposeOnNewModel.clear(),this._model=e,this._model?this._onNewModel():Promise.resolve()},t.prototype._onNewModel=function(){var e=this;return this._model?this._model.isEmpty?(this.setTitle(""),this._messageContainer.innerHTML=r("noResults","No results"),tr(this._messageContainer),Promise.resolve(void 0)):(nr(this._messageContainer),this._decorationsManager=new _z(this._preview,this._model),this._disposeOnNewModel.add(this._decorationsManager),this._disposeOnNewModel.add(this._model.onDidChangeReferenceRange((function(t){return e._tree.rerender(t)}))),this._disposeOnNewModel.add(this._preview.onMouseDown((function(t){var n=t.event,i=t.target;if(2===n.detail){var o=e._getFocusedReference();o&&e._onDidSelectReference.fire({element:{uri:o.uri,range:i.range},kind:n.ctrlKey||n.metaKey||n.altKey?"side":"open",source:"editor"})}}))),no(this.container,"results-loaded"),tr(this._treeContainer),tr(this._previewContainer),this._splitView.layout(this._dim.width),this.focusOnReferenceTree(),this._tree.setInput(1===this._model.groups.length?this._model.groups[0]:this._model)):Promise.resolve(void 0)},t.prototype._getFocusedReference=function(){var e=this._tree.getFocus()[0];return e instanceof EH?e:e instanceof OH&&e.children.length>0?e.children[0]:void 0},t.prototype._revealReference=function(e,t){return mz(this,void 0,void 0,(function(){var n,i,o,s,a;return vz(this,(function(u){switch(u.label){case 0:return this._revealedReference===e?[2]:(this._revealedReference=e,e.uri.scheme!==Ci.inMemory?this.setTitle(Ss(e.uri),this._uriLabel.getUriLabel(Ns(e.uri))):this.setTitle(r("peekView.alternateTitle","References")),n=this._textModelResolverService.createModelReference(e.uri),this._tree.getInput()!==e.parent?[3,1]:(this._tree.reveal(e),[3,3]));case 1:return t&&this._tree.reveal(e.parent),[4,this._tree.expand(e.parent)];case 2:u.sent(),this._tree.reveal(e),u.label=3;case 3:return[4,n];case 4:return i=u.sent(),this._model?(Ae(this._previewModelReference),(o=i.object)?(s=this._preview.getModel()===o.textEditorModel?0:1,a=wn.lift(e.range).collapseToStart(),this._previewModelReference=i,this._preview.setModel(o.textEditorModel),this._preview.setSelection(a),this._preview.revealRangeInCenter(a,s)):(this._preview.setModel(this._previewNotAvailableMessage),i.dispose()),[2]):(i.dispose(),[2])}}))}))},t=fz([gz(3,fg),gz(4,tl),gz(5,In),gz(6,dH),gz(7,yE)],t)}(fH);yg((function(e,t){var n=e.getColor(DH);n&&t.addRule(".monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight { background-color: "+n+"; }");var i=e.getColor(NH);i&&t.addRule(".monaco-editor .reference-zone-widget .preview .reference-decoration { background-color: "+i+"; }");var o=e.getColor(kH);o&&t.addRule(".monaco-editor .reference-zone-widget .preview .reference-decoration { border: 2px solid "+o+"; box-sizing: border-box; }");var r=e.getColor(T_);r&&t.addRule(".monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight { border: 1px dotted "+r+"; box-sizing: border-box; }");var s=e.getColor(yH);s&&t.addRule(".monaco-editor .reference-zone-widget .ref-tree { background-color: "+s+"; }");var a=e.getColor(bH);a&&t.addRule(".monaco-editor .reference-zone-widget .ref-tree { color: "+a+"; }");var u=e.getColor(wH);u&&t.addRule(".monaco-editor .reference-zone-widget .ref-tree .reference-file { color: "+u+"; }");var l=e.getColor(CH);l&&t.addRule(".monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows > .monaco-list-row.selected:not(.highlighted) { background-color: "+l+"; }");var c=e.getColor(SH);c&&t.addRule(".monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows > .monaco-list-row.selected:not(.highlighted) { color: "+c+" !important; }");var d=e.getColor(LH);d&&t.addRule(".monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background,.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input {\tbackground-color: "+d+";}");var h=e.getColor(xH);h&&t.addRule(".monaco-editor .reference-zone-widget .preview .monaco-editor .margin {\tbackground-color: "+h+";}")}));var wz=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Cz=function(e,t){return function(n,i){t(n,i,e)}},Sz=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},Lz=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},xz=new Kh("referenceSearchVisible",!1),Dz=function(){function e(e,t,n,i,o,r,s,a){this._defaultTreeKeyboardSupport=e,this._editor=t,this._editorService=i,this._notificationService=o,this._instantiationService=r,this._storageService=s,this._configurationService=a,this._disposables=new Be,this._requestIdPool=0,this._ignoreModelChangeEvent=!1,this._referenceSearchVisible=xz.bindTo(n)}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.dispose=function(){this._referenceSearchVisible.reset(),this._disposables.dispose(),Ae(this._widget),Ae(this._model),this._widget=void 0,this._model=void 0},e.prototype.toggleWidget=function(e,t,n){var i,o=this;if(this._widget&&(i=this._widget.position),this.closeWidget(),!i||!e.containsPosition(i)){this._peekMode=n,this._referenceSearchVisible.set(!0),this._disposables.add(this._editor.onDidChangeModelLanguage((function(){o.closeWidget()}))),this._disposables.add(this._editor.onDidChangeModel((function(){o._ignoreModelChangeEvent||o.closeWidget()})));var s=yz.fromJSON(this._storageService.get("peekViewLayout",0,"{}"));this._widget=this._instantiationService.createInstance(bz,this._editor,this._defaultTreeKeyboardSupport,s),this._widget.setTitle(r("labelLoading","Loading...")),this._widget.show(e),this._disposables.add(this._widget.onDidClose((function(){t.cancel(),o._widget&&(o._storageService.store("peekViewLayout",JSON.stringify(o._widget.layoutData),0),o._widget=void 0),o.closeWidget()}))),this._disposables.add(this._widget.onDidSelectReference((function(e){var t=e.element,i=e.kind;if(t)switch(i){case"open":"editor"===e.source&&o._configurationService.getValue("editor.stablePeek")||o.openReference(t,!1);break;case"side":o.openReference(t,!0);break;case"goto":n?o._gotoReference(t):o.openReference(t,!1)}})));var a=++this._requestIdPool;t.then((function(t){if(a===o._requestIdPool&&o._widget)return o._model&&o._model.dispose(),o._model=t,o._widget.setModel(o._model).then((function(){if(o._widget&&o._model&&o._editor.hasModel()){o._model.isEmpty?o._widget.setMetaTitle(""):o._widget.setMetaTitle(r("metaTitle.N","{0} ({1})",o._model.title,o._model.references.length));var t=o._editor.getModel().uri,n=new bn(e.startLineNumber,e.startColumn),i=o._model.nearestReference(t,n);if(i)return o._widget.setSelection(i).then((function(){o._widget&&"editor"===o._editor.getOption(65)&&o._widget.focusOnPreviewEditor()}))}}))}),(function(e){o._notificationService.error(e)}))}},e.prototype.changeFocusBetweenPreviewAndReferences=function(){this._widget&&(this._widget.isPreviewEditorFocused()?this._widget.focusOnReferenceTree():this._widget.focusOnPreviewEditor())},e.prototype.goToNextOrPreviousReference=function(e){return Sz(this,void 0,void 0,(function(){var t,n,i,o,r;return Lz(this,(function(s){switch(s.label){case 0:return this._editor.hasModel()&&this._model&&this._widget&&((t=this._widget.position)&&(n=this._model.nearestReference(this._editor.getModel().uri,t)))?(i=this._model.nextOrPreviousReference(n,e),o=this._editor.hasTextFocus(),r=this._widget.isPreviewEditorFocused(),[4,this._widget.setSelection(i)]):[2];case 1:return s.sent(),[4,this._gotoReference(i)];case 2:return s.sent(),o?this._editor.focus():this._widget&&r&&this._widget.focusOnPreviewEditor(),[2]}}))}))},e.prototype.closeWidget=function(e){void 0===e&&(e=!0),this._referenceSearchVisible.reset(),this._disposables.clear(),Ae(this._widget),Ae(this._model),this._widget=void 0,this._model=void 0,e&&this._editor.focus(),this._requestIdPool+=1},e.prototype._gotoReference=function(t){var n=this;this._widget&&this._widget.hide(),this._ignoreModelChangeEvent=!0;var i=wn.lift(t.range).collapseToStart();return this._editorService.openCodeEditor({resource:t.uri,options:{selection:i}},this._editor).then((function(t){var o;if(n._ignoreModelChangeEvent=!1,t&&n._widget)if(n._editor===t)n._widget.show(i),n._widget.focusOnReferenceTree();else{var r=e.get(t),s=n._model.clone();n.closeWidget(),t.focus(),r.toggleWidget(i,hi((function(e){return Promise.resolve(s)})),null!==(o=n._peekMode)&&void 0!==o&&o)}else n.closeWidget()}),(function(e){n._ignoreModelChangeEvent=!1,De(e)}))},e.prototype.openReference=function(e,t){t||this.closeWidget();var n=e.uri,i=e.range;this._editorService.openCodeEditor({resource:n,options:{selection:i}},this._editor,t)},e.ID="editor.contrib.referencesController",e=wz([Cz(2,qh),Cz(3,Pn),Cz(4,ap),Cz(5,In),Cz(6,FM),Cz(7,wh)],e)}();function Nz(e,t){var n=function(e){var t=e.get(Pn).getFocusedCodeEditor();return t instanceof JB?t.getParentEditor():t}(e);if(n){var i=Dz.get(n);i&&t(i)}}Zh.registerCommandAndKeybindingRule({id:"togglePeekWidgetFocus",weight:100,primary:gt(2089,60),when:Rh.or(xz,ZB.inPeekEditor),handler:function(e){Nz(e,(function(e){e.changeFocusBetweenPreviewAndReferences()}))}}),Zh.registerCommandAndKeybindingRule({id:"goToNextReference",weight:90,primary:62,secondary:[70],when:Rh.or(xz,ZB.inPeekEditor),handler:function(e){Nz(e,(function(e){e.goToNextOrPreviousReference(!0)}))}}),Zh.registerCommandAndKeybindingRule({id:"goToPreviousReference",weight:90,primary:1086,secondary:[1094],when:Rh.or(xz,ZB.inPeekEditor),handler:function(e){Nz(e,(function(e){e.goToNextOrPreviousReference(!1)}))}}),ca.registerCommandAlias("goToNextReferenceFromEmbeddedEditor","goToNextReference"),ca.registerCommandAlias("goToPreviousReferenceFromEmbeddedEditor","goToPreviousReference"),ca.registerCommandAlias("closeReferenceSearchEditor","closeReferenceSearch"),ca.registerCommand("closeReferenceSearch",(function(e){return Nz(e,(function(e){return e.closeWidget()}))})),Zh.registerKeybindingRule({id:"closeReferenceSearch",weight:-1,primary:9,secondary:[1033],when:Rh.and(ZB.inPeekEditor,Rh.not("config.editor.stablePeek"))}),Zh.registerKeybindingRule({id:"closeReferenceSearch",weight:250,primary:9,secondary:[1033],when:Rh.and(xz,Rh.not("config.editor.stablePeek"))}),Zh.registerCommandAndKeybindingRule({id:"openReferenceToSide",weight:100,primary:2051,mac:{primary:259},when:Rh.and(xz,hM),handler:function(e){var t,n=null===(t=e.get(uM).lastFocusedList)||void 0===t?void 0:t.getFocus();Array.isArray(n)&&n[0]instanceof EH&&Nz(e,(function(e){return e.openReference(n[0],!0)}))}}),ca.registerCommand("openReference",(function(e){var t,n=null===(t=e.get(uM).lastFocusedList)||void 0===t?void 0:t.getFocus();Array.isArray(n)&&n[0]instanceof EH&&Nz(e,(function(e){return e.openReference(n[0],!1)}))}));var kz=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},Ez=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}};function Iz(e,t,n,i){var o=n.ordered(e).map((function(n){return Promise.resolve(i(n,e,t)).then(void 0,(function(e){Ne(e)}))}));return Promise.all(o).then(Fi).then(Ei)}function Oz(e,t,n){return Iz(e,t,Pu,(function(e,t,i){return e.provideDefinition(t,i,n)}))}function Mz(e,t,n){return Iz(e,t,Ru,(function(e,t,i){return e.provideDeclaration(t,i,n)}))}function Tz(e,t,n){return Iz(e,t,Au,(function(e,t,i){return e.provideImplementation(t,i,n)}))}function Pz(e,t,n){return Iz(e,t,Fu,(function(e,t,i){return e.provideTypeDefinition(t,i,n)}))}function Rz(e,t,n,i){var o=this;return Iz(e,t,Nu,(function(e,t,r){return kz(o,void 0,void 0,(function(){var o,s;return Ez(this,(function(a){switch(a.label){case 0:return[4,e.provideReferences(t,r,{includeDeclaration:!0},i)];case 1:return o=a.sent(),n&&o&&2===o.length?[4,e.provideReferences(t,r,{includeDeclaration:!1},i)]:[2,o];case 2:return(s=a.sent())&&1===s.length?[2,s]:[2,o]}}))}))}))}Of("_executeDefinitionProvider",(function(e,t){return Oz(e,t,et.None)})),Of("_executeDeclarationProvider",(function(e,t){return Mz(e,t,et.None)})),Of("_executeImplementationProvider",(function(e,t){return Tz(e,t,et.None)})),Of("_executeTypeDefinitionProvider",(function(e,t){return Pz(e,t,et.None)})),Of("_executeReferenceProvider",(function(e,t){return Rz(e,t,!1,et.None)}));var Az=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Fz=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Wz=function(e,t){return function(n,i){t(n,i,e)}},Vz=new Kh("hasSymbols",!1),Bz=Mn("ISymbolNavigationService"),Hz=function(){function e(e,t,n,i){this._editorService=t,this._notificationService=n,this._keybindingService=i,this._currentModel=void 0,this._currentIdx=-1,this._ignoreEditorChange=!1,this._ctxHasSymbols=Vz.bindTo(e)}return e.prototype.reset=function(){this._ctxHasSymbols.reset(),Ae(this._currentState),Ae(this._currentMessage),this._currentModel=void 0,this._currentIdx=-1},e.prototype.put=function(e){var t=this,n=e.parent.parent;if(n.references.length<=1)this.reset();else{this._currentModel=n,this._currentIdx=n.references.indexOf(e),this._ctxHasSymbols.set(!0),this._showMessage();var i=new Xz(this._editorService),o=i.onDidChange((function(e){if(!t._ignoreEditorChange){var i=t._editorService.getActiveCodeEditor();if(i){var o=i.getModel(),r=i.getPosition();if(o&&r){for(var s=!1,a=!1,u=0,l=n.references;u<l.length;u++){var c=l[u];if(xs(c.uri,o.uri))s=!0,a=a||wn.containsPosition(c.range,r);else if(s)break}s&&a||t.reset()}}}}));this._currentState=Fe(i,o)}},e.prototype.revealNext=function(e){var t=this;if(!this._currentModel)return Promise.resolve();this._currentIdx+=1,this._currentIdx%=this._currentModel.references.length;var n=this._currentModel.references[this._currentIdx];return this._showMessage(),this._ignoreEditorChange=!0,this._editorService.openCodeEditor({resource:n.uri,options:{selection:wn.collapseToStart(n.range),revealInCenterIfOutsideViewport:!0}},e).finally((function(){t._ignoreEditorChange=!1}))},e.prototype._showMessage=function(){Ae(this._currentMessage);var e=this._keybindingService.lookupKeybinding("editor.gotoNextSymbolFromResult"),t=e?r("location.kb","Symbol {0} of {1}, {2} for next",this._currentIdx+1,this._currentModel.references.length,e.getLabel()):r("location","Symbol {0} of {1}",this._currentIdx+1,this._currentModel.references.length);this._currentMessage=this._notificationService.status(t)},e=Fz([Wz(0,qh),Wz(1,Pn),Wz(2,ap),Wz(3,XD)],e)}();Qx(Bz,Hz,!0),Mf(new(function(e){function t(){return e.call(this,{id:"editor.gotoNextSymbolFromResult",precondition:Vz,kbOpts:{weight:100,primary:70}})||this}return Az(t,e),t.prototype.runEditorCommand=function(e,t){return e.get(Bz).revealNext(t)},t}(Nf))),Zh.registerCommandAndKeybindingRule({id:"editor.gotoNextSymbolFromResult.cancel",weight:100,when:Vz,primary:9,handler:function(e){e.get(Bz).reset()}});var zz,jz,Uz,Kz,qz,Gz,Zz,Yz,Xz=function(){function e(e){this._listener=new Map,this._disposables=new Be,this._onDidChange=new nt,this.onDidChange=this._onDidChange.event,this._disposables.add(e.onCodeEditorRemove(this._onDidRemoveEditor,this)),this._disposables.add(e.onCodeEditorAdd(this._onDidAddEditor,this)),e.listCodeEditors().forEach(this._onDidAddEditor,this)}return e.prototype.dispose=function(){this._disposables.dispose(),this._onDidChange.dispose(),this._listener.forEach(Ae)},e.prototype._onDidAddEditor=function(e){var t=this;this._listener.set(e,Fe(e.onDidChangeCursorPosition((function(n){return t._onDidChange.fire({editor:e})})),e.onDidChangeModelContent((function(n){return t._onDidChange.fire({editor:e})}))))},e.prototype._onDidRemoveEditor=function(e){Ae(this._listener.get(e)),this._listener.delete(e)},e=Fz([Wz(0,Pn)],e)}(),$z=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Qz=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},Jz=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}};bf.appendMenuItem(7,{submenu:8,title:r("peek.submenu","Peek"),group:"navigation",order:100});var ej=function(e){function t(t,n){var i=e.call(this,n)||this;return i._configuration=t,i}return $z(t,e),t.prototype.run=function(e,t){var n=this;if(!t.hasModel())return Promise.resolve(void 0);var i=e.get(ap),o=e.get(Pn),r=e.get(OD),s=e.get(Bz),a=t.getModel(),u=t.getPosition(),l=new rD(t,5),c=pi(this._getLocationModel(a,u,l.token),l.token).then((function(e){return Qz(n,void 0,void 0,(function(){var n,i,r,c;return Jz(this,(function(d){if(!e||l.token.isCancellationRequested)return[2];if(Zp(e.ariaMessage),e.referenceAt(a.uri,u)&&(i=this._getAlternativeCommand(t))!==this.id&&(n=t.getAction(i)),0===(r=e.references.length))this._configuration.muteMessage||(c=a.getWordAtPosition(u),KR.get(t).showMessage(this._getNoResultFoundMessage(c),u));else{if(1!==r||!n)return[2,this._onResult(o,s,t,e)];n.run()}return[2]}))}))}),(function(e){i.error(e)})).finally((function(){l.dispose()}));return r.showWhile(c,250),c},t.prototype._onResult=function(e,t,n,i){return Qz(this,void 0,void 0,(function(){var o,r,s,a;return Jz(this,(function(u){switch(u.label){case 0:return o=this._getGoToPreference(n),n instanceof JB||!(this._configuration.openInPeek||"peek"===o&&i.references.length>1)?[3,1]:(this._openInPeek(n,i),[3,3]);case 1:return r=i.firstReference(),s=i.references.length>1&&"gotoAndPeek"===o,[4,this._openReference(n,e,r,this._configuration.openToSide,!s)];case 2:a=u.sent(),s&&a?this._openInPeek(a,i):i.dispose(),"goto"===o&&t.put(r),u.label=3;case 3:return[2]}}))}))},t.prototype._openReference=function(e,t,n,i,o){return Qz(this,void 0,void 0,(function(){var r,s,a,u;return Jz(this,(function(l){switch(l.label){case 0:return r=void 0,(c=n)&&Et.isUri(c.uri)&&wn.isIRange(c.range)&&(wn.isIRange(c.originSelectionRange)||wn.isIRange(c.targetSelectionRange))&&(r=n.targetSelectionRange),r||(r=n.range),[4,t.openCodeEditor({resource:n.uri,options:{selection:wn.collapseToStart(r),revealInCenterIfOutsideViewport:!0}},e,i)];case 1:return(s=l.sent())?(o&&(a=s.getModel(),u=s.deltaDecorations([],[{range:r,options:{className:"symbolHighlight"}}]),setTimeout((function(){s.getModel()===a&&s.deltaDecorations(u,[])}),350)),[2,s]):[2,void 0]}var c}))}))},t.prototype._openInPeek=function(e,t){var n=Dz.get(e);n&&e.hasModel()?n.toggleWidget(e.getSelection(),hi((function(e){return Promise.resolve(t)})),this._configuration.openInPeek):t.dispose()},t}(kf),tj=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return $z(t,e),t.prototype._getLocationModel=function(e,t,n){return Qz(this,void 0,void 0,(function(){var i;return Jz(this,(function(o){switch(o.label){case 0:return i=MH.bind,[4,Oz(e,t,n)];case 1:return[2,new(i.apply(MH,[void 0,o.sent(),r("def.title","Definitions")]))]}}))}))},t.prototype._getNoResultFoundMessage=function(e){return e&&e.word?r("noResultWord","No definition found for '{0}'",e.word):r("generic.noResults","No definition found")},t.prototype._getAlternativeCommand=function(e){return e.getOption(41).alternativeDefinitionCommand},t.prototype._getGoToPreference=function(e){return e.getOption(41).multipleDefinitions},t}(ej),nj=w&&!Yn?2118:70;Tf(((zz=function(e){function t(){var n=e.call(this,{openToSide:!1,openInPeek:!1,muteMessage:!1},{id:t.id,label:r("actions.goToDecl.label","Go to Definition"),alias:"Go to Definition",precondition:Rh.and(eC.hasDefinitionProvider,eC.isInEmbeddedEditor.toNegated()),kbOpts:{kbExpr:eC.editorTextFocus,primary:nj,weight:100},contextMenuOpts:{group:"navigation",order:1.1},menuOpts:{menuId:19,group:"4_symbol_nav",order:2,title:r({key:"miGotoDefinition",comment:["&& denotes a mnemonic"]},"Go to &&Definition")}})||this;return ca.registerCommandAlias("editor.action.goToDeclaration",t.id),n}return $z(t,e),t}(tj)).id="editor.action.revealDefinition",zz)),Tf(((jz=function(e){function t(){var n=e.call(this,{openToSide:!0,openInPeek:!1,muteMessage:!1},{id:t.id,label:r("actions.goToDeclToSide.label","Open Definition to the Side"),alias:"Open Definition to the Side",precondition:Rh.and(eC.hasDefinitionProvider,eC.isInEmbeddedEditor.toNegated()),kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,nj),weight:100}})||this;return ca.registerCommandAlias("editor.action.openDeclarationToTheSide",t.id),n}return $z(t,e),t}(tj)).id="editor.action.revealDefinitionAside",jz)),Tf(((Uz=function(e){function t(){var n=e.call(this,{openToSide:!1,openInPeek:!0,muteMessage:!1},{id:t.id,label:r("actions.previewDecl.label","Peek Definition"),alias:"Peek Definition",precondition:Rh.and(eC.hasDefinitionProvider,ZB.notInPeekEditor,eC.isInEmbeddedEditor.toNegated()),kbOpts:{kbExpr:eC.editorTextFocus,primary:582,linux:{primary:3140},weight:100},contextMenuOpts:{menuId:8,group:"peek",order:2}})||this;return ca.registerCommandAlias("editor.action.previewDeclaration",t.id),n}return $z(t,e),t}(tj)).id="editor.action.peekDefinition",Uz));var ij=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return $z(t,e),t.prototype._getLocationModel=function(e,t,n){return Qz(this,void 0,void 0,(function(){var i;return Jz(this,(function(o){switch(o.label){case 0:return i=MH.bind,[4,Mz(e,t,n)];case 1:return[2,new(i.apply(MH,[void 0,o.sent(),r("decl.title","Declarations")]))]}}))}))},t.prototype._getNoResultFoundMessage=function(e){return e&&e.word?r("decl.noResultWord","No declaration found for '{0}'",e.word):r("decl.generic.noResults","No declaration found")},t.prototype._getAlternativeCommand=function(e){return e.getOption(41).alternativeDeclarationCommand},t.prototype._getGoToPreference=function(e){return e.getOption(41).multipleDeclarations},t}(ej);Tf(((Kz=function(e){function t(){return e.call(this,{openToSide:!1,openInPeek:!1,muteMessage:!1},{id:t.id,label:r("actions.goToDeclaration.label","Go to Declaration"),alias:"Go to Declaration",precondition:Rh.and(eC.hasDeclarationProvider,eC.isInEmbeddedEditor.toNegated()),contextMenuOpts:{group:"navigation",order:1.3},menuOpts:{menuId:19,group:"4_symbol_nav",order:3,title:r({key:"miGotoDeclaration",comment:["&& denotes a mnemonic"]},"Go to &&Declaration")}})||this}return $z(t,e),t.prototype._getNoResultFoundMessage=function(e){return e&&e.word?r("decl.noResultWord","No declaration found for '{0}'",e.word):r("decl.generic.noResults","No declaration found")},t}(ij)).id="editor.action.revealDeclaration",Kz)),Tf(function(e){function t(){return e.call(this,{openToSide:!1,openInPeek:!0,muteMessage:!1},{id:"editor.action.peekDeclaration",label:r("actions.peekDecl.label","Peek Declaration"),alias:"Peek Declaration",precondition:Rh.and(eC.hasDeclarationProvider,ZB.notInPeekEditor,eC.isInEmbeddedEditor.toNegated()),contextMenuOpts:{menuId:8,group:"peek",order:3}})||this}return $z(t,e),t}(ij));var oj=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return $z(t,e),t.prototype._getLocationModel=function(e,t,n){return Qz(this,void 0,void 0,(function(){var i;return Jz(this,(function(o){switch(o.label){case 0:return i=MH.bind,[4,Pz(e,t,n)];case 1:return[2,new(i.apply(MH,[void 0,o.sent(),r("typedef.title","Type Definitions")]))]}}))}))},t.prototype._getNoResultFoundMessage=function(e){return e&&e.word?r("goToTypeDefinition.noResultWord","No type definition found for '{0}'",e.word):r("goToTypeDefinition.generic.noResults","No type definition found")},t.prototype._getAlternativeCommand=function(e){return e.getOption(41).alternativeTypeDefinitionCommand},t.prototype._getGoToPreference=function(e){return e.getOption(41).multipleTypeDefinitions},t}(ej);Tf(((qz=function(e){function t(){return e.call(this,{openToSide:!1,openInPeek:!1,muteMessage:!1},{id:t.ID,label:r("actions.goToTypeDefinition.label","Go to Type Definition"),alias:"Go to Type Definition",precondition:Rh.and(eC.hasTypeDefinitionProvider,eC.isInEmbeddedEditor.toNegated()),kbOpts:{kbExpr:eC.editorTextFocus,primary:0,weight:100},contextMenuOpts:{group:"navigation",order:1.4},menuOpts:{menuId:19,group:"4_symbol_nav",order:3,title:r({key:"miGotoTypeDefinition",comment:["&& denotes a mnemonic"]},"Go to &&Type Definition")}})||this}return $z(t,e),t}(oj)).ID="editor.action.goToTypeDefinition",qz)),Tf(((Gz=function(e){function t(){return e.call(this,{openToSide:!1,openInPeek:!0,muteMessage:!1},{id:t.ID,label:r("actions.peekTypeDefinition.label","Peek Type Definition"),alias:"Peek Type Definition",precondition:Rh.and(eC.hasTypeDefinitionProvider,ZB.notInPeekEditor,eC.isInEmbeddedEditor.toNegated()),contextMenuOpts:{menuId:8,group:"peek",order:4}})||this}return $z(t,e),t}(oj)).ID="editor.action.peekTypeDefinition",Gz));var rj=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return $z(t,e),t.prototype._getLocationModel=function(e,t,n){return Qz(this,void 0,void 0,(function(){var i;return Jz(this,(function(o){switch(o.label){case 0:return i=MH.bind,[4,Tz(e,t,n)];case 1:return[2,new(i.apply(MH,[void 0,o.sent(),r("impl.title","Implementations")]))]}}))}))},t.prototype._getNoResultFoundMessage=function(e){return e&&e.word?r("goToImplementation.noResultWord","No implementation found for '{0}'",e.word):r("goToImplementation.generic.noResults","No implementation found")},t.prototype._getAlternativeCommand=function(e){return e.getOption(41).alternativeImplementationCommand},t.prototype._getGoToPreference=function(e){return e.getOption(41).multipleImplementations},t}(ej);Tf(((Zz=function(e){function t(){return e.call(this,{openToSide:!1,openInPeek:!1,muteMessage:!1},{id:t.ID,label:r("actions.goToImplementation.label","Go to Implementations"),alias:"Go to Implementations",precondition:Rh.and(eC.hasImplementationProvider,eC.isInEmbeddedEditor.toNegated()),kbOpts:{kbExpr:eC.editorTextFocus,primary:2118,weight:100},menuOpts:{menuId:19,group:"4_symbol_nav",order:4,title:r({key:"miGotoImplementation",comment:["&& denotes a mnemonic"]},"Go to &&Implementations")},contextMenuOpts:{group:"navigation",order:1.45}})||this}return $z(t,e),t}(rj)).ID="editor.action.goToImplementation",Zz)),Tf(((Yz=function(e){function t(){return e.call(this,{openToSide:!1,openInPeek:!0,muteMessage:!1},{id:t.ID,label:r("actions.peekImplementation.label","Peek Implementations"),alias:"Peek Implementations",precondition:Rh.and(eC.hasImplementationProvider,ZB.notInPeekEditor,eC.isInEmbeddedEditor.toNegated()),kbOpts:{kbExpr:eC.editorTextFocus,primary:3142,weight:100},contextMenuOpts:{menuId:8,group:"peek",order:5}})||this}return $z(t,e),t}(rj)).ID="editor.action.peekImplementation",Yz));var sj=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return $z(t,e),t.prototype._getNoResultFoundMessage=function(e){return e?r("references.no","No references found for '{0}'",e.word):r("references.noGeneric","No references found")},t.prototype._getAlternativeCommand=function(e){return e.getOption(41).alternativeReferenceCommand},t.prototype._getGoToPreference=function(e){return e.getOption(41).multipleReferences},t}(ej);Tf(function(e){function t(){return e.call(this,{openToSide:!1,openInPeek:!1,muteMessage:!1},{id:"editor.action.goToReferences",label:r("goToReferences.label","Go to References"),alias:"Go to References",precondition:Rh.and(eC.hasReferenceProvider,ZB.notInPeekEditor,eC.isInEmbeddedEditor.toNegated()),kbOpts:{kbExpr:eC.editorTextFocus,primary:1094,weight:100},contextMenuOpts:{group:"navigation",order:1.45},menuOpts:{menuId:19,group:"4_symbol_nav",order:5,title:r({key:"miGotoReference",comment:["&& denotes a mnemonic"]},"Go to &&References")}})||this}return $z(t,e),t.prototype._getLocationModel=function(e,t,n){return Qz(this,void 0,void 0,(function(){var i;return Jz(this,(function(o){switch(o.label){case 0:return i=MH.bind,[4,Rz(e,t,!0,n)];case 1:return[2,new(i.apply(MH,[void 0,o.sent(),r("ref.title","References")]))]}}))}))},t}(sj)),Tf(function(e){function t(){return e.call(this,{openToSide:!1,openInPeek:!0,muteMessage:!1},{id:"editor.action.referenceSearch.trigger",label:r("references.action.label","Peek References"),alias:"Peek References",precondition:Rh.and(eC.hasReferenceProvider,ZB.notInPeekEditor,eC.isInEmbeddedEditor.toNegated()),contextMenuOpts:{menuId:8,group:"peek",order:6}})||this}return $z(t,e),t.prototype._getLocationModel=function(e,t,n){return Qz(this,void 0,void 0,(function(){var i;return Jz(this,(function(o){switch(o.label){case 0:return i=MH.bind,[4,Rz(e,t,!1,n)];case 1:return[2,new(i.apply(MH,[void 0,o.sent(),r("ref.title","References")]))]}}))}))},t}(sj));var aj=function(e){function t(t,n,i){var o=e.call(this,t,{id:"editor.action.goToLocation",label:r("label.generic","Go To Any Symbol"),alias:"Go To Any Symbol",precondition:Rh.and(ZB.notInPeekEditor,eC.isInEmbeddedEditor.toNegated())})||this;return o._references=n,o._gotoMultipleBehaviour=i,o}return $z(t,e),t.prototype._getLocationModel=function(e,t,n){return Qz(this,void 0,void 0,(function(){return Jz(this,(function(e){return[2,new MH(this._references,r("generic.title","Locations"))]}))}))},t.prototype._getNoResultFoundMessage=function(e){return e&&r("generic.noResult","No results for '{0}'",e.word)||""},t.prototype._getGoToPreference=function(e){var t;return null!==(t=this._gotoMultipleBehaviour)&&void 0!==t?t:e.getOption(41).multipleReferences},t.prototype._getAlternativeCommand=function(){return""},t}(ej);ca.registerCommand({id:"editor.action.goToLocations",description:{description:"Go to locations from a position in a file",args:[{name:"uri",description:"The text document in which to start",constraint:Et},{name:"position",description:"The position at which to start",constraint:bn.isIPosition},{name:"locations",description:"An array of locations.",constraint:Array},{name:"multiple",description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto"}]},handler:function(e,t,n,i,o,r){return Qz(void 0,void 0,void 0,(function(){var s,a;return Jz(this,(function(u){switch(u.label){case 0:return zs(Et.isUri(t)),zs(bn.isIPosition(n)),zs(Array.isArray(i)),zs(void 0===o||"string"==typeof o),zs(void 0===r||"boolean"==typeof r),[4,(s=e.get(Pn)).openCodeEditor({resource:t},s.getFocusedCodeEditor())];case 1:return Md(a=u.sent())?(a.setPosition(n),a.revealPositionInCenterIfOutsideViewport(n,0),[2,a.invokeWithinContext((function(e){var t=new aj({muteMessage:!0,openInPeek:Boolean(r),openToSide:!1},i,o);e.get(In).invokeFunction(t.run.bind(t),a)}))]):[2]}}))}))}}),ca.registerCommand({id:"editor.action.peekLocations",description:{description:"Peek locations from a position in a file",args:[{name:"uri",description:"The text document in which to start",constraint:Et},{name:"position",description:"The position at which to start",constraint:bn.isIPosition},{name:"locations",description:"An array of locations.",constraint:Array},{name:"multiple",description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto"}]},handler:function(e,t,n,i,o){return Qz(void 0,void 0,void 0,(function(){return Jz(this,(function(r){return e.get(la).executeCommand("editor.action.goToLocations",t,n,i,o,!0),[2]}))}))}}),ca.registerCommand({id:"editor.action.findReferences",handler:function(e,t,n){zs(Et.isUri(t)),zs(bn.isIPosition(n));var i=e.get(Pn);return i.openCodeEditor({resource:t},i.getFocusedCodeEditor()).then((function(e){if(Md(e)&&e.hasModel()){var t=Dz.get(e);if(t){var i=hi((function(t){return Rz(e.getModel(),bn.lift(n),!1,t).then((function(e){return new MH(e,r("ref.title","References"))}))})),o=new wn(n.lineNumber,n.column,n.lineNumber,n.column);return Promise.resolve(t.toggleWidget(o,i,!1))}}}))}}),ca.registerCommandAlias("editor.action.showReferences","editor.action.peekLocations");n(414);var uj=function(){function e(e,t){var n,i;void 0===e&&(e=""),void 0===t&&(t=!1),this._value=e,"boolean"==typeof t?(this._isTrusted=t,this._supportThemeIcons=!1):(this._isTrusted=null!==(n=t.isTrusted)&&void 0!==n&&n,this._supportThemeIcons=null!==(i=t.supportThemeIcons)&&void 0!==i&&i)}return Object.defineProperty(e.prototype,"value",{get:function(){return this._value},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isTrusted",{get:function(){return this._isTrusted},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"supportThemeIcons",{get:function(){return this._supportThemeIcons},enumerable:!0,configurable:!0}),e.prototype.appendText=function(e){var t;return this._value+=(this._supportThemeIcons?(t=e,t.replace(VA,(function(e,t){return t?e:"\\"+e}))):e).replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&").replace("\n","\n\n"),this},e.prototype.appendMarkdown=function(e){return this._value+=e,this},e.prototype.appendCodeblock=function(e,t){return this._value+="\n```",this._value+=e,this._value+="\n",this._value+=t,this._value+="\n```\n",this},e}();function lj(e){return cj(e)?!e.value:!Array.isArray(e)||e.every(lj)}function cj(e){return e instanceof uj||!(!e||"object"!=typeof e)&&!("string"!=typeof e.value||"boolean"!=typeof e.isTrusted&&void 0!==e.isTrusted||"boolean"!=typeof e.supportThemeIcons&&void 0!==e.supportThemeIcons)}function dj(e,t){return e===t||!(!e||!t)&&(e.value===t.value&&e.isTrusted===t.isTrusted&&e.supportThemeIcons===t.supportThemeIcons)}function hj(e){return e?e.replace(/\\([\\`*_{}[\]()#+\-.!])/g,"$1"):e}var pj=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function fj(e,t){return!!e[t]}var gj=function(e,t){this.target=e.target,this.hasTriggerModifier=fj(e.event,t.triggerModifier),this.hasSideBySideModifier=fj(e.event,t.triggerSideBySideModifier),this.isNoneOrSingleMouseDown=Vn||e.event.detail<=1},mj=function(e,t){this.keyCodeIsTriggerKey=e.keyCode===t.triggerKey,this.keyCodeIsSideBySideKey=e.keyCode===t.triggerSideBySideKey,this.hasTriggerModifier=fj(e,t.triggerModifier)},vj=function(){function e(e,t,n,i){this.triggerKey=e,this.triggerModifier=t,this.triggerSideBySideKey=n,this.triggerSideBySideModifier=i}return e.prototype.equals=function(e){return this.triggerKey===e.triggerKey&&this.triggerModifier===e.triggerModifier&&this.triggerSideBySideKey===e.triggerSideBySideKey&&this.triggerSideBySideModifier===e.triggerSideBySideModifier},e}();function _j(e){return"altKey"===e?_?new vj(57,"metaKey",6,"altKey"):new vj(5,"ctrlKey",6,"altKey"):_?new vj(6,"altKey",57,"metaKey"):new vj(6,"altKey",5,"ctrlKey")}var yj=function(e){function t(t){var n=e.call(this)||this;return n._onMouseMoveOrRelevantKeyDown=n._register(new nt),n.onMouseMoveOrRelevantKeyDown=n._onMouseMoveOrRelevantKeyDown.event,n._onExecute=n._register(new nt),n.onExecute=n._onExecute.event,n._onCancel=n._register(new nt),n.onCancel=n._onCancel.event,n._editor=t,n._opts=_j(n._editor.getOption(59)),n.lastMouseMoveEvent=null,n.hasTriggerKeyOnMouseDown=!1,n._register(n._editor.onDidChangeConfiguration((function(e){if(e.hasChanged(59)){var t=_j(n._editor.getOption(59));if(n._opts.equals(t))return;n._opts=t,n.lastMouseMoveEvent=null,n.hasTriggerKeyOnMouseDown=!1,n._onCancel.fire()}}))),n._register(n._editor.onMouseMove((function(e){return n.onEditorMouseMove(new gj(e,n._opts))}))),n._register(n._editor.onMouseDown((function(e){return n.onEditorMouseDown(new gj(e,n._opts))}))),n._register(n._editor.onMouseUp((function(e){return n.onEditorMouseUp(new gj(e,n._opts))}))),n._register(n._editor.onKeyDown((function(e){return n.onEditorKeyDown(new mj(e,n._opts))}))),n._register(n._editor.onKeyUp((function(e){return n.onEditorKeyUp(new mj(e,n._opts))}))),n._register(n._editor.onMouseDrag((function(){return n.resetHandler()}))),n._register(n._editor.onDidChangeCursorSelection((function(e){return n.onDidChangeCursorSelection(e)}))),n._register(n._editor.onDidChangeModel((function(e){return n.resetHandler()}))),n._register(n._editor.onDidChangeModelContent((function(){return n.resetHandler()}))),n._register(n._editor.onDidScrollChange((function(e){(e.scrollTopChanged||e.scrollLeftChanged)&&n.resetHandler()}))),n}return pj(t,e),t.prototype.onDidChangeCursorSelection=function(e){e.selection&&e.selection.startColumn!==e.selection.endColumn&&this.resetHandler()},t.prototype.onEditorMouseMove=function(e){this.lastMouseMoveEvent=e,this._onMouseMoveOrRelevantKeyDown.fire([e,null])},t.prototype.onEditorMouseDown=function(e){this.hasTriggerKeyOnMouseDown=e.hasTriggerModifier},t.prototype.onEditorMouseUp=function(e){this.hasTriggerKeyOnMouseDown&&this._onExecute.fire(e)},t.prototype.onEditorKeyDown=function(e){this.lastMouseMoveEvent&&(e.keyCodeIsTriggerKey||e.keyCodeIsSideBySideKey&&e.hasTriggerModifier)?this._onMouseMoveOrRelevantKeyDown.fire([this.lastMouseMoveEvent,e]):e.hasTriggerModifier&&this._onCancel.fire()},t.prototype.onEditorKeyUp=function(e){e.keyCodeIsTriggerKey&&this._onCancel.fire()},t.prototype.resetHandler=function(){this.lastMouseMoveEvent=null,this.hasTriggerKeyOnMouseDown=!1,this._onCancel.fire()},t}(He),bj=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},wj=function(e,t){return function(n,i){t(n,i,e)}},Cj=function(){function e(e,t,n){var i=this;this.textModelResolverService=t,this.modeService=n,this.toUnhook=new Be,this.toUnhookForKeyboard=new Be,this.linkDecorations=[],this.currentWordAtPosition=null,this.previousPromise=null,this.editor=e;var o=new yj(e);this.toUnhook.add(o),this.toUnhook.add(o.onMouseMoveOrRelevantKeyDown((function(e){var t=e[0],n=e[1];i.startFindDefinitionFromMouse(t,Xs(n))}))),this.toUnhook.add(o.onExecute((function(e){i.isEnabled(e)&&i.gotoDefinition(e.target.position,e.hasSideBySideModifier).then((function(){i.removeLinkDecorations()}),(function(e){i.removeLinkDecorations(),De(e)}))}))),this.toUnhook.add(o.onCancel((function(){i.removeLinkDecorations(),i.currentWordAtPosition=null})))}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.startFindDefinitionFromCursor=function(e){var t=this;return this.startFindDefinition(e).then((function(){t.toUnhookForKeyboard.add(t.editor.onDidChangeCursorPosition((function(){t.currentWordAtPosition=null,t.removeLinkDecorations(),t.toUnhookForKeyboard.clear()}))),t.toUnhookForKeyboard.add(t.editor.onKeyDown((function(e){e&&(t.currentWordAtPosition=null,t.removeLinkDecorations(),t.toUnhookForKeyboard.clear())})))}))},e.prototype.startFindDefinitionFromMouse=function(e,t){if(!(9===e.target.type&&this.linkDecorations.length>0)){if(!this.editor.hasModel()||!this.isEnabled(e,t))return this.currentWordAtPosition=null,void this.removeLinkDecorations();var n=e.target.position;this.startFindDefinition(n)}},e.prototype.startFindDefinition=function(e){var t,n=this;this.toUnhookForKeyboard.clear();var i=e?null===(t=this.editor.getModel())||void 0===t?void 0:t.getWordAtPosition(e):null;if(!i)return this.currentWordAtPosition=null,this.removeLinkDecorations(),Promise.resolve(0);if(this.currentWordAtPosition&&this.currentWordAtPosition.startColumn===i.startColumn&&this.currentWordAtPosition.endColumn===i.endColumn&&this.currentWordAtPosition.word===i.word)return Promise.resolve(0);this.currentWordAtPosition=i;var o=new oD(this.editor,15);return this.previousPromise&&(this.previousPromise.cancel(),this.previousPromise=null),this.previousPromise=hi((function(t){return n.findDefinition(e,t)})),this.previousPromise.then((function(t){if(t&&t.length&&o.validate(n.editor))if(t.length>1)n.addDecoration(new wn(e.lineNumber,i.startColumn,e.lineNumber,i.endColumn),(new uj).appendText(r("multipleResults","Click to show {0} definitions.",t.length)));else{var s=t[0];if(!s.uri)return;n.textModelResolverService.createModelReference(s.uri).then((function(t){if(t.object&&t.object.textEditorModel){var o=t.object.textEditorModel,r=s.range.startLineNumber;if(r<1||r>o.getLineCount())t.dispose();else{var a,u=n.getPreviewValue(o,r,s);a=s.originSelectionRange?wn.lift(s.originSelectionRange):new wn(e.lineNumber,i.startColumn,e.lineNumber,i.endColumn);var l=n.modeService.getModeIdByFilepathOrFirstLine(o.uri);n.addDecoration(a,(new uj).appendCodeblock(l||"",u)),t.dispose()}}else t.dispose()}))}else n.removeLinkDecorations()})).then(void 0,De)},e.prototype.getPreviewValue=function(t,n,i){var o=i.targetSelectionRange?i.range:this.getPreviewRangeBasedOnBrackets(t,n);return o.endLineNumber-o.startLineNumber>=e.MAX_SOURCE_PREVIEW_LINES&&(o=this.getPreviewRangeBasedOnIndentation(t,n)),this.stripIndentationFromPreviewRange(t,n,o)},e.prototype.stripIndentationFromPreviewRange=function(e,t,n){for(var i=e.getLineFirstNonWhitespaceColumn(t),o=t+1;o<n.endLineNumber;o++){var r=e.getLineFirstNonWhitespaceColumn(o);i=Math.min(i,r)}return e.getValueInRange(n).replace(new RegExp("^\\s{"+(i-1)+"}","gm"),"").trim()},e.prototype.getPreviewRangeBasedOnIndentation=function(t,n){for(var i=t.getLineFirstNonWhitespaceColumn(n),o=Math.min(t.getLineCount(),n+e.MAX_SOURCE_PREVIEW_LINES),r=n+1;r<o;r++){if(i===t.getLineFirstNonWhitespaceColumn(r))break}return new wn(n,1,r+1,1)},e.prototype.getPreviewRangeBasedOnBrackets=function(t,n){for(var i=Math.min(t.getLineCount(),n+e.MAX_SOURCE_PREVIEW_LINES),o=[],r=!0,s=t.findNextBracket(new bn(n,1));null!==s;){if(0===o.length)o.push(s);else{var a=o[o.length-1];if(a.open[0]===s.open[0]&&a.isOpen&&!s.isOpen?o.pop():o.push(s),0===o.length){if(!r)return new wn(n,1,s.range.endLineNumber+1,1);r=!1}}var u=t.getLineMaxColumn(n),l=s.range.endLineNumber,c=s.range.endColumn;if(u===s.range.endColumn&&(l++,c=1),l>i)return new wn(n,1,i+1,1);s=t.findNextBracket(new bn(l,c))}return new wn(n,1,i+1,1)},e.prototype.addDecoration=function(e,t){var n={range:e,options:{inlineClassName:"goto-definition-link",hoverMessage:t}};this.linkDecorations=this.editor.deltaDecorations(this.linkDecorations,[n])},e.prototype.removeLinkDecorations=function(){this.linkDecorations.length>0&&(this.linkDecorations=this.editor.deltaDecorations(this.linkDecorations,[]))},e.prototype.isEnabled=function(e,t){return this.editor.hasModel()&&e.isNoneOrSingleMouseDown&&6===e.target.type&&(e.hasTriggerModifier||!!t&&t.keyCodeIsTriggerKey)&&Pu.has(this.editor.getModel())},e.prototype.findDefinition=function(e,t){var n=this.editor.getModel();return n?Oz(n,e,t):Promise.resolve(null)},e.prototype.gotoDefinition=function(e,t){var n=this;this.editor.setPosition(e);var i=new tj({openToSide:t,openInPeek:!1,muteMessage:!0},{alias:"",label:"",id:"",precondition:void 0});return this.editor.invokeWithinContext((function(e){return i.run(e,n.editor)}))},e.prototype.dispose=function(){this.toUnhook.dispose()},e.ID="editor.contrib.gotodefinitionatposition",e.MAX_SOURCE_PREVIEW_LINES=8,e=bj([wj(1,tl),wj(2,lN)],e)}();Pf(Cj.ID,Cj),yg((function(e,t){var n=e.getColor(Wy);n&&t.addRule(".monaco-editor .goto-definition-link { color: "+n+" !important; }")}));var Sj;n(415);(Sj||(Sj={})).className=function(e){switch(e){case Od.Ignore:return"severity-ignore codicon-info";case Od.Info:return"codicon-info";case Od.Warning:return"codicon-warning";case Od.Error:return"codicon-error"}return""},yg((function(e,t){var n=e.getColor(Db);n&&t.addRule("\n\t\t\t.monaco-editor .zone-widget .codicon-error,\n\t\t\t.markers-panel .marker-icon.codicon-error,\n\t\t\t.extensions-viewlet > .extensions .codicon-error,\n\t\t\t.monaco-dialog-box .dialog-message-row .codicon-error {\n\t\t\t\tcolor: "+n+";\n\t\t\t}\n\t\t");var i=e.getColor(Nb);n&&t.addRule("\n\t\t\t.monaco-editor .zone-widget .codicon-warning,\n\t\t\t.markers-panel .marker-icon.codicon-warning,\n\t\t\t.extensions-viewlet > .extensions .codicon-warning,\n\t\t\t.extension-editor .codicon-warning,\n\t\t\t.monaco-dialog-box .dialog-message-row .codicon-warning {\n\t\t\t\tcolor: "+i+";\n\t\t\t}\n\t\t");var o=e.getColor(kb);n&&t.addRule("\n\t\t\t.monaco-editor .zone-widget .codicon-info,\n\t\t\t.markers-panel .marker-icon.codicon-info,\n\t\t\t.extensions-viewlet > .extensions .codicon-info,\n\t\t\t.extension-editor .codicon-info,\n\t\t\t.monaco-dialog-box .dialog-message-row .codicon-info {\n\t\t\t\tcolor: "+o+";\n\t\t\t}\n\t\t")}));var Lj=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),xj=function(){function e(e,t,n,i){var o=this;this._openerService=i,this._lines=0,this._longestLineLength=0,this._relatedDiagnostics=new WeakMap,this._disposables=new Be,this._editor=t;var r=document.createElement("div");r.className="descriptioncontainer",r.setAttribute("aria-live","assertive"),r.setAttribute("role","alert"),this._messageBlock=document.createElement("div"),no(this._messageBlock,"message"),r.appendChild(this._messageBlock),this._relatedBlock=document.createElement("div"),r.appendChild(this._relatedBlock),this._disposables.add(co(this._relatedBlock,"click",(function(e){e.preventDefault();var t=o._relatedDiagnostics.get(e.target);t&&n(t)}))),this._scrollable=new pS(r,{horizontal:1,vertical:1,useShadows:!1,horizontalScrollbarSize:3,verticalScrollbarSize:3}),e.appendChild(this._scrollable.getDomNode()),this._disposables.add(this._scrollable.onScroll((function(e){r.style.left="-"+e.scrollLeft+"px",r.style.top="-"+e.scrollTop+"px"}))),this._disposables.add(this._scrollable)}return e.prototype.dispose=function(){Ae(this._disposables)},e.prototype.update=function(e){var t=this,n=e.source,i=e.message,o=e.relatedInformation,r=e.code,s=((null==n?void 0:n.length)||0)+"()".length;r&&(s+="string"==typeof r?r.length:r.value.length);var a=i.split(/\r\n|\r|\n/g);this._lines=a.length,this._longestLineLength=0;for(var u=0,l=a;u<l.length;u++){var c=l[u];this._longestLineLength=Math.max(c.length+s,this._longestLineLength)}Yi(this._messageBlock),this._editor.applyFontInfo(this._messageBlock);for(var d=this._messageBlock,h=0,p=a;h<p.length;h++){c=p[h];(d=document.createElement("div")).innerText=c,""===c&&(d.style.height=this._messageBlock.style.lineHeight),this._messageBlock.appendChild(d)}if(n||r){var f,g=document.createElement("span");if(no(g,"details"),d.appendChild(g),n){var m=document.createElement("span");m.innerText=n,no(m,"source"),g.appendChild(m)}if(r)if("string"==typeof r)(f=document.createElement("span")).innerText="("+r+")",no(f,"code"),g.appendChild(f);else this._codeLink=er("a.code-link"),this._codeLink.setAttribute("href",""+r.link.toString()),this._codeLink.onclick=function(e){t._openerService.open(r.link),e.preventDefault(),e.stopPropagation()},(f=Xo(this._codeLink,er("span"))).innerText=r.value,g.appendChild(this._codeLink)}if(Yi(this._relatedBlock),this._editor.applyFontInfo(this._relatedBlock),Oi(o)){var v=this._relatedBlock.appendChild(document.createElement("div"));v.style.paddingTop=Math.floor(.66*this._editor.getOption(49))+"px",this._lines+=1;for(var _=0,y=o;_<y.length;_++){var b=y[_],w=document.createElement("div"),C=document.createElement("a");no(C,"filename"),C.innerHTML=zH(b.resource)+"("+b.startLineNumber+", "+b.startColumn+"): ",C.title=HH(b.resource,void 0),this._relatedDiagnostics.set(C,b);var S=document.createElement("span");S.innerText=b.message,w.appendChild(C),w.appendChild(S),this._lines+=1,v.appendChild(w)}}var L=this._editor.getOption(34),x=Math.ceil(L.typicalFullwidthCharacterWidth*this._longestLineLength*.75),D=L.lineHeight*this._lines;this._scrollable.setScrollDimensions({scrollWidth:x,scrollHeight:D})},e.prototype.layout=function(e,t){this._scrollable.getDomNode().style.height=e+"px",this._scrollable.getDomNode().style.width=t+"px",this._scrollable.setScrollDimensions({width:t,height:e})},e.prototype.getHeightInLines=function(){return Math.min(17,this._lines)},e}(),Dj=function(e){function t(t,n,i,o){var r=e.call(this,t,{showArrow:!0,showFrame:!0,isAccessible:!0})||this;return r.actions=n,r._themeService=i,r._openerService=o,r._callOnDispose=new Be,r._onDidSelectRelatedInformation=new nt,r.onDidSelectRelatedInformation=r._onDidSelectRelatedInformation.event,r._severity=NM.Warning,r._backgroundColor=mv.white,r._applyTheme(i.getTheme()),r._callOnDispose.add(i.onThemeChange(r._applyTheme.bind(r))),r.create(),r}return Lj(t,e),t.prototype._applyTheme=function(e){this._backgroundColor=e.getColor(Tj);var t=Ij;this._severity===NM.Warning?t=Oj:this._severity===NM.Info&&(t=Mj);var n=e.getColor(t);this.style({arrowColor:n,frameColor:n,headerBackgroundColor:this._backgroundColor,primaryHeadingColor:e.getColor(mH),secondaryHeadingColor:e.getColor(vH)})},t.prototype._applyStyles=function(){this._parentContainer&&(this._parentContainer.style.backgroundColor=this._backgroundColor?this._backgroundColor.toString():""),e.prototype._applyStyles.call(this)},t.prototype.dispose=function(){this._callOnDispose.dispose(),e.prototype.dispose.call(this)},t.prototype._fillHead=function(t){e.prototype._fillHead.call(this,t),this._actionbarWidget.push(this.actions,{label:!1,icon:!0,index:0})},t.prototype._fillTitleIcon=function(e){this._icon=Xo(e,er(""))},t.prototype._getActionBarOptions=function(){return{orientation:0}},t.prototype._fillBody=function(e){var t=this;this._parentContainer=e,no(e,"marker-widget"),this._parentContainer.tabIndex=0,this._parentContainer.setAttribute("role","tooltip"),this._container=document.createElement("div"),e.appendChild(this._container),this._message=new xj(this._container,this.editor,(function(e){return t._onDidSelectRelatedInformation.fire(e)}),this._openerService),this._disposables.add(this._message)},t.prototype.show=function(e,t){throw new Error("call showAtMarker")},t.prototype.showAtMarker=function(t,n,i){this._container.classList.remove("stale"),this._message.update(t),this._severity=t.severity,this._applyTheme(this._themeService.getTheme());var o=wn.lift(t),s=this.editor.getPosition(),a=s&&o.containsPosition(s)?s:o.getStartPosition();e.prototype.show.call(this,a,this.computeRequiredHeight());var u=this.editor.getModel();if(u){var l=i>1?r("problems","{0} of {1} problems",n,i):r("change","{0} of {1} problem",n,i);this.setTitle(Ds(u.uri),l)}this._icon.className="codicon "+Sj.className(NM.toSeverity(this._severity)),this.editor.revealPositionInCenter(a,0),this.editor.focus()},t.prototype.updateMarker=function(e){this._container.classList.remove("stale"),this._message.update(e)},t.prototype.showStale=function(){this._container.classList.add("stale"),this._relayout()},t.prototype._doLayoutBody=function(t,n){e.prototype._doLayoutBody.call(this,t,n),this._heightInPixel=t,this._message.layout(t,n),this._container.style.height=t+"px"},t.prototype._onWidth=function(e){this._message.layout(this._heightInPixel,e)},t.prototype._relayout=function(){e.prototype._relayout.call(this,this.computeRequiredHeight())},t.prototype.computeRequiredHeight=function(){return 3+this._message.getHeightInLines()},t}(fH),Nj=Ob(uy,ly),kj=Ob(cy,dy),Ej=Ob(hy,py),Ij=D_("editorMarkerNavigationError.background",{dark:Nj,light:Nj,hc:Nj},r("editorMarkerNavigationError","Editor marker navigation widget error color.")),Oj=D_("editorMarkerNavigationWarning.background",{dark:kj,light:kj,hc:kj},r("editorMarkerNavigationWarning","Editor marker navigation widget warning color.")),Mj=D_("editorMarkerNavigationInfo.background",{dark:Ej,light:Ej,hc:Ej},r("editorMarkerNavigationInfo","Editor marker navigation widget info color.")),Tj=D_("editorMarkerNavigation.background",{dark:"#2D2D30",light:mv.white,hc:"#0C141F"},r("editorMarkerNavigationBackground","Editor marker navigation widget background."));yg((function(e,t){var n=e.getColor(P_);n&&(t.addRule(".monaco-editor .marker-widget a { color: "+n+"; }"),t.addRule(".monaco-editor .marker-widget a.code-link span:hover { color: "+n+"; }"))}));var Pj=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Rj=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Aj=function(e,t){return function(n,i){t(n,i,e)}},Fj=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},Wj=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},Vj=function(){function e(e,t){var n=this;this._toUnbind=new Be,this._editor=e,this._markers=[],this._nextIdx=-1,this._ignoreSelectionChange=!1,this._onCurrentMarkerChanged=new nt,this._onMarkerSetChanged=new nt,this.setMarkers(t),this._toUnbind.add(this._editor.onDidDispose((function(){return n.dispose()}))),this._toUnbind.add(this._editor.onDidChangeCursorPosition((function(){n._ignoreSelectionChange||n.currentMarker&&n._editor.getPosition()&&wn.containsPosition(n.currentMarker,n._editor.getPosition())||(n._nextIdx=-1)})))}return Object.defineProperty(e.prototype,"onCurrentMarkerChanged",{get:function(){return this._onCurrentMarkerChanged.event},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMarkerSetChanged",{get:function(){return this._onMarkerSetChanged.event},enumerable:!0,configurable:!0}),e.prototype.setMarkers=function(e){var t=this._nextIdx>=0?this._markers[this._nextIdx]:void 0;this._markers=e||[],this._markers.sort(Hj.compareMarker),this._nextIdx=t?Math.max(-1,Di(this._markers,t,Hj.compareMarker)):-1,this._onMarkerSetChanged.fire(this)},e.prototype.withoutWatchingEditorPosition=function(e){this._ignoreSelectionChange=!0;try{e()}finally{this._ignoreSelectionChange=!1}},e.prototype._initIdx=function(e){for(var t=!1,n=this._editor.getPosition(),i=0;i<this._markers.length;i++){var o=wn.lift(this._markers[i]);if(o.isEmpty()&&this._editor.getModel()){var r=this._editor.getModel().getWordAtPosition(o.getStartPosition());r&&(o=new wn(o.startLineNumber,r.startColumn,o.startLineNumber,r.endColumn))}if(n&&(o.containsPosition(n)||n.isBeforeOrEqual(o.getStartPosition()))){this._nextIdx=i,t=!0;break}}t||(this._nextIdx=e?0:this._markers.length-1),this._nextIdx<0&&(this._nextIdx=this._markers.length-1)},Object.defineProperty(e.prototype,"currentMarker",{get:function(){return this.canNavigate()?this._markers[this._nextIdx]:void 0},set:function(e){var t=this._nextIdx;this._nextIdx=-1,e&&(this._nextIdx=this.indexOf(e)),this._nextIdx!==t&&this._onCurrentMarkerChanged.fire(e)},enumerable:!0,configurable:!0}),e.prototype.move=function(e,t){if(!this.canNavigate())return this._onCurrentMarkerChanged.fire(void 0),!t;var n=this._nextIdx,i=!1;if(-1===this._nextIdx?this._initIdx(e):e?t||this._nextIdx+1<this._markers.length?this._nextIdx=(this._nextIdx+1)%this._markers.length:i=!0:e||(t||this._nextIdx>0?this._nextIdx=(this._nextIdx-1+this._markers.length)%this._markers.length:i=!0),n!==this._nextIdx){var o=this._markers[this._nextIdx];this._onCurrentMarkerChanged.fire(o)}return i},e.prototype.canNavigate=function(){return this._markers.length>0},e.prototype.findMarkerAtPosition=function(e){return zi(this._markers,(function(t){return wn.containsPosition(t,e)}))},Object.defineProperty(e.prototype,"total",{get:function(){return this._markers.length},enumerable:!0,configurable:!0}),e.prototype.indexOf=function(e){return 1+this._markers.indexOf(e)},e.prototype.dispose=function(){this._toUnbind.dispose()},e}(),Bj=function(){function e(e,t,n,i,o,r,s){this._markerService=t,this._contextKeyService=n,this._themeService=i,this._editorService=o,this._keybindingService=r,this._openerService=s,this._model=null,this._widget=null,this._disposeOnClose=new Be,this._editor=e,this._widgetVisible=qj.bindTo(this._contextKeyService)}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.dispose=function(){this._cleanUp(),this._disposeOnClose.dispose()},e.prototype._cleanUp=function(){this._widgetVisible.reset(),this._disposeOnClose.clear(),this._widget=null,this._model=null},e.prototype.getOrCreateModel=function(){var e=this;if(this._model)return this._model;var t=this._getMarkers();this._model=new Vj(this._editor,t),this._markerService.onMarkerChanged(this._onMarkerChanged,this,this._disposeOnClose);var n=this._keybindingService.lookupKeybinding(jj.ID),i=this._keybindingService.lookupKeybinding(zj.ID),o=[new df(zj.ID,zj.LABEL+(i?" ("+i.getLabel()+")":""),"show-next-problem codicon-chevron-down",this._model.canNavigate(),(function(){return Fj(e,void 0,void 0,(function(){return Wj(this,(function(e){return this._model&&this._model.move(!0,!0),[2]}))}))})),new df(jj.ID,jj.LABEL+(n?" ("+n.getLabel()+")":""),"show-previous-problem codicon-chevron-up",this._model.canNavigate(),(function(){return Fj(e,void 0,void 0,(function(){return Wj(this,(function(e){return this._model&&this._model.move(!1,!0),[2]}))}))}))];this._widget=new Dj(this._editor,o,this._themeService,this._openerService),this._widgetVisible.set(!0),this._widget.onDidClose((function(){return e.closeMarkersNavigation()}),this,this._disposeOnClose),this._disposeOnClose.add(this._model),this._disposeOnClose.add(this._widget);for(var r=0,s=o;r<s.length;r++){var a=s[r];this._disposeOnClose.add(a)}return this._disposeOnClose.add(this._widget.onDidSelectRelatedInformation((function(t){e._editorService.openCodeEditor({resource:t.resource,options:{pinned:!0,revealIfOpened:!0,selection:wn.lift(t).collapseToStart()}},e._editor).then(void 0,De),e.closeMarkersNavigation(!1)}))),this._disposeOnClose.add(this._editor.onDidChangeModel((function(){return e._cleanUp()}))),this._disposeOnClose.add(this._model.onCurrentMarkerChanged((function(t){t&&e._model?e._model.withoutWatchingEditorPosition((function(){e._widget&&e._model&&e._widget.showAtMarker(t,e._model.indexOf(t),e._model.total)})):e._cleanUp()}))),this._disposeOnClose.add(this._model.onMarkerSetChanged((function(){if(e._widget&&e._widget.position&&e._model){var t=e._model.findMarkerAtPosition(e._widget.position);t?e._widget.updateMarker(t):e._widget.showStale()}}))),this._model},e.prototype.closeMarkersNavigation=function(e){void 0===e&&(e=!0),this._cleanUp(),e&&this._editor.focus()},e.prototype.show=function(e){this.getOrCreateModel().currentMarker=e},e.prototype._onMarkerChanged=function(e){var t=this._editor.getModel();t&&this._model&&e.some((function(e){return xs(t.uri,e)}))&&this._model.setMarkers(this._getMarkers())},e.prototype._getMarkers=function(){var e=this._editor.getModel();return e?this._markerService.read({resource:e.uri,severities:NM.Error|NM.Warning|NM.Info}):[]},e.ID="editor.contrib.markerController",e=Rj([Aj(1,MM),Aj(2,qh),Aj(3,fg),Aj(4,Pn),Aj(5,XD),Aj(6,pa)],e)}(),Hj=function(e){function t(t,n,i){var o=e.call(this,i)||this;return o._isNext=t,o._multiFile=n,o}return Pj(t,e),t.prototype.run=function(e,n){var i=this,o=e.get(MM),r=e.get(Pn),s=Bj.get(n);if(!s)return Promise.resolve(void 0);var a=s.getOrCreateModel();if(!a.move(this._isNext,!this._multiFile)||!this._multiFile)return Promise.resolve(void 0);var u=o.read({severities:NM.Error|NM.Warning|NM.Info}).sort(t.compareMarker);if(0===u.length)return Promise.resolve(void 0);var l=n.getModel();if(!l)return Promise.resolve(void 0);var c=Di(u,a.currentMarker||{resource:l.uri,severity:NM.Error,startLineNumber:1,startColumn:1,endLineNumber:1,endColumn:1},t.compareMarker);c<0?(c=~c,c%=u.length):c=this._isNext?(c+1)%u.length:(c+u.length-1)%u.length;var d=u[c];return xs(d.resource,l.uri)?(a.move(this._isNext,!0),Promise.resolve(void 0)):(s.closeMarkersNavigation(),r.openCodeEditor({resource:d.resource,options:{pinned:!1,revealIfOpened:!0,revealInCenterIfOutsideViewport:!0,selection:d}},n).then((function(e){if(e)return e.getAction(i.id).run()})))},t.compareMarker=function(e,t){var n=Lr(e.resource.toString(),t.resource.toString());return 0===n&&(n=NM.compare(e.severity,t.severity)),0===n&&(n=wn.compareRangesUsingStarts(e,t)),n},t}(kf),zj=function(e){function t(){return e.call(this,!0,!1,{id:t.ID,label:t.LABEL,alias:"Go to Next Problem (Error, Warning, Info)",precondition:eC.writable,kbOpts:{kbExpr:eC.focus,primary:578,weight:100}})||this}return Pj(t,e),t.ID="editor.action.marker.next",t.LABEL=r("markerAction.next.label","Go to Next Problem (Error, Warning, Info)"),t}(Hj),jj=function(e){function t(){return e.call(this,!1,!1,{id:t.ID,label:t.LABEL,alias:"Go to Previous Problem (Error, Warning, Info)",precondition:eC.writable,kbOpts:{kbExpr:eC.focus,primary:1602,weight:100}})||this}return Pj(t,e),t.ID="editor.action.marker.prev",t.LABEL=r("markerAction.previous.label","Go to Previous Problem (Error, Warning, Info)"),t}(Hj),Uj=function(e){function t(){return e.call(this,!0,!0,{id:"editor.action.marker.nextInFiles",label:r("markerAction.nextInFiles.label","Go to Next Problem in Files (Error, Warning, Info)"),alias:"Go to Next Problem in Files (Error, Warning, Info)",precondition:eC.writable,kbOpts:{kbExpr:eC.focus,primary:66,weight:100}})||this}return Pj(t,e),t}(Hj),Kj=function(e){function t(){return e.call(this,!1,!0,{id:"editor.action.marker.prevInFiles",label:r("markerAction.previousInFiles.label","Go to Previous Problem in Files (Error, Warning, Info)"),alias:"Go to Previous Problem in Files (Error, Warning, Info)",precondition:eC.writable,kbOpts:{kbExpr:eC.focus,primary:1090,weight:100}})||this}return Pj(t,e),t}(Hj);Pf(Bj.ID,Bj),Tf(zj),Tf(jj),Tf(Uj),Tf(Kj);var qj=new Kh("markersNavigationVisible",!1);Mf(new(Nf.bindToContribution(Bj.get))({id:"closeMarkersNavigation",precondition:qj,handler:function(e){return e.closeMarkersNavigation()},kbOpts:{weight:150,kbExpr:eC.focus,primary:9,secondary:[1033]}})),bf.appendMenuItem(19,{group:"6_problem_nav",command:{id:"editor.action.marker.nextInFiles",title:r({key:"miGotoNextProblem",comment:["&& denotes a mnemonic"]},"Next &&Problem")},order:1}),bf.appendMenuItem(19,{group:"6_problem_nav",command:{id:"editor.action.marker.prevInFiles",title:r({key:"miGotoPreviousProblem",comment:["&& denotes a mnemonic"]},"Previous &&Problem")},order:2});n(416);var Gj=function(){function e(e,t,n){this.presentationIndex=n,this._onColorFlushed=new nt,this.onColorFlushed=this._onColorFlushed.event,this._onDidChangeColor=new nt,this.onDidChangeColor=this._onDidChangeColor.event,this._onDidChangePresentation=new nt,this.onDidChangePresentation=this._onDidChangePresentation.event,this.originalColor=e,this._color=e,this._colorPresentations=t}return Object.defineProperty(e.prototype,"color",{get:function(){return this._color},set:function(e){this._color.equals(e)||(this._color=e,this._onDidChangeColor.fire(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"presentation",{get:function(){return this.colorPresentations[this.presentationIndex]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"colorPresentations",{get:function(){return this._colorPresentations},set:function(e){this._colorPresentations=e,this.presentationIndex>e.length-1&&(this.presentationIndex=0),this._onDidChangePresentation.fire(this.presentation)},enumerable:!0,configurable:!0}),e.prototype.selectNextColorPresentation=function(){this.presentationIndex=(this.presentationIndex+1)%this.colorPresentations.length,this.flushColor(),this._onDidChangePresentation.fire(this.presentation)},e.prototype.guessColorPresentation=function(e,t){for(var n=0;n<this.colorPresentations.length;n++)if(t===this.colorPresentations[n].label){this.presentationIndex=n,this._onDidChangePresentation.fire(this.presentation);break}},e.prototype.flushColor=function(){this._onColorFlushed.fire(this._color)},e}(),Zj=(n(417),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),Yj=er,Xj=function(e){function t(t,n,i){var o=e.call(this)||this;o.model=n,o.domNode=Yj(".colorpicker-header"),Xo(t,o.domNode),o.pickedColorNode=Xo(o.domNode,Yj(".picked-color"));var r=Xo(o.domNode,Yj(".original-color"));return r.style.backgroundColor=mv.Format.CSS.format(o.model.originalColor)||"",o.backgroundColor=i.getTheme().getColor(Py)||mv.white,o._register(yg((function(e,t){o.backgroundColor=e.getColor(Py)||mv.white}))),o._register(uo(o.pickedColorNode,qo.CLICK,(function(){return o.model.selectNextColorPresentation()}))),o._register(uo(r,qo.CLICK,(function(){o.model.color=o.model.originalColor,o.model.flushColor()}))),o._register(n.onDidChangeColor(o.onDidChangeColor,o)),o._register(n.onDidChangePresentation(o.onDidChangePresentation,o)),o.pickedColorNode.style.backgroundColor=mv.Format.CSS.format(n.color)||"",so(o.pickedColorNode,"light",n.color.rgba.a<.5?o.backgroundColor.isLighter():n.color.isLighter()),o}return Zj(t,e),t.prototype.onDidChangeColor=function(e){this.pickedColorNode.style.backgroundColor=mv.Format.CSS.format(e)||"",so(this.pickedColorNode,"light",e.rgba.a<.5?this.backgroundColor.isLighter():e.isLighter()),this.onDidChangePresentation()},t.prototype.onDidChangePresentation=function(){this.pickedColorNode.textContent=this.model.presentation?this.model.presentation.label:""},t}(He),$j=function(e){function t(t,n,i){var o=e.call(this)||this;return o.model=n,o.pixelRatio=i,o.domNode=Yj(".colorpicker-body"),Xo(t,o.domNode),o.saturationBox=new Qj(o.domNode,o.model,o.pixelRatio),o._register(o.saturationBox),o._register(o.saturationBox.onDidChange(o.onDidSaturationValueChange,o)),o._register(o.saturationBox.onColorFlushed(o.flushColor,o)),o.opacityStrip=new eU(o.domNode,o.model),o._register(o.opacityStrip),o._register(o.opacityStrip.onDidChange(o.onDidOpacityChange,o)),o._register(o.opacityStrip.onColorFlushed(o.flushColor,o)),o.hueStrip=new tU(o.domNode,o.model),o._register(o.hueStrip),o._register(o.hueStrip.onDidChange(o.onDidHueChange,o)),o._register(o.hueStrip.onColorFlushed(o.flushColor,o)),o}return Zj(t,e),t.prototype.flushColor=function(){this.model.flushColor()},t.prototype.onDidSaturationValueChange=function(e){var t=e.s,n=e.v,i=this.model.color.hsva;this.model.color=new mv(new gv(i.h,t,n,i.a))},t.prototype.onDidOpacityChange=function(e){var t=this.model.color.hsva;this.model.color=new mv(new gv(t.h,t.s,t.v,e))},t.prototype.onDidHueChange=function(e){var t=this.model.color.hsva,n=360*(1-e);this.model.color=new mv(new gv(360===n?0:n,t.s,t.v,t.a))},t.prototype.layout=function(){this.saturationBox.layout(),this.opacityStrip.layout(),this.hueStrip.layout()},t}(He),Qj=function(e){function t(t,n,i){var o=e.call(this)||this;return o.model=n,o.pixelRatio=i,o._onDidChange=new nt,o.onDidChange=o._onDidChange.event,o._onColorFlushed=new nt,o.onColorFlushed=o._onColorFlushed.event,o.domNode=Yj(".saturation-wrap"),Xo(t,o.domNode),o.canvas=document.createElement("canvas"),o.canvas.className="saturation-box",Xo(o.domNode,o.canvas),o.selection=Yj(".saturation-selection"),Xo(o.domNode,o.selection),o.layout(),o._register(ho(o.domNode,(function(e){return o.onMouseDown(e)}))),o._register(o.model.onDidChangeColor(o.onDidChangeColor,o)),o.monitor=null,o}return Zj(t,e),t.prototype.onMouseDown=function(e){var t=this;this.monitor=this._register(new Kf);var n=Oo(this.domNode);e.target!==this.selection&&this.onDidChangePosition(e.offsetX,e.offsetY),this.monitor.startMonitoring(e.target,e.buttons,Uf,(function(e){return t.onDidChangePosition(e.posx-n.left,e.posy-n.top)}),(function(){return null}));var i=po(document,(function(){t._onColorFlushed.fire(),i.dispose(),t.monitor&&(t.monitor.stopMonitoring(!0),t.monitor=null)}),!0)},t.prototype.onDidChangePosition=function(e,t){var n=Math.max(0,Math.min(1,e/this.width)),i=Math.max(0,Math.min(1,1-t/this.height));this.paintSelection(n,i),this._onDidChange.fire({s:n,v:i})},t.prototype.layout=function(){this.width=this.domNode.offsetWidth,this.height=this.domNode.offsetHeight,this.canvas.width=this.width*this.pixelRatio,this.canvas.height=this.height*this.pixelRatio,this.paint();var e=this.model.color.hsva;this.paintSelection(e.s,e.v)},t.prototype.paint=function(){var e=this.model.color.hsva,t=new mv(new gv(e.h,1,1,1)),n=this.canvas.getContext("2d"),i=n.createLinearGradient(0,0,this.canvas.width,0);i.addColorStop(0,"rgba(255, 255, 255, 1)"),i.addColorStop(.5,"rgba(255, 255, 255, 0.5)"),i.addColorStop(1,"rgba(255, 255, 255, 0)");var o=n.createLinearGradient(0,0,0,this.canvas.height);o.addColorStop(0,"rgba(0, 0, 0, 0)"),o.addColorStop(1,"rgba(0, 0, 0, 1)"),n.rect(0,0,this.canvas.width,this.canvas.height),n.fillStyle=mv.Format.CSS.format(t),n.fill(),n.fillStyle=i,n.fill(),n.fillStyle=o,n.fill()},t.prototype.paintSelection=function(e,t){this.selection.style.left=e*this.width+"px",this.selection.style.top=this.height-t*this.height+"px"},t.prototype.onDidChangeColor=function(){this.monitor&&this.monitor.isMonitoring()||this.paint()},t}(He),Jj=function(e){function t(t,n){var i=e.call(this)||this;return i.model=n,i._onDidChange=new nt,i.onDidChange=i._onDidChange.event,i._onColorFlushed=new nt,i.onColorFlushed=i._onColorFlushed.event,i.domNode=Xo(t,Yj(".strip")),i.overlay=Xo(i.domNode,Yj(".overlay")),i.slider=Xo(i.domNode,Yj(".slider")),i.slider.style.top="0px",i._register(ho(i.domNode,(function(e){return i.onMouseDown(e)}))),i.layout(),i}return Zj(t,e),t.prototype.layout=function(){this.height=this.domNode.offsetHeight-this.slider.offsetHeight;var e=this.getValue(this.model.color);this.updateSliderPosition(e)},t.prototype.onMouseDown=function(e){var t=this,n=this._register(new Kf),i=Oo(this.domNode);no(this.domNode,"grabbing"),e.target!==this.slider&&this.onDidChangeTop(e.offsetY),n.startMonitoring(e.target,e.buttons,Uf,(function(e){return t.onDidChangeTop(e.posy-i.top)}),(function(){return null}));var o=po(document,(function(){t._onColorFlushed.fire(),o.dispose(),n.stopMonitoring(!0),oo(t.domNode,"grabbing")}),!0)},t.prototype.onDidChangeTop=function(e){var t=Math.max(0,Math.min(1,1-e/this.height));this.updateSliderPosition(t),this._onDidChange.fire(t)},t.prototype.updateSliderPosition=function(e){this.slider.style.top=(1-e)*this.height+"px"},t}(He),eU=function(e){function t(t,n){var i=e.call(this,t,n)||this;return no(i.domNode,"opacity-strip"),i._register(n.onDidChangeColor(i.onDidChangeColor,i)),i.onDidChangeColor(i.model.color),i}return Zj(t,e),t.prototype.onDidChangeColor=function(e){var t=e.rgba,n=t.r,i=t.g,o=t.b,r=new mv(new pv(n,i,o,1)),s=new mv(new pv(n,i,o,0));this.overlay.style.background="linear-gradient(to bottom, "+r+" 0%, "+s+" 100%)"},t.prototype.getValue=function(e){return e.hsva.a},t}(Jj),tU=function(e){function t(t,n){var i=e.call(this,t,n)||this;return no(i.domNode,"hue-strip"),i}return Zj(t,e),t.prototype.getValue=function(e){return 1-e.hsva.h/360},t}(Jj),nU=function(e){function t(t,n,i,o){var r=e.call(this)||this;r.model=n,r.pixelRatio=i,r._register(Fn((function(){return r.layout()})));var s=Yj(".colorpicker-widget");t.appendChild(s);var a=new Xj(s,r.model,o);return r.body=new $j(s,r.model,r.pixelRatio),r._register(a),r._register(r.body),r}return Zj(t,e),t.prototype.layout=function(){this.body.layout()},t}(KC);function iU(e,t,n){var i=Ou.ordered(e).map((function(i){return Promise.resolve(i.provideHover(e,t,n)).then((function(e){return e&&(n=void 0!==(t=e).range,i=void 0!==t.contents&&t.contents&&t.contents.length>0,n&&i)?e:void 0;var t,n,i}),(function(e){Ne(e)}))}));return Promise.all(i).then(Ei)}Of("_executeHoverProvider",(function(e,t){return iU(e,t,et.None)}));var oU,rU=function(){function e(e,t,n,i,o){var r=this;this._computer=e,this._state=0,this._hoverTime=o,this._firstWaitScheduler=new wi((function(){return r._triggerAsyncComputation()}),0),this._secondWaitScheduler=new wi((function(){return r._triggerSyncComputation()}),0),this._loadingMessageScheduler=new wi((function(){return r._showLoadingMessage()}),0),this._asyncComputationPromise=null,this._asyncComputationPromiseDone=!1,this._completeCallback=t,this._errorCallback=n,this._progressCallback=i}return e.prototype.setHoverTime=function(e){this._hoverTime=e},e.prototype._firstWaitTime=function(){return this._hoverTime/2},e.prototype._secondWaitTime=function(){return this._hoverTime/2},e.prototype._loadingMessageTime=function(){return 3*this._hoverTime},e.prototype._triggerAsyncComputation=function(){var e=this;this._state=2,this._secondWaitScheduler.schedule(this._secondWaitTime()),this._computer.computeAsync?(this._asyncComputationPromiseDone=!1,this._asyncComputationPromise=hi((function(t){return e._computer.computeAsync(t)})),this._asyncComputationPromise.then((function(t){e._asyncComputationPromiseDone=!0,e._withAsyncResult(t)}),(function(t){return e._onError(t)}))):this._asyncComputationPromiseDone=!0},e.prototype._triggerSyncComputation=function(){this._computer.computeSync&&this._computer.onResult(this._computer.computeSync(),!0),this._asyncComputationPromiseDone?(this._state=0,this._onComplete(this._computer.getResult())):(this._state=3,this._onProgress(this._computer.getResult()))},e.prototype._showLoadingMessage=function(){3===this._state&&this._onProgress(this._computer.getResultWithLoadingMessage())},e.prototype._withAsyncResult=function(e){e&&this._computer.onResult(e,!1),3===this._state&&(this._state=0,this._onComplete(this._computer.getResult()))},e.prototype._onComplete=function(e){this._completeCallback&&this._completeCallback(e)},e.prototype._onError=function(e){this._errorCallback?this._errorCallback(e):De(e)},e.prototype._onProgress=function(e){this._progressCallback&&this._progressCallback(e)},e.prototype.start=function(e){if(0===e)0===this._state&&(this._state=1,this._firstWaitScheduler.schedule(this._firstWaitTime()),this._loadingMessageScheduler.schedule(this._loadingMessageTime()));else switch(this._state){case 0:this._triggerAsyncComputation(),this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break;case 2:this._secondWaitScheduler.cancel(),this._triggerSyncComputation()}},e.prototype.cancel=function(){this._loadingMessageScheduler.cancel(),1===this._state&&this._firstWaitScheduler.cancel(),2===this._state&&(this._secondWaitScheduler.cancel(),this._asyncComputationPromise&&(this._asyncComputationPromise.cancel(),this._asyncComputationPromise=null)),3===this._state&&this._asyncComputationPromise&&(this._asyncComputationPromise.cancel(),this._asyncComputationPromise=null),this._state=0},e}(),sU=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),aU=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},uU=function(e){function t(t,n){var i=e.call(this)||this;return i.allowEditorOverflow=!0,i._id=t,i._editor=n,i._isVisible=!1,i._stoleFocus=!1,i._containerDomNode=document.createElement("div"),i._containerDomNode.className="monaco-editor-hover hidden",i._containerDomNode.tabIndex=0,i._domNode=document.createElement("div"),i._domNode.className="monaco-editor-hover-content",i.scrollbar=new gS(i._domNode,{}),i._register(i.scrollbar),i._containerDomNode.appendChild(i.scrollbar.getDomNode()),i.onkeydown(i._containerDomNode,(function(e){e.equals(9)&&i.hide()})),i._register(i._editor.onDidChangeConfiguration((function(e){e.hasChanged(34)&&i.updateFont()}))),i._editor.onDidLayoutChange((function(e){return i.layout()})),i.layout(),i._editor.addContentWidget(i),i._showAtPosition=null,i._showAtRange=null,i._stoleFocus=!1,i}return sU(t,e),Object.defineProperty(t.prototype,"isVisible",{get:function(){return this._isVisible},set:function(e){this._isVisible=e,so(this._containerDomNode,"hidden",!this._isVisible)},enumerable:!0,configurable:!0}),t.prototype.getId=function(){return this._id},t.prototype.getDomNode=function(){return this._containerDomNode},t.prototype.showAt=function(e,t,n){this._showAtPosition=e,this._showAtRange=t,this.isVisible=!0,this._editor.layoutContentWidget(this),this._editor.render(),this._stoleFocus=n,n&&this._containerDomNode.focus()},t.prototype.hide=function(){this.isVisible&&(this.isVisible=!1,this._editor.layoutContentWidget(this),this._stoleFocus&&this._editor.focus())},t.prototype.getPosition=function(){return this.isVisible?{position:this._showAtPosition,range:this._showAtRange,preference:[1,2]}:null},t.prototype.dispose=function(){this._editor.removeContentWidget(this),e.prototype.dispose.call(this)},t.prototype.updateFont=function(){var e=this;Array.prototype.slice.call(this._domNode.getElementsByClassName("code")).forEach((function(t){return e._editor.applyFontInfo(t)}))},t.prototype.updateContents=function(e){this._domNode.textContent="",this._domNode.appendChild(e),this.updateFont(),this._editor.layoutContentWidget(this),this.onContentsChange()},t.prototype.onContentsChange=function(){this.scrollbar.scanDomNode()},t.prototype.layout=function(){var e=Math.max(this._editor.getLayoutInfo().height/4,250),t=this._editor.getOption(34),n=t.fontSize,i=t.lineHeight;this._domNode.style.fontSize=n+"px",this._domNode.style.lineHeight=i+"px",this._domNode.style.maxHeight=e+"px",this._domNode.style.maxWidth=Math.max(.66*this._editor.getLayoutInfo().width,500)+"px"},t}(KC),lU=function(e){function t(t,n){var i=e.call(this)||this;return i._id=t,i._editor=n,i._isVisible=!1,i._domNode=document.createElement("div"),i._domNode.className="monaco-editor-hover hidden",i._domNode.setAttribute("aria-hidden","true"),i._domNode.setAttribute("role","presentation"),i._showAtLineNumber=-1,i._register(i._editor.onDidChangeConfiguration((function(e){e.hasChanged(34)&&i.updateFont()}))),i._editor.addOverlayWidget(i),i}return sU(t,e),Object.defineProperty(t.prototype,"isVisible",{get:function(){return this._isVisible},set:function(e){this._isVisible=e,so(this._domNode,"hidden",!this._isVisible)},enumerable:!0,configurable:!0}),t.prototype.getId=function(){return this._id},t.prototype.getDomNode=function(){return this._domNode},t.prototype.showAt=function(e){this._showAtLineNumber=e,this.isVisible||(this.isVisible=!0);var t=this._editor.getLayoutInfo(),n=this._editor.getTopForLineNumber(this._showAtLineNumber),i=this._editor.getScrollTop(),o=this._editor.getOption(49),r=n-i-(this._domNode.clientHeight-o)/2;this._domNode.style.left=t.glyphMarginLeft+t.glyphMarginWidth+"px",this._domNode.style.top=Math.max(Math.round(r),0)+"px"},t.prototype.hide=function(){this.isVisible&&(this.isVisible=!1)},t.prototype.getPosition=function(){return null},t.prototype.dispose=function(){this._editor.removeOverlayWidget(this),e.prototype.dispose.call(this)},t.prototype.updateFont=function(){var e=this,t=Array.prototype.slice.call(this._domNode.getElementsByTagName("code")),n=Array.prototype.slice.call(this._domNode.getElementsByClassName("code"));aU(t,n).forEach((function(t){return e._editor.applyFontInfo(t)}))},t.prototype.updateContents=function(e){this._domNode.textContent="",this._domNode.appendChild(e),this.updateFont()},t}(KC);(function(e){var t={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:g,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/,nptable:g,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?\\?>\\n*|<![A-Z][\\s\\S]*?>\\n*|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>\\n*|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)|</(?!script|pre|style)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$))",def:/^ {0,3}\[(label)\]: *\n? *<?([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,table:g,lheading:/^([^\n]+)\n *(=|-){2,} *(?:\n+|$)/,paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading| {0,3}>|<\/?(?:tag)(?: +|\n|\/?>)|<(?:script|pre|style|!--))[^\n]+)*)/,text:/^[^\n]+/};function n(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||b.defaults,this.rules=t.normal,this.options.pedantic?this.rules=t.pedantic:this.options.gfm&&(this.options.tables?this.rules=t.tables:this.rules=t.gfm)}t._label=/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,t._title=/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/,t.def=d(t.def).replace("label",t._label).replace("title",t._title).getRegex(),t.bullet=/(?:[*+-]|\d{1,9}\.)/,t.item=/^( *)(bull) ?[^\n]*(?:\n(?!\1bull ?)[^\n]*)*/,t.item=d(t.item,"gm").replace(/bull/g,t.bullet).getRegex(),t.list=d(t.list).replace(/bull/g,t.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+t.def.source+")").getRegex(),t._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",t._comment=/<!--(?!-?>)[\s\S]*?-->/,t.html=d(t.html,"i").replace("comment",t._comment).replace("tag",t._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),t.paragraph=d(t.paragraph).replace("hr",t.hr).replace("heading",t.heading).replace("lheading",t.lheading).replace("tag",t._tag).getRegex(),t.blockquote=d(t.blockquote).replace("paragraph",t.paragraph).getRegex(),t.normal=m({},t),t.gfm=m({},t.normal,{fences:/^ {0,3}(`{3,}|~{3,})([^`\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,paragraph:/^/,heading:/^ *(#{1,6}) +([^\n]+?) *#* *(?:\n+|$)/}),t.gfm.paragraph=d(t.paragraph).replace("(?!","(?!"+t.gfm.fences.source.replace("\\1","\\2")+"|"+t.list.source.replace("\\1","\\3")+"|").getRegex(),t.tables=m({},t.gfm,{nptable:/^ *([^|\n ].*\|.*)\n *([-:]+ *\|[-| :]*)(?:\n((?:.*[^>\n ].*(?:\n|$))*)\n*|$)/,table:/^ *\|(.+)\n *\|?( *[-:]+[-| :]*)(?:\n((?: *[^>\n ].*(?:\n|$))*)\n*|$)/}),t.pedantic=m({},t.normal,{html:d("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",t._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/}),n.rules=t,n.lex=function(e,t){return new n(t).lex(e)},n.prototype.lex=function(e){return e=e.replace(/\r\n|\r/g,"\n").replace(/\t/g," ").replace(/\u00a0/g," ").replace(/\u2424/g,"\n"),this.token(e,!0)},n.prototype.token=function(e,n){var i,o,r,s,a,u,l,c,d,h,p,f,g,m,y,b;for(e=e.replace(/^ +$/gm,"");e;)if((r=this.rules.newline.exec(e))&&(e=e.substring(r[0].length),r[0].length>1&&this.tokens.push({type:"space"})),r=this.rules.code.exec(e))e=e.substring(r[0].length),r=r[0].replace(/^ {4}/gm,""),this.tokens.push({type:"code",text:this.options.pedantic?r:_(r,"\n")});else if(r=this.rules.fences.exec(e))e=e.substring(r[0].length),this.tokens.push({type:"code",lang:r[2]?r[2].trim():r[2],text:r[3]||""});else if(r=this.rules.heading.exec(e))e=e.substring(r[0].length),this.tokens.push({type:"heading",depth:r[1].length,text:r[2]});else if((r=this.rules.nptable.exec(e))&&(u={type:"table",header:v(r[1].replace(/^ *| *\| *$/g,"")),align:r[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:r[3]?r[3].replace(/\n$/,"").split("\n"):[]}).header.length===u.align.length){for(e=e.substring(r[0].length),p=0;p<u.align.length;p++)/^ *-+: *$/.test(u.align[p])?u.align[p]="right":/^ *:-+: *$/.test(u.align[p])?u.align[p]="center":/^ *:-+ *$/.test(u.align[p])?u.align[p]="left":u.align[p]=null;for(p=0;p<u.cells.length;p++)u.cells[p]=v(u.cells[p],u.header.length);this.tokens.push(u)}else if(r=this.rules.hr.exec(e))e=e.substring(r[0].length),this.tokens.push({type:"hr"});else if(r=this.rules.blockquote.exec(e))e=e.substring(r[0].length),this.tokens.push({type:"blockquote_start"}),r=r[0].replace(/^ *> ?/gm,""),this.token(r,n),this.tokens.push({type:"blockquote_end"});else if(r=this.rules.list.exec(e)){for(e=e.substring(r[0].length),l={type:"list_start",ordered:m=(s=r[2]).length>1,start:m?+s:"",loose:!1},this.tokens.push(l),c=[],i=!1,g=(r=r[0].match(this.rules.item)).length,p=0;p<g;p++)h=(u=r[p]).length,~(u=u.replace(/^ *([*+-]|\d+\.) */,"")).indexOf("\n ")&&(h-=u.length,u=this.options.pedantic?u.replace(/^ {1,4}/gm,""):u.replace(new RegExp("^ {1,"+h+"}","gm"),"")),p!==g-1&&(a=t.bullet.exec(r[p+1])[0],(s.length>1?1===a.length:a.length>1||this.options.smartLists&&a!==s)&&(e=r.slice(p+1).join("\n")+e,p=g-1)),o=i||/\n\n(?!\s*$)/.test(u),p!==g-1&&(i="\n"===u.charAt(u.length-1),o||(o=i)),o&&(l.loose=!0),b=void 0,(y=/^\[[ xX]\] /.test(u))&&(b=" "!==u[1],u=u.replace(/^\[[ xX]\] +/,"")),d={type:"list_item_start",task:y,checked:b,loose:o},c.push(d),this.tokens.push(d),this.token(u,!1),this.tokens.push({type:"list_item_end"});if(l.loose)for(g=c.length,p=0;p<g;p++)c[p].loose=!0;this.tokens.push({type:"list_end"})}else if(r=this.rules.html.exec(e))e=e.substring(r[0].length),this.tokens.push({type:this.options.sanitize?"paragraph":"html",pre:!this.options.sanitizer&&("pre"===r[1]||"script"===r[1]||"style"===r[1]),text:r[0]});else if(n&&(r=this.rules.def.exec(e)))e=e.substring(r[0].length),r[3]&&(r[3]=r[3].substring(1,r[3].length-1)),f=r[1].toLowerCase().replace(/\s+/g," "),this.tokens.links[f]||(this.tokens.links[f]={href:r[2],title:r[3]});else if((r=this.rules.table.exec(e))&&(u={type:"table",header:v(r[1].replace(/^ *| *\| *$/g,"")),align:r[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:r[3]?r[3].replace(/\n$/,"").split("\n"):[]}).header.length===u.align.length){for(e=e.substring(r[0].length),p=0;p<u.align.length;p++)/^ *-+: *$/.test(u.align[p])?u.align[p]="right":/^ *:-+: *$/.test(u.align[p])?u.align[p]="center":/^ *:-+ *$/.test(u.align[p])?u.align[p]="left":u.align[p]=null;for(p=0;p<u.cells.length;p++)u.cells[p]=v(u.cells[p].replace(/^ *\| *| *\| *$/g,""),u.header.length);this.tokens.push(u)}else if(r=this.rules.lheading.exec(e))e=e.substring(r[0].length),this.tokens.push({type:"heading",depth:"="===r[2]?1:2,text:r[1]});else if(n&&(r=this.rules.paragraph.exec(e)))e=e.substring(r[0].length),this.tokens.push({type:"paragraph",text:"\n"===r[1].charAt(r[1].length-1)?r[1].slice(0,-1):r[1]});else if(r=this.rules.text.exec(e))e=e.substring(r[0].length),this.tokens.push({type:"text",text:r[0]});else if(e)throw new Error("Infinite loop on byte: "+e.charCodeAt(0));return this.tokens};var i={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:g,tag:"^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",link:/^!?\[(label)\]\(href(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,strong:/^__([^\s_])__(?!_)|^\*\*([^\s*])\*\*(?!\*)|^__([^\s][\s\S]*?[^\s])__(?!_)|^\*\*([^\s][\s\S]*?[^\s])\*\*(?!\*)/,em:/^_([^\s_])_(?!_)|^\*([^\s*"<\[])\*(?!\*)|^_([^\s][\s\S]*?[^\s_])_(?!_|[^\spunctuation])|^_([^\s_][\s\S]*?[^\s])_(?!_|[^\spunctuation])|^\*([^\s"<\[][\s\S]*?[^\s*])\*(?!\*)|^\*([^\s*"<\[][\s\S]*?[^\s])\*(?!\*)/,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:g,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*]|\b_|$)|[^ ](?= {2,}\n))|(?= {2,}\n))/};function o(e,t){if(this.options=t||b.defaults,this.links=e,this.rules=i.normal,this.renderer=this.options.renderer||new r,this.renderer.options=this.options,!this.links)throw new Error("Tokens array requires a `links` property.");this.options.pedantic?this.rules=i.pedantic:this.options.gfm&&(this.options.breaks?this.rules=i.breaks:this.rules=i.gfm)}function r(e){this.options=e||b.defaults}function s(){}function a(e){this.tokens=[],this.token=null,this.options=e||b.defaults,this.options.renderer=this.options.renderer||new r,this.renderer=this.options.renderer,this.renderer.options=this.options,this.slugger=new u}function u(){this.seen={}}function l(e,t){if(t){if(l.escapeTest.test(e))return e.replace(l.escapeReplace,(function(e){return l.replacements[e]}))}else if(l.escapeTestNoEncode.test(e))return e.replace(l.escapeReplaceNoEncode,(function(e){return l.replacements[e]}));return e}function c(e){return e.replace(/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi,(function(e,t){return"colon"===(t=t.toLowerCase())?":":"#"===t.charAt(0)?"x"===t.charAt(1)?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""}))}function d(e,t){return e=e.source||e,t=t||"",{replace:function(t,n){return n=(n=n.source||n).replace(/(^|[^\[])\^/g,"$1"),e=e.replace(t,n),this},getRegex:function(){return new RegExp(e,t)}}}function h(e,t,n){if(e){try{var i=decodeURIComponent(c(n)).replace(/[^\w:]/g,"").toLowerCase()}catch(e){return null}if(0===i.indexOf("javascript:")||0===i.indexOf("vbscript:")||0===i.indexOf("data:"))return null}t&&!f.test(n)&&(n=function(e,t){p[" "+e]||(/^[^:]+:\/*[^/]*$/.test(e)?p[" "+e]=e+"/":p[" "+e]=_(e,"/",!0));return e=p[" "+e],"//"===t.slice(0,2)?e.replace(/:[\s\S]*/,":")+t:"/"===t.charAt(0)?e.replace(/(:\/*[^/]*)[\s\S]*/,"$1")+t:e+t}(t,n));try{n=encodeURI(n).replace(/%25/g,"%")}catch(e){return null}return n}i._punctuation="!\"#$%&'()*+,\\-./:;<=>?@\\[^_{|}~",i.em=d(i.em).replace(/punctuation/g,i._punctuation).getRegex(),i._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,i._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,i._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,i.autolink=d(i.autolink).replace("scheme",i._scheme).replace("email",i._email).getRegex(),i._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,i.tag=d(i.tag).replace("comment",t._comment).replace("attribute",i._attribute).getRegex(),i._label=/(?:\[[^\[\]]*\]|\\[\[\]]?|`[^`]*`|`(?!`)|[^\[\]\\`])*?/,i._href=/\s*(<(?:\\[<>]?|[^\s<>\\])*>|[^\s\x00-\x1f]*)/,i._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,i.link=d(i.link).replace("label",i._label).replace("href",i._href).replace("title",i._title).getRegex(),i.reflink=d(i.reflink).replace("label",i._label).getRegex(),i.normal=m({},i),i.pedantic=m({},i.normal,{strong:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,em:/^_(?=\S)([\s\S]*?\S)_(?!_)|^\*(?=\S)([\s\S]*?\S)\*(?!\*)/,link:d(/^!?\[(label)\]\((.*?)\)/).replace("label",i._label).getRegex(),reflink:d(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",i._label).getRegex()}),i.gfm=m({},i.normal,{escape:d(i.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^~+(?=\S)([\s\S]*?\S)~+/,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*~]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))|(?= {2,}\n|[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))/}),i.gfm.url=d(i.gfm.url,"i").replace("email",i.gfm._extended_email).getRegex(),i.breaks=m({},i.gfm,{br:d(i.br).replace("{2,}","*").getRegex(),text:d(i.gfm.text).replace(/\{2,\}/g,"*").getRegex()}),o.rules=i,o.output=function(e,t,n){return new o(t,n).output(e)},o.prototype.output=function(e){for(var t,n,i,r,s,a,u="";e;)if(s=this.rules.escape.exec(e))e=e.substring(s[0].length),u+=l(s[1]);else if(s=this.rules.tag.exec(e))!this.inLink&&/^<a /i.test(s[0])?this.inLink=!0:this.inLink&&/^<\/a>/i.test(s[0])&&(this.inLink=!1),!this.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(s[0])?this.inRawBlock=!0:this.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(s[0])&&(this.inRawBlock=!1),e=e.substring(s[0].length),u+=this.options.sanitize?this.options.sanitizer?this.options.sanitizer(s[0]):l(s[0]):s[0];else if(s=this.rules.link.exec(e)){var c=y(s[2],"()");if(c>-1){var d=s[0].length-(s[2].length-c)-(s[3]||"").length;s[2]=s[2].substring(0,c),s[0]=s[0].substring(0,d).trim(),s[3]=""}e=e.substring(s[0].length),this.inLink=!0,i=s[2],this.options.pedantic?(t=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(i))?(i=t[1],r=t[3]):r="":r=s[3]?s[3].slice(1,-1):"",i=i.trim().replace(/^<([\s\S]*)>$/,"$1"),u+=this.outputLink(s,{href:o.escapes(i),title:o.escapes(r)}),this.inLink=!1}else if((s=this.rules.reflink.exec(e))||(s=this.rules.nolink.exec(e))){if(e=e.substring(s[0].length),t=(s[2]||s[1]).replace(/\s+/g," "),!(t=this.links[t.toLowerCase()])||!t.href){u+=s[0].charAt(0),e=s[0].substring(1)+e;continue}this.inLink=!0,u+=this.outputLink(s,t),this.inLink=!1}else if(s=this.rules.strong.exec(e))e=e.substring(s[0].length),u+=this.renderer.strong(this.output(s[4]||s[3]||s[2]||s[1]));else if(s=this.rules.em.exec(e))e=e.substring(s[0].length),u+=this.renderer.em(this.output(s[6]||s[5]||s[4]||s[3]||s[2]||s[1]));else if(s=this.rules.code.exec(e))e=e.substring(s[0].length),u+=this.renderer.codespan(l(s[2].trim(),!0));else if(s=this.rules.br.exec(e))e=e.substring(s[0].length),u+=this.renderer.br();else if(s=this.rules.del.exec(e))e=e.substring(s[0].length),u+=this.renderer.del(this.output(s[1]));else if(s=this.rules.autolink.exec(e))e=e.substring(s[0].length),i="@"===s[2]?"mailto:"+(n=l(this.mangle(s[1]))):n=l(s[1]),u+=this.renderer.link(i,null,n);else if(this.inLink||!(s=this.rules.url.exec(e))){if(s=this.rules.text.exec(e))e=e.substring(s[0].length),this.inRawBlock?u+=this.renderer.text(s[0]):u+=this.renderer.text(l(this.smartypants(s[0])));else if(e)throw new Error("Infinite loop on byte: "+e.charCodeAt(0))}else{if("@"===s[2])i="mailto:"+(n=l(s[0]));else{do{a=s[0],s[0]=this.rules._backpedal.exec(s[0])[0]}while(a!==s[0]);n=l(s[0]),i="www."===s[1]?"http://"+n:n}e=e.substring(s[0].length),u+=this.renderer.link(i,null,n)}return u},o.escapes=function(e){return e?e.replace(o.rules._escapes,"$1"):e},o.prototype.outputLink=function(e,t){var n=t.href,i=t.title?l(t.title):null;return"!"!==e[0].charAt(0)?this.renderer.link(n,i,this.output(e[1])):this.renderer.image(n,i,l(e[1]))},o.prototype.smartypants=function(e){return this.options.smartypants?e.replace(/---/g,"—").replace(/--/g,"–").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1‘").replace(/'/g,"’").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1“").replace(/"/g,"”").replace(/\.{3}/g,"…"):e},o.prototype.mangle=function(e){if(!this.options.mangle)return e;for(var t,n="",i=e.length,o=0;o<i;o++)t=e.charCodeAt(o),Math.random()>.5&&(t="x"+t.toString(16)),n+="&#"+t+";";return n},r.prototype.code=function(e,t,n){var i=(t||"").match(/\S*/)[0];if(this.options.highlight){var o=this.options.highlight(e,i);null!=o&&o!==e&&(n=!0,e=o)}return i?'<pre><code class="'+this.options.langPrefix+l(i,!0)+'">'+(n?e:l(e,!0))+"</code></pre>\n":"<pre><code>"+(n?e:l(e,!0))+"</code></pre>"},r.prototype.blockquote=function(e){return"<blockquote>\n"+e+"</blockquote>\n"},r.prototype.html=function(e){return e},r.prototype.heading=function(e,t,n,i){return this.options.headerIds?"<h"+t+' id="'+this.options.headerPrefix+i.slug(n)+'">'+e+"</h"+t+">\n":"<h"+t+">"+e+"</h"+t+">\n"},r.prototype.hr=function(){return this.options.xhtml?"<hr/>\n":"<hr>\n"},r.prototype.list=function(e,t,n){var i=t?"ol":"ul";return"<"+i+(t&&1!==n?' start="'+n+'"':"")+">\n"+e+"</"+i+">\n"},r.prototype.listitem=function(e){return"<li>"+e+"</li>\n"},r.prototype.checkbox=function(e){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox"'+(this.options.xhtml?" /":"")+"> "},r.prototype.paragraph=function(e){return"<p>"+e+"</p>\n"},r.prototype.table=function(e,t){return t&&(t="<tbody>"+t+"</tbody>"),"<table>\n<thead>\n"+e+"</thead>\n"+t+"</table>\n"},r.prototype.tablerow=function(e){return"<tr>\n"+e+"</tr>\n"},r.prototype.tablecell=function(e,t){var n=t.header?"th":"td";return(t.align?"<"+n+' align="'+t.align+'">':"<"+n+">")+e+"</"+n+">\n"},r.prototype.strong=function(e){return"<strong>"+e+"</strong>"},r.prototype.em=function(e){return"<em>"+e+"</em>"},r.prototype.codespan=function(e){return"<code>"+e+"</code>"},r.prototype.br=function(){return this.options.xhtml?"<br/>":"<br>"},r.prototype.del=function(e){return"<del>"+e+"</del>"},r.prototype.link=function(e,t,n){if(null===(e=h(this.options.sanitize,this.options.baseUrl,e)))return n;var i='<a href="'+l(e)+'"';return t&&(i+=' title="'+t+'"'),i+=">"+n+"</a>"},r.prototype.image=function(e,t,n){if(null===(e=h(this.options.sanitize,this.options.baseUrl,e)))return n;var i='<img src="'+e+'" alt="'+n+'"';return t&&(i+=' title="'+t+'"'),i+=this.options.xhtml?"/>":">"},r.prototype.text=function(e){return e},s.prototype.strong=s.prototype.em=s.prototype.codespan=s.prototype.del=s.prototype.text=function(e){return e},s.prototype.link=s.prototype.image=function(e,t,n){return""+n},s.prototype.br=function(){return""},a.parse=function(e,t){return new a(t).parse(e)},a.prototype.parse=function(e){this.inline=new o(e.links,this.options),this.inlineText=new o(e.links,m({},this.options,{renderer:new s})),this.tokens=e.reverse();for(var t="";this.next();)t+=this.tok();return t},a.prototype.next=function(){return this.token=this.tokens.pop()},a.prototype.peek=function(){return this.tokens[this.tokens.length-1]||0},a.prototype.parseText=function(){for(var e=this.token.text;"text"===this.peek().type;)e+="\n"+this.next().text;return this.inline.output(e)},a.prototype.tok=function(){switch(this.token.type){case"space":return"";case"hr":return this.renderer.hr();case"heading":return this.renderer.heading(this.inline.output(this.token.text),this.token.depth,c(this.inlineText.output(this.token.text)),this.slugger);case"code":return this.renderer.code(this.token.text,this.token.lang,this.token.escaped);case"table":var e,t,n,i,o="",r="";for(n="",e=0;e<this.token.header.length;e++)n+=this.renderer.tablecell(this.inline.output(this.token.header[e]),{header:!0,align:this.token.align[e]});for(o+=this.renderer.tablerow(n),e=0;e<this.token.cells.length;e++){for(t=this.token.cells[e],n="",i=0;i<t.length;i++)n+=this.renderer.tablecell(this.inline.output(t[i]),{header:!1,align:this.token.align[i]});r+=this.renderer.tablerow(n)}return this.renderer.table(o,r);case"blockquote_start":for(r="";"blockquote_end"!==this.next().type;)r+=this.tok();return this.renderer.blockquote(r);case"list_start":r="";for(var s=this.token.ordered,a=this.token.start;"list_end"!==this.next().type;)r+=this.tok();return this.renderer.list(r,s,a);case"list_item_start":r="";var u=this.token.loose,l=this.token.checked,d=this.token.task;for(this.token.task&&(r+=this.renderer.checkbox(l));"list_item_end"!==this.next().type;)r+=u||"text"!==this.token.type?this.tok():this.parseText();return this.renderer.listitem(r,d,l);case"html":return this.renderer.html(this.token.text);case"paragraph":return this.renderer.paragraph(this.inline.output(this.token.text));case"text":return this.renderer.paragraph(this.parseText());default:var h='Token with "'+this.token.type+'" type was not found.';if(!this.options.silent)throw new Error(h);console.log(h)}},u.prototype.slug=function(e){var t=e.toLowerCase().trim().replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-");if(this.seen.hasOwnProperty(t)){var n=t;do{this.seen[n]++,t=n+"-"+this.seen[n]}while(this.seen.hasOwnProperty(t))}return this.seen[t]=0,t},l.escapeTest=/[&<>"']/,l.escapeReplace=/[&<>"']/g,l.replacements={"&":"&","<":"<",">":">",'"':""","'":"'"},l.escapeTestNoEncode=/[<>"']|&(?!#?\w+;)/,l.escapeReplaceNoEncode=/[<>"']|&(?!#?\w+;)/g;var p={},f=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;function g(){}function m(e){for(var t,n,i=1;i<arguments.length;i++)for(n in t=arguments[i])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}function v(e,t){var n=e.replace(/\|/g,(function(e,t,n){for(var i=!1,o=t;--o>=0&&"\\"===n[o];)i=!i;return i?"|":" |"})).split(/ \|/),i=0;if(n.length>t)n.splice(t);else for(;n.length<t;)n.push("");for(;i<n.length;i++)n[i]=n[i].trim().replace(/\\\|/g,"|");return n}function _(e,t,n){if(0===e.length)return"";for(var i=0;i<e.length;){var o=e.charAt(e.length-i-1);if(o!==t||n){if(o===t||!n)break;i++}else i++}return e.substr(0,e.length-i)}function y(e,t){if(-1===e.indexOf(t[1]))return-1;for(var n=0,i=0;i<e.length;i++)if("\\"===e[i])i++;else if(e[i]===t[0])n++;else if(e[i]===t[1]&&--n<0)return i;return-1}function b(e,t,i){if(null==e)throw new Error("marked(): input parameter is undefined or null");if("string"!=typeof e)throw new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected");if(i||"function"==typeof t){i||(i=t,t=null);var o,r,s=(t=m({},b.defaults,t||{})).highlight,u=0;try{o=n.lex(e,t)}catch(e){return i(e)}r=o.length;var c=function(e){if(e)return t.highlight=s,i(e);var n;try{n=a.parse(o,t)}catch(t){e=t}return t.highlight=s,e?i(e):i(null,n)};if(!s||s.length<3)return c();if(delete t.highlight,!r)return c();for(;u<o.length;u++)!function(e){"code"!==e.type?--r||c():s(e.text,e.lang,(function(t,n){return t?c(t):null==n||n===e.text?--r||c():(e.text=n,e.escaped=!0,void(--r||c()))}))}(o[u])}else try{return t&&(t=m({},b.defaults,t)),a.parse(n.lex(e,t),t)}catch(e){if(e.message+="\nPlease report this to https://github.com/markedjs/marked.",(t||b.defaults).silent)return"<p>An error occurred:</p><pre>"+l(e.message+"",!0)+"</pre>";throw e}}g.exec=g,b.options=b.setOptions=function(e){return m(b.defaults,e),b},b.getDefaults=function(){return{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:new r,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tables:!0,xhtml:!1}},b.defaults=b.getDefaults(),b.Parser=a,b.parser=a.parse,b.Renderer=r,b.TextRenderer=s,b.Lexer=n,b.lexer=n.lex,b.InlineLexer=o,b.inlineLexer=o.output,b.Slugger=u,b.parse=b,oU=b}).call(void 0);oU.Parser,oU.parser;var cU=oU.Renderer,dU=(oU.TextRenderer,oU.Lexer,oU.lexer,oU.InlineLexer,oU.inlineLexer,oU.parse);let hU;!function e(t,n,i){function o(s,a){if(!n[s]){if(!t[s]){if(r)return r(s,!0);var u=new Error("Cannot find module '"+s+"'");throw u.code="MODULE_NOT_FOUND",u}var l=n[s]={exports:{}};t[s][0].call(l.exports,(function(e){return o(t[s][1][e]||e)}),l,l.exports,e,t,n,i)}return n[s].exports}for(var r=!1,s=0;s<i.length;s++)o(i[s]);return o}({1:[function(e,t,n){var i=e("./toMap");t.exports={uris:i(["background","base","cite","href","longdesc","src","usemap"])}},{"./toMap":10}],2:[function(e,t,n){t.exports={allowedAttributes:{"*":["title","accesskey"],a:["href","name","target","aria-label"],iframe:["allowfullscreen","frameborder","src"],img:["src","alt","title","aria-label"]},allowedClasses:{},allowedSchemes:["http","https","mailto"],allowedTags:["a","abbr","article","b","blockquote","br","caption","code","del","details","div","em","h1","h2","h3","h4","h5","h6","hr","i","img","ins","kbd","li","main","mark","ol","p","pre","section","span","strike","strong","sub","summary","sup","table","tbody","td","th","thead","tr","u","ul"],filter:null}},{}],3:[function(e,t,n){var i=e("./toMap");t.exports={voids:i(["area","br","col","hr","img","wbr","input","base","basefont","link","meta"])}},{"./toMap":10}],4:[function(e,t,n){e("he");var i=e("assignment"),o=e("./parser"),r=e("./sanitizer"),s=e("./defaults");function a(e,t,n){var a=[],u=!0===n?t:i({},s,t),l=r(a,u);return o(e,l),a.join("")}a.defaults=s,t.exports=a,hU=a},{"./defaults":2,"./parser":7,"./sanitizer":8,assignment:6,he:9}],5:[function(e,t,n){t.exports=function(e){return"string"==typeof e?e.toLowerCase():e}},{}],6:[function(e,t,n){t.exports=function e(t){for(var n,i,o=Array.prototype.slice.call(arguments,1);o.length;)for(i in n=o.shift())n.hasOwnProperty(i)&&("[object Object]"===Object.prototype.toString.call(t[i])?t[i]=e(t[i],n[i]):t[i]=n[i]);return t}},{}],7:[function(e,t,n){var i=e("he"),o=e("./lowercase"),r=(e("./attributes"),e("./elements")),s=/^<\s*([\w:-]+)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*>/,a=/^<\s*\/\s*([\w:-]+)[^>]*>/,u=/([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g,l=/^</,c=/^<\s*\//;t.exports=function(e,t){for(var n,d=function(){var e=[];return e.lastItem=function(){return e[e.length-1]},e}(),h=e;e;)p();function p(){n=!0,function(){"\x3c!--"===e.substr(0,4)?(i=e.indexOf("--\x3e"))>=0&&(t.comment&&t.comment(e.substring(4,i)),e=e.substring(i+3),n=!1):c.test(e)?f(a,m):l.test(e)&&f(s,g);var i;!function(){if(!n)return;var i,o=e.indexOf("<");o>=0?(i=e.substring(0,o),e=e.substring(o)):(i=e,e="");t.chars&&t.chars(i)}()}();var i=e===h;h=e,i&&(e="")}function f(t,i){var o=e.match(t);o&&(e=e.substring(o[0].length),o[0].replace(t,i),n=!1)}function g(e,n,s,a){var l={},c=o(n),h=r.voids[c]||!!a;s.replace(u,(function(e,t,n,o,r){l[t]=void 0===n&&void 0===o&&void 0===r?void 0:i.decode(n||o||r||"")})),h||d.push(c),t.start&&t.start(c,l,h)}function m(e,n){var i,r=0,s=o(n);if(s)for(r=d.length-1;r>=0&&d[r]!==s;r--);if(r>=0){for(i=d.length-1;i>=r;i--)t.end&&t.end(d[i]);d.length=r}}m()}},{"./attributes":1,"./elements":3,"./lowercase":5,he:9}],8:[function(e,t,n){var i=e("he"),o=e("./lowercase"),r=e("./attributes"),s=e("./elements");t.exports=function(e,t){var n,a=t||{};return d(),{start:function(e,t,s){var c=o(e);if(n.ignoring)return void l(c);if(-1===(a.allowedTags||[]).indexOf(c))return void l(c);if(a.filter&&!a.filter({tag:c,attrs:t}))return void l(c);u("<"),u(c),Object.keys(t).forEach((function(e){var n=t[e],s=(a.allowedClasses||{})[c]||[],l=(a.allowedAttributes||{})[c]||[];l=l.concat((a.allowedAttributes||{})["*"]||[]);var d=o(e);("class"===d&&-1===l.indexOf(d)?(n=n.split(" ").filter((function(e){return s&&-1!==s.indexOf(e)})).join(" ").trim()).length:-1!==l.indexOf(d)&&(!0!==r.uris[d]||function(e){var t=e[0];if("#"===t||"/"===t)return!0;var n=e.indexOf(":");if(-1===n)return!0;var i=e.indexOf("?");if(-1!==i&&n>i)return!0;var o=e.indexOf("#");if(-1!==o&&n>o)return!0;return a.allowedSchemes.some((function(t){return 0===e.indexOf(t+":")}))}(n)))&&(u(" "),u(e),"string"==typeof n&&(u('="'),u(i.encode(n)),u('"')))})),u(s?"/>":">")},end:function(e){var t=o(e);-1!==(a.allowedTags||[]).indexOf(t)&&!1===n.ignoring?(u("</"),u(t),u(">")):c(t)},chars:function(e){!1===n.ignoring&&u(a.transformText?a.transformText(e):e)}};function u(t){e.push(t)}function l(e){s.voids[e]||(!1===n.ignoring?n={ignoring:e,depth:1}:n.ignoring===e&&n.depth++)}function c(e){n.ignoring===e&&--n.depth<=0&&d()}function d(){n={ignoring:!1,depth:0}}}},{"./attributes":1,"./elements":3,"./lowercase":5,he:9}],9:[function(e,t,n){var i={"&":"&","<":"<",">":">",'"':""","'":"'"},o={"&":"&","<":"<",">":">",""":'"',"'":"'"},r=/(&|<|>|"|')/g,s=/[&<>"']/g;function a(e){return i[e]}function u(e){return o[e]}function l(e){return null==e?"":String(e).replace(s,a)}function c(e){return null==e?"":String(e).replace(r,u)}l.options=c.options={},t.exports={encode:l,escape:l,decode:c,unescape:c,version:"1.0.0-browser"}},{}],10:[function(e,t,n){function i(e,t){return e[t]=!0,e}t.exports=function(e){return e.reduce(i,{})}},{}]},{},[4]);var pU=hU;function fU(e,t){void 0===t&&(t={});var n,i=NW(t),o=function(t){var n;try{n=lr(decodeURIComponent(t))}catch(e){}return n?(n=Na(n,(function(t){return e.uris&&e.uris[t]?Et.revive(e.uris[t]):void 0})),encodeURIComponent(JSON.stringify(n))):t},r=function(t,n){var i=e.uris&&e.uris[t];if(!i)return t;var r=Et.revive(i);return Et.parse(t).toString()===r.toString()?t:(n&&(r=ar(r)),r.query&&(r=r.with({query:o(r.query)})),r.toString(!0))},s=new Promise((function(e){return n=e})),a=new cU;a.image=function(e,t,n){var i,o=[],s=[];return e&&(i=function(e){var t=[],n=e.split("|").map((function(e){return e.trim()}));e=n[0];var i=n[1];if(i){var o=/height=(\d+)/.exec(i),r=/width=(\d+)/.exec(i),s=o?o[1]:"",a=r?r[1]:"",u=isFinite(parseInt(a)),l=isFinite(parseInt(s));u&&t.push('width="'+a+'"'),l&&t.push('height="'+s+'"')}return{href:e,dimensions:t}}(e),e=i.href,o=i.dimensions,e=r(e,!0),s.push('src="'+e+'"')),n&&s.push('alt="'+n+'"'),t&&s.push('title="'+t+'"'),o.length&&(s=s.concat(o)),"<img "+s.join(" ")+">"},a.link=function(t,n,i){return t===i&&(i=hj(i)),t=r(t,!1),n=hj(n),!(t=hj(t))||t.match(/^data:|javascript:/i)||t.match(/^command:/i)&&!e.isTrusted||t.match(/^command:(\/\/\/)?_workbench\.downloadResource/i)?i:'<a href="#" data-href="'+(t=t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'"))+'" title="'+(n||t)+'">'+i+"</a>"},a.paragraph=function(t){return"<p>"+(e.supportThemeIcons?zA(t):t)+"</p>"},t.codeBlockRenderer&&(a.code=function(e,n){var o=t.codeBlockRenderer(n,e),r=tH.nextId(),a=Promise.all([o,s]).then((function(e){var t=e[0],n=i.querySelector('div[data-code="'+r+'"]');n&&(n.innerHTML=t)})).catch((function(e){}));return t.codeBlockRenderCallback&&a.then(t.codeBlockRenderCallback),'<div class="code" data-code="'+r+'">'+fr(e)+"</div>"});var u=t.actionHandler;u&&u.disposeables.add(co(i,"click",(function(e){var t=e.target;if("A"===t.tagName||(t=t.parentElement)&&"A"===t.tagName)try{var n=t.dataset.href;n&&u.callback(n,e)}catch(e){De(e)}finally{e.preventDefault()}})));var l={sanitize:!0,renderer:a},c=[Ci.http,Ci.https,Ci.mailto,Ci.data,Ci.file,Ci.vscodeRemote,Ci.vscodeRemoteResource];e.isTrusted&&c.push(Ci.command);var d=dU(e.supportThemeIcons?e.value.replace(BA,(function(e){return"\\"+e})):e.value,l);return i.innerHTML=pU(d,{allowedSchemes:c,allowedAttributes:{a:["href","name","target","data-href"],iframe:["allowfullscreen","frameborder","src"],img:["src","title","alt","width","height"],div:["class","data-code"],span:["class"]}}),n(),i}var gU=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),mU=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},vU=function(e,t){return function(n,i){t(n,i,e)}},_U=function(e){function t(t,n,i){void 0===i&&(i=fa);var o=e.call(this)||this;return o._editor=t,o._modeService=n,o._openerService=i,o._onDidRenderCodeBlock=o._register(new nt),o.onDidRenderCodeBlock=o._onDidRenderCodeBlock.event,o}return gU(t,e),t.prototype.getOptions=function(e){var t=this;return{codeBlockRenderer:function(e,n){var i=null;if(e)i=t._modeService.getModeIdForLanguageName(e);else{var o=t._editor.getModel();o&&(i=o.getLanguageIdentifier().language)}return t._modeService.triggerMode(i||""),Promise.resolve(!0).then((function(e){var t=Yu.getPromise(i||"");return t?t.then((function(e){return HL(n,e)})):HL(n,void 0)})).then((function(e){return'<span style="font-family: '+t._editor.getOption(34).fontFamily+'">'+e+"</span>"}))},codeBlockRenderCallback:function(){return t._onDidRenderCodeBlock.fire()},actionHandler:{callback:function(e){t._openerService.open(e,{fromUserGesture:!0}).catch(De)},disposeables:e}}},t.prototype.render=function(e){var t=new Be;return{element:e?fU(e,this.getOptions(t)):document.createElement("span"),dispose:function(){return t.dispose()}}},t=mU([vU(1,lN),vU(2,Tn(pa))],t)}(He),yU=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),bU=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},wU=er,CU=function(e,t,n){this.range=e,this.color=t,this.provider=n},SU=function(e,t){this.range=e,this.marker=t},LU=function(){function e(e,t){this._markerDecorationsService=t,this._editor=e,this._result=[]}return e.prototype.setRange=function(e){this._range=e,this._result=[]},e.prototype.clearResult=function(){this._result=[]},e.prototype.computeAsync=function(e){if(!this._editor.hasModel()||!this._range)return Promise.resolve([]);var t=this._editor.getModel();return Ou.has(t)?iU(t,new bn(this._range.startLineNumber,this._range.startColumn),e):Promise.resolve([])},e.prototype.computeSync=function(){var e=this;if(!this._editor.hasModel()||!this._range)return[];var t=this._editor.getModel(),n=this._range.startLineNumber;if(n>this._editor.getModel().getLineCount())return[];var i=sF.get(this._editor),o=t.getLineMaxColumn(n),r=this._editor.getLineDecorations(n),s=!1,a=this._range;return Ei(r.map((function(r){var u=r.range.startLineNumber===n?r.range.startColumn:1,l=r.range.endLineNumber===n?r.range.endColumn:o;if(u>a.startColumn||a.endColumn>l)return null;var c=new wn(a.startLineNumber,u,a.startLineNumber,l),d=e._markerDecorationsService.getMarker(t,r);if(d)return new SU(c,d);var h=i.getColorData(r.range.getStartPosition());if(!s&&h){s=!0;var p=h.colorInfo,f=p.color,g=p.range;return new CU(g,f,h.provider)}return lj(r.options.hoverMessage)?null:{contents:r.options.hoverMessage?ji(r.options.hoverMessage):[],range:c}})))},e.prototype.onResult=function(e,t){this._result=t?e.concat(this._result.sort((function(e,t){return e instanceof CU?-1:t instanceof CU?1:0}))):this._result.concat(e)},e.prototype.getResult=function(){return this._result.slice(0)},e.prototype.getResultWithLoadingMessage=function(){return this._result.slice(0).concat([this._getLoadingMessage()])},e.prototype._getLoadingMessage=function(){return{range:this._range,contents:[(new uj).appendText(r("modesContentHover.loading","Loading..."))]}},e}(),xU={type:2,filter:{include:TR.QuickFix}},DU=function(e){function t(n,i,o,r,s,a){void 0===a&&(a=fa);var u=e.call(this,t.ID,n)||this;return u._themeService=o,u._keybindingService=r,u._modeService=s,u._openerService=a,u.renderDisposable=u._register(new ze),u._messages=[],u._lastRange=null,u._computer=new LU(u._editor,i),u._highlightDecorations=[],u._isChangingDecorations=!1,u._shouldFocus=!1,u._colorPicker=null,u._hoverOperation=new rU(u._computer,(function(e){return u._withResult(e,!0)}),null,(function(e){return u._withResult(e,!1)}),u._editor.getOption(44).delay),u._register(co(u.getDomNode(),qo.FOCUS,(function(){u._colorPicker&&no(u.getDomNode(),"colorpicker-hover")}))),u._register(co(u.getDomNode(),qo.BLUR,(function(){oo(u.getDomNode(),"colorpicker-hover")}))),u._register(n.onDidChangeConfiguration((function(e){u._hoverOperation.setHoverTime(u._editor.getOption(44).delay)}))),u._register(Yu.onDidChange((function(e){u.isVisible&&u._lastRange&&u._messages.length>0&&(u._domNode.textContent="",u._renderMessages(u._lastRange,u._messages))}))),u}return yU(t,e),t.prototype.dispose=function(){this._hoverOperation.cancel(),e.prototype.dispose.call(this)},t.prototype.onModelDecorationsChanged=function(){this._isChangingDecorations||this.isVisible&&(this._hoverOperation.cancel(),this._computer.clearResult(),this._colorPicker||this._hoverOperation.start(0))},t.prototype.startShowingAt=function(e,t,n){if(!this._lastRange||!this._lastRange.equalsRange(e)){if(this._hoverOperation.cancel(),this.isVisible)if(this._showAtPosition&&this._showAtPosition.lineNumber===e.startLineNumber){for(var i=[],o=0,r=this._messages.length;o<r;o++){var s=this._messages[o],a=s.range;a&&a.startColumn<=e.startColumn&&a.endColumn>=e.endColumn&&i.push(s)}if(i.length>0){if(function(e,t){if(!e&&t||e&&!t||e.length!==t.length)return!1;for(var n=0;n<e.length;n++){var i=e[n],o=t[n];if(i instanceof SU&&o instanceof SU)return kM.makeKey(i.marker)===kM.makeKey(o.marker);if(i instanceof CU||o instanceof CU)return!1;if(i instanceof SU||o instanceof SU)return!1;if(r=i.contents,s=o.contents,!(!r&&!s||r&&s&&(Array.isArray(r)&&Array.isArray(s)?xi(r,s,dj):cj(r)&&cj(s)&&dj(r,s))))return!1}var r,s;return!0}(i,this._messages))return;this._renderMessages(e,i)}else this.hide()}else this.hide();this._lastRange=e,this._computer.setRange(e),this._shouldFocus=n,this._hoverOperation.start(t)}},t.prototype.hide=function(){this._lastRange=null,this._hoverOperation.cancel(),e.prototype.hide.call(this),this._isChangingDecorations=!0,this._highlightDecorations=this._editor.deltaDecorations(this._highlightDecorations,[]),this._isChangingDecorations=!1,this.renderDisposable.clear(),this._colorPicker=null},t.prototype.isColorPickerVisible=function(){return!!this._colorPicker},t.prototype._withResult=function(e,t){this._messages=e,this._lastRange&&this._messages.length>0?this._renderMessages(this._lastRange,this._messages):t&&this.hide()},t.prototype._renderMessages=function(e,n){var i=this;this.renderDisposable.dispose(),this._colorPicker=null;var o=1073741824,r=n[0].range?wn.lift(n[0].range):null,s=document.createDocumentFragment(),a=!0,u=!1,l=new Be,c=[];if(n.forEach((function(e){if(e.range)if(o=Math.min(o,e.range.startColumn),r=r?wn.plusRange(r,e.range):wn.lift(e.range),e instanceof CU){u=!0;var t=e.color,n=t.red,d=t.green,h=t.blue,p=t.alpha,f=new pv(Math.round(255*n),Math.round(255*d),Math.round(255*h),p),g=new mv(f);if(!i._editor.hasModel())return;var m=i._editor.getModel(),v=new wn(e.range.startLineNumber,e.range.startColumn,e.range.endLineNumber,e.range.endColumn),_={range:e.range,color:e.color},y=new Gj(g,[],0),b=new nU(s,y,i._editor.getOption(105),i._themeService);nF(m,_,e.provider,et.None).then((function(t){if(y.colorPresentations=t||[],i._editor.hasModel()){var n=i._editor.getModel().getValueInRange(e.range);y.guessColorPresentation(g,n);var o=function(){var e,t;y.presentation.textEdit?(e=[y.presentation.textEdit],t=(t=new wn(y.presentation.textEdit.range.startLineNumber,y.presentation.textEdit.range.startColumn,y.presentation.textEdit.range.endLineNumber,y.presentation.textEdit.range.endColumn)).setEndPosition(t.endLineNumber,t.startColumn+y.presentation.textEdit.text.length)):(e=[{identifier:null,range:v,text:y.presentation.label,forceMoveMarkers:!1}],t=v.setEndPosition(v.endLineNumber,v.startColumn+y.presentation.label.length)),i._editor.pushUndoStop(),i._editor.executeEdits("colorpicker",e),y.presentation.additionalTextEdits&&(e=bU(y.presentation.additionalTextEdits),i._editor.executeEdits("colorpicker",e),i.hide()),i._editor.pushUndoStop(),v=t},r=function(t){return nF(m,{range:v,color:{red:t.rgba.r/255,green:t.rgba.g/255,blue:t.rgba.b/255,alpha:t.rgba.a}},e.provider,et.None).then((function(e){y.colorPresentations=e||[]}))},a=y.onColorFlushed((function(e){r(e).then(o)})),u=y.onDidChangeColor(r);i._colorPicker=b,i.showAt(v.getStartPosition(),v,i._shouldFocus),i.updateContents(s),i._colorPicker.layout(),i.renderDisposable.value=Fe(a,u,b,l)}}))}else e instanceof SU?(c.push(e),a=!1):e.contents.filter((function(e){return!lj(e)})).forEach((function(e){var t=wU("div.hover-row.markdown-hover"),n=Xo(t,wU("div.hover-contents")),o=l.add(new _U(i._editor,i._modeService,i._openerService));l.add(o.onDidRenderCodeBlock((function(){n.className="hover-contents code-hover-contents",i.onContentsChange()})));var r=l.add(o.render(e));n.appendChild(r.element),s.appendChild(t),a=!1}))})),c.length){c.forEach((function(e){return s.appendChild(i.renderMarkerHover(e))}));var d=1===c.length?c[0]:c.sort((function(e,t){return NM.compare(e.marker.severity,t.marker.severity)}))[0];s.appendChild(this.renderMarkerStatusbar(d))}u||a||(this.showAt(new bn(e.startLineNumber,o),r,this._shouldFocus),this.updateContents(s)),this._isChangingDecorations=!0,this._highlightDecorations=this._editor.deltaDecorations(this._highlightDecorations,r?[{range:r,options:t._DECORATION_OPTIONS}]:[]),this._isChangingDecorations=!1},t.prototype.renderMarkerHover=function(e){var t=this,n=wU("div.hover-row"),i=Xo(n,wU("div.marker.hover-contents")),o=e.marker,r=o.source,s=o.message,a=o.code,u=o.relatedInformation;this._editor.applyFontInfo(i);var l=Xo(i,wU("span"));if(l.style.whiteSpace="pre-wrap",l.innerText=s,r||a)if("string"==typeof a)(c=Xo(i,wU("span"))).style.opacity="0.6",c.style.paddingLeft="6px",c.innerText=r&&a?r+"("+a+")":r||"("+a+")";else if(a){var c,d=wU("span");if(r)Xo(d,wU("span")).innerText=r;this._codeLink=Xo(d,wU("a.code-link")),this._codeLink.setAttribute("href",a.link.toString()),this._codeLink.onclick=function(e){t._openerService.open(a.link),e.preventDefault(),e.stopPropagation()},Xo(this._codeLink,wU("span")).innerText=a.value,(c=Xo(i,d)).style.opacity="0.6",c.style.paddingLeft="6px"}if(Oi(u))for(var h=function(e,n,o,r){var s=Xo(i,wU("div"));s.style.marginTop="8px";var a=Xo(s,wU("a"));a.innerText=Ds(n)+"("+o+", "+r+"): ",a.style.cursor="pointer",a.onclick=function(e){e.stopPropagation(),e.preventDefault(),t._openerService&&t._openerService.open(n.with({fragment:o+","+r}),{fromUserGesture:!0}).catch(De)};var u=Xo(s,wU("span"));u.innerText=e,p._editor.applyFontInfo(u)},p=this,f=0,g=u;f<g.length;f++){var m=g[f];h(m.message,m.resource,m.startLineNumber,m.startColumn)}return n},t.prototype.renderMarkerStatusbar=function(e){var t=this,n=wU("div.hover-row.status-bar"),i=new Be,o=Xo(n,wU("div.actions"));e.marker.severity!==NM.Error&&e.marker.severity!==NM.Warning&&e.marker.severity!==NM.Info||i.add(this.renderAction(o,{label:r("peek problem","Peek Problem"),commandId:zj.ID,run:function(){t.hide(),Bj.get(t._editor).show(e.marker),t._editor.focus()}}));var s=Xo(o,wU("div"));s.style.opacity="0",s.style.transition="opacity 0.2s",setTimeout((function(){return s.style.opacity="1"}),200),s.textContent=r("checkingForQuickFixes","Checking for quick fixes..."),i.add(We((function(){return s.remove()})));var a=this.getCodeActions(e.marker);return i.add(We((function(){return a.cancel()}))),a.then((function(e){if(s.style.transition="",s.style.opacity="1",!e.validActions.length)return e.dispose(),void(s.textContent=r("noQuickFixes","No quick fixes available"));s.remove();var n=!1;i.add(We((function(){n||e.dispose()}))),i.add(t.renderAction(o,{label:r("quick fixes","Quick Fix..."),commandId:IA.Id,run:function(i){n=!0;var o=NA.get(t._editor),r=Oo(i);o.showCodeActions(xU,e,{x:r.left+6,y:r.top+r.height+6})}}))})),this.renderDisposable.value=i,n},t.prototype.getCodeActions=function(e){var t=this;return hi((function(n){return HR(t._editor.getModel(),new wn(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),xU,n)}))},t.prototype.renderAction=function(e,t){var n=Xo(e,wU("div.action-container")),i=Xo(n,wU("a.action"));t.iconClass&&Xo(i,wU("span.icon."+t.iconClass));var o=Xo(i,wU("span"));o.textContent=t.label;var r=this._keybindingService.lookupKeybinding(t.commandId);return r&&(o.title=t.label+" ("+r.getLabel()+")"),uo(n,qo.CLICK,(function(e){e.stopPropagation(),e.preventDefault(),t.run(n)}))},t.ID="editor.contrib.modesContentHoverWidget",t._DECORATION_OPTIONS=kv.register({className:"hoverHighlight"}),t}(uU);yg((function(e,t){var n=e.getColor(P_);n&&t.addRule(".monaco-editor-hover .hover-contents a.code-link span:hover { color: "+n+"; }")}));var NU=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),kU=function(){function e(e){this._editor=e,this._lineNumber=-1,this._result=[]}return e.prototype.setLineNumber=function(e){this._lineNumber=e,this._result=[]},e.prototype.clearResult=function(){this._result=[]},e.prototype.computeSync=function(){var e=function(e){return{value:e}},t=this._editor.getLineDecorations(this._lineNumber),n=[];if(!t)return n;for(var i=0,o=t;i<o.length;i++){var r=o[i];if(r.options.glyphMarginClassName){var s=r.options.glyphMarginHoverMessage;s&&!lj(s)&&n.push.apply(n,ji(s).map(e))}}return n},e.prototype.onResult=function(e,t){this._result=this._result.concat(e)},e.prototype.getResult=function(){return this._result},e.prototype.getResultWithLoadingMessage=function(){return this.getResult()},e}(),EU=function(e){function t(n,i,o){void 0===o&&(o=fa);var r=e.call(this,t.ID,n)||this;return r._renderDisposeables=r._register(new Be),r._messages=[],r._lastLineNumber=-1,r._markdownRenderer=r._register(new _U(r._editor,i,o)),r._computer=new kU(r._editor),r._hoverOperation=new rU(r._computer,(function(e){return r._withResult(e)}),void 0,(function(e){return r._withResult(e)}),300),r}return NU(t,e),t.prototype.dispose=function(){this._hoverOperation.cancel(),e.prototype.dispose.call(this)},t.prototype.onModelDecorationsChanged=function(){this.isVisible&&(this._hoverOperation.cancel(),this._computer.clearResult(),this._hoverOperation.start(0))},t.prototype.startShowingAt=function(e){this._lastLineNumber!==e&&(this._hoverOperation.cancel(),this.hide(),this._lastLineNumber=e,this._computer.setLineNumber(e),this._hoverOperation.start(0))},t.prototype.hide=function(){this._lastLineNumber=-1,this._hoverOperation.cancel(),e.prototype.hide.call(this)},t.prototype._withResult=function(e){this._messages=e,this._messages.length>0?this._renderMessages(this._lastLineNumber,this._messages):this.hide()},t.prototype._renderMessages=function(e,t){this._renderDisposeables.clear();for(var n=document.createDocumentFragment(),i=0,o=t;i<o.length;i++){var r=o[i],s=this._markdownRenderer.render(r.value);this._renderDisposeables.add(s),n.appendChild(er("div.hover-row",void 0,s.element))}this.updateContents(n),this.showAt(e)},t.ID="editor.contrib.modesGlyphHoverWidget",t}(lU),IU=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),OU=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},MU=function(e,t){return function(n,i){t(n,i,e)}},TU=function(){function e(e,t,n,i,o,r){var s=this;this._editor=e,this._openerService=t,this._modeService=n,this._markerDecorationsService=i,this._keybindingService=o,this._themeService=r,this._toUnhook=new Be,this._contentWidget=new ze,this._glyphWidget=new ze,this._isMouseDown=!1,this._hoverClicked=!1,this._hookEvents(),this._didChangeConfigurationHandler=this._editor.onDidChangeConfiguration((function(e){e.hasChanged(44)&&(s._hideWidgets(),s._unhookEvents(),s._hookEvents())}))}return Object.defineProperty(e.prototype,"contentWidget",{get:function(){return this._contentWidget.value||this._createHoverWidgets(),this._contentWidget.value},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"glyphWidget",{get:function(){return this._glyphWidget.value||this._createHoverWidgets(),this._glyphWidget.value},enumerable:!0,configurable:!0}),e.get=function(t){return t.getContribution(e.ID)},e.prototype._hookEvents=function(){var e=this,t=function(){return e._hideWidgets()},n=this._editor.getOption(44);this._isHoverEnabled=n.enabled,this._isHoverSticky=n.sticky,this._isHoverEnabled?(this._toUnhook.add(this._editor.onMouseDown((function(t){return e._onEditorMouseDown(t)}))),this._toUnhook.add(this._editor.onMouseUp((function(t){return e._onEditorMouseUp(t)}))),this._toUnhook.add(this._editor.onMouseMove((function(t){return e._onEditorMouseMove(t)}))),this._toUnhook.add(this._editor.onKeyDown((function(t){return e._onKeyDown(t)}))),this._toUnhook.add(this._editor.onDidChangeModelDecorations((function(){return e._onModelDecorationsChanged()})))):this._toUnhook.add(this._editor.onMouseMove(t)),this._toUnhook.add(this._editor.onMouseLeave(t)),this._toUnhook.add(this._editor.onDidChangeModel(t)),this._toUnhook.add(this._editor.onDidScrollChange((function(t){return e._onEditorScrollChanged(t)})))},e.prototype._unhookEvents=function(){this._toUnhook.clear()},e.prototype._onModelDecorationsChanged=function(){this.contentWidget.onModelDecorationsChanged(),this.glyphWidget.onModelDecorationsChanged()},e.prototype._onEditorScrollChanged=function(e){(e.scrollTopChanged||e.scrollLeftChanged)&&this._hideWidgets()},e.prototype._onEditorMouseDown=function(e){this._isMouseDown=!0;var t=e.target.type;9!==t||e.target.detail!==DU.ID?12===t&&e.target.detail===EU.ID||(12!==t&&e.target.detail!==EU.ID&&(this._hoverClicked=!1),this._hideWidgets()):this._hoverClicked=!0},e.prototype._onEditorMouseUp=function(e){this._isMouseDown=!1},e.prototype._onEditorMouseMove=function(e){var t=e.target.type;if(!(this._isMouseDown&&this._hoverClicked&&this.contentWidget.isColorPickerVisible()||this._isHoverSticky&&9===t&&e.target.detail===DU.ID||this._isHoverSticky&&12===t&&e.target.detail===EU.ID)){if(7===t){var n=this._editor.getOption(34).typicalHalfwidthCharacterWidth/2,i=e.target.detail;i&&!i.isAfterLines&&"number"==typeof i.horizontalDistanceToText&&i.horizontalDistanceToText<n&&(t=6)}6===t?(this.glyphWidget.hide(),this._isHoverEnabled&&e.target.range&&this.contentWidget.startShowingAt(e.target.range,0,!1)):2===t?(this.contentWidget.hide(),this._isHoverEnabled&&e.target.position&&this.glyphWidget.startShowingAt(e.target.position.lineNumber)):this._hideWidgets()}},e.prototype._onKeyDown=function(e){5!==e.keyCode&&6!==e.keyCode&&57!==e.keyCode&&4!==e.keyCode&&this._hideWidgets()},e.prototype._hideWidgets=function(){!this._glyphWidget.value||!this._contentWidget.value||this._isMouseDown&&this._hoverClicked&&this._contentWidget.value.isColorPickerVisible()||(this._glyphWidget.value.hide(),this._contentWidget.value.hide())},e.prototype._createHoverWidgets=function(){this._contentWidget.value=new DU(this._editor,this._markerDecorationsService,this._themeService,this._keybindingService,this._modeService,this._openerService),this._glyphWidget.value=new EU(this._editor,this._modeService,this._openerService)},e.prototype.showContentHover=function(e,t,n){this.contentWidget.startShowingAt(e,t,n)},e.prototype.dispose=function(){this._unhookEvents(),this._toUnhook.dispose(),this._didChangeConfigurationHandler.dispose(),this._glyphWidget.dispose(),this._contentWidget.dispose()},e.ID="editor.contrib.hover",e=OU([MU(1,pa),MU(2,lN),MU(3,jM),MU(4,XD),MU(5,fg)],e)}(),PU=function(e){function t(){return e.call(this,{id:"editor.action.showHover",label:r({key:"showHover",comment:["Label for action that will trigger the showing of a hover in the editor.","This allows for users to show the hover without using the mouse."]},"Show Hover"),alias:"Show Hover",precondition:void 0,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2087),weight:100}})||this}return IU(t,e),t.prototype.run=function(e,t){if(t.hasModel()){var n=TU.get(t);if(n){var i=t.getPosition(),o=new wn(i.lineNumber,i.column,i.lineNumber,i.column),r=2===t.getOption(2);n.showContentHover(o,1,r)}}},t}(kf),RU=function(e){function t(){return e.call(this,{id:"editor.action.showDefinitionPreviewHover",label:r({key:"showDefinitionPreviewHover",comment:["Label for action that will trigger the showing of definition preview hover in the editor.","This allows for users to show the definition preview hover without using the mouse."]},"Show Definition Preview Hover"),alias:"Show Definition Preview Hover",precondition:void 0})||this}return IU(t,e),t.prototype.run=function(e,t){var n=TU.get(t);if(n){var i=t.getPosition();if(i){var o=new wn(i.lineNumber,i.column,i.lineNumber,i.column),r=Cj.get(t).startFindDefinitionFromCursor(i);r?r.then((function(){n.showContentHover(o,1,!0)})):n.showContentHover(o,1,!0)}}},t}(kf);Pf(TU.ID,TU),Tf(PU),Tf(RU),yg((function(e,t){var n=e.getColor(Ty);n&&t.addRule(".monaco-editor .hoverHighlight { background-color: "+n+"; }");var i=e.getColor(Py);i&&t.addRule(".monaco-editor .monaco-editor-hover { background-color: "+i+"; }");var o=e.getColor(Ay);o&&(t.addRule(".monaco-editor .monaco-editor-hover { border: 1px solid "+o+"; }"),t.addRule(".monaco-editor .monaco-editor-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid "+o.transparent(.5)+"; }"),t.addRule(".monaco-editor .monaco-editor-hover hr { border-top: 1px solid "+o.transparent(.5)+"; }"),t.addRule(".monaco-editor .monaco-editor-hover hr { border-bottom: 0px solid "+o.transparent(.5)+"; }"));var r=e.getColor(P_);r&&t.addRule(".monaco-editor .monaco-editor-hover a { color: "+r+"; }");var s=e.getColor(Ry);s&&t.addRule(".monaco-editor .monaco-editor-hover { color: "+s+"; }");var a=e.getColor(Fy);a&&t.addRule(".monaco-editor .monaco-editor-hover .hover-row .actions { background-color: "+a+"; }");var u=e.getColor(R_);u&&t.addRule(".monaco-editor .monaco-editor-hover code { background-color: "+u+"; }")}));var AU=function(){function e(e,t,n){this._editRange=e,this._originalSelection=t,this._text=n}return e.prototype.getEditOperations=function(e,t){t.addTrackedEditOperation(this._editRange,this._text)},e.prototype.computeCursorState=function(e,t){var n=t.getInverseEditOperations()[0].range;return this._originalSelection.isEmpty()?new Sn(n.endLineNumber,Math.min(this._originalSelection.positionColumn,n.endColumn),n.endLineNumber,Math.min(this._originalSelection.positionColumn,n.endColumn)):new Sn(n.endLineNumber,n.endColumn-this._text.length,n.endLineNumber,n.endColumn)},e}(),FU=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),WU=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},VU=function(e,t){return function(n,i){t(n,i,e)}},BU=function(){function e(e,t){this.decorationIds=[],this.editor=e,this.editorWorkerService=t}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.dispose=function(){},e.prototype.run=function(t,n){var i=this;this.currentRequest&&this.currentRequest.cancel();var o=this.editor.getSelection(),r=this.editor.getModel();if(r&&o){var s=o;if(s.startLineNumber===s.endLineNumber){var a=new oD(this.editor,5),u=r.uri;return this.editorWorkerService.canNavigateValueSet(u)?(this.currentRequest=hi((function(e){return i.editorWorkerService.navigateValueSet(u,s,n)})),this.currentRequest.then((function(n){if(n&&n.range&&n.value&&a.validate(i.editor)){var o=wn.lift(n.range),r=n.range,u=n.value.length-(s.endColumn-s.startColumn);r={startLineNumber:r.startLineNumber,startColumn:r.startColumn,endLineNumber:r.endLineNumber,endColumn:r.startColumn+n.value.length},u>1&&(s=new Sn(s.startLineNumber,s.startColumn,s.endLineNumber,s.endColumn+u-1));var l=new AU(o,s,n.value);i.editor.pushUndoStop(),i.editor.executeCommand(t,l),i.editor.pushUndoStop(),i.decorationIds=i.editor.deltaDecorations(i.decorationIds,[{range:r,options:e.DECORATION}]),i.decorationRemover&&i.decorationRemover.cancel(),i.decorationRemover=gi(350),i.decorationRemover.then((function(){return i.decorationIds=i.editor.deltaDecorations(i.decorationIds,[])})).catch(De)}})).catch(De)):Promise.resolve(void 0)}}},e.ID="editor.contrib.inPlaceReplaceController",e.DECORATION=kv.register({className:"valueSetReplacement"}),e=WU([VU(1,el)],e)}(),HU=function(e){function t(){return e.call(this,{id:"editor.action.inPlaceReplace.up",label:r("InPlaceReplaceAction.previous.label","Replace with Previous Value"),alias:"Replace with Previous Value",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:3154,weight:100}})||this}return FU(t,e),t.prototype.run=function(e,t){var n=BU.get(t);return n?n.run(this.id,!0):Promise.resolve(void 0)},t}(kf),zU=function(e){function t(){return e.call(this,{id:"editor.action.inPlaceReplace.down",label:r("InPlaceReplaceAction.next.label","Replace with Next Value"),alias:"Replace with Next Value",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:3156,weight:100}})||this}return FU(t,e),t.prototype.run=function(e,t){var n=BU.get(t);return n?n.run(this.id,!1):Promise.resolve(void 0)},t}(kf);Pf(BU.ID,BU),Tf(HU),Tf(zU),yg((function(e,t){var n=e.getColor(Jb);n&&t.addRule(".monaco-editor.vs .valueSetReplacement { outline: solid 2px "+n+"; }")}));var jU=function(){function e(e,t){this._selection=e,this._cursors=t,this._selectionId=null}return e.prototype.getEditOperations=function(e,t){for(var n=function(e,t){t.sort((function(e,t){return e.lineNumber===t.lineNumber?e.column-t.column:e.lineNumber-t.lineNumber}));for(var n=t.length-2;n>=0;n--)t[n].lineNumber===t[n+1].lineNumber&&t.splice(n,1);for(var i=[],o=0,r=0,s=t.length,a=1,u=e.getLineCount();a<=u;a++){var l=e.getLineContent(a),c=l.length+1,d=0;if(!(r<s&&t[r].lineNumber===a&&(d=t[r].column,r++,d===c))&&0!==l.length){var h=Sr(l),p=0;if(-1===h)p=1;else{if(h===l.length-1)continue;p=h+2}p=Math.max(d,p),i[o++]=bh.delete(new wn(a,p,a,c))}}return i}(e,this._cursors),i=0,o=n.length;i<o;i++){var r=n[i];t.addEditOperation(r.range,r.text)}this._selectionId=t.trackSelection(this._selection)},e.prototype.computeCursorState=function(e,t){return t.getTrackedSelection(this._selectionId)},e}();var UU=function(){function e(e,t){this._selection=e,this._isCopyingDown=t,this._selectionDirection=0,this._selectionId=null,this._startLineNumberDelta=0,this._endLineNumberDelta=0}return e.prototype.getEditOperations=function(e,t){var n=this._selection;this._startLineNumberDelta=0,this._endLineNumberDelta=0,n.startLineNumber<n.endLineNumber&&1===n.endColumn&&(this._endLineNumberDelta=1,n=n.setEndPosition(n.endLineNumber-1,e.getLineMaxColumn(n.endLineNumber-1)));for(var i=[],o=n.startLineNumber;o<=n.endLineNumber;o++)i.push(e.getLineContent(o));var r=i.join("\n");""===r&&this._isCopyingDown&&(this._startLineNumberDelta++,this._endLineNumberDelta++),this._isCopyingDown?t.addEditOperation(new wn(n.startLineNumber,1,n.startLineNumber,1),r+"\n"):t.addEditOperation(new wn(n.endLineNumber,e.getLineMaxColumn(n.endLineNumber),n.endLineNumber,e.getLineMaxColumn(n.endLineNumber)),"\n"+r),this._selectionId=t.trackSelection(n),this._selectionDirection=this._selection.getDirection()},e.prototype.computeCursorState=function(e,t){var n=t.getTrackedSelection(this._selectionId);if(0!==this._startLineNumberDelta||0!==this._endLineNumberDelta){var i=n.startLineNumber,o=n.startColumn,r=n.endLineNumber,s=n.endColumn;0!==this._startLineNumberDelta&&(i+=this._startLineNumberDelta,o=1),0!==this._endLineNumberDelta&&(r+=this._endLineNumberDelta,s=1),n=Sn.createWithDirection(i,o,r,s,this._selectionDirection)}return n},e}();function KU(e,t){for(var n=0,i=0;i<e.length;i++)"\t"===e.charAt(i)?n+=t:n++;return n}function qU(e,t,n){e=e<0?0:e;var i="";if(!n){var o=Math.floor(e/t);e%=t;for(var r=0;r<o;r++)i+="\t"}for(r=0;r<e;r++)i+=" ";return i}var GU=function(){function e(e,t,n){this._selection=e,this._isMovingDown=t,this._autoIndent=n,this._selectionId=null,this._moveEndLineSelectionShrink=!1}return e.prototype.getEditOperations=function(e,t){var n=e.getLineCount();if(this._isMovingDown&&this._selection.endLineNumber===n)this._selectionId=t.trackSelection(this._selection);else if(this._isMovingDown||1!==this._selection.startLineNumber){this._moveEndPositionDown=!1;var i=this._selection;i.startLineNumber<i.endLineNumber&&1===i.endColumn&&(this._moveEndPositionDown=!0,i=i.setEndPosition(i.endLineNumber-1,e.getLineMaxColumn(i.endLineNumber-1)));var o=e.getOptions(),r=o.tabSize,s=o.indentSize,a=o.insertSpaces,u=this.buildIndentConverter(r,s,a),l={getLineTokens:function(t){return e.getLineTokens(t)},getLanguageIdentifier:function(){return e.getLanguageIdentifier()},getLanguageIdAtPosition:function(t,n){return e.getLanguageIdAtPosition(t,n)},getLineContent:null};if(i.startLineNumber===i.endLineNumber&&1===e.getLineMaxColumn(i.startLineNumber)){var c=i.startLineNumber,d=this._isMovingDown?c+1:c-1;1===e.getLineMaxColumn(d)?t.addEditOperation(new wn(1,1,1,1),null):(t.addEditOperation(new wn(c,1,c,1),e.getLineContent(d)),t.addEditOperation(new wn(d,1,d,e.getLineMaxColumn(d)),null)),i=new Sn(d,1,d,1)}else{var h,p=void 0;if(this._isMovingDown){h=i.endLineNumber+1,p=e.getLineContent(h),t.addEditOperation(new wn(h-1,e.getLineMaxColumn(h-1),h,e.getLineMaxColumn(h)),null);var f=p;if(this.shouldAutoIndent(e,i)){var g=this.matchEnterRule(e,u,r,h,i.startLineNumber-1);if(null!==g){var m=qU(S=g+KU(_=Cr(e.getLineContent(h)),r),r,a);f=m+this.trimLeft(p)}else{l.getLineContent=function(t){return t===i.startLineNumber?e.getLineContent(h):e.getLineContent(t)};var v=Ol.getGoodIndentForLine(this._autoIndent,l,e.getLanguageIdAtPosition(h,1),i.startLineNumber,u);if(null!==v){var _=Cr(e.getLineContent(h));if((S=KU(v,r))!==(L=KU(_,r))){m=qU(S,r,a);f=m+this.trimLeft(p)}}}if(t.addEditOperation(new wn(i.startLineNumber,1,i.startLineNumber,1),f+"\n"),null!==(w=this.matchEnterRule(e,u,r,i.startLineNumber,i.startLineNumber,f)))0!==w&&this.getIndentEditsOfMovingBlock(e,t,i,r,a,w);else{l.getLineContent=function(t){return t===i.startLineNumber?f:t>=i.startLineNumber+1&&t<=i.endLineNumber+1?e.getLineContent(t-1):e.getLineContent(t)};var y=Ol.getGoodIndentForLine(this._autoIndent,l,e.getLanguageIdAtPosition(h,1),i.startLineNumber+1,u);if(null!==y){_=Cr(e.getLineContent(i.startLineNumber));if((S=KU(y,r))!==(L=KU(_,r))){var b=S-L;this.getIndentEditsOfMovingBlock(e,t,i,r,a,b)}}}}else t.addEditOperation(new wn(i.startLineNumber,1,i.startLineNumber,1),f+"\n")}else{var w;if(h=i.startLineNumber-1,p=e.getLineContent(h),t.addEditOperation(new wn(h,1,h+1,1),null),t.addEditOperation(new wn(i.endLineNumber,e.getLineMaxColumn(i.endLineNumber),i.endLineNumber,e.getLineMaxColumn(i.endLineNumber)),"\n"+p),this.shouldAutoIndent(e,i))if(l.getLineContent=function(t){return t===h?e.getLineContent(i.startLineNumber):e.getLineContent(t)},null!==(w=this.matchEnterRule(e,u,r,i.startLineNumber,i.startLineNumber-2)))0!==w&&this.getIndentEditsOfMovingBlock(e,t,i,r,a,w);else{var C=Ol.getGoodIndentForLine(this._autoIndent,l,e.getLanguageIdAtPosition(i.startLineNumber,1),h,u);if(null!==C){var S,L,x=Cr(e.getLineContent(i.startLineNumber));if((S=KU(C,r))!==(L=KU(x,r))){b=S-L;this.getIndentEditsOfMovingBlock(e,t,i,r,a,b)}}}}}this._selectionId=t.trackSelection(i)}else this._selectionId=t.trackSelection(this._selection)},e.prototype.buildIndentConverter=function(e,t,n){return{shiftIndent:function(i){return nC.shiftIndent(i,i.length+1,e,t,n)},unshiftIndent:function(i){return nC.unshiftIndent(i,i.length+1,e,t,n)}}},e.prototype.matchEnterRule=function(e,t,n,i,o,r){for(var s=o;s>=1;){if(Sr(s===o&&void 0!==r?r:e.getLineContent(s))>=0)break;s--}if(s<1||i>e.getLineCount())return null;var a=e.getLineMaxColumn(s),u=Ol.getEnterAction(this._autoIndent,e,new wn(s,a,s,a));if(u){var l=u.indentation;u.indentAction===al.None||u.indentAction===al.Indent?l=u.indentation+u.appendText:u.indentAction===al.IndentOutdent?l=u.indentation:u.indentAction===al.Outdent&&(l=t.unshiftIndent(u.indentation)+u.appendText);var c=e.getLineContent(i);if(this.trimLeft(c).indexOf(this.trimLeft(l))>=0){var d=Cr(e.getLineContent(i)),h=Cr(l),p=Ol.getIndentMetadata(e,i);return null!==p&&2&p&&(h=t.unshiftIndent(h)),KU(h,n)-KU(d,n)}}return null},e.prototype.trimLeft=function(e){return e.replace(/^\s+/,"")},e.prototype.shouldAutoIndent=function(e,t){if(this._autoIndent<4)return!1;if(!e.isCheapToTokenize(t.startLineNumber))return!1;var n=e.getLanguageIdAtPosition(t.startLineNumber,1);return n===e.getLanguageIdAtPosition(t.endLineNumber,1)&&null!==Ol.getIndentRulesSupport(n)},e.prototype.getIndentEditsOfMovingBlock=function(e,t,n,i,o,r){for(var s=n.startLineNumber;s<=n.endLineNumber;s++){var a=Cr(e.getLineContent(s)),u=qU(KU(a,i)+r,i,o);u!==a&&(t.addEditOperation(new wn(s,1,s,a.length+1),u),s===n.endLineNumber&&n.endColumn<=a.length+1&&""===u&&(this._moveEndLineSelectionShrink=!0))}},e.prototype.computeCursorState=function(e,t){var n=t.getTrackedSelection(this._selectionId);return this._moveEndPositionDown&&(n=n.setEndPosition(n.endLineNumber+1,1)),this._moveEndLineSelectionShrink&&n.startLineNumber<n.endLineNumber&&(n=n.setEndPosition(n.endLineNumber,2)),n},e}(),ZU=function(){function e(e,t){this.selection=e,this.descending=t,this.selectionId=null}return e.getCollator=function(){return e._COLLATOR||(e._COLLATOR=new Intl.Collator),e._COLLATOR},e.prototype.getEditOperations=function(e,t){var n=function(e,t,n){var i=YU(e,t,n);if(!i)return null;return bh.replace(new wn(i.startLineNumber,1,i.endLineNumber,e.getLineMaxColumn(i.endLineNumber)),i.after.join("\n"))}(e,this.selection,this.descending);n&&t.addEditOperation(n.range,n.text),this.selectionId=t.trackSelection(this.selection)},e.prototype.computeCursorState=function(e,t){return t.getTrackedSelection(this.selectionId)},e.canRun=function(e,t,n){if(null===e)return!1;var i=YU(e,t,n);if(!i)return!1;for(var o=0,r=i.before.length;o<r;o++)if(i.before[o]!==i.after[o])return!0;return!1},e._COLLATOR=null,e}();function YU(e,t,n){var i=t.startLineNumber,o=t.endLineNumber;if(1===t.endColumn&&o--,i>=o)return null;for(var r=[],s=i;s<=o;s++)r.push(e.getLineContent(s));var a=r.slice(0);return a.sort(ZU.getCollator().compare),!0===n&&(a=a.reverse()),{startLineNumber:i,endLineNumber:o,before:r,after:a}}var XU=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),$U=function(e){function t(t,n){var i=e.call(this,n)||this;return i.down=t,i}return XU(t,e),t.prototype.run=function(e,t){for(var n=[],i=0,o=t.getSelections()||[];i<o.length;i++){var r=o[i];n.push(new UU(r,this.down))}t.pushUndoStop(),t.executeCommands(this.id,n),t.pushUndoStop()},t}(kf),QU=function(e){function t(){return e.call(this,!1,{id:"editor.action.copyLinesUpAction",label:r("lines.copyUp","Copy Line Up"),alias:"Copy Line Up",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:1552,linux:{primary:3600},weight:100},menuOpts:{menuId:25,group:"2_line",title:r({key:"miCopyLinesUp",comment:["&& denotes a mnemonic"]},"&&Copy Line Up"),order:1}})||this}return XU(t,e),t}($U),JU=function(e){function t(){return e.call(this,!0,{id:"editor.action.copyLinesDownAction",label:r("lines.copyDown","Copy Line Down"),alias:"Copy Line Down",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:1554,linux:{primary:3602},weight:100},menuOpts:{menuId:25,group:"2_line",title:r({key:"miCopyLinesDown",comment:["&& denotes a mnemonic"]},"Co&&py Line Down"),order:2}})||this}return XU(t,e),t}($U),eK=function(e){function t(){return e.call(this,{id:"editor.action.duplicateSelection",label:r("duplicateSelection","Duplicate Selection"),alias:"Duplicate Selection",precondition:eC.writable,menuOpts:{menuId:25,group:"2_line",title:r({key:"miDuplicateSelection",comment:["&& denotes a mnemonic"]},"&&Duplicate Selection"),order:5}})||this}return XU(t,e),t.prototype.run=function(e,t,n){if(t.hasModel()){for(var i=[],o=t.getSelections(),r=t.getModel(),s=0,a=o;s<a.length;s++){var u=a[s];if(u.isEmpty())i.push(new UU(u,!0));else{var l=new Sn(u.endLineNumber,u.endColumn,u.endLineNumber,u.endColumn);i.push(new Ww(l,r.getValueInRange(u)))}}t.pushUndoStop(),t.executeCommands(this.id,i),t.pushUndoStop()}},t}(kf),tK=function(e){function t(t,n){var i=e.call(this,n)||this;return i.down=t,i}return XU(t,e),t.prototype.run=function(e,t){for(var n=[],i=t.getSelections()||[],o=t.getOption(8),r=0,s=i;r<s.length;r++){var a=s[r];n.push(new GU(a,this.down,o))}t.pushUndoStop(),t.executeCommands(this.id,n),t.pushUndoStop()},t}(kf),nK=function(e){function t(){return e.call(this,!1,{id:"editor.action.moveLinesUpAction",label:r("lines.moveUp","Move Line Up"),alias:"Move Line Up",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:528,linux:{primary:528},weight:100},menuOpts:{menuId:25,group:"2_line",title:r({key:"miMoveLinesUp",comment:["&& denotes a mnemonic"]},"Mo&&ve Line Up"),order:3}})||this}return XU(t,e),t}(tK),iK=function(e){function t(){return e.call(this,!0,{id:"editor.action.moveLinesDownAction",label:r("lines.moveDown","Move Line Down"),alias:"Move Line Down",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:530,linux:{primary:530},weight:100},menuOpts:{menuId:25,group:"2_line",title:r({key:"miMoveLinesDown",comment:["&& denotes a mnemonic"]},"Move &&Line Down"),order:4}})||this}return XU(t,e),t}(tK),oK=function(e){function t(t,n){var i=e.call(this,n)||this;return i.descending=t,i}return XU(t,e),t.prototype.run=function(e,t){for(var n=t.getSelections()||[],i=0,o=n;i<o.length;i++){var r=o[i];if(!ZU.canRun(t.getModel(),r,this.descending))return}for(var s=[],a=0,u=n.length;a<u;a++)s[a]=new ZU(n[a],this.descending);t.pushUndoStop(),t.executeCommands(this.id,s),t.pushUndoStop()},t}(kf),rK=function(e){function t(){return e.call(this,!1,{id:"editor.action.sortLinesAscending",label:r("lines.sortAscending","Sort Lines Ascending"),alias:"Sort Lines Ascending",precondition:eC.writable})||this}return XU(t,e),t}(oK),sK=function(e){function t(){return e.call(this,!0,{id:"editor.action.sortLinesDescending",label:r("lines.sortDescending","Sort Lines Descending"),alias:"Sort Lines Descending",precondition:eC.writable})||this}return XU(t,e),t}(oK),aK=function(e){function t(){return e.call(this,{id:t.ID,label:r("lines.trimTrailingWhitespace","Trim Trailing Whitespace"),alias:"Trim Trailing Whitespace",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2102),weight:100}})||this}return XU(t,e),t.prototype.run=function(e,t,n){var i=[];"auto-save"===n.reason&&(i=(t.getSelections()||[]).map((function(e){return new bn(e.positionLineNumber,e.positionColumn)})));var o=t.getSelection();if(null!==o){var r=new jU(o,i);t.pushUndoStop(),t.executeCommands(this.id,[r]),t.pushUndoStop()}},t.ID="editor.action.trimTrailingWhitespace",t}(kf),uK=function(e){function t(){return e.call(this,{id:"editor.action.deleteLines",label:r("lines.delete","Delete Line"),alias:"Delete Line",precondition:eC.writable,kbOpts:{kbExpr:eC.textInputFocus,primary:3113,weight:100}})||this}return XU(t,e),t.prototype.run=function(e,t){if(t.hasModel()){var n=this._getLinesToRemove(t),i=t.getModel();if(1!==i.getLineCount()||1!==i.getLineMaxColumn(1)){for(var o=0,r=[],s=[],a=0,u=n.length;a<u;a++){var l=n[a],c=l.startLineNumber,d=l.endLineNumber,h=1,p=i.getLineMaxColumn(d);d<i.getLineCount()?(d+=1,p=1):c>1&&(c-=1,h=i.getLineMaxColumn(c)),r.push(bh.replace(new Sn(c,h,d,p),"")),s.push(new Sn(c-o,l.positionColumn,c-o,l.positionColumn)),o+=l.endLineNumber-l.startLineNumber+1}t.pushUndoStop(),t.executeEdits(this.id,r,s),t.pushUndoStop()}}},t.prototype._getLinesToRemove=function(e){var t=e.getSelections().map((function(e){var t=e.endLineNumber;return e.startLineNumber<e.endLineNumber&&1===e.endColumn&&(t-=1),{startLineNumber:e.startLineNumber,selectionStartColumn:e.selectionStartColumn,endLineNumber:t,positionColumn:e.positionColumn}}));t.sort((function(e,t){return e.startLineNumber===t.startLineNumber?e.endLineNumber-t.endLineNumber:e.startLineNumber-t.startLineNumber}));for(var n=[],i=t[0],o=1;o<t.length;o++)i.endLineNumber+1>=t[o].startLineNumber?i.endLineNumber=t[o].endLineNumber:(n.push(i),i=t[o]);return n.push(i),n},t}(kf),lK=function(e){function t(){return e.call(this,{id:"editor.action.indentLines",label:r("lines.indent","Indent Line"),alias:"Indent Line",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:2137,weight:100}})||this}return XU(t,e),t.prototype.run=function(e,t){var n=t._getCursors();n&&(t.pushUndoStop(),t.executeCommands(this.id,rC.indent(n.context.config,t.getModel(),t.getSelections())),t.pushUndoStop())},t}(kf),cK=function(e){function t(){return e.call(this,{id:"editor.action.outdentLines",label:r("lines.outdent","Outdent Line"),alias:"Outdent Line",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:2135,weight:100}})||this}return XU(t,e),t.prototype.run=function(e,t){hC.Outdent.runEditorCommand(e,t,null)},t}(kf),dK=function(e){function t(){return e.call(this,{id:"editor.action.insertLineBefore",label:r("lines.insertBefore","Insert Line Above"),alias:"Insert Line Above",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:3075,weight:100}})||this}return XU(t,e),t.prototype.run=function(e,t){var n=t._getCursors();n&&(t.pushUndoStop(),t.executeCommands(this.id,rC.lineInsertBefore(n.context.config,t.getModel(),t.getSelections())))},t}(kf),hK=function(e){function t(){return e.call(this,{id:"editor.action.insertLineAfter",label:r("lines.insertAfter","Insert Line Below"),alias:"Insert Line Below",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:2051,weight:100}})||this}return XU(t,e),t.prototype.run=function(e,t){var n=t._getCursors();n&&(t.pushUndoStop(),t.executeCommands(this.id,rC.lineInsertAfter(n.context.config,t.getModel(),t.getSelections())))},t}(kf),pK=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return XU(t,e),t.prototype.run=function(e,t){if(t.hasModel()){for(var n=t.getSelection(),i=this._getRangesToDelete(t),o=[],r=0,s=i.length-1;r<s;r++){var a=i[r],u=i[r+1];null===wn.intersectRanges(a,u)?o.push(a):i[r+1]=wn.plusRange(a,u)}o.push(i[i.length-1]);var l=this._getEndCursorState(n,o),c=o.map((function(e){return bh.replace(e,"")}));t.pushUndoStop(),t.executeEdits(this.id,c,l),t.pushUndoStop()}},t}(kf),fK=function(e){function t(){return e.call(this,{id:"deleteAllLeft",label:r("lines.deleteAllLeft","Delete All Left"),alias:"Delete All Left",precondition:eC.writable,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:2049},weight:100}})||this}return XU(t,e),t.prototype._getEndCursorState=function(e,t){var n=null,i=[],o=0;return t.forEach((function(t){var r;if(1===t.endColumn&&o>0){var s=t.startLineNumber-o;r=new Sn(s,t.startColumn,s,t.startColumn)}else r=new Sn(t.startLineNumber,t.startColumn,t.startLineNumber,t.startColumn);o+=t.endLineNumber-t.startLineNumber,t.intersectRanges(e)?n=r:i.push(r)})),n&&i.unshift(n),i},t.prototype._getRangesToDelete=function(e){var t=e.getSelections();if(null===t)return[];var n=t,i=e.getModel();return null===i?[]:(n.sort(wn.compareRangesUsingStarts),n=n.map((function(e){if(e.isEmpty()){if(1===e.startColumn){var t=Math.max(1,e.startLineNumber-1),n=1===e.startLineNumber?1:i.getLineContent(t).length+1;return new wn(t,n,e.startLineNumber,1)}return new wn(e.startLineNumber,1,e.startLineNumber,e.startColumn)}return new wn(e.startLineNumber,1,e.endLineNumber,e.endColumn)})))},t}(pK),gK=function(e){function t(){return e.call(this,{id:"deleteAllRight",label:r("lines.deleteAllRight","Delete All Right"),alias:"Delete All Right",precondition:eC.writable,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:297,secondary:[2068]},weight:100}})||this}return XU(t,e),t.prototype._getEndCursorState=function(e,t){for(var n=null,i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=new Sn(s.startLineNumber-0,s.startColumn,s.startLineNumber-0,s.startColumn);s.intersectRanges(e)?n=a:i.push(a)}return n&&i.unshift(n),i},t.prototype._getRangesToDelete=function(e){var t=e.getModel();if(null===t)return[];var n=e.getSelections();if(null===n)return[];var i=n.map((function(e){if(e.isEmpty()){var n=t.getLineMaxColumn(e.startLineNumber);return e.startColumn===n?new wn(e.startLineNumber,e.startColumn,e.startLineNumber+1,1):new wn(e.startLineNumber,e.startColumn,e.startLineNumber,n)}return e}));return i.sort(wn.compareRangesUsingStarts),i},t}(pK),mK=function(e){function t(){return e.call(this,{id:"editor.action.joinLines",label:r("lines.joinLines","Join Lines"),alias:"Join Lines",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:0,mac:{primary:296},weight:100}})||this}return XU(t,e),t.prototype.run=function(e,t){var n=t.getSelections();if(null!==n){var i=t.getSelection();if(null!==i){n.sort(wn.compareRangesUsingStarts);var o=[],r=n.reduce((function(e,t){return e.isEmpty()?e.endLineNumber===t.startLineNumber?(i.equalsSelection(e)&&(i=t),t):t.startLineNumber>e.endLineNumber+1?(o.push(e),t):new Sn(e.startLineNumber,e.startColumn,t.endLineNumber,t.endColumn):t.startLineNumber>e.endLineNumber?(o.push(e),t):new Sn(e.startLineNumber,e.startColumn,t.endLineNumber,t.endColumn)}));o.push(r);var s=t.getModel();if(null!==s){for(var a=[],u=[],l=i,c=0,d=0,h=o.length;d<h;d++){var p=o[d],f=p.startLineNumber,g=0,m=void 0,v=void 0,_=s.getLineContent(p.endLineNumber).length-p.endColumn;if(p.isEmpty()||p.startLineNumber===p.endLineNumber){var y=p.getStartPosition();y.lineNumber<s.getLineCount()?(m=f+1,v=s.getLineMaxColumn(m)):(m=y.lineNumber,v=s.getLineMaxColumn(y.lineNumber))}else m=p.endLineNumber,v=s.getLineMaxColumn(m);for(var b=s.getLineContent(f),w=f+1;w<=m;w++){var C=s.getLineContent(w),S=s.getLineFirstNonWhitespaceColumn(w);if(S>=1){var L=!0;""===b&&(L=!1),!L||" "!==b.charAt(b.length-1)&&"\t"!==b.charAt(b.length-1)||(L=!1,b=b.replace(/[\s\uFEFF\xA0]+$/g," "));var x=C.substr(S-1);b+=(L?" ":"")+x,g=L?x.length+1:x.length}else g=0}var D=new wn(f,1,m,v);if(!D.isEmpty()){var N=void 0;p.isEmpty()?(a.push(bh.replace(D,b)),N=new Sn(D.startLineNumber-c,b.length-g+1,f-c,b.length-g+1)):p.startLineNumber===p.endLineNumber?(a.push(bh.replace(D,b)),N=new Sn(p.startLineNumber-c,p.startColumn,p.endLineNumber-c,p.endColumn)):(a.push(bh.replace(D,b)),N=new Sn(p.startLineNumber-c,p.startColumn,p.startLineNumber-c,b.length-_)),null!==wn.intersectRanges(D,i)?l=N:u.push(N)}c+=D.endLineNumber-D.startLineNumber}u.unshift(l),t.pushUndoStop(),t.executeEdits(this.id,a,u),t.pushUndoStop()}}}},t}(kf),vK=function(e){function t(){return e.call(this,{id:"editor.action.transpose",label:r("editor.transpose","Transpose characters around the cursor"),alias:"Transpose characters around the cursor",precondition:eC.writable})||this}return XU(t,e),t.prototype.run=function(e,t){var n=t.getSelections();if(null!==n){var i=t.getModel();if(null!==i){for(var o=[],r=0,s=n.length;r<s;r++){var a=n[r];if(a.isEmpty()){var u=a.getStartPosition(),l=i.getLineMaxColumn(u.lineNumber);if(u.column>=l){if(u.lineNumber===i.getLineCount())continue;var c=new wn(u.lineNumber,Math.max(1,u.column-1),u.lineNumber+1,1),d=i.getValueInRange(c).split("").reverse().join("");o.push(new Fw(new Sn(u.lineNumber,Math.max(1,u.column-1),u.lineNumber+1,1),d))}else{c=new wn(u.lineNumber,Math.max(1,u.column-1),u.lineNumber,u.column+1),d=i.getValueInRange(c).split("").reverse().join("");o.push(new Hw(c,d,new Sn(u.lineNumber,u.column+1,u.lineNumber,u.column+1)))}}}t.pushUndoStop(),t.executeCommands(this.id,o),t.pushUndoStop()}}},t}(kf),_K=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return XU(t,e),t.prototype.run=function(e,t){var n=t.getSelections();if(null!==n){var i=t.getModel();if(null!==i){for(var o=t.getOption(96),r=[],s=0,a=n.length;s<a;s++){var u=n[s];if(u.isEmpty()){var l=u.getStartPosition(),c=i.getWordAtPosition(l);if(!c)continue;var d=new wn(l.lineNumber,c.startColumn,l.lineNumber,c.endColumn),h=i.getValueInRange(d);r.push(new Hw(d,this._modifyText(h,o),new Sn(l.lineNumber,l.column,l.lineNumber,l.column)))}else{h=i.getValueInRange(u);r.push(new Hw(u,this._modifyText(h,o),u))}}t.pushUndoStop(),t.executeCommands(this.id,r),t.pushUndoStop()}}},t}(kf),yK=function(e){function t(){return e.call(this,{id:"editor.action.transformToUppercase",label:r("editor.transformToUppercase","Transform to Uppercase"),alias:"Transform to Uppercase",precondition:eC.writable})||this}return XU(t,e),t.prototype._modifyText=function(e,t){return e.toLocaleUpperCase()},t}(_K),bK=function(e){function t(){return e.call(this,{id:"editor.action.transformToLowercase",label:r("editor.transformToLowercase","Transform to Lowercase"),alias:"Transform to Lowercase",precondition:eC.writable})||this}return XU(t,e),t.prototype._modifyText=function(e,t){return e.toLocaleLowerCase()},t}(_K),wK=function(e){function t(){return e.call(this,{id:"editor.action.transformToTitlecase",label:r("editor.transformToTitlecase","Transform to Title Case"),alias:"Transform to Title Case",precondition:eC.writable})||this}return XU(t,e),t.prototype._modifyText=function(e,t){for(var n=("\r\n\t "+t).split(""),i="",o=!0,r=0;r<e.length;r++){var s=e[r];n.indexOf(s)>=0?(o=!0,i+=s):o?(o=!1,i+=s.toLocaleUpperCase()):i+=s.toLocaleLowerCase()}return i},t}(_K);Tf(QU),Tf(JU),Tf(eK),Tf(nK),Tf(iK),Tf(rK),Tf(sK),Tf(aK),Tf(uK),Tf(lK),Tf(cK),Tf(dK),Tf(hK),Tf(fK),Tf(gK),Tf(mK),Tf(vK),Tf(yK),Tf(bK),Tf(wK);n(418);var CK=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),SK=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},LK=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},xK=function(){function e(e,t){this._link=e,this._provider=t}return e.prototype.toJSON=function(){return{range:this.range,url:this.url,tooltip:this.tooltip}},Object.defineProperty(e.prototype,"range",{get:function(){return this._link.range},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"url",{get:function(){return this._link.url},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"tooltip",{get:function(){return this._link.tooltip},enumerable:!0,configurable:!0}),e.prototype.resolve=function(e){return SK(this,void 0,void 0,(function(){var t=this;return LK(this,(function(n){return this._link.url?[2,this._link.url]:"function"==typeof this._provider.resolveLink?[2,Promise.resolve(this._provider.resolveLink(this._link,e)).then((function(n){return t._link=n||t._link,t._link.url?t.resolve(e):Promise.reject(new Error("missing"))}))]:[2,Promise.reject(new Error("missing"))]}))}))},e}(),DK=function(e){function t(n){for(var i=e.call(this)||this,o=[],r=function(e,n){var i=e.links.map((function(e){return new xK(e,n)}));o=t._union(o,i),Re(n)&&s._register(n)},s=this,a=0,u=n;a<u.length;a++){var l=u[a];r(l[0],l[1])}return i.links=o,i}return CK(t,e),t._union=function(e,t){var n,i,o,r,s=[];for(n=0,o=0,i=e.length,r=t.length;n<i&&o<r;){var a=e[n],u=t[o];if(wn.areIntersectingOrTouching(a.range,u.range))n++;else wn.compareRangesUsingStarts(a.range,u.range)<0?(s.push(a),n++):(s.push(u),o++)}for(;n<i;n++)s.push(e[n]);for(;o<r;o++)s.push(t[o]);return s},t}(He);function NK(e,t){var n=[],i=ju.ordered(e).reverse().map((function(i,o){return Promise.resolve(i.provideLinks(e,t)).then((function(e){e&&(n[o]=[e,i])}),Ne)}));return Promise.all(i).then((function(){var e=new DK(Ei(n));return t.isCancellationRequested?(e.dispose(),new DK([])):e}))}ca.registerCommand("_executeLinkProvider",(function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];return SK(void 0,void 0,void 0,(function(){var n,i,o,r;return LK(this,(function(s){switch(s.label){case 0:return(n=t[0])instanceof Et&&(i=e.get(du).getModel(n))?[4,NK(i,et.None)]:[2,[]];case 1:return(o=s.sent())?(r=o.links.slice(0),o.dispose(),[2,r]):[2,[]]}}))}))}));var kK=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),EK=function(){return(EK=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},IK=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},OK=function(e,t){return function(n,i){t(n,i,e)}},MK=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},TK=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}};var PK={general:kv.register({stickiness:1,collapseOnReplaceEdit:!0,inlineClassName:"detected-link"}),active:kv.register({stickiness:1,collapseOnReplaceEdit:!0,inlineClassName:"detected-link-active"})},RK=function(){function e(e,t){this.link=e,this.decorationId=t}return e.decoration=function(t,n){return{range:t.range,options:e._getOptions(t,n,!1)}},e._getOptions=function(e,t,n){var i=EK({},n?PK.active:PK.general);return i.hoverMessage=function(e,t){var n=e.url&&/^command:/i.test(e.url.toString()),i=e.tooltip?e.tooltip:n?r("links.navigate.executeCmd","Execute command"):r("links.navigate.follow","Follow link"),o=t?_?r("links.navigate.kb.meta.mac","cmd + click"):r("links.navigate.kb.meta","ctrl + click"):_?r("links.navigate.kb.alt.mac","option + click"):r("links.navigate.kb.alt","alt + click");return e.url?new uj("",!0).appendMarkdown("["+i+"]("+e.url.toString()+") ("+o+")"):(new uj).appendText(i+" ("+o+")")}(e,t),i},e.prototype.activate=function(t,n){t.changeDecorationOptions(this.decorationId,e._getOptions(this.link,n,!0))},e.prototype.deactivate=function(t,n){t.changeDecorationOptions(this.decorationId,e._getOptions(this.link,n,!1))},e}(),AK=function(){function e(e,t,n){var i=this;this.listenersToRemove=new Be,this.editor=e,this.openerService=t,this.notificationService=n;var o=new yj(e);this.listenersToRemove.add(o),this.listenersToRemove.add(o.onMouseMoveOrRelevantKeyDown((function(e){var t=e[0],n=e[1];i._onEditorMouseMove(t,n)}))),this.listenersToRemove.add(o.onExecute((function(e){i.onEditorMouseUp(e)}))),this.listenersToRemove.add(o.onCancel((function(e){i.cleanUpActiveLinkDecoration()}))),this.enabled=e.getOption(52),this.listenersToRemove.add(e.onDidChangeConfiguration((function(t){var n=e.getOption(52);i.enabled!==n&&(i.enabled=n,i.updateDecorations([]),i.stop(),i.beginCompute())}))),this.listenersToRemove.add(e.onDidChangeModelContent((function(e){return i.onChange()}))),this.listenersToRemove.add(e.onDidChangeModel((function(e){return i.onModelChanged()}))),this.listenersToRemove.add(e.onDidChangeModelLanguage((function(e){return i.onModelModeChanged()}))),this.listenersToRemove.add(ju.onDidChange((function(e){return i.onModelModeChanged()}))),this.timeout=new yi,this.computePromise=null,this.activeLinksList=null,this.currentOccurrences={},this.activeLinkDecorationId=null,this.beginCompute()}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.onModelChanged=function(){this.currentOccurrences={},this.activeLinkDecorationId=null,this.stop(),this.beginCompute()},e.prototype.onModelModeChanged=function(){this.stop(),this.beginCompute()},e.prototype.onChange=function(){var t=this;this.timeout.setIfNotSet((function(){return t.beginCompute()}),e.RECOMPUTE_TIME)},e.prototype.beginCompute=function(){return MK(this,void 0,void 0,(function(){var e,t;return TK(this,(function(n){switch(n.label){case 0:if(!this.editor.hasModel()||!this.enabled)return[2];if(e=this.editor.getModel(),!ju.has(e))return[2];this.activeLinksList&&(this.activeLinksList.dispose(),this.activeLinksList=null),this.computePromise=hi((function(t){return NK(e,t)})),n.label=1;case 1:return n.trys.push([1,3,4,5]),t=this,[4,this.computePromise];case 2:return t.activeLinksList=n.sent(),this.updateDecorations(this.activeLinksList.links),[3,5];case 3:return De(n.sent()),[3,5];case 4:return this.computePromise=null,[7];case 5:return[2]}}))}))},e.prototype.updateDecorations=function(e){for(var t="altKey"===this.editor.getOption(59),n=[],i=Object.keys(this.currentOccurrences),o=0,r=i.length;o<r;o++){var s=i[o],a=this.currentOccurrences[s];n.push(a.decorationId)}var u=[];if(e)for(var l=0,c=e;l<c.length;l++){var d=c[l];u.push(RK.decoration(d,t))}var h=this.editor.deltaDecorations(n,u);this.currentOccurrences={},this.activeLinkDecorationId=null;for(o=0,r=h.length;o<r;o++){a=new RK(e[o],h[o]);this.currentOccurrences[a.decorationId]=a}},e.prototype._onEditorMouseMove=function(e,t){var n=this,i="altKey"===this.editor.getOption(59);if(this.isEnabled(e,t)){this.cleanUpActiveLinkDecoration();var o=this.getLinkOccurrence(e.target.position);o&&this.editor.changeDecorations((function(e){o.activate(e,i),n.activeLinkDecorationId=o.decorationId}))}else this.cleanUpActiveLinkDecoration()},e.prototype.cleanUpActiveLinkDecoration=function(){var e="altKey"===this.editor.getOption(59);if(this.activeLinkDecorationId){var t=this.currentOccurrences[this.activeLinkDecorationId];t&&this.editor.changeDecorations((function(n){t.deactivate(n,e)})),this.activeLinkDecorationId=null}},e.prototype.onEditorMouseUp=function(e){if(this.isEnabled(e)){var t=this.getLinkOccurrence(e.target.position);t&&this.openLinkOccurrence(t,e.hasSideBySideModifier,!0)}},e.prototype.openLinkOccurrence=function(e,t,n){var i=this;if(void 0===n&&(n=!1),this.openerService){var o=e.link;o.resolve(et.None).then((function(e){return i.openerService.open(e,{openToSide:t,fromUserGesture:n})}),(function(e){var t=e instanceof Error?e.message:e;"invalid"===t?i.notificationService.warn(r("invalid.url","Failed to open this link because it is not well-formed: {0}",o.url.toString())):"missing"===t?i.notificationService.warn(r("missing.url","Failed to open this link because its target is missing.")):De(e)}))}},e.prototype.getLinkOccurrence=function(e){if(!this.editor.hasModel()||!e)return null;for(var t=0,n=this.editor.getModel().getDecorationsInRange({startLineNumber:e.lineNumber,startColumn:e.column,endLineNumber:e.lineNumber,endColumn:e.column},0,!0);t<n.length;t++){var i=n[t],o=this.currentOccurrences[i.id];if(o)return o}return null},e.prototype.isEnabled=function(e,t){return Boolean(6===e.target.type&&(e.hasTriggerModifier||t&&t.keyCodeIsTriggerKey))},e.prototype.stop=function(){this.timeout.cancel(),this.activeLinksList&&this.activeLinksList.dispose(),this.computePromise&&(this.computePromise.cancel(),this.computePromise=null)},e.prototype.dispose=function(){this.listenersToRemove.dispose(),this.stop(),this.timeout.dispose()},e.ID="editor.linkDetector",e.RECOMPUTE_TIME=1e3,e=IK([OK(1,pa),OK(2,ap)],e)}(),FK=function(e){function t(){return e.call(this,{id:"editor.action.openLink",label:r("label","Open Link"),alias:"Open Link",precondition:void 0})||this}return kK(t,e),t.prototype.run=function(e,t){var n=AK.get(t);if(n&&t.hasModel())for(var i=0,o=t.getSelections();i<o.length;i++){var r=o[i],s=n.getLinkOccurrence(r.getEndPosition());s&&n.openLinkOccurrence(s,!1)}},t}(kf);Pf(AK.ID,AK),Tf(FK),yg((function(e,t){var n=e.getColor(Wy);n&&t.addRule(".monaco-editor .detected-link-active { color: "+n+" !important; }")}));var WK=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),VK=function(e){function t(){return e.call(this,{id:"editor.action.insertCursorAbove",label:r("mutlicursor.insertAbove","Add Cursor Above"),alias:"Add Cursor Above",precondition:void 0,kbOpts:{kbExpr:eC.editorTextFocus,primary:2576,linux:{primary:1552,secondary:[3088]},weight:100},menuOpts:{menuId:25,group:"3_multi",title:r({key:"miInsertCursorAbove",comment:["&& denotes a mnemonic"]},"&&Add Cursor Above"),order:2}})||this}return WK(t,e),t.prototype.run=function(e,t,n){if(t.hasModel()){var i=n&&!0===n.logicalLine,o=t._getCursors(),r=o.context;r.config.readOnly||(r.model.pushStackElement(),o.setStates(n.source,3,$w.addCursorUp(r,o.getAll(),i)),o.reveal(n.source,!0,1,0))}},t}(kf),BK=function(e){function t(){return e.call(this,{id:"editor.action.insertCursorBelow",label:r("mutlicursor.insertBelow","Add Cursor Below"),alias:"Add Cursor Below",precondition:void 0,kbOpts:{kbExpr:eC.editorTextFocus,primary:2578,linux:{primary:1554,secondary:[3090]},weight:100},menuOpts:{menuId:25,group:"3_multi",title:r({key:"miInsertCursorBelow",comment:["&& denotes a mnemonic"]},"A&&dd Cursor Below"),order:3}})||this}return WK(t,e),t.prototype.run=function(e,t,n){if(t.hasModel()){var i=n&&!0===n.logicalLine,o=t._getCursors(),r=o.context;r.config.readOnly||(r.model.pushStackElement(),o.setStates(n.source,3,$w.addCursorDown(r,o.getAll(),i)),o.reveal(n.source,!0,2,0))}},t}(kf),HK=function(e){function t(){return e.call(this,{id:"editor.action.insertCursorAtEndOfEachLineSelected",label:r("mutlicursor.insertAtEndOfEachLineSelected","Add Cursors to Line Ends"),alias:"Add Cursors to Line Ends",precondition:void 0,kbOpts:{kbExpr:eC.editorTextFocus,primary:1575,weight:100},menuOpts:{menuId:25,group:"3_multi",title:r({key:"miInsertCursorAtEndOfEachLineSelected",comment:["&& denotes a mnemonic"]},"Add C&&ursors to Line Ends"),order:4}})||this}return WK(t,e),t.prototype.getCursorsForSelection=function(e,t,n){if(!e.isEmpty()){for(var i=e.startLineNumber;i<e.endLineNumber;i++){var o=t.getLineMaxColumn(i);n.push(new Sn(i,o,i,o))}e.endColumn>1&&n.push(new Sn(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn))}},t.prototype.run=function(e,t){var n=this;if(t.hasModel()){var i=t.getModel(),o=t.getSelections(),r=[];o.forEach((function(e){return n.getCursorsForSelection(e,i,r)})),r.length>0&&t.setSelections(r)}},t}(kf),zK=function(e){function t(){return e.call(this,{id:"editor.action.addCursorsToBottom",label:r("mutlicursor.addCursorsToBottom","Add Cursors To Bottom"),alias:"Add Cursors To Bottom",precondition:void 0})||this}return WK(t,e),t.prototype.run=function(e,t){if(t.hasModel()){for(var n=t.getSelections(),i=t.getModel().getLineCount(),o=[],r=n[0].startLineNumber;r<=i;r++)o.push(new Sn(r,n[0].startColumn,r,n[0].endColumn));o.length>0&&t.setSelections(o)}},t}(kf),jK=function(e){function t(){return e.call(this,{id:"editor.action.addCursorsToTop",label:r("mutlicursor.addCursorsToTop","Add Cursors To Top"),alias:"Add Cursors To Top",precondition:void 0})||this}return WK(t,e),t.prototype.run=function(e,t){if(t.hasModel()){for(var n=t.getSelections(),i=[],o=n[0].startLineNumber;o>=1;o--)i.push(new Sn(o,n[0].startColumn,o,n[0].endColumn));i.length>0&&t.setSelections(i)}},t}(kf),UK=function(e,t,n){this.selections=e,this.revealRange=t,this.revealScrollType=n},KK=function(){function e(e,t,n,i,o,r,s){this._editor=e,this.findController=t,this.isDisconnectedFromFindController=n,this.searchText=i,this.wholeWord=o,this.matchCase=r,this.currentMatch=s}return e.create=function(t,n){if(!t.hasModel())return null;var i=n.getState();if(!t.hasTextFocus()&&i.isRevealed&&i.searchString.length>0)return new e(t,n,!1,i.searchString,i.wholeWord,i.matchCase,null);var o,r,s=!1,a=t.getSelections();1===a.length&&a[0].isEmpty()?(s=!0,o=!0,r=!0):(o=i.wholeWord,r=i.matchCase);var u,l=t.getSelection(),c=null;if(l.isEmpty()){var d=t.getModel().getWordAtPosition(l.getStartPosition());if(!d)return null;u=d.word,c=new Sn(l.startLineNumber,d.startColumn,l.startLineNumber,d.endColumn)}else u=t.getModel().getValueInRange(l).replace(/\r\n/g,"\n");return new e(t,n,s,u,o,r,c)},e.prototype.addSelectionToNextFindMatch=function(){if(!this._editor.hasModel())return null;var e=this._getNextMatch();if(!e)return null;var t=this._editor.getSelections();return new UK(t.concat(e),e,0)},e.prototype.moveSelectionToNextFindMatch=function(){if(!this._editor.hasModel())return null;var e=this._getNextMatch();if(!e)return null;var t=this._editor.getSelections();return new UK(t.slice(0,t.length-1).concat(e),e,0)},e.prototype._getNextMatch=function(){if(!this._editor.hasModel())return null;if(this.currentMatch){var e=this.currentMatch;return this.currentMatch=null,e}this.findController.highlightFindOptions();var t=this._editor.getSelections(),n=t[t.length-1],i=this._editor.getModel().findNextMatch(this.searchText,n.getEndPosition(),!1,this.matchCase,this.wholeWord?this._editor.getOption(96):null,!1);return i?new Sn(i.range.startLineNumber,i.range.startColumn,i.range.endLineNumber,i.range.endColumn):null},e.prototype.addSelectionToPreviousFindMatch=function(){if(!this._editor.hasModel())return null;var e=this._getPreviousMatch();if(!e)return null;var t=this._editor.getSelections();return new UK(t.concat(e),e,0)},e.prototype.moveSelectionToPreviousFindMatch=function(){if(!this._editor.hasModel())return null;var e=this._getPreviousMatch();if(!e)return null;var t=this._editor.getSelections();return new UK(t.slice(0,t.length-1).concat(e),e,0)},e.prototype._getPreviousMatch=function(){if(!this._editor.hasModel())return null;if(this.currentMatch){var e=this.currentMatch;return this.currentMatch=null,e}this.findController.highlightFindOptions();var t=this._editor.getSelections(),n=t[t.length-1],i=this._editor.getModel().findPreviousMatch(this.searchText,n.getStartPosition(),!1,this.matchCase,this.wholeWord?this._editor.getOption(96):null,!1);return i?new Sn(i.range.startLineNumber,i.range.startColumn,i.range.endLineNumber,i.range.endColumn):null},e.prototype.selectAll=function(){return this._editor.hasModel()?(this.findController.highlightFindOptions(),this._editor.getModel().findMatches(this.searchText,!0,!1,this.matchCase,this.wholeWord?this._editor.getOption(96):null,!1,1073741824)):[]},e}(),qK=function(e){function t(t){var n=e.call(this)||this;return n._sessionDispose=n._register(new Be),n._editor=t,n._ignoreSelectionChange=!1,n._session=null,n}return WK(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.dispose=function(){this._endSession(),e.prototype.dispose.call(this)},t.prototype._beginSessionIfNeeded=function(e){var t=this;if(!this._session){var n=KK.create(this._editor,e);if(!n)return;this._session=n;var i={searchString:this._session.searchText};this._session.isDisconnectedFromFindController&&(i.wholeWordOverride=1,i.matchCaseOverride=1,i.isRegexOverride=2),e.getState().change(i,!1),this._sessionDispose.add(this._editor.onDidChangeCursorSelection((function(e){t._ignoreSelectionChange||t._endSession()}))),this._sessionDispose.add(this._editor.onDidBlurEditorText((function(){t._endSession()}))),this._sessionDispose.add(e.getState().onFindReplaceStateChange((function(e){(e.matchCase||e.wholeWord)&&t._endSession()})))}},t.prototype._endSession=function(){if(this._sessionDispose.clear(),this._session&&this._session.isDisconnectedFromFindController){this._session.findController.getState().change({wholeWordOverride:0,matchCaseOverride:0,isRegexOverride:0},!1)}this._session=null},t.prototype._setSelections=function(e){this._ignoreSelectionChange=!0,this._editor.setSelections(e),this._ignoreSelectionChange=!1},t.prototype._expandEmptyToWord=function(e,t){if(!t.isEmpty())return t;var n=e.getWordAtPosition(t.getStartPosition());return n?new Sn(t.startLineNumber,n.startColumn,t.startLineNumber,n.endColumn):t},t.prototype._applySessionResult=function(e){e&&(this._setSelections(e.selections),e.revealRange&&this._editor.revealRangeInCenterIfOutsideViewport(e.revealRange,e.revealScrollType))},t.prototype.getSession=function(e){return this._session},t.prototype.addSelectionToNextFindMatch=function(e){if(this._editor.hasModel()){if(!this._session){var t=this._editor.getSelections();if(t.length>1){var n=e.getState().matchCase;if(!nq(this._editor.getModel(),t,n)){for(var i=this._editor.getModel(),o=[],r=0,s=t.length;r<s;r++)o[r]=this._expandEmptyToWord(i,t[r]);return void this._editor.setSelections(o)}}}this._beginSessionIfNeeded(e),this._session&&this._applySessionResult(this._session.addSelectionToNextFindMatch())}},t.prototype.addSelectionToPreviousFindMatch=function(e){this._beginSessionIfNeeded(e),this._session&&this._applySessionResult(this._session.addSelectionToPreviousFindMatch())},t.prototype.moveSelectionToNextFindMatch=function(e){this._beginSessionIfNeeded(e),this._session&&this._applySessionResult(this._session.moveSelectionToNextFindMatch())},t.prototype.moveSelectionToPreviousFindMatch=function(e){this._beginSessionIfNeeded(e),this._session&&this._applySessionResult(this._session.moveSelectionToPreviousFindMatch())},t.prototype.selectAll=function(e){if(this._editor.hasModel()){var t=null,n=e.getState();if(n.isRevealed&&n.searchString.length>0&&n.isRegex)t=this._editor.getModel().findMatches(n.searchString,!0,n.isRegex,n.matchCase,n.wholeWord?this._editor.getOption(96):null,!1,1073741824);else{if(this._beginSessionIfNeeded(e),!this._session)return;t=this._session.selectAll()}if(n.searchScope){for(var i=n.searchScope,o=[],r=0;r<t.length;r++)t[r].range.endLineNumber<=i.endLineNumber&&t[r].range.startLineNumber>=i.startLineNumber&&o.push(t[r]);t=o}if(t.length>0){for(var s=this._editor.getSelection(),a=(r=0,t.length);r<a;r++){var u=t[r];if(u.range.intersectRanges(s)){t[r]=t[0],t[0]=u;break}}this._setSelections(t.map((function(e){return new Sn(e.range.startLineNumber,e.range.startColumn,e.range.endLineNumber,e.range.endColumn)})))}}},t.ID="editor.contrib.multiCursorController",t}(He),GK=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return WK(t,e),t.prototype.run=function(e,t){var n=qK.get(t);if(n){var i=SV.get(t);i&&this._run(n,i)}},t}(kf),ZK=function(e){function t(){return e.call(this,{id:"editor.action.addSelectionToNextFindMatch",label:r("addSelectionToNextFindMatch","Add Selection To Next Find Match"),alias:"Add Selection To Next Find Match",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:2082,weight:100},menuOpts:{menuId:25,group:"3_multi",title:r({key:"miAddSelectionToNextFindMatch",comment:["&& denotes a mnemonic"]},"Add &&Next Occurrence"),order:5}})||this}return WK(t,e),t.prototype._run=function(e,t){e.addSelectionToNextFindMatch(t)},t}(GK),YK=function(e){function t(){return e.call(this,{id:"editor.action.addSelectionToPreviousFindMatch",label:r("addSelectionToPreviousFindMatch","Add Selection To Previous Find Match"),alias:"Add Selection To Previous Find Match",precondition:void 0,menuOpts:{menuId:25,group:"3_multi",title:r({key:"miAddSelectionToPreviousFindMatch",comment:["&& denotes a mnemonic"]},"Add P&&revious Occurrence"),order:6}})||this}return WK(t,e),t.prototype._run=function(e,t){e.addSelectionToPreviousFindMatch(t)},t}(GK),XK=function(e){function t(){return e.call(this,{id:"editor.action.moveSelectionToNextFindMatch",label:r("moveSelectionToNextFindMatch","Move Last Selection To Next Find Match"),alias:"Move Last Selection To Next Find Match",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:gt(2089,2082),weight:100}})||this}return WK(t,e),t.prototype._run=function(e,t){e.moveSelectionToNextFindMatch(t)},t}(GK),$K=function(e){function t(){return e.call(this,{id:"editor.action.moveSelectionToPreviousFindMatch",label:r("moveSelectionToPreviousFindMatch","Move Last Selection To Previous Find Match"),alias:"Move Last Selection To Previous Find Match",precondition:void 0})||this}return WK(t,e),t.prototype._run=function(e,t){e.moveSelectionToPreviousFindMatch(t)},t}(GK),QK=function(e){function t(){return e.call(this,{id:"editor.action.selectHighlights",label:r("selectAllOccurrencesOfFindMatch","Select All Occurrences of Find Match"),alias:"Select All Occurrences of Find Match",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:3114,weight:100},menuOpts:{menuId:25,group:"3_multi",title:r({key:"miSelectHighlights",comment:["&& denotes a mnemonic"]},"Select All &&Occurrences"),order:7}})||this}return WK(t,e),t.prototype._run=function(e,t){e.selectAll(t)},t}(GK),JK=function(e){function t(){return e.call(this,{id:"editor.action.changeAll",label:r("changeAll.label","Change All Occurrences"),alias:"Change All Occurrences",precondition:Rh.and(eC.writable,eC.editorTextFocus),kbOpts:{kbExpr:eC.editorTextFocus,primary:2108,weight:100},contextMenuOpts:{group:"1_modification",order:1.2}})||this}return WK(t,e),t.prototype._run=function(e,t){e.selectAll(t)},t}(GK),eq=function(){function e(e,t,n){this.searchText=e,this.matchCase=t,this.wordSeparators=n}return e.softEquals=function(e,t){return!e&&!t||!(!e||!t)&&(e.searchText===t.searchText&&e.matchCase===t.matchCase&&e.wordSeparators===t.wordSeparators)},e}(),tq=function(e){function t(t){var n=e.call(this)||this;return n.editor=t,n._isEnabled=t.getOption(82),n.decorations=[],n.updateSoon=n._register(new wi((function(){return n._update()}),300)),n.state=null,n._register(t.onDidChangeConfiguration((function(e){n._isEnabled=t.getOption(82)}))),n._register(t.onDidChangeCursorSelection((function(e){n._isEnabled&&(e.selection.isEmpty()?3===e.reason?(n.state&&n._setState(null),n.updateSoon.schedule()):n._setState(null):n._update())}))),n._register(t.onDidChangeModel((function(e){n._setState(null)}))),n._register(SV.get(t).getState().onFindReplaceStateChange((function(e){n._update()}))),n}return WK(t,e),t.prototype._update=function(){this._setState(t._createState(this._isEnabled,this.editor))},t._createState=function(e,t){if(!e)return null;if(!t.hasModel())return null;var n=t.getSelection();if(n.startLineNumber!==n.endLineNumber)return null;var i=qK.get(t);if(!i)return null;var o=SV.get(t);if(!o)return null;var r=i.getSession(o);if(!r){var s=t.getSelections();if(s.length>1){var a=o.getState().matchCase;if(!nq(t.getModel(),s,a))return null}r=KK.create(t,o)}if(!r)return null;if(r.currentMatch)return null;if(/^[ \t]+$/.test(r.searchText))return null;if(r.searchText.length>200)return null;var u=o.getState(),l=u.matchCase;if(u.isRevealed){var c=u.searchString;l||(c=c.toLowerCase());var d=r.searchText;if(l||(d=d.toLowerCase()),c===d&&r.matchCase===u.matchCase&&r.wholeWord===u.wholeWord&&!u.isRegex)return null}return new eq(r.searchText,r.matchCase,r.wholeWord?t.getOption(96):null)},t.prototype._setState=function(e){if(eq.softEquals(this.state,e))this.state=e;else if(this.state=e,this.state){if(this.editor.hasModel()){var n=this.editor.getModel();if(!n.isTooLargeForTokenization()){var i=Tu.has(n),o=n.findMatches(this.state.searchText,!0,!1,this.state.matchCase,this.state.wordSeparators,!1).map((function(e){return e.range}));o.sort(wn.compareRangesUsingStarts);var r=this.editor.getSelections();r.sort(wn.compareRangesUsingStarts);for(var s=[],a=0,u=0,l=o.length,c=r.length;a<l;){var d=o[a];if(u>=c)s.push(d),a++;else{var h=wn.compareRangesUsingStarts(d,r[u]);h<0?(!r[u].isEmpty()&&wn.areIntersecting(d,r[u])||s.push(d),a++):(h>0||a++,u++)}}var p=s.map((function(e){return{range:e,options:i?t._SELECTION_HIGHLIGHT:t._SELECTION_HIGHLIGHT_OVERVIEW}}));this.decorations=this.editor.deltaDecorations(this.decorations,p)}}}else this.decorations=this.editor.deltaDecorations(this.decorations,[])},t.prototype.dispose=function(){this._setState(null),e.prototype.dispose.call(this)},t.ID="editor.contrib.selectionHighlighter",t._SELECTION_HIGHLIGHT_OVERVIEW=kv.register({stickiness:1,className:"selectionHighlight",overviewRuler:{color:gg(wb),position:Va.Center}}),t._SELECTION_HIGHLIGHT=kv.register({stickiness:1,className:"selectionHighlight"}),t}(He);function nq(e,t,n){for(var i=iq(e,t[0],!n),o=1,r=t.length;o<r;o++){var s=t[o];if(s.isEmpty())return!1;if(i!==iq(e,s,!n))return!1}return!0}function iq(e,t,n){var i=e.getValueInRange(t);return n?i.toLowerCase():i}Pf(qK.ID,qK),Pf(tq.ID,tq),Tf(VK),Tf(BK),Tf(HK),Tf(ZK),Tf(YK),Tf(XK),Tf($K),Tf(QK),Tf(JK),Tf(zK),Tf(jK);n(419);var oq=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},rq=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},sq={Visible:new Kh("parameterHintsVisible",!1),MultipleSignatures:new Kh("parameterHintsMultipleSignatures",!1)};function aq(e,t,n,i){return vi(Iu.ordered(e).map((function(o){return function(){return Promise.resolve(o.provideSignatureHelp(e,t,i,n)).catch((function(e){return Ne(e)}))}})))}If("_executeSignatureHelpProvider",(function(e,t,n){return oq(void 0,void 0,void 0,(function(){var i;return rq(this,(function(o){switch(o.label){case 0:return[4,aq(e,t,{triggerKind:gu.Invoke,isRetrigger:!1,triggerCharacter:n.triggerCharacter},et.None)];case 1:return(i=o.sent())?(setTimeout((function(){return i.dispose()}),0),[2,i.value]):[2,void 0]}}))}))}));var uq,lq=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),cq=function(){return(cq=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},dq=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},hq=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}};!function(e){e.Default={type:0};var t=function(e){this.request=e,this.type=2};e.Pending=t;var n=function(e){this.hints=e,this.type=1};e.Active=n}(uq||(uq={}));var pq=function(e){function t(n,i){void 0===i&&(i=t.DEFAULT_DELAY);var o=e.call(this)||this;return o._onChangedHints=o._register(new nt),o.onChangedHints=o._onChangedHints.event,o.triggerOnType=!1,o._state=uq.Default,o._pendingTriggers=[],o._lastSignatureHelpResult=o._register(new ze),o.triggerChars=new ic,o.retriggerChars=new ic,o.triggerId=0,o.editor=n,o.throttledDelayer=new fi(i),o._register(o.editor.onDidChangeConfiguration((function(){return o.onEditorConfigurationChange()}))),o._register(o.editor.onDidChangeModel((function(e){return o.onModelChanged()}))),o._register(o.editor.onDidChangeModelLanguage((function(e){return o.onModelChanged()}))),o._register(o.editor.onDidChangeCursorSelection((function(e){return o.onCursorChange(e)}))),o._register(o.editor.onDidChangeModelContent((function(e){return o.onModelContentChange()}))),o._register(Iu.onDidChange(o.onModelChanged,o)),o._register(o.editor.onDidType((function(e){return o.onDidType(e)}))),o.onEditorConfigurationChange(),o.onModelChanged(),o}return lq(t,e),Object.defineProperty(t.prototype,"state",{get:function(){return this._state},set:function(e){2===this._state.type&&this._state.request.cancel(),this._state=e},enumerable:!0,configurable:!0}),t.prototype.cancel=function(e){void 0===e&&(e=!1),this.state=uq.Default,this.throttledDelayer.cancel(),e||this._onChangedHints.fire(void 0)},t.prototype.trigger=function(e,t){var n=this,i=this.editor.getModel();if(i&&Iu.has(i)){var o=++this.triggerId;this._pendingTriggers.push(e),this.throttledDelayer.trigger((function(){return n.doTrigger(o)}),t).catch(De)}},t.prototype.next=function(){if(1===this.state.type){var e=this.state.hints.signatures.length,t=this.state.hints.activeSignature,n=t%e==e-1,i=this.editor.getOption(64).cycle;!(e<2||n)||i?this.updateActiveSignature(n&&i?0:t+1):this.cancel()}},t.prototype.previous=function(){if(1===this.state.type){var e=this.state.hints.signatures.length,t=this.state.hints.activeSignature,n=0===t,i=this.editor.getOption(64).cycle;!(e<2||n)||i?this.updateActiveSignature(n&&i?e-1:t-1):this.cancel()}},t.prototype.updateActiveSignature=function(e){1===this.state.type&&(this.state=new uq.Active(cq(cq({},this.state.hints),{activeSignature:e})),this._onChangedHints.fire(this.state.hints))},t.prototype.doTrigger=function(e){return dq(this,void 0,void 0,(function(){var t,n,i,o,r,s,a,u;return hq(this,(function(l){switch(l.label){case 0:if(t=1===this.state.type||2===this.state.type,n=1===this.state.type?this.state.hints:void 0,this.cancel(!0),0===this._pendingTriggers.length)return[2,!1];if(i=this._pendingTriggers.reduce(fq),this._pendingTriggers=[],o={triggerKind:i.triggerKind,triggerCharacter:i.triggerCharacter,isRetrigger:t,activeSignatureHelp:n},!this.editor.hasModel())return[2,!1];r=this.editor.getModel(),s=this.editor.getPosition(),this.state=new uq.Pending(hi((function(e){return aq(r,s,o,e)}))),l.label=1;case 1:return l.trys.push([1,3,,4]),[4,this.state.request];case 2:return a=l.sent(),e!==this.triggerId?(null==a||a.dispose(),[2,!1]):a&&a.value.signatures&&0!==a.value.signatures.length?(this.state=new uq.Active(a.value),this._lastSignatureHelpResult.value=a,this._onChangedHints.fire(this.state.hints),[2,!0]):(null==a||a.dispose(),this._lastSignatureHelpResult.clear(),this.cancel(),[2,!1]);case 3:return u=l.sent(),e===this.triggerId&&(this.state=uq.Default),De(u),[2,!1];case 4:return[2]}}))}))},Object.defineProperty(t.prototype,"isTriggered",{get:function(){return 1===this.state.type||2===this.state.type||this.throttledDelayer.isTriggered()},enumerable:!0,configurable:!0}),t.prototype.onModelChanged=function(){this.cancel(),this.triggerChars=new ic,this.retriggerChars=new ic;var e=this.editor.getModel();if(e)for(var t=0,n=Iu.ordered(e);t<n.length;t++){for(var i=n[t],o=0,r=i.signatureHelpTriggerCharacters||[];o<r.length;o++){var s=r[o];this.triggerChars.add(s.charCodeAt(0)),this.retriggerChars.add(s.charCodeAt(0))}for(var a=0,u=i.signatureHelpRetriggerCharacters||[];a<u.length;a++){s=u[a];this.retriggerChars.add(s.charCodeAt(0))}}},t.prototype.onDidType=function(e){if(this.triggerOnType){var t=e.length-1,n=e.charCodeAt(t);(this.triggerChars.has(n)||this.isTriggered&&this.retriggerChars.has(n))&&this.trigger({triggerKind:gu.TriggerCharacter,triggerCharacter:e.charAt(t)})}},t.prototype.onCursorChange=function(e){"mouse"===e.source?this.cancel():this.isTriggered&&this.trigger({triggerKind:gu.ContentChange})},t.prototype.onModelContentChange=function(){this.isTriggered&&this.trigger({triggerKind:gu.ContentChange})},t.prototype.onEditorConfigurationChange=function(){this.triggerOnType=this.editor.getOption(64).enabled,this.triggerOnType||this.cancel()},t.prototype.dispose=function(){this.cancel(!0),e.prototype.dispose.call(this)},t.DEFAULT_DELAY=120,t}(He);function fq(e,t){switch(t.triggerKind){case gu.Invoke:return t;case gu.ContentChange:return e;case gu.TriggerCharacter:default:return t}}var gq=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),mq=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},vq=function(e,t){return function(n,i){t(n,i,e)}},_q=er,yq=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r.editor=t,r.renderDisposeables=r._register(new Be),r.visible=!1,r.announcedLabel=null,r.allowEditorOverflow=!0,r.markdownRenderer=r._register(new _U(t,o,i)),r.model=r._register(new pq(t)),r.keyVisible=sq.Visible.bindTo(n),r.keyMultipleSignatures=sq.MultipleSignatures.bindTo(n),r._register(r.model.onChangedHints((function(e){e?(r.show(),r.render(e)):r.hide()}))),r}return gq(t,e),t.prototype.createParamaterHintDOMNodes=function(){var e=this,t=_q(".editor-widget.parameter-hints-widget"),n=Xo(t,_q(".wrapper"));n.tabIndex=-1;var i=Xo(n,_q(".controls")),o=Xo(i,_q(".button.codicon.codicon-chevron-up")),r=Xo(i,_q(".overloads")),s=Xo(i,_q(".button.codicon.codicon-chevron-down")),a=$n(Xn(o,"click"));this._register(a(this.previous,this));var u=$n(Xn(s,"click"));this._register(u(this.next,this));var l=_q(".body"),c=new gS(l,{});this._register(c),n.appendChild(c.getDomNode());var d=Xo(l,_q(".signature")),h=Xo(l,_q(".docs"));t.style.userSelect="text",this.domNodes={element:t,signature:d,overloads:r,docs:h,scrollbar:c},this.editor.addContentWidget(this),this.hide(),this._register(this.editor.onDidChangeCursorSelection((function(t){e.visible&&e.editor.layoutContentWidget(e)})));var p=function(){if(e.domNodes){var t=e.editor.getOption(34);e.domNodes.element.style.fontSize=t.fontSize+"px"}};p(),this._register(Ge.chain(this.editor.onDidChangeConfiguration.bind(this.editor)).filter((function(e){return e.hasChanged(34)})).on(p,null)),this._register(this.editor.onDidLayoutChange((function(t){return e.updateMaxHeight()}))),this.updateMaxHeight()},t.prototype.show=function(){var e=this;this.visible||(this.domNodes||this.createParamaterHintDOMNodes(),this.keyVisible.set(!0),this.visible=!0,setTimeout((function(){e.domNodes&&no(e.domNodes.element,"visible")}),100),this.editor.layoutContentWidget(this))},t.prototype.hide=function(){this.visible&&(this.keyVisible.reset(),this.visible=!1,this.announcedLabel=null,this.domNodes&&oo(this.domNodes.element,"visible"),this.editor.layoutContentWidget(this))},t.prototype.getPosition=function(){return this.visible?{position:this.editor.getPosition(),preference:[1,2]}:null},t.prototype.render=function(e){if(this.domNodes){var t=e.signatures.length>1;so(this.domNodes.element,"multiple",t),this.keyMultipleSignatures.set(t),this.domNodes.signature.innerHTML="",this.domNodes.docs.innerHTML="";var n=e.signatures[e.activeSignature];if(n){var i=Xo(this.domNodes.signature,_q(".code")),o=n.parameters.length>0,s=this.editor.getOption(34);if(i.style.fontSize=s.fontSize+"px",i.style.fontFamily=s.fontFamily,o)this.renderParameters(i,n,e.activeParameter);else Xo(i,_q("span")).textContent=n.label;this.renderDisposeables.clear();var a=n.parameters[e.activeParameter];if(a&&a.documentation){var u=_q("span.documentation");if("string"==typeof a.documentation)u.textContent=a.documentation;else{var l=this.markdownRenderer.render(a.documentation);no(l.element,"markdown-docs"),this.renderDisposeables.add(l),u.appendChild(l.element)}Xo(this.domNodes.docs,_q("p",{},u))}if(void 0===n.documentation);else if("string"==typeof n.documentation)Xo(this.domNodes.docs,_q("p",{},n.documentation));else{l=this.markdownRenderer.render(n.documentation);no(l.element,"markdown-docs"),this.renderDisposeables.add(l),Xo(this.domNodes.docs,l.element)}var c=this.hasDocs(n,a);if(so(this.domNodes.signature,"has-docs",c),so(this.domNodes.docs,"empty",!c),this.domNodes.overloads.textContent=dr(e.activeSignature+1,e.signatures.length.toString().length)+"/"+e.signatures.length,a){var d=this.getParameterLabel(n,e.activeParameter);this.announcedLabel!==d&&(Zp(r("hint","{0}, hint",d)),this.announcedLabel=d)}this.editor.layoutContentWidget(this),this.domNodes.scrollbar.scanDomNode()}}},t.prototype.hasDocs=function(e,t){return!!(t&&"string"==typeof t.documentation&&t.documentation.length>0)||(!!(t&&"object"==typeof t.documentation&&t.documentation.value.length>0)||("string"==typeof e.documentation&&e.documentation.length>0||"object"==typeof e.documentation&&e.documentation.value.length>0))},t.prototype.renderParameters=function(e,t,n){var i=this.getParameterLabelOffsets(t,n),o=i[0],r=i[1],s=document.createElement("span");s.textContent=t.label.substring(0,o);var a=document.createElement("span");a.textContent=t.label.substring(o,r),a.className="parameter active";var u=document.createElement("span");u.textContent=t.label.substring(r),Xo(e,s,a,u)},t.prototype.getParameterLabel=function(e,t){var n=e.parameters[t];return"string"==typeof n.label?n.label:e.label.substring(n.label[0],n.label[1])},t.prototype.getParameterLabelOffsets=function(e,t){var n=e.parameters[t];if(n){if(Array.isArray(n.label))return n.label;var i=e.label.lastIndexOf(n.label);return i>=0?[i,i+n.label.length]:[0,0]}return[0,0]},t.prototype.next=function(){this.editor.focus(),this.model.next()},t.prototype.previous=function(){this.editor.focus(),this.model.previous()},t.prototype.cancel=function(){this.model.cancel()},t.prototype.getDomNode=function(){return this.domNodes||this.createParamaterHintDOMNodes(),this.domNodes.element},t.prototype.getId=function(){return t.ID},t.prototype.trigger=function(e){this.model.trigger(e,0)},t.prototype.updateMaxHeight=function(){if(this.domNodes){var e=Math.max(this.editor.getLayoutInfo().height/4,250)+"px";this.domNodes.element.style.maxHeight=e;var t=this.domNodes.element.getElementsByClassName("wrapper");t.length&&(t[0].style.maxHeight=e)}},t.ID="editor.widget.parameterHintsWidget",t=mq([vq(1,qh),vq(2,pa),vq(3,lN)],t)}(He);yg((function(e,t){var n=e.getColor(Ay);if(n){var i="hc"===e.type?2:1;t.addRule(".monaco-editor .parameter-hints-widget { border: "+i+"px solid "+n+"; }"),t.addRule(".monaco-editor .parameter-hints-widget.multiple .body { border-left: 1px solid "+n.transparent(.5)+"; }"),t.addRule(".monaco-editor .parameter-hints-widget .signature.has-docs { border-bottom: 1px solid "+n.transparent(.5)+"; }")}var o=e.getColor(Py);o&&t.addRule(".monaco-editor .parameter-hints-widget { background-color: "+o+"; }");var r=e.getColor(P_);r&&t.addRule(".monaco-editor .parameter-hints-widget a { color: "+r+"; }");var s=e.getColor(Ry);s&&t.addRule(".monaco-editor .parameter-hints-widget { color: "+s+"; }");var a=e.getColor(R_);a&&t.addRule(".monaco-editor .parameter-hints-widget code { background-color: "+a+"; }")}));var bq=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),wq=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Cq=function(e,t){return function(n,i){t(n,i,e)}},Sq=function(e){function t(t,n){var i=e.call(this)||this;return i.editor=t,i.widget=i._register(n.createInstance(yq,i.editor)),i}return bq(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.cancel=function(){this.widget.cancel()},t.prototype.previous=function(){this.widget.previous()},t.prototype.next=function(){this.widget.next()},t.prototype.trigger=function(e){this.widget.trigger(e)},t.ID="editor.controller.parameterHints",t=wq([Cq(1,In)],t)}(He),Lq=function(e){function t(){return e.call(this,{id:"editor.action.triggerParameterHints",label:r("parameterHints.trigger.label","Trigger Parameter Hints"),alias:"Trigger Parameter Hints",precondition:eC.hasSignatureHelpProvider,kbOpts:{kbExpr:eC.editorTextFocus,primary:3082,weight:100}})||this}return bq(t,e),t.prototype.run=function(e,t){var n=Sq.get(t);n&&n.trigger({triggerKind:gu.Invoke})},t}(kf);Pf(Sq.ID,Sq),Tf(Lq);var xq=Nf.bindToContribution(Sq.get);Mf(new xq({id:"closeParameterHints",precondition:sq.Visible,handler:function(e){return e.cancel()},kbOpts:{weight:175,kbExpr:eC.focus,primary:9,secondary:[1033]}})),Mf(new xq({id:"showPrevParameterHint",precondition:Rh.and(sq.Visible,sq.MultipleSignatures),handler:function(e){return e.previous()},kbOpts:{weight:175,kbExpr:eC.focus,primary:16,secondary:[528],mac:{primary:16,secondary:[528,302]}}})),Mf(new xq({id:"showNextParameterHint",precondition:Rh.and(sq.Visible,sq.MultipleSignatures),handler:function(e){return e.next()},kbOpts:{weight:175,kbExpr:eC.focus,primary:18,secondary:[530],mac:{primary:18,secondary:[530,300]}}}));n(420);var Dq=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Nq=function(e,t){return function(n,i){t(n,i,e)}},kq=new Kh("renameInputVisible",!1),Eq=function(){function e(e,t,n,i,o){var r=this;this._editor=e,this._acceptKeybindings=t,this._themeService=n,this._keybindingService=i,this._disposables=new Be,this.allowEditorOverflow=!0,this._visibleContextKey=kq.bindTo(o),this._editor.addContentWidget(this),this._disposables.add(this._editor.onDidChangeConfiguration((function(e){e.hasChanged(34)&&r._updateFont()}))),this._disposables.add(n.onThemeChange(this._updateStyles,this))}return e.prototype.dispose=function(){this._disposables.dispose(),this._editor.removeContentWidget(this)},e.prototype.getId=function(){return"__renameInputWidget"},e.prototype.getDomNode=function(){var e=this;if(!this._domNode){this._domNode=document.createElement("div"),this._domNode.className="monaco-editor rename-box",this._input=document.createElement("input"),this._input.className="rename-input",this._input.type="text",this._input.setAttribute("aria-label",r("renameAriaLabel","Rename input. Type new name and press Enter to commit.")),this._domNode.appendChild(this._input),this._label=document.createElement("div"),this._label.className="rename-label",this._domNode.appendChild(this._label);var t=function(){var t,n,i=e._acceptKeybindings,o=i[0],s=i[1];e._keybindingService.lookupKeybinding(o),e._label.innerText=r("label","{0} to Rename, {1} to Preview",null===(t=e._keybindingService.lookupKeybinding(o))||void 0===t?void 0:t.getLabel(),null===(n=e._keybindingService.lookupKeybinding(s))||void 0===n?void 0:n.getLabel())};t(),this._disposables.add(this._keybindingService.onDidUpdateKeybindings(t)),this._updateFont(),this._updateStyles(this._themeService.getTheme())}return this._domNode},e.prototype._updateStyles=function(e){var t,n,i,o;if(this._input&&this._domNode){var r=e.getColor(A_);this._domNode.style.backgroundColor=String(null!==(t=e.getColor(_y))&&void 0!==t?t:""),this._domNode.style.boxShadow=r?" 0 2px 8px "+r:"",this._domNode.style.color=String(null!==(n=e.getColor(W_))&&void 0!==n?n:""),this._input.style.backgroundColor=String(null!==(i=e.getColor(F_))&&void 0!==i?i:"");var s=e.getColor(V_);this._input.style.borderWidth=s?"1px":"0px",this._input.style.borderStyle=s?"solid":"none",this._input.style.borderColor=null!==(o=null==s?void 0:s.toString())&&void 0!==o?o:"none"}},e.prototype._updateFont=function(){if(this._input&&this._label){var e=this._editor.getOption(34);this._input.style.fontFamily=e.fontFamily,this._input.style.fontWeight=e.fontWeight,this._input.style.fontSize=e.fontSize+"px",this._label.style.fontSize=.8*e.fontSize+"px"}},e.prototype.getPosition=function(){return this._visible?{position:this._position,preference:[2,1]}:null},e.prototype.acceptInput=function(e){this._currentAcceptInput&&this._currentAcceptInput(e)},e.prototype.cancelInput=function(e){this._currentCancelInput&&this._currentCancelInput(e)},e.prototype.getInput=function(e,t,n,i,o){var r=this;so(this._domNode,"preview",o),this._position=new bn(e.startLineNumber,e.startColumn),this._input.value=t,this._input.setAttribute("selectionStart",n.toString()),this._input.setAttribute("selectionEnd",i.toString()),this._input.size=Math.max(1.1*(e.endColumn-e.startColumn),20);var s=new Be;return new Promise((function(n){r._currentCancelInput=function(e){return r._currentAcceptInput=void 0,r._currentCancelInput=void 0,n(e),!0},r._currentAcceptInput=function(e){0!==r._input.value.trim().length&&r._input.value!==t?(r._currentAcceptInput=void 0,r._currentCancelInput=void 0,n({newName:r._input.value,wantsPreview:o&&e})):r.cancelInput(!0)};s.add(r._editor.onDidChangeCursorSelection((function(){var t=r._editor.getPosition();t&&wn.containsPosition(e,t)||r.cancelInput(!0)}))),s.add(r._editor.onDidBlurEditorWidget((function(){return r.cancelInput(!1)}))),r._show()})).finally((function(){s.dispose(),r._hide()}))},e.prototype._show=function(){var e=this;this._editor.revealLineInCenterIfOutsideViewport(this._position.lineNumber,0),this._visible=!0,this._visibleContextKey.set(!0),this._editor.layoutContentWidget(this),setTimeout((function(){e._input.focus(),e._input.setSelectionRange(parseInt(e._input.getAttribute("selectionStart")),parseInt(e._input.getAttribute("selectionEnd")))}),100)},e.prototype._hide=function(){this._visible=!1,this._visibleContextKey.reset(),this._editor.layoutContentWidget(this)},e=Dq([Nq(2,fg),Nq(3,XD),Nq(4,qh)],e)}(),Iq=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Oq=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Mq=function(e,t){return function(n,i){t(n,i,e)}},Tq=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},Pq=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},Rq=function(){function e(e,t){this.model=e,this.position=t,this._providers=ku.ordered(e)}return e.prototype.hasProvider=function(){return this._providers.length>0},e.prototype.resolveRenameLocation=function(e){return Tq(this,void 0,void 0,(function(){var t,n,i,o;return Pq(this,(function(r){switch(r.label){case 0:return(t=this._providers[0])?t.resolveRenameLocation?(i=Xs,[4,t.resolveRenameLocation(this.model,this.position,e)]):[3,2]:[2,void 0];case 1:n=i.apply(void 0,[r.sent()]),r.label=2;case 2:return!n&&(o=this.model.getWordAtPosition(this.position))?[2,{range:new wn(this.position.lineNumber,o.startColumn,this.position.lineNumber,o.endColumn),text:o.word}]:[2,n]}}))}))},e.prototype.provideRenameEdits=function(e,t,n,i){return Tq(this,void 0,void 0,(function(){var o,s;return Pq(this,(function(a){switch(a.label){case 0:return(o=this._providers[t])?[4,o.provideRenameEdits(this.model,this.position,e,i)]:[2,{edits:[],rejectReason:n.join("\n")}];case 1:return(s=a.sent())?s.rejectReason?[2,this.provideRenameEdits(e,t+1,n.concat(s.rejectReason),i)]:[2,s]:[2,this.provideRenameEdits(e,t+1,n.concat(r("no result","No result.")),i)]}}))}))},e}();var Aq=function(){function e(e,t,n,i,o,r,s){var a=this;this.editor=e,this._instaService=t,this._notificationService=n,this._bulkEditService=i,this._progressService=o,this._logService=r,this._configService=s,this._dispoableStore=new Be,this._cts=new ct,this._renameInputField=this._dispoableStore.add(new Si((function(){return a._dispoableStore.add(a._instaService.createInstance(Eq,a.editor,["acceptRenameInput","acceptRenameInputWithPreview"]))})))}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.dispose=function(){this._dispoableStore.dispose(),this._cts.dispose(!0)},e.prototype.run=function(){return Tq(this,void 0,void 0,(function(){var e,t,n,i,o,s,a,u,l,c,d,h=this;return Pq(this,(function(p){switch(p.label){case 0:if(this._cts.dispose(!0),!this.editor.hasModel())return[2,void 0];if(e=this.editor.getPosition(),!(t=new Rq(this.editor.getModel(),e)).hasProvider())return[2,void 0];this._cts=new rD(this.editor,5),p.label=1;case 1:return p.trys.push([1,3,,4]),i=t.resolveRenameLocation(this._cts.token),this._progressService.showWhile(i,250),[4,i];case 2:return n=p.sent(),[3,4];case 3:return o=p.sent(),KR.get(this.editor).showMessage(o||r("resolveRenameLocationFailed","An unknown error occurred while resolving rename location"),e),[2,void 0];case 4:return n?n.rejectReason?(KR.get(this.editor).showMessage(n.rejectReason,e),[2,void 0]):this._cts.token.isCancellationRequested?[2,void 0]:(s=this.editor.getSelection(),a=0,u=n.text.length,wn.isEmpty(s)||wn.spansMultipleLines(s)||!wn.containsRange(n.range,s)||(a=Math.max(0,s.startColumn-n.range.startColumn),u=Math.min(n.range.endColumn,s.endColumn)-n.range.startColumn),l=this._bulkEditService.hasPreviewHandler()&&this._configService.getValue(this.editor.getModel().uri,"editor.rename.enablePreview"),[4,this._renameInputField.getValue().getInput(n.range,n.text,a,u,l)]):[2,void 0];case 5:return"boolean"==typeof(c=p.sent())?(c&&this.editor.focus(),[2,void 0]):(this.editor.focus(),d=pi(t.provideRenameEdits(c.newName,0,[],this._cts.token),this._cts.token).then((function(e){return Tq(h,void 0,void 0,(function(){var t=this;return Pq(this,(function(i){return e&&this.editor.hasModel()?e.rejectReason?(this._notificationService.info(e.rejectReason),[2]):(this._bulkEditService.apply(e,{editor:this.editor,showPreview:c.wantsPreview,label:r("label","Renaming '{0}'",null==n?void 0:n.text)}).then((function(e){e.ariaSummary&&Zp(r("aria","Successfully renamed '{0}' to '{1}'. Summary: {2}",n.text,c.newName,e.ariaSummary))})).catch((function(e){t._notificationService.error(r("rename.failedApply","Rename failed to apply edits")),t._logService.error(e)})),[2]):[2]}))}))}),(function(e){h._notificationService.error(r("rename.failed","Rename failed to compute edits")),h._logService.error(e)})),this._progressService.showWhile(d,250),[2,d])}}))}))},e.prototype.acceptRenameInput=function(e){this._renameInputField.getValue().acceptInput(e)},e.prototype.cancelRenameInput=function(){this._renameInputField.getValue().cancelInput(!0)},e.ID="editor.contrib.renameController",e=Oq([Mq(1,In),Mq(2,ap),Mq(3,uN),Mq(4,OD),Mq(5,yc),Mq(6,vc)],e)}(),Fq=function(e){function t(){return e.call(this,{id:"editor.action.rename",label:r("rename.label","Rename Symbol"),alias:"Rename Symbol",precondition:Rh.and(eC.writable,eC.hasRenameProvider),kbOpts:{kbExpr:eC.editorTextFocus,primary:60,weight:100},contextMenuOpts:{group:"1_modification",order:1.1}})||this}return Iq(t,e),t.prototype.runCommand=function(t,n){var i=this,o=t.get(Pn),r=Array.isArray(n)&&n||[void 0,void 0],s=r[0],a=r[1];return Et.isUri(s)&&bn.isIPosition(a)?o.openCodeEditor({resource:s},o.getActiveCodeEditor()).then((function(e){e&&(e.setPosition(a),e.invokeWithinContext((function(t){return i.reportTelemetry(t,e),i.run(t,e)})))}),De):e.prototype.runCommand.call(this,t,n)},t.prototype.run=function(e,t){var n=Aq.get(t);return n?n.run():Promise.resolve()},t}(kf);Pf(Aq.ID,Aq),Tf(Fq);var Wq=Nf.bindToContribution(Aq.get);Mf(new Wq({id:"acceptRenameInput",precondition:kq,handler:function(e){return e.acceptRenameInput(!1)},kbOpts:{weight:199,kbExpr:eC.focus,primary:3}})),Mf(new Wq({id:"acceptRenameInputWithPreview",precondition:Rh.and(kq,Rh.has("config.editor.rename.enablePreview")),handler:function(e){return e.acceptRenameInput(!0)},kbOpts:{weight:199,kbExpr:eC.focus,primary:1027}})),Mf(new Wq({id:"cancelRenameInput",precondition:kq,handler:function(e){return e.cancelRenameInput()},kbOpts:{weight:199,kbExpr:eC.focus,primary:9,secondary:[1033]}})),If("_executeDocumentRenameProvider",(function(e,t,n){var i=n.newName;if("string"!=typeof i)throw Oe("newName");return function(e,t,n){return Tq(this,void 0,void 0,(function(){return Pq(this,(function(i){return[2,new Rq(e,t).provideRenameEdits(n,0,[],et.None)]}))}))}(e,t,i)})),Td.as(Ad).registerConfiguration({id:"editor",properties:{"editor.rename.enablePreview":{scope:5,description:r("enablePreview","Enable/disable the ability to preview changes before renaming"),default:!0,type:"boolean"}}});var Vq=function(){function e(){}return e.prototype.provideSelectionRanges=function(e,t){for(var n=[],i=0,o=t;i<o.length;i++){var r=o[i],s=[];n.push(s),this._addInWordRanges(s,e,r),this._addWordRanges(s,e,r),this._addWhitespaceLine(s,e,r),s.push({range:e.getFullModelRange()})}return n},e.prototype._addInWordRanges=function(e,t,n){var i=t.getWordAtPosition(n);if(i){for(var o=i.word,r=i.startColumn,s=n.column-r,a=s,u=s,l=0;a>=0;a--){if(95===(c=o.charCodeAt(a))||45===c)break;if(Dr(c)&&Nr(l))break;l=c}for(a+=1;u<o.length;u++){var c;if(Nr(c=o.charCodeAt(u))&&Dr(l))break;if(95===c||45===c)break;l=c}a<u&&e.push({range:new wn(n.lineNumber,r+a,n.lineNumber,r+u)})}},e.prototype._addWordRanges=function(e,t,n){var i=t.getWordAtPosition(n);i&&e.push({range:new wn(n.lineNumber,i.startColumn,n.lineNumber,i.endColumn)})},e.prototype._addWhitespaceLine=function(e,t,n){t.getLineLength(n.lineNumber)>0&&0===t.getLineFirstNonWhitespaceColumn(n.lineNumber)&&0===t.getLineLastNonWhitespaceColumn(n.lineNumber)&&e.push({range:new wn(n.lineNumber,1,n.lineNumber,t.getLineMaxColumn(n.lineNumber))})},e}(),Bq=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},Hq=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},zq=function(){function e(){}return e.prototype.provideSelectionRanges=function(t,n){return Bq(this,void 0,void 0,(function(){var i,o,r,s,a;return Hq(this,(function(u){switch(u.label){case 0:i=[],o=function(n){var o,r;return Hq(this,(function(s){switch(s.label){case 0:return o=[],i.push(o),r=new Map,[4,new Promise((function(i){return e._bracketsRightYield(i,0,t,n,r)}))];case 1:return s.sent(),[4,new Promise((function(i){return e._bracketsLeftYield(i,0,t,n,r,o)}))];case 2:return s.sent(),[2]}}))},r=0,s=n,u.label=1;case 1:return r<s.length?(a=s[r],[5,o(a)]):[3,4];case 2:u.sent(),u.label=3;case 3:return r++,[3,1];case 4:return[2,i]}}))}))},e._bracketsRightYield=function(t,n,i,o,r){for(var s=new Map,a=Date.now();;){if(n>=e._maxRounds){t();break}if(!o){t();break}var u=i.findNextBracket(o);if(!u){t();break}if(Date.now()-a>e._maxDuration){setTimeout((function(){return e._bracketsRightYield(t,n+1,i,o,r)}));break}var l=u.close[0];if(u.isOpen){var c=s.has(l)?s.get(l):0;s.set(l,c+1)}else{c=s.has(l)?s.get(l):0;if(c-=1,s.set(l,Math.max(0,c)),c<0){var d=r.get(l);d||(d=new Qe,r.set(l,d)),d.push(u.range)}}o=u.range.getEndPosition()}},e._bracketsLeftYield=function(t,n,i,o,r,s){for(var a=new Map,u=Date.now();;){if(n>=e._maxRounds&&0===r.size){t();break}if(!o){t();break}var l=i.findPrevBracket(o);if(!l){t();break}if(Date.now()-u>e._maxDuration){setTimeout((function(){return e._bracketsLeftYield(t,n+1,i,o,r,s)}));break}var c=l.close[0];if(l.isOpen){g=a.has(c)?a.get(c):0;if(g-=1,a.set(c,Math.max(0,g)),g<0){var d=r.get(c);if(d){var h=d.shift();0===d.size&&r.delete(c);var p=wn.fromPositions(l.range.getEndPosition(),h.getStartPosition()),f=wn.fromPositions(l.range.getStartPosition(),h.getEndPosition());s.push({range:p}),s.push({range:f}),e._addBracketLeading(i,f,s)}}}else{var g=a.has(c)?a.get(c):0;a.set(c,g+1)}o=l.range.getStartPosition()}},e._addBracketLeading=function(e,t,n){if(t.startLineNumber!==t.endLineNumber){var i=t.startLineNumber,o=e.getLineFirstNonWhitespaceColumn(i);0!==o&&o!==t.startColumn&&(n.push({range:wn.fromPositions(new bn(i,o),t.getEndPosition())}),n.push({range:wn.fromPositions(new bn(i,1),t.getEndPosition())}));var r=i-1;if(r>0){var s=e.getLineFirstNonWhitespaceColumn(r);s===t.startColumn&&s!==e.getLineLastNonWhitespaceColumn(r)&&(n.push({range:wn.fromPositions(new bn(r,s),t.getEndPosition())}),n.push({range:wn.fromPositions(new bn(r,1),t.getEndPosition())}))}}},e._maxDuration=30,e._maxRounds=2,e}(),jq=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Uq=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},Kq=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},qq=function(){function e(e,t){this.index=e,this.ranges=t}return e.prototype.mov=function(t){var n=this.index+(t?1:-1);if(n<0||n>=this.ranges.length)return this;var i=new e(n,this.ranges);return i.ranges[n].equalsRange(this.ranges[this.index])?i.mov(t):i},e}(),Gq=function(){function e(e){this._ignoreSelection=!1,this._editor=e}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.dispose=function(){Ae(this._selectionListener)},e.prototype.run=function(e){var t=this;if(this._editor.hasModel()){var n=this._editor.getSelections(),i=this._editor.getModel();if(Ku.has(i)){var o=Promise.resolve(void 0);return this._state||(o=Jq(i,n.map((function(e){return e.getPosition()})),et.None).then((function(e){if(Oi(e)&&e.length===n.length&&t._editor.hasModel()&&xi(t._editor.getSelections(),n,(function(e,t){return e.equalsSelection(t)}))){for(var i=function(t){e[t]=e[t].filter((function(e){return e.containsPosition(n[t].getStartPosition())&&e.containsPosition(n[t].getEndPosition())})),e[t].unshift(n[t])},o=0;o<e.length;o++)i(o);t._state=e.map((function(e){return new qq(0,e)})),Ae(t._selectionListener),t._selectionListener=t._editor.onDidChangeCursorPosition((function(){t._ignoreSelection||(Ae(t._selectionListener),t._state=void 0)}))}}))),o.then((function(){if(t._state){t._state=t._state.map((function(t){return t.mov(e)}));var n=t._state.map((function(e){return Sn.fromPositions(e.ranges[e.index].getStartPosition(),e.ranges[e.index].getEndPosition())}));t._ignoreSelection=!0;try{t._editor.setSelections(n)}finally{t._ignoreSelection=!1}}}))}}},e.ID="editor.contrib.smartSelectController",e}(),Zq=function(e){function t(t,n){var i=e.call(this,n)||this;return i._forward=t,i}return jq(t,e),t.prototype.run=function(e,t){return Uq(this,void 0,void 0,(function(){var e;return Kq(this,(function(n){switch(n.label){case 0:return(e=Gq.get(t))?[4,e.run(this._forward)]:[3,2];case 1:n.sent(),n.label=2;case 2:return[2]}}))}))},t}(kf),Yq=function(e){function t(){return e.call(this,!0,{id:"editor.action.smartSelect.expand",label:r("smartSelect.expand","Expand Selection"),alias:"Expand Selection",precondition:void 0,kbOpts:{kbExpr:eC.editorTextFocus,primary:1553,mac:{primary:3345,secondary:[1297]},weight:100},menuOpts:{menuId:25,group:"1_basic",title:r({key:"miSmartSelectGrow",comment:["&& denotes a mnemonic"]},"&&Expand Selection"),order:2}})||this}return jq(t,e),t}(Zq);ca.registerCommandAlias("editor.action.smartSelect.grow","editor.action.smartSelect.expand");var Xq,$q,Qq=function(e){function t(){return e.call(this,!1,{id:"editor.action.smartSelect.shrink",label:r("smartSelect.shrink","Shrink Selection"),alias:"Shrink Selection",precondition:void 0,kbOpts:{kbExpr:eC.editorTextFocus,primary:1551,mac:{primary:3343,secondary:[1295]},weight:100},menuOpts:{menuId:25,group:"1_basic",title:r({key:"miSmartSelectShrink",comment:["&& denotes a mnemonic"]},"&&Shrink Selection"),order:3}})||this}return jq(t,e),t}(Zq);function Jq(e,t,n){var i=Ku.all(e);1===i.length&&i.unshift(new zq);for(var o=[],r=[],s=0,a=i;s<a.length;s++){var u=a[s];o.push(Promise.resolve(u.provideSelectionRanges(e,t,n)).then((function(e){if(Oi(e)&&e.length===t.length)for(var n=0;n<t.length;n++){r[n]||(r[n]=[]);for(var i=0,o=e[n];i<o.length;i++){var s=o[i];wn.isIRange(s.range)&&wn.containsPosition(s.range,t[n])&&r[n].push(wn.lift(s.range))}}}),Ne))}return Promise.all(o).then((function(){return r.map((function(t){if(0===t.length)return[];t.sort((function(e,t){return bn.isBefore(e.getStartPosition(),t.getStartPosition())?1:bn.isBefore(t.getStartPosition(),e.getStartPosition())||bn.isBefore(e.getEndPosition(),t.getEndPosition())?-1:bn.isBefore(t.getEndPosition(),e.getEndPosition())?1:0}));for(var n,i=[],o=0,r=t;o<r.length;o++){var s=r[o];(!n||wn.containsRange(s,n)&&!wn.equalsRange(s,n))&&(i.push(s),n=s)}for(var a=[i[0]],u=1;u<i.length;u++){var l=i[u-1],c=i[u];if(c.startLineNumber!==l.startLineNumber||c.endLineNumber!==l.endLineNumber){var d=new wn(l.startLineNumber,e.getLineFirstNonWhitespaceColumn(l.startLineNumber),l.endLineNumber,e.getLineLastNonWhitespaceColumn(l.endLineNumber));d.containsRange(l)&&!d.equalsRange(l)&&c.containsRange(d)&&!c.equalsRange(d)&&a.push(d);var h=new wn(l.startLineNumber,1,l.endLineNumber,e.getLineMaxColumn(l.endLineNumber));h.containsRange(l)&&!h.equalsRange(d)&&c.containsRange(h)&&!c.equalsRange(h)&&a.push(h)}a.push(c)}return a}))}))}Pf(Gq.ID,Gq),Tf(Yq),Tf(Qq),Ku.register("*",new Vq),Xq="_executeSelectionRangeProvider",$q=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=t[0];return Jq(e,i,et.None)},ca.registerCommand(Xq,(function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=t[0];zs(Et.isUri(i));var o=e.get(du).getModel(i);return o?$q(o,t.slice(1)):e.get(tl).createModelReference(i).then((function(e){return new Promise((function(n,i){try{n($q(e.object.textEditorModel,t.slice(1)))}catch(e){i(e)}})).finally((function(){e.dispose()}))}))}));var eG=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},tG=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},nG={Visible:new Kh("suggestWidgetVisible",!1),MultipleSuggestions:new Kh("suggestWidgetMultipleSuggestions",!1),MakesTextEdit:new Kh("suggestionMakesTextEdit",!0),AcceptSuggestionsOnEnter:new Kh("acceptSuggestionOnEnter",!0)},iG=function(e,t,n,i,o){var r=this;this.position=e,this.completion=t,this.container=n,this.provider=i,this.isResolved=!1,this.score=nI.Default,this.distance=0,this.textLabel="string"==typeof t.label?t.label:t.label.name,this.labelLow=this.textLabel.toLowerCase(),this.sortTextLow=t.sortText&&t.sortText.toLowerCase(),this.filterTextLow=t.filterText&&t.filterText.toLowerCase(),wn.isIRange(t.range)?(this.editStart=new bn(t.range.startLineNumber,t.range.startColumn),this.editInsertEnd=new bn(t.range.endLineNumber,t.range.endColumn),this.editReplaceEnd=new bn(t.range.endLineNumber,t.range.endColumn)):(this.editStart=new bn(t.range.insert.startLineNumber,t.range.insert.startColumn),this.editInsertEnd=new bn(t.range.insert.endLineNumber,t.range.insert.endColumn),this.editReplaceEnd=new bn(t.range.replace.endLineNumber,t.range.replace.endColumn));var s,a=i.resolveCompletionItem;"function"!=typeof a?(this.resolve=function(){return Promise.resolve()},this.isResolved=!0):this.resolve=function(n){return s||(s=Promise.resolve(a.call(i,o,e,t,n)).then((function(e){!function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];t.forEach((function(t){return Object.keys(t).forEach((function(n){return e[n]=t[n]}))}))}(t,e),r.isResolved=!0}),(function(e){Ee(e)&&(s=void 0)})),n.onCancellationRequested((function(){r.isResolved||(s=void 0)}))),s}},oG=function(){function e(e,t,n){void 0===e&&(e=2),void 0===t&&(t=new Set),void 0===n&&(n=new Set),this.snippetSortOrder=e,this.kindFilter=t,this.providerFilter=n}return e.default=new e,e}();function rG(e,t,n,i,o){void 0===n&&(n=oG.default),void 0===i&&(i={triggerKind:0}),void 0===o&&(o=et.None);var r=e.getWordAtPosition(t),s=r?new wn(t.lineNumber,r.startColumn,t.lineNumber,r.endColumn):wn.fromPositions(t),a=s.setEndPosition(t.lineNumber,t.column);t=t.clone();var u=Eu.orderedGroups(e);n.kindFilter.has(25);var l=[],c=new Be,d=!1;return vi(u.map((function(r){return function(){return Promise.all(r.map((function(r){if(!(n.providerFilter.size>0)||n.providerFilter.has(r))return Promise.resolve(r.provideCompletionItems(e,t,i,o)).then((function(i){var o=l.length;if(i){for(var u=0,h=i.suggestions||[];u<h.length;u++){var p=h[u];n.kindFilter.has(p.kind)||(p.range||(p.range={insert:a,replace:s}),p.sortText||(p.sortText="string"==typeof p.label?p.label:p.label.name),l.push(new iG(t,p,i,r,e)))}Re(i)&&c.add(i)}o!==l.length&&void 0!==r&&(d=!0)}),Ne)})))}})),(function(){return d||o.isCancellationRequested})).then((function(){return o.isCancellationRequested?(c.dispose(),Promise.reject(Ie())):l.sort(uG(n.snippetSortOrder))}))}function sG(e,t){if(e.sortTextLow&&t.sortTextLow){if(e.sortTextLow<t.sortTextLow)return-1;if(e.sortTextLow>t.sortTextLow)return 1}return e.completion.label<t.completion.label?-1:e.completion.label>t.completion.label?1:e.completion.kind-t.completion.kind}var aG=new Map;function uG(e){return aG.get(e)}aG.set(0,(function(e,t){if(e.completion.kind!==t.completion.kind){if(25===e.completion.kind)return-1;if(25===t.completion.kind)return 1}return sG(e,t)})),aG.set(2,(function(e,t){if(e.completion.kind!==t.completion.kind){if(25===e.completion.kind)return 1;if(25===t.completion.kind)return-1}return sG(e,t)})),aG.set(1,sG),If("_executeCompletionItemProvider",(function(e,t,n){return eG(void 0,void 0,void 0,(function(){var i,o,r,s,a,u,l,c;return tG(this,(function(d){switch(d.label){case 0:return i={incomplete:!1,suggestions:[]},o=new Be,r=[],s=n.maxItemsToResolve||0,[4,rG(e,t)];case 1:for(a=d.sent(),u=0,l=a;u<l.length;u++)c=l[u],r.length<s&&r.push(c.resolve(et.None)),i.incomplete=i.incomplete||c.container.incomplete,i.suggestions.push(c.completion),Re(c.container)&&o.add(c.container);d.label=2;case 2:return d.trys.push([2,,4,5]),[4,Promise.all(r)];case 3:return d.sent(),[2,i];case 4:return setTimeout((function(){return o.dispose()}),100),[7];case 5:return[2]}}))}))}));var lG=new(function(){function e(){this.onlyOnceSuggestions=[]}return e.prototype.provideCompletionItems=function(){var e={suggestions:this.onlyOnceSuggestions.slice(0)};return this.onlyOnceSuggestions.length=0,e},e}());Eu.register("*",lG);n(421);var cG,dG=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),hG=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},pG=function(){function e(){this.value="",this.pos=0}return e.isDigitCharacter=function(e){return e>=48&&e<=57},e.isVariableCharacter=function(e){return 95===e||e>=97&&e<=122||e>=65&&e<=90},e.prototype.text=function(e){this.value=e,this.pos=0},e.prototype.tokenText=function(e){return this.value.substr(e.pos,e.len)},e.prototype.next=function(){if(this.pos>=this.value.length)return{type:14,pos:this.pos,len:0};var t,n=this.pos,i=0,o=this.value.charCodeAt(n);if("number"==typeof(t=e._table[o]))return this.pos+=1,{type:t,pos:n,len:1};if(e.isDigitCharacter(o)){t=8;do{i+=1,o=this.value.charCodeAt(n+i)}while(e.isDigitCharacter(o));return this.pos+=i,{type:t,pos:n,len:i}}if(e.isVariableCharacter(o)){t=9;do{o=this.value.charCodeAt(n+ ++i)}while(e.isVariableCharacter(o)||e.isDigitCharacter(o));return this.pos+=i,{type:t,pos:n,len:i}}t=10;do{i+=1,o=this.value.charCodeAt(n+i)}while(!isNaN(o)&&void 0===e._table[o]&&!e.isDigitCharacter(o)&&!e.isVariableCharacter(o));return this.pos+=i,{type:t,pos:n,len:i}},e._table=((cG={})[36]=0,cG[58]=1,cG[44]=2,cG[123]=3,cG[125]=4,cG[92]=5,cG[47]=6,cG[124]=7,cG[43]=11,cG[45]=12,cG[63]=13,cG),e}(),fG=function(){function e(){this._children=[]}return e.prototype.appendChild=function(e){return e instanceof gG&&this._children[this._children.length-1]instanceof gG?this._children[this._children.length-1].value+=e.value:(e.parent=this,this._children.push(e)),this},e.prototype.replace=function(e,t){var n=e.parent,i=n.children.indexOf(e),o=n.children.slice(0);o.splice.apply(o,hG([i,1],t)),n._children=o,function e(t,n){for(var i=0,o=t;i<o.length;i++){var r=o[i];r.parent=n,e(r.children,r)}}(t,n)},Object.defineProperty(e.prototype,"children",{get:function(){return this._children},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"snippet",{get:function(){for(var e=this;;){if(!e)return;if(e instanceof SG)return e;e=e.parent}},enumerable:!0,configurable:!0}),e.prototype.toString=function(){return this.children.reduce((function(e,t){return e+t.toString()}),"")},e.prototype.len=function(){return 0},e}(),gG=function(e){function t(t){var n=e.call(this)||this;return n.value=t,n}return dG(t,e),t.prototype.toString=function(){return this.value},t.prototype.len=function(){return this.value.length},t.prototype.clone=function(){return new t(this.value)},t}(fG),mG=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return dG(t,e),t}(fG),vG=function(e){function t(t){var n=e.call(this)||this;return n.index=t,n}return dG(t,e),t.compareByIndex=function(e,t){return e.index===t.index?0:e.isFinalTabstop?1:t.isFinalTabstop||e.index<t.index?-1:e.index>t.index?1:0},Object.defineProperty(t.prototype,"isFinalTabstop",{get:function(){return 0===this.index},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"choice",{get:function(){return 1===this._children.length&&this._children[0]instanceof _G?this._children[0]:void 0},enumerable:!0,configurable:!0}),t.prototype.clone=function(){var e=new t(this.index);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map((function(e){return e.clone()})),e},t}(mG),_G=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.options=[],t}return dG(t,e),t.prototype.appendChild=function(e){return e instanceof gG&&(e.parent=this,this.options.push(e)),this},t.prototype.toString=function(){return this.options[0].value},t.prototype.len=function(){return this.options[0].len()},t.prototype.clone=function(){var e=new t;return this.options.forEach(e.appendChild,e),e},t}(fG),yG=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.regexp=new RegExp(""),t}return dG(t,e),t.prototype.resolve=function(e){var t=this,n=!1,i=e.replace(this.regexp,(function(){return n=!0,t._replace(Array.prototype.slice.call(arguments,0,-2))}));return!n&&this._children.some((function(e){return e instanceof bG&&Boolean(e.elseValue)}))&&(i=this._replace([])),i},t.prototype._replace=function(e){for(var t="",n=0,i=this._children;n<i.length;n++){var o=i[n];if(o instanceof bG){var r=e[o.index]||"";t+=r=o.resolve(r)}else t+=o.toString()}return t},t.prototype.toString=function(){return""},t.prototype.clone=function(){var e=new t;return e.regexp=new RegExp(this.regexp.source,(this.regexp.ignoreCase?"i":"")+(this.regexp.global?"g":"")),e._children=this.children.map((function(e){return e.clone()})),e},t}(fG),bG=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r.index=t,r.shorthandName=n,r.ifValue=i,r.elseValue=o,r}return dG(t,e),t.prototype.resolve=function(e){return"upcase"===this.shorthandName?e?e.toLocaleUpperCase():"":"downcase"===this.shorthandName?e?e.toLocaleLowerCase():"":"capitalize"===this.shorthandName?e?e[0].toLocaleUpperCase()+e.substr(1):"":"pascalcase"===this.shorthandName?e?this._toPascalCase(e):"":Boolean(e)&&"string"==typeof this.ifValue?this.ifValue:Boolean(e)||"string"!=typeof this.elseValue?e||"":this.elseValue},t.prototype._toPascalCase=function(e){var t=e.match(/[a-z]+/gi);return t?t.map((function(e){return e.charAt(0).toUpperCase()+e.substr(1).toLowerCase()})).join(""):e},t.prototype.clone=function(){return new t(this.index,this.shorthandName,this.ifValue,this.elseValue)},t}(fG),wG=function(e){function t(t){var n=e.call(this)||this;return n.name=t,n}return dG(t,e),t.prototype.resolve=function(e){var t=e.resolve(this);return this.transform&&(t=this.transform.resolve(t||"")),void 0!==t&&(this._children=[new gG(t)],!0)},t.prototype.clone=function(){var e=new t(this.name);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map((function(e){return e.clone()})),e},t}(mG);function CG(e,t){for(var n=hG(e);n.length>0;){var i=n.shift();if(!t(i))break;n.unshift.apply(n,i.children)}}var SG=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return dG(t,e),Object.defineProperty(t.prototype,"placeholderInfo",{get:function(){if(!this._placeholders){var e,t=[];this.walk((function(n){return n instanceof vG&&(t.push(n),e=!e||e.index<n.index?n:e),!0})),this._placeholders={all:t,last:e}}return this._placeholders},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"placeholders",{get:function(){return this.placeholderInfo.all},enumerable:!0,configurable:!0}),t.prototype.offset=function(e){var t=0,n=!1;return this.walk((function(i){return i===e?(n=!0,!1):(t+=i.len(),!0)})),n?t:-1},t.prototype.fullLen=function(e){var t=0;return CG([e],(function(e){return t+=e.len(),!0})),t},t.prototype.enclosingPlaceholders=function(e){for(var t=[],n=e.parent;n;)n instanceof vG&&t.push(n),n=n.parent;return t},t.prototype.resolveVariables=function(e){var t=this;return this.walk((function(n){return n instanceof wG&&n.resolve(e)&&(t._placeholders=void 0),!0})),this},t.prototype.appendChild=function(t){return this._placeholders=void 0,e.prototype.appendChild.call(this,t)},t.prototype.replace=function(t,n){return this._placeholders=void 0,e.prototype.replace.call(this,t,n)},t.prototype.clone=function(){var e=new t;return this._children=this.children.map((function(e){return e.clone()})),e},t.prototype.walk=function(e){CG(this.children,e)},t}(fG),LG=function(){function e(){this._scanner=new pG,this._token={type:14,pos:0,len:0}}return e.escape=function(e){return e.replace(/\$|}|\\/g,"\\$&")},e.prototype.parse=function(e,t,n){this._scanner.text(e),this._token=this._scanner.next();for(var i=new SG;this._parse(i););var o=new Map,r=[],s=0;i.walk((function(e){return e instanceof vG&&(s+=1,e.isFinalTabstop?o.set(0,void 0):!o.has(e.index)&&e.children.length>0?o.set(e.index,e.children):r.push(e)),!0}));for(var a=0,u=r;a<u.length;a++){var l=u[a],c=o.get(l.index);if(c){var d=new vG(l.index);d.transform=l.transform;for(var h=0,p=c;h<p.length;h++){var f=p[h];d.appendChild(f.clone())}i.replace(l,[d])}}return n||(n=s>0&&t),!o.has(0)&&n&&i.appendChild(new vG(0)),i},e.prototype._accept=function(e,t){if(void 0===e||this._token.type===e){var n=!t||this._scanner.tokenText(this._token);return this._token=this._scanner.next(),n}return!1},e.prototype._backTo=function(e){return this._scanner.pos=e.pos+e.len,this._token=e,!1},e.prototype._until=function(e){for(var t=this._token;this._token.type!==e;){if(14===this._token.type)return!1;if(5===this._token.type){var n=this._scanner.next();if(0!==n.type&&4!==n.type&&5!==n.type)return!1}this._token=this._scanner.next()}var i=this._scanner.value.substring(t.pos,this._token.pos).replace(/\\(\$|}|\\)/g,"$1");return this._token=this._scanner.next(),i},e.prototype._parse=function(e){return this._parseEscaped(e)||this._parseTabstopOrVariableName(e)||this._parseComplexPlaceholder(e)||this._parseComplexVariable(e)||this._parseAnything(e)},e.prototype._parseEscaped=function(e){var t;return!!(t=this._accept(5,!0))&&(t=this._accept(0,!0)||this._accept(4,!0)||this._accept(5,!0)||t,e.appendChild(new gG(t)),!0)},e.prototype._parseTabstopOrVariableName=function(e){var t,n=this._token;return this._accept(0)&&(t=this._accept(9,!0)||this._accept(8,!0))?(e.appendChild(/^\d+$/.test(t)?new vG(Number(t)):new wG(t)),!0):this._backTo(n)},e.prototype._parseComplexPlaceholder=function(e){var t,n=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(8,!0))))return this._backTo(n);var i=new vG(Number(t));if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(i),!0;if(!this._parse(i))return e.appendChild(new gG("${"+t+":")),i.children.forEach(e.appendChild,e),!0}else{if(!(i.index>0&&this._accept(7)))return this._accept(6)?this._parseTransform(i)?(e.appendChild(i),!0):(this._backTo(n),!1):this._accept(4)?(e.appendChild(i),!0):this._backTo(n);for(var o=new _G;;){if(this._parseChoiceElement(o)){if(this._accept(2))continue;if(this._accept(7)&&(i.appendChild(o),this._accept(4)))return e.appendChild(i),!0}return this._backTo(n),!1}}},e.prototype._parseChoiceElement=function(e){for(var t=this._token,n=[];2!==this._token.type&&7!==this._token.type;){var i=void 0;if(!(i=(i=this._accept(5,!0))?this._accept(2,!0)||this._accept(7,!0)||this._accept(5,!0)||i:this._accept(void 0,!0)))return this._backTo(t),!1;n.push(i)}return 0===n.length?(this._backTo(t),!1):(e.appendChild(new gG(n.join(""))),!0)},e.prototype._parseComplexVariable=function(e){var t,n=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(9,!0))))return this._backTo(n);var i=new wG(t);if(!this._accept(1))return this._accept(6)?this._parseTransform(i)?(e.appendChild(i),!0):(this._backTo(n),!1):this._accept(4)?(e.appendChild(i),!0):this._backTo(n);for(;;){if(this._accept(4))return e.appendChild(i),!0;if(!this._parse(i))return e.appendChild(new gG("${"+t+":")),i.children.forEach(e.appendChild,e),!0}},e.prototype._parseTransform=function(e){for(var t=new yG,n="",i="";!this._accept(6);){var o=void 0;if(o=this._accept(5,!0))n+=o=this._accept(6,!0)||o;else{if(14===this._token.type)return!1;n+=this._accept(void 0,!0)}}for(;!this._accept(6);){o=void 0;if(o=this._accept(5,!0))o=this._accept(5,!0)||this._accept(6,!0)||o,t.appendChild(new gG(o));else if(!this._parseFormatString(t)&&!this._parseAnything(t))return!1}for(;!this._accept(4);){if(14===this._token.type)return!1;i+=this._accept(void 0,!0)}try{t.regexp=new RegExp(n,i)}catch(e){return!1}return e.transform=t,!0},e.prototype._parseFormatString=function(e){var t=this._token;if(!this._accept(0))return!1;var n=!1;this._accept(3)&&(n=!0);var i=this._accept(8,!0);if(!i)return this._backTo(t),!1;if(!n)return e.appendChild(new bG(Number(i))),!0;if(this._accept(4))return e.appendChild(new bG(Number(i))),!0;if(!this._accept(1))return this._backTo(t),!1;if(this._accept(6)){var o=this._accept(9,!0);return o&&this._accept(4)?(e.appendChild(new bG(Number(i),o)),!0):(this._backTo(t),!1)}if(this._accept(11)){if(r=this._until(4))return e.appendChild(new bG(Number(i),void 0,r,void 0)),!0}else if(this._accept(12)){if(s=this._until(4))return e.appendChild(new bG(Number(i),void 0,void 0,s)),!0}else if(this._accept(13)){var r;if(r=this._until(1))if(s=this._until(4))return e.appendChild(new bG(Number(i),void 0,r,s)),!0}else{var s;if(s=this._until(4))return e.appendChild(new bG(Number(i),void 0,void 0,s)),!0}return this._backTo(t),!1},e.prototype._parseAnything=function(e){return 14!==this._token.type&&(e.appendChild(new gG(this._scanner.tokenText(this._token))),this._accept(void 0),!0)},e}();function xG(e){return e instanceof Et}var DG=function(){function e(e){this._delegates=e}return e.prototype.resolve=function(e){for(var t=0,n=this._delegates;t<n.length;t++){var i=n[t].resolve(e);if(void 0!==i)return i}},e}(),NG=function(){function e(e,t){this._model=e,this._selection=t}return e.prototype.resolve=function(e){var t=e.name;if("SELECTION"===t||"TM_SELECTED_TEXT"===t){var n=this._model.getValueInRange(this._selection)||void 0;if(n&&this._selection.startLineNumber!==this._selection.endLineNumber&&e.snippet){var i=Cr(this._model.getLineContent(this._selection.startLineNumber),0,this._selection.startColumn-1),o=i;e.snippet.walk((function(t){return t!==e&&(t instanceof gG&&(o=Cr(t.value.split(/\r\n|\r|\n/).pop())),!0)}));var r=Mr(o,i);n=n.replace(/(\r\n|\r|\n)(.*)/g,(function(e,t,n){return""+t+o.substr(r)+n}))}return n}if("TM_CURRENT_LINE"===t)return this._model.getLineContent(this._selection.positionLineNumber);if("TM_CURRENT_WORD"===t){var s=this._model.getWordAtPosition({lineNumber:this._selection.positionLineNumber,column:this._selection.positionColumn});return s&&s.word||void 0}return"TM_LINE_INDEX"===t?String(this._selection.positionLineNumber-1):"TM_LINE_NUMBER"===t?String(this._selection.positionLineNumber):void 0},e}(),kG=function(){function e(e,t){this._labelService=e,this._model=t}return e.prototype.resolve=function(e){var t=e.name;if("TM_FILENAME"===t)return vs(this._model.uri.fsPath);if("TM_FILENAME_BASE"===t){var n=vs(this._model.uri.fsPath),i=n.lastIndexOf(".");return i<=0?n:n.slice(0,i)}return"TM_DIRECTORY"===t&&this._labelService?"."===ms(this._model.uri.fsPath)?"":this._labelService.getUriLabel(Ns(this._model.uri)):"TM_FILEPATH"===t&&this._labelService?this._labelService.getUriLabel(this._model.uri):void 0},e}(),EG=function(){function e(e,t,n,i){this._readClipboardText=e,this._selectionIdx=t,this._selectionCount=n,this._spread=i}return e.prototype.resolve=function(e){if("CLIPBOARD"===e.name){var t=this._readClipboardText();if(t){if(this._spread){var n=t.split(/\r\n|\n|\r/).filter((function(e){return!cr(e)}));if(n.length===this._selectionCount)return n[this._selectionIdx]}return t}}},e}(),IG=function(){function e(e){this._model=e}return e.prototype.resolve=function(e){var t=e.name,n=this._model.getLanguageIdentifier(),i=Ol.getComments(n.id);if(i)return"LINE_COMMENT"===t?i.lineCommentToken||void 0:"BLOCK_COMMENT_START"===t?i.blockCommentStartToken||void 0:"BLOCK_COMMENT_END"===t&&i.blockCommentEndToken||void 0},e}(),OG=function(){function e(){}return e.prototype.resolve=function(t){var n=t.name;return"CURRENT_YEAR"===n?String((new Date).getFullYear()):"CURRENT_YEAR_SHORT"===n?String((new Date).getFullYear()).slice(-2):"CURRENT_MONTH"===n?dr((new Date).getMonth().valueOf()+1,2):"CURRENT_DATE"===n?dr((new Date).getDate().valueOf(),2):"CURRENT_HOUR"===n?dr((new Date).getHours().valueOf(),2):"CURRENT_MINUTE"===n?dr((new Date).getMinutes().valueOf(),2):"CURRENT_SECOND"===n?dr((new Date).getSeconds().valueOf(),2):"CURRENT_DAY_NAME"===n?e.dayNames[(new Date).getDay()]:"CURRENT_DAY_NAME_SHORT"===n?e.dayNamesShort[(new Date).getDay()]:"CURRENT_MONTH_NAME"===n?e.monthNames[(new Date).getMonth()]:"CURRENT_MONTH_NAME_SHORT"===n?e.monthNamesShort[(new Date).getMonth()]:"CURRENT_SECONDS_UNIX"===n?String(Math.floor(Date.now()/1e3)):void 0},e.dayNames=[r("Sunday","Sunday"),r("Monday","Monday"),r("Tuesday","Tuesday"),r("Wednesday","Wednesday"),r("Thursday","Thursday"),r("Friday","Friday"),r("Saturday","Saturday")],e.dayNamesShort=[r("SundayShort","Sun"),r("MondayShort","Mon"),r("TuesdayShort","Tue"),r("WednesdayShort","Wed"),r("ThursdayShort","Thu"),r("FridayShort","Fri"),r("SaturdayShort","Sat")],e.monthNames=[r("January","January"),r("February","February"),r("March","March"),r("April","April"),r("May","May"),r("June","June"),r("July","July"),r("August","August"),r("September","September"),r("October","October"),r("November","November"),r("December","December")],e.monthNamesShort=[r("JanuaryShort","Jan"),r("FebruaryShort","Feb"),r("MarchShort","Mar"),r("AprilShort","Apr"),r("MayShort","May"),r("JuneShort","Jun"),r("JulyShort","Jul"),r("AugustShort","Aug"),r("SeptemberShort","Sep"),r("OctoberShort","Oct"),r("NovemberShort","Nov"),r("DecemberShort","Dec")],e}(),MG=function(){function e(e){this._workspaceService=e}return e.prototype.resolve=function(e){if(this._workspaceService){var t,n=(t=this._workspaceService.getWorkspace()).configuration?{configPath:t.configuration,id:t.id}:1===t.folders.length?t.folders[0].uri:void 0;if(n)return"WORKSPACE_NAME"===e.name?this._resolveWorkspaceName(n):"WORKSPACE_FOLDER"===e.name?this._resoveWorkspacePath(n):void 0}},e.prototype._resolveWorkspaceName=function(e){if(xG(e))return vs(e.path);var t=vs(e.configPath.path);return _r(t,"code-workspace")&&(t=t.substr(0,t.length-"code-workspace".length-1)),t},e.prototype._resoveWorkspacePath=function(e){if(xG(e))return UH(e.fsPath);var t=vs(e.configPath.path),n=e.configPath.fsPath;return _r(n,t)&&(n=n.substr(0,n.length-t.length-1)),n?UH(n):"/"},e}(),TG=function(){function e(){}return e.prototype.resolve=function(e){var t=e.name;return"RANDOM"===t?Math.random().toString().slice(-6):"RANDOM_HEX"===t?Math.random().toString(16).slice(-6):void 0},e}();yg((function(e,t){function n(t){var n=e.getColor(t);return n?n.toString():"transparent"}t.addRule(".monaco-editor .snippet-placeholder { background-color: "+n(mb)+"; outline-color: "+n(vb)+"; }"),t.addRule(".monaco-editor .finish-snippet-placeholder { background-color: "+n(_b)+"; outline-color: "+n(yb)+"; }")}));var PG=function(){function e(e,t,n){this._nestingLevel=1,this._editor=e,this._snippet=t,this._offset=n,this._placeholderGroups=ki(t.placeholders,vG.compareByIndex),this._placeholderGroupsIdx=-1}return e.prototype.dispose=function(){if(this._placeholderDecorations){var e=[];this._placeholderDecorations.forEach((function(t){return e.push(t)})),this._editor.deltaDecorations(e,[])}this._placeholderGroups.length=0},e.prototype._initDecorations=function(){var t=this;if(!this._placeholderDecorations){this._placeholderDecorations=new Map;var n=this._editor.getModel();this._editor.changeDecorations((function(i){for(var o=0,r=t._snippet.placeholders;o<r.length;o++){var s=r[o],a=t._snippet.offset(s),u=t._snippet.fullLen(s),l=wn.fromPositions(n.getPositionAt(t._offset+a),n.getPositionAt(t._offset+a+u)),c=s.isFinalTabstop?e._decor.inactiveFinal:e._decor.inactive,d=i.addDecoration(l,c);t._placeholderDecorations.set(s,d)}}))}},e.prototype.move=function(t){var n=this;if(!this._editor.hasModel())return[];if(this._initDecorations(),this._placeholderGroupsIdx>=0){for(var i=[],o=0,r=this._placeholderGroups[this._placeholderGroupsIdx];o<r.length;o++){var s=r[o];if(s.transform){var a=this._placeholderDecorations.get(s),u=this._editor.getModel().getDecorationRange(a),l=this._editor.getModel().getValueInRange(u);i.push(bh.replaceMove(u,s.transform.resolve(l)))}}i.length>0&&this._editor.executeEdits("snippet.placeholderTransform",i)}var c=!1;!0===t&&this._placeholderGroupsIdx<this._placeholderGroups.length-1?(this._placeholderGroupsIdx+=1,c=!0):!1===t&&this._placeholderGroupsIdx>0&&(this._placeholderGroupsIdx-=1,c=!0);var d=this._editor.getModel().changeDecorations((function(t){for(var i=new Set,o=[],r=0,s=n._placeholderGroups[n._placeholderGroupsIdx];r<s.length;r++){var a=s[r],u=n._placeholderDecorations.get(a),l=n._editor.getModel().getDecorationRange(u);o.push(new Sn(l.startLineNumber,l.startColumn,l.endLineNumber,l.endColumn)),c=c&&n._hasPlaceholderBeenCollapsed(a),t.changeDecorationOptions(u,a.isFinalTabstop?e._decor.activeFinal:e._decor.active),i.add(a);for(var d=0,h=n._snippet.enclosingPlaceholders(a);d<h.length;d++){var p=h[d],f=n._placeholderDecorations.get(p);t.changeDecorationOptions(f,p.isFinalTabstop?e._decor.activeFinal:e._decor.active),i.add(p)}}return n._placeholderDecorations.forEach((function(n,o){i.has(o)||t.changeDecorationOptions(n,o.isFinalTabstop?e._decor.inactiveFinal:e._decor.inactive)})),o}));return c?this.move(t):d},e.prototype._hasPlaceholderBeenCollapsed=function(e){for(var t=e;t;){if(t instanceof vG){var n=this._placeholderDecorations.get(t);if(this._editor.getModel().getDecorationRange(n).isEmpty()&&t.toString().length>0)return!0}t=t.parent}return!1},Object.defineProperty(e.prototype,"isAtFirstPlaceholder",{get:function(){return this._placeholderGroupsIdx<=0||0===this._placeholderGroups.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isAtLastPlaceholder",{get:function(){return this._placeholderGroupsIdx===this._placeholderGroups.length-1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasPlaceholder",{get:function(){return this._snippet.placeholders.length>0},enumerable:!0,configurable:!0}),e.prototype.computePossibleSelections=function(){for(var e=new Map,t=0,n=this._placeholderGroups;t<n.length;t++)for(var i=void 0,o=0,r=n[t];o<r.length;o++){var s=r[o];if(s.isFinalTabstop)break;i||(i=[],e.set(s.index,i));var a=this._placeholderDecorations.get(s),u=this._editor.getModel().getDecorationRange(a);if(!u){e.delete(s.index);break}i.push(u)}return e},Object.defineProperty(e.prototype,"choice",{get:function(){return this._placeholderGroups[this._placeholderGroupsIdx][0].choice},enumerable:!0,configurable:!0}),e.prototype.merge=function(t){var n=this,i=this._editor.getModel();this._nestingLevel*=10,this._editor.changeDecorations((function(o){for(var r=0,s=n._placeholderGroups[n._placeholderGroupsIdx];r<s.length;r++){var a=s[r],u=t.shift();console.assert(!u._placeholderDecorations);for(var l=u._snippet.placeholderInfo.last.index,c=0,d=u._snippet.placeholderInfo.all;c<d.length;c++){var h=d[c];h.isFinalTabstop?h.index=a.index+(l+1)/n._nestingLevel:h.index=a.index+h.index/n._nestingLevel}n._snippet.replace(a,u._snippet.children);var p=n._placeholderDecorations.get(a);o.removeDecoration(p),n._placeholderDecorations.delete(a);for(var f=0,g=u._snippet.placeholders;f<g.length;f++){var m=g[f],v=u._snippet.offset(m),_=u._snippet.fullLen(m),y=wn.fromPositions(i.getPositionAt(u._offset+v),i.getPositionAt(u._offset+v+_)),b=o.addDecoration(y,e._decor.inactive);n._placeholderDecorations.set(m,b)}}n._placeholderGroups=ki(n._snippet.placeholders,vG.compareByIndex)}))},e._decor={active:kv.register({stickiness:0,className:"snippet-placeholder"}),inactive:kv.register({stickiness:1,className:"snippet-placeholder"}),activeFinal:kv.register({stickiness:1,className:"finish-snippet-placeholder"}),inactiveFinal:kv.register({stickiness:1,className:"finish-snippet-placeholder"})},e}(),RG={overwriteBefore:0,overwriteAfter:0,adjustWhitespace:!0,clipboardText:void 0},AG=function(){function e(e,t,n){void 0===n&&(n=RG),this._templateMerges=[],this._snippets=[],this._editor=e,this._template=t,this._options=n}return e.adjustWhitespace=function(e,t,n,i,o){var r=Cr(e.getLineContent(t.lineNumber),0,t.column-1);n.walk((function(t){if(t instanceof gG&&!(t.parent instanceof _G)){var n=t.value.split(/\r\n|\r|\n/);if(i)for(var s=1;s<n.length;s++){var a=Cr(n[s]);n[s]=e.normalizeIndentation(r+a)+n[s].substr(a.length)}if(o){var u=n.join(e.getEOL());u!==t.value&&t.parent.replace(t,[new gG(u)])}}return!0}))},e.adjustSelection=function(e,t,n,i){if(0!==n||0!==i){var o=t.positionLineNumber,r=t.positionColumn,s=r-n,a=r+i,u=e.validateRange({startLineNumber:o,startColumn:s,endLineNumber:o,endColumn:a});t=Sn.createWithDirection(u.startLineNumber,u.startColumn,u.endLineNumber,u.endColumn,t.getDirection())}return t},e.createEditsAndSnippets=function(t,n,i,o,r,s,a){var u=[],l=[];if(!t.hasModel())return{edits:u,snippets:l};for(var c=t.getModel(),d=t.invokeWithinContext((function(e){return e.get(lp,Tn)})),h=t.invokeWithinContext((function(e){return new kG(e.get(yE,Tn),c)})),p=t.invokeWithinContext((function(e){return e.get($D,Tn)})),f=function(){return a||p&&p.readTextSync()},g=0,m=c.getValueInRange(e.adjustSelection(c,t.getSelection(),i,0)),v=c.getValueInRange(e.adjustSelection(c,t.getSelection(),0,o)),_=c.getLineFirstNonWhitespaceColumn(t.getSelection().positionLineNumber),y=t.getSelections().map((function(e,t){return{selection:e,idx:t}})).sort((function(e,t){return wn.compareRangesUsingStarts(e.selection,t.selection)})),b=0,w=y;b<w.length;b++){var C=w[b],S=C.selection,L=C.idx,x=e.adjustSelection(c,S,i,0),D=e.adjustSelection(c,S,0,o);m!==c.getValueInRange(x)&&(x=S),v!==c.getValueInRange(D)&&(D=S);var N=S.setStartPosition(x.startLineNumber,x.startColumn).setEndPosition(D.endLineNumber,D.endColumn),k=(new LG).parse(n,!0,r),E=N.getStartPosition();e.adjustWhitespace(c,E,k,s||L>0&&_!==c.getLineFirstNonWhitespaceColumn(S.positionLineNumber),!0),k.resolveVariables(new DG([h,new EG(f,L,y.length,"spread"===t.getOption(60)),new NG(c,S),new IG(c),new OG,new MG(d),new TG]));var I=c.getOffsetAt(E)+g;g+=k.toString().length-c.getValueLengthInRange(N),u[L]=bh.replace(N,k.toString()),l[L]=new PG(t,k,I)}return{edits:u,snippets:l}},e.prototype.dispose=function(){Ae(this._snippets)},e.prototype._logInfo=function(){return'template="'+this._template+'", merged_templates="'+this._templateMerges.join(" -> ")+'"'},e.prototype.insert=function(){var t=this;if(this._editor.hasModel()){var n=e.createEditsAndSnippets(this._editor,this._template,this._options.overwriteBefore,this._options.overwriteAfter,!1,this._options.adjustWhitespace,this._options.clipboardText),i=n.edits,o=n.snippets;this._snippets=o,this._editor.executeEdits("snippet",i,(function(e){return t._snippets[0].hasPlaceholder?t._move(!0):e.map((function(e){return Sn.fromPositions(e.range.getEndPosition())}))})),this._editor.revealRange(this._editor.getSelections()[0])}},e.prototype.merge=function(t,n){var i=this;if(void 0===n&&(n=RG),this._editor.hasModel()){this._templateMerges.push([this._snippets[0]._nestingLevel,this._snippets[0]._placeholderGroupsIdx,t]);var o=e.createEditsAndSnippets(this._editor,t,n.overwriteBefore,n.overwriteAfter,!0,n.adjustWhitespace,n.clipboardText),r=o.edits,s=o.snippets;this._editor.executeEdits("snippet",r,(function(e){for(var t=0,n=i._snippets;t<n.length;t++){n[t].merge(s)}return console.assert(0===s.length),i._snippets[0].hasPlaceholder?i._move(void 0):e.map((function(e){return Sn.fromPositions(e.range.getEndPosition())}))}))}},e.prototype.next=function(){var e=this._move(!0);this._editor.setSelections(e),this._editor.revealPositionInCenterIfOutsideViewport(e[0].getPosition())},e.prototype.prev=function(){var e=this._move(!1);this._editor.setSelections(e),this._editor.revealPositionInCenterIfOutsideViewport(e[0].getPosition())},e.prototype._move=function(e){for(var t=[],n=0,i=this._snippets;n<i.length;n++){var o=i[n].move(e);t.push.apply(t,o)}return t},Object.defineProperty(e.prototype,"isAtFirstPlaceholder",{get:function(){return this._snippets[0].isAtFirstPlaceholder},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isAtLastPlaceholder",{get:function(){return this._snippets[0].isAtLastPlaceholder},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasPlaceholder",{get:function(){return this._snippets[0].hasPlaceholder},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"choice",{get:function(){return this._snippets[0].choice},enumerable:!0,configurable:!0}),e.prototype.isSelectionWithinPlaceholders=function(){if(!this.hasPlaceholder)return!1;var e=this._editor.getSelections();if(e.length<this._snippets.length)return!1;for(var t=new Map,n=function(n){var i=n.computePossibleSelections();if(0===t.size&&i.forEach((function(n,i){n.sort(wn.compareRangesUsingStarts);for(var o=0,r=e;o<r.length;o++){var s=r[o];if(n[0].containsRange(s)){t.set(i,[]);break}}})),0===t.size)return{value:!1};t.forEach((function(e,t){e.push.apply(e,i.get(t))}))},i=0,o=this._snippets;i<o.length;i++){var r=n(o[i]);if("object"==typeof r)return r.value}return e.sort(wn.compareRangesUsingStarts),t.forEach((function(n,i){if(n.length===e.length){n.sort(wn.compareRangesUsingStarts);for(var o=0;o<n.length;o++)if(!n[o].containsRange(e[o]))return void t.delete(i)}else t.delete(i)})),t.size>0},e}(),FG=function(){return(FG=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},WG=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},VG=function(e,t){return function(n,i){t(n,i,e)}},BG={overwriteBefore:0,overwriteAfter:0,undoStopBefore:!0,undoStopAfter:!0,adjustWhitespace:!0,clipboardText:void 0},HG=function(){function e(t,n,i){this._editor=t,this._logService=n,this._snippetListener=new Be,this._modelVersionId=-1,this._inSnippet=e.InSnippetMode.bindTo(i),this._hasNextTabstop=e.HasNextTabstop.bindTo(i),this._hasPrevTabstop=e.HasPrevTabstop.bindTo(i)}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.dispose=function(){this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),Ae(this._session),this._snippetListener.dispose()},e.prototype.insert=function(e,t){try{this._doInsert(e,void 0===t?BG:FG(FG({},BG),t))}catch(t){this.cancel(),this._logService.error(t),this._logService.error("snippet_error"),this._logService.error("insert_template=",e),this._logService.error("existing_template=",this._session?this._session._logInfo():"<no_session>")}},e.prototype._doInsert=function(e,t){var n=this;this._editor.hasModel()&&(this._snippetListener.clear(),t.undoStopBefore&&this._editor.getModel().pushStackElement(),this._session?this._session.merge(e,t):(this._modelVersionId=this._editor.getModel().getAlternativeVersionId(),this._session=new AG(this._editor,e,t),this._session.insert()),t.undoStopAfter&&this._editor.getModel().pushStackElement(),this._updateState(),this._snippetListener.add(this._editor.onDidChangeModelContent((function(e){return e.isFlush&&n.cancel()}))),this._snippetListener.add(this._editor.onDidChangeModel((function(){return n.cancel()}))),this._snippetListener.add(this._editor.onDidChangeCursorSelection((function(){return n._updateState()}))))},e.prototype._updateState=function(){if(this._session&&this._editor.hasModel()){if(this._modelVersionId===this._editor.getModel().getAlternativeVersionId())return this.cancel();if(!this._session.hasPlaceholder)return this.cancel();if(this._session.isAtLastPlaceholder||!this._session.isSelectionWithinPlaceholders())return this.cancel();this._inSnippet.set(!0),this._hasPrevTabstop.set(!this._session.isAtFirstPlaceholder),this._hasNextTabstop.set(!this._session.isAtLastPlaceholder),this._handleChoice()}},e.prototype._handleChoice=function(){var e=this;if(this._session&&this._editor.hasModel()){var t,n,i=this._session.choice;if(i){if(this._currentChoice!==i){this._currentChoice=i,this._editor.setSelections(this._editor.getSelections().map((function(e){return Sn.fromPositions(e.getStartPosition())})));var o=i.options[0];t=this._editor,n=i.options.map((function(t,n){return{kind:13,label:t.value,insertText:t.value,sortText:Zr("a",n+1),range:wn.fromPositions(e._editor.getPosition(),e._editor.getPosition().delta(0,o.value.length))}})),setTimeout((function(){var e;(e=lG.onlyOnceSuggestions).push.apply(e,n),t.getContribution("editor.contrib.suggestController").triggerSuggest((new Set).add(lG))}),0)}}else this._currentChoice=void 0}else this._currentChoice=void 0},e.prototype.finish=function(){for(;this._inSnippet.get();)this.next()},e.prototype.cancel=function(e){void 0===e&&(e=!1),this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),this._snippetListener.clear(),Ae(this._session),this._session=void 0,this._modelVersionId=-1,e&&this._editor.setSelections([this._editor.getSelection()])},e.prototype.prev=function(){this._session&&this._session.prev(),this._updateState()},e.prototype.next=function(){this._session&&this._session.next(),this._updateState()},e.prototype.isInSnippet=function(){return Boolean(this._inSnippet.get())},e.ID="snippetController2",e.InSnippetMode=new Kh("inSnippetMode",!1),e.HasNextTabstop=new Kh("hasNextTabstop",!1),e.HasPrevTabstop=new Kh("hasPrevTabstop",!1),e=WG([VG(1,yc),VG(2,qh)],e)}();Pf(HG.ID,HG);var zG=Nf.bindToContribution(HG.get);Mf(new zG({id:"jumpToNextSnippetPlaceholder",precondition:Rh.and(HG.InSnippetMode,HG.HasNextTabstop),handler:function(e){return e.next()},kbOpts:{weight:130,kbExpr:eC.editorTextFocus,primary:2}})),Mf(new zG({id:"jumpToPrevSnippetPlaceholder",precondition:Rh.and(HG.InSnippetMode,HG.HasPrevTabstop),handler:function(e){return e.prev()},kbOpts:{weight:130,kbExpr:eC.editorTextFocus,primary:1026}})),Mf(new zG({id:"leaveSnippet",precondition:HG.InSnippetMode,handler:function(e){return e.cancel(!0)},kbOpts:{weight:130,kbExpr:eC.editorTextFocus,primary:9,secondary:[1033]}})),Mf(new zG({id:"acceptSnippet",precondition:HG.InSnippetMode,handler:function(e){return e.finish()}}));var jG=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),UG=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},KG=function(e,t){return function(n,i){t(n,i,e)}},qG=function(){function e(){}return e.prototype.select=function(e,t,n){if(0===n.length)return 0;for(var i=n[0].score[0],o=1;o<n.length;o++){var r=n[o],s=r.score,a=r.completion;if(s[0]!==i)break;if(a.preselect)return o}return 0},e}(),GG=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return jG(t,e),t.prototype.memorize=function(e,t,n){},t.prototype.toJSON=function(){},t.prototype.fromJSON=function(){},t}(qG),ZG=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._cache=new aa(300,.66),t._seq=0,t}return jG(t,e),t.prototype.memorize=function(e,t,n){var i=n.completion.label,o=e.getLanguageIdentifier().language+"/"+i;this._cache.set(o,{touch:this._seq++,type:n.completion.kind,insertText:n.completion.insertText})},t.prototype.select=function(t,n,i){if(0===i.length)return 0;var o=t.getLineContent(n.lineNumber).substr(n.column-10,n.column-1);if(/\s$/.test(o))return e.prototype.select.call(this,t,n,i);for(var r=i[0].score[0],s=-1,a=-1,u=-1,l=0;l<i.length&&i[l].score[0]===r;l++){var c=t.getLanguageIdentifier().language+"/"+i[l].completion.label,d=this._cache.peek(c);if(d&&d.touch>u&&d.type===i[l].completion.kind&&d.insertText===i[l].completion.insertText&&(u=d.touch,a=l),i[l].completion.preselect&&-1===s)return l}return-1!==a?a:-1!==s?s:0},t.prototype.toJSON=function(){var e=[];return this._cache.forEach((function(t,n){e.push([n,t])})),e},t.prototype.fromJSON=function(e){this._cache.clear();for(var t=0,n=e;t<n.length;t++){var i=n[t],o=i[0],r=i[1];r.touch=0,r.type="number"==typeof r.type?r.type:Su(r.type),this._cache.set(o,r)}this._seq=this._cache.size},t}(qG),YG=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._trie=ra.forStrings(),t._seq=0,t}return jG(t,e),t.prototype.memorize=function(e,t,n){var i=e.getWordUntilPosition(t).word,o=e.getLanguageIdentifier().language+"/"+i;this._trie.set(o,{type:n.completion.kind,insertText:n.completion.insertText,touch:this._seq++})},t.prototype.select=function(t,n,i){var o=t.getWordUntilPosition(n).word;if(!o)return e.prototype.select.call(this,t,n,i);var r=t.getLanguageIdentifier().language+"/"+o,s=this._trie.get(r);if(s||(s=this._trie.findSubstr(r)),s)for(var a=0;a<i.length;a++){var u=i[a].completion,l=u.kind,c=u.insertText;if(l===s.type&&c===s.insertText)return a}return e.prototype.select.call(this,t,n,i)},t.prototype.toJSON=function(){var e=[];return this._trie.forEach((function(t,n){return e.push([n,t])})),e.sort((function(e,t){return-(e[1].touch-t[1].touch)})).forEach((function(e,t){return e[1].touch=t})),e.slice(0,200)},t.prototype.fromJSON=function(e){if(this._trie.clear(),e.length>0){this._seq=e[0][1].touch+1;for(var t=0,n=e;t<n.length;t++){var i=n[t],o=i[0],r=i[1];r.type="number"==typeof r.type?r.type:Su(r.type),this._trie.set(o,r)}}},t}(qG),XG=function(e){function t(t,n){var i=e.call(this)||this;i._storageService=t,i._configService=n,i._storagePrefix="suggest/memories";var o=function(){var e=i._configService.getValue("editor.suggestSelection"),t=i._configService.getValue("editor.suggest.shareSuggestSelections");i._update(e,t,!1)};return i._persistSoon=i._register(new wi((function(){return i._saveState()}),500)),i._register(t.onWillSaveState((function(e){e.reason===TM.SHUTDOWN&&i._saveState()}))),i._register(i._configService.onDidChangeConfiguration((function(e){(e.affectsConfiguration("editor.suggestSelection")||e.affectsConfiguration("editor.suggest.shareSuggestSelections"))&&o()}))),i._register(i._storageService.onDidChangeStorage((function(e){0===e.scope&&0===e.key.indexOf(i._storagePrefix)&&(document.hasFocus()||i._update(i._mode,i._shareMem,!0))}))),o(),i}return jG(t,e),t.prototype._update=function(e,t,n){if(n||this._mode!==e||this._shareMem!==t){this._shareMem=t,this._mode=e,this._strategy="recentlyUsedByPrefix"===e?new YG:"recentlyUsed"===e?new ZG:new GG;try{var i=t?0:1,o=this._storageService.get(this._storagePrefix+"/"+this._mode,i);o&&this._strategy.fromJSON(JSON.parse(o))}catch(e){}}},t.prototype.memorize=function(e,t,n){this._strategy.memorize(e,t,n),this._persistSoon.schedule()},t.prototype.select=function(e,t,n){return this._strategy.select(e,t,n)},t.prototype._saveState=function(){var e=JSON.stringify(this._strategy),t=this._shareMem?0:1;this._storageService.store(this._storagePrefix+"/"+this._mode,e,t)},t=UG([KG(0,FM),KG(1,wh)],t)}(He),$G=Mn("ISuggestMemories");Qx($G,XG,!0);var QG,JG=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},eZ=function(e,t){return function(n,i){t(n,i,e)}},tZ=function(){function e(t,n){this._editor=t,this._index=0,this._ckOtherSuggestions=e.OtherSuggestions.bindTo(n)}return e.prototype.dispose=function(){this.reset()},e.prototype.reset=function(){this._ckOtherSuggestions.reset(),Ae(this._listener),this._model=void 0,this._acceptNext=void 0,this._ignore=!1},e.prototype.set=function(t,n){var i=this,o=t.model,r=t.index;0!==o.items.length?e._moveIndex(!0,o,r)!==r?(this._acceptNext=n,this._model=o,this._index=r,this._listener=this._editor.onDidChangeCursorPosition((function(){i._ignore||i.reset()})),this._ckOtherSuggestions.set(!0)):this.reset():this.reset()},e._moveIndex=function(e,t,n){for(var i=n;(i=(i+t.items.length+(e?1:-1))%t.items.length)!==n&&t.items[i].completion.additionalTextEdits;);return i},e.prototype.next=function(){this._move(!0)},e.prototype.prev=function(){this._move(!1)},e.prototype._move=function(t){if(this._model)try{this._ignore=!0,this._index=e._moveIndex(t,this._model,this._index),this._acceptNext({index:this._index,item:this._model.items[this._index],model:this._model})}finally{this._ignore=!1}},e.OtherSuggestions=new Kh("hasOtherSuggestions",!1),e=JG([eZ(1,qh)],e)}(),nZ=function(){function e(t,n,i,o,r,s){this._snippetCompareFn=e._compareCompletionItems,this._items=t,this._column=n,this._wordDistance=o,this._options=r,this._refilterKind=1,this._lineContext=i,"top"===s?this._snippetCompareFn=e._compareCompletionItemsSnippetsUp:"bottom"===s&&(this._snippetCompareFn=e._compareCompletionItemsSnippetsDown)}return Object.defineProperty(e.prototype,"lineContext",{get:function(){return this._lineContext},set:function(e){this._lineContext.leadingLineContent===e.leadingLineContent&&this._lineContext.characterCountDelta===e.characterCountDelta||(this._refilterKind=this._lineContext.characterCountDelta<e.characterCountDelta&&this._filteredItems?2:1,this._lineContext=e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"items",{get:function(){return this._ensureCachedState(),this._filteredItems},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"incomplete",{get:function(){return this._ensureCachedState(),this._isIncomplete},enumerable:!0,configurable:!0}),e.prototype.adopt=function(e){for(var t=new Array,n=0;n<this._items.length;)e.has(this._items[n].provider)?n++:(t.push(this._items[n]),this._items[n]=this._items[this._items.length-1],this._items.pop());return this._refilterKind=1,t},Object.defineProperty(e.prototype,"stats",{get:function(){return this._ensureCachedState(),this._stats},enumerable:!0,configurable:!0}),e.prototype._ensureCachedState=function(){0!==this._refilterKind&&this._createCachedState()},e.prototype._createCachedState=function(){this._isIncomplete=new Set,this._stats={suggestionCount:0,snippetCount:0,textCount:0};for(var e=this._lineContext,t=e.leadingLineContent,n=e.characterCountDelta,i="",o="",r=1===this._refilterKind?this._items:this._filteredItems,s=[],a=!this._options.filterGraceful||r.length>2e3?uI:gI,u=0;u<r.length;u++){var l=r[u];l.container.incomplete&&this._isIncomplete.add(l.provider);var c=l.position.column-l.editStart.column,d=c+n-(l.position.column-this._column);if(i.length!==d&&(o=(i=0===d?"":t.slice(-d)).toLowerCase()),l.word=i,0===d)l.score=nI.Default;else{for(var h=0;h<c;){var p=i.charCodeAt(h);if(32!==p&&9!==p)break;h+=1}var f="string"==typeof l.completion.label?l.completion.label:l.completion.label.name;if(h>=d)l.score=nI.Default;else if("string"==typeof l.completion.filterText){if(!(g=a(i,o,h,l.completion.filterText,l.filterTextLow,0,!1)))continue;0===xr(l.completion.filterText,f)?l.score=g:(l.score=QE(i,o,0,f,l.labelLow,0),l.score[0]=g[0])}else{var g;if(!(g=a(i,o,h,f,l.labelLow,0,!1)))continue;l.score=g}}switch(l.idx=u,l.distance=this._wordDistance.distance(l.position,l.completion),s.push(l),this._stats.suggestionCount++,l.completion.kind){case 25:this._stats.snippetCount++;break;case 18:this._stats.textCount++}}this._filteredItems=s.sort(this._snippetCompareFn),this._refilterKind=0},e._compareCompletionItems=function(e,t){return e.score[0]>t.score[0]?-1:e.score[0]<t.score[0]?1:e.distance<t.distance?-1:e.distance>t.distance?1:e.idx<t.idx?-1:e.idx>t.idx?1:0},e._compareCompletionItemsSnippetsDown=function(t,n){if(t.completion.kind!==n.completion.kind){if(25===t.completion.kind)return 1;if(25===n.completion.kind)return-1}return e._compareCompletionItems(t,n)},e._compareCompletionItemsSnippetsUp=function(t,n){if(t.completion.kind!==n.completion.kind){if(25===t.completion.kind)return-1;if(25===n.completion.kind)return 1}return e._compareCompletionItems(t,n)},e}(),iZ=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),oZ=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},rZ=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},sZ=function(){function e(){}return e.create=function(t,n){return oZ(this,void 0,void 0,(function(){var i,o,r,s;return rZ(this,(function(a){switch(a.label){case 0:return n.getOption(89).localityBonus&&n.hasModel()?(i=n.getModel(),o=n.getPosition(),t.canComputeWordRanges(i.uri)?[4,(new zq).provideSelectionRanges(i,[o])]:[2,e.None]):[2,e.None];case 1:return(r=a.sent())&&0!==r.length&&0!==r[0].length?[4,t.computeWordRanges(i.uri,r[0][0].range)]:[2,e.None];case 2:return s=a.sent(),[2,new(function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return iZ(t,e),t.prototype.distance=function(e,t){if(!s||!o.equals(n.getPosition()))return 0;if(17===t.kind)return 2<<20;var i="string"==typeof t.label?t.label:t.label.name,a=s[i];if(Ii(a))return 2<<20;for(var u=Di(a,wn.fromPositions(e),wn.compareRangesUsingStarts),l=u>=0?a[u]:a[Math.max(0,~u-1)],c=r.length,d=0,h=r[0];d<h.length;d++){var p=h[d];if(!wn.containsRange(p.range,l))break;c-=1}return c},t}(e))]}}))}))},e.None=new(function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return iZ(t,e),t.prototype.distance=function(){return 0},t}(e)),e}(),aZ=function(){function e(e,t,n,i){this.leadingLineContent=e.getLineContent(t.lineNumber).substr(0,t.column-1),this.leadingWord=e.getWordUntilPosition(t),this.lineNumber=t.lineNumber,this.column=t.column,this.auto=n,this.shy=i}return e.shouldAutoTrigger=function(e){if(!e.hasModel())return!1;var t=e.getModel(),n=e.getPosition();t.tokenizeIfCheap(n.lineNumber);var i=t.getWordAtPosition(n);return!!i&&(i.endColumn===n.column&&!!isNaN(Number(i.word)))},e}(),uZ=function(){function e(e,t){var n=this;this._editor=e,this._editorWorker=t,this._toDispose=new Be,this._quickSuggestDelay=10,this._triggerCharacterListener=new Be,this._triggerQuickSuggest=new yi,this._state=0,this._completionDisposables=new Be,this._onDidCancel=new nt,this._onDidTrigger=new nt,this._onDidSuggest=new nt,this.onDidCancel=this._onDidCancel.event,this.onDidTrigger=this._onDidTrigger.event,this.onDidSuggest=this._onDidSuggest.event,this._currentSelection=this._editor.getSelection()||new Sn(1,1,1,1),this._toDispose.add(this._editor.onDidChangeModel((function(){n._updateTriggerCharacters(),n.cancel()}))),this._toDispose.add(this._editor.onDidChangeModelLanguage((function(){n._updateTriggerCharacters(),n.cancel()}))),this._toDispose.add(this._editor.onDidChangeConfiguration((function(){n._updateTriggerCharacters(),n._updateQuickSuggest()}))),this._toDispose.add(Eu.onDidChange((function(){n._updateTriggerCharacters(),n._updateActiveSuggestSession()}))),this._toDispose.add(this._editor.onDidChangeCursorSelection((function(e){n._onCursorChange(e)})));var i=!1;this._toDispose.add(this._editor.onDidCompositionStart((function(){i=!0}))),this._toDispose.add(this._editor.onDidCompositionEnd((function(){i=!1,n._refilterCompletionItems()}))),this._toDispose.add(this._editor.onDidChangeModelContent((function(){i||n._refilterCompletionItems()}))),this._updateTriggerCharacters(),this._updateQuickSuggest()}return e.prototype.dispose=function(){Ae(this._triggerCharacterListener),Ae([this._onDidCancel,this._onDidSuggest,this._onDidTrigger,this._triggerQuickSuggest]),this._toDispose.dispose(),this._completionDisposables.dispose(),this.cancel()},e.prototype._updateQuickSuggest=function(){this._quickSuggestDelay=this._editor.getOption(67),(isNaN(this._quickSuggestDelay)||!this._quickSuggestDelay&&0!==this._quickSuggestDelay||this._quickSuggestDelay<0)&&(this._quickSuggestDelay=10)},e.prototype._updateTriggerCharacters=function(){var e=this;if(this._triggerCharacterListener.clear(),!this._editor.getOption(68)&&this._editor.hasModel()&&this._editor.getOption(92)){for(var t=new Map,n=0,i=Eu.all(this._editor.getModel());n<i.length;n++)for(var o=i[n],r=0,s=o.triggerCharacters||[];r<s.length;r++){var a=s[r],u=t.get(a);u||((u=new Set).add(void 0),t.set(a,u)),u.add(o)}var l=function(n){if(!n){var i=e._editor.getPosition();n=e._editor.getModel().getLineContent(i.lineNumber).substr(0,i.column-1)}var o="";Pr(n.charCodeAt(n.length-1))?Tr(n.charCodeAt(n.length-2))&&(o=n.substr(n.length-2)):o=n.charAt(n.length-1);var r=t.get(o);if(r){var s=e._completionModel?e._completionModel.adopt(r):void 0;e.trigger({auto:!0,shy:!1,triggerCharacter:o},Boolean(e._completionModel),r,s)}};this._triggerCharacterListener.add(this._editor.onDidType(l)),this._triggerCharacterListener.add(this._editor.onDidCompositionEnd(l))}},Object.defineProperty(e.prototype,"state",{get:function(){return this._state},enumerable:!0,configurable:!0}),e.prototype.cancel=function(e){void 0===e&&(e=!1),0!==this._state&&(this._triggerQuickSuggest.cancel(),this._requestToken&&(this._requestToken.cancel(),this._requestToken=void 0),this._state=0,this._completionModel=void 0,this._context=void 0,this._onDidCancel.fire({retrigger:e}))},e.prototype.clear=function(){this._completionDisposables.clear()},e.prototype._updateActiveSuggestSession=function(){0!==this._state&&(this._editor.hasModel()&&Eu.has(this._editor.getModel())?this.trigger({auto:2===this._state,shy:!1},!0):this.cancel())},e.prototype._onCursorChange=function(e){var t=this;if(this._editor.hasModel()){var n=this._editor.getModel(),i=this._currentSelection;if(this._currentSelection=this._editor.getSelection(),!e.selection.isEmpty()||0!==e.reason||"keyboard"!==e.source&&"deleteLeft"!==e.source)this.cancel();else if(Eu.has(n)&&0===this._state){if(!1===this._editor.getOption(66))return;if(!i.containsRange(this._currentSelection)&&!i.getEndPosition().isBeforeOrEqual(this._currentSelection.getPosition()))return;if(this._editor.getOption(89).snippetsPreventQuickSuggestions&&HG.get(this._editor).isInSnippet())return;this.cancel(),this._triggerQuickSuggest.cancelAndSet((function(){if(0===t._state&&aZ.shouldAutoTrigger(t._editor)&&t._editor.hasModel()){var e=t._editor.getModel(),n=t._editor.getPosition(),i=t._editor.getOption(66);if(!1!==i){if(!0===i);else{e.tokenizeIfCheap(n.lineNumber);var o=e.getLineTokens(n.lineNumber),r=o.getStandardTokenType(o.findTokenIndexAtOffset(Math.max(n.column-1-1,0)));if(!(i.other&&0===r||i.comments&&1===r||i.strings&&2===r))return}t.trigger({auto:!0,shy:!1})}}}),this._quickSuggestDelay)}}},e.prototype._refilterCompletionItems=function(){var e=this;Promise.resolve().then((function(){if(0!==e._state&&e._editor.hasModel()){var t=e._editor.getModel(),n=e._editor.getPosition(),i=new aZ(t,n,2===e._state,!1);e._onNewContext(i)}}))},e.prototype.trigger=function(t,n,i,o){var r=this;if(void 0===n&&(n=!1),this._editor.hasModel()){var s,a=this._editor.getModel(),u=t.auto,l=new aZ(a,this._editor.getPosition(),u,t.shy);this.cancel(n),this._state=u?2:1,this._onDidTrigger.fire({auto:u,shy:t.shy,position:this._editor.getPosition()}),this._context=l,s=t.triggerCharacter?{triggerKind:1,triggerCharacter:t.triggerCharacter}:i&&i.size>0?{triggerKind:2}:{triggerKind:0},this._requestToken=new ct;var c=this._editor.getOption(86),d=1;switch(c){case"top":d=0;break;case"bottom":d=2}var h=e._createItemKindFilter(this._editor),p=sZ.create(this._editorWorker,this._editor),f=rG(a,this._editor.getPosition(),new oG(d,h,i),s,this._requestToken.token);Promise.all([f,p]).then((function(e){var n=e[0],i=e[1];if(Ae(r._requestToken),0!==r._state&&r._editor.hasModel()){var s=r._editor.getModel();if(Oi(o)){var a=uG(d);n=n.concat(o).sort(a)}var l=new aZ(s,r._editor.getPosition(),u,t.shy);r._completionModel=new nZ(n,r._context.column,{leadingLineContent:l.leadingLineContent,characterCountDelta:l.column-r._context.column},i,r._editor.getOption(89),r._editor.getOption(86));for(var c=0,h=n;c<h.length;c++){var p=h[c];Re(p.container)&&r._completionDisposables.add(p.container)}r._onNewContext(l)}})).catch(De)}},e._createItemKindFilter=function(e){var t=new Set;"none"===e.getOption(86)&&t.add(25);var n=e.getOption(89);return n.showMethods||t.add(0),n.showFunctions||t.add(1),n.showConstructors||t.add(2),n.showFields||t.add(3),n.showVariables||t.add(4),n.showClasses||t.add(5),n.showStructs||t.add(6),n.showInterfaces||t.add(7),n.showModules||t.add(8),n.showProperties||t.add(9),n.showEvents||t.add(10),n.showOperators||t.add(11),n.showUnits||t.add(12),n.showValues||t.add(13),n.showConstants||t.add(14),n.showEnums||t.add(15),n.showEnumMembers||t.add(16),n.showKeywords||t.add(17),n.showWords||t.add(18),n.showColors||t.add(19),n.showFiles||t.add(20),n.showReferences||t.add(21),n.showColors||t.add(22),n.showFolders||t.add(23),n.showTypeParameters||t.add(24),n.showSnippets||t.add(25),t},e.prototype._onNewContext=function(e){if(this._context)if(e.lineNumber===this._context.lineNumber){if(e.leadingWord.startColumn<this._context.leadingWord.startColumn)this.cancel();else if(e.column<this._context.column)e.leadingWord.word?this.trigger({auto:this._context.auto,shy:!1},!0):this.cancel();else if(this._completionModel)if(e.column>this._context.column&&this._completionModel.incomplete.size>0&&0!==e.leadingWord.word.length){var t=this._completionModel.incomplete,n=this._completionModel.adopt(t);this.trigger({auto:2===this._state,shy:!1},!0,t,n)}else{var i=this._completionModel.lineContext,o=!1;if(this._completionModel.lineContext={leadingLineContent:e.leadingLineContent,characterCountDelta:e.column-this._context.column},0===this._completionModel.items.length){if(aZ.shouldAutoTrigger(this._editor)&&this._context.leadingWord.endColumn<e.leadingWord.startColumn)return void this.trigger({auto:this._context.auto,shy:!1},!0);if(this._context.auto)return void this.cancel();if(this._completionModel.lineContext=i,(o=this._completionModel.items.length>0)&&0===e.leadingWord.word.length)return void this.cancel()}this._onDidSuggest.fire({completionModel:this._completionModel,auto:this._context.auto,shy:this._context.shy,isFrozen:o})}}else this.cancel()},e}(),lZ=(n(422),n(423),n(424),n(425),n(426),n(427),D_("symbolIcon.arrayForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.arrayForeground","The foreground color for array symbols. These symbols appear in the outline, breadcrumb, and suggest widget."))),cZ=D_("symbolIcon.booleanForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.booleanForeground","The foreground color for boolean symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),dZ=D_("symbolIcon.classForeground",{dark:"#EE9D28",light:"#D67E00",hc:"#EE9D28"},r("symbolIcon.classForeground","The foreground color for class symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),hZ=D_("symbolIcon.colorForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.colorForeground","The foreground color for color symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),pZ=D_("symbolIcon.constantForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.constantForeground","The foreground color for constant symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),fZ=D_("symbolIcon.constructorForeground",{dark:"#B180D7",light:"#652D90",hc:"#B180D7"},r("symbolIcon.constructorForeground","The foreground color for constructor symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),gZ=D_("symbolIcon.enumeratorForeground",{dark:"#EE9D28",light:"#D67E00",hc:"#EE9D28"},r("symbolIcon.enumeratorForeground","The foreground color for enumerator symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),mZ=D_("symbolIcon.enumeratorMemberForeground",{dark:"#75BEFF",light:"#007ACC",hc:"#75BEFF"},r("symbolIcon.enumeratorMemberForeground","The foreground color for enumerator member symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),vZ=D_("symbolIcon.eventForeground",{dark:"#EE9D28",light:"#D67E00",hc:"#EE9D28"},r("symbolIcon.eventForeground","The foreground color for event symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),_Z=D_("symbolIcon.fieldForeground",{dark:"#75BEFF",light:"#007ACC",hc:"#75BEFF"},r("symbolIcon.fieldForeground","The foreground color for field symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),yZ=D_("symbolIcon.fileForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.fileForeground","The foreground color for file symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),bZ=D_("symbolIcon.folderForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.folderForeground","The foreground color for folder symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),wZ=D_("symbolIcon.functionForeground",{dark:"#B180D7",light:"#652D90",hc:"#B180D7"},r("symbolIcon.functionForeground","The foreground color for function symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),CZ=D_("symbolIcon.interfaceForeground",{dark:"#75BEFF",light:"#007ACC",hc:"#75BEFF"},r("symbolIcon.interfaceForeground","The foreground color for interface symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),SZ=D_("symbolIcon.keyForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.keyForeground","The foreground color for key symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),LZ=D_("symbolIcon.keywordForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.keywordForeground","The foreground color for keyword symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),xZ=D_("symbolIcon.methodForeground",{dark:"#B180D7",light:"#652D90",hc:"#B180D7"},r("symbolIcon.methodForeground","The foreground color for method symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),DZ=D_("symbolIcon.moduleForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.moduleForeground","The foreground color for module symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),NZ=D_("symbolIcon.namespaceForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.namespaceForeground","The foreground color for namespace symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),kZ=D_("symbolIcon.nullForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.nullForeground","The foreground color for null symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),EZ=D_("symbolIcon.numberForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.numberForeground","The foreground color for number symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),IZ=D_("symbolIcon.objectForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.objectForeground","The foreground color for object symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),OZ=D_("symbolIcon.operatorForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.operatorForeground","The foreground color for operator symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),MZ=D_("symbolIcon.packageForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.packageForeground","The foreground color for package symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),TZ=D_("symbolIcon.propertyForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.propertyForeground","The foreground color for property symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),PZ=D_("symbolIcon.referenceForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.referenceForeground","The foreground color for reference symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),RZ=D_("symbolIcon.snippetForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.snippetForeground","The foreground color for snippet symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),AZ=D_("symbolIcon.stringForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.stringForeground","The foreground color for string symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),FZ=D_("symbolIcon.structForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.structForeground","The foreground color for struct symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),WZ=D_("symbolIcon.textForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.textForeground","The foreground color for text symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),VZ=D_("symbolIcon.typeParameterForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.typeParameterForeground","The foreground color for type parameter symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),BZ=D_("symbolIcon.unitForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.unitForeground","The foreground color for unit symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),HZ=D_("symbolIcon.variableForeground",{dark:"#75BEFF",light:"#007ACC",hc:"#75BEFF"},r("symbolIcon.variableForeground","The foreground color for variable symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));function zZ(e,t,n,i){var o=i===QG.ROOT_FOLDER?["rootfolder-icon"]:i===QG.FOLDER?["folder-icon"]:["file-icon"];if(n){var r;if(n.scheme===Ci.data)r=bs.parseMetaData(n).get(bs.META_DATA_LABEL);else r=jZ(Ss(n).toLowerCase());if(i===QG.FOLDER)o.push(r+"-name-folder-icon");else{if(r){o.push(r+"-name-file-icon");for(var s=r.split("."),a=1;a<s.length;a++)o.push(s.slice(a).join(".")+"-ext-file-icon");o.push("ext-file-icon")}var u=function(e,t,n){if(!n)return null;var i=null;if(n.scheme===Ci.data){var o=bs.parseMetaData(n).get(bs.META_DATA_MIME);o&&(i=t.getModeId(o))}else{var r=e.getModel(n);r&&(i=r.getModeId())}if(i&&"plaintext"!==i)return i;return t.getModeIdByFilepathOrFirstLine(n)}(e,t,n);u&&o.push(jZ(u)+"-lang-file-icon")}}return o}function jZ(e){return e.replace(/\s/g,"\\$&")}yg((function(e,t){var n=e.getColor(lZ);n&&t.addRule(".codicon-symbol-array { color: "+n+" !important; }");var i=e.getColor(cZ);i&&t.addRule(".codicon-symbol-boolean { color: "+i+" !important; }");var o=e.getColor(dZ);o&&t.addRule(".codicon-symbol-class { color: "+o+" !important; }");var r=e.getColor(xZ);r&&t.addRule(".codicon-symbol-method { color: "+r+" !important; }");var s=e.getColor(hZ);s&&t.addRule(".codicon-symbol-color { color: "+s+" !important; }");var a=e.getColor(pZ);a&&t.addRule(".codicon-symbol-constant { color: "+a+" !important; }");var u=e.getColor(fZ);u&&t.addRule(".codicon-symbol-constructor { color: "+u+" !important; }");var l=e.getColor(gZ);l&&t.addRule("\n\t\t\t.codicon-symbol-value,.codicon-symbol-enum { color: "+l+" !important; }");var c=e.getColor(mZ);c&&t.addRule(".codicon-symbol-enum-member { color: "+c+" !important; }");var d=e.getColor(vZ);d&&t.addRule(".codicon-symbol-event { color: "+d+" !important; }");var h=e.getColor(_Z);h&&t.addRule(".codicon-symbol-field { color: "+h+" !important; }");var p=e.getColor(yZ);p&&t.addRule(".codicon-symbol-file { color: "+p+" !important; }");var f=e.getColor(bZ);f&&t.addRule(".codicon-symbol-folder { color: "+f+" !important; }");var g=e.getColor(wZ);g&&t.addRule(".codicon-symbol-function { color: "+g+" !important; }");var m=e.getColor(CZ);m&&t.addRule(".codicon-symbol-interface { color: "+m+" !important; }");var v=e.getColor(SZ);v&&t.addRule(".codicon-symbol-key { color: "+v+" !important; }");var _=e.getColor(LZ);_&&t.addRule(".codicon-symbol-keyword { color: "+_+" !important; }");var y=e.getColor(DZ);y&&t.addRule(".codicon-symbol-module { color: "+y+" !important; }");var b=e.getColor(NZ);b&&t.addRule(".codicon-symbol-namespace { color: "+b+" !important; }");var w=e.getColor(kZ);w&&t.addRule(".codicon-symbol-null { color: "+w+" !important; }");var C=e.getColor(EZ);C&&t.addRule(".codicon-symbol-number { color: "+C+" !important; }");var S=e.getColor(IZ);S&&t.addRule(".codicon-symbol-object { color: "+S+" !important; }");var L=e.getColor(OZ);L&&t.addRule(".codicon-symbol-operator { color: "+L+" !important; }");var x=e.getColor(MZ);x&&t.addRule(".codicon-symbol-package { color: "+x+" !important; }");var D=e.getColor(TZ);D&&t.addRule(".codicon-symbol-property { color: "+D+" !important; }");var N=e.getColor(PZ);N&&t.addRule(".codicon-symbol-reference { color: "+N+" !important; }");var k=e.getColor(RZ);k&&t.addRule(".codicon-symbol-snippet { color: "+k+" !important; }");var E=e.getColor(AZ);E&&t.addRule(".codicon-symbol-string { color: "+E+" !important; }");var I=e.getColor(FZ);I&&t.addRule(".codicon-symbol-struct { color: "+I+" !important; }");var O=e.getColor(WZ);O&&t.addRule(".codicon-symbol-text { color: "+O+" !important; }");var M=e.getColor(VZ);M&&t.addRule(".codicon-symbol-type-parameter { color: "+M+" !important; }");var T=e.getColor(BZ);T&&t.addRule(".codicon-symbol-unit { color: "+T+" !important; }");var P=e.getColor(HZ);P&&t.addRule(".codicon-symbol-variable { color: "+P+" !important; }")})),function(e){e[e.FILE=0]="FILE",e[e.FOLDER=1]="FOLDER",e[e.ROOT_FOLDER=2]="ROOT_FOLDER"}(QG||(QG={}));var UZ=function(){return(UZ=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},KZ=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},qZ=function(e,t){return function(n,i){t(n,i,e)}},GZ=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},ZZ=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},YZ=D_("editorSuggestWidget.background",{dark:_y,light:_y,hc:_y},r("editorSuggestWidgetBackground","Background color of the suggest widget.")),XZ=D_("editorSuggestWidget.border",{dark:by,light:by,hc:by},r("editorSuggestWidgetBorder","Border color of the suggest widget.")),$Z=D_("editorSuggestWidget.foreground",{dark:vy,light:vy,hc:vy},r("editorSuggestWidgetForeground","Foreground color of the suggest widget.")),QZ=D_("editorSuggestWidget.selectedBackground",{dark:Zy,light:Zy,hc:Zy},r("editorSuggestWidgetSelectedBackground","Background color of the selected entry in the suggest widget.")),JZ=D_("editorSuggestWidget.highlightForeground",{dark:ob,light:ob,hc:ob},r("editorSuggestWidgetHighlightForeground","Color of the match highlights in the suggest widget.")),eY=/^(#([\da-f]{3}){1,2}|(rgb|hsl)a\(\s*(\d{1,3}%?\s*,\s*){3}(1|0?\.\d+)\)|(rgb|hsl)\(\s*\d{1,3}%?(\s*,\s*\d{1,3}%?){2}\s*\))$/i;function tY(e){if(!e)return!1;var t=e.completion;return!!t.documentation||t.detail&&t.detail!==t.label}function nY(e){return"suggest-aria-id:"+e}var iY=function(){function e(e,t,n,i,o,r){this.widget=e,this.editor=t,this.triggerKeybindingLabel=n,this._modelService=i,this._modeService=o,this._themeService=r}return Object.defineProperty(e.prototype,"templateId",{get:function(){return"suggestion"},enumerable:!0,configurable:!0}),e.prototype.renderTemplate=function(e){var t=this,n=Object.create(null);n.disposables=new Be,n.root=e,no(n.root,"show-file-icons"),n.icon=Xo(e,er(".icon")),n.colorspan=Xo(n.icon,er("span.colorspan"));var i=Xo(e,er(".contents")),o=Xo(i,er(".main"));n.left=Xo(o,er("span.left")),n.right=Xo(o,er("span.right")),n.iconContainer=Xo(n.left,er(".icon-label.codicon")),n.iconLabel=new AH(n.left,{supportHighlights:!0,supportCodicons:!0}),n.disposables.add(n.iconLabel),n.signatureLabel=Xo(n.left,er("span.signature-label")),n.qualifierLabel=Xo(n.left,er("span.qualifier-label")),n.detailsLabel=Xo(n.right,er("span.details-label")),n.readMore=Xo(n.right,er("span.readMore.codicon.codicon-info")),n.readMore.title=r("readMore","Read More...{0}",this.triggerKeybindingLabel);var s=function(){var e=t.editor.getOptions(),i=e.get(34),r=i.fontFamily,s=i.fontFeatureSettings,a=e.get(90)||i.fontSize,u=e.get(91)||i.lineHeight,l=i.fontWeight,c=a+"px",d=u+"px";n.root.style.fontSize=c,n.root.style.fontWeight=l,o.style.fontFamily=r,o.style.fontFeatureSettings=s,o.style.lineHeight=d,n.icon.style.height=d,n.icon.style.width=d,n.readMore.style.height=d,n.readMore.style.width=d};return s(),n.disposables.add(Ge.chain(this.editor.onDidChangeConfiguration.bind(this.editor)).filter((function(e){return e.hasChanged(34)||e.hasChanged(90)||e.hasChanged(91)})).on(s,null)),n},e.prototype.renderElement=function(e,t,n){var i=this,o=n,r=e.completion,s="string"==typeof r.label?r.label:r.label.name;o.root.id=nY(t),o.icon.className="icon "+Cu(r.kind),o.colorspan.style.backgroundColor="";var a,u,l,c={labelEscapeNewLines:!0,matches:JE(e.score)},d=[];if(19===r.kind&&(u=d,(l="string"==typeof(a=e).completion.label?a.completion.label:a.completion.label.name).match(eY)?(u[0]=l,1):"string"==typeof a.completion.documentation&&a.completion.documentation.match(eY)&&(u[0]=a.completion.documentation,1)))o.icon.className="icon customcolor",o.iconContainer.className="icon hide",o.colorspan.style.backgroundColor=d[0];else if(20===r.kind&&this._themeService.getIconTheme().hasFileIcons){o.icon.className="icon hide",o.iconContainer.className="icon hide";var h=zZ(this._modelService,this._modeService,Et.from({scheme:"fake",path:s}),QG.FILE),p=zZ(this._modelService,this._modeService,Et.from({scheme:"fake",path:r.detail}),QG.FILE);c.extraClasses=h.length>p.length?h:p}else 23===r.kind&&this._themeService.getIconTheme().hasFolderIcons?(o.icon.className="icon hide",o.iconContainer.className="icon hide",c.extraClasses=Fi([zZ(this._modelService,this._modeService,Et.from({scheme:"fake",path:s}),QG.FOLDER),zZ(this._modelService,this._modeService,Et.from({scheme:"fake",path:r.detail}),QG.FOLDER)])):(o.icon.className="icon hide",o.iconContainer.className="",io(o.iconContainer,"suggest-icon codicon codicon-symbol-"+Cu(r.kind)));r.tags&&r.tags.indexOf(1)>=0&&(c.extraClasses=(c.extraClasses||[]).concat(["deprecated"]),c.matches=[]),o.iconLabel.setLabel(s,void 0,c),"string"==typeof r.label?(o.signatureLabel.textContent="",o.qualifierLabel.textContent="",o.detailsLabel.textContent=(r.detail||"").replace(/\n.*$/m,""),oo(o.right,"always-show-details")):(o.signatureLabel.textContent=(r.label.signature||"").replace(/\n.*$/m,""),o.qualifierLabel.textContent=(r.label.qualifier||"").replace(/\n.*$/m,""),o.detailsLabel.textContent=(r.label.type||"").replace(/\n.*$/m,""),no(o.right,"always-show-details")),tY(e)?(no(o.right,"can-expand-details"),tr(o.readMore),o.readMore.onmousedown=function(e){e.stopPropagation(),e.preventDefault()},o.readMore.onclick=function(e){e.stopPropagation(),e.preventDefault(),i.widget.toggleDetails()}):(oo(o.right,"can-expand-details"),nr(o.readMore),o.readMore.onmousedown=null,o.readMore.onclick=null)},e.prototype.disposeTemplate=function(e){e.disposables.dispose()},e=KZ([qZ(3,du),qZ(4,lN),qZ(5,fg)],e)}(),oY=function(){function e(e,t,n,i,o){var s=this;this.widget=t,this.editor=n,this.markdownRenderer=i,this.kbToggleDetails=o,this.borderWidth=1,this.disposables=new Be,this.el=Xo(e,er(".details")),this.disposables.add(We((function(){return e.removeChild(s.el)}))),this.body=er(".body"),this.scrollbar=new gS(this.body,{}),Xo(this.el,this.scrollbar.getDomNode()),this.disposables.add(this.scrollbar),this.header=Xo(this.body,er(".header")),this.close=Xo(this.header,er("span.codicon.codicon-close")),this.close.title=r("readLess","Read less...{0}",this.kbToggleDetails),this.type=Xo(this.header,er("p.type")),this.docs=Xo(this.body,er("p.docs")),this.configureFont(),Ge.chain(this.editor.onDidChangeConfiguration.bind(this.editor)).filter((function(e){return e.hasChanged(34)})).on(this.configureFont,this,this.disposables),i.onDidRenderCodeBlock((function(){return s.scrollbar.scanDomNode()}),this,this.disposables)}return Object.defineProperty(e.prototype,"element",{get:function(){return this.el},enumerable:!0,configurable:!0}),e.prototype.renderLoading=function(){this.type.textContent=r("loading","Loading..."),this.docs.textContent=""},e.prototype.renderItem=function(e,t){var n=this;this.renderDisposeable=Ae(this.renderDisposeable);var i=e.completion,o=i.documentation,r=i.detail;if(t){var s="";s+="score: "+e.score[0]+(e.word?", compared '"+(e.completion.filterText&&e.completion.filterText+" (filterText)"||e.completion.label)+"' with '"+e.word+"'":" (no prefix)")+"\n",s+="distance: "+e.distance+", see localityBonus-setting\n",s+="index: "+e.idx+", based on "+(e.completion.sortText&&'sortText: "'+e.completion.sortText+'"'||"label")+"\n",o=(new uj).appendCodeblock("empty",s),r="Provider: "+e.provider._debugDisplayName}if(!t&&!tY(e))return this.type.textContent="",this.docs.textContent="",void no(this.el,"no-docs");if(oo(this.el,"no-docs"),"string"==typeof o)oo(this.docs,"markdown-docs"),this.docs.textContent=o;else{no(this.docs,"markdown-docs"),this.docs.innerHTML="";var a=this.markdownRenderer.render(o);this.renderDisposeable=a,this.docs.appendChild(a.element)}r?(this.type.innerText=r,tr(this.type)):(this.type.innerText="",nr(this.type)),this.el.style.height=this.header.offsetHeight+this.docs.offsetHeight+2*this.borderWidth+"px",this.el.style.userSelect="text",this.el.tabIndex=-1,this.close.onmousedown=function(e){e.preventDefault(),e.stopPropagation()},this.close.onclick=function(e){e.preventDefault(),e.stopPropagation(),n.widget.toggleDetails()},this.body.scrollTop=0,this.scrollbar.scanDomNode()},e.prototype.scrollDown=function(e){void 0===e&&(e=8),this.body.scrollTop+=e},e.prototype.scrollUp=function(e){void 0===e&&(e=8),this.body.scrollTop-=e},e.prototype.scrollTop=function(){this.body.scrollTop=0},e.prototype.scrollBottom=function(){this.body.scrollTop=this.body.scrollHeight},e.prototype.pageDown=function(){this.scrollDown(80)},e.prototype.pageUp=function(){this.scrollUp(80)},e.prototype.setBorderWidth=function(e){this.borderWidth=e},e.prototype.configureFont=function(){var e=this.editor.getOptions(),t=e.get(34),n=t.fontFamily,i=e.get(90)||t.fontSize,o=e.get(91)||t.lineHeight,r=t.fontWeight,s=i+"px",a=o+"px";this.el.style.fontSize=s,this.el.style.fontWeight=r,this.el.style.fontFeatureSettings=t.fontFeatureSettings,this.type.style.fontFamily=n,this.close.style.height=a,this.close.style.width=a},e.prototype.dispose=function(){this.disposables.dispose(),this.renderDisposeable=Ae(this.renderDisposeable)},e}(),rY=function(){function e(e,t,n,i,o,s,a,u,l){var c,d,h=this;this.editor=e,this.telemetryService=t,this.keybindingService=n,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this.state=null,this.isAuto=!1,this.loadingTimeout=He.None,this.currentSuggestionDetails=null,this.ignoreFocusEvents=!1,this.completionModel=null,this.showTimeout=new yi,this.toDispose=new Be,this.onDidSelectEmitter=new nt,this.onDidFocusEmitter=new nt,this.onDidHideEmitter=new nt,this.onDidShowEmitter=new nt,this.onDidSelect=this.onDidSelectEmitter.event,this.onDidFocus=this.onDidFocusEmitter.event,this.onDidHide=this.onDidHideEmitter.event,this.onDidShow=this.onDidShowEmitter.event,this.maxWidgetWidth=660,this.listWidth=330,this.firstFocusInCurrentList=!1,this.preferDocPositionTop=!1,this.docsPositionPreviousWidgetY=null,this.explainMode=!1,this._onDetailsKeydown=new nt,this.onDetailsKeyDown=this._onDetailsKeydown.event;var p=this.toDispose.add(new _U(e,a,u)),f=null!==(d=null===(c=n.lookupKeybinding("toggleSuggestionDetails"))||void 0===c?void 0:c.getLabel())&&void 0!==d?d:"";this.msgDetailsLess=r("detail.less","{0} for less...",f),this.msgDetailMore=r("detail.more","{0} for more...",f),this.isAuto=!1,this.focusedItem=null,this.storageService=s,this.element=er(".editor-widget.suggest-widget"),this.toDispose.add(uo(this.element,"click",(function(e){e.target===h.element&&h.hideWidget()}))),this.messageElement=Xo(this.element,er(".message")),this.listElement=Xo(this.element,er(".tree"));var g=function(){return so(h.element,"with-status-bar",!h.editor.getOption(89).hideStatusBar)};g(),this.statusBarElement=Xo(this.element,er(".suggest-status-bar")),this.statusBarLeftSpan=Xo(this.statusBarElement,er("span")),this.statusBarRightSpan=Xo(this.statusBarElement,er("span")),this.setStatusBarLeftText(""),this.setStatusBarRightText(""),this.details=l.createInstance(oY,this.element,this,this.editor,p,f);var m=function(){return so(h.element,"no-icons",!h.editor.getOption(89).showIcons)};m();var v=l.createInstance(iY,this,this.editor,f);this.list=new KI("SuggestWidget",this.listElement,this,[v],{useShadows:!1,openController:{shouldOpen:function(){return!1}},mouseSupport:!1,accessibilityProvider:{getAriaLabel:function(e){var t="string"==typeof e.completion.label?e.completion.label:e.completion.label.name;if(e.isResolved&&h.expandDocsSettingFromStorage()){var n=e.completion,i=n.documentation;return r("ariaCurrenttSuggestionReadDetails","Item {0}, docs: {1}",t,pr("{0}{1}",n.detail||"",i?"string"==typeof i?i:i.value:""))}return t}}}),this.toDispose.add(Gk(this.list,o,{listInactiveFocusBackground:QZ,listInactiveFocusOutline:T_})),this.toDispose.add(o.onThemeChange((function(e){return h.onThemeChange(e)}))),this.toDispose.add(e.onDidLayoutChange((function(){return h.onEditorLayoutChange()}))),this.toDispose.add(this.list.onMouseDown((function(e){return h.onListMouseDownOrTap(e)}))),this.toDispose.add(this.list.onTap((function(e){return h.onListMouseDownOrTap(e)}))),this.toDispose.add(this.list.onSelectionChange((function(e){return h.onListSelection(e)}))),this.toDispose.add(this.list.onFocusChange((function(e){return h.onListFocus(e)}))),this.toDispose.add(this.editor.onDidChangeCursorSelection((function(){return h.onCursorSelectionChanged()}))),this.toDispose.add(this.editor.onDidChangeConfiguration((function(e){e.hasChanged(89)&&(g(),m())}))),this.suggestWidgetVisible=nG.Visible.bindTo(i),this.suggestWidgetMultipleSuggestions=nG.MultipleSuggestions.bindTo(i),this.editor.addContentWidget(this),this.setState(0),this.onThemeChange(o.getTheme()),this.toDispose.add(co(this.details.element,"keydown",(function(e){h._onDetailsKeydown.fire(e)}))),this.toDispose.add(this.editor.onMouseDown((function(e){return h.onEditorMouseDown(e)})))}return e.prototype.onEditorMouseDown=function(e){this.details.element.contains(e.target.element)?this.details.element.focus():this.element.contains(e.target.element)&&this.editor.focus()},e.prototype.onCursorSelectionChanged=function(){0!==this.state&&this.editor.layoutContentWidget(this)},e.prototype.onEditorLayoutChange=function(){3!==this.state&&5!==this.state||!this.expandDocsSettingFromStorage()||this.expandSideOrBelow()},e.prototype.onListMouseDownOrTap=function(e){void 0!==e.element&&void 0!==e.index&&(e.browserEvent.preventDefault(),e.browserEvent.stopPropagation(),this.select(e.element,e.index))},e.prototype.onListSelection=function(e){e.elements.length&&this.select(e.elements[0],e.indexes[0])},e.prototype.select=function(e,t){var n=this.completionModel;n&&(this.onDidSelectEmitter.fire({item:e,index:t,model:n}),this.editor.focus())},e.prototype.onThemeChange=function(e){var t=e.getColor(YZ);t&&(this.listElement.style.backgroundColor=t.toString(),this.statusBarElement.style.backgroundColor=t.toString(),this.details.element.style.backgroundColor=t.toString(),this.messageElement.style.backgroundColor=t.toString());var n=e.getColor(XZ);n&&(this.listElement.style.borderColor=n.toString(),this.statusBarElement.style.borderColor=n.toString(),this.details.element.style.borderColor=n.toString(),this.messageElement.style.borderColor=n.toString(),this.detailsBorderColor=n.toString());var i=e.getColor(O_);i&&(this.detailsFocusBorderColor=i.toString()),this.details.setBorderWidth("hc"===e.type?2:1)},e.prototype.onListFocus=function(e){var t,n,i=this;if(!this.ignoreFocusEvents){if(!e.elements.length)return this.currentSuggestionDetails&&(this.currentSuggestionDetails.cancel(),this.currentSuggestionDetails=null,this.focusedItem=null),void this.editor.setAriaOptions({activeDescendant:void 0});if(this.completionModel){var o=e.elements[0],s=e.indexes[0];if(this.firstFocusInCurrentList=!this.focusedItem,o!==this.focusedItem){var a="insert"===this.editor.getOption(89).insertMode,u=null===(t=this.keybindingService.lookupKeybinding("acceptSelectedSuggestion"))||void 0===t?void 0:t.getLabel(),l=null===(n=this.keybindingService.lookupKeybinding("acceptAlternativeSelectedSuggestion"))||void 0===n?void 0:n.getLabel();bn.equals(o.editInsertEnd,o.editReplaceEnd)?this.setStatusBarLeftText(r("accept","{0} to accept",u)):a?this.setStatusBarLeftText(r("insert","{0} to insert, {1} to replace",u,l)):this.setStatusBarLeftText(r("replace","{0} to replace, {1} to insert",u,l)),this.currentSuggestionDetails&&(this.currentSuggestionDetails.cancel(),this.currentSuggestionDetails=null),this.focusedItem=o,this.list.reveal(s),this.currentSuggestionDetails=hi((function(e){return GZ(i,void 0,void 0,(function(){var t,n,i=this;return ZZ(this,(function(r){switch(r.label){case 0:return t=mi((function(){return i.showDetails(!0)}),250),e.onCancellationRequested((function(){return t.dispose()})),[4,o.resolve(e)];case 1:return n=r.sent(),t.dispose(),[2,n]}}))}))})),this.currentSuggestionDetails.then((function(){s>=i.list.length||o!==i.list.element(s)||(i.ignoreFocusEvents=!0,i.list.splice(s,1,[o]),i.list.setFocus([s]),i.ignoreFocusEvents=!1,i.expandDocsSettingFromStorage()?i.showDetails(!1):oo(i.element,"docs-side"),tY(i.focusedItem)?i.expandDocsSettingFromStorage()?i.setStatusBarRightText(i.msgDetailsLess):i.setStatusBarRightText(i.msgDetailMore):i.statusBarRightSpan.innerText="",i.editor.setAriaOptions({activeDescendant:nY(s)}))})).catch(De)}this.onDidFocusEmitter.fire({item:o,index:s,model:this.completionModel})}}},e.prototype.setState=function(t){if(this.element){var n=this.state!==t;switch(this.state=t,so(this.element,"frozen",4===t),t){case 0:nr(this.messageElement,this.details.element,this.listElement,this.statusBarElement),this.hide(),this.listHeight=0,n&&this.list.splice(0,this.list.length),this.focusedItem=null;break;case 1:this.messageElement.textContent=e.LOADING_MESSAGE,nr(this.listElement,this.details.element,this.statusBarElement),tr(this.messageElement),oo(this.element,"docs-side"),this.show(),this.focusedItem=null;break;case 2:this.messageElement.textContent=e.NO_SUGGESTIONS_MESSAGE,nr(this.listElement,this.details.element,this.statusBarElement),tr(this.messageElement),oo(this.element,"docs-side"),this.show(),this.focusedItem=null;break;case 3:nr(this.messageElement),tr(this.listElement,this.statusBarElement),this.show();break;case 4:nr(this.messageElement),tr(this.listElement),this.show();break;case 5:nr(this.messageElement),tr(this.details.element,this.listElement,this.statusBarElement),this.show()}}},e.prototype.showTriggered=function(e,t){var n=this;0===this.state&&(this.isAuto=!!e,this.isAuto||(this.loadingTimeout=mi((function(){return n.setState(1)}),t)))},e.prototype.showSuggestions=function(e,t,n,i){if(this.preferDocPositionTop=!1,this.docsPositionPreviousWidgetY=null,this.loadingTimeout.dispose(),this.currentSuggestionDetails&&(this.currentSuggestionDetails.cancel(),this.currentSuggestionDetails=null),this.completionModel!==e&&(this.completionModel=e),n&&2!==this.state&&0!==this.state)this.setState(4);else{var o=this.completionModel.items.length,r=0===o;if(this.suggestWidgetMultipleSuggestions.set(o>1),r)i?this.setState(0):this.setState(2),this.completionModel=null;else{if(3!==this.state){var s=this.completionModel.stats;s.wasAutomaticallyTriggered=!!i,this.telemetryService.publicLog("suggestWidget",UZ({},s))}this.focusedItem=null,this.list.splice(0,this.list.length,this.completionModel.items),n?this.setState(4):this.setState(3),this.list.reveal(t,0),this.list.setFocus([t]),this.detailsBorderColor&&(this.details.element.style.borderColor=this.detailsBorderColor)}}},e.prototype.selectNextPage=function(){switch(this.state){case 0:return!1;case 5:return this.details.pageDown(),!0;case 1:return!this.isAuto;default:return this.list.focusNextPage(),!0}},e.prototype.selectNext=function(){switch(this.state){case 0:return!1;case 1:return!this.isAuto;default:return this.list.focusNext(1,!0),!0}},e.prototype.selectLast=function(){switch(this.state){case 0:return!1;case 5:return this.details.scrollBottom(),!0;case 1:return!this.isAuto;default:return this.list.focusLast(),!0}},e.prototype.selectPreviousPage=function(){switch(this.state){case 0:return!1;case 5:return this.details.pageUp(),!0;case 1:return!this.isAuto;default:return this.list.focusPreviousPage(),!0}},e.prototype.selectPrevious=function(){switch(this.state){case 0:return!1;case 1:return!this.isAuto;default:return this.list.focusPrevious(1,!0),!1}},e.prototype.selectFirst=function(){switch(this.state){case 0:return!1;case 5:return this.details.scrollTop(),!0;case 1:return!this.isAuto;default:return this.list.focusFirst(),!0}},e.prototype.getFocusedItem=function(){if(0!==this.state&&2!==this.state&&1!==this.state&&this.completionModel)return{item:this.list.getFocusedElements()[0],index:this.list.getFocus()[0],model:this.completionModel}},e.prototype.toggleDetailsFocus=function(){5===this.state?(this.setState(3),this.detailsBorderColor&&(this.details.element.style.borderColor=this.detailsBorderColor)):3===this.state&&this.expandDocsSettingFromStorage()&&(this.setState(5),this.detailsFocusBorderColor&&(this.details.element.style.borderColor=this.detailsFocusBorderColor)),this.telemetryService.publicLog2("suggestWidget:toggleDetailsFocus")},e.prototype.toggleDetails=function(){if(tY(this.list.getFocusedElements()[0]))if(this.expandDocsSettingFromStorage())this.updateExpandDocsSetting(!1),nr(this.details.element),oo(this.element,"docs-side"),oo(this.element,"docs-below"),this.editor.layoutContentWidget(this),this.setStatusBarRightText(this.msgDetailMore),this.telemetryService.publicLog2("suggestWidget:collapseDetails");else{if(3!==this.state&&5!==this.state&&4!==this.state)return;this.updateExpandDocsSetting(!0),this.showDetails(!1),this.setStatusBarRightText(this.msgDetailsLess),this.telemetryService.publicLog2("suggestWidget:expandDetails")}},e.prototype.showDetails=function(e){e||this.expandSideOrBelow(),tr(this.details.element),this.details.element.style.maxHeight=this.maxWidgetHeight+"px",e?this.details.renderLoading():this.details.renderItem(this.list.getFocusedElements()[0],this.explainMode),this.listElement.style.marginTop="0px",this.editor.layoutContentWidget(this),this.adjustDocsPosition(),this.editor.focus()},e.prototype.toggleExplainMode=function(){this.list.getFocusedElements()[0]&&this.expandDocsSettingFromStorage()&&(this.explainMode=!this.explainMode,this.showDetails(!1))},e.prototype.show=function(){var e=this,t=this.updateListHeight();t!==this.listHeight&&(this.editor.layoutContentWidget(this),this.listHeight=t),this.suggestWidgetVisible.set(!0),this.showTimeout.cancelAndSet((function(){no(e.element,"visible"),e.onDidShowEmitter.fire(e)}),100)},e.prototype.hide=function(){this.suggestWidgetVisible.reset(),this.suggestWidgetMultipleSuggestions.reset(),oo(this.element,"visible")},e.prototype.hideWidget=function(){this.loadingTimeout.dispose(),this.setState(0),this.onDidHideEmitter.fire(this)},e.prototype.getPosition=function(){if(0===this.state)return null;var e=[2,1];return this.preferDocPositionTop&&(e=[1]),{position:this.editor.getPosition(),preference:e}},e.prototype.getDomNode=function(){return this.element},e.prototype.getId=function(){return e.ID},e.prototype.isFrozen=function(){return 4===this.state},e.prototype.updateListHeight=function(){var e=0;if(2===this.state||1===this.state)e=this.unfocusedHeight;else{var t=this.list.contentHeight/this.unfocusedHeight,n=this.editor.getOption(89).maxVisibleSuggestions;e=Math.min(t,n)*this.unfocusedHeight}return this.element.style.lineHeight=this.unfocusedHeight+"px",this.listElement.style.height=e+"px",this.statusBarElement.style.top=e+"px",this.list.layout(e),e},e.prototype.adjustDocsPosition=function(){if(this.editor.hasModel()){var e=this.editor.getOption(49),t=this.editor.getScrolledVisiblePosition(this.editor.getPosition()),n=Oo(this.editor.getDomNode()),i=n.left+t.left,o=n.top+t.top+t.height,r=Oo(this.element),s=r.left,a=r.top;if(this.docsPositionPreviousWidgetY&&this.docsPositionPreviousWidgetY<a&&!this.preferDocPositionTop)return this.preferDocPositionTop=!0,void this.adjustDocsPosition();this.docsPositionPreviousWidgetY=a,s<i-this.listWidth?no(this.element,"list-right"):oo(this.element,"list-right"),to(this.element,"docs-side")&&o-e>a&&this.details.element.offsetHeight>this.listElement.offsetHeight&&(this.listElement.style.marginTop=this.details.element.offsetHeight-this.listElement.offsetHeight+"px")}},e.prototype.expandSideOrBelow=function(){if(!tY(this.focusedItem)&&this.firstFocusInCurrentList)return oo(this.element,"docs-side"),void oo(this.element,"docs-below");var e=this.element.style.maxWidth.match(/(\d+)px/);!e||Number(e[1])<this.maxWidgetWidth?(no(this.element,"docs-below"),oo(this.element,"docs-side")):tY(this.focusedItem)&&(no(this.element,"docs-side"),oo(this.element,"docs-below"))},Object.defineProperty(e.prototype,"maxWidgetHeight",{get:function(){return this.unfocusedHeight*this.editor.getOption(89).maxVisibleSuggestions},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"unfocusedHeight",{get:function(){var e=this.editor.getOptions();return e.get(91)||e.get(34).lineHeight},enumerable:!0,configurable:!0}),e.prototype.getHeight=function(e){return this.unfocusedHeight},e.prototype.getTemplateId=function(e){return"suggestion"},e.prototype.expandDocsSettingFromStorage=function(){return this.storageService.getBoolean("expandSuggestionDocs",0,!1)},e.prototype.updateExpandDocsSetting=function(e){this.storageService.store("expandSuggestionDocs",e,0)},e.prototype.setStatusBarLeftText=function(e){this.statusBarLeftSpan.innerText=e},e.prototype.setStatusBarRightText=function(e){this.statusBarRightSpan.innerText=e},e.prototype.dispose=function(){this.details.dispose(),this.list.dispose(),this.toDispose.dispose(),this.loadingTimeout.dispose(),this.showTimeout.dispose()},e.ID="editor.widget.suggestWidget",e.LOADING_MESSAGE=r("suggestWidget.loading","Loading..."),e.NO_SUGGESTIONS_MESSAGE=r("suggestWidget.noSuggestions","No suggestions."),e=KZ([qZ(1,Lf),qZ(2,XD),qZ(3,qh),qZ(4,fg),qZ(5,FM),qZ(6,lN),qZ(7,pa),qZ(8,In)],e)}();yg((function(e,t){var n=e.getColor(JZ);n&&t.addRule(".monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-highlighted-label .highlight { color: "+n+"; }");var i=e.getColor($Z);i&&t.addRule(".monaco-editor .suggest-widget { color: "+i+"; }");var o=e.getColor(P_);o&&t.addRule(".monaco-editor .suggest-widget a { color: "+o+"; }");var r=e.getColor(R_);r&&t.addRule(".monaco-editor .suggest-widget code { background-color: "+r+"; }")}));var sY=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),aY=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},uY=function(e,t){return function(n,i){t(n,i,e)}},lY=function(e){function t(n,i){var o=e.call(this)||this;return o._editor=n,o._enabled=!1,o._ckAtEnd=t.AtEnd.bindTo(i),o._register(o._editor.onDidChangeConfiguration((function(e){return e.hasChanged(94)&&o._update()}))),o._update(),o}return sY(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),Ae(this._selectionListener),this._ckAtEnd.reset()},t.prototype._update=function(){var e=this,t="on"===this._editor.getOption(94);if(this._enabled!==t)if(this._enabled=t,this._enabled){var n=function(){if(e._editor.hasModel()){var t=e._editor.getModel(),n=e._editor.getSelection(),i=t.getWordAtPosition(n.getStartPosition());i?e._ckAtEnd.set(i.endColumn===n.getStartPosition().column):e._ckAtEnd.set(!1)}else e._ckAtEnd.set(!1)};this._selectionListener=this._editor.onDidChangeCursorSelection(n),n()}else this._selectionListener&&(this._ckAtEnd.reset(),this._selectionListener.dispose(),this._selectionListener=void 0)},t.AtEnd=new Kh("atEndOfWord",!1),t=aY([uY(1,qh)],t)}(He),cY=function(){function e(e,t,n){var i=this;this._disposables=new Be,this._disposables.add(t.onDidShow((function(){return i._onItem(t.getFocusedItem())}))),this._disposables.add(t.onDidFocus(this._onItem,this)),this._disposables.add(t.onDidHide(this.reset,this)),this._disposables.add(e.onWillType((function(o){if(i._active&&!t.isFrozen()){var r=o.charCodeAt(o.length-1);i._active.acceptCharacters.has(r)&&e.getOption(0)&&n(i._active.item)}})))}return e.prototype._onItem=function(e){if(e&&Oi(e.item.completion.commitCharacters)){if(!this._active||this._active.item.item!==e.item){for(var t=new ic,n=0,i=e.item.completion.commitCharacters;n<i.length;n++){var o=i[n];o.length>0&&t.add(o.charCodeAt(0))}this._active={acceptCharacters:t,item:e}}}else this.reset()},e.prototype.reset=function(){this._active=void 0},e.prototype.dispose=function(){this._disposables.dispose()},e}(),dY=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),hY=function(){function e(e){var t=this;this._controller=e,this._disposables=new Be,this._decorations=[],this._disposables.add(e.model.onDidSuggest((function(e){if(!e.shy){var n=t._controller.widget.getValue(),i=n.getFocusedItem();i&&t._highlight(i.item),t._widgetListener||(t._widgetListener=n.onDidFocus((function(e){return t._highlight(e.item)})))}}))),this._disposables.add(e.model.onDidCancel((function(){t._reset()})))}return e.prototype.dispose=function(){this._reset(),this._disposables.dispose(),Ae(this._widgetListener),Ae(this._shiftKeyListener)},e.prototype._reset=function(){this._decorations=this._controller.editor.deltaDecorations(this._decorations,[]),this._shiftKeyListener&&(this._shiftKeyListener.dispose(),this._shiftKeyListener=void 0)},e.prototype._highlight=function(e){var t,n=this;this._currentItem=e;var i=this._controller.editor.getOption(89),o=[];if(i.insertHighlight){this._shiftKeyListener||(this._shiftKeyListener=pY.event((function(){return n._highlight(n._currentItem)})));var r=this._controller.getOverwriteInfo(e,pY.isPressed),s=this._controller.editor.getPosition();if("insert"===i.insertMode&&r.overwriteAfter>0)o=[{range:new wn(s.lineNumber,s.column,s.lineNumber,s.column+r.overwriteAfter),options:{inlineClassName:"suggest-insert-unexpected"}}];else if("replace"===i.insertMode&&0===r.overwriteAfter){var a=null===(t=this._controller.editor.getModel())||void 0===t?void 0:t.getWordAtPosition(s);a&&a.endColumn>s.column&&(o=[{range:new wn(s.lineNumber,s.column,s.lineNumber,a.endColumn),options:{inlineClassName:"suggest-insert-unexpected"}}])}}this._decorations=this._controller.editor.deltaDecorations(this._decorations,o)},e}(),pY=new(function(e){function t(){var t=e.call(this)||this;return t._subscriptions=new Be,t._isPressed=!1,t._subscriptions.add(Xn(document.body,"keydown")((function(e){return t.isPressed=e.shiftKey}))),t._subscriptions.add(Xn(document.body,"keyup")((function(){return t.isPressed=!1}))),t._subscriptions.add(Xn(document.body,"mouseleave")((function(){return t.isPressed=!1}))),t._subscriptions.add(Xn(document.body,"blur")((function(){return t.isPressed=!1}))),t}return dY(t,e),Object.defineProperty(t.prototype,"isPressed",{get:function(){return this._isPressed},set:function(e){this._isPressed!==e&&(this._isPressed=e,this.fire(e))},enumerable:!0,configurable:!0}),t.prototype.dispose=function(){this._subscriptions.dispose(),e.prototype.dispose.call(this)},t}(nt)),fY=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),gY=function(){return(gY=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},mY=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},vY=function(e,t){return function(n,i){t(n,i,e)}},_Y=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},yY=function(){function e(e,t){if(this._model=e,this._position=t,e.getLineMaxColumn(t.lineNumber)!==t.column){var n=e.getOffsetAt(t),i=e.getPositionAt(n+1);this._marker=e.deltaDecorations([],[{range:wn.fromPositions(t,i),options:{stickiness:1}}])}}return e.prototype.dispose=function(){this._marker&&!this._model.isDisposed()&&this._model.deltaDecorations(this._marker,[])},e.prototype.delta=function(e){if(this._model.isDisposed()||this._position.lineNumber!==e.lineNumber)return 0;if(this._marker){var t=this._model.getDecorationRange(this._marker[0]);return this._model.getOffsetAt(t.getStartPosition())-this._model.getOffsetAt(e)}return this._model.getLineMaxColumn(e.lineNumber)-e.column},e}(),bY=function(){function e(e,t,n,i,o,r){var s=this;this._memoryService=n,this._commandService=i,this._contextKeyService=o,this._instantiationService=r,this._lineSuffix=new ze,this._toDispose=new Be,this.editor=e,this.model=new uZ(this.editor,t),this.widget=this._toDispose.add(new Si((function(){var e=s._instantiationService.createInstance(rY,s.editor);s._toDispose.add(e),s._toDispose.add(e.onDidSelect((function(e){return s._insertSuggestion(e,0)}),s));var t=new cY(s.editor,e,(function(e){return s._insertSuggestion(e,2)}));s._toDispose.add(t),s._toDispose.add(s.model.onDidSuggest((function(e){0===e.completionModel.items.length&&t.reset()})));var n=nG.MakesTextEdit.bindTo(s._contextKeyService);return s._toDispose.add(e.onDidFocus((function(e){var t=e.item,i=s.editor.getPosition(),o=t.editStart.column,r=i.column,a=!0;"smart"!==s.editor.getOption(1)||2!==s.model.state||t.completion.command||t.completion.additionalTextEdits||4&t.completion.insertTextRules||r-o!==t.completion.insertText.length||(a=s.editor.getModel().getValueInRange({startLineNumber:i.lineNumber,startColumn:o,endLineNumber:i.lineNumber,endColumn:r})!==t.completion.insertText);n.set(a)}))),s._toDispose.add(We((function(){return n.reset()}))),s._toDispose.add(e.onDetailsKeyDown((function(e){e.toKeybinding().equals(new yt(!0,!1,!1,!1,33))||_&&e.toKeybinding().equals(new yt(!1,!1,!1,!0,33))?e.stopPropagation():e.toKeybinding().isModifierKey()||s.editor.focus()}))),e}))),this._alternatives=this._toDispose.add(new Si((function(){return s._toDispose.add(new tZ(s.editor,s._contextKeyService))}))),this._toDispose.add(r.createInstance(lY,e)),this._toDispose.add(this.model.onDidTrigger((function(e){s.widget.getValue().showTriggered(e.auto,e.shy?250:50),s._lineSuffix.value=new yY(s.editor.getModel(),e.position)}))),this._toDispose.add(this.model.onDidSuggest((function(e){if(!e.shy){var t=s._memoryService.select(s.editor.getModel(),s.editor.getPosition(),e.completionModel.items);s.widget.getValue().showSuggestions(e.completionModel,t,e.isFrozen,e.auto)}}))),this._toDispose.add(this.model.onDidCancel((function(e){e.retrigger||s.widget.getValue().hideWidget()}))),this._toDispose.add(this.editor.onDidBlurEditorWidget((function(){s.model.cancel(),s.model.clear()})));var a=nG.AcceptSuggestionsOnEnter.bindTo(o),u=function(){var e=s.editor.getOption(1);a.set("on"===e||"smart"===e)};this._toDispose.add(this.editor.onDidChangeConfiguration((function(){return u()}))),u(),this._toDispose.add(new hY(this))}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.dispose=function(){this._alternatives.dispose(),this._toDispose.dispose(),this.widget.dispose(),this.model.dispose(),this._lineSuffix.dispose()},e.prototype._insertSuggestion=function(e,t){var n,i=this;if(!e||!e.item)return this._alternatives.getValue().reset(),this.model.cancel(),void this.model.clear();if(this.editor.hasModel()){var o=this.editor.getModel(),r=o.getAlternativeVersionId(),s=e.item,a=s.completion;1&t||this.editor.pushUndoStop();var u=this.getOverwriteInfo(s,Boolean(8&t));this._memoryService.memorize(o,this.editor.getPosition(),s),Array.isArray(a.additionalTextEdits)&&this.editor.executeEdits("suggestController.additionalTextEdits",a.additionalTextEdits.map((function(e){return bh.replace(wn.lift(e.range),e.text)})));var l=a.insertText;4&a.insertTextRules||(l=LG.escape(l)),HG.get(this.editor).insert(l,{overwriteBefore:u.overwriteBefore,overwriteAfter:u.overwriteAfter,undoStopBefore:!1,undoStopAfter:!1,adjustWhitespace:!(1&a.insertTextRules)}),2&t||this.editor.pushUndoStop(),a.command?a.command.id===wY.id?this.model.trigger({auto:!0,shy:!1},!0):((n=this._commandService).executeCommand.apply(n,_Y([a.command.id],a.command.arguments?_Y(a.command.arguments):[])).catch(De).finally((function(){return i.model.clear()})),this.model.cancel()):(this.model.cancel(),this.model.clear()),4&t&&this._alternatives.getValue().set(e,(function(e){for(;o.canUndo();){r!==o.getAlternativeVersionId()&&o.undo(),i._insertSuggestion(e,3|(8&t?8:0));break}})),this._alertCompletionItem(e.item)}},e.prototype.getOverwriteInfo=function(e,t){zs(this.editor.hasModel());var n="replace"===this.editor.getOption(89).insertMode;t&&(n=!n);var i=e.position.column-e.editStart.column,o=(n?e.editReplaceEnd.column:e.editInsertEnd.column)-e.position.column;return{overwriteBefore:i+(this.editor.getPosition().column-e.position.column),overwriteAfter:o+(this._lineSuffix.value?this._lineSuffix.value.delta(this.editor.getPosition()):0)}},e.prototype._alertCompletionItem=function(e){var t=e.completion,n="string"==typeof t.label?t.label:t.label.name;Oi(t.additionalTextEdits)&&Zp(r("arai.alert.snippet","Accepting '{0}' made {1} additional edits",n,t.additionalTextEdits.length))},e.prototype.triggerSuggest=function(e){this.editor.hasModel()&&(this.model.trigger({auto:!1,shy:!1},!1,e),this.editor.revealLine(this.editor.getPosition().lineNumber,0),this.editor.focus())},e.prototype.triggerSuggestAndAcceptBest=function(e){var t=this;if(this.editor.hasModel()){var n=this.editor.getPosition(),i=function(){n.equals(t.editor.getPosition())&&t._commandService.executeCommand(e.fallback)};Ge.once(this.model.onDidTrigger)((function(e){var n=[];Ge.any(t.model.onDidTrigger,t.model.onDidCancel)((function(){Ae(n),i()}),void 0,n),t.model.onDidSuggest((function(e){var o=e.completionModel;if(Ae(n),0!==o.items.length){var r=t._memoryService.select(t.editor.getModel(),t.editor.getPosition(),o.items),s=o.items[r];!function(e){if(4&e.completion.insertTextRules||e.completion.additionalTextEdits)return!0;var n=t.editor.getPosition(),i=e.editStart.column,o=n.column;return o-i!==e.completion.insertText.length||t.editor.getModel().getValueInRange({startLineNumber:n.lineNumber,startColumn:i,endLineNumber:n.lineNumber,endColumn:o})!==e.completion.insertText}(s)?i():(t.editor.pushUndoStop(),t._insertSuggestion({index:r,item:s,model:o},7))}else i()}),void 0,n)})),this.model.trigger({auto:!1,shy:!0}),this.editor.revealLine(n.lineNumber,0),this.editor.focus()}},e.prototype.acceptSelectedSuggestion=function(e,t){var n=this.widget.getValue().getFocusedItem(),i=0;e&&(i|=4),t&&(i|=8),this._insertSuggestion(n,i)},e.prototype.acceptNextSuggestion=function(){this._alternatives.getValue().next()},e.prototype.acceptPrevSuggestion=function(){this._alternatives.getValue().prev()},e.prototype.cancelSuggestWidget=function(){this.model.cancel(),this.model.clear(),this.widget.getValue().hideWidget()},e.prototype.selectNextSuggestion=function(){this.widget.getValue().selectNext()},e.prototype.selectNextPageSuggestion=function(){this.widget.getValue().selectNextPage()},e.prototype.selectLastSuggestion=function(){this.widget.getValue().selectLast()},e.prototype.selectPrevSuggestion=function(){this.widget.getValue().selectPrevious()},e.prototype.selectPrevPageSuggestion=function(){this.widget.getValue().selectPreviousPage()},e.prototype.selectFirstSuggestion=function(){this.widget.getValue().selectFirst()},e.prototype.toggleSuggestionDetails=function(){this.widget.getValue().toggleDetails()},e.prototype.toggleExplainMode=function(){this.widget.getValue().toggleExplainMode()},e.prototype.toggleSuggestionFocus=function(){this.widget.getValue().toggleDetailsFocus()},e.ID="editor.contrib.suggestController",e=mY([vY(1,el),vY(2,$G),vY(3,la),vY(4,qh),vY(5,In)],e)}(),wY=function(e){function t(){return e.call(this,{id:t.id,label:r("suggest.trigger.label","Trigger Suggest"),alias:"Trigger Suggest",precondition:Rh.and(eC.writable,eC.hasCompletionItemProvider),kbOpts:{kbExpr:eC.textInputFocus,primary:2058,mac:{primary:266,secondary:[521]},weight:100}})||this}return fY(t,e),t.prototype.run=function(e,t){var n=bY.get(t);n&&n.triggerSuggest()},t.id="editor.action.triggerSuggest",t}(kf);Pf(bY.ID,bY),Tf(wY);var CY=Nf.bindToContribution(bY.get);Mf(new CY({id:"acceptSelectedSuggestion",precondition:nG.Visible,handler:function(e){e.acceptSelectedSuggestion(!0,!1)}})),Zh.registerKeybindingRule({id:"acceptSelectedSuggestion",when:Rh.and(nG.Visible,eC.textInputFocus),primary:2,weight:190}),Zh.registerKeybindingRule({id:"acceptSelectedSuggestion",when:Rh.and(nG.Visible,eC.textInputFocus,nG.AcceptSuggestionsOnEnter,nG.MakesTextEdit),primary:3,weight:190}),Mf(new CY({id:"acceptAlternativeSelectedSuggestion",precondition:Rh.and(nG.Visible,eC.textInputFocus),kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:1027,secondary:[1026]},handler:function(e){e.acceptSelectedSuggestion(!1,!0)}})),ca.registerCommandAlias("acceptSelectedSuggestionOnEnter","acceptSelectedSuggestion"),Mf(new CY({id:"hideSuggestWidget",precondition:nG.Visible,handler:function(e){return e.cancelSuggestWidget()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:9,secondary:[1033]}})),Mf(new CY({id:"selectNextSuggestion",precondition:Rh.and(nG.Visible,nG.MultipleSuggestions),handler:function(e){return e.selectNextSuggestion()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}})),Mf(new CY({id:"selectNextPageSuggestion",precondition:Rh.and(nG.Visible,nG.MultipleSuggestions),handler:function(e){return e.selectNextPageSuggestion()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:12,secondary:[2060]}})),Mf(new CY({id:"selectLastSuggestion",precondition:Rh.and(nG.Visible,nG.MultipleSuggestions),handler:function(e){return e.selectLastSuggestion()}})),Mf(new CY({id:"selectPrevSuggestion",precondition:Rh.and(nG.Visible,nG.MultipleSuggestions),handler:function(e){return e.selectPrevSuggestion()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}})),Mf(new CY({id:"selectPrevPageSuggestion",precondition:Rh.and(nG.Visible,nG.MultipleSuggestions),handler:function(e){return e.selectPrevPageSuggestion()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:11,secondary:[2059]}})),Mf(new CY({id:"selectFirstSuggestion",precondition:Rh.and(nG.Visible,nG.MultipleSuggestions),handler:function(e){return e.selectFirstSuggestion()}})),Mf(new CY({id:"toggleSuggestionDetails",precondition:nG.Visible,handler:function(e){return e.toggleSuggestionDetails()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:2058,mac:{primary:266}}})),Mf(new CY({id:"toggleExplainMode",precondition:nG.Visible,handler:function(e){return e.toggleExplainMode()},kbOpts:{weight:100,primary:2133}})),Mf(new CY({id:"toggleSuggestionFocus",precondition:nG.Visible,handler:function(e){return e.toggleSuggestionFocus()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:2570,mac:{primary:778}}})),Mf(new CY({id:"insertBestCompletion",precondition:Rh.and(Rh.equals("config.editor.tabCompletion","on"),lY.AtEnd,nG.Visible.toNegated(),tZ.OtherSuggestions.toNegated(),HG.InSnippetMode.toNegated()),handler:function(e,t){e.triggerSuggestAndAcceptBest(Fs(t)?gY({fallback:"tab"},t):{fallback:"tab"})},kbOpts:{weight:190,primary:2}})),Mf(new CY({id:"insertNextSuggestion",precondition:Rh.and(Rh.equals("config.editor.tabCompletion","on"),tZ.OtherSuggestions,nG.Visible.toNegated(),HG.InSnippetMode.toNegated()),handler:function(e){return e.acceptNextSuggestion()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:2}})),Mf(new CY({id:"insertPrevSuggestion",precondition:Rh.and(Rh.equals("config.editor.tabCompletion","on"),tZ.OtherSuggestions,nG.Visible.toNegated(),HG.InSnippetMode.toNegated()),handler:function(e){return e.acceptPrevSuggestion()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:1026}}));var SY=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Tf(function(e){function t(){return e.call(this,{id:"editor.action.forceRetokenize",label:r("forceRetokenize","Developer: Force Retokenize"),alias:"Developer: Force Retokenize",precondition:void 0})||this}return SY(t,e),t.prototype.run=function(e,t){if(t.hasModel()){var n=t.getModel();n.resetTokenization();var i=new Cc(!0);n.forceTokenization(n.getLineCount()),i.stop(),console.log("tokenization took "+i.elapsed())}},t}(kf));var LY=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),xY=function(e){function t(){return e.call(this,{id:t.ID,label:r({key:"toggle.tabMovesFocus",comment:["Turn on/off use of tab key for moving focus around VS Code"]},"Toggle Tab Key Moves Focus"),alias:"Toggle Tab Key Moves Focus",precondition:void 0,kbOpts:{kbExpr:null,primary:2091,mac:{primary:1323},weight:100}})||this}return LY(t,e),t.prototype.run=function(e,t){var n=!nh.getTabFocusMode();nh.setTabFocusMode(n),Zp(n?r("toggle.tabMovesFocus.on","Pressing Tab will now move focus to the next focusable element"):r("toggle.tabMovesFocus.off","Pressing Tab will now insert the tab character"))},t.ID="editor.action.toggleTabFocusMode",t}(kf);Tf(xY);var DY=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),NY=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},kY=function(e,t){return function(n,i){t(n,i,e)}},EY=D_("editor.wordHighlightBackground",{dark:"#575757B8",light:"#57575740",hc:null},r("wordHighlight","Background color of a symbol during read-access, like reading a variable. The color must not be opaque so as not to hide underlying decorations."),!0),IY=D_("editor.wordHighlightStrongBackground",{dark:"#004972B8",light:"#0e639c40",hc:null},r("wordHighlightStrong","Background color of a symbol during write-access, like writing to a variable. The color must not be opaque so as not to hide underlying decorations."),!0),OY=D_("editor.wordHighlightBorder",{light:null,dark:null,hc:T_},r("wordHighlightBorder","Border color of a symbol during read-access, like reading a variable.")),MY=D_("editor.wordHighlightStrongBorder",{light:null,dark:null,hc:T_},r("wordHighlightStrongBorder","Border color of a symbol during write-access, like writing to a variable.")),TY=D_("editorOverviewRuler.wordHighlightForeground",{dark:"#A0A0A0CC",light:"#A0A0A0CC",hc:"#A0A0A0CC"},r("overviewRulerWordHighlightForeground","Overview ruler marker color for symbol highlights. The color must not be opaque so as not to hide underlying decorations."),!0),PY=D_("editorOverviewRuler.wordHighlightStrongForeground",{dark:"#C0A0C0CC",light:"#C0A0C0CC",hc:"#C0A0C0CC"},r("overviewRulerWordHighlightStrongForeground","Overview ruler marker color for write-access symbol highlights. The color must not be opaque so as not to hide underlying decorations."),!0),RY=new Kh("hasWordHighlights",!1);function AY(e,t,n){return vi(Tu.ordered(e).map((function(i){return function(){return Promise.resolve(i.provideDocumentHighlights(e,t,n)).then(void 0,Ne)}})),Oi)}var FY=function(){function e(e,t,n){var i=this;this._wordRange=this._getCurrentWordRange(e,t),this.result=hi((function(o){return i._compute(e,t,n,o)}))}return e.prototype._getCurrentWordRange=function(e,t){var n=e.getWordAtPosition(t.getPosition());return n?new wn(t.startLineNumber,n.startColumn,t.startLineNumber,n.endColumn):null},e.prototype.isValid=function(e,t,n){for(var i=t.startLineNumber,o=t.startColumn,r=t.endColumn,s=this._getCurrentWordRange(e,t),a=Boolean(this._wordRange&&this._wordRange.equalsRange(s)),u=0,l=n.length;!a&&u<l;u++){var c=e.getDecorationRange(n[u]);c&&c.startLineNumber===i&&c.startColumn<=o&&c.endColumn>=r&&(a=!0)}return a},e.prototype.cancel=function(){this.result.cancel()},e}(),WY=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return DY(t,e),t.prototype._compute=function(e,t,n,i){return AY(e,t.getPosition(),i).then((function(e){return e||[]}))},t}(FY),VY=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;return o._selectionIsEmpty=n.isEmpty(),o}return DY(t,e),t.prototype._compute=function(e,t,n,i){return gi(250,i).then((function(){if(!t.isEmpty())return[];var i=e.getWordAtPosition(t.getPosition());return i?e.findMatches(i.word,!0,!1,!0,n,!1).map((function(e){return{range:e.range,kind:mu.Text}})):[]}))},t.prototype.isValid=function(t,n,i){var o=n.isEmpty();return this._selectionIsEmpty===o&&e.prototype.isValid.call(this,t,n,i)},t}(FY);Of("_executeDocumentHighlights",(function(e,t){return AY(e,t,et.None)}));var BY=function(){function e(e,t){var n=this;this.toUnhook=new Be,this.workerRequestTokenId=0,this.workerRequestCompleted=!1,this.workerRequestValue=[],this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1,this.editor=e,this._hasWordHighlights=RY.bindTo(t),this._ignorePositionChangeEvent=!1,this.occurrencesHighlight=this.editor.getOption(61),this.model=this.editor.getModel(),this.toUnhook.add(e.onDidChangeCursorPosition((function(e){n._ignorePositionChangeEvent||n.occurrencesHighlight&&n._onPositionChanged(e)}))),this.toUnhook.add(e.onDidChangeModelContent((function(e){n._stopAll()}))),this.toUnhook.add(e.onDidChangeConfiguration((function(e){var t=n.editor.getOption(61);n.occurrencesHighlight!==t&&(n.occurrencesHighlight=t,n._stopAll())}))),this._decorationIds=[],this.workerRequestTokenId=0,this.workerRequest=null,this.workerRequestCompleted=!1,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1}return e.prototype.hasDecorations=function(){return this._decorationIds.length>0},e.prototype.restore=function(){this.occurrencesHighlight&&this._run()},e.prototype._getSortedHighlights=function(){var e=this;return Ei(this._decorationIds.map((function(t){return e.model.getDecorationRange(t)})).sort(wn.compareRangesUsingStarts))},e.prototype.moveNext=function(){var e=this,t=this._getSortedHighlights(),n=t[(Pi(t,(function(t){return t.containsPosition(e.editor.getPosition())}))+1)%t.length];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n)}finally{this._ignorePositionChangeEvent=!1}},e.prototype.moveBack=function(){var e=this,t=this._getSortedHighlights(),n=t[(Pi(t,(function(t){return t.containsPosition(e.editor.getPosition())}))-1+t.length)%t.length];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n)}finally{this._ignorePositionChangeEvent=!1}},e.prototype._removeDecorations=function(){this._decorationIds.length>0&&(this._decorationIds=this.editor.deltaDecorations(this._decorationIds,[]),this._hasWordHighlights.set(!1))},e.prototype._stopAll=function(){this._removeDecorations(),-1!==this.renderDecorationsTimer&&(clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=-1),null!==this.workerRequest&&(this.workerRequest.cancel(),this.workerRequest=null),this.workerRequestCompleted||(this.workerRequestTokenId++,this.workerRequestCompleted=!0)},e.prototype._onPositionChanged=function(e){this.occurrencesHighlight&&3===e.reason?this._run():this._stopAll()},e.prototype._run=function(){var e=this,t=this.editor.getSelection();if(t.startLineNumber===t.endLineNumber){var n=t.startLineNumber,i=t.startColumn,o=t.endColumn,r=this.model.getWordAtPosition({lineNumber:n,column:i});if(!r||r.startColumn>i||r.endColumn<o)this._stopAll();else{var s,a,u,l=this.workerRequest&&this.workerRequest.isValid(this.model,t,this._decorationIds);if(this.lastCursorPositionChangeTime=(new Date).getTime(),l)this.workerRequestCompleted&&-1!==this.renderDecorationsTimer&&(clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=-1,this._beginRenderDecorations());else{this._stopAll();var c=++this.workerRequestTokenId;this.workerRequestCompleted=!1,this.workerRequest=(s=this.model,a=this.editor.getSelection(),u=this.editor.getOption(96),Tu.has(s)?new WY(s,a,u):new VY(s,a,u)),this.workerRequest.result.then((function(t){c===e.workerRequestTokenId&&(e.workerRequestCompleted=!0,e.workerRequestValue=t||[],e._beginRenderDecorations())}),De)}}}else this._stopAll()},e.prototype._beginRenderDecorations=function(){var e=this,t=(new Date).getTime(),n=this.lastCursorPositionChangeTime+250;t>=n?(this.renderDecorationsTimer=-1,this.renderDecorations()):this.renderDecorationsTimer=setTimeout((function(){e.renderDecorations()}),n-t)},e.prototype.renderDecorations=function(){this.renderDecorationsTimer=-1;for(var t=[],n=0,i=this.workerRequestValue.length;n<i;n++){var o=this.workerRequestValue[n];t.push({range:o.range,options:e._getDecorationOptions(o.kind)})}this._decorationIds=this.editor.deltaDecorations(this._decorationIds,t),this._hasWordHighlights.set(this.hasDecorations())},e._getDecorationOptions=function(e){return e===mu.Write?this._WRITE_OPTIONS:e===mu.Text?this._TEXT_OPTIONS:this._REGULAR_OPTIONS},e.prototype.dispose=function(){this._stopAll(),this.toUnhook.dispose()},e._WRITE_OPTIONS=kv.register({stickiness:1,className:"wordHighlightStrong",overviewRuler:{color:gg(PY),position:Va.Center}}),e._TEXT_OPTIONS=kv.register({stickiness:1,className:"selectionHighlight",overviewRuler:{color:gg(wb),position:Va.Center}}),e._REGULAR_OPTIONS=kv.register({stickiness:1,className:"wordHighlight",overviewRuler:{color:gg(TY),position:Va.Center}}),e}(),HY=function(e){function t(t,n){var i=e.call(this)||this;i.wordHighligher=null;var o=function(){t.hasModel()&&(i.wordHighligher=new BY(t,n))};return i._register(t.onDidChangeModel((function(e){i.wordHighligher&&(i.wordHighligher.dispose(),i.wordHighligher=null),o()}))),o(),i}return DY(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.saveViewState=function(){return!(!this.wordHighligher||!this.wordHighligher.hasDecorations())},t.prototype.moveNext=function(){this.wordHighligher&&this.wordHighligher.moveNext()},t.prototype.moveBack=function(){this.wordHighligher&&this.wordHighligher.moveBack()},t.prototype.restoreViewState=function(e){this.wordHighligher&&e&&this.wordHighligher.restore()},t.prototype.dispose=function(){this.wordHighligher&&(this.wordHighligher.dispose(),this.wordHighligher=null),e.prototype.dispose.call(this)},t.ID="editor.contrib.wordHighlighter",t=NY([kY(1,qh)],t)}(He),zY=function(e){function t(t,n){var i=e.call(this,n)||this;return i._isNext=t,i}return DY(t,e),t.prototype.run=function(e,t){var n=HY.get(t);n&&(this._isNext?n.moveNext():n.moveBack())},t}(kf),jY=function(e){function t(){return e.call(this,!0,{id:"editor.action.wordHighlight.next",label:r("wordHighlight.next.label","Go to Next Symbol Highlight"),alias:"Go to Next Symbol Highlight",precondition:RY,kbOpts:{kbExpr:eC.editorTextFocus,primary:65,weight:100}})||this}return DY(t,e),t}(zY),UY=function(e){function t(){return e.call(this,!1,{id:"editor.action.wordHighlight.prev",label:r("wordHighlight.previous.label","Go to Previous Symbol Highlight"),alias:"Go to Previous Symbol Highlight",precondition:RY,kbOpts:{kbExpr:eC.editorTextFocus,primary:1089,weight:100}})||this}return DY(t,e),t}(zY),KY=function(e){function t(){return e.call(this,{id:"editor.action.wordHighlight.trigger",label:r("wordHighlight.trigger.label","Trigger Symbol Highlight"),alias:"Trigger Symbol Highlight",precondition:RY.toNegated(),kbOpts:{kbExpr:eC.editorTextFocus,primary:0,weight:100}})||this}return DY(t,e),t.prototype.run=function(e,t,n){var i=HY.get(t);i&&i.restoreViewState(!0)},t}(kf);Pf(HY.ID,HY),Tf(jY),Tf(UY),Tf(KY),yg((function(e,t){var n=e.getColor(xy);n&&(t.addRule(".monaco-editor .focused .selectionHighlight { background-color: "+n+"; }"),t.addRule(".monaco-editor .selectionHighlight { background-color: "+n.transparent(.5)+"; }"));var i=e.getColor(EY);i&&t.addRule(".monaco-editor .wordHighlight { background-color: "+i+"; }");var o=e.getColor(IY);o&&t.addRule(".monaco-editor .wordHighlightStrong { background-color: "+o+"; }");var r=e.getColor(Dy);r&&t.addRule(".monaco-editor .selectionHighlight { border: 1px "+("hc"===e.type?"dotted":"solid")+" "+r+"; box-sizing: border-box; }");var s=e.getColor(OY);s&&t.addRule(".monaco-editor .wordHighlight { border: 1px "+("hc"===e.type?"dashed":"solid")+" "+s+"; box-sizing: border-box; }");var a=e.getColor(MY);a&&t.addRule(".monaco-editor .wordHighlightStrong { border: 1px "+("hc"===e.type?"dashed":"solid")+" "+a+"; box-sizing: border-box; }")}));var qY=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),GY=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n._wordNavigationType=t.wordNavigationType,n}return qY(t,e),t.prototype.runEditorCommand=function(e,t,n){var i=this;if(t.hasModel()){var o=Dm(t.getOption(96)),r=t.getModel(),s=t.getSelections().map((function(e){var t=new bn(e.positionLineNumber,e.positionColumn),n=i._move(o,r,t,i._wordNavigationType);return i._moveTo(e,n,i._inSelectionMode)}));if(t._getCursors().setStates("moveWordCommand",0,s.map((function(e){return zv.fromModelSelection(e)}))),1===s.length){var a=new bn(s[0].positionLineNumber,s[0].positionColumn);t.revealPosition(a,0)}}},t.prototype._moveTo=function(e,t,n){return n?new Sn(e.selectionStartLineNumber,e.selectionStartColumn,t.lineNumber,t.column):new Sn(t.lineNumber,t.column,t.lineNumber,t.column)},t}(Nf),ZY=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return qY(t,e),t.prototype._move=function(e,t,n,i){return qw.moveWordLeft(e,t,n,i)},t}(GY),YY=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return qY(t,e),t.prototype._move=function(e,t,n,i){return qw.moveWordRight(e,t,n,i)},t}(GY),XY=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:0,id:"cursorWordStartLeft",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:2063,mac:{primary:527},weight:100}})||this}return qY(t,e),t}(ZY),$Y=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:2,id:"cursorWordEndLeft",precondition:void 0})||this}return qY(t,e),t}(ZY),QY=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:1,id:"cursorWordLeft",precondition:void 0})||this}return qY(t,e),t}(ZY),JY=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:0,id:"cursorWordStartLeftSelect",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:3087,mac:{primary:1551},weight:100}})||this}return qY(t,e),t}(ZY),eX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:2,id:"cursorWordEndLeftSelect",precondition:void 0})||this}return qY(t,e),t}(ZY),tX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:1,id:"cursorWordLeftSelect",precondition:void 0})||this}return qY(t,e),t}(ZY),nX=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:3,id:"cursorWordAccessibilityLeft",precondition:void 0,kbOpts:{kbExpr:Rh.and(eC.textInputFocus,mx),win:{primary:2063},weight:101}})||this}return qY(t,e),t.prototype._move=function(t,n,i,o){return e.prototype._move.call(this,Dm(Le.wordSeparators.defaultValue),n,i,o)},t}(ZY),iX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:3,id:"cursorWordAccessibilityLeftSelect",precondition:void 0,kbOpts:{kbExpr:Rh.and(eC.textInputFocus,mx),win:{primary:3087},weight:101}})||this}return qY(t,e),t.prototype._move=function(t,n,i,o){return e.prototype._move.call(this,Dm(Le.wordSeparators.defaultValue),n,i,o)},t}(ZY),oX=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:0,id:"cursorWordStartRight",precondition:void 0})||this}return qY(t,e),t}(YY),rX=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:2,id:"cursorWordEndRight",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:2065,mac:{primary:529},weight:100}})||this}return qY(t,e),t}(YY),sX=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:2,id:"cursorWordRight",precondition:void 0})||this}return qY(t,e),t}(YY),aX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:0,id:"cursorWordStartRightSelect",precondition:void 0})||this}return qY(t,e),t}(YY),uX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:2,id:"cursorWordEndRightSelect",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:3089,mac:{primary:1553},weight:100}})||this}return qY(t,e),t}(YY),lX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:2,id:"cursorWordRightSelect",precondition:void 0})||this}return qY(t,e),t}(YY),cX=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:3,id:"cursorWordAccessibilityRight",precondition:void 0,kbOpts:{kbExpr:Rh.and(eC.textInputFocus,mx),win:{primary:2065},weight:101}})||this}return qY(t,e),t.prototype._move=function(t,n,i,o){return e.prototype._move.call(this,Dm(Le.wordSeparators.defaultValue),n,i,o)},t}(YY),dX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:3,id:"cursorWordAccessibilityRightSelect",precondition:void 0,kbOpts:{kbExpr:Rh.and(eC.textInputFocus,mx),win:{primary:3089},weight:101}})||this}return qY(t,e),t.prototype._move=function(t,n,i,o){return e.prototype._move.call(this,Dm(Le.wordSeparators.defaultValue),n,i,o)},t}(YY),hX=function(e){function t(t){var n=e.call(this,t)||this;return n._whitespaceHeuristics=t.whitespaceHeuristics,n._wordNavigationType=t.wordNavigationType,n}return qY(t,e),t.prototype.runEditorCommand=function(e,t,n){var i=this;if(t.hasModel()){var o=Dm(t.getOption(96)),r=t.getModel(),s=t.getSelections().map((function(e){var t=i._delete(o,r,e,i._whitespaceHeuristics,i._wordNavigationType);return new Fw(t,"")}));t.pushUndoStop(),t.executeCommands(this.id,s),t.pushUndoStop()}},t}(Nf),pX=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return qY(t,e),t.prototype._delete=function(e,t,n,i,o){var r=qw.deleteWordLeft(e,t,n,i,o);return r||new wn(1,1,1,1)},t}(hX),fX=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return qY(t,e),t.prototype._delete=function(e,t,n,i,o){var r=qw.deleteWordRight(e,t,n,i,o);if(r)return r;var s=t.getLineCount(),a=t.getLineMaxColumn(s);return new wn(s,a,s,a)},t}(hX),gX=function(e){function t(){return e.call(this,{whitespaceHeuristics:!1,wordNavigationType:0,id:"deleteWordStartLeft",precondition:eC.writable})||this}return qY(t,e),t}(pX),mX=function(e){function t(){return e.call(this,{whitespaceHeuristics:!1,wordNavigationType:2,id:"deleteWordEndLeft",precondition:eC.writable})||this}return qY(t,e),t}(pX),vX=function(e){function t(){return e.call(this,{whitespaceHeuristics:!0,wordNavigationType:0,id:"deleteWordLeft",precondition:eC.writable,kbOpts:{kbExpr:eC.textInputFocus,primary:2049,mac:{primary:513},weight:100}})||this}return qY(t,e),t}(pX),_X=function(e){function t(){return e.call(this,{whitespaceHeuristics:!1,wordNavigationType:0,id:"deleteWordStartRight",precondition:eC.writable})||this}return qY(t,e),t}(fX),yX=function(e){function t(){return e.call(this,{whitespaceHeuristics:!1,wordNavigationType:2,id:"deleteWordEndRight",precondition:eC.writable})||this}return qY(t,e),t}(fX),bX=function(e){function t(){return e.call(this,{whitespaceHeuristics:!0,wordNavigationType:2,id:"deleteWordRight",precondition:eC.writable,kbOpts:{kbExpr:eC.textInputFocus,primary:2068,mac:{primary:532},weight:100}})||this}return qY(t,e),t}(fX);Mf(new XY),Mf(new $Y),Mf(new QY),Mf(new JY),Mf(new eX),Mf(new tX),Mf(new oX),Mf(new rX),Mf(new sX),Mf(new aX),Mf(new uX),Mf(new lX),Mf(new nX),Mf(new iX),Mf(new cX),Mf(new dX),Mf(new gX),Mf(new mX),Mf(new vX),Mf(new _X),Mf(new yX),Mf(new bX);var wX=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),CX=function(e){function t(){return e.call(this,{whitespaceHeuristics:!0,wordNavigationType:0,id:"deleteWordPartLeft",precondition:eC.writable,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:769},weight:100}})||this}return wX(t,e),t.prototype._delete=function(e,t,n,i,o){var r=Gw.deleteWordPartLeft(e,t,n,i);return r||new wn(1,1,1,1)},t}(hX),SX=function(e){function t(){return e.call(this,{whitespaceHeuristics:!0,wordNavigationType:2,id:"deleteWordPartRight",precondition:eC.writable,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:788},weight:100}})||this}return wX(t,e),t.prototype._delete=function(e,t,n,i,o){var r=Gw.deleteWordPartRight(e,t,n,i);if(r)return r;var s=t.getLineCount(),a=t.getLineMaxColumn(s);return new wn(s,a,s,a)},t}(hX),LX=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return wX(t,e),t.prototype._move=function(e,t,n,i){return Gw.moveWordPartLeft(e,t,n)},t}(GY),xX=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:0,id:"cursorWordPartLeft",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:783},weight:100}})||this}return wX(t,e),t}(LX);ca.registerCommandAlias("cursorWordPartStartLeft","cursorWordPartLeft");var DX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:0,id:"cursorWordPartLeftSelect",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:1807},weight:100}})||this}return wX(t,e),t}(LX);ca.registerCommandAlias("cursorWordPartStartLeftSelect","cursorWordPartLeftSelect");var NX=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return wX(t,e),t.prototype._move=function(e,t,n,i){return Gw.moveWordPartRight(e,t,n)},t}(GY),kX=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:2,id:"cursorWordPartRight",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:785},weight:100}})||this}return wX(t,e),t}(NX),EX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:2,id:"cursorWordPartRightSelect",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:1809},weight:100}})||this}return wX(t,e),t}(NX);Mf(new CX),Mf(new SX),Mf(new xX),Mf(new DX),Mf(new kX),Mf(new EX);n(428);var IX=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),OX=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},MX=function(e,t){return function(n,i){t(n,i,e)}},TX=new Kh("accessibilityHelpWidgetVisible",!1),PX=function(e){function t(t,n){var i=e.call(this)||this;return i._editor=t,i._widget=i._register(n.createInstance(RX,i._editor)),i}return IX(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.show=function(){this._widget.show()},t.prototype.hide=function(){this._widget.hide()},t.ID="editor.contrib.accessibilityHelpController",t=OX([MX(1,In)],t)}(He);var RX=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r._contextKeyService=n,r._keybindingService=i,r._openerService=o,r._editor=t,r._isVisibleKey=TX.bindTo(r._contextKeyService),r._domNode=Ff(document.createElement("div")),r._domNode.setClassName("accessibilityHelpWidget"),r._domNode.setDisplay("none"),r._domNode.setAttribute("role","dialog"),r._domNode.setAttribute("aria-hidden","true"),r._contentDomNode=Ff(document.createElement("div")),r._contentDomNode.setAttribute("role","document"),r._domNode.appendChild(r._contentDomNode),r._isVisible=!1,r._register(r._editor.onDidLayoutChange((function(){r._isVisible&&r._layout()}))),r._register(co(r._contentDomNode.domNode,"keydown",(function(e){if(r._isVisible&&(e.equals(2083)&&(Zp(cp.emergencyConfOn),r._editor.updateOptions({accessibilitySupport:"on"}),Yi(r._contentDomNode.domNode),r._buildContent(),r._contentDomNode.domNode.focus(),e.preventDefault(),e.stopPropagation()),e.equals(2086))){Zp(cp.openingDocs);var t=r._editor.getRawOptions().accessibilityHelpUrl;void 0===t&&(t="https://go.microsoft.com/fwlink/?linkid=852450"),r._openerService.open(Et.parse(t)),e.preventDefault(),e.stopPropagation()}}))),r.onblur(r._contentDomNode.domNode,(function(){r.hide()})),r._editor.addOverlayWidget(r),r}return IX(t,e),t.prototype.dispose=function(){this._editor.removeOverlayWidget(this),e.prototype.dispose.call(this)},t.prototype.getId=function(){return t.ID},t.prototype.getDomNode=function(){return this._domNode.domNode},t.prototype.getPosition=function(){return{preference:null}},t.prototype.show=function(){this._isVisible||(this._isVisible=!0,this._isVisibleKey.set(!0),this._layout(),this._domNode.setDisplay("block"),this._domNode.setAttribute("aria-hidden","false"),this._contentDomNode.domNode.tabIndex=0,this._buildContent(),this._contentDomNode.domNode.focus())},t.prototype._descriptionForCommand=function(e,t,n){var i=this._keybindingService.lookupKeybinding(e);return i?pr(t,i.getAriaLabel()):pr(n,e)},t.prototype._buildContent=function(){var e=this._editor.getOptions(),t=this._editor.getSelections(),n=0;if(t){var i=this._editor.getModel();i&&t.forEach((function(e){n+=i.getValueLengthInRange(e)}))}var o=function(e,t){return e&&0!==e.length?1===e.length?t?pr(cp.singleSelectionRange,e[0].positionLineNumber,e[0].positionColumn,t):pr(cp.singleSelection,e[0].positionLineNumber,e[0].positionColumn):t?pr(cp.multiSelectionRange,e.length,t):e.length>0?pr(cp.multiSelection,e.length):"":cp.noSelection}(t,n);e.get(45)?e.get(68)?o+=cp.readonlyDiffEditor:o+=cp.editableDiffEditor:e.get(68)?o+=cp.readonlyEditor:o+=cp.editableEditor;var r=_?cp.changeConfigToOnMac:cp.changeConfigToOnWinLinux;switch(e.get(2)){case 0:o+="\n\n - "+r;break;case 2:o+="\n\n - "+cp.auto_on;break;case 1:o+="\n\n - "+cp.auto_off,o+=" "+r}e.get(106)?o+="\n\n - "+this._descriptionForCommand(xY.ID,cp.tabFocusModeOnMsg,cp.tabFocusModeOnMsgNoKb):o+="\n\n - "+this._descriptionForCommand(xY.ID,cp.tabFocusModeOffMsg,cp.tabFocusModeOffMsgNoKb),o+="\n\n - "+(_?cp.openDocMac:cp.openDocWinLinux),o+="\n\n"+cp.outroMsg,this._contentDomNode.domNode.appendChild(DW(o)),this._contentDomNode.domNode.setAttribute("aria-label",o)},t.prototype.hide=function(){this._isVisible&&(this._isVisible=!1,this._isVisibleKey.reset(),this._domNode.setDisplay("none"),this._domNode.setAttribute("aria-hidden","true"),this._contentDomNode.domNode.tabIndex=-1,Yi(this._contentDomNode.domNode),this._editor.focus())},t.prototype._layout=function(){var e=this._editor.getLayoutInfo(),n=Math.max(5,Math.min(t.WIDTH,e.width-40)),i=Math.max(5,Math.min(t.HEIGHT,e.height-40));this._domNode.setWidth(n),this._domNode.setHeight(i);var o=Math.round((e.height-i)/2);this._domNode.setTop(o);var r=Math.round((e.width-n)/2);this._domNode.setLeft(r)},t.ID="editor.contrib.accessibilityHelpWidget",t.WIDTH=500,t.HEIGHT=300,t=OX([MX(1,qh),MX(2,XD),MX(3,pa)],t)}(KC),AX=function(e){function t(){return e.call(this,{id:"editor.action.showAccessibilityHelp",label:cp.showAccessibilityHelpAction,alias:"Show Accessibility Help",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:Vn?2107:571,weight:100}})||this}return IX(t,e),t.prototype.run=function(e,t){var n=PX.get(t);n&&n.show()},t}(kf);Pf(PX.ID,PX),Tf(AX),Mf(new(Nf.bindToContribution(PX.get))({id:"closeAccessibilityHelp",precondition:TX,handler:function(e){return e.hide()},kbOpts:{weight:200,kbExpr:eC.focus,primary:9,secondary:[1033]}})),yg((function(e,t){var n=e.getColor(_y);n&&t.addRule(".monaco-editor .accessibilityHelpWidget { background-color: "+n+"; }");var i=e.getColor(yy);i&&t.addRule(".monaco-editor .accessibilityHelpWidget { color: "+i+"; }");var o=e.getColor(A_);o&&t.addRule(".monaco-editor .accessibilityHelpWidget { box-shadow: 0 2px 8px "+o+"; }");var r=e.getColor(M_);r&&t.addRule(".monaco-editor .accessibilityHelpWidget { border: 2px solid "+r+"; }")}));n(429);var FX=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),WX=function(e){function t(t){var n=e.call(this)||this;return n.editor=t,n.widget=null,Gn&&(n._register(t.onDidChangeConfiguration((function(){return n.update()}))),n.update()),n}return FX(t,e),t.prototype.update=function(){var e=!this.editor.getOption(68);!this.widget&&e?this.widget=new VX(this.editor):this.widget&&!e&&(this.widget.dispose(),this.widget=null)},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.widget&&(this.widget.dispose(),this.widget=null)},t.ID="editor.contrib.iPadShowKeyboard",t}(He),VX=function(e){function t(t){var n=e.call(this)||this;return n.editor=t,n._domNode=document.createElement("textarea"),n._domNode.className="iPadShowKeyboard",n._register(uo(n._domNode,"touchstart",(function(e){n.editor.focus()}))),n._register(uo(n._domNode,"focus",(function(e){n.editor.focus()}))),n.editor.addOverlayWidget(n),n}return FX(t,e),t.prototype.dispose=function(){this.editor.removeOverlayWidget(this),e.prototype.dispose.call(this)},t.prototype.getId=function(){return t.ID},t.prototype.getDomNode=function(){return this._domNode},t.prototype.getPosition=function(){return{preference:1}},t.ID="editor.contrib.ShowKeyboardWidget",t}(He);Pf(WX.ID,WX);n(430);var BX=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),HX=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},zX=function(e,t){return function(n,i){t(n,i,e)}},jX=function(e){function t(t,n,i){var o=e.call(this)||this;return o._editor=t,o._modeService=i,o._widget=null,o._register(o._editor.onDidChangeModel((function(e){return o.stop()}))),o._register(o._editor.onDidChangeModelLanguage((function(e){return o.stop()}))),o._register(Yu.onDidChange((function(e){return o.stop()}))),o}return BX(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.dispose=function(){this.stop(),e.prototype.dispose.call(this)},t.prototype.launch=function(){this._widget||this._editor.hasModel()&&(this._widget=new KX(this._editor,this._modeService))},t.prototype.stop=function(){this._widget&&(this._widget.dispose(),this._widget=null)},t.ID="editor.contrib.inspectTokens",t=HX([zX(1,YD),zX(2,lN)],t)}(He),UX=function(e){function t(){return e.call(this,{id:"editor.action.inspectTokens",label:hp.inspectTokensAction,alias:"Developer: Inspect Tokens",precondition:void 0})||this}return BX(t,e),t.prototype.run=function(e,t){var n=jX.get(t);n&&n.launch()},t}(kf);var KX=function(e){function t(t,n){var i,o=e.call(this)||this;return o.allowEditorOverflow=!0,o._editor=t,o._modeService=n,o._model=o._editor.getModel(),o._domNode=document.createElement("div"),o._domNode.className="tokens-inspect-widget",o._tokenizationSupport=(i=o._model.getLanguageIdentifier(),Yu.get(i.language)||{getInitialState:function(){return Xu},tokenize:function(e,t,n){return Qu(i.language,0,t,n)},tokenize2:function(e,t,n){return Ju(i.id,0,t,n)}}),o._compute(o._editor.getPosition()),o._register(o._editor.onDidChangeCursorPosition((function(e){return o._compute(o._editor.getPosition())}))),o._editor.addContentWidget(o),o}return BX(t,e),t.prototype.dispose=function(){this._editor.removeContentWidget(this),e.prototype.dispose.call(this)},t.prototype.getId=function(){return t._ID},t.prototype._compute=function(e){for(var t=this._getTokensAtLine(e.lineNumber),n=0,i=t.tokens1.length-1;i>=0;i--){var o=t.tokens1[i];if(e.column-1>=o.offset){n=i;break}}var r=0;for(i=t.tokens2.length>>>1;i>=0;i--)if(e.column-1>=t.tokens2[i<<1]){r=i;break}var s="",a=this._model.getLineContent(e.lineNumber),u="";if(n<t.tokens1.length){var l=t.tokens1[n].offset,c=n+1<t.tokens1.length?t.tokens1[n+1].offset:a.length;u=a.substring(l,c)}s+='<h2 class="tm-token">'+function(e){for(var t="",n=0,i=e.length;n<i;n++){var o=e.charCodeAt(n);switch(o){case 9:t+="→";break;case 32:t+="·";break;case 60:t+="<";break;case 62:t+=">";break;case 38:t+="&";break;default:t+=String.fromCharCode(o)}}return t}(u)+'<span class="tm-token-length">('+u.length+" "+(1===u.length?"char":"chars")+")</span></h2>",s+='<hr class="tokens-inspect-separator" style="clear:both"/>';var d=this._decodeMetadata(t.tokens2[1+(r<<1)]);s+='<table class="tm-metadata-table"><tbody>',s+='<tr><td class="tm-metadata-key">language</td><td class="tm-metadata-value">'+fr(d.languageIdentifier.language)+"</td>",s+='<tr><td class="tm-metadata-key">token type</td><td class="tm-metadata-value">'+this._tokenTypeToString(d.tokenType)+"</td>",s+='<tr><td class="tm-metadata-key">font style</td><td class="tm-metadata-value">'+this._fontStyleToString(d.fontStyle)+"</td>",s+='<tr><td class="tm-metadata-key">foreground</td><td class="tm-metadata-value">'+mv.Format.CSS.formatHex(d.foreground)+"</td>",s+='<tr><td class="tm-metadata-key">background</td><td class="tm-metadata-value">'+mv.Format.CSS.formatHex(d.background)+"</td>",s+="</tbody></table>",s+='<hr class="tokens-inspect-separator"/>',n<t.tokens1.length&&(s+='<span class="tm-token-type">'+fr(t.tokens1[n].type)+"</span>"),this._domNode.innerHTML=s,this._editor.layoutContentWidget(this)},t.prototype._decodeMetadata=function(e){var t=Yu.getColorMap(),n=wu.getLanguageId(e),i=wu.getTokenType(e),o=wu.getFontStyle(e),r=wu.getForeground(e),s=wu.getBackground(e);return{languageIdentifier:this._modeService.getLanguageIdentifier(n),tokenType:i,fontStyle:o,foreground:t[r],background:t[s]}},t.prototype._tokenTypeToString=function(e){switch(e){case 0:return"Other";case 1:return"Comment";case 2:return"String";case 4:return"RegEx"}return"??"},t.prototype._fontStyleToString=function(e){var t="";return 1&e&&(t+="italic "),2&e&&(t+="bold "),4&e&&(t+="underline "),0===t.length&&(t="---"),t},t.prototype._getTokensAtLine=function(e){var t=this._getStateBeforeLine(e),n=this._tokenizationSupport.tokenize(this._model.getLineContent(e),t,0),i=this._tokenizationSupport.tokenize2(this._model.getLineContent(e),t,0);return{startState:t,tokens1:n.tokens,tokens2:i.tokens,endState:n.endState}},t.prototype._getStateBeforeLine=function(e){for(var t=this._tokenizationSupport.getInitialState(),n=1;n<e;n++){t=this._tokenizationSupport.tokenize(this._model.getLineContent(n),t,0).endState}return t},t.prototype.getDomNode=function(){return this._domNode},t.prototype.getPosition=function(){return{position:this._editor.getPosition(),preference:[2,1]}},t._ID="editor.contrib.inspectTokensWidget",t}(He);Pf(jX.ID,jX),Tf(UX),yg((function(e,t){var n=e.getColor(Ay);if(n){var i="hc"===e.type?2:1;t.addRule(".monaco-editor .tokens-inspect-widget { border: "+i+"px solid "+n+"; }"),t.addRule(".monaco-editor .tokens-inspect-widget .tokens-inspect-separator { background-color: "+n+"; }")}var o=e.getColor(Py);o&&t.addRule(".monaco-editor .tokens-inspect-widget { background-color: "+o+"; }");var r=e.getColor(Ry);r&&t.addRule(".monaco-editor .tokens-inspect-widget { color: "+r+"; }")}));n(431),n(432);var qX=er,GX=function(){function e(e,t,n){this.os=t,this.options=n,this.domNode=Xo(e,qX(".monaco-keybinding")),this.didEverRender=!1,e.appendChild(this.domNode)}return e.prototype.set=function(t,n){this.didEverRender&&this.keybinding===t&&e.areSame(this.matches,n)||(this.keybinding=t,this.matches=n,this.render())},e.prototype.render=function(){if(Yi(this.domNode),this.keybinding){var e=this.keybinding.getParts(),t=e[0],n=e[1];t&&this.renderPart(this.domNode,t,this.matches?this.matches.firstPart:null),n&&(Xo(this.domNode,qX("span.monaco-keybinding-key-chord-separator",void 0," ")),this.renderPart(this.domNode,n,this.matches?this.matches.chordPart:null)),this.domNode.title=this.keybinding.getAriaLabel()||""}else this.options&&this.options.renderUnboundKeybindings&&this.renderUnbound(this.domNode);this.didEverRender=!0},e.prototype.renderPart=function(e,t,n){var i=Qh.modifierLabels[this.os];t.ctrlKey&&this.renderKey(e,i.ctrlKey,Boolean(null==n?void 0:n.ctrlKey),i.separator),t.shiftKey&&this.renderKey(e,i.shiftKey,Boolean(null==n?void 0:n.shiftKey),i.separator),t.altKey&&this.renderKey(e,i.altKey,Boolean(null==n?void 0:n.altKey),i.separator),t.metaKey&&this.renderKey(e,i.metaKey,Boolean(null==n?void 0:n.metaKey),i.separator);var o=t.keyLabel;o&&this.renderKey(e,o,Boolean(null==n?void 0:n.keyCode),"")},e.prototype.renderKey=function(e,t,n,i){Xo(e,qX("span.monaco-keybinding-key"+(n?".highlight":""),void 0,t)),i&&Xo(e,qX("span.monaco-keybinding-key-separator",void 0,i))},e.prototype.renderUnbound=function(e){Xo(e,qX("span.monaco-keybinding-key",void 0,r("unbound","Unbound")))},e.areSame=function(e,t){return e===t||!e&&!t||!!e&&!!t&&Ea(e.firstPart,t.firstPart)&&Ea(e.chordPart,t.chordPart)},e}(),ZX=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),YX=0,XX=function(){function e(e){void 0===e&&(e=[]),this.id=(YX++).toString(),this.labelHighlights=e,this.descriptionHighlights=[]}return e.prototype.getId=function(){return this.id},e.prototype.getLabel=function(){},e.prototype.getLabelOptions=function(){},e.prototype.getAriaLabel=function(){return Ei([this.getLabel(),this.getDescription(),this.getDetail()]).join(", ")},e.prototype.getDetail=function(){},e.prototype.getIcon=function(){},e.prototype.getDescription=function(){},e.prototype.getTooltip=function(){},e.prototype.getDescriptionTooltip=function(){},e.prototype.getKeybinding=function(){},e.prototype.isHidden=function(){return!!this.hidden},e.prototype.setHighlights=function(e,t,n){this.labelHighlights=e,this.descriptionHighlights=t,this.detailHighlights=n},e.prototype.getHighlights=function(){return[this.labelHighlights,this.descriptionHighlights,this.detailHighlights]},e.prototype.run=function(e,t){return!1},e}(),$X=function(e){function t(t,n,i){var o=e.call(this)||this;return o.entry=t,o.groupLabel=n,o.withBorder=i,o}return ZX(t,e),t.prototype.getGroupLabel=function(){return this.groupLabel},t.prototype.setGroupLabel=function(e){this.groupLabel=e},t.prototype.showBorder=function(){return!!this.withBorder},t.prototype.setShowBorder=function(e){this.withBorder=e},t.prototype.getLabel=function(){return this.entry?this.entry.getLabel():e.prototype.getLabel.call(this)},t.prototype.getLabelOptions=function(){return this.entry?this.entry.getLabelOptions():e.prototype.getLabelOptions.call(this)},t.prototype.getAriaLabel=function(){return this.entry?this.entry.getAriaLabel():e.prototype.getAriaLabel.call(this)},t.prototype.getDetail=function(){return this.entry?this.entry.getDetail():e.prototype.getDetail.call(this)},t.prototype.getIcon=function(){return this.entry?this.entry.getIcon():e.prototype.getIcon.call(this)},t.prototype.getDescription=function(){return this.entry?this.entry.getDescription():e.prototype.getDescription.call(this)},t.prototype.getHighlights=function(){return this.entry?this.entry.getHighlights():e.prototype.getHighlights.call(this)},t.prototype.isHidden=function(){return this.entry?this.entry.isHidden():e.prototype.isHidden.call(this)},t.prototype.setHighlights=function(t,n,i){this.entry?this.entry.setHighlights(t,n,i):e.prototype.setHighlights.call(this,t,n,i)},t.prototype.run=function(t,n){return this.entry?this.entry.run(t,n):e.prototype.run.call(this,t,n)},t}(XX),QX=function(){function e(){}return e.prototype.hasActions=function(e,t){return!1},e.prototype.getActions=function(e,t){return null},e}(),JX=function(){function e(e,t){void 0===e&&(e=new QX),this.actionProvider=e,this.actionRunner=t}return e.prototype.getHeight=function(e){return e.getDetail()?44:22},e.prototype.getTemplateId=function(e){return e instanceof $X?"quickOpenEntryGroup":"quickOpenEntry"},e.prototype.renderTemplate=function(e,t,n){var i=document.createElement("div");no(i,"sub-content"),t.appendChild(i);var o=er(".quick-open-row"),r=er(".quick-open-row"),s=er(".quick-open-entry",void 0,o,r);i.appendChild(s);var a=document.createElement("span");o.appendChild(a);var u=new AH(o,{supportHighlights:!0,supportDescriptionHighlights:!0,supportCodicons:!0}),l=document.createElement("span");o.appendChild(l),no(l,"quick-open-entry-keybinding");var c=new GX(l,x),d=document.createElement("div");r.appendChild(d),no(d,"quick-open-entry-meta");var h,p=new TH(d,!0);"quickOpenEntryGroup"===e&&(h=document.createElement("div"),no(h,"results-group"),t.appendChild(h)),no(t,"actions");var f=document.createElement("div");return no(f,"primary-action-bar"),t.appendChild(f),{container:t,entry:s,icon:a,label:u,detail:p,keybinding:c,group:h,actionBar:new vD(f,{actionRunner:this.actionRunner})}},e.prototype.renderElement=function(e,t,n,i){this.actionProvider.hasActions(null,e)?no(n.container,"has-actions"):oo(n.container,"has-actions"),n.actionBar.context=e;var o=this.actionProvider.getActions(null,e);if(n.actionBar.isEmpty()&&o&&o.length>0?n.actionBar.push(o,{icon:!0,label:!1}):n.actionBar.isEmpty()||o&&0!==o.length||n.actionBar.clear(),e instanceof $X&&e.getGroupLabel()?no(n.container,"has-group-label"):oo(n.container,"has-group-label"),e instanceof $X){var r=e,s=n;r.showBorder()?(no(s.container,"results-group-separator"),i.pickerGroupBorder&&(s.container.style.borderTopColor=i.pickerGroupBorder.toString())):(oo(s.container,"results-group-separator"),s.container.style.borderTopColor="");var a=r.getGroupLabel()||"";s.group&&(s.group.textContent=a,i.pickerGroupForeground&&(s.group.style.color=i.pickerGroupForeground.toString()))}if(e instanceof XX){var u=e.getHighlights(),l=u[0],c=u[1],d=u[2],h=e.getIcon()?"quick-open-entry-icon "+e.getIcon():"";n.icon.className=h;var p=e.getLabelOptions()||Object.create(null);p.matches=l||[],p.title=e.getTooltip(),p.descriptionTitle=e.getDescriptionTooltip()||e.getDescription(),p.descriptionMatches=c||[],n.label.setLabel(e.getLabel()||"",e.getDescription(),p),n.detail.set(e.getDetail(),d),n.keybinding.set(e.getKeybinding())}},e.prototype.disposeTemplate=function(e,t){t.actionBar.dispose(),t.actionBar=null,t.container=null,t.entry=null,t.keybinding=null,t.detail=null,t.group=null,t.icon=null,t.label.dispose(),t.label=null},e}(),e$=function(){function e(e,t){void 0===e&&(e=[]),void 0===t&&(t=new QX),this._entries=e,this._dataSource=this,this._renderer=new JX(t),this._filter=this,this._runner=this,this._accessibilityProvider=this}return Object.defineProperty(e.prototype,"entries",{get:function(){return this._entries},set:function(e){this._entries=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"dataSource",{get:function(){return this._dataSource},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"renderer",{get:function(){return this._renderer},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"filter",{get:function(){return this._filter},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"runner",{get:function(){return this._runner},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"accessibilityProvider",{get:function(){return this._accessibilityProvider},enumerable:!0,configurable:!0}),e.prototype.getId=function(e){return e.getId()},e.prototype.getLabel=function(e){return $s(e.getLabel())},e.prototype.getAriaLabel=function(e){return e.getAriaLabel()?r("quickOpenAriaLabelEntry","{0}, picker",e.getAriaLabel()):r("quickOpenAriaLabel","picker")},e.prototype.isVisible=function(e){return!e.isHidden()},e.prototype.run=function(e,t,n){return e.run(t,n)},e}(),t$=(n(433),n(434),function(){function e(e){this.modelProvider=Ks(e.getModel)?e:{getModel:function(){return e}}}return e.prototype.getId=function(e,t){if(!t)return null;var n=this.modelProvider.getModel();return n===t?"__root__":n.dataSource.getId(t)},e.prototype.hasChildren=function(e,t){var n=this.modelProvider.getModel();return!!(n&&n===t&&n.entries.length>0)},e.prototype.getChildren=function(e,t){var n=this.modelProvider.getModel();return Promise.resolve(n===t?n.entries:[])},e.prototype.getParent=function(e,t){return Promise.resolve(null)},e}()),n$=function(){function e(e){this.modelProvider=e}return e.prototype.getAriaLabel=function(e,t){var n=this.modelProvider.getModel();return n.accessibilityProvider?n.accessibilityProvider.getAriaLabel(t):null},e.prototype.getPosInSet=function(e,t){var n=this.modelProvider.getModel(),i=0;if(n.filter)for(var o=0,r=n.entries;o<r.length;o++){var s=r[o];if(n.filter.isVisible(s)&&i++,s===t)break}else i=n.entries.indexOf(t)+1;return String(i)},e.prototype.getSetSize=function(){var e=this.modelProvider.getModel(),t=0;if(e.filter)for(var n=0,i=e.entries;n<i.length;n++){var o=i[n];e.filter.isVisible(o)&&t++}else t=e.entries.length;return String(t)},e}(),i$=function(){function e(e){this.modelProvider=e}return e.prototype.isVisible=function(e,t){var n=this.modelProvider.getModel();return!n.filter||n.filter.isVisible(t)},e}(),o$=function(){function e(e,t){this.modelProvider=e,this.styles=t}return e.prototype.updateStyles=function(e){this.styles=e},e.prototype.getHeight=function(e,t){return this.modelProvider.getModel().renderer.getHeight(t)},e.prototype.getTemplateId=function(e,t){return this.modelProvider.getModel().renderer.getTemplateId(t)},e.prototype.renderTemplate=function(e,t,n){return this.modelProvider.getModel().renderer.renderTemplate(t,n,this.styles)},e.prototype.renderElement=function(e,t,n,i){this.modelProvider.getModel().renderer.renderElement(t,n,i,this.styles)},e.prototype.disposeTemplate=function(e,t,n){this.modelProvider.getModel().renderer.disposeTemplate(t,n)},e}(),r$=(n(435),function(){function e(){this._arr=[]}return e.prototype.set=function(e,t){this._arr.push({keybinding:mt(e,x),callback:t})},e.prototype.dispatch=function(e){for(var t=this._arr.length-1;t>=0;t--){var n=this._arr[t];if(e.toChord().equals(n.keybinding))return n.callback}return null},e}()),s$=function(){function e(e){var t=this;void 0===e&&(e={clickBehavior:0,keyboardSupport:!0,openMode:0}),this.options=e,this.downKeyBindingDispatcher=new r$,this.upKeyBindingDispatcher=new r$,("boolean"!=typeof e.keyboardSupport||e.keyboardSupport)&&(this.downKeyBindingDispatcher.set(16,(function(e,n){return t.onUp(e,n)})),this.downKeyBindingDispatcher.set(18,(function(e,n){return t.onDown(e,n)})),this.downKeyBindingDispatcher.set(15,(function(e,n){return t.onLeft(e,n)})),this.downKeyBindingDispatcher.set(17,(function(e,n){return t.onRight(e,n)})),_&&(this.downKeyBindingDispatcher.set(2064,(function(e,n){return t.onLeft(e,n)})),this.downKeyBindingDispatcher.set(300,(function(e,n){return t.onDown(e,n)})),this.downKeyBindingDispatcher.set(302,(function(e,n){return t.onUp(e,n)}))),this.downKeyBindingDispatcher.set(11,(function(e,n){return t.onPageUp(e,n)})),this.downKeyBindingDispatcher.set(12,(function(e,n){return t.onPageDown(e,n)})),this.downKeyBindingDispatcher.set(14,(function(e,n){return t.onHome(e,n)})),this.downKeyBindingDispatcher.set(13,(function(e,n){return t.onEnd(e,n)})),this.downKeyBindingDispatcher.set(10,(function(e,n){return t.onSpace(e,n)})),this.downKeyBindingDispatcher.set(9,(function(e,n){return t.onEscape(e,n)})),this.upKeyBindingDispatcher.set(3,this.onEnter.bind(this)),this.upKeyBindingDispatcher.set(2051,this.onEnter.bind(this)))}return e.prototype.onMouseDown=function(e,t,n,i){if(void 0===i&&(i="mouse"),0===this.options.clickBehavior&&(n.leftButton||n.middleButton)){if(n.target){if(n.target.tagName&&"input"===n.target.tagName.toLowerCase())return!1;if(Wo(n.target,"scrollbar","monaco-tree"))return!1;if(Wo(n.target,"monaco-action-bar","row"))return!1}return this.onLeftClick(e,t,n,i)}return!1},e.prototype.onClick=function(e,t,n){return _&&n.ctrlKey?(n.preventDefault(),n.stopPropagation(),!1):(!n.target||!n.target.tagName||"input"!==n.target.tagName.toLowerCase())&&((0!==this.options.clickBehavior||!n.leftButton&&!n.middleButton)&&this.onLeftClick(e,t,n))},e.prototype.onLeftClick=function(e,t,n,i){void 0===i&&(i="mouse");var o=n,r={origin:i,originalEvent:n,didClickOnTwistie:this.isClickOnTwistie(o)};e.getInput()===t?(e.clearFocus(r),e.clearSelection(r)):(n&&o.browserEvent&&"mousedown"===o.browserEvent.type&&1===o.browserEvent.detail||n.preventDefault(),n.stopPropagation(),e.domFocus(),e.setSelection([t],r),e.setFocus(t,r),this.shouldToggleExpansion(t,o,i)&&(e.isExpanded(t)?e.collapse(t).then(void 0,De):e.expand(t).then(void 0,De)));return!0},e.prototype.shouldToggleExpansion=function(e,t,n){var i="mouse"===n&&2===t.detail;return this.openOnSingleClick||i||this.isClickOnTwistie(t)},Object.defineProperty(e.prototype,"openOnSingleClick",{get:function(){return 0===this.options.openMode},enumerable:!0,configurable:!0}),e.prototype.isClickOnTwistie=function(e){var t=e.target;if(!to(t,"content"))return!1;var n=window.getComputedStyle(t,":before");if("none"===n.backgroundImage||"none"===n.display)return!1;var i=parseInt(n.width)+parseInt(n.paddingRight);return e.browserEvent.offsetX<=i},e.prototype.onContextMenu=function(e,t,n){return n.target&&n.target.tagName&&"input"===n.target.tagName.toLowerCase()||n&&(n.preventDefault(),n.stopPropagation()),!1},e.prototype.onTap=function(e,t,n){var i=n.initialTarget;return(!i||!i.tagName||"input"!==i.tagName.toLowerCase())&&this.onLeftClick(e,t,n,"touch")},e.prototype.onKeyDown=function(e,t){return this.onKey(this.downKeyBindingDispatcher,e,t)},e.prototype.onKeyUp=function(e,t){return this.onKey(this.upKeyBindingDispatcher,e,t)},e.prototype.onKey=function(e,t,n){var i=e.dispatch(n.toKeybinding());return!(!i||!i(t,n))&&(n.preventDefault(),n.stopPropagation(),!0)},e.prototype.onUp=function(e,t){var n={origin:"keyboard",originalEvent:t};return e.getHighlight()?e.clearHighlight(n):(e.focusPrevious(1,n),e.reveal(e.getFocus()).then(void 0,De)),!0},e.prototype.onPageUp=function(e,t){var n={origin:"keyboard",originalEvent:t};return e.getHighlight()?e.clearHighlight(n):(e.focusPreviousPage(n),e.reveal(e.getFocus()).then(void 0,De)),!0},e.prototype.onDown=function(e,t){var n={origin:"keyboard",originalEvent:t};return e.getHighlight()?e.clearHighlight(n):(e.focusNext(1,n),e.reveal(e.getFocus()).then(void 0,De)),!0},e.prototype.onPageDown=function(e,t){var n={origin:"keyboard",originalEvent:t};return e.getHighlight()?e.clearHighlight(n):(e.focusNextPage(n),e.reveal(e.getFocus()).then(void 0,De)),!0},e.prototype.onHome=function(e,t){var n={origin:"keyboard",originalEvent:t};return e.getHighlight()?e.clearHighlight(n):(e.focusFirst(n),e.reveal(e.getFocus()).then(void 0,De)),!0},e.prototype.onEnd=function(e,t){var n={origin:"keyboard",originalEvent:t};return e.getHighlight()?e.clearHighlight(n):(e.focusLast(n),e.reveal(e.getFocus()).then(void 0,De)),!0},e.prototype.onLeft=function(e,t){var n={origin:"keyboard",originalEvent:t};if(e.getHighlight())e.clearHighlight(n);else{var i=e.getFocus();e.collapse(i).then((function(t){if(i&&!t)return e.focusParent(n),e.reveal(e.getFocus())})).then(void 0,De)}return!0},e.prototype.onRight=function(e,t){var n={origin:"keyboard",originalEvent:t};if(e.getHighlight())e.clearHighlight(n);else{var i=e.getFocus();e.expand(i).then((function(t){if(i&&!t)return e.focusFirstChild(n),e.reveal(e.getFocus())})).then(void 0,De)}return!0},e.prototype.onEnter=function(e,t){var n={origin:"keyboard",originalEvent:t};if(e.getHighlight())return!1;var i=e.getFocus();return i&&e.setSelection([i],n),!0},e.prototype.onSpace=function(e,t){if(e.getHighlight())return!1;var n=e.getFocus();return n&&e.toggleExpansion(n),!0},e.prototype.onEscape=function(e,t){var n={origin:"keyboard",originalEvent:t};return e.getHighlight()?(e.clearHighlight(n),!0):e.getSelection().length?(e.clearSelection(n),!0):!!e.getFocus()&&(e.clearFocus(n),!0)},e}(),a$=function(){function e(){}return e.prototype.getDragURI=function(e,t){return null},e.prototype.onDragStart=function(e,t,n){},e.prototype.onDragOver=function(e,t,n,i){return null},e.prototype.drop=function(e,t,n,i){},e}(),u$=function(){function e(){}return e.prototype.isVisible=function(e,t){return!0},e}(),l$=function(){function e(){}return e.prototype.getAriaLabel=function(e,t){return null},e}(),c$=function(){function e(e,t){this.styleElement=e,this.selectorSuffix=t}return e.prototype.style=function(e){var t=this.selectorSuffix?"."+this.selectorSuffix:"",n=[];e.listFocusBackground&&n.push(".monaco-tree"+t+".focused .monaco-tree-rows > .monaco-tree-row.focused:not(.highlighted) { background-color: "+e.listFocusBackground+"; }"),e.listFocusForeground&&n.push(".monaco-tree"+t+".focused .monaco-tree-rows > .monaco-tree-row.focused:not(.highlighted) { color: "+e.listFocusForeground+"; }"),e.listActiveSelectionBackground&&n.push(".monaco-tree"+t+".focused .monaco-tree-rows > .monaco-tree-row.selected:not(.highlighted) { background-color: "+e.listActiveSelectionBackground+"; }"),e.listActiveSelectionForeground&&n.push(".monaco-tree"+t+".focused .monaco-tree-rows > .monaco-tree-row.selected:not(.highlighted) { color: "+e.listActiveSelectionForeground+"; }"),e.listFocusAndSelectionBackground&&n.push("\n\t\t\t\t.monaco-tree-drag-image,\n\t\t\t\t.monaco-tree"+t+".focused .monaco-tree-rows > .monaco-tree-row.focused.selected:not(.highlighted) { background-color: "+e.listFocusAndSelectionBackground+"; }\n\t\t\t"),e.listFocusAndSelectionForeground&&n.push("\n\t\t\t\t.monaco-tree-drag-image,\n\t\t\t\t.monaco-tree"+t+".focused .monaco-tree-rows > .monaco-tree-row.focused.selected:not(.highlighted) { color: "+e.listFocusAndSelectionForeground+"; }\n\t\t\t"),e.listInactiveSelectionBackground&&n.push(".monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row.selected:not(.highlighted) { background-color: "+e.listInactiveSelectionBackground+"; }"),e.listInactiveSelectionForeground&&n.push(".monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row.selected:not(.highlighted) { color: "+e.listInactiveSelectionForeground+"; }"),e.listHoverBackground&&n.push(".monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row:hover:not(.highlighted):not(.selected):not(.focused) { background-color: "+e.listHoverBackground+"; }"),e.listHoverForeground&&n.push(".monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row:hover:not(.highlighted):not(.selected):not(.focused) { color: "+e.listHoverForeground+"; }"),e.listDropBackground&&n.push("\n\t\t\t\t.monaco-tree"+t+" .monaco-tree-wrapper.drop-target,\n\t\t\t\t.monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row.drop-target { background-color: "+e.listDropBackground+" !important; color: inherit !important; }\n\t\t\t"),e.listFocusOutline&&n.push("\n\t\t\t\t.monaco-tree-drag-image\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{ border: 1px solid "+e.listFocusOutline+"; background: #000; }\n\t\t\t\t.monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row \t\t\t\t\t\t\t\t\t\t\t\t\t\t{ border: 1px solid transparent; }\n\t\t\t\t.monaco-tree"+t+".focused .monaco-tree-rows > .monaco-tree-row.focused:not(.highlighted) \t\t\t\t\t\t{ border: 1px dotted "+e.listFocusOutline+"; }\n\t\t\t\t.monaco-tree"+t+".focused .monaco-tree-rows > .monaco-tree-row.selected:not(.highlighted) \t\t\t\t\t\t{ border: 1px solid "+e.listFocusOutline+"; }\n\t\t\t\t.monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row.selected:not(.highlighted) \t\t\t\t\t\t\t{ border: 1px solid "+e.listFocusOutline+"; }\n\t\t\t\t.monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row:hover:not(.highlighted):not(.selected):not(.focused) \t{ border: 1px dashed "+e.listFocusOutline+"; }\n\t\t\t\t.monaco-tree"+t+" .monaco-tree-wrapper.drop-target,\n\t\t\t\t.monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row.drop-target\t\t\t\t\t\t\t\t\t\t\t\t{ border: 1px dashed "+e.listFocusOutline+"; }\n\t\t\t");var i=n.join("\n");i!==this.styleElement.innerHTML&&(this.styleElement.innerHTML=i)},e}(),d$=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),h$=function(){function e(e){this._onDispose=new nt,this.onDispose=this._onDispose.event,this._item=e}return Object.defineProperty(e.prototype,"item",{get:function(){return this._item},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){this._onDispose&&(this._onDispose.fire(),this._onDispose.dispose(),this._onDispose=void 0)},e}(),p$=function(){function e(){this.locks=Object.create({})}return e.prototype.isLocked=function(e){return!!this.locks[e.id]},e.prototype.run=function(e,t){var n=this,i=this.getLock(e);return new Promise(i?function(o,r){Ge.once(i.onDispose)((function(){return n.run(e,t).then(o,r)}))}:function(i,o){if(e.isDisposed())return o(new Error("Item is disposed."));var r=n.locks[e.id]=new h$(e);return t().then((function(t){return delete n.locks[e.id],r.dispose(),t})).then(i,o)})},e.prototype.getLock=function(e){var t;for(t in this.locks){var n=this.locks[t];if(e.intersects(n.item))return n}return null},e}(),f$=function(){function e(){this._isDisposed=!1,this._onDidRevealItem=new ot,this.onDidRevealItem=this._onDidRevealItem.event,this._onExpandItem=new ot,this.onExpandItem=this._onExpandItem.event,this._onDidExpandItem=new ot,this.onDidExpandItem=this._onDidExpandItem.event,this._onCollapseItem=new ot,this.onCollapseItem=this._onCollapseItem.event,this._onDidCollapseItem=new ot,this.onDidCollapseItem=this._onDidCollapseItem.event,this._onDidAddTraitItem=new ot,this.onDidAddTraitItem=this._onDidAddTraitItem.event,this._onDidRemoveTraitItem=new ot,this.onDidRemoveTraitItem=this._onDidRemoveTraitItem.event,this._onDidRefreshItem=new ot,this.onDidRefreshItem=this._onDidRefreshItem.event,this._onRefreshItemChildren=new ot,this.onRefreshItemChildren=this._onRefreshItemChildren.event,this._onDidRefreshItemChildren=new ot,this.onDidRefreshItemChildren=this._onDidRefreshItemChildren.event,this._onDidDisposeItem=new ot,this.onDidDisposeItem=this._onDidDisposeItem.event,this.items={}}return e.prototype.register=function(e){La(!this.isRegistered(e.id),"item already registered: "+e.id);var t=Fe(this._onDidRevealItem.add(e.onDidReveal),this._onExpandItem.add(e.onExpand),this._onDidExpandItem.add(e.onDidExpand),this._onCollapseItem.add(e.onCollapse),this._onDidCollapseItem.add(e.onDidCollapse),this._onDidAddTraitItem.add(e.onDidAddTrait),this._onDidRemoveTraitItem.add(e.onDidRemoveTrait),this._onDidRefreshItem.add(e.onDidRefresh),this._onRefreshItemChildren.add(e.onRefreshChildren),this._onDidRefreshItemChildren.add(e.onDidRefreshChildren),this._onDidDisposeItem.add(e.onDidDispose));this.items[e.id]={item:e,disposable:t}},e.prototype.deregister=function(e){La(this.isRegistered(e.id),"item not registered: "+e.id),this.items[e.id].disposable.dispose(),delete this.items[e.id]},e.prototype.isRegistered=function(e){return this.items.hasOwnProperty(e)},e.prototype.getItem=function(e){var t=this.items[e];return t?t.item:null},e.prototype.dispose=function(){this.items={},this._onDidRevealItem.dispose(),this._onExpandItem.dispose(),this._onDidExpandItem.dispose(),this._onCollapseItem.dispose(),this._onDidCollapseItem.dispose(),this._onDidAddTraitItem.dispose(),this._onDidRemoveTraitItem.dispose(),this._onDidRefreshItem.dispose(),this._onRefreshItemChildren.dispose(),this._onDidRefreshItemChildren.dispose(),this._isDisposed=!0},e.prototype.isDisposed=function(){return this._isDisposed},e}(),g$=function(){function e(e,t,n,i,o){this._onDidCreate=new nt,this._onDidReveal=new nt,this.onDidReveal=this._onDidReveal.event,this._onExpand=new nt,this.onExpand=this._onExpand.event,this._onDidExpand=new nt,this.onDidExpand=this._onDidExpand.event,this._onCollapse=new nt,this.onCollapse=this._onCollapse.event,this._onDidCollapse=new nt,this.onDidCollapse=this._onDidCollapse.event,this._onDidAddTrait=new nt,this.onDidAddTrait=this._onDidAddTrait.event,this._onDidRemoveTrait=new nt,this.onDidRemoveTrait=this._onDidRemoveTrait.event,this._onDidRefresh=new nt,this.onDidRefresh=this._onDidRefresh.event,this._onRefreshChildren=new nt,this.onRefreshChildren=this._onRefreshChildren.event,this._onDidRefreshChildren=new nt,this.onDidRefreshChildren=this._onDidRefreshChildren.event,this._onDidDispose=new nt,this.onDidDispose=this._onDidDispose.event,this.registry=t,this.context=n,this.lock=i,this.element=o,this.id=e,this.registry.register(this),this.doesHaveChildren=this.context.dataSource.hasChildren(this.context.tree,this.element),this.needsChildrenRefresh=!0,this.parent=null,this.previous=null,this.next=null,this.firstChild=null,this.lastChild=null,this.traits={},this.depth=0,this.expanded=!(!this.context.dataSource.shouldAutoexpand||!this.context.dataSource.shouldAutoexpand(this.context.tree,o)),this._onDidCreate.fire(this),this.visible=this._isVisible(),this.height=this._getHeight(),this._isDisposed=!1}return e.prototype.getElement=function(){return this.element},e.prototype.hasChildren=function(){return this.doesHaveChildren},e.prototype.getDepth=function(){return this.depth},e.prototype.isVisible=function(){return this.visible},e.prototype.setVisible=function(e){this.visible=e},e.prototype.isExpanded=function(){return this.expanded},e.prototype._setExpanded=function(e){this.expanded=e},e.prototype.reveal=function(e){void 0===e&&(e=null);var t={item:this,relativeTop:e};this._onDidReveal.fire(t)},e.prototype.expand=function(){var e=this;return this.isExpanded()||!this.doesHaveChildren||this.lock.isLocked(this)?Promise.resolve(!1):this.lock.run(this,(function(){if(e.isExpanded()||!e.doesHaveChildren)return Promise.resolve(!1);var t={item:e};return e._onExpand.fire(t),(e.needsChildrenRefresh?e.refreshChildren(!1,!0,!0):Promise.resolve(null)).then((function(){return e._setExpanded(!0),e._onDidExpand.fire(t),!0}))})).then((function(t){return!e.isDisposed()&&(e.context.options.autoExpandSingleChildren&&t&&null!==e.firstChild&&e.firstChild===e.lastChild&&e.firstChild.isVisible()?e.firstChild.expand().then((function(){return!0})):t)}))},e.prototype.collapse=function(e){var t=this;if(void 0===e&&(e=!1),e){var n=Promise.resolve(null);return this.forEachChild((function(e){n=n.then((function(){return e.collapse(!0)}))})),n.then((function(){return t.collapse(!1)}))}return!this.isExpanded()||this.lock.isLocked(this)?Promise.resolve(!1):this.lock.run(this,(function(){var e={item:t};return t._onCollapse.fire(e),t._setExpanded(!1),t._onDidCollapse.fire(e),Promise.resolve(!0)}))},e.prototype.addTrait=function(e){var t={item:this,trait:e};this.traits[e]=!0,this._onDidAddTrait.fire(t)},e.prototype.removeTrait=function(e){var t={item:this,trait:e};delete this.traits[e],this._onDidRemoveTrait.fire(t)},e.prototype.hasTrait=function(e){return this.traits[e]||!1},e.prototype.getAllTraits=function(){var e,t=[];for(e in this.traits)this.traits.hasOwnProperty(e)&&this.traits[e]&&t.push(e);return t},e.prototype.getHeight=function(){return this.height},e.prototype.refreshChildren=function(t,n,i){var o=this;if(void 0===n&&(n=!1),void 0===i&&(i=!1),!i&&!this.isExpanded()){var r=function(e){e.needsChildrenRefresh=!0,e.forEachChild(r)};return r(this),Promise.resolve(this)}this.needsChildrenRefresh=!1;var s=function(){var i={item:o,isNested:n};return o._onRefreshChildren.fire(i),(o.doesHaveChildren?o.context.dataSource.getChildren(o.context.tree,o.element):Promise.resolve([])).then((function(n){if(o.isDisposed()||o.registry.isDisposed())return Promise.resolve(null);if(!Array.isArray(n))return Promise.reject(new Error("Please return an array of children."));n=n?n.slice(0):[],n=o.sort(n);for(var i={};null!==o.firstChild;)i[o.firstChild.id]=o.firstChild,o.removeChild(o.firstChild);for(var r=0,s=n.length;r<s;r++){var a=n[r],u=o.context.dataSource.getId(o.context.tree,a),l=i[u]||new e(u,o.registry,o.context,o.lock,a);l.element=a,t&&(l.needsChildrenRefresh=t),delete i[u],o.addChild(l)}for(var c in i)i.hasOwnProperty(c)&&i[c].dispose();return t?Promise.all(o.mapEachChild((function(e){return e.doRefresh(t,!0)}))):Promise.all(o.mapEachChild((function(e){return e.isExpanded()&&e.needsChildrenRefresh?e.doRefresh(t,!0):(e.updateVisibility(),Promise.resolve(null))})))})).then(void 0,De).then((function(){return o._onDidRefreshChildren.fire(i)}))};return n?s():this.lock.run(this,s)},e.prototype.doRefresh=function(e,t){return void 0===t&&(t=!1),this.doesHaveChildren=this.context.dataSource.hasChildren(this.context.tree,this.element),this.height=this._getHeight(),this.updateVisibility(),this._onDidRefresh.fire(this),this.refreshChildren(e,t)},e.prototype.updateVisibility=function(){this.setVisible(this._isVisible())},e.prototype.refresh=function(e){return this.doRefresh(e)},e.prototype.getNavigator=function(){return new v$(this)},e.prototype.intersects=function(e){return this.isAncestorOf(e)||e.isAncestorOf(this)},e.prototype.isAncestorOf=function(e){for(var t=e;t;){if(t.id===this.id)return!0;t=t.parent}return!1},e.prototype.addChild=function(e,t){void 0===t&&(t=this.lastChild);var n=null===this.firstChild,i=null===t,o=t===this.lastChild;if(n)this.firstChild=this.lastChild=e,e.next=e.previous=null;else if(i){if(!this.firstChild)throw new Error("Invalid tree state");this.firstChild.previous=e,e.next=this.firstChild,e.previous=null,this.firstChild=e}else if(o){if(!this.lastChild)throw new Error("Invalid tree state");this.lastChild.next=e,e.next=null,e.previous=this.lastChild,this.lastChild=e}else{if(e.previous=t,!t)throw new Error("Invalid tree state");if(e.next=t.next,!t.next)throw new Error("Invalid tree state");t.next.previous=e,t.next=e}e.parent=this,e.depth=this.depth+1},e.prototype.removeChild=function(e){var t=this.firstChild===e,n=this.lastChild===e;if(t&&n)this.firstChild=this.lastChild=null;else if(t){if(!e.next)throw new Error("Invalid tree state");e.next.previous=null,this.firstChild=e.next}else if(n){if(!e.previous)throw new Error("Invalid tree state");e.previous.next=null,this.lastChild=e.previous}else{if(!e.next)throw new Error("Invalid tree state");if(e.next.previous=e.previous,!e.previous)throw new Error("Invalid tree state");e.previous.next=e.next}e.parent=null,e.depth=NaN},e.prototype.forEachChild=function(e){for(var t,n=this.firstChild;n;)t=n.next,e(n),n=t},e.prototype.mapEachChild=function(e){var t=[];return this.forEachChild((function(n){t.push(e(n))})),t},e.prototype.sort=function(e){var t=this,n=this.context.sorter;return n?e.sort((function(e,i){return n.compare(t.context.tree,e,i)})):e},e.prototype._getHeight=function(){return this.context.renderer?this.context.renderer.getHeight(this.context.tree,this.element):0},e.prototype._isVisible=function(){return!!this.context.filter&&this.context.filter.isVisible(this.context.tree,this.element)},e.prototype.isDisposed=function(){return this._isDisposed},e.prototype.dispose=function(){this.forEachChild((function(e){return e.dispose()})),this.parent=null,this.previous=null,this.next=null,this.firstChild=null,this.lastChild=null,this._onDidDispose.fire(this),this.registry.deregister(this),this._onDidCreate.dispose(),this._onDidReveal.dispose(),this._onExpand.dispose(),this._onDidExpand.dispose(),this._onCollapse.dispose(),this._onDidCollapse.dispose(),this._onDidAddTrait.dispose(),this._onDidRemoveTrait.dispose(),this._onDidRefresh.dispose(),this._onRefreshChildren.dispose(),this._onDidRefreshChildren.dispose(),this._onDidDispose.dispose(),this._isDisposed=!0},e}(),m$=function(e){function t(t,n,i,o,r){return e.call(this,t,n,i,o,r)||this}return d$(t,e),t.prototype.isVisible=function(){return!1},t.prototype.setVisible=function(e){},t.prototype.isExpanded=function(){return!0},t.prototype._setExpanded=function(e){},t.prototype._getHeight=function(){return 0},t.prototype._isVisible=function(){return!1},t}(g$),v$=function(){function e(e,t){void 0===t&&(t=!0),this.item=e,this.start=t?e:null}return e.lastDescendantOf=function(t){return t?t instanceof m$?e.lastDescendantOf(t.lastChild):t.isVisible()?t.isExpanded()&&null!==t.lastChild?e.lastDescendantOf(t.lastChild):t:e.lastDescendantOf(t.previous):null},e.prototype.current=function(){return this.item||null},e.prototype.next=function(){if(this.item)do{if((this.item instanceof m$||this.item.isVisible()&&this.item.isExpanded())&&this.item.firstChild)this.item=this.item.firstChild;else if(this.item===this.start)this.item=null;else{for(;this.item&&this.item!==this.start&&!this.item.next;)this.item=this.item.parent;this.item===this.start&&(this.item=null),this.item=this.item?this.item.next:null}}while(this.item&&!this.item.isVisible());return this.item||null},e.prototype.previous=function(){if(this.item)do{var t=e.lastDescendantOf(this.item.previous);t?this.item=t:this.item.parent&&this.item.parent!==this.start&&this.item.parent.isVisible()?this.item=this.item.parent:this.item=null}while(this.item&&!this.item.isVisible());return this.item||null},e.prototype.parent=function(){if(this.item){var e=this.item.parent;e&&e!==this.start&&e.isVisible()?this.item=e:this.item=null}return this.item||null},e.prototype.first=function(){return this.item=this.start,this.next(),this.item||null},e.prototype.last=function(){return e.lastDescendantOf(this.start)},e}(),_$=function(){function e(e){this.registry=new f$,this.registryDisposable=He.None,this._onSetInput=new nt,this.onSetInput=this._onSetInput.event,this._onDidSetInput=new nt,this.onDidSetInput=this._onDidSetInput.event,this._onRefresh=new nt,this.onRefresh=this._onRefresh.event,this._onDidRefresh=new nt,this.onDidRefresh=this._onDidRefresh.event,this._onDidHighlight=new nt,this.onDidHighlight=this._onDidHighlight.event,this._onDidSelect=new nt,this.onDidSelect=this._onDidSelect.event,this._onDidFocus=new nt,this.onDidFocus=this._onDidFocus.event,this._onDidRevealItem=new st,this.onDidRevealItem=this._onDidRevealItem.event,this._onExpandItem=new st,this.onExpandItem=this._onExpandItem.event,this._onDidExpandItem=new st,this.onDidExpandItem=this._onDidExpandItem.event,this._onCollapseItem=new st,this.onCollapseItem=this._onCollapseItem.event,this._onDidCollapseItem=new st,this.onDidCollapseItem=this._onDidCollapseItem.event,this._onDidAddTraitItem=new st,this.onDidAddTraitItem=this._onDidAddTraitItem.event,this._onDidRemoveTraitItem=new st,this.onDidRemoveTraitItem=this._onDidRemoveTraitItem.event,this._onDidRefreshItem=new st,this.onDidRefreshItem=this._onDidRefreshItem.event,this._onRefreshItemChildren=new st,this.onRefreshItemChildren=this._onRefreshItemChildren.event,this._onDidRefreshItemChildren=new st,this.onDidRefreshItemChildren=this._onDidRefreshItemChildren.event,this._onDidDisposeItem=new st,this.context=e,this.input=null,this.traitsToItems={}}return e.prototype.setInput=function(e){var t=this,n={item:this.input};this._onSetInput.fire(n),this.setSelection([]),this.setFocus(),this.setHighlight(),this.lock=new p$,this.input&&this.input.dispose(),this.registry&&(this.registry.dispose(),this.registryDisposable.dispose()),this.registry=new f$,this._onDidRevealItem.input=this.registry.onDidRevealItem,this._onExpandItem.input=this.registry.onExpandItem,this._onDidExpandItem.input=this.registry.onDidExpandItem,this._onCollapseItem.input=this.registry.onCollapseItem,this._onDidCollapseItem.input=this.registry.onDidCollapseItem,this._onDidAddTraitItem.input=this.registry.onDidAddTraitItem,this._onDidRemoveTraitItem.input=this.registry.onDidRemoveTraitItem,this._onDidRefreshItem.input=this.registry.onDidRefreshItem,this._onRefreshItemChildren.input=this.registry.onRefreshItemChildren,this._onDidRefreshItemChildren.input=this.registry.onDidRefreshItemChildren,this._onDidDisposeItem.input=this.registry.onDidDisposeItem,this.registryDisposable=this.registry.onDidDisposeItem((function(e){return e.getAllTraits().forEach((function(n){return delete t.traitsToItems[n][e.id]}))}));var i=this.context.dataSource.getId(this.context.tree,e);return this.input=new m$(i,this.registry,this.context,this.lock,e),n={item:this.input},this._onDidSetInput.fire(n),this.refresh(this.input)},e.prototype.getInput=function(){return this.input?this.input.getElement():null},e.prototype.refresh=function(e,t){var n=this;void 0===e&&(e=null),void 0===t&&(t=!0);var i=this.getItem(e);if(!i)return Promise.resolve(null);var o={item:i,recursive:t};return this._onRefresh.fire(o),i.refresh(t).then((function(){n._onDidRefresh.fire(o)}))},e.prototype.expand=function(e){var t=this.getItem(e);return t?t.expand():Promise.resolve(!1)},e.prototype.collapse=function(e,t){void 0===t&&(t=!1);var n=this.getItem(e);return n?n.collapse(t):Promise.resolve(!1)},e.prototype.toggleExpansion=function(e,t){return void 0===t&&(t=!1),this.isExpanded(e)?this.collapse(e,t):this.expand(e)},e.prototype.isExpanded=function(e){var t=this.getItem(e);return!!t&&t.isExpanded()},e.prototype.reveal=function(e,t){var n=this;return void 0===t&&(t=null),this.resolveUnknownParentChain(e).then((function(e){var t=Promise.resolve(null);return e.forEach((function(e){t=t.then((function(){return n.expand(e)}))})),t})).then((function(){var i=n.getItem(e);if(i)return i.reveal(t)}))},e.prototype.resolveUnknownParentChain=function(e){var t=this;return this.context.dataSource.getParent(this.context.tree,e).then((function(e){return e?t.resolveUnknownParentChain(e).then((function(t){return t.push(e),t})):Promise.resolve([])}))},e.prototype.setHighlight=function(e,t){this.setTraits("highlighted",e?[e]:[]);var n={highlight:this.getHighlight(),payload:t};this._onDidHighlight.fire(n)},e.prototype.getHighlight=function(e){void 0===e&&(e=!1);var t=this.getElementsWithTrait("highlighted",e);return 0===t.length?null:t[0]},e.prototype.setSelection=function(e,t){this.setTraits("selected",e);var n={selection:this.getSelection(),payload:t};this._onDidSelect.fire(n)},e.prototype.getSelection=function(e){return void 0===e&&(e=!1),this.getElementsWithTrait("selected",e)},e.prototype.setFocus=function(e,t){this.setTraits("focused",e?[e]:[]);var n={focus:this.getFocus(),payload:t};this._onDidFocus.fire(n)},e.prototype.getFocus=function(e){void 0===e&&(e=!1);var t=this.getElementsWithTrait("focused",e);return 0===t.length?null:t[0]},e.prototype.focusNext=function(e,t){void 0===e&&(e=1);for(var n,i=this.getFocus()||this.input,o=this.getNavigator(i,!1),r=0;r<e&&(n=o.next());r++)i=n;this.setFocus(i,t)},e.prototype.focusPrevious=function(e,t){void 0===e&&(e=1);for(var n,i=this.getFocus()||this.input,o=this.getNavigator(i,!1),r=0;r<e&&(n=o.previous());r++)i=n;this.setFocus(i,t)},e.prototype.focusParent=function(e){var t=this.getFocus()||this.input,n=this.getNavigator(t,!1).parent();n&&this.setFocus(n,e)},e.prototype.focusFirstChild=function(e){var t=this.getItem(this.getFocus()||this.input),n=this.getNavigator(t,!1),i=n.next();n.parent()===t&&this.setFocus(i,e)},e.prototype.focusFirst=function(e,t){this.focusNth(0,e,t)},e.prototype.focusNth=function(e,t,n){for(var i=this.getParent(n),o=this.getNavigator(i),r=o.first(),s=0;s<e;s++)r=o.next();r&&this.setFocus(r,t)},e.prototype.focusLast=function(e,t){var n,i=this.getParent(t);t&&i?n=i.lastChild:n=this.getNavigator(i).last();n&&this.setFocus(n,e)},e.prototype.getParent=function(e){if(e){var t=this.getItem(e);if(t&&t.parent)return t.parent}return this.getItem(this.input)},e.prototype.getNavigator=function(e,t){return void 0===e&&(e=null),void 0===t&&(t=!0),new v$(this.getItem(e),t)},e.prototype.getItem=function(e){return void 0===e&&(e=null),null===e?this.input:e instanceof g$?e:"string"==typeof e?this.registry.getItem(e):this.registry.getItem(this.context.dataSource.getId(this.context.tree,e))},e.prototype.removeTraits=function(e,t){var n,i,o=this.traitsToItems[e]||{};if(0===t.length){for(i in o)o.hasOwnProperty(i)&&(n=o[i]).removeTrait(e);delete this.traitsToItems[e]}else for(var r=0,s=t.length;r<s;r++)(n=this.getItem(t[r]))&&(n.removeTrait(e),delete o[n.id])},e.prototype.setTraits=function(e,t){if(0===t.length)this.removeTraits(e,t);else{for(var n={},i=void 0,o=0,r=t.length;o<r;o++)(i=this.getItem(t[o]))&&(n[i.id]=i);var s=this.traitsToItems[e]||{},a=[],u=void 0;for(u in s)s.hasOwnProperty(u)&&(n.hasOwnProperty(u)?delete n[u]:a.push(s[u]));for(o=0,r=a.length;o<r;o++)(i=a[o]).removeTrait(e),delete s[i.id];for(u in n)n.hasOwnProperty(u)&&((i=n[u]).addTrait(e),s[u]=i);this.traitsToItems[e]=s}},e.prototype.getElementsWithTrait=function(e,t){var n,i=[],o=this.traitsToItems[e]||{};for(n in o)o.hasOwnProperty(n)&&(o[n].isVisible()||t)&&i.push(o[n].getElement());return i},e.prototype.dispose=function(){this.registry.dispose(),this._onSetInput.dispose(),this._onDidSetInput.dispose(),this._onRefresh.dispose(),this._onDidRefresh.dispose(),this._onDidHighlight.dispose(),this._onDidSelect.dispose(),this._onDidFocus.dispose(),this._onDidRevealItem.dispose(),this._onExpandItem.dispose(),this._onDidExpandItem.dispose(),this._onCollapseItem.dispose(),this._onDidCollapseItem.dispose(),this._onDidAddTraitItem.dispose(),this._onDidRemoveTraitItem.dispose(),this._onDidRefreshItem.dispose(),this._onRefreshItemChildren.dispose(),this._onDidRefreshItemChildren.dispose(),this._onDidDisposeItem.dispose()},e}(),y$=function(){function e(e){this.elements=e}return e.prototype.update=function(e){},e.prototype.getData=function(){return this.elements},e}(),b$=function(){function e(e){this.elements=e}return e.prototype.update=function(e){},e.prototype.getData=function(){return this.elements},e}(),w$=function(){function e(){this.types=[],this.files=[]}return e.prototype.update=function(e){e.types&&(this.types=[],Array.prototype.push.apply(this.types,e.types)),e.files&&(this.files=[],Array.prototype.push.apply(this.files,e.files),this.files=this.files.filter((function(e){return e.size||e.type})))},e.prototype.getData=function(){return{types:this.types,files:this.files}},e}(),C$=function(){function e(){this.heightMap=[],this.indexes={}}return e.prototype.getContentHeight=function(){var e=this.heightMap[this.heightMap.length-1];return e?e.top+e.height:0},e.prototype.onInsertItems=function(e,t){void 0===t&&(t=null);var n,i,o,r,s=null,a=0;if(null===t)i=0,r=0;else{if(i=this.indexes[t]+1,!(n=this.heightMap[i-1]))return void console.error("view item doesnt exist");r=n.top+n.height}for(var u=this.heightMap.splice.bind(this.heightMap,i,0),l=[];s=e.next();)(n=this.createViewItem(s)).top=r+a,this.indexes[s.id]=i++,l.push(n),a+=n.height;for(u.apply(this.heightMap,l),o=i;o<this.heightMap.length;o++)(n=this.heightMap[o]).top+=a,this.indexes[n.model.id]=o;for(o=l.length-1;o>=0;o--)this.onInsertItem(l[o]);for(o=this.heightMap.length-1;o>=i;o--)this.onRefreshItem(this.heightMap[o]);return a},e.prototype.onInsertItem=function(e){},e.prototype.onRemoveItems=function(e){for(var t,n=null,i=null,o=0,r=0;n=e.next();){if(o=this.indexes[n],!(t=this.heightMap[o]))return void console.error("view item doesnt exist");r-=t.height,delete this.indexes[n],this.onRemoveItem(t),null===i&&(i=o)}if(0!==r&&null!==i)for(this.heightMap.splice(i,o-i+1),o=i;o<this.heightMap.length;o++)(t=this.heightMap[o]).top+=r,this.indexes[t.model.id]=o,this.onRefreshItem(t)},e.prototype.onRemoveItem=function(e){},e.prototype.onRefreshItemSet=function(e){var t=this,n=e.sort((function(e,n){return t.indexes[e.id]-t.indexes[n.id]}));this.onRefreshItems(new Ze(n))},e.prototype.onRefreshItems=function(e){for(var t,n,i,o=null,r=null,s=0;o=e.next();){for(i=this.indexes[o.id];0!==s&&null!==r&&r<i;r++)(t=this.heightMap[r]).top+=s,this.onRefreshItem(t);t=this.heightMap[i],n=o.getHeight(),t.top+=s,s+=n-t.height,t.height=n,this.onRefreshItem(t,!0),r=i+1}if(0!==s&&null!==r)for(;r<this.heightMap.length;r++)(t=this.heightMap[r]).top+=s,this.onRefreshItem(t)},e.prototype.onRefreshItem=function(e,t){void 0===t&&(t=!1)},e.prototype.indexAt=function(e){for(var t,n,i=0,o=this.heightMap.length;i<o;)if(t=Math.floor((i+o)/2),e<(n=this.heightMap[t]).top)o=t;else{if(!(e>=n.top+n.height))return t;if(i===t)break;i=t}return this.heightMap.length},e.prototype.indexAfter=function(e){return Math.min(this.indexAt(e)+1,this.heightMap.length)},e.prototype.itemAtIndex=function(e){return this.heightMap[e]},e.prototype.itemAfter=function(e){return this.heightMap[this.indexes[e.model.id]+1]||null},e.prototype.createViewItem=function(e){throw new Error("not implemented")},e.prototype.dispose=function(){this.heightMap=[],this.indexes={}},e}(),S$=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),L$=function(){function e(e,t,n){this._posx=e,this._posy=t,this._target=n}return e.prototype.preventDefault=function(){},e.prototype.stopPropagation=function(){},Object.defineProperty(e.prototype,"target",{get:function(){return this._target},enumerable:!0,configurable:!0}),e}(),x$=function(e){function t(t){var n=e.call(this,t.posx,t.posy,t.target)||this;return n.originalEvent=t,n}return S$(t,e),t.prototype.preventDefault=function(){this.originalEvent.preventDefault()},t.prototype.stopPropagation=function(){this.originalEvent.stopPropagation()},t}(L$),D$=function(e){function t(t,n,i){var o=e.call(this,t,n,i.target)||this;return o.originalEvent=i,o}return S$(t,e),t.prototype.preventDefault=function(){this.originalEvent.preventDefault()},t.prototype.stopPropagation=function(){this.originalEvent.stopPropagation()},t}(L$),N$=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();var k$=function(){function e(e){this.context=e,this._cache={"":[]}}return e.prototype.alloc=function(e){var t=this.cache(e).pop();if(!t){var n=document.createElement("div");n.className="content";var i=document.createElement("div");i.appendChild(n);var o=null;try{o=this.context.renderer.renderTemplate(this.context.tree,e,n)}catch(e){console.error("Tree usage error: exception while rendering template"),console.error(e)}t={element:i,templateId:e,templateData:o}}return t},e.prototype.release=function(e,t){!function(e){try{e.parentElement.removeChild(e)}catch(e){}}(t.element),this.cache(e).push(t)},e.prototype.cache=function(e){return this._cache[e]||(this._cache[e]=[])},e.prototype.garbageCollect=function(){var e=this;this._cache&&Object.keys(this._cache).forEach((function(t){e._cache[t].forEach((function(n){e.context.renderer.disposeTemplate(e.context.tree,t,n.templateData),n.element=null,n.templateData=null})),delete e._cache[t]}))},e.prototype.dispose=function(){this.garbageCollect(),this._cache=null},e}(),E$=function(){function e(e,t){var n=this;this.width=0,this.needsRender=!1,this.uri=null,this.unbindDragStart=He.None,this._draggable=!1,this.context=e,this.model=t,this.id=this.model.id,this.row=null,this.top=0,this.height=t.getHeight(),this._styles={},t.getAllTraits().forEach((function(e){return n._styles[e]=!0})),t.isExpanded()&&this.addClass("expanded")}return Object.defineProperty(e.prototype,"expanded",{set:function(e){e?this.addClass("expanded"):this.removeClass("expanded")},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"loading",{set:function(e){e?this.addClass("codicon-loading"):this.removeClass("codicon-loading")},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"draggable",{get:function(){return this._draggable},set:function(e){this._draggable=e,this.render(!0)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"dropTarget",{set:function(e){e?this.addClass("drop-target"):this.removeClass("drop-target")},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"element",{get:function(){return this.row&&this.row.element},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"templateId",{get:function(){return this._templateId||(this._templateId=this.context.renderer.getTemplateId&&this.context.renderer.getTemplateId(this.context.tree,this.model.getElement()))},enumerable:!0,configurable:!0}),e.prototype.addClass=function(e){this._styles[e]=!0,this.render(!0)},e.prototype.removeClass=function(e){delete this._styles[e],this.render(!0)},e.prototype.render=function(e){var t=this;if(void 0===e&&(e=!1),this.model&&this.element){var n=["monaco-tree-row"];n.push.apply(n,Object.keys(this._styles)),this.model.hasChildren()&&n.push("has-children"),this.element.className=n.join(" "),this.element.draggable=this.draggable,this.element.style.height=this.height+"px",this.element.setAttribute("role","treeitem");var i=this.context.accessibilityProvider,o=i.getAriaLabel(this.context.tree,this.model.getElement());if(o&&this.element.setAttribute("aria-label",o),i.getPosInSet&&i.getSetSize&&(this.element.setAttribute("aria-setsize",i.getSetSize()),this.element.setAttribute("aria-posinset",i.getPosInSet(this.context.tree,this.model.getElement()))),this.model.hasTrait("focused")){var r=Gr(this.model.id);this.element.setAttribute("aria-selected","true"),this.element.setAttribute("id",r)}else this.element.setAttribute("aria-selected","false"),this.element.removeAttribute("id");this.model.hasChildren()?this.element.setAttribute("aria-expanded",String(!!this._styles.expanded)):this.element.removeAttribute("aria-expanded"),this.element.setAttribute("aria-level",String(this.model.getDepth())),this.context.options.paddingOnRow?this.element.style.paddingLeft=this.context.options.twistiePixels+(this.model.getDepth()-1)*this.context.options.indentPixels+"px":(this.element.style.paddingLeft=(this.model.getDepth()-1)*this.context.options.indentPixels+"px",this.row.element.firstElementChild.style.paddingLeft=this.context.options.twistiePixels+"px");var s=this.context.dnd.getDragURI(this.context.tree,this.model.getElement());if(s!==this.uri&&(this.unbindDragStart&&this.unbindDragStart.dispose(),s?(this.uri=s,this.draggable=!0,this.unbindDragStart=uo(this.element,"dragstart",(function(e){t.onDragStart(e)}))):this.uri=null),!e&&this.element){var a=0;if(this.context.horizontalScrolling){var u=window.getComputedStyle(this.element);a=parseFloat(u.paddingLeft)}this.context.horizontalScrolling&&(this.element.style.width=zn?"-moz-fit-content":"fit-content");try{this.context.renderer.renderElement(this.context.tree,this.model.getElement(),this.templateId,this.row.templateData)}catch(e){console.error("Tree usage error: exception while rendering element"),console.error(e)}this.context.horizontalScrolling&&(this.width=Po(this.element)+a,this.element.style.width="")}}},e.prototype.insertInDOM=function(e,t){if(this.row||(this.row=this.context.cache.alloc(this.templateId),this.element[O$.BINDING]=this),!this.element.parentElement){if(null===t)e.appendChild(this.element);else try{e.insertBefore(this.element,t)}catch(t){console.warn("Failed to locate previous tree element"),e.appendChild(this.element)}this.render()}},e.prototype.removeFromDOM=function(){this.row&&(this.unbindDragStart.dispose(),this.uri=null,this.element[O$.BINDING]=null,this.context.cache.release(this.templateId,this.row),this.row=null)},e.prototype.dispose=function(){this.row=null},e}(),I$=function(e){function t(t,n,i){var o=e.call(this,t,n)||this;return o.row={element:i,templateData:null,templateId:null},o}return N$(t,e),t.prototype.render=function(){if(this.model&&this.element){var e=["monaco-tree-wrapper"];e.push.apply(e,Object.keys(this._styles)),this.model.hasChildren()&&e.push("has-children"),this.element.className=e.join(" ")}},t.prototype.insertInDOM=function(e,t){},t.prototype.removeFromDOM=function(){},t}(E$);var O$=function(e){function t(n,i){var o=e.call(this)||this;o.model=null,o.lastPointerType="",o.lastClickTimeStamp=0,o.contentWidthUpdateDelayer=new fi(50),o.isRefreshing=!1,o.refreshingPreviousChildrenIds={},o.currentDragAndDropData=null,o.currentDropTarget=null,o.currentDropTargets=null,o.currentDropDisposable=He.None,o.gestureDisposable=He.None,o.dragAndDropScrollInterval=null,o.dragAndDropScrollTimeout=null,o.dragAndDropMouseY=null,o.highlightedItemWasDraggable=!1,o.onHiddenScrollTop=null,o._onDOMFocus=new nt,o.onDOMFocus=o._onDOMFocus.event,o._onDOMBlur=new nt,o._onDidScroll=new nt,t.counter++,o.instance=t.counter;var r=void 0===n.options.horizontalScrollMode?2:n.options.horizontalScrollMode;o.horizontalScrolling=2!==r,o.context={dataSource:n.dataSource,renderer:n.renderer,controller:n.controller,dnd:n.dnd,filter:n.filter,sorter:n.sorter,tree:n.tree,accessibilityProvider:n.accessibilityProvider,options:n.options,cache:new k$(n),horizontalScrolling:o.horizontalScrolling},o.modelListeners=[],o.viewListeners=[],o.items={},o.domNode=document.createElement("div"),o.domNode.className="monaco-tree no-focused-item monaco-tree-instance-"+o.instance,o.domNode.tabIndex=n.options.preventRootFocus?-1:0,o.styleElement=zo(o.domNode),o.treeStyler=n.styler||new c$(o.styleElement,"monaco-tree-instance-"+o.instance),o.domNode.setAttribute("role","tree"),o.context.options.ariaLabel&&o.domNode.setAttribute("aria-label",o.context.options.ariaLabel),o.context.options.alwaysFocused&&no(o.domNode,"focused"),o.context.options.paddingOnRow||no(o.domNode,"no-row-padding"),o.wrapper=document.createElement("div"),o.wrapper.className="monaco-tree-wrapper",o.scrollableElement=new pS(o.wrapper,{alwaysConsumeMouseWheel:!0,horizontal:r,vertical:void 0!==n.options.verticalScrollMode?n.options.verticalScrollMode:1,useShadows:n.options.useShadows}),o.scrollableElement.onScroll((function(e){o.render(e.scrollTop,e.height,e.scrollLeft,e.width,e.scrollWidth),o._onDidScroll.fire()})),Vn?(o.wrapper.style.msTouchAction="none",o.wrapper.style.msContentZooming="none"):o.gestureDisposable=jf.addTarget(o.wrapper),o.rowsContainer=document.createElement("div"),o.rowsContainer.className="monaco-tree-rows",n.options.showTwistie&&(o.rowsContainer.className+=" show-twisties");var s=Yo(o.domNode);return o.viewListeners.push(s.onDidFocus((function(){return o.onFocus()}))),o.viewListeners.push(s.onDidBlur((function(){return o.onBlur()}))),o.viewListeners.push(s),o.viewListeners.push(uo(o.domNode,"keydown",(function(e){return o.onKeyDown(e)}))),o.viewListeners.push(uo(o.domNode,"keyup",(function(e){return o.onKeyUp(e)}))),o.viewListeners.push(uo(o.domNode,"mousedown",(function(e){return o.onMouseDown(e)}))),o.viewListeners.push(uo(o.domNode,"mouseup",(function(e){return o.onMouseUp(e)}))),o.viewListeners.push(uo(o.wrapper,"auxclick",(function(e){e&&1===e.button&&o.onMouseMiddleClick(e)}))),o.viewListeners.push(uo(o.wrapper,"click",(function(e){return o.onClick(e)}))),o.viewListeners.push(uo(o.domNode,"contextmenu",(function(e){return o.onContextMenu(e)}))),o.viewListeners.push(uo(o.wrapper,Bf.Tap,(function(e){return o.onTap(e)}))),o.viewListeners.push(uo(o.wrapper,Bf.Change,(function(e){return o.onTouchChange(e)}))),Vn&&(o.viewListeners.push(uo(o.wrapper,"MSPointerDown",(function(e){return o.onMsPointerDown(e)}))),o.viewListeners.push(uo(o.wrapper,"MSGestureTap",(function(e){return o.onMsGestureTap(e)}))),o.viewListeners.push(Do(o.wrapper,"MSGestureChange",(function(e){return o.onThrottledMsGestureChange(e)}),(function(e,t){t.stopPropagation(),t.preventDefault();var n={translationY:t.translationY,translationX:t.translationX};return e&&(n.translationY+=e.translationY,n.translationX+=e.translationX),n})))),o.viewListeners.push(uo(window,"dragover",(function(e){return o.onDragOver(e)}))),o.viewListeners.push(uo(o.wrapper,"drop",(function(e){return o.onDrop(e)}))),o.viewListeners.push(uo(window,"dragend",(function(e){return o.onDragEnd(e)}))),o.viewListeners.push(uo(window,"dragleave",(function(e){return o.onDragOver(e)}))),o.wrapper.appendChild(o.rowsContainer),o.domNode.appendChild(o.scrollableElement.getDomNode()),i.appendChild(o.domNode),o.lastRenderTop=0,o.lastRenderHeight=0,o.didJustPressContextMenuKey=!1,o.currentDropTarget=null,o.currentDropTargets=[],o.shouldInvalidateDropReaction=!1,o.dragAndDropScrollInterval=null,o.dragAndDropScrollTimeout=null,o.onRowsChanged(),o.layout(),o.setupMSGesture(),o.applyStyles(n.options),o}return N$(t,e),t.prototype.applyStyles=function(e){this.treeStyler.style(e)},t.prototype.createViewItem=function(e){return new E$(this.context,e)},t.prototype.getHTMLElement=function(){return this.domNode},t.prototype.focus=function(){this.domNode.focus()},t.prototype.isFocused=function(){return document.activeElement===this.domNode},t.prototype.blur=function(){this.domNode.blur()},t.prototype.setupMSGesture=function(){var e=this;window.MSGesture&&(this.msGesture=new MSGesture,setTimeout((function(){return e.msGesture.target=e.wrapper}),100))},t.prototype.isTreeVisible=function(){return null===this.onHiddenScrollTop},t.prototype.layout=function(e,t){this.isTreeVisible()&&(this.viewHeight=e||Ro(this.wrapper),this.scrollHeight=this.getContentHeight(),this.horizontalScrolling&&(this.viewWidth=t||Po(this.wrapper)))},t.prototype.render=function(e,t,n,i,o){var r,s,a=e,u=e+t,l=this.lastRenderTop+this.lastRenderHeight;for(r=this.indexAfter(u)-1,s=this.indexAt(Math.max(l,a));r>=s;r--)this.insertItemInDOM(this.itemAtIndex(r));for(r=Math.min(this.indexAt(this.lastRenderTop),this.indexAfter(u))-1,s=this.indexAt(a);r>=s;r--)this.insertItemInDOM(this.itemAtIndex(r));for(r=this.indexAt(this.lastRenderTop),s=Math.min(this.indexAt(a),this.indexAfter(l));r<s;r++)this.removeItemFromDOM(this.itemAtIndex(r));for(r=Math.max(this.indexAfter(u),this.indexAt(this.lastRenderTop)),s=this.indexAfter(l);r<s;r++)this.removeItemFromDOM(this.itemAtIndex(r));var c=this.itemAtIndex(this.indexAt(a));c&&(this.rowsContainer.style.top=c.top-a+"px"),this.horizontalScrolling&&(this.rowsContainer.style.left=-n+"px",this.rowsContainer.style.width=Math.max(o,i)+"px"),this.lastRenderTop=a,this.lastRenderHeight=u-a},t.prototype.setModel=function(e){this.releaseModel(),this.model=e,this.model.onRefresh(this.onRefreshing,this,this.modelListeners),this.model.onDidRefresh(this.onRefreshed,this,this.modelListeners),this.model.onSetInput(this.onClearingInput,this,this.modelListeners),this.model.onDidSetInput(this.onSetInput,this,this.modelListeners),this.model.onDidFocus(this.onModelFocusChange,this,this.modelListeners),this.model.onRefreshItemChildren(this.onItemChildrenRefreshing,this,this.modelListeners),this.model.onDidRefreshItemChildren(this.onItemChildrenRefreshed,this,this.modelListeners),this.model.onDidRefreshItem(this.onItemRefresh,this,this.modelListeners),this.model.onExpandItem(this.onItemExpanding,this,this.modelListeners),this.model.onDidExpandItem(this.onItemExpanded,this,this.modelListeners),this.model.onCollapseItem(this.onItemCollapsing,this,this.modelListeners),this.model.onDidRevealItem(this.onItemReveal,this,this.modelListeners),this.model.onDidAddTraitItem(this.onItemAddTrait,this,this.modelListeners),this.model.onDidRemoveTraitItem(this.onItemRemoveTrait,this,this.modelListeners)},t.prototype.onRefreshing=function(){this.isRefreshing=!0},t.prototype.onRefreshed=function(){this.isRefreshing=!1,this.onRowsChanged()},t.prototype.onRowsChanged=function(e){void 0===e&&(e=this.scrollTop),this.isRefreshing||(this.scrollTop=e,this.updateScrollWidth())},t.prototype.updateScrollWidth=function(){var e=this;this.horizontalScrolling&&this.contentWidthUpdateDelayer.trigger((function(){for(var t=0,n=0,i=Object.keys(e.items);n<i.length;n++){var o=i[n];t=Math.max(t,e.items[o].width)}e.scrollWidth=t+10}))},t.prototype.focusNextPage=function(e){var t=this,n=this.indexAt(this.scrollTop+this.viewHeight);n=0===n?0:n-1;var i=this.itemAtIndex(n).model.getElement();if(this.model.getFocus()!==i)this.model.setFocus(i,e);else{var o=this.scrollTop;this.scrollTop+=this.viewHeight,this.scrollTop!==o&&setTimeout((function(){t.focusNextPage(e)}),0)}},t.prototype.focusPreviousPage=function(e){var t,n=this;t=0===this.scrollTop?this.indexAt(this.scrollTop):this.indexAfter(this.scrollTop-1);var i=this.itemAtIndex(t).model.getElement();if(this.model.getFocus()!==i)this.model.setFocus(i,e);else{var o=this.scrollTop;this.scrollTop-=this.viewHeight,this.scrollTop!==o&&setTimeout((function(){n.focusPreviousPage(e)}),0)}},Object.defineProperty(t.prototype,"viewHeight",{get:function(){return this.scrollableElement.getScrollDimensions().height},set:function(e){this.scrollableElement.setScrollDimensions({height:e})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"scrollHeight",{set:function(e){e+=this.horizontalScrolling?10:0,this.scrollableElement.setScrollDimensions({scrollHeight:e})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"viewWidth",{get:function(){return this.scrollableElement.getScrollDimensions().width},set:function(e){this.scrollableElement.setScrollDimensions({width:e})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"scrollWidth",{set:function(e){this.scrollableElement.setScrollDimensions({scrollWidth:e})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"scrollTop",{get:function(){return this.scrollableElement.getScrollPosition().scrollTop},set:function(e){var t=this.getContentHeight()+(this.horizontalScrolling?10:0);this.scrollableElement.setScrollDimensions({scrollHeight:t}),this.scrollableElement.setScrollPosition({scrollTop:e})},enumerable:!0,configurable:!0}),t.prototype.onClearingInput=function(e){var t=e.item;t&&(this.onRemoveItems(new Xe(t.getNavigator(),(function(e){return e&&e.id}))),this.onRowsChanged())},t.prototype.onSetInput=function(e){this.context.cache.garbageCollect(),this.inputItem=new I$(this.context,e.item,this.wrapper)},t.prototype.onItemChildrenRefreshing=function(e){var n=e.item,i=this.items[n.id];if(i&&this.context.options.showLoading&&(i.loadingTimer=setTimeout((function(){i.loadingTimer=0,i.loading=!0}),t.LOADING_DECORATION_DELAY)),!e.isNested){for(var o=[],r=n.getNavigator(),s=void 0;s=r.next();)o.push(s.id);this.refreshingPreviousChildrenIds[n.id]=o}},t.prototype.onItemChildrenRefreshed=function(e){var t=this,n=e.item,i=this.items[n.id];if(i&&(i.loadingTimer&&(clearTimeout(i.loadingTimer),i.loadingTimer=0),i.loading=!1),!e.isNested){for(var o=this.refreshingPreviousChildrenIds[n.id],r=[],s=n.getNavigator(),a=void 0;a=s.next();)r.push(a);var u=Math.abs(o.length-r.length)>1e3,l=[],c=!1;if(!u)c=(l=new Hl({getElements:function(){return o}},{getElements:function(){return r.map((function(e){return e.id}))}},null).ComputeDiff(!1).changes).some((function(e){if(e.modifiedLength>0)for(var n=e.modifiedStart,i=e.modifiedStart+e.modifiedLength;n<i;n++)if(t.items.hasOwnProperty(r[n].id))return!0;return!1}));if(!u&&!c&&l.length<50)for(var d=0,h=l;d<h.length;d++){var p=h[d];if(p.originalLength>0&&this.onRemoveItems(new Ze(o,p.originalStart,p.originalStart+p.originalLength)),p.modifiedLength>0){var f=r[p.modifiedStart-1]||n;f=f.getDepth()>0?f:null,this.onInsertItems(new Ze(r,p.modifiedStart,p.modifiedStart+p.modifiedLength),f?f.id:null)}}else(u||l.length)&&(this.onRemoveItems(new Ze(o)),this.onInsertItems(new Ze(r),n.getDepth()>0?n.id:null));(u||l.length)&&this.onRowsChanged()}},t.prototype.onItemRefresh=function(e){this.onItemsRefresh([e])},t.prototype.onItemsRefresh=function(e){var t=this;this.onRefreshItemSet(e.filter((function(e){return t.items.hasOwnProperty(e.id)}))),this.onRowsChanged()},t.prototype.onItemExpanding=function(e){var t=this.items[e.item.id];t&&(t.expanded=!0)},t.prototype.onItemExpanded=function(e){var t=e.item,n=this.items[t.id];if(n){n.expanded=!0;var i=this.onInsertItems(t.getNavigator(),t.id)||0,o=this.scrollTop;n.top+n.height<=this.scrollTop&&(o+=i),this.onRowsChanged(o)}},t.prototype.onItemCollapsing=function(e){var t=e.item,n=this.items[t.id];n&&(n.expanded=!1,this.onRemoveItems(new Xe(t.getNavigator(),(function(e){return e&&e.id}))),this.onRowsChanged())},t.prototype.onItemReveal=function(e){var t=e.item,n=e.relativeTop,i=this.items[t.id];if(i)if(null!==n){n=(n=n<0?0:n)>1?1:n;var o=i.height-this.viewHeight;this.scrollTop=o*n+i.top}else{var r=i.top+i.height,s=this.scrollTop+this.viewHeight;i.top<this.scrollTop?this.scrollTop=i.top:r>=s&&(this.scrollTop=r-this.viewHeight)}},t.prototype.onItemAddTrait=function(e){var t=e.item,n=e.trait,i=this.items[t.id];i&&i.addClass(n),"highlighted"===n&&(no(this.domNode,n),i&&(this.highlightedItemWasDraggable=!!i.draggable,i.draggable&&(i.draggable=!1)))},t.prototype.onItemRemoveTrait=function(e){var t=e.item,n=e.trait,i=this.items[t.id];i&&i.removeClass(n),"highlighted"===n&&(oo(this.domNode,n),this.highlightedItemWasDraggable&&(i.draggable=!0),this.highlightedItemWasDraggable=!1)},t.prototype.onModelFocusChange=function(){var e=this.model&&this.model.getFocus();so(this.domNode,"no-focused-item",!e),e?this.domNode.setAttribute("aria-activedescendant",Gr(this.context.dataSource.getId(this.context.tree,e))):this.domNode.removeAttribute("aria-activedescendant")},t.prototype.onInsertItem=function(e){var t=this;e.onDragStart=function(n){t.onDragStart(e,n)},e.needsRender=!0,this.refreshViewItem(e),this.items[e.id]=e},t.prototype.onRefreshItem=function(e,t){void 0===t&&(t=!1),e.needsRender=e.needsRender||t,this.refreshViewItem(e)},t.prototype.onRemoveItem=function(e){this.removeItemFromDOM(e),e.dispose(),delete this.items[e.id]},t.prototype.refreshViewItem=function(e){e.render(),this.shouldBeRendered(e)?this.insertItemInDOM(e):this.removeItemFromDOM(e)},t.prototype.onClick=function(e){if(!this.lastPointerType||"mouse"===this.lastPointerType){var t=new li(e),n=this.getItemAround(t.target);n&&(Vn&&Date.now()-this.lastClickTimeStamp<300&&(t.detail=2),this.lastClickTimeStamp=Date.now(),this.context.controller.onClick(this.context.tree,n.model.getElement(),t))}},t.prototype.onMouseMiddleClick=function(e){if(this.context.controller.onMouseMiddleClick){var t=new li(e),n=this.getItemAround(t.target);n&&this.context.controller.onMouseMiddleClick(this.context.tree,n.model.getElement(),t)}},t.prototype.onMouseDown=function(e){if(this.didJustPressContextMenuKey=!1,this.context.controller.onMouseDown&&(!this.lastPointerType||"mouse"===this.lastPointerType)){var t=new li(e);if(!(t.ctrlKey&&b&&_)){var n=this.getItemAround(t.target);n&&this.context.controller.onMouseDown(this.context.tree,n.model.getElement(),t)}}},t.prototype.onMouseUp=function(e){if(this.context.controller.onMouseUp&&(!this.lastPointerType||"mouse"===this.lastPointerType)){var t=new li(e);if(!(t.ctrlKey&&b&&_)){var n=this.getItemAround(t.target);n&&this.context.controller.onMouseUp(this.context.tree,n.model.getElement(),t)}}},t.prototype.onTap=function(e){var t=this.getItemAround(e.initialTarget);t&&this.context.controller.onTap(this.context.tree,t.model.getElement(),e)},t.prototype.onTouchChange=function(e){e.preventDefault(),e.stopPropagation(),this.scrollTop-=e.translationY},t.prototype.onContextMenu=function(e){var t,n;if(e instanceof KeyboardEvent||this.didJustPressContextMenuKey){this.didJustPressContextMenuKey=!1;var i=new ni(e),o=void 0;if(n=this.model.getFocus()){var r=this.context.dataSource.getId(this.context.tree,n);o=Oo(this.items[r].element)}else n=this.model.getInput(),o=Oo(this.inputItem.element);t=new D$(o.left+o.width,o.top,i)}else{var s=new li(e),a=this.getItemAround(s.target);if(!a)return;n=a.model.getElement(),t=new x$(s)}this.context.controller.onContextMenu(this.context.tree,n,t)},t.prototype.onKeyDown=function(e){var t=new ni(e);this.didJustPressContextMenuKey=58===t.keyCode||t.shiftKey&&68===t.keyCode,t.target&&t.target.tagName&&"input"===t.target.tagName.toLowerCase()||(this.didJustPressContextMenuKey&&(t.preventDefault(),t.stopPropagation()),this.context.controller.onKeyDown(this.context.tree,t))},t.prototype.onKeyUp=function(e){this.didJustPressContextMenuKey&&this.onContextMenu(e),this.didJustPressContextMenuKey=!1,this.context.controller.onKeyUp(this.context.tree,new ni(e))},t.prototype.onDragStart=function(e,t){if(!this.model.getHighlight()){var n,i=e.model.getElement(),o=this.model.getSelection();if(n=o.indexOf(i)>-1?o:[i],t.dataTransfer.effectAllowed="copyMove",t.dataTransfer.setData(uD,JSON.stringify([e.uri])),t.dataTransfer.setDragImage){var r=void 0;r=this.context.dnd.getDragLabel?this.context.dnd.getDragLabel(this.context.tree,n):String(n.length);var s=document.createElement("div");s.className="monaco-tree-drag-image",s.textContent=r,document.body.appendChild(s),t.dataTransfer.setDragImage(s,-10,-10),setTimeout((function(){return document.body.removeChild(s)}),0)}this.currentDragAndDropData=new y$(n),dD.CurrentDragAndDropData=new b$(n),this.context.dnd.onDragStart(this.context.tree,this.currentDragAndDropData,new ci(t))}},t.prototype.setupDragAndDropScrollInterval=function(){var e=this,t=Io(this.wrapper).top;this.dragAndDropScrollInterval||(this.dragAndDropScrollInterval=window.setInterval((function(){if(null!==e.dragAndDropMouseY){var n=e.dragAndDropMouseY-t,i=0,o=e.viewHeight-35;n<35?i=Math.max(-14,.2*(n-35)):n>o&&(i=Math.min(14,.2*(n-o))),e.scrollTop+=i}}),10),this.cancelDragAndDropScrollTimeout(),this.dragAndDropScrollTimeout=window.setTimeout((function(){e.cancelDragAndDropScrollInterval(),e.dragAndDropScrollTimeout=null}),1e3))},t.prototype.cancelDragAndDropScrollInterval=function(){this.dragAndDropScrollInterval&&(window.clearInterval(this.dragAndDropScrollInterval),this.dragAndDropScrollInterval=null),this.cancelDragAndDropScrollTimeout()},t.prototype.cancelDragAndDropScrollTimeout=function(){this.dragAndDropScrollTimeout&&(window.clearTimeout(this.dragAndDropScrollTimeout),this.dragAndDropScrollTimeout=null)},t.prototype.onDragOver=function(e){var t=this;e.preventDefault();var n,i=new ci(e),o=this.getItemAround(i.target);if(!o||0===i.posx&&0===i.posy&&i.browserEvent.type===qo.DRAG_LEAVE)return this.currentDropTarget&&(this.currentDropTargets.forEach((function(e){return e.dropTarget=!1})),this.currentDropTargets=[],this.currentDropDisposable.dispose()),this.cancelDragAndDropScrollInterval(),this.currentDropTarget=null,this.currentDropElement=null,this.dragAndDropMouseY=null,!1;if(this.setupDragAndDropScrollInterval(),this.dragAndDropMouseY=i.posy,!this.currentDragAndDropData)if(dD.CurrentDragAndDropData)this.currentDragAndDropData=dD.CurrentDragAndDropData;else{if(!i.dataTransfer.types)return!1;this.currentDragAndDropData=new w$}this.currentDragAndDropData.update(i.browserEvent.dataTransfer);var r,s=o.model;do{if(n=s?s.getElement():this.model.getInput(),!(r=this.context.dnd.onDragOver(this.context.tree,this.currentDragAndDropData,n,i))||1!==r.bubble)break;s=s&&s.parent}while(s);if(!s)return this.currentDropElement=null,!1;var a=r&&r.accept;a?(this.currentDropElement=s.getElement(),i.preventDefault(),i.dataTransfer.dropEffect=0===r.effect?"copy":"move"):this.currentDropElement=null;var u,l,c=s.id===this.inputItem.id?this.inputItem:this.items[s.id];if((this.shouldInvalidateDropReaction||this.currentDropTarget!==c||(u=this.currentDropElementReaction,l=r,!(!u&&!l||u&&l&&u.accept===l.accept&&u.bubble===l.bubble&&u.effect===l.effect)))&&(this.shouldInvalidateDropReaction=!1,this.currentDropTarget&&(this.currentDropTargets.forEach((function(e){return e.dropTarget=!1})),this.currentDropTargets=[],this.currentDropDisposable.dispose()),this.currentDropTarget=c,this.currentDropElementReaction=r,a)){if(this.currentDropTarget&&(this.currentDropTarget.dropTarget=!0,this.currentDropTargets.push(this.currentDropTarget)),0===r.bubble)for(var d=s.getNavigator(),h=void 0;h=d.next();)(o=this.items[h.id])&&(o.dropTarget=!0,this.currentDropTargets.push(o));if(r.autoExpand){var p=gi(500);this.currentDropDisposable=We((function(){return p.cancel()})),p.then((function(){return t.context.tree.expand(t.currentDropElement)})).then((function(){return t.shouldInvalidateDropReaction=!0}))}}return!0},t.prototype.onDrop=function(e){if(this.currentDropElement){var t=new ci(e);t.preventDefault(),this.currentDragAndDropData.update(t.browserEvent.dataTransfer),this.context.dnd.drop(this.context.tree,this.currentDragAndDropData,this.currentDropElement,t),this.onDragEnd(e)}this.cancelDragAndDropScrollInterval()},t.prototype.onDragEnd=function(e){this.currentDropTarget&&(this.currentDropTargets.forEach((function(e){return e.dropTarget=!1})),this.currentDropTargets=[]),this.currentDropDisposable.dispose(),this.cancelDragAndDropScrollInterval(),this.currentDragAndDropData=null,dD.CurrentDragAndDropData=void 0,this.currentDropElement=null,this.currentDropTarget=null,this.dragAndDropMouseY=null},t.prototype.onFocus=function(){this.context.options.alwaysFocused||no(this.domNode,"focused"),this._onDOMFocus.fire()},t.prototype.onBlur=function(){this.context.options.alwaysFocused||oo(this.domNode,"focused"),this.domNode.removeAttribute("aria-activedescendant"),this._onDOMBlur.fire()},t.prototype.onMsPointerDown=function(e){if(this.msGesture){var t=e.pointerType;t!==(e.MSPOINTER_TYPE_MOUSE||"mouse")?t===(e.MSPOINTER_TYPE_TOUCH||"touch")&&(this.lastPointerType="touch",e.stopPropagation(),e.preventDefault(),this.msGesture.addPointer(e.pointerId)):this.lastPointerType="mouse"}},t.prototype.onThrottledMsGestureChange=function(e){this.scrollTop-=e.translationY},t.prototype.onMsGestureTap=function(e){e.initialTarget=document.elementFromPoint(e.clientX,e.clientY),this.onTap(e)},t.prototype.insertItemInDOM=function(e){var t=null,n=this.itemAfter(e);n&&n.element&&(t=n.element),e.insertInDOM(this.rowsContainer,t)},t.prototype.removeItemFromDOM=function(e){e&&e.removeFromDOM()},t.prototype.shouldBeRendered=function(e){return e.top<this.lastRenderTop+this.lastRenderHeight&&e.top+e.height>this.lastRenderTop},t.prototype.getItemAround=function(e){var n=this.inputItem,i=e;do{if(i[t.BINDING]&&(n=i[t.BINDING]),i===this.wrapper||i===this.domNode)return n;if(i===this.scrollableElement.getDomNode()||i===document.body)return}while(i=i.parentElement)},t.prototype.releaseModel=function(){this.model&&(this.modelListeners=Ae(this.modelListeners),this.model=null)},t.prototype.dispose=function(){var t=this;this.scrollableElement.dispose(),this.releaseModel(),this.viewListeners=Ae(this.viewListeners),this._onDOMFocus.dispose(),this._onDOMBlur.dispose(),this.domNode.parentNode&&this.domNode.parentNode.removeChild(this.domNode),this.items&&Object.keys(this.items).forEach((function(e){return t.items[e].removeFromDOM()})),this.context.cache&&this.context.cache.dispose(),this.gestureDisposable.dispose(),e.prototype.dispose.call(this)},t.BINDING="monaco-tree-row",t.LOADING_DECORATION_DELAY=800,t.counter=0,t}(C$),M$=function(e,t,n){if(void 0===n&&(n={}),this.tree=e,this.configuration=t,this.options=n,!t.dataSource)throw new Error("You must provide a Data Source to the tree.");this.dataSource=t.dataSource,this.renderer=t.renderer,this.controller=t.controller||new s$({clickBehavior:1,keyboardSupport:"boolean"!=typeof n.keyboardSupport||n.keyboardSupport}),this.dnd=t.dnd||new a$,this.filter=t.filter||new u$,this.sorter=t.sorter,this.accessibilityProvider=t.accessibilityProvider||new l$,this.styler=t.styler},T$={listFocusBackground:mv.fromHex("#073655"),listActiveSelectionBackground:mv.fromHex("#0E639C"),listActiveSelectionForeground:mv.fromHex("#FFFFFF"),listFocusAndSelectionBackground:mv.fromHex("#094771"),listFocusAndSelectionForeground:mv.fromHex("#FFFFFF"),listInactiveSelectionBackground:mv.fromHex("#3F3F46"),listHoverBackground:mv.fromHex("#2A2D2E"),listDropBackground:mv.fromHex("#383B3D")},P$=function(){function e(e,t,n){void 0===n&&(n={}),this._onDidChangeFocus=new st,this.onDidChangeFocus=this._onDidChangeFocus.event,this._onDidChangeSelection=new st,this.onDidChangeSelection=this._onDidChangeSelection.event,this._onHighlightChange=new st,this._onDidExpandItem=new st,this._onDidCollapseItem=new st,this._onDispose=new nt,this.onDidDispose=this._onDispose.event,this.container=e,ka(n,T$,!1),n.twistiePixels="number"==typeof n.twistiePixels?n.twistiePixels:32,n.showTwistie=!1!==n.showTwistie,n.indentPixels="number"==typeof n.indentPixels?n.indentPixels:12,n.alwaysFocused=!0===n.alwaysFocused,n.useShadows=!1!==n.useShadows,n.paddingOnRow=!1!==n.paddingOnRow,n.showLoading=!1!==n.showLoading,this.context=new M$(this,t,n),this.model=new _$(this.context),this.view=new O$(this.context,this.container),this.view.setModel(this.model),this._onDidChangeFocus.input=this.model.onDidFocus,this._onDidChangeSelection.input=this.model.onDidSelect,this._onHighlightChange.input=this.model.onDidHighlight,this._onDidExpandItem.input=this.model.onDidExpandItem,this._onDidCollapseItem.input=this.model.onDidCollapseItem}return e.prototype.style=function(e){this.view.applyStyles(e)},Object.defineProperty(e.prototype,"onDidFocus",{get:function(){return this.view.onDOMFocus},enumerable:!0,configurable:!0}),e.prototype.getHTMLElement=function(){return this.view.getHTMLElement()},e.prototype.layout=function(e,t){this.view.layout(e,t)},e.prototype.domFocus=function(){this.view.focus()},e.prototype.isDOMFocused=function(){return this.view.isFocused()},e.prototype.domBlur=function(){this.view.blur()},e.prototype.setInput=function(e){return this.model.setInput(e)},e.prototype.getInput=function(){return this.model.getInput()},e.prototype.expand=function(e){return this.model.expand(e)},e.prototype.collapse=function(e,t){return void 0===t&&(t=!1),this.model.collapse(e,t)},e.prototype.toggleExpansion=function(e,t){return void 0===t&&(t=!1),this.model.toggleExpansion(e,t)},e.prototype.isExpanded=function(e){return this.model.isExpanded(e)},e.prototype.reveal=function(e,t){return void 0===t&&(t=null),this.model.reveal(e,t)},e.prototype.getHighlight=function(){return this.model.getHighlight()},e.prototype.clearHighlight=function(e){this.model.setHighlight(null,e)},e.prototype.setSelection=function(e,t){this.model.setSelection(e,t)},e.prototype.getSelection=function(){return this.model.getSelection()},e.prototype.clearSelection=function(e){this.model.setSelection([],e)},e.prototype.setFocus=function(e,t){this.model.setFocus(e,t)},e.prototype.getFocus=function(){return this.model.getFocus()},e.prototype.focusNext=function(e,t){this.model.focusNext(e,t)},e.prototype.focusPrevious=function(e,t){this.model.focusPrevious(e,t)},e.prototype.focusParent=function(e){this.model.focusParent(e)},e.prototype.focusFirstChild=function(e){this.model.focusFirstChild(e)},e.prototype.focusFirst=function(e,t){this.model.focusFirst(e,t)},e.prototype.focusNth=function(e,t){this.model.focusNth(e,t)},e.prototype.focusLast=function(e,t){this.model.focusLast(e,t)},e.prototype.focusNextPage=function(e){this.view.focusNextPage(e)},e.prototype.focusPreviousPage=function(e){this.view.focusPreviousPage(e)},e.prototype.clearFocus=function(e){this.model.setFocus(null,e)},e.prototype.dispose=function(){this._onDispose.fire(),this.model.dispose(),this.view.dispose(),this._onDidChangeFocus.dispose(),this._onDidChangeSelection.dispose(),this._onHighlightChange.dispose(),this._onDidExpandItem.dispose(),this._onDidCollapseItem.dispose(),this._onDispose.dispose()},e}(),R$=(n(436),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),A$={progressBarBackground:mv.fromHex("#0E70C0")},F$=function(e){function t(t,n){var i=e.call(this)||this;return i.options=n||Object.create(null),ka(i.options,A$,!1),i.workedVal=0,i.progressBarBackground=i.options.progressBarBackground,i._register(i.showDelayedScheduler=new wi((function(){return tr(i.element)}),0)),i.create(t),i}return R$(t,e),t.prototype.create=function(e){this.element=document.createElement("div"),no(this.element,"monaco-progress-container"),e.appendChild(this.element),this.bit=document.createElement("div"),no(this.bit,"progress-bit"),this.element.appendChild(this.bit),this.applyStyles()},t.prototype.off=function(){this.bit.style.width="inherit",this.bit.style.opacity="1",ro(this.element,"active","infinite","discrete"),this.workedVal=0,this.totalWork=void 0},t.prototype.stop=function(){return this.doDone(!1)},t.prototype.doDone=function(e){var t=this;return no(this.element,"done"),to(this.element,"infinite")?(this.bit.style.opacity="0",e?setTimeout((function(){return t.off()}),200):this.off()):(this.bit.style.width="inherit",e?setTimeout((function(){return t.off()}),200):this.off()),this},t.prototype.hide=function(){nr(this.element),this.showDelayedScheduler.cancel()},t.prototype.style=function(e){this.progressBarBackground=e.progressBarBackground,this.applyStyles()},t.prototype.applyStyles=function(){if(this.bit){var e=this.progressBarBackground?this.progressBarBackground.toString():"";this.bit.style.backgroundColor=e}},t}(He),W$=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),V$=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return W$(t,e),t.prototype.onContextMenu=function(t,n,i){return _?this.onLeftClick(t,n,i):e.prototype.onContextMenu.call(this,t,n,i)},t}(s$),B$={background:mv.fromHex("#1E1E1E"),foreground:mv.fromHex("#CCCCCC"),pickerGroupForeground:mv.fromHex("#0097FB"),pickerGroupBorder:mv.fromHex("#3F3F46"),widgetShadow:mv.fromHex("#000000"),progressBarBackground:mv.fromHex("#0E70C0")},H$=r("quickOpenAriaLabel","Quick picker. Type to narrow down results."),z$=function(e){function t(t,n,i){var o=e.call(this)||this;return o.isDisposed=!1,o.container=t,o.callbacks=n,o.options=i,o.styles=i||Object.create(null),ka(o.styles,B$,!1),o.model=null,o}return W$(t,e),t.prototype.getModel=function(){return this.model},t.prototype.create=function(){var e=this;this.element=document.createElement("div"),no(this.element,"monaco-quick-open-widget"),this.container.appendChild(this.element),this._register(uo(this.element,qo.CONTEXT_MENU,(function(e){return Go(e,!0)}))),this._register(uo(this.element,qo.FOCUS,(function(t){return e.gainingFocus()}),!0)),this._register(uo(this.element,qo.BLUR,(function(t){return e.loosingFocus(t)}),!0)),this._register(uo(this.element,qo.KEY_DOWN,(function(t){var n=new ni(t);if(9===n.keyCode)Go(t,!0),e.hide(2);else if(2===n.keyCode&&!n.altKey&&!n.ctrlKey&&!n.metaKey){var i=t.currentTarget.querySelectorAll("input, .monaco-tree, .monaco-tree-row.focused .action-label.icon");n.shiftKey&&n.target===i[0]?(Go(t,!0),i[i.length-1].focus()):n.shiftKey||n.target!==i[i.length-1]||(Go(t,!0),i[0].focus())}}))),this.progressBar=this._register(new F$(this.element,{progressBarBackground:this.styles.progressBarBackground})),this.progressBar.hide(),this.inputContainer=document.createElement("div"),no(this.inputContainer,"quick-open-input"),this.element.appendChild(this.inputContainer),this.inputBox=this._register(new PW(this.inputContainer,void 0,{placeholder:this.options.inputPlaceHolder||"",ariaLabel:H$,inputBackground:this.styles.inputBackground,inputForeground:this.styles.inputForeground,inputBorder:this.styles.inputBorder,inputValidationInfoBackground:this.styles.inputValidationInfoBackground,inputValidationInfoForeground:this.styles.inputValidationInfoForeground,inputValidationInfoBorder:this.styles.inputValidationInfoBorder,inputValidationWarningBackground:this.styles.inputValidationWarningBackground,inputValidationWarningForeground:this.styles.inputValidationWarningForeground,inputValidationWarningBorder:this.styles.inputValidationWarningBorder,inputValidationErrorBackground:this.styles.inputValidationErrorBackground,inputValidationErrorForeground:this.styles.inputValidationErrorForeground,inputValidationErrorBorder:this.styles.inputValidationErrorBorder})),this.inputElement=this.inputBox.inputElement,this.inputElement.setAttribute("role","combobox"),this.inputElement.setAttribute("aria-haspopup","false"),this.inputElement.setAttribute("aria-autocomplete","list"),this._register(uo(this.inputBox.inputElement,qo.INPUT,(function(t){return e.onType()}))),this._register(uo(this.inputBox.inputElement,qo.KEY_DOWN,(function(t){var n=new ni(t),i=e.shouldOpenInBackground(n);if(2!==n.keyCode)if(18===n.keyCode||16===n.keyCode||12===n.keyCode||11===n.keyCode)Go(t,!0),e.navigateInTree(n.keyCode,n.shiftKey),e.inputBox.inputElement.selectionStart===e.inputBox.inputElement.selectionEnd&&(e.inputBox.inputElement.selectionStart=e.inputBox.value.length);else if(3===n.keyCode||i){Go(t,!0);var o=e.tree.getFocus();o&&e.elementSelected(o,t,i?2:1)}}))),this.resultCount=document.createElement("div"),no(this.resultCount,"quick-open-result-count"),this.resultCount.setAttribute("aria-live","polite"),this.resultCount.setAttribute("aria-atomic","true"),this.element.appendChild(this.resultCount),this.treeContainer=document.createElement("div"),no(this.treeContainer,"quick-open-tree"),this.element.appendChild(this.treeContainer);var t=this.options.treeCreator||function(e,t,n){return new P$(e,t,n)};return this.tree=this._register(t(this.treeContainer,{dataSource:new t$(this),controller:new V$({clickBehavior:1,keyboardSupport:this.options.keyboardSupport}),renderer:this.renderer=new o$(this,this.styles),filter:new i$(this),accessibilityProvider:new n$(this)},{twistiePixels:11,indentPixels:0,alwaysFocused:!0,verticalScrollMode:3,horizontalScrollMode:2,ariaLabel:r("treeAriaLabel","Quick Picker"),keyboardSupport:this.options.keyboardSupport,preventRootFocus:!1})),this.treeElement=this.tree.getHTMLElement(),this._register(this.tree.onDidChangeFocus((function(t){e.elementFocused(t.focus,t)}))),this._register(this.tree.onDidChangeSelection((function(t){if(t.selection&&t.selection.length>0){var n=t.payload&&t.payload.originalEvent instanceof li?t.payload.originalEvent:void 0,i=!!n&&e.shouldOpenInBackground(n);e.elementSelected(t.selection[0],t,i?2:1)}}))),this._register(uo(this.treeContainer,qo.KEY_DOWN,(function(t){var n=new ni(t);if(e.quickNavigateConfiguration)if(18===n.keyCode||16===n.keyCode||12===n.keyCode||11===n.keyCode)Go(t,!0),e.navigateInTree(n.keyCode);else if(3===n.keyCode){Go(t,!0);var i=e.tree.getFocus();i&&e.elementSelected(i,t)}}))),this._register(uo(this.treeContainer,qo.KEY_UP,(function(t){var n=new ni(t),i=n.keyCode;if(e.quickNavigateConfiguration&&e.quickNavigateConfiguration.keybindings.some((function(e){var t=e.getParts(),o=t[0];return!t[1]&&(o.shiftKey&&4===i?!(n.ctrlKey||n.altKey||n.metaKey):!(!o.altKey||6!==i)||(!(!o.ctrlKey||5!==i)||!(!o.metaKey||57!==i)))}))){var o=e.tree.getFocus();o&&e.elementSelected(o,t)}}))),this.layoutDimensions&&this.layout(this.layoutDimensions),this.applyStyles(),this._register(uo(this.treeContainer,qo.KEY_DOWN,(function(t){var n=new ni(t);e.quickNavigateConfiguration||18!==n.keyCode&&16!==n.keyCode&&12!==n.keyCode&&11!==n.keyCode||(Go(t,!0),e.navigateInTree(n.keyCode,n.shiftKey),e.treeElement.focus())}))),this.element},t.prototype.style=function(e){this.styles=e,this.applyStyles()},t.prototype.applyStyles=function(){if(this.element){var e=this.styles.foreground?this.styles.foreground.toString():"",t=this.styles.background?this.styles.background.toString():"",n=this.styles.borderColor?this.styles.borderColor.toString():"",i=this.styles.widgetShadow?this.styles.widgetShadow.toString():"";this.element.style.color=e,this.element.style.backgroundColor=t,this.element.style.borderColor=n,this.element.style.borderWidth=n?"1px":"",this.element.style.borderStyle=n?"solid":"",this.element.style.boxShadow=i?"0 5px 8px "+i:""}this.progressBar&&this.progressBar.style({progressBarBackground:this.styles.progressBarBackground}),this.inputBox&&this.inputBox.style({inputBackground:this.styles.inputBackground,inputForeground:this.styles.inputForeground,inputBorder:this.styles.inputBorder,inputValidationInfoBackground:this.styles.inputValidationInfoBackground,inputValidationInfoForeground:this.styles.inputValidationInfoForeground,inputValidationInfoBorder:this.styles.inputValidationInfoBorder,inputValidationWarningBackground:this.styles.inputValidationWarningBackground,inputValidationWarningForeground:this.styles.inputValidationWarningForeground,inputValidationWarningBorder:this.styles.inputValidationWarningBorder,inputValidationErrorBackground:this.styles.inputValidationErrorBackground,inputValidationErrorForeground:this.styles.inputValidationErrorForeground,inputValidationErrorBorder:this.styles.inputValidationErrorBorder}),this.tree&&!this.options.treeCreator&&this.tree.style(this.styles),this.renderer&&this.renderer.updateStyles(this.styles)},t.prototype.shouldOpenInBackground=function(e){if(e instanceof ni){if(17!==e.keyCode)return!1;if(e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return!1;var t=this.inputBox.inputElement;return t.selectionEnd===this.inputBox.value.length&&t.selectionStart===t.selectionEnd}return e.middleButton},t.prototype.onType=function(){var e=this.inputBox.value;this.helpText&&(e?nr(this.helpText):tr(this.helpText)),this.callbacks.onType(e)},t.prototype.navigateInTree=function(e,t){var n=this.tree.getInput(),i=n?n.entries:[],o=this.tree.getFocus();switch(e){case 18:this.tree.focusNext();break;case 16:this.tree.focusPrevious();break;case 12:this.tree.focusNextPage();break;case 11:this.tree.focusPreviousPage();break;case 2:t?this.tree.focusPrevious():this.tree.focusNext()}var r=this.tree.getFocus();i.length>1&&o===r&&(16===e||2===e&&t?this.tree.focusLast():(18===e||2===e&&!t)&&this.tree.focusFirst()),(r=this.tree.getFocus())&&this.tree.reveal(r)},t.prototype.elementFocused=function(e,t){if(e&&this.isVisible()){var n=this.treeElement.getAttribute("aria-activedescendant");n?this.inputElement.setAttribute("aria-activedescendant",n):this.inputElement.removeAttribute("aria-activedescendant");var i={event:t,keymods:this.extractKeyMods(t),quickNavigateConfiguration:this.quickNavigateConfiguration};this.model.runner.run(e,0,i)}},t.prototype.elementSelected=function(e,t,n){var i=!0;if(this.isVisible()){var o=n||1,r={event:t,keymods:this.extractKeyMods(t),quickNavigateConfiguration:this.quickNavigateConfiguration};i=this.model.runner.run(e,o,r)}i&&this.hide(0)},t.prototype.extractKeyMods=function(e){return{ctrlCmd:e&&(e.ctrlKey||e.metaKey||e.payload&&e.payload.originalEvent&&(e.payload.originalEvent.ctrlKey||e.payload.originalEvent.metaKey)),alt:e&&(e.altKey||e.payload&&e.payload.originalEvent&&e.payload.originalEvent.altKey)}},t.prototype.show=function(e,t){this.visible=!0,this.isLoosingFocus=!1,this.quickNavigateConfiguration=t?t.quickNavigateConfiguration:void 0,this.quickNavigateConfiguration?(nr(this.inputContainer),tr(this.element),this.tree.domFocus()):(tr(this.inputContainer),tr(this.element),this.inputBox.focus()),this.helpText&&(this.quickNavigateConfiguration||As(e)?nr(this.helpText):tr(this.helpText)),As(e)?this.doShowWithPrefix(e):(t&&t.value&&this.restoreLastInput(t.value),this.doShowWithInput(e,t&&t.autoFocus?t.autoFocus:{})),t&&t.inputSelection&&!this.quickNavigateConfiguration&&this.inputBox.select(t.inputSelection),this.callbacks.onShow&&this.callbacks.onShow()},t.prototype.restoreLastInput=function(e){this.inputBox.value=e,this.inputBox.select(),this.callbacks.onType(e)},t.prototype.doShowWithPrefix=function(e){this.inputBox.value=e,this.callbacks.onType(e)},t.prototype.doShowWithInput=function(e,t){this.setInput(e,t)},t.prototype.setInputAndLayout=function(e,t){var n=this;this.treeContainer.style.height=this.getHeight(e)+"px",this.tree.setInput(null).then((function(){return n.model=e,n.inputElement.setAttribute("aria-haspopup",String(e&&e.entries&&e.entries.length>0)),n.tree.setInput(e)})).then((function(){n.tree.layout();var i=e?e.entries.filter((function(t){return n.isElementVisible(e,t)})):[];n.updateResultCount(i.length),i.length&&n.autoFocus(e,i,t)}))},t.prototype.isElementVisible=function(e,t){return!e.filter||e.filter.isVisible(t)},t.prototype.autoFocus=function(e,t,n){if(void 0===n&&(n={}),n.autoFocusPrefixMatch){for(var i=void 0,o=void 0,r=n.autoFocusPrefixMatch,s=r.toLowerCase(),a=0,u=t;a<u.length;a++){var l=u[a],c=e.dataSource.getLabel(l)||"";if(i||0!==c.indexOf(r)?o||0!==c.toLowerCase().indexOf(s)||(o=l):i=l,i&&o)break}var d=i||o;if(d)return this.tree.setFocus(d),void this.tree.reveal(d,.5)}n.autoFocusFirstEntry?(this.tree.focusFirst(),this.tree.reveal(this.tree.getFocus())):"number"==typeof n.autoFocusIndex?t.length>n.autoFocusIndex&&(this.tree.focusNth(n.autoFocusIndex),this.tree.reveal(this.tree.getFocus())):n.autoFocusSecondEntry?t.length>1&&this.tree.focusNth(1):n.autoFocusLastEntry&&t.length>1&&(this.tree.focusLast(),this.tree.reveal(this.tree.getFocus()))},t.prototype.getHeight=function(e){var n=this,i=e.renderer;if(!e){var o=i.getHeight(null);return this.options.minItemsToShow?this.options.minItemsToShow*o:0}var r,s=0;this.layoutDimensions&&this.layoutDimensions.height&&(r=.4*(this.layoutDimensions.height-50)),(!r||r>t.MAX_ITEMS_HEIGHT)&&(r=t.MAX_ITEMS_HEIGHT);for(var a=e.entries.filter((function(t){return n.isElementVisible(e,t)})),u=this.options.maxItemsToShow||a.length,l=0;l<u&&l<a.length;l++){var c=i.getHeight(a[l]);if(!(s+c<=r))break;s+=c}return s},t.prototype.updateResultCount=function(e){this.resultCount.textContent=r({key:"quickInput.visibleCount",comment:["This tells the user how many items are shown in a list of items to select from. The items can be anything. Currently not visible, but read by screen readers."]},"{0} Results",e)},t.prototype.hide=function(e){this.isVisible()&&(this.visible=!1,nr(this.element),this.element.blur(),this.inputBox.value="",this.tree.setInput(null),this.inputElement.setAttribute("aria-haspopup","false"),this.treeContainer.style.height=(this.options.minItemsToShow?22*this.options.minItemsToShow:0)+"px",this.progressBar.stop().hide(),this.tree.isDOMFocused()?this.tree.domBlur():this.inputBox.hasFocus()&&this.inputBox.blur(),0===e?this.callbacks.onOk():this.callbacks.onCancel(),this.callbacks.onHide&&this.callbacks.onHide(e))},t.prototype.setInput=function(e,t,n){this.isVisible()&&(this.getInput()&&this.onInputChanging(),this.setInputAndLayout(e,t),this.inputBox&&this.inputBox.setAriaLabel(n||H$))},t.prototype.onInputChanging=function(){var e=this;this.inputChangingTimeoutHandle&&(clearTimeout(this.inputChangingTimeoutHandle),this.inputChangingTimeoutHandle=null),no(this.element,"content-changing"),this.inputChangingTimeoutHandle=setTimeout((function(){oo(e.element,"content-changing")}),500)},t.prototype.getInput=function(){return this.tree.getInput()},t.prototype.isVisible=function(){return this.visible},t.prototype.layout=function(e){this.layoutDimensions=e;var n=Math.min(.62*this.layoutDimensions.width,t.MAX_WIDTH);this.element&&(this.element.style.width=n+"px",this.element.style.marginLeft="-"+n/2+"px",this.inputContainer.style.width=n-12+"px")},t.prototype.gainingFocus=function(){this.isLoosingFocus=!1},t.prototype.loosingFocus=function(e){var t=this;if(this.isVisible()){var n=e.relatedTarget;!this.quickNavigateConfiguration&&Fo(n,this.element)||(this.isLoosingFocus=!0,setTimeout((function(){t.isLoosingFocus&&!t.isDisposed&&(t.callbacks.onFocusLost&&t.callbacks.onFocusLost()||t.hide(1))}),0))}},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.isDisposed=!0},t.MAX_WIDTH=600,t.MAX_ITEMS_HEIGHT=440,t}(He),j$=function(){function e(e,t,n,i,o,r){this.codeEditor=e,this.themeService=r,this.visible=!1,this.domNode=document.createElement("div"),this.quickOpenWidget=new z$(this.domNode,{onOk:t,onCancel:n,onType:i},{inputPlaceHolder:void 0,inputAriaLabel:o.inputAriaLabel,keyboardSupport:!0}),this.styler=function(e,t,n){return qk(t,{foreground:n&&n.foreground||E_,background:n&&n.background||my,borderColor:n&&n.borderColor||M_,widgetShadow:n&&n.widgetShadow||A_,progressBarBackground:n&&n.progressBarBackground||ay,pickerGroupForeground:n&&n.pickerGroupForeground||J_,pickerGroupBorder:n&&n.pickerGroupBorder||ey,inputBackground:n&&n.inputBackground||F_,inputForeground:n&&n.inputForeground||W_,inputBorder:n&&n.inputBorder||V_,inputValidationInfoBorder:n&&n.inputValidationInfoBorder||U_,inputValidationInfoBackground:n&&n.inputValidationInfoBackground||z_,inputValidationInfoForeground:n&&n.inputValidationInfoForeground||j_,inputValidationWarningBorder:n&&n.inputValidationWarningBorder||G_,inputValidationWarningBackground:n&&n.inputValidationWarningBackground||K_,inputValidationWarningForeground:n&&n.inputValidationWarningForeground||q_,inputValidationErrorBorder:n&&n.inputValidationErrorBorder||X_,inputValidationErrorBackground:n&&n.inputValidationErrorBackground||Z_,inputValidationErrorForeground:n&&n.inputValidationErrorForeground||Y_,listFocusBackground:n&&n.listFocusBackground||Zy,listFocusForeground:n&&n.listFocusForeground||Yy,listActiveSelectionBackground:n&&n.listActiveSelectionBackground||Eb(Xy,.1),listActiveSelectionForeground:n&&n.listActiveSelectionForeground||$y,listFocusAndSelectionBackground:n&&n.listFocusAndSelectionBackground||Xy,listFocusAndSelectionForeground:n&&n.listFocusAndSelectionForeground||$y,listInactiveSelectionBackground:n&&n.listInactiveSelectionBackground||Qy,listInactiveSelectionForeground:n&&n.listInactiveSelectionForeground||Jy,listInactiveFocusBackground:n&&n.listInactiveFocusBackground||eb,listHoverBackground:n&&n.listHoverBackground||tb,listHoverForeground:n&&n.listHoverForeground||nb,listDropBackground:n&&n.listDropBackground||ib,listFocusOutline:n&&n.listFocusOutline||T_,listSelectionOutline:n&&n.listSelectionOutline||T_,listHoverOutline:n&&n.listHoverOutline||T_},e)}(this.quickOpenWidget,this.themeService,{pickerGroupForeground:E_}),this.quickOpenWidget.create(),this.codeEditor.addOverlayWidget(this)}return e.prototype.setInput=function(e,t){this.quickOpenWidget.setInput(e,t)},e.prototype.getId=function(){return e.ID},e.prototype.getDomNode=function(){return this.domNode},e.prototype.destroy=function(){this.codeEditor.removeOverlayWidget(this),this.quickOpenWidget.dispose(),this.styler.dispose()},e.prototype.show=function(e){this.visible=!0;var t=this.codeEditor.getLayoutInfo();t&&this.quickOpenWidget.layout(new Eo(t.width,t.height)),this.quickOpenWidget.show(e),this.codeEditor.layoutOverlayWidget(this)},e.prototype.getPosition=function(){return this.visible?{preference:2}:null},e.ID="editor.contrib.quickOpenEditorWidget",e}(),U$=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),K$=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},q$=function(e,t){return function(n,i){t(n,i,e)}},G$=function(){function e(e,t){this.themeService=t,this.widget=null,this.rangeHighlightDecorationId=null,this.lastKnownEditorSelection=null,this.editor=e}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.dispose=function(){this.widget&&(this.widget.destroy(),this.widget=null)},e.prototype.run=function(e){var t=this;this.widget&&(this.widget.destroy(),this.widget=null);var n=function(e){t.clearDecorations(),e&&t.lastKnownEditorSelection&&(t.editor.setSelection(t.lastKnownEditorSelection),t.editor.revealRangeInCenterIfOutsideViewport(t.lastKnownEditorSelection,0)),t.lastKnownEditorSelection=null,document.activeElement!==document.body&&e||t.editor.focus()};this.widget=new j$(this.editor,(function(){return n(!1)}),(function(){return n(!0)}),(function(n){t.widget.setInput(e.getModel(n),e.getAutoFocus(n))}),{inputAriaLabel:e.inputAriaLabel},this.themeService),this.lastKnownEditorSelection||(this.lastKnownEditorSelection=this.editor.getSelection()),this.widget.show("")},e.prototype.decorateLine=function(t,n){var i=[];this.rangeHighlightDecorationId&&(i.push(this.rangeHighlightDecorationId),this.rangeHighlightDecorationId=null);var o=[{range:t,options:e._RANGE_HIGHLIGHT_DECORATION}],r=n.deltaDecorations(i,o);this.rangeHighlightDecorationId=r[0]},e.prototype.clearDecorations=function(){this.rangeHighlightDecorationId&&(this.editor.deltaDecorations([this.rangeHighlightDecorationId],[]),this.rangeHighlightDecorationId=null)},e.ID="editor.controller.quickOpenController",e._RANGE_HIGHLIGHT_DECORATION=kv.register({className:"rangeHighlight",isWholeLine:!0}),e=K$([q$(1,fg)],e)}(),Z$=function(e){function t(t,n){var i=e.call(this,n)||this;return i._inputAriaLabel=t,i}return U$(t,e),t.prototype.getController=function(e){return G$.get(e)},t.prototype._show=function(e,t){e.run({inputAriaLabel:this._inputAriaLabel,getModel:function(e){return t.getModel(e)},getAutoFocus:function(e){return t.getAutoFocus(e)}})},t}(kf);Pf(G$.ID,G$);var Y$=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),X$=function(e){function t(t,n,i){var o=e.call(this)||this;return o.editor=n,o.decorator=i,o.parseResult=o.parseInput(t),o}return Y$(t,e),t.prototype.parseInput=function(e){var t,n,i=e.split(",").map((function(e){return parseInt(e,10)})).filter((function(e){return!isNaN(e)}));if(t=0===i.length?new bn(-1,-1):1===i.length?new bn(i[0],1):new bn(i[0],i[1]),Md(this.editor))n=this.editor.getModel();else{var o=this.editor.getModel();n=o?o.modified:null}var r=!!n&&n.validatePosition(t).equals(t);return{position:t,isValid:r,label:r?t.column&&t.column>1?pr(pp.gotoLineLabelValidLineAndColumn,t.lineNumber,t.column):pr(pp.gotoLineLabelValidLine,t.lineNumber):t.lineNumber<1||t.lineNumber>(n?n.getLineCount():0)?pr(pp.gotoLineLabelEmptyWithLineLimit,n?n.getLineCount():0):pr(pp.gotoLineLabelEmptyWithLineAndColumnLimit,n?n.getLineMaxColumn(t.lineNumber):0)}},t.prototype.getLabel=function(){return this.parseResult.label},t.prototype.getAriaLabel=function(){var e=this.editor.getPosition(),t=e?e.lineNumber:0;return pr(pp.gotoLineAriaLabel,t,this.parseResult.label)},t.prototype.run=function(e,t){return 1===e?this.runOpen():this.runPreview()},t.prototype.runOpen=function(){if(!this.parseResult.isValid)return!1;var e=this.toSelection();return this.editor.setSelection(e),this.editor.revealRangeInCenter(e,0),this.editor.focus(),!0},t.prototype.runPreview=function(){if(!this.parseResult.isValid)return this.decorator.clearDecorations(),!1;var e=this.toSelection();return this.editor.revealRangeInCenter(e,0),this.decorator.decorateLine(e,this.editor),!1},t.prototype.toSelection=function(){return new wn(this.parseResult.position.lineNumber,this.parseResult.position.column,this.parseResult.position.lineNumber,this.parseResult.position.column)},t}(XX);Tf(function(e){function t(){return e.call(this,pp.gotoLineActionInput,{id:"editor.action.gotoLine",label:pp.gotoLineActionLabel,alias:"Go to Line...",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:2085,mac:{primary:293},weight:100}})||this}return Y$(t,e),t.prototype.run=function(e,t){var n=this;this._show(this.getController(t),{getModel:function(e){return new e$([new X$(e,t,n.getController(t))])},getAutoFocus:function(e){return{autoFocusFirstEntry:e.length>0}}})},t}(Z$));var $$=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Q$=function(e){function t(t,n,i,o,r){var s=e.call(this)||this;return s.key=t,s.keyAriaLabel=n,s.setHighlights(i),s.action=o,s.editor=r,s}return $$(t,e),t.prototype.getLabel=function(){return this.action.label},t.prototype.getAriaLabel=function(){return this.keyAriaLabel?pr(gp.ariaLabelEntryWithKey,this.getLabel(),this.keyAriaLabel):pr(gp.ariaLabelEntry,this.getLabel())},t.prototype.getGroupLabel=function(){return this.key},t.prototype.run=function(e,t){var n=this;return 1===e&&(setTimeout((function(){n.editor.focus();try{(n.action.run()||Promise.resolve()).then(void 0,De)}catch(e){De(e)}}),50),!0)},t}($X);Tf(function(e){function t(){return e.call(this,gp.quickCommandActionInput,{id:"editor.action.quickCommand",label:gp.quickCommandActionLabel,alias:"Command Palette",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:Vn?571:59,weight:100},contextMenuOpts:{group:"z_commands",order:1}})||this}return $$(t,e),t.prototype.run=function(e,t){var n=this,i=e.get(XD);this._show(this.getController(t),{getModel:function(e){return new e$(n._editorActionsToEntries(i,t,e))},getAutoFocus:function(e){return{autoFocusFirstEntry:!0,autoFocusPrefixMatch:e}}})},t.prototype._sort=function(e,t){var n=(e.getLabel()||"").toLowerCase(),i=(t.getLabel()||"").toLowerCase();return n.localeCompare(i)},t.prototype._editorActionsToEntries=function(e,t,n){for(var i=[],o=0,r=t.getSupportedActions();o<r.length;o++){var s=r[o],a=e.lookupKeybinding(s.id);if(s.label){var u=$E(n,s.label);u&&i.push(new Q$(a&&a.getLabel()||"",a&&a.getAriaLabel()||"",u,s,t))}}return i=i.sort(this._sort)},t}(Z$));n(437);var J$=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),eQ=function(){function e(){}return e.prototype.remove=function(){this.parent&&delete this.parent.children[this.id]},e.findId=function(e,t){var n;"string"==typeof e?n=t.id+"/"+e:(n=t.id+"/"+e.name,void 0!==t.children[n]&&(n=t.id+"/"+e.name+"_"+e.range.startLineNumber+"_"+e.range.startColumn));for(var i=n,o=0;void 0!==t.children[i];o++)i=n+"_"+o;return i},e.empty=function(e){for(var t in e.children)return!1;return!0},e}(),tQ=function(e){function t(t,n,i){var o=e.call(this)||this;return o.id=t,o.parent=n,o.symbol=i,o.children=Object.create(null),o}return J$(t,e),t}(eQ),nQ=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r.id=t,r.parent=n,r.provider=i,r.providerIndex=o,r.children=Object.create(null),r}return J$(t,e),t}(eQ),iQ=function(){function e(){this._n=1,this._val=0}return e.prototype.update=function(e){return this._val=this._val+(e-this._val)/this._n,this._n+=1,this},e}(),oQ=function(e){function t(t){var n=e.call(this)||this;return n.textModel=t,n.id="root",n.parent=void 0,n._groups=Object.create(null),n.children=Object.create(null),n.id="root",n.parent=void 0,n}return J$(t,e),t.create=function(e,n){var i=this,o=this._keys.for(e,!0),r=t._requests.get(o);if(!r){var s=new ct;r={promiseCnt:0,source:s,promise:t._create(e,s.token),model:void 0},t._requests.set(o,r);var a=Date.now();r.promise.then((function(){var t=i._keys.for(e,!1),n=i._requestDurations.get(t);n||(n=new iQ,i._requestDurations.set(t,n)),n.update(Date.now()-a)}))}return r.model?Promise.resolve(r.model):(r.promiseCnt+=1,n.onCancellationRequested((function(){0==--r.promiseCnt&&(r.source.cancel(),t._requests.delete(o))})),new Promise((function(e,n){r.promise.then((function(t){r.model=t,e(t)}),(function(e){t._requests.delete(o),n(e)}))})))},t._create=function(e,n){var i=new ct(n),o=new t(e),r=Mu.ordered(e),s=r.map((function(e,n){var r=eQ.findId("provider_"+n,o),s=new nQ(r,o,e,n);return Promise.resolve(e.provideDocumentSymbols(o.textModel,i.token)).then((function(e){for(var n=0,i=e||[];n<i.length;n++){var o=i[n];t._makeOutlineElement(o,s)}return s}),(function(e){return Ne(e),s})).then((function(e){eQ.empty(e)?e.remove():o._groups[r]=e}))})),a=Mu.onDidChange((function(){xi(Mu.ordered(e),r)||i.cancel()}));return Promise.all(s).then((function(){return i.token.isCancellationRequested&&!n.isCancellationRequested?t._create(e,n):o._compact()})).finally((function(){a.dispose()}))},t._makeOutlineElement=function(e,n){var i=eQ.findId(e,n),o=new tQ(i,n,e);if(e.children)for(var r=0,s=e.children;r<s.length;r++){var a=s[r];t._makeOutlineElement(a,o)}n.children[o.id]=o},t.prototype._compact=function(){var e=0;for(var t in this._groups){void 0===$d((n=this._groups[t]).children)?delete this._groups[t]:e+=1}if(1!==e)this.children=this._groups;else{var n=$d(this._groups);for(var t in n.children){var i=n.children[t];i.parent=this,this.children[i.id]=i}}return this},t._requestDurations=new aa(50,.7),t._requests=new aa(9,.75),t._keys=new(function(){function e(){this._counter=1,this._data=new WeakMap}return e.prototype.for=function(e,t){return e.id+"/"+(t?e.getVersionId():"")+"/"+this._hash(Mu.all(e))},e.prototype._hash=function(e){for(var t="",n=0,i=e;n<i.length;n++){var o=i[n],r=this._data.get(o);void 0===r&&(r=this._counter++,this._data.set(o,r)),t+=r}return t},e}()),t}(eQ),rQ=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},sQ=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}};function aQ(e,t,n){return rQ(this,void 0,void 0,(function(){var i,o,r,s,a,u;return sQ(this,(function(l){switch(l.label){case 0:return[4,oQ.create(e,n)];case 1:for(i=l.sent(),o=[],r=0,s=Xd(i.children);r<s.length;r++)(a=s[r])instanceof tQ?o.push(a.symbol):o.push.apply(o,Xd(a.children).map((function(e){return e.symbol})));return u=[],n.isCancellationRequested?[2,u]:(t?function e(t,n,i){for(var o=0,r=n;o<r.length;o++){var s=r[o];t.push({kind:s.kind,tags:s.tags,name:s.name,detail:s.detail,containerName:s.containerName||i,range:s.range,selectionRange:s.selectionRange,children:void 0}),s.children&&e(t,s.children,s.name)}}(u,o,""):u=o,[2,u.sort(uQ)])}}))}))}function uQ(e,t){return wn.compareRangesUsingStarts(e.range,t.range)}ca.registerCommand("_executeDocumentSymbolProvider",(function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];return rQ(this,void 0,void 0,(function(){var n,i,o;return sQ(this,(function(r){switch(r.label){case 0:return n=t[0],zs(Et.isUri(n)),(i=e.get(du).getModel(n))?[2,aQ(i,!1,et.None)]:[4,e.get(tl).createModelReference(n)];case 1:o=r.sent(),r.label=2;case 2:return r.trys.push([2,,4,5]),[4,aQ(o.object.textEditorModel,!1,et.None)];case 3:return[2,r.sent()];case 4:return o.dispose(),[7];case 5:return[2]}}))}))}));var lQ=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),cQ=function(e){function t(t,n,i,o,r,s,a){var u=e.call(this)||this;return u.name=t,u.type=n,u.description=i,u.range=o,u.setHighlights(r),u.editor=s,u.decorator=a,u}return lQ(t,e),t.prototype.getLabel=function(){return this.name},t.prototype.getAriaLabel=function(){return pr(vp.entryAriaLabel,this.name)},t.prototype.getIcon=function(){return this.type},t.prototype.getDescription=function(){return this.description},t.prototype.getType=function(){return this.type},t.prototype.getRange=function(){return this.range},t.prototype.run=function(e,t){return 1===e?this.runOpen(t):this.runPreview()},t.prototype.runOpen=function(e){var t=this.toSelection();return this.editor.setSelection(t),this.editor.revealRangeInCenter(t,0),this.editor.focus(),!0},t.prototype.runPreview=function(){var e=this.toSelection();return this.editor.revealRangeInCenter(e,0),this.decorator.decorateLine(this.range,this.editor),!1},t.prototype.toSelection=function(){return new wn(this.range.startLineNumber,this.range.startColumn||1,this.range.startLineNumber,this.range.startColumn||1)},t}($X);Tf(function(e){function t(){return e.call(this,vp.quickOutlineActionInput,{id:"editor.action.quickOutline",label:vp.quickOutlineActionLabel,alias:"Go to Symbol...",precondition:eC.hasDocumentSymbolProvider,kbOpts:{kbExpr:eC.focus,primary:3117,weight:100},contextMenuOpts:{group:"navigation",order:3}})||this}return lQ(t,e),t.prototype.run=function(e,t){var n=this;if(t.hasModel()){var i=t.getModel();if(Mu.has(i))return aQ(i,!0,et.None).then((function(e){0!==e.length&&n._run(t,e)}))}},t.prototype._run=function(e,t){var n=this;this._show(this.getController(e),{getModel:function(i){return new e$(n.toQuickOpenEntries(e,t,i))},getAutoFocus:function(e){return 0===e.indexOf(":")&&(e=e.substr(":".length)),{autoFocusPrefixMatch:e,autoFocusFirstEntry:!!e}}})},t.prototype.symbolEntry=function(e,t,n,i,o,r,s){return new cQ(e,t,n,wn.lift(i),o,r,s)},t.prototype.toQuickOpenEntries=function(e,t,n){var i,o,r=this.getController(e),s=[],a=n;0===n.indexOf(":")&&(a=a.substr(":".length));for(var u=0,l=t;u<l.length;u++){var c=l[u],d=(i=c.name,void 0===(o=void 0)&&(o=" "),mr(function(e,t){if(!e||!t)return e;var n=t.length;if(0===n||0===e.length)return e;for(var i=0;e.indexOf(t,i)===i;)i+=n;return e.substring(i)}(i,o),o)),h=$E(a,d);if(h){var p=void 0;c.containerName&&(p=c.containerName),s.push(this.symbolEntry(d,vu.toCssClassName(c.kind),p,c.range,h,e,r))}}if(n&&(s=0===n.indexOf(":")?s.sort(this.sortScoped.bind(this,n.toLowerCase())):s.sort(this.sortNormal.bind(this,n.toLowerCase()))),s.length>0&&0===n.indexOf(":")){for(var f=null,g=null,m=0,v=0;v<s.length;v++){var _=s[v];f!==_.getType()?(g&&g.setGroupLabel(this.typeToLabel(f||"",m)),f=_.getType(),g=_,m=1,_.setShowBorder(v>0)):m++}g&&g.setGroupLabel(this.typeToLabel(f||"",m))}else s.length>0&&s[0].setGroupLabel(pr(vp._symbols_,s.length));return s},t.prototype.typeToLabel=function(e,t){switch(e){case"module":return pr(vp._modules_,t);case"class":return pr(vp._class_,t);case"interface":return pr(vp._interface_,t);case"method":return pr(vp._method_,t);case"function":return pr(vp._function_,t);case"property":return pr(vp._property_,t);case"variable":return pr(vp._variable_,t);case"var":return pr(vp._variable2_,t);case"constructor":return pr(vp._constructor_,t);case"call":return pr(vp._call_,t)}return e},t.prototype.sortNormal=function(e,t,n){var i=t.getLabel().toLowerCase(),o=n.getLabel().toLowerCase(),r=i.localeCompare(o);if(0!==r)return r;var s=t.getRange(),a=n.getRange();return s.startLineNumber-a.startLineNumber},t.prototype.sortScoped=function(e,t,n){e=e.substr(":".length);var i=t.getType(),o=n.getType(),r=i.localeCompare(o);if(0!==r)return r;if(e){var s=t.getLabel().toLowerCase(),a=n.getLabel().toLowerCase(),u=s.localeCompare(a);if(0!==u)return u}var l=t.getRange(),c=n.getRange();return l.startLineNumber-c.startLineNumber},t}(Z$));var dQ=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),hQ=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},pQ=function(e,t){return function(n,i){t(n,i,e)}},fQ=function(e){function t(t,n,i,o,r,s,a){return e.call(this,!0,t,n,i,o,r,s,a)||this}return dQ(t,e),t=hQ([pQ(1,qh),pQ(2,Pn),pQ(3,ap),pQ(4,In),pQ(5,FM),pQ(6,wh)],t)}(Dz);Pf(Dz.ID,fQ);var gQ=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Tf(function(e){function t(){var t=e.call(this,{id:"editor.action.toggleHighContrast",label:wp.toggleHighContrast,alias:"Toggle High Contrast Theme",precondition:void 0})||this;return t._originalThemeName=null,t}return gQ(t,e),t.prototype.run=function(e,t){var n=e.get(YD);this._originalThemeName?(n.setTheme(this._originalThemeName),this._originalThemeName=null):(this._originalThemeName=n.getTheme().themeName,n.setTheme("hc-black"))},t}(kf))}}]); \ No newline at end of file + */e.exports=function(e){for(var t=arguments,n=1;n<arguments.length;n++)for(var i in arguments[n])e[i]=t[n][i];return e}},369:function(e,t,n){(function(){"use strict";function e(e){var t=this.constructor;return this.then((function(n){return t.resolve(e()).then((function(){return n}))}),(function(n){return t.resolve(e()).then((function(){return t.reject(n)}))}))}var t=setTimeout;function n(){}function i(e){if(!(this instanceof i))throw new TypeError("Promises must be constructed via new");if("function"!=typeof e)throw new TypeError("not a function");this._state=0,this._handled=!1,this._value=void 0,this._deferreds=[],l(e,this)}function o(e,t){for(;3===e._state;)e=e._value;0!==e._state?(e._handled=!0,i._immediateFn((function(){var n=1===e._state?t.onFulfilled:t.onRejected;if(null!==n){var i;try{i=n(e._value)}catch(e){return void s(t.promise,e)}r(t.promise,i)}else(1===e._state?r:s)(t.promise,e._value)}))):e._deferreds.push(t)}function r(e,t){try{if(t===e)throw new TypeError("A promise cannot be resolved with itself.");if(t&&("object"==typeof t||"function"==typeof t)){var n=t.then;if(t instanceof i)return e._state=3,e._value=t,void a(e);if("function"==typeof n)return void l((o=n,r=t,function(){o.apply(r,arguments)}),e)}e._state=1,e._value=t,a(e)}catch(t){s(e,t)}var o,r}function s(e,t){e._state=2,e._value=t,a(e)}function a(e){2===e._state&&0===e._deferreds.length&&i._immediateFn((function(){e._handled||i._unhandledRejectionFn(e._value)}));for(var t=0,n=e._deferreds.length;t<n;t++)o(e,e._deferreds[t]);e._deferreds=null}function u(e,t,n){this.onFulfilled="function"==typeof e?e:null,this.onRejected="function"==typeof t?t:null,this.promise=n}function l(e,t){var n=!1;try{e((function(e){n||(n=!0,r(t,e))}),(function(e){n||(n=!0,s(t,e))}))}catch(e){if(n)return;n=!0,s(t,e)}}i.prototype.catch=function(e){return this.then(null,e)},i.prototype.then=function(e,t){var i=new this.constructor(n);return o(this,new u(e,t,i)),i},i.prototype.finally=e,i.all=function(e){return new i((function(t,n){if(!e||void 0===e.length)throw new TypeError("Promise.all accepts an array");var i=Array.prototype.slice.call(e);if(0===i.length)return t([]);var o=i.length;function r(e,s){try{if(s&&("object"==typeof s||"function"==typeof s)){var a=s.then;if("function"==typeof a)return void a.call(s,(function(t){r(e,t)}),n)}i[e]=s,0==--o&&t(i)}catch(e){n(e)}}for(var s=0;s<i.length;s++)r(s,i[s])}))},i.resolve=function(e){return e&&"object"==typeof e&&e.constructor===i?e:new i((function(t){t(e)}))},i.reject=function(e){return new i((function(t,n){n(e)}))},i.race=function(e){return new i((function(t,n){for(var i=0,o=e.length;i<o;i++)e[i].then(t,n)}))},i._immediateFn="function"==typeof setImmediate&&function(e){setImmediate(e)}||function(e){t(e,0)},i._unhandledRejectionFn=function(e){"undefined"!=typeof console&&console&&console.warn("Possible Unhandled Promise Rejection:",e)};var c=function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if("undefined"!=typeof global)return global;throw new Error("unable to locate global object")}();"Promise"in c?c.Promise.prototype.finally||(c.Promise.prototype.finally=e):c.Promise=i})()},370:function(e,t,n){},371:function(e,t,n){},372:function(e,t,n){},373:function(e,t,n){},374:function(e,t,n){},375:function(e,t,n){},376:function(e,t,n){},377:function(e,t,n){},378:function(e,t,n){},379:function(e,t,n){},380:function(e,t,n){},381:function(e,t,n){},382:function(e,t,n){},383:function(e,t,n){},384:function(e,t,n){},385:function(e,t,n){},386:function(e,t,n){},387:function(e,t,n){},388:function(e,t,n){},389:function(e,t,n){},390:function(e,t,n){},391:function(e,t,n){},392:function(e,t,n){},393:function(e,t,n){},394:function(e,t,n){},395:function(e,t,n){},396:function(e,t,n){},397:function(e,t,n){},398:function(e,t,n){},399:function(e,t,n){},400:function(e,t,n){},401:function(e,t,n){},402:function(e,t,n){},403:function(e,t,n){},404:function(e,t,n){},405:function(e,t,n){},406:function(e,t,n){},407:function(e,t,n){},408:function(e,t,n){},409:function(e,t,n){},410:function(e,t,n){},411:function(e,t,n){},412:function(e,t,n){},413:function(e,t,n){},414:function(e,t,n){},415:function(e,t,n){},416:function(e,t,n){},417:function(e,t,n){},418:function(e,t,n){},419:function(e,t,n){},420:function(e,t,n){},421:function(e,t,n){},422:function(e,t,n){},423:function(e,t,n){},424:function(e,t,n){},425:function(e,t,n){},426:function(e,t,n){},427:function(e,t,n){},428:function(e,t,n){},429:function(e,t,n){},430:function(e,t,n){},431:function(e,t,n){},432:function(e,t,n){},433:function(e,t,n){},434:function(e,t,n){},435:function(e,t,n){},436:function(e,t,n){},437:function(e,t,n){},442:function(e,t,n){"use strict";n.r(t),n.d(t,"CancellationTokenSource",(function(){return hP})),n.d(t,"Emitter",(function(){return pP})),n.d(t,"KeyCode",(function(){return fP})),n.d(t,"KeyMod",(function(){return gP})),n.d(t,"Position",(function(){return mP})),n.d(t,"Range",(function(){return vP})),n.d(t,"Selection",(function(){return _P})),n.d(t,"SelectionDirection",(function(){return yP})),n.d(t,"MarkerSeverity",(function(){return bP})),n.d(t,"MarkerTag",(function(){return wP})),n.d(t,"Uri",(function(){return CP})),n.d(t,"Token",(function(){return SP})),n.d(t,"editor",(function(){return LP})),n.d(t,"languages",(function(){return xP}));var i={};function o(e,t){return 0===t.length?e:e.replace(/\{(\d+)\}/g,(function(e,n){var i=n[0];return void 0!==t[i]?t[i]:e}))}function r(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return o(t,n)}n.r(i),n.d(i,"win32",(function(){return ds})),n.d(i,"posix",(function(){return hs})),n.d(i,"normalize",(function(){return ps})),n.d(i,"join",(function(){return fs})),n.d(i,"relative",(function(){return gs})),n.d(i,"dirname",(function(){return ms})),n.d(i,"basename",(function(){return vs})),n.d(i,"extname",(function(){return _s})),n.d(i,"sep",(function(){return ys}));var s=!1,a=!1,u=!1,l=!1,c=!1,d=!1,h=void 0,p="undefined"!=typeof process&&void 0!==process.versions&&void 0!==process.versions.electron&&"renderer"===process.type;if("object"!=typeof navigator||p){if("object"==typeof process){s="win32"===process.platform,a="darwin"===process.platform,u="linux"===process.platform,"en","en";var f=process.env.VSCODE_NLS_CONFIG;if(f)try{var g=JSON.parse(f),m=g.availableLanguages["*"];g.locale,m||"en",g._translationsConfigFile}catch(e){}l=!0}}else s=(h=navigator.userAgent).indexOf("Windows")>=0,a=h.indexOf("Macintosh")>=0,d=h.indexOf("Macintosh")>=0&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,u=h.indexOf("Linux")>=0,c=!0,navigator.language;var v=s,_=a,y=u,b=l,w=c,C=d,S="object"==typeof self?self:"object"==typeof global?global:{},L=function(){if(S.setImmediate)return S.setImmediate.bind(S);if("function"==typeof S.postMessage&&!S.importScripts){var e=[];S.addEventListener("message",(function(t){if(t.data&&t.data.vscodeSetImmediateId)for(var n=0,i=e.length;n<i;n++){var o=e[n];if(o.id===t.data.vscodeSetImmediateId)return e.splice(n,1),void o.callback()}}));var t=0;return function(n){var i=++t;e.push({id:i,callback:n}),S.postMessage({vscodeSetImmediateId:i},"*")}}if("undefined"!=typeof process&&"function"==typeof process.nextTick)return process.nextTick.bind(process);var n=Promise.resolve();return function(e){return n.then(e)}}(),x=a?2:s?1:3;var D=function(e){void 0===e&&(e="");for(var t="(-?\\d*\\.\\d\\w*)|([^",n=0;n<"`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?".length;n++){var i="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?"[n];e.indexOf(i)>=0||(t+="\\"+i)}return t+="\\s]+)",new RegExp(t,"g")}();function N(e){var t=D;if(e&&e instanceof RegExp)if(e.global)t=e;else{var n="g";e.ignoreCase&&(n+="i"),e.multiline&&(n+="m"),e.unicode&&(n+="u"),t=new RegExp(e.source,n)}return t.lastIndex=0,t}function k(e,t,n,i){t.lastIndex=0;var o=t.exec(n);if(!o)return null;var r=o[0].indexOf(" ")>=0?function(e,t,n,i){var o,r=e-1-i;for(t.lastIndex=0;o=t.exec(n);){var s=o.index||0;if(s>r)return null;if(t.lastIndex>=r)return{word:o[0],startColumn:i+1+s,endColumn:i+1+t.lastIndex}}return null}(e,t,n,i):function(e,t,n,i){var o,r=e-1-i,s=n.lastIndexOf(" ",r-1)+1;for(t.lastIndex=s;o=t.exec(n);){var a=o.index||0;if(a<=r&&t.lastIndex>=r)return{word:o[0],startColumn:i+1+a,endColumn:i+1+t.lastIndex}}return null}(e,t,n,i);return t.lastIndex=0,r}var E,I=(E=function(e,t){return(E=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)},function(e,t){function n(){this.constructor=e}E(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),O=function(){return(O=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},M=function(){function e(e){this._values=e}return e.prototype.hasChanged=function(e){return this._values[e]},e}(),T=function(){function e(){this._values=[]}return e.prototype._read=function(e){return this._values[e]},e.prototype.get=function(e){return this._values[e]},e.prototype._write=function(e,t){this._values[e]=t},e}(),P=function(){function e(e,t,n,i){this.id=e,this.name=t,this.defaultValue=n,this.schema=i}return e.prototype.compute=function(e,t,n){return n},e}(),R=function(){function e(e,t){void 0===t&&(t=null),this.schema=void 0,this.id=e,this.name="_never_",this.defaultValue=void 0,this.deps=t}return e.prototype.validate=function(e){return this.defaultValue},e}(),A=function(){function e(e,t,n,i){this.id=e,this.name=t,this.defaultValue=n,this.schema=i}return e.prototype.validate=function(e){return void 0===e?this.defaultValue:e},e.prototype.compute=function(e,t,n){return n},e}(),F=function(e){function t(t,n,i,o){void 0===o&&(o=void 0);return void 0!==o&&(o.type="boolean",o.default=i),e.call(this,t,n,i,o)||this}return I(t,e),t.boolean=function(e,t){return void 0===e?t:"false"!==e&&Boolean(e)},t.prototype.validate=function(e){return t.boolean(e,this.defaultValue)},t}(A),W=function(e){function t(t,n,i,o,r,s){void 0===s&&(s=void 0);var a=this;return void 0!==s&&(s.type="integer",s.default=i,s.minimum=o,s.maximum=r),(a=e.call(this,t,n,i,s)||this).minimum=o,a.maximum=r,a}return I(t,e),t.clampedInt=function(e,t,n,i){var o;return void 0===e?o=t:(o=parseInt(e,10),isNaN(o)&&(o=t)),o=Math.max(n,o),0|(o=Math.min(i,o))},t.prototype.validate=function(e){return t.clampedInt(e,this.defaultValue,this.minimum,this.maximum)},t}(A),V=function(e){function t(t,n,i,o,r){var s=this;return void 0!==r&&(r.type="number",r.default=i),(s=e.call(this,t,n,i,r)||this).validationFn=o,s}return I(t,e),t.clamp=function(e,t,n){return e<t?t:e>n?n:e},t.float=function(e,t){if("number"==typeof e)return e;if(void 0===e)return t;var n=parseFloat(e);return isNaN(n)?t:n},t.prototype.validate=function(e){return this.validationFn(t.float(e,this.defaultValue))},t}(A),B=function(e){function t(t,n,i,o){void 0===o&&(o=void 0);return void 0!==o&&(o.type="string",o.default=i),e.call(this,t,n,i,o)||this}return I(t,e),t.string=function(e,t){return"string"!=typeof e?t:e},t.prototype.validate=function(e){return t.string(e,this.defaultValue)},t}(A),H=function(e){function t(t,n,i,o,r){void 0===r&&(r=void 0);var s=this;return void 0!==r&&(r.type="string",r.enum=o,r.default=i),(s=e.call(this,t,n,i,r)||this)._allowedValues=o,s}return I(t,e),t.stringSet=function(e,t,n){return"string"!=typeof e||-1===n.indexOf(e)?t:e},t.prototype.validate=function(e){return t.stringSet(e,this.defaultValue,this._allowedValues)},t}(A),z=function(e){function t(t,n,i,o,r,s,a){void 0===a&&(a=void 0);var u=this;return void 0!==a&&(a.type="string",a.enum=r,a.default=o),(u=e.call(this,t,n,i,a)||this)._allowedValues=r,u._convert=s,u}return I(t,e),t.prototype.validate=function(e){return"string"!=typeof e||-1===this._allowedValues.indexOf(e)?this.defaultValue:this._convert(e)},t}(P);var j,U=function(e){function t(){return e.call(this,2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[r("accessibilitySupport.auto","The editor will use platform APIs to detect when a Screen Reader is attached."),r("accessibilitySupport.on","The editor will be permanently optimized for usage with a Screen Reader."),r("accessibilitySupport.off","The editor will never be optimized for usage with a Screen Reader.")],default:"auto",description:r("accessibilitySupport","Controls whether the editor should run in a mode where it is optimized for screen readers.")})||this}return I(t,e),t.prototype.validate=function(e){switch(e){case"auto":return 0;case"off":return 1;case"on":return 2}return this.defaultValue},t.prototype.compute=function(e,t,n){return 0===n?e.accessibilitySupport:n},t}(P),K=function(e){function t(){var t={insertSpace:!0};return e.call(this,13,"comments",t,{"editor.comments.insertSpace":{type:"boolean",default:t.insertSpace,description:r("comments.insertSpace","Controls whether a space character is inserted when commenting.")}})||this}return I(t,e),t.prototype.validate=function(e){if("object"!=typeof e)return this.defaultValue;var t=e;return{insertSpace:F.boolean(t.insertSpace,this.defaultValue.insertSpace)}},t}(P);!function(e){e[e.Line=1]="Line",e[e.Block=2]="Block",e[e.Underline=3]="Underline",e[e.LineThin=4]="LineThin",e[e.BlockOutline=5]="BlockOutline",e[e.UnderlineThin=6]="UnderlineThin"}(j||(j={}));var q=function(e){function t(){return e.call(this,104,[55,26])||this}return I(t,e),t.prototype.compute=function(e,t,n){var i="monaco-editor";return t.get(26)&&(i+=" "+t.get(26)),e.extraEditorClassName&&(i+=" "+e.extraEditorClassName),"default"===t.get(55)?i+=" mouse-default":"copy"===t.get(55)&&(i+=" mouse-copy"),t.get(85)&&(i+=" showUnused"),i},t}(R),G=function(e){function t(){return e.call(this,25,"emptySelectionClipboard",!0,{description:r("emptySelectionClipboard","Controls whether copying without a selection copies the current line.")})||this}return I(t,e),t.prototype.compute=function(e,t,n){return n&&e.emptySelectionClipboard},t}(F),Z=function(e){function t(){var t={seedSearchStringFromSelection:!0,autoFindInSelection:"never",globalFindClipboard:!1,addExtraSpaceOnTop:!0};return e.call(this,28,"find",t,{"editor.find.seedSearchStringFromSelection":{type:"boolean",default:t.seedSearchStringFromSelection,description:r("find.seedSearchStringFromSelection","Controls whether the search string in the Find Widget is seeded from the editor selection.")},"editor.find.autoFindInSelection":{type:"string",enum:["never","always","multiline"],default:t.autoFindInSelection,enumDescriptions:[r("editor.find.autoFindInSelection.never","Never turn on Find in selection automatically (default)"),r("editor.find.autoFindInSelection.always","Always turn on Find in selection automatically"),r("editor.find.autoFindInSelection.multiline","Turn on Find in selection automatically when multiple lines of content are selected.")],description:r("find.autoFindInSelection","Controls whether the find operation is carried out on selected text or the entire file in the editor.")},"editor.find.globalFindClipboard":{type:"boolean",default:t.globalFindClipboard,description:r("find.globalFindClipboard","Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:_},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:t.addExtraSpaceOnTop,description:r("find.addExtraSpaceOnTop","Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.")}})||this}return I(t,e),t.prototype.validate=function(e){if("object"!=typeof e)return this.defaultValue;var t=e;return{seedSearchStringFromSelection:F.boolean(t.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection),autoFindInSelection:"boolean"==typeof e.autoFindInSelection?e.autoFindInSelection?"always":"never":H.stringSet(t.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:F.boolean(t.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:F.boolean(t.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop)}},t}(P),Y=function(e){function t(){return e.call(this,35,"fontLigatures",t.OFF,{anyOf:[{type:"boolean",description:r("fontLigatures","Enables/Disables font ligatures.")},{type:"string",description:r("fontFeatureSettings","Explicit font-feature-settings.")}],description:r("fontLigaturesGeneral","Configures font ligatures."),default:!1})||this}return I(t,e),t.prototype.validate=function(e){return void 0===e?this.defaultValue:"string"==typeof e?"false"===e?t.OFF:"true"===e?t.ON:e:Boolean(e)?t.ON:t.OFF},t.OFF='"liga" off, "calt" off',t.ON='"liga" on, "calt" on',t}(P),X=function(e){function t(){return e.call(this,34)||this}return I(t,e),t.prototype.compute=function(e,t,n){return e.fontInfo},t}(R),$=function(e){function t(){return e.call(this,36,"fontSize",ge.fontSize,{type:"number",minimum:6,maximum:100,default:ge.fontSize,description:r("fontSize","Controls the font size in pixels.")})||this}return I(t,e),t.prototype.validate=function(e){var t=V.float(e,this.defaultValue);return 0===t?ge.fontSize:V.clamp(t,6,100)},t.prototype.compute=function(e,t,n){return e.fontInfo.fontSize},t}(A),Q=function(e){function t(){var t={multiple:"peek",multipleDefinitions:"peek",multipleTypeDefinitions:"peek",multipleDeclarations:"peek",multipleImplementations:"peek",multipleReferences:"peek",alternativeDefinitionCommand:"editor.action.goToReferences",alternativeTypeDefinitionCommand:"editor.action.goToReferences",alternativeDeclarationCommand:"editor.action.goToReferences",alternativeImplementationCommand:"",alternativeReferenceCommand:""},n={type:"string",enum:["peek","gotoAndPeek","goto"],default:t.multiple,enumDescriptions:[r("editor.gotoLocation.multiple.peek","Show peek view of the results (default)"),r("editor.gotoLocation.multiple.gotoAndPeek","Go to the primary result and show a peek view"),r("editor.gotoLocation.multiple.goto","Go to the primary result and enable peek-less navigation to others")]};return e.call(this,41,"gotoLocation",t,{"editor.gotoLocation.multiple":{deprecationMessage:r("editor.gotoLocation.multiple.deprecated","This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.")},"editor.gotoLocation.multipleDefinitions":O({description:r("editor.editor.gotoLocation.multipleDefinitions","Controls the behavior the 'Go to Definition'-command when multiple target locations exist.")},n),"editor.gotoLocation.multipleTypeDefinitions":O({description:r("editor.editor.gotoLocation.multipleTypeDefinitions","Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist.")},n),"editor.gotoLocation.multipleDeclarations":O({description:r("editor.editor.gotoLocation.multipleDeclarations","Controls the behavior the 'Go to Declaration'-command when multiple target locations exist.")},n),"editor.gotoLocation.multipleImplementations":O({description:r("editor.editor.gotoLocation.multipleImplemenattions","Controls the behavior the 'Go to Implementations'-command when multiple target locations exist.")},n),"editor.gotoLocation.multipleReferences":O({description:r("editor.editor.gotoLocation.multipleReferences","Controls the behavior the 'Go to References'-command when multiple target locations exist.")},n),"editor.gotoLocation.alternativeDefinitionCommand":{type:"string",default:t.alternativeDefinitionCommand,description:r("alternativeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Definition' is the current location.")},"editor.gotoLocation.alternativeTypeDefinitionCommand":{type:"string",default:t.alternativeTypeDefinitionCommand,description:r("alternativeTypeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Type Definition' is the current location.")},"editor.gotoLocation.alternativeDeclarationCommand":{type:"string",default:t.alternativeDeclarationCommand,description:r("alternativeDeclarationCommand","Alternative command id that is being executed when the result of 'Go to Declaration' is the current location.")},"editor.gotoLocation.alternativeImplementationCommand":{type:"string",default:t.alternativeImplementationCommand,description:r("alternativeImplementationCommand","Alternative command id that is being executed when the result of 'Go to Implementation' is the current location.")},"editor.gotoLocation.alternativeReferenceCommand":{type:"string",default:t.alternativeReferenceCommand,description:r("alternativeReferenceCommand","Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})||this}return I(t,e),t.prototype.validate=function(e){var t,n,i,o,r;if("object"!=typeof e)return this.defaultValue;var s=e;return{multiple:H.stringSet(s.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:null!==(t=s.multipleDefinitions)&&void 0!==t?t:H.stringSet(s.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:null!==(n=s.multipleTypeDefinitions)&&void 0!==n?n:H.stringSet(s.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:null!==(i=s.multipleDeclarations)&&void 0!==i?i:H.stringSet(s.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:null!==(o=s.multipleImplementations)&&void 0!==o?o:H.stringSet(s.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:null!==(r=s.multipleReferences)&&void 0!==r?r:H.stringSet(s.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:B.string(s.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:B.string(s.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:B.string(s.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:B.string(s.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:B.string(s.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand)}},t}(P),J=function(e){function t(){var t={enabled:!0,delay:300,sticky:!0};return e.call(this,44,"hover",t,{"editor.hover.enabled":{type:"boolean",default:t.enabled,description:r("hover.enabled","Controls whether the hover is shown.")},"editor.hover.delay":{type:"number",default:t.delay,description:r("hover.delay","Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:t.sticky,description:r("hover.sticky","Controls whether the hover should remain visible when mouse is moved over it.")}})||this}return I(t,e),t.prototype.validate=function(e){if("object"!=typeof e)return this.defaultValue;var t=e;return{enabled:F.boolean(t.enabled,this.defaultValue.enabled),delay:W.clampedInt(t.delay,this.defaultValue.delay,0,1e4),sticky:F.boolean(t.sticky,this.defaultValue.sticky)}},t}(P),ee=function(e){function t(){return e.call(this,107,[40,48,30,54,78,50])||this}return I(t,e),t.prototype.compute=function(e,n,i){return t.computeLayout(n,{outerWidth:e.outerWidth,outerHeight:e.outerHeight,lineHeight:e.fontInfo.lineHeight,lineNumbersDigitCount:e.lineNumbersDigitCount,typicalHalfwidthCharacterWidth:e.fontInfo.typicalHalfwidthCharacterWidth,maxDigitWidth:e.fontInfo.maxDigitWidth,pixelRatio:e.pixelRatio})},t.computeLayout=function(e,t){var n,i=0|t.outerWidth,o=0|t.outerHeight,r=0|t.lineHeight,s=0|t.lineNumbersDigitCount,a=t.typicalHalfwidthCharacterWidth,u=t.maxDigitWidth,l=t.pixelRatio,c=e.get(40),d=0!==e.get(50).renderType,h=0|e.get(51),p=e.get(54),f=p.enabled,g=p.side,m=p.renderCharacters,v=l>=2?Math.round(2*p.scale):p.scale,_=0|p.maxColumn,y=e.get(78),b=0|y.verticalScrollbarSize,w=y.verticalHasArrows,C=0|y.arrowSize,S=0|y.horizontalScrollbarSize,L=e.get(48),x=e.get(30);if("string"==typeof L&&/^\d+(\.\d+)?ch$/.test(L)){var D=parseFloat(L.substr(0,L.length-2));n=W.clampedInt(D*a,0,0,1e3)}else n=W.clampedInt(L,0,0,1e3);x&&(n+=16);var N=0;if(d){var k=Math.max(s,h);N=Math.round(k*u)}var E=0;c&&(E=r);var I,O,M,T,P=0,R=P+E,A=R+N,F=A+n,V=i-E-N-n;if(f){var B=v/l;I=m?1:2,(M=Math.max(0,Math.floor((V-b-2)*B/(a+B)))+8)/B>_&&(M=Math.floor(_*B)),T=V-M,"left"===g?(O=0,P+=M,R+=M,A+=M,F+=M):O=i-M-b}else O=0,M=0,I=0,T=V;var H=w?C:0;return{width:i,height:o,glyphMarginLeft:P,glyphMarginWidth:E,lineNumbersLeft:R,lineNumbersWidth:N,decorationsLeft:A,decorationsWidth:n,contentLeft:F,contentWidth:T,renderMinimap:I,minimapLeft:O,minimapWidth:M,viewportColumn:Math.max(1,Math.floor((T-b-2)/a)),verticalScrollbarWidth:b,horizontalScrollbarHeight:S,overviewRuler:{top:H,width:b,height:o-2*H,right:0}}},t}(R),te=function(e){function t(){var t={enabled:!0};return e.call(this,47,"lightbulb",t,{"editor.lightbulb.enabled":{type:"boolean",default:t.enabled,description:r("codeActions","Enables the code action lightbulb in the editor.")}})||this}return I(t,e),t.prototype.validate=function(e){if("object"!=typeof e)return this.defaultValue;var t=e;return{enabled:F.boolean(t.enabled,this.defaultValue.enabled)}},t}(P),ne=function(e){function t(){return e.call(this,49,"lineHeight",ge.lineHeight,0,150,{description:r("lineHeight","Controls the line height. Use 0 to compute the line height from the font size.")})||this}return I(t,e),t.prototype.compute=function(e,t,n){return e.fontInfo.lineHeight},t}(W),ie=function(e){function t(){var t={enabled:!0,side:"right",showSlider:"mouseover",renderCharacters:!0,maxColumn:120,scale:1};return e.call(this,54,"minimap",t,{"editor.minimap.enabled":{type:"boolean",default:t.enabled,description:r("minimap.enabled","Controls whether the minimap is shown.")},"editor.minimap.side":{type:"string",enum:["left","right"],default:t.side,description:r("minimap.side","Controls the side where to render the minimap.")},"editor.minimap.showSlider":{type:"string",enum:["always","mouseover"],default:t.showSlider,description:r("minimap.showSlider","Controls when the minimap slider is shown.")},"editor.minimap.scale":{type:"number",default:t.scale,minimum:1,maximum:3,description:r("minimap.scale","Scale of content drawn in the minimap.")},"editor.minimap.renderCharacters":{type:"boolean",default:t.renderCharacters,description:r("minimap.renderCharacters","Render the actual characters on a line as opposed to color blocks.")},"editor.minimap.maxColumn":{type:"number",default:t.maxColumn,description:r("minimap.maxColumn","Limit the width of the minimap to render at most a certain number of columns.")}})||this}return I(t,e),t.prototype.validate=function(e){if("object"!=typeof e)return this.defaultValue;var t=e;return{enabled:F.boolean(t.enabled,this.defaultValue.enabled),side:H.stringSet(t.side,this.defaultValue.side,["right","left"]),showSlider:H.stringSet(t.showSlider,this.defaultValue.showSlider,["always","mouseover"]),renderCharacters:F.boolean(t.renderCharacters,this.defaultValue.renderCharacters),scale:W.clampedInt(t.scale,1,1,3),maxColumn:W.clampedInt(t.maxColumn,this.defaultValue.maxColumn,1,1e4)}},t}(P);var oe=function(e){function t(){var t={enabled:!0,cycle:!1};return e.call(this,64,"parameterHints",t,{"editor.parameterHints.enabled":{type:"boolean",default:t.enabled,description:r("parameterHints.enabled","Enables a pop-up that shows parameter documentation and type information as you type.")},"editor.parameterHints.cycle":{type:"boolean",default:t.cycle,description:r("parameterHints.cycle","Controls whether the parameter hints menu cycles or closes when reaching the end of the list.")}})||this}return I(t,e),t.prototype.validate=function(e){if("object"!=typeof e)return this.defaultValue;var t=e;return{enabled:F.boolean(t.enabled,this.defaultValue.enabled),cycle:F.boolean(t.cycle,this.defaultValue.cycle)}},t}(P),re=function(e){function t(){return e.call(this,105)||this}return I(t,e),t.prototype.compute=function(e,t,n){return e.pixelRatio},t}(R),se=function(e){function t(){var t=this,n={other:!0,comments:!1,strings:!1};return(t=e.call(this,66,"quickSuggestions",n,{anyOf:[{type:"boolean"},{type:"object",properties:{strings:{type:"boolean",default:n.strings,description:r("quickSuggestions.strings","Enable quick suggestions inside strings.")},comments:{type:"boolean",default:n.comments,description:r("quickSuggestions.comments","Enable quick suggestions inside comments.")},other:{type:"boolean",default:n.other,description:r("quickSuggestions.other","Enable quick suggestions outside of strings and comments.")}}}],default:n,description:r("quickSuggestions","Controls whether suggestions should automatically show up while typing.")})||this).defaultValue=n,t}return I(t,e),t.prototype.validate=function(e){if("boolean"==typeof e)return e;if("object"==typeof e){var t=e,n={other:F.boolean(t.other,this.defaultValue.other),comments:F.boolean(t.comments,this.defaultValue.comments),strings:F.boolean(t.strings,this.defaultValue.strings)};return!!(n.other&&n.comments&&n.strings)||!!(n.other||n.comments||n.strings)&&n}return this.defaultValue},t}(P),ae=function(e){function t(){return e.call(this,50,"lineNumbers",{renderType:1,renderFn:null},{type:"string",enum:["off","on","relative","interval"],enumDescriptions:[r("lineNumbers.off","Line numbers are not rendered."),r("lineNumbers.on","Line numbers are rendered as absolute number."),r("lineNumbers.relative","Line numbers are rendered as distance in lines to cursor position."),r("lineNumbers.interval","Line numbers are rendered every 10 lines.")],default:"on",description:r("lineNumbers","Controls the display of line numbers.")})||this}return I(t,e),t.prototype.validate=function(e){var t=this.defaultValue.renderType,n=this.defaultValue.renderFn;return void 0!==e&&("function"==typeof e?(t=4,n=e):t="interval"===e?3:"relative"===e?2:"on"===e?1:0),{renderType:t,renderFn:n}},t}(P);function ue(e){var t=e.get(73);return"editable"===t?e.get(68):"on"!==t}var le=function(e){function t(){var t=[];return e.call(this,77,"rulers",t,{type:"array",items:{type:"number"},default:t,description:r("rulers","Render vertical rulers after a certain number of monospace characters. Use multiple values for multiple rulers. No rulers are drawn if array is empty.")})||this}return I(t,e),t.prototype.validate=function(e){if(Array.isArray(e)){for(var t=[],n=0,i=e;n<i.length;n++){var o=i[n];t.push(W.clampedInt(o,0,0,1e4))}return t.sort((function(e,t){return e-t})),t}return this.defaultValue},t}(A);function ce(e,t){if("string"!=typeof e)return t;switch(e){case"hidden":return 2;case"visible":return 3;default:return 1}}var de=function(e){function t(){return e.call(this,78,"scrollbar",{vertical:1,horizontal:1,arrowSize:11,useShadows:!0,verticalHasArrows:!1,horizontalHasArrows:!1,horizontalScrollbarSize:10,horizontalSliderSize:10,verticalScrollbarSize:14,verticalSliderSize:14,handleMouseWheel:!0,alwaysConsumeMouseWheel:!0})||this}return I(t,e),t.prototype.validate=function(e){if("object"!=typeof e)return this.defaultValue;var t=e,n=W.clampedInt(t.horizontalScrollbarSize,this.defaultValue.horizontalScrollbarSize,0,1e3),i=W.clampedInt(t.verticalScrollbarSize,this.defaultValue.verticalScrollbarSize,0,1e3);return{arrowSize:W.clampedInt(t.arrowSize,this.defaultValue.arrowSize,0,1e3),vertical:ce(t.vertical,this.defaultValue.vertical),horizontal:ce(t.horizontal,this.defaultValue.horizontal),useShadows:F.boolean(t.useShadows,this.defaultValue.useShadows),verticalHasArrows:F.boolean(t.verticalHasArrows,this.defaultValue.verticalHasArrows),horizontalHasArrows:F.boolean(t.horizontalHasArrows,this.defaultValue.horizontalHasArrows),handleMouseWheel:F.boolean(t.handleMouseWheel,this.defaultValue.handleMouseWheel),alwaysConsumeMouseWheel:F.boolean(t.alwaysConsumeMouseWheel,this.defaultValue.alwaysConsumeMouseWheel),horizontalScrollbarSize:n,horizontalSliderSize:W.clampedInt(t.horizontalSliderSize,n,0,1e3),verticalScrollbarSize:i,verticalSliderSize:W.clampedInt(t.verticalSliderSize,i,0,1e3)}},t}(P),he=function(e){function t(){var t={insertMode:"insert",insertHighlight:!1,filterGraceful:!0,snippetsPreventQuickSuggestions:!0,localityBonus:!1,shareSuggestSelections:!1,showIcons:!0,maxVisibleSuggestions:12,showMethods:!0,showFunctions:!0,showConstructors:!0,showFields:!0,showVariables:!0,showClasses:!0,showStructs:!0,showInterfaces:!0,showModules:!0,showProperties:!0,showEvents:!0,showOperators:!0,showUnits:!0,showValues:!0,showConstants:!0,showEnums:!0,showEnumMembers:!0,showKeywords:!0,showWords:!0,showColors:!0,showFiles:!0,showReferences:!0,showFolders:!0,showTypeParameters:!0,showSnippets:!0,hideStatusBar:!0};return e.call(this,89,"suggest",t,{"editor.suggest.insertMode":{type:"string",enum:["insert","replace"],enumDescriptions:[r("suggest.insertMode.insert","Insert suggestion without overwriting text right of the cursor."),r("suggest.insertMode.replace","Insert suggestion and overwrite text right of the cursor.")],default:t.insertMode,description:r("suggest.insertMode","Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.")},"editor.suggest.insertHighlight":{type:"boolean",default:t.insertHighlight,description:r("suggest.insertHighlight","Controls whether unexpected text modifications while accepting completions should be highlighted, e.g `insertMode` is `replace` but the completion only supports `insert`.")},"editor.suggest.filterGraceful":{type:"boolean",default:t.filterGraceful,description:r("suggest.filterGraceful","Controls whether filtering and sorting suggestions accounts for small typos.")},"editor.suggest.localityBonus":{type:"boolean",default:t.localityBonus,description:r("suggest.localityBonus","Controls whether sorting favours words that appear close to the cursor.")},"editor.suggest.shareSuggestSelections":{type:"boolean",default:t.shareSuggestSelections,markdownDescription:r("suggest.shareSuggestSelections","Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `#editor.suggestSelection#`).")},"editor.suggest.snippetsPreventQuickSuggestions":{type:"boolean",default:t.snippetsPreventQuickSuggestions,description:r("suggest.snippetsPreventQuickSuggestions","Controls whether an active snippet prevents quick suggestions.")},"editor.suggest.showIcons":{type:"boolean",default:t.showIcons,description:r("suggest.showIcons","Controls whether to show or hide icons in suggestions.")},"editor.suggest.maxVisibleSuggestions":{type:"number",default:t.maxVisibleSuggestions,minimum:1,maximum:15,description:r("suggest.maxVisibleSuggestions","Controls how many suggestions IntelliSense will show before showing a scrollbar (maximum 15).")},"editor.suggest.filteredTypes":{type:"object",deprecationMessage:r("deprecated","This setting is deprecated, please use separate settings like 'editor.suggest.showKeywords' or 'editor.suggest.showSnippets' instead.")},"editor.suggest.showMethods":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showMethods","When enabled IntelliSense shows `method`-suggestions.")},"editor.suggest.showFunctions":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showFunctions","When enabled IntelliSense shows `function`-suggestions.")},"editor.suggest.showConstructors":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showConstructors","When enabled IntelliSense shows `constructor`-suggestions.")},"editor.suggest.showFields":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showFields","When enabled IntelliSense shows `field`-suggestions.")},"editor.suggest.showVariables":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showVariables","When enabled IntelliSense shows `variable`-suggestions.")},"editor.suggest.showClasses":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showClasss","When enabled IntelliSense shows `class`-suggestions.")},"editor.suggest.showStructs":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showStructs","When enabled IntelliSense shows `struct`-suggestions.")},"editor.suggest.showInterfaces":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showInterfaces","When enabled IntelliSense shows `interface`-suggestions.")},"editor.suggest.showModules":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showModules","When enabled IntelliSense shows `module`-suggestions.")},"editor.suggest.showProperties":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showPropertys","When enabled IntelliSense shows `property`-suggestions.")},"editor.suggest.showEvents":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showEvents","When enabled IntelliSense shows `event`-suggestions.")},"editor.suggest.showOperators":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showOperators","When enabled IntelliSense shows `operator`-suggestions.")},"editor.suggest.showUnits":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showUnits","When enabled IntelliSense shows `unit`-suggestions.")},"editor.suggest.showValues":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showValues","When enabled IntelliSense shows `value`-suggestions.")},"editor.suggest.showConstants":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showConstants","When enabled IntelliSense shows `constant`-suggestions.")},"editor.suggest.showEnums":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showEnums","When enabled IntelliSense shows `enum`-suggestions.")},"editor.suggest.showEnumMembers":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showEnumMembers","When enabled IntelliSense shows `enumMember`-suggestions.")},"editor.suggest.showKeywords":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showKeywords","When enabled IntelliSense shows `keyword`-suggestions.")},"editor.suggest.showWords":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showTexts","When enabled IntelliSense shows `text`-suggestions.")},"editor.suggest.showColors":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showColors","When enabled IntelliSense shows `color`-suggestions.")},"editor.suggest.showFiles":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showFiles","When enabled IntelliSense shows `file`-suggestions.")},"editor.suggest.showReferences":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showReferences","When enabled IntelliSense shows `reference`-suggestions.")},"editor.suggest.showCustomcolors":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showCustomcolors","When enabled IntelliSense shows `customcolor`-suggestions.")},"editor.suggest.showFolders":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showFolders","When enabled IntelliSense shows `folder`-suggestions.")},"editor.suggest.showTypeParameters":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showTypeParameters","When enabled IntelliSense shows `typeParameter`-suggestions.")},"editor.suggest.showSnippets":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.showSnippets","When enabled IntelliSense shows `snippet`-suggestions.")},"editor.suggest.hideStatusBar":{type:"boolean",default:!0,markdownDescription:r("editor.suggest.hideStatusBar","Controls the visibility of the status bar at the bottom of the suggest widget.")}})||this}return I(t,e),t.prototype.validate=function(e){if("object"!=typeof e)return this.defaultValue;var t=e;return{insertMode:H.stringSet(t.insertMode,this.defaultValue.insertMode,["insert","replace"]),insertHighlight:F.boolean(t.insertHighlight,this.defaultValue.insertHighlight),filterGraceful:F.boolean(t.filterGraceful,this.defaultValue.filterGraceful),snippetsPreventQuickSuggestions:F.boolean(t.snippetsPreventQuickSuggestions,this.defaultValue.filterGraceful),localityBonus:F.boolean(t.localityBonus,this.defaultValue.localityBonus),shareSuggestSelections:F.boolean(t.shareSuggestSelections,this.defaultValue.shareSuggestSelections),showIcons:F.boolean(t.showIcons,this.defaultValue.showIcons),maxVisibleSuggestions:W.clampedInt(t.maxVisibleSuggestions,this.defaultValue.maxVisibleSuggestions,1,15),showMethods:F.boolean(t.showMethods,this.defaultValue.showMethods),showFunctions:F.boolean(t.showFunctions,this.defaultValue.showFunctions),showConstructors:F.boolean(t.showConstructors,this.defaultValue.showConstructors),showFields:F.boolean(t.showFields,this.defaultValue.showFields),showVariables:F.boolean(t.showVariables,this.defaultValue.showVariables),showClasses:F.boolean(t.showClasses,this.defaultValue.showClasses),showStructs:F.boolean(t.showStructs,this.defaultValue.showStructs),showInterfaces:F.boolean(t.showInterfaces,this.defaultValue.showInterfaces),showModules:F.boolean(t.showModules,this.defaultValue.showModules),showProperties:F.boolean(t.showProperties,this.defaultValue.showProperties),showEvents:F.boolean(t.showEvents,this.defaultValue.showEvents),showOperators:F.boolean(t.showOperators,this.defaultValue.showOperators),showUnits:F.boolean(t.showUnits,this.defaultValue.showUnits),showValues:F.boolean(t.showValues,this.defaultValue.showValues),showConstants:F.boolean(t.showConstants,this.defaultValue.showConstants),showEnums:F.boolean(t.showEnums,this.defaultValue.showEnums),showEnumMembers:F.boolean(t.showEnumMembers,this.defaultValue.showEnumMembers),showKeywords:F.boolean(t.showKeywords,this.defaultValue.showKeywords),showWords:F.boolean(t.showWords,this.defaultValue.showWords),showColors:F.boolean(t.showColors,this.defaultValue.showColors),showFiles:F.boolean(t.showFiles,this.defaultValue.showFiles),showReferences:F.boolean(t.showReferences,this.defaultValue.showReferences),showFolders:F.boolean(t.showFolders,this.defaultValue.showFolders),showTypeParameters:F.boolean(t.showTypeParameters,this.defaultValue.showTypeParameters),showSnippets:F.boolean(t.showSnippets,this.defaultValue.showSnippets),hideStatusBar:F.boolean(t.hideStatusBar,this.defaultValue.hideStatusBar)}},t}(P),pe=function(e){function t(){return e.call(this,106,[68])||this}return I(t,e),t.prototype.compute=function(e,t,n){return!!t.get(68)||e.tabFocusMode},t}(R);var fe=function(e){function t(){return e.call(this,108,[97,100,101,107,2])||this}return I(t,e),t.prototype.compute=function(e,t,n){var i=t.get(97),o=t.get(100),r=t.get(101),s=t.get(107),a=null;return a=2===t.get(2)?{isWordWrapMinified:!1,isViewportWrapping:!1,wrappingColumn:-1}:r&&e.isDominatedByLongLines?{isWordWrapMinified:!0,isViewportWrapping:!0,wrappingColumn:Math.max(1,s.viewportColumn)}:"on"===i?{isWordWrapMinified:!1,isViewportWrapping:!0,wrappingColumn:Math.max(1,s.viewportColumn)}:"bounded"===i?{isWordWrapMinified:!1,isViewportWrapping:!0,wrappingColumn:Math.min(Math.max(1,s.viewportColumn),o)}:"wordWrapColumn"===i?{isWordWrapMinified:!1,isViewportWrapping:!1,wrappingColumn:o}:{isWordWrapMinified:!1,isViewportWrapping:!1,wrappingColumn:-1},{isDominatedByLongLines:e.isDominatedByLongLines,isWordWrapMinified:a.isWordWrapMinified,isViewportWrapping:a.isViewportWrapping,wrappingColumn:a.wrappingColumn}},t}(R),ge={fontFamily:_?"Menlo, Monaco, 'Courier New', monospace":y?"'Droid Sans Mono', 'monospace', monospace, 'Droid Sans Fallback'":"Consolas, 'Courier New', monospace",fontWeight:"normal",fontSize:_?12:14,lineHeight:0,letterSpacing:0},me=4,ve=4,_e=!0,ye=!0,be=!0,we=!0,Ce=[];function Se(e){return Ce[e.id]=e,e}var Le={acceptSuggestionOnCommitCharacter:Se(new F(0,"acceptSuggestionOnCommitCharacter",!0,{markdownDescription:r("acceptSuggestionOnCommitCharacter","Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character.")})),acceptSuggestionOnEnter:Se(new H(1,"acceptSuggestionOnEnter","on",["on","smart","off"],{markdownEnumDescriptions:["",r("acceptSuggestionOnEnterSmart","Only accept a suggestion with `Enter` when it makes a textual change."),""],markdownDescription:r("acceptSuggestionOnEnter","Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.")})),accessibilitySupport:Se(new U),accessibilityPageSize:Se(new W(3,"accessibilityPageSize",10,1,1073741824,{description:r("accessibilityPageSize","Controls the number of lines in the editor that can be read out by a screen reader. Warning: this has a performance implication for numbers larger than the default.")})),ariaLabel:Se(new B(4,"ariaLabel",r("editorViewAccessibleLabel","Editor content"))),autoClosingBrackets:Se(new H(5,"autoClosingBrackets","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",r("editor.autoClosingBrackets.languageDefined","Use language configurations to determine when to autoclose brackets."),r("editor.autoClosingBrackets.beforeWhitespace","Autoclose brackets only when the cursor is to the left of whitespace."),""],description:r("autoClosingBrackets","Controls whether the editor should automatically close brackets after the user adds an opening bracket.")})),autoClosingOvertype:Se(new H(6,"autoClosingOvertype","auto",["always","auto","never"],{enumDescriptions:["",r("editor.autoClosingOvertype.auto","Type over closing quotes or brackets only if they were automatically inserted."),""],description:r("autoClosingOvertype","Controls whether the editor should type over closing quotes or brackets.")})),autoClosingQuotes:Se(new H(7,"autoClosingQuotes","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",r("editor.autoClosingQuotes.languageDefined","Use language configurations to determine when to autoclose quotes."),r("editor.autoClosingQuotes.beforeWhitespace","Autoclose quotes only when the cursor is to the left of whitespace."),""],description:r("autoClosingQuotes","Controls whether the editor should automatically close quotes after the user adds an opening quote.")})),autoIndent:Se(new z(8,"autoIndent",4,"full",["none","keep","brackets","advanced","full"],(function(e){switch(e){case"none":return 0;case"keep":return 1;case"brackets":return 2;case"advanced":return 3;case"full":return 4}}),{enumDescriptions:[r("editor.autoIndent.none","The editor will not insert indentation automatically."),r("editor.autoIndent.keep","The editor will keep the current line's indentation."),r("editor.autoIndent.brackets","The editor will keep the current line's indentation and honor language defined brackets."),r("editor.autoIndent.advanced","The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages."),r("editor.autoIndent.full","The editor will keep the current line's indentation, honor language defined brackets, invoke special onEnterRules defined by languages, and honor indentationRules defined by languages.")],description:r("autoIndent","Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.")})),automaticLayout:Se(new F(9,"automaticLayout",!1)),autoSurround:Se(new H(10,"autoSurround","languageDefined",["languageDefined","quotes","brackets","never"],{enumDescriptions:[r("editor.autoSurround.languageDefined","Use language configurations to determine when to automatically surround selections."),r("editor.autoSurround.quotes","Surround with quotes but not brackets."),r("editor.autoSurround.brackets","Surround with brackets but not quotes."),""],description:r("autoSurround","Controls whether the editor should automatically surround selections.")})),codeLens:Se(new F(11,"codeLens",!0,{description:r("codeLens","Controls whether the editor shows CodeLens.")})),colorDecorators:Se(new F(12,"colorDecorators",!0,{description:r("colorDecorators","Controls whether the editor should render the inline color decorators and color picker.")})),comments:Se(new K),contextmenu:Se(new F(14,"contextmenu",!0)),copyWithSyntaxHighlighting:Se(new F(15,"copyWithSyntaxHighlighting",!0,{description:r("copyWithSyntaxHighlighting","Controls whether syntax highlighting should be copied into the clipboard.")})),cursorBlinking:Se(new z(16,"cursorBlinking",1,"blink",["blink","smooth","phase","expand","solid"],(function(e){switch(e){case"blink":return 1;case"smooth":return 2;case"phase":return 3;case"expand":return 4;case"solid":return 5}}),{description:r("cursorBlinking","Control the cursor animation style.")})),cursorSmoothCaretAnimation:Se(new F(17,"cursorSmoothCaretAnimation",!1,{description:r("cursorSmoothCaretAnimation","Controls whether the smooth caret animation should be enabled.")})),cursorStyle:Se(new z(18,"cursorStyle",j.Line,"line",["line","block","underline","line-thin","block-outline","underline-thin"],(function(e){switch(e){case"line":return j.Line;case"block":return j.Block;case"underline":return j.Underline;case"line-thin":return j.LineThin;case"block-outline":return j.BlockOutline;case"underline-thin":return j.UnderlineThin}}),{description:r("cursorStyle","Controls the cursor style.")})),cursorSurroundingLines:Se(new W(19,"cursorSurroundingLines",0,0,1073741824,{description:r("cursorSurroundingLines","Controls the minimal number of visible leading and trailing lines surrounding the cursor. Known as 'scrollOff' or `scrollOffset` in some other editors.")})),cursorSurroundingLinesStyle:Se(new H(20,"cursorSurroundingLinesStyle","default",["default","all"],{enumDescriptions:[r("cursorSurroundingLinesStyle.default","`cursorSurroundingLines` is enforced only when triggered via the keyboard or API."),r("cursorSurroundingLinesStyle.all","`cursorSurroundingLines` is enforced always.")],description:r("cursorSurroundingLinesStyle","Controls when `cursorSurroundingLines` should be enforced.")})),cursorWidth:Se(new W(21,"cursorWidth",0,0,1073741824,{markdownDescription:r("cursorWidth","Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.")})),disableLayerHinting:Se(new F(22,"disableLayerHinting",!1)),disableMonospaceOptimizations:Se(new F(23,"disableMonospaceOptimizations",!1)),dragAndDrop:Se(new F(24,"dragAndDrop",!0,{description:r("dragAndDrop","Controls whether the editor should allow moving selections via drag and drop.")})),emptySelectionClipboard:Se(new G),extraEditorClassName:Se(new B(26,"extraEditorClassName","")),fastScrollSensitivity:Se(new V(27,"fastScrollSensitivity",5,(function(e){return e<=0?5:e}),{markdownDescription:r("fastScrollSensitivity","Scrolling speed multiplier when pressing `Alt`.")})),find:Se(new Z),fixedOverflowWidgets:Se(new F(29,"fixedOverflowWidgets",!1)),folding:Se(new F(30,"folding",!0,{description:r("folding","Controls whether the editor has code folding enabled.")})),foldingStrategy:Se(new H(31,"foldingStrategy","auto",["auto","indentation"],{markdownDescription:r("foldingStrategy","Controls the strategy for computing folding ranges. `auto` uses a language specific folding strategy, if available. `indentation` uses the indentation based folding strategy.")})),foldingHighlight:Se(new F(32,"foldingHighlight",!0,{description:r("foldingHighlight","Controls whether the editor should highlight folded ranges.")})),fontFamily:Se(new B(33,"fontFamily",ge.fontFamily,{description:r("fontFamily","Controls the font family.")})),fontInfo:Se(new X),fontLigatures2:Se(new Y),fontSize:Se(new $),fontWeight:Se(new B(37,"fontWeight",ge.fontWeight,{enum:["normal","bold","100","200","300","400","500","600","700","800","900"],description:r("fontWeight","Controls the font weight.")})),formatOnPaste:Se(new F(38,"formatOnPaste",!1,{description:r("formatOnPaste","Controls whether the editor should automatically format the pasted content. A formatter must be available and the formatter should be able to format a range in a document.")})),formatOnType:Se(new F(39,"formatOnType",!1,{description:r("formatOnType","Controls whether the editor should automatically format the line after typing.")})),glyphMargin:Se(new F(40,"glyphMargin",!0,{description:r("glyphMargin","Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.")})),gotoLocation:Se(new Q),hideCursorInOverviewRuler:Se(new F(42,"hideCursorInOverviewRuler",!1,{description:r("hideCursorInOverviewRuler","Controls whether the cursor should be hidden in the overview ruler.")})),highlightActiveIndentGuide:Se(new F(43,"highlightActiveIndentGuide",!0,{description:r("highlightActiveIndentGuide","Controls whether the editor should highlight the active indent guide.")})),hover:Se(new J),inDiffEditor:Se(new F(45,"inDiffEditor",!1)),letterSpacing:Se(new V(46,"letterSpacing",ge.letterSpacing,(function(e){return V.clamp(e,-5,20)}),{description:r("letterSpacing","Controls the letter spacing in pixels.")})),lightbulb:Se(new te),lineDecorationsWidth:Se(new A(48,"lineDecorationsWidth",10)),lineHeight:Se(new ne),lineNumbers:Se(new ae),lineNumbersMinChars:Se(new W(51,"lineNumbersMinChars",5,1,300)),links:Se(new F(52,"links",!0,{description:r("links","Controls whether the editor should detect links and make them clickable.")})),matchBrackets:Se(new H(53,"matchBrackets","always",["always","near","never"],{description:r("matchBrackets","Highlight matching brackets.")})),minimap:Se(new ie),mouseStyle:Se(new H(55,"mouseStyle","text",["text","default","copy"])),mouseWheelScrollSensitivity:Se(new V(56,"mouseWheelScrollSensitivity",1,(function(e){return 0===e?1:e}),{markdownDescription:r("mouseWheelScrollSensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")})),mouseWheelZoom:Se(new F(57,"mouseWheelZoom",!1,{markdownDescription:r("mouseWheelZoom","Zoom the font of the editor when using mouse wheel and holding `Ctrl`.")})),multiCursorMergeOverlapping:Se(new F(58,"multiCursorMergeOverlapping",!0,{description:r("multiCursorMergeOverlapping","Merge multiple cursors when they are overlapping.")})),multiCursorModifier:Se(new z(59,"multiCursorModifier","altKey","alt",["ctrlCmd","alt"],(function(e){return"ctrlCmd"===e?_?"metaKey":"ctrlKey":"altKey"}),{markdownEnumDescriptions:[r("multiCursorModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),r("multiCursorModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],markdownDescription:r({key:"multiCursorModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add multiple cursors with the mouse. The Go To Definition and Open Link mouse gestures will adapt such that they do not conflict with the multicursor modifier. [Read more](https://code.visualstudio.com/docs/editor/codebasics#_multicursor-modifier).")})),multiCursorPaste:Se(new H(60,"multiCursorPaste","spread",["spread","full"],{markdownEnumDescriptions:[r("multiCursorPaste.spread","Each cursor pastes a single line of the text."),r("multiCursorPaste.full","Each cursor pastes the full text.")],markdownDescription:r("multiCursorPaste","Controls pasting when the line count of the pasted text matches the cursor count.")})),occurrencesHighlight:Se(new F(61,"occurrencesHighlight",!0,{description:r("occurrencesHighlight","Controls whether the editor should highlight semantic symbol occurrences.")})),overviewRulerBorder:Se(new F(62,"overviewRulerBorder",!0,{description:r("overviewRulerBorder","Controls whether a border should be drawn around the overview ruler.")})),overviewRulerLanes:Se(new W(63,"overviewRulerLanes",3,0,3)),parameterHints:Se(new oe),peekWidgetDefaultFocus:Se(new H(65,"peekWidgetDefaultFocus","tree",["tree","editor"],{enumDescriptions:[r("peekWidgetDefaultFocus.tree","Focus the tree when opening peek"),r("peekWidgetDefaultFocus.editor","Focus the editor when opening peek")],description:r("peekWidgetDefaultFocus","Controls whether to focus the inline editor or the tree in the peek widget.")})),quickSuggestions:Se(new se),quickSuggestionsDelay:Se(new W(67,"quickSuggestionsDelay",10,0,1073741824,{description:r("quickSuggestionsDelay","Controls the delay in milliseconds after which quick suggestions will show up.")})),readOnly:Se(new F(68,"readOnly",!1)),renderControlCharacters:Se(new F(69,"renderControlCharacters",!1,{description:r("renderControlCharacters","Controls whether the editor should render control characters.")})),renderIndentGuides:Se(new F(70,"renderIndentGuides",!0,{description:r("renderIndentGuides","Controls whether the editor should render indent guides.")})),renderFinalNewline:Se(new F(71,"renderFinalNewline",!0,{description:r("renderFinalNewline","Render last line number when the file ends with a newline.")})),renderLineHighlight:Se(new H(72,"renderLineHighlight","line",["none","gutter","line","all"],{enumDescriptions:["","","",r("renderLineHighlight.all","Highlights both the gutter and the current line.")],description:r("renderLineHighlight","Controls how the editor should render the current line highlight.")})),renderValidationDecorations:Se(new H(73,"renderValidationDecorations","editable",["editable","on","off"])),renderWhitespace:Se(new H(74,"renderWhitespace","none",["none","boundary","selection","all"],{enumDescriptions:["",r("renderWhitespace.boundary","Render whitespace characters except for single spaces between words."),r("renderWhitespace.selection","Render whitespace characters only on selected text."),""],description:r("renderWhitespace","Controls how the editor should render whitespace characters.")})),revealHorizontalRightPadding:Se(new W(75,"revealHorizontalRightPadding",30,0,1e3)),roundedSelection:Se(new F(76,"roundedSelection",!0,{description:r("roundedSelection","Controls whether selections should have rounded corners.")})),rulers:Se(new le),scrollbar:Se(new de),scrollBeyondLastColumn:Se(new W(79,"scrollBeyondLastColumn",5,0,1073741824,{description:r("scrollBeyondLastColumn","Controls the number of extra characters beyond which the editor will scroll horizontally.")})),scrollBeyondLastLine:Se(new F(80,"scrollBeyondLastLine",!0,{description:r("scrollBeyondLastLine","Controls whether the editor will scroll beyond the last line.")})),selectionClipboard:Se(new F(81,"selectionClipboard",!0,{description:r("selectionClipboard","Controls whether the Linux primary clipboard should be supported."),included:y})),selectionHighlight:Se(new F(82,"selectionHighlight",!0,{description:r("selectionHighlight","Controls whether the editor should highlight matches similar to the selection.")})),selectOnLineNumbers:Se(new F(83,"selectOnLineNumbers",!0)),showFoldingControls:Se(new H(84,"showFoldingControls","mouseover",["always","mouseover"],{description:r("showFoldingControls","Controls whether the fold controls on the gutter are automatically hidden.")})),showUnused:Se(new F(85,"showUnused",!0,{description:r("showUnused","Controls fading out of unused code.")})),snippetSuggestions:Se(new H(86,"snippetSuggestions","inline",["top","bottom","inline","none"],{enumDescriptions:[r("snippetSuggestions.top","Show snippet suggestions on top of other suggestions."),r("snippetSuggestions.bottom","Show snippet suggestions below other suggestions."),r("snippetSuggestions.inline","Show snippets suggestions with other suggestions."),r("snippetSuggestions.none","Do not show snippet suggestions.")],description:r("snippetSuggestions","Controls whether snippets are shown with other suggestions and how they are sorted.")})),smoothScrolling:Se(new F(87,"smoothScrolling",!1,{description:r("smoothScrolling","Controls whether the editor will scroll using an animation.")})),stopRenderingLineAfter:Se(new W(88,"stopRenderingLineAfter",1e4,-1,1073741824)),suggest:Se(new he),suggestFontSize:Se(new W(90,"suggestFontSize",0,0,1e3,{markdownDescription:r("suggestFontSize","Font size for the suggest widget. When set to `0`, the value of `#editor.fontSize#` is used.")})),suggestLineHeight:Se(new W(91,"suggestLineHeight",0,0,1e3,{markdownDescription:r("suggestLineHeight","Line height for the suggest widget. When set to `0`, the value of `#editor.lineHeight#` is used.")})),suggestOnTriggerCharacters:Se(new F(92,"suggestOnTriggerCharacters",!0,{description:r("suggestOnTriggerCharacters","Controls whether suggestions should automatically show up when typing trigger characters.")})),suggestSelection:Se(new H(93,"suggestSelection","recentlyUsed",["first","recentlyUsed","recentlyUsedByPrefix"],{markdownEnumDescriptions:[r("suggestSelection.first","Always select the first suggestion."),r("suggestSelection.recentlyUsed","Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently."),r("suggestSelection.recentlyUsedByPrefix","Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.")],description:r("suggestSelection","Controls how suggestions are pre-selected when showing the suggest list.")})),tabCompletion:Se(new H(94,"tabCompletion","off",["on","off","onlySnippets"],{enumDescriptions:[r("tabCompletion.on","Tab complete will insert the best matching suggestion when pressing tab."),r("tabCompletion.off","Disable tab completions."),r("tabCompletion.onlySnippets","Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.")],description:r("tabCompletion","Enables tab completions.")})),useTabStops:Se(new F(95,"useTabStops",!0,{description:r("useTabStops","Inserting and deleting whitespace follows tab stops.")})),wordSeparators:Se(new B(96,"wordSeparators","`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?",{description:r("wordSeparators","Characters that will be used as word separators when doing word related navigations or operations.")})),wordWrap:Se(new H(97,"wordWrap","off",["off","on","wordWrapColumn","bounded"],{markdownEnumDescriptions:[r("wordWrap.off","Lines will never wrap."),r("wordWrap.on","Lines will wrap at the viewport width."),r({key:"wordWrap.wordWrapColumn",comment:["- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at `#editor.wordWrapColumn#`."),r({key:"wordWrap.bounded",comment:["- viewport means the edge of the visible window size.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at the minimum of viewport and `#editor.wordWrapColumn#`.")],description:r({key:"wordWrap",comment:["- 'off', 'on', 'wordWrapColumn' and 'bounded' refer to values the setting can take and should not be localized.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Controls how lines should wrap.")})),wordWrapBreakAfterCharacters:Se(new B(98,"wordWrapBreakAfterCharacters"," \t})]?|/&.,;¢°′″‰℃、。。、¢,.:;?!%・・ゝゞヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ァィゥェォャュョッー”〉》」』】〕)]}」")),wordWrapBreakBeforeCharacters:Se(new B(99,"wordWrapBreakBeforeCharacters","([{‘“〈《「『【〔([{「£¥$£¥++")),wordWrapColumn:Se(new W(100,"wordWrapColumn",80,1,1073741824,{markdownDescription:r({key:"wordWrapColumn",comment:["- `editor.wordWrap` refers to a different setting and should not be localized.","- 'wordWrapColumn' and 'bounded' refer to values the different setting can take and should not be localized."]},"Controls the wrapping column of the editor when `#editor.wordWrap#` is `wordWrapColumn` or `bounded`.")})),wordWrapMinified:Se(new F(101,"wordWrapMinified",!0)),wrappingIndent:Se(new z(102,"wrappingIndent",1,"same",["none","same","indent","deepIndent"],(function(e){switch(e){case"none":return 0;case"same":return 1;case"indent":return 2;case"deepIndent":return 3}}),{enumDescriptions:[r("wrappingIndent.none","No indentation. Wrapped lines begin at column 1."),r("wrappingIndent.same","Wrapped lines get the same indentation as the parent."),r("wrappingIndent.indent","Wrapped lines get +1 indentation toward the parent."),r("wrappingIndent.deepIndent","Wrapped lines get +2 indentation toward the parent.")],description:r("wrappingIndent","Controls the indentation of wrapped lines.")})),wrappingStrategy:Se(new H(103,"wrappingStrategy","simple",["simple","advanced"],{enumDescriptions:[r("wrappingStrategy.simple","Assumes that all characters are of the same width. This is a fast algorithm that works correctly for monospace fonts and certain scripts (like Latin characters) where glyphs are of equal width."),r("wrappingStrategy.advanced","Delegates wrapping points computation to the browser. This is a slow algorithm, that might cause freezes for large files, but it works correctly in all cases.")],description:r("wrappingStrategy","Controls the algorithm that computes wrapping points.")})),editorClassName:Se(new q),pixelRatio:Se(new re),tabFocusMode:Se(new pe),layoutInfo:Se(new ee),wrappingInfo:Se(new fe)},xe=(n(369),new(function(){function e(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout((function(){if(e.stack)throw new Error(e.message+"\n\n"+e.stack);throw e}),0)}}return e.prototype.emit=function(e){this.listeners.forEach((function(t){t(e)}))},e.prototype.onUnexpectedError=function(e){this.unexpectedErrorHandler(e),this.emit(e)},e.prototype.onUnexpectedExternalError=function(e){this.unexpectedErrorHandler(e)},e}()));function De(e){Ee(e)||xe.onUnexpectedError(e)}function Ne(e){Ee(e)||xe.onUnexpectedExternalError(e)}function ke(e){return e instanceof Error?{$isError:!0,name:e.name,message:e.message,stack:e.stacktrace||e.stack}:e}function Ee(e){return e instanceof Error&&"Canceled"===e.name&&"Canceled"===e.message}function Ie(){var e=new Error("Canceled");return e.name=e.message,e}function Oe(e){return e?new Error("Illegal argument: "+e):new Error("Illegal argument")}function Me(e){return e?new Error("Illegal state: "+e):new Error("Illegal state")}function Te(e){var t,n=this,i=!1;return function(){return i?t:(i=!0,t=e.apply(n,arguments))}}function Pe(e){}function Re(e){return"function"==typeof e.dispose&&0===e.dispose.length}function Ae(e){return Array.isArray(e)?(e.forEach((function(e){e&&e.dispose()})),[]):e?(e.dispose(),e):void 0}function Fe(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return e.forEach(Pe),{dispose:function(){return Ae(e)}}}function We(e){var t={dispose:function(){e()}};return t}var Ve,Be=function(){function e(){this._toDispose=new Set,this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed||(this._isDisposed=!0,this.clear())},e.prototype.clear=function(){this._toDispose.forEach((function(e){return e.dispose()})),this._toDispose.clear()},e.prototype.add=function(e){if(!e)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(e),e},e}(),He=function(){function e(){this._store=new Be}return e.prototype.dispose=function(){this._store.dispose()},e.prototype._register=function(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)},e.None=Object.freeze({dispose:function(){}}),e}(),ze=function(){function e(){this._isDisposed=!1}return Object.defineProperty(e.prototype,"value",{get:function(){return this._isDisposed?void 0:this._value},set:function(e){this._isDisposed||e===this._value||(this._value&&this._value.dispose(),this._value=e)},enumerable:!0,configurable:!0}),e.prototype.clear=function(){this.value=void 0},e.prototype.dispose=function(){this._isDisposed=!0,this._value&&this._value.dispose(),this._value=void 0},e}(),je=function(){function e(e){this.object=e}return e.prototype.dispose=function(){},e}(),Ue=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Ke={done:!0,value:void 0};!function(e){var t={next:function(){return Ke}};e.empty=function(){return t},e.single=function(e){var t=!1;return{next:function(){return t?Ke:(t=!0,{done:!1,value:e})}}},e.fromArray=function(e,t,n){return void 0===t&&(t=0),void 0===n&&(n=e.length),{next:function(){return t>=n?Ke:{done:!1,value:e[t++]}}}},e.fromNativeIterator=function(e){return{next:function(){var t=e.next();return t.done?Ke:{done:!1,value:t.value}}}},e.from=function(t){return t?Array.isArray(t)?e.fromArray(t):t:e.empty()},e.map=function(e,t){return{next:function(){var n=e.next();return n.done?Ke:{done:!1,value:t(n.value)}}}},e.filter=function(e,t){return{next:function(){for(;;){var n=e.next();if(n.done)return Ke;if(t(n.value))return{done:!1,value:n.value}}}}},e.forEach=function(e,t){for(var n=e.next();!n.done;n=e.next())t(n.value)},e.collect=function(e,t){void 0===t&&(t=Number.POSITIVE_INFINITY);var n=[];if(0===t)return n;for(var i=0,o=e.next();!o.done&&(n.push(o.value),!(++i>=t));o=e.next());return n},e.concat=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=0;return{next:function(){if(n>=e.length)return Ke;var t=e[n].next();return t.done?(n++,this.next()):t}}},e.chain=function(e){return new qe(e)}}(Ve||(Ve={}));var qe=function(){function e(e){this.it=e}return e.prototype.next=function(){return this.it.next()},e}();var Ge,Ze=function(){function e(e,t,n,i){void 0===t&&(t=0),void 0===n&&(n=e.length),void 0===i&&(i=t-1),this.items=e,this.start=t,this.end=n,this.index=i}return e.prototype.first=function(){return this.index=this.start,this.current()},e.prototype.next=function(){return this.index=Math.min(this.index+1,this.end),this.current()},e.prototype.current=function(){return this.index===this.start-1||this.index===this.end?null:this.items[this.index]},e}(),Ye=function(e){function t(t,n,i,o){return void 0===n&&(n=0),void 0===i&&(i=t.length),void 0===o&&(o=n-1),e.call(this,t,n,i,o)||this}return Ue(t,e),t.prototype.current=function(){return e.prototype.current.call(this)},t.prototype.previous=function(){return this.index=Math.max(this.index-1,this.start-1),this.current()},t.prototype.first=function(){return this.index=this.start,this.current()},t.prototype.last=function(){return this.index=this.end-1,this.current()},t.prototype.parent=function(){return null},t}(Ze),Xe=function(){function e(e,t){this.iterator=e,this.fn=t}return e.prototype.next=function(){return this.fn(this.iterator.next())},e}(),$e=function(){function e(t){this.element=t,this.next=e.Undefined,this.prev=e.Undefined}return e.Undefined=new e(void 0),e}(),Qe=function(){function e(){this._first=$e.Undefined,this._last=$e.Undefined,this._size=0}return Object.defineProperty(e.prototype,"size",{get:function(){return this._size},enumerable:!0,configurable:!0}),e.prototype.isEmpty=function(){return this._first===$e.Undefined},e.prototype.clear=function(){this._first=$e.Undefined,this._last=$e.Undefined,this._size=0},e.prototype.unshift=function(e){return this._insert(e,!1)},e.prototype.push=function(e){return this._insert(e,!0)},e.prototype._insert=function(e,t){var n=this,i=new $e(e);if(this._first===$e.Undefined)this._first=i,this._last=i;else if(t){var o=this._last;this._last=i,i.prev=o,o.next=i}else{var r=this._first;this._first=i,i.next=r,r.prev=i}this._size+=1;var s=!1;return function(){s||(s=!0,n._remove(i))}},e.prototype.shift=function(){if(this._first!==$e.Undefined){var e=this._first.element;return this._remove(this._first),e}},e.prototype.pop=function(){if(this._last!==$e.Undefined){var e=this._last.element;return this._remove(this._last),e}},e.prototype._remove=function(e){if(e.prev!==$e.Undefined&&e.next!==$e.Undefined){var t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===$e.Undefined&&e.next===$e.Undefined?(this._first=$e.Undefined,this._last=$e.Undefined):e.next===$e.Undefined?(this._last=this._last.prev,this._last.next=$e.Undefined):e.prev===$e.Undefined&&(this._first=this._first.next,this._first.prev=$e.Undefined);this._size-=1},e.prototype.iterator=function(){var e,t=this._first;return{next:function(){return t===$e.Undefined?Ke:(e?e.value=t.element:e={done:!1,value:t.element},t=t.next,e)}}},e.prototype.toArray=function(){for(var e=[],t=this._first;t!==$e.Undefined;t=t.next)e.push(t.element);return e},e}(),Je=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();!function(e){function t(e){return function(t,n,i){void 0===n&&(n=null);var o,r=!1;return o=e((function(e){if(!r)return o?o.dispose():r=!0,t.call(n,e)}),null,i),r&&o.dispose(),o}}function n(e,t){return s((function(n,i,o){return void 0===i&&(i=null),e((function(e){return n.call(i,t(e))}),null,o)}))}function i(e,t){return s((function(n,i,o){return void 0===i&&(i=null),e((function(e){t(e),n.call(i,e)}),null,o)}))}function o(e,t){return s((function(n,i,o){return void 0===i&&(i=null),e((function(e){return t(e)&&n.call(i,e)}),null,o)}))}function r(e,t,i){var o=i;return n(e,(function(e){return o=t(o,e)}))}function s(e){var t,n=new nt({onFirstListenerAdd:function(){t=e(n.fire,n)},onLastListenerRemove:function(){t.dispose()}});return n.event}function a(e,t,n,i,o){var r;void 0===n&&(n=100),void 0===i&&(i=!1);var s=void 0,a=void 0,u=0,l=new nt({leakWarningThreshold:o,onFirstListenerAdd:function(){r=e((function(e){u++,s=t(s,e),i&&!a&&(l.fire(s),s=void 0),clearTimeout(a),a=setTimeout((function(){var e=s;s=void 0,a=void 0,(!i||u>1)&&l.fire(e),u=0}),n)}))},onLastListenerRemove:function(){r.dispose()}});return l.event}function u(e){var t,n=!0;return o(e,(function(e){var i=n||e!==t;return n=!1,t=e,i}))}e.None=function(){return He.None},e.once=t,e.map=n,e.forEach=i,e.filter=o,e.signal=function(e){return e},e.any=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(t,n,i){return void 0===n&&(n=null),Fe.apply(void 0,e.map((function(e){return e((function(e){return t.call(n,e)}),null,i)})))}},e.reduce=r,e.snapshot=s,e.debounce=a,e.stopwatch=function(e){var i=(new Date).getTime();return n(t(e),(function(e){return(new Date).getTime()-i}))},e.latch=u,e.buffer=function(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=[]);var i=n.slice(),o=e((function(e){i?i.push(e):s.fire(e)})),r=function(){i&&i.forEach((function(e){return s.fire(e)})),i=null},s=new nt({onFirstListenerAdd:function(){o||(o=e((function(e){return s.fire(e)})))},onFirstListenerDidAdd:function(){i&&(t?setTimeout(r):r())},onLastListenerRemove:function(){o&&o.dispose(),o=null}});return s.event};var l=function(){function e(e){this.event=e}return e.prototype.map=function(t){return new e(n(this.event,t))},e.prototype.forEach=function(t){return new e(i(this.event,t))},e.prototype.filter=function(t){return new e(o(this.event,t))},e.prototype.reduce=function(t,n){return new e(r(this.event,t,n))},e.prototype.latch=function(){return new e(u(this.event))},e.prototype.debounce=function(t,n,i,o){return void 0===n&&(n=100),void 0===i&&(i=!1),new e(a(this.event,t,n,i,o))},e.prototype.on=function(e,t,n){return this.event(e,t,n)},e.prototype.once=function(e,n,i){return t(this.event)(e,n,i)},e}();e.chain=function(e){return new l(e)},e.fromNodeEventEmitter=function(e,t,n){void 0===n&&(n=function(e){return e});var i=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return o.fire(n.apply(void 0,e))},o=new nt({onFirstListenerAdd:function(){return e.on(t,i)},onLastListenerRemove:function(){return e.removeListener(t,i)}});return o.event},e.fromDOMEventEmitter=function(e,t,n){void 0===n&&(n=function(e){return e});var i=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return o.fire(n.apply(void 0,e))},o=new nt({onFirstListenerAdd:function(){return e.addEventListener(t,i)},onLastListenerRemove:function(){return e.removeEventListener(t,i)}});return o.event},e.fromPromise=function(e){var t=new nt,n=!1;return e.then(void 0,(function(){return null})).then((function(){n?t.fire(void 0):setTimeout((function(){return t.fire(void 0)}),0)})),n=!0,t.event},e.toPromise=function(e){return new Promise((function(n){return t(e)(n)}))}}(Ge||(Ge={}));!function(){function e(e,t){void 0===t&&(t=Math.random().toString(18).slice(2,5)),this.customThreshold=e,this.name=t,this._warnCountdown=0}e.prototype.dispose=function(){this._stacks&&this._stacks.clear()},e.prototype.check=function(e){var t=this,n=-1;if("number"==typeof this.customThreshold&&(n=this.customThreshold),!(n<=0||e<n)){this._stacks||(this._stacks=new Map);var i=(new Error).stack.split("\n").slice(3).join("\n"),o=this._stacks.get(i)||0;if(this._stacks.set(i,o+1),this._warnCountdown-=1,this._warnCountdown<=0){var r;this._warnCountdown=.5*n;var s=0;this._stacks.forEach((function(e,t){(!r||s<e)&&(r=t,s=e)})),console.warn("["+this.name+"] potential listener LEAK detected, having "+e+" listeners already. MOST frequent listener ("+s+"):"),console.warn(r)}return function(){var e=t._stacks.get(i)||0;t._stacks.set(i,e-1)}}}}();var et,tt,nt=function(){function e(e){this._disposed=!1,this._options=e,this._leakageMon=void 0}return Object.defineProperty(e.prototype,"event",{get:function(){var t=this;return this._event||(this._event=function(n,i,o){t._listeners||(t._listeners=new Qe);var r=t._listeners.isEmpty();r&&t._options&&t._options.onFirstListenerAdd&&t._options.onFirstListenerAdd(t);var s,a,u=t._listeners.push(i?[n,i]:n);return r&&t._options&&t._options.onFirstListenerDidAdd&&t._options.onFirstListenerDidAdd(t),t._options&&t._options.onListenerDidAdd&&t._options.onListenerDidAdd(t,n,i),t._leakageMon&&(s=t._leakageMon.check(t._listeners.size)),a={dispose:function(){(s&&s(),a.dispose=e._noop,t._disposed)||(u(),t._options&&t._options.onLastListenerRemove&&(t._listeners&&!t._listeners.isEmpty()||t._options.onLastListenerRemove(t)))}},o instanceof Be?o.add(a):Array.isArray(o)&&o.push(a),a}),this._event},enumerable:!0,configurable:!0}),e.prototype.fire=function(e){if(this._listeners){this._deliveryQueue||(this._deliveryQueue=new Qe);for(var t=this._listeners.iterator(),n=t.next();!n.done;n=t.next())this._deliveryQueue.push([n.value,e]);for(;this._deliveryQueue.size>0;){var i=this._deliveryQueue.shift(),o=i[0],r=i[1];try{"function"==typeof o?o.call(void 0,r):o[0].call(o[1],r)}catch(n){De(n)}}}},e.prototype.dispose=function(){this._listeners&&this._listeners.clear(),this._deliveryQueue&&this._deliveryQueue.clear(),this._leakageMon&&this._leakageMon.dispose(),this._disposed=!0},e._noop=function(){},e}(),it=function(e){function t(t){var n=e.call(this,t)||this;return n._isPaused=0,n._eventQueue=new Qe,n._mergeFn=t&&t.merge,n}return Je(t,e),t.prototype.pause=function(){this._isPaused++},t.prototype.resume=function(){if(0!==this._isPaused&&0==--this._isPaused)if(this._mergeFn){var t=this._eventQueue.toArray();this._eventQueue.clear(),e.prototype.fire.call(this,this._mergeFn(t))}else for(;!this._isPaused&&0!==this._eventQueue.size;)e.prototype.fire.call(this,this._eventQueue.shift())},t.prototype.fire=function(t){this._listeners&&(0!==this._isPaused?this._eventQueue.push(t):e.prototype.fire.call(this,t))},t}(nt),ot=function(){function e(){var e=this;this.hasListeners=!1,this.events=[],this.emitter=new nt({onFirstListenerAdd:function(){return e.onFirstListenerAdd()},onLastListenerRemove:function(){return e.onLastListenerRemove()}})}return Object.defineProperty(e.prototype,"event",{get:function(){return this.emitter.event},enumerable:!0,configurable:!0}),e.prototype.add=function(e){var t=this,n={event:e,listener:null};this.events.push(n),this.hasListeners&&this.hook(n);return We(Te((function(){t.hasListeners&&t.unhook(n);var e=t.events.indexOf(n);t.events.splice(e,1)})))},e.prototype.onFirstListenerAdd=function(){var e=this;this.hasListeners=!0,this.events.forEach((function(t){return e.hook(t)}))},e.prototype.onLastListenerRemove=function(){var e=this;this.hasListeners=!1,this.events.forEach((function(t){return e.unhook(t)}))},e.prototype.hook=function(e){var t=this;e.listener=e.event((function(e){return t.emitter.fire(e)}))},e.prototype.unhook=function(e){e.listener&&e.listener.dispose(),e.listener=null},e.prototype.dispose=function(){this.emitter.dispose()},e}(),rt=function(){function e(){this.buffers=[]}return e.prototype.wrapEvent=function(e){var t=this;return function(n,i,o){return e((function(e){var o=t.buffers[t.buffers.length-1];o?o.push((function(){return n.call(i,e)})):n.call(i,e)}),void 0,o)}},e.prototype.bufferEvents=function(e){var t=[];this.buffers.push(t);var n=e();return this.buffers.pop(),t.forEach((function(e){return e()})),n},e}(),st=function(){function e(){var e=this;this.listening=!1,this.inputEvent=Ge.None,this.inputEventListener=He.None,this.emitter=new nt({onFirstListenerDidAdd:function(){e.listening=!0,e.inputEventListener=e.inputEvent(e.emitter.fire,e.emitter)},onLastListenerRemove:function(){e.listening=!1,e.inputEventListener.dispose()}}),this.event=this.emitter.event}return Object.defineProperty(e.prototype,"input",{set:function(e){this.inputEvent=e,this.listening&&(this.inputEventListener.dispose(),this.inputEventListener=e(this.emitter.fire,this.emitter))},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){this.inputEventListener.dispose(),this.emitter.dispose()},e}(),at=Object.freeze((function(e,t){var n=setTimeout(e.bind(t),0);return{dispose:function(){clearTimeout(n)}}}));(tt=et||(et={})).isCancellationToken=function(e){return e===tt.None||e===tt.Cancelled||e instanceof lt||!(!e||"object"!=typeof e)&&"boolean"==typeof e.isCancellationRequested&&"function"==typeof e.onCancellationRequested},tt.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:Ge.None}),tt.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:at});var ut,lt=function(){function e(){this._isCancelled=!1,this._emitter=null}return e.prototype.cancel=function(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))},Object.defineProperty(e.prototype,"isCancellationRequested",{get:function(){return this._isCancelled},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onCancellationRequested",{get:function(){return this._isCancelled?at:(this._emitter||(this._emitter=new nt),this._emitter.event)},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){this._emitter&&(this._emitter.dispose(),this._emitter=null)},e}(),ct=function(){function e(e){this._token=void 0,this._parentListener=void 0,this._parentListener=e&&e.onCancellationRequested(this.cancel,this)}return Object.defineProperty(e.prototype,"token",{get:function(){return this._token||(this._token=new lt),this._token},enumerable:!0,configurable:!0}),e.prototype.cancel=function(){this._token?this._token instanceof lt&&this._token.cancel():this._token=et.Cancelled},e.prototype.dispose=function(e){void 0===e&&(e=!1),e&&this.cancel(),this._parentListener&&this._parentListener.dispose(),this._token?this._token instanceof lt&&this._token.dispose():this._token=et.None},e}(),dt=function(){function e(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}return e.prototype.define=function(e,t){this._keyCodeToStr[e]=t,this._strToKeyCode[t.toLowerCase()]=e},e.prototype.keyCodeToStr=function(e){return this._keyCodeToStr[e]},e.prototype.strToKeyCode=function(e){return this._strToKeyCode[e.toLowerCase()]||0},e}(),ht=new dt,pt=new dt,ft=new dt;function gt(e,t){return(e|(65535&t)<<16>>>0)>>>0}function mt(e,t){if(0===e)return null;var n=(65535&e)>>>0,i=(4294901760&e)>>>16;return new bt(0!==i?[vt(n,t),vt(i,t)]:[vt(n,t)])}function vt(e,t){var n=!!(2048&e),i=!!(256&e);return new yt(2===t?i:n,!!(1024&e),!!(512&e),2===t?n:i,255&e)}!function(){function e(e,t,n,i){void 0===n&&(n=t),void 0===i&&(i=n),ht.define(e,t),pt.define(e,n),ft.define(e,i)}e(0,"unknown"),e(1,"Backspace"),e(2,"Tab"),e(3,"Enter"),e(4,"Shift"),e(5,"Ctrl"),e(6,"Alt"),e(7,"PauseBreak"),e(8,"CapsLock"),e(9,"Escape"),e(10,"Space"),e(11,"PageUp"),e(12,"PageDown"),e(13,"End"),e(14,"Home"),e(15,"LeftArrow","Left"),e(16,"UpArrow","Up"),e(17,"RightArrow","Right"),e(18,"DownArrow","Down"),e(19,"Insert"),e(20,"Delete"),e(21,"0"),e(22,"1"),e(23,"2"),e(24,"3"),e(25,"4"),e(26,"5"),e(27,"6"),e(28,"7"),e(29,"8"),e(30,"9"),e(31,"A"),e(32,"B"),e(33,"C"),e(34,"D"),e(35,"E"),e(36,"F"),e(37,"G"),e(38,"H"),e(39,"I"),e(40,"J"),e(41,"K"),e(42,"L"),e(43,"M"),e(44,"N"),e(45,"O"),e(46,"P"),e(47,"Q"),e(48,"R"),e(49,"S"),e(50,"T"),e(51,"U"),e(52,"V"),e(53,"W"),e(54,"X"),e(55,"Y"),e(56,"Z"),e(57,"Meta"),e(58,"ContextMenu"),e(59,"F1"),e(60,"F2"),e(61,"F3"),e(62,"F4"),e(63,"F5"),e(64,"F6"),e(65,"F7"),e(66,"F8"),e(67,"F9"),e(68,"F10"),e(69,"F11"),e(70,"F12"),e(71,"F13"),e(72,"F14"),e(73,"F15"),e(74,"F16"),e(75,"F17"),e(76,"F18"),e(77,"F19"),e(78,"NumLock"),e(79,"ScrollLock"),e(80,";",";","OEM_1"),e(81,"=","=","OEM_PLUS"),e(82,",",",","OEM_COMMA"),e(83,"-","-","OEM_MINUS"),e(84,".",".","OEM_PERIOD"),e(85,"/","/","OEM_2"),e(86,"`","`","OEM_3"),e(110,"ABNT_C1"),e(111,"ABNT_C2"),e(87,"[","[","OEM_4"),e(88,"\\","\\","OEM_5"),e(89,"]","]","OEM_6"),e(90,"'","'","OEM_7"),e(91,"OEM_8"),e(92,"OEM_102"),e(93,"NumPad0"),e(94,"NumPad1"),e(95,"NumPad2"),e(96,"NumPad3"),e(97,"NumPad4"),e(98,"NumPad5"),e(99,"NumPad6"),e(100,"NumPad7"),e(101,"NumPad8"),e(102,"NumPad9"),e(103,"NumPad_Multiply"),e(104,"NumPad_Add"),e(105,"NumPad_Separator"),e(106,"NumPad_Subtract"),e(107,"NumPad_Decimal"),e(108,"NumPad_Divide")}(),function(e){e.toString=function(e){return ht.keyCodeToStr(e)},e.fromString=function(e){return ht.strToKeyCode(e)},e.toUserSettingsUS=function(e){return pt.keyCodeToStr(e)},e.toUserSettingsGeneral=function(e){return ft.keyCodeToStr(e)},e.fromUserSettings=function(e){return pt.strToKeyCode(e)||ft.strToKeyCode(e)}}(ut||(ut={}));var _t,yt=function(){function e(e,t,n,i,o){this.ctrlKey=e,this.shiftKey=t,this.altKey=n,this.metaKey=i,this.keyCode=o}return e.prototype.equals=function(e){return this.ctrlKey===e.ctrlKey&&this.shiftKey===e.shiftKey&&this.altKey===e.altKey&&this.metaKey===e.metaKey&&this.keyCode===e.keyCode},e.prototype.isModifierKey=function(){return 0===this.keyCode||5===this.keyCode||57===this.keyCode||6===this.keyCode||4===this.keyCode},e.prototype.toChord=function(){return new bt([this])},e.prototype.isDuplicateModifierCase=function(){return this.ctrlKey&&5===this.keyCode||this.shiftKey&&4===this.keyCode||this.altKey&&6===this.keyCode||this.metaKey&&57===this.keyCode},e}(),bt=function(){function e(e){if(0===e.length)throw Oe("parts");this.parts=e}return e.prototype.equals=function(e){if(null===e)return!1;if(this.parts.length!==e.parts.length)return!1;for(var t=0;t<this.parts.length;t++)if(!this.parts[t].equals(e.parts[t]))return!1;return!0},e}(),wt=function(e,t,n,i,o,r){this.ctrlKey=e,this.shiftKey=t,this.altKey=n,this.metaKey=i,this.keyLabel=o,this.keyAriaLabel=r},Ct=function(){},St=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Lt=/^\w[\w\d+.-]*$/,xt=/^\//,Dt=/^\/\//;var Nt="/",kt=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,Et=function(){function e(e,t,n,i,o,r){void 0===r&&(r=!1),"object"==typeof e?(this.scheme=e.scheme||"",this.authority=e.authority||"",this.path=e.path||"",this.query=e.query||"",this.fragment=e.fragment||""):(this.scheme=function(e,t){return e||t?e:"file"}(e,r),this.authority=t||"",this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==Nt&&(t=Nt+t):t=Nt}return t}(this.scheme,n||""),this.query=i||"",this.fragment=o||"",function(e,t){if(!e.scheme&&t)throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'+e.authority+'", path: "'+e.path+'", query: "'+e.query+'", fragment: "'+e.fragment+'"}');if(e.scheme&&!Lt.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!xt.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(Dt.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}(this,r))}return e.isUri=function(t){return t instanceof e||!!t&&("string"==typeof t.authority&&"string"==typeof t.fragment&&"string"==typeof t.path&&"string"==typeof t.query&&"string"==typeof t.scheme&&"function"==typeof t.fsPath&&"function"==typeof t.with&&"function"==typeof t.toString)},Object.defineProperty(e.prototype,"fsPath",{get:function(){return Rt(this)},enumerable:!0,configurable:!0}),e.prototype.with=function(e){if(!e)return this;var t=e.scheme,n=e.authority,i=e.path,o=e.query,r=e.fragment;return void 0===t?t=this.scheme:null===t&&(t=""),void 0===n?n=this.authority:null===n&&(n=""),void 0===i?i=this.path:null===i&&(i=""),void 0===o?o=this.query:null===o&&(o=""),void 0===r?r=this.fragment:null===r&&(r=""),t===this.scheme&&n===this.authority&&i===this.path&&o===this.query&&r===this.fragment?this:new Ot(t,n,i,o,r)},e.parse=function(e,t){void 0===t&&(t=!1);var n=kt.exec(e);return n?new Ot(n[2]||"",Wt(n[4]||""),Wt(n[5]||""),Wt(n[7]||""),Wt(n[9]||""),t):new Ot("","","","","")},e.file=function(e){var t="";if(v&&(e=e.replace(/\\/g,Nt)),e[0]===Nt&&e[1]===Nt){var n=e.indexOf(Nt,2);-1===n?(t=e.substring(2),e=Nt):(t=e.substring(2,n),e=e.substring(n)||Nt)}return new Ot("file",t,e,"","")},e.from=function(e){return new Ot(e.scheme,e.authority,e.path,e.query,e.fragment)},e.prototype.toString=function(e){return void 0===e&&(e=!1),At(this,e)},e.prototype.toJSON=function(){return this},e.revive=function(t){if(t){if(t instanceof e)return t;var n=new Ot(t);return n._formatted=t.external,n._fsPath=t._sep===It?t.fsPath:null,n}return t},e}(),It=v?1:void 0,Ot=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._formatted=null,t._fsPath=null,t}return St(t,e),Object.defineProperty(t.prototype,"fsPath",{get:function(){return this._fsPath||(this._fsPath=Rt(this)),this._fsPath},enumerable:!0,configurable:!0}),t.prototype.toString=function(e){return void 0===e&&(e=!1),e?At(this,!0):(this._formatted||(this._formatted=At(this,!1)),this._formatted)},t.prototype.toJSON=function(){var e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=It),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e},t}(Et),Mt=((_t={})[58]="%3A",_t[47]="%2F",_t[63]="%3F",_t[35]="%23",_t[91]="%5B",_t[93]="%5D",_t[64]="%40",_t[33]="%21",_t[36]="%24",_t[38]="%26",_t[39]="%27",_t[40]="%28",_t[41]="%29",_t[42]="%2A",_t[43]="%2B",_t[44]="%2C",_t[59]="%3B",_t[61]="%3D",_t[32]="%20",_t);function Tt(e,t){for(var n=void 0,i=-1,o=0;o<e.length;o++){var r=e.charCodeAt(o);if(r>=97&&r<=122||r>=65&&r<=90||r>=48&&r<=57||45===r||46===r||95===r||126===r||t&&47===r)-1!==i&&(n+=encodeURIComponent(e.substring(i,o)),i=-1),void 0!==n&&(n+=e.charAt(o));else{void 0===n&&(n=e.substr(0,o));var s=Mt[r];void 0!==s?(-1!==i&&(n+=encodeURIComponent(e.substring(i,o)),i=-1),n+=s):-1===i&&(i=o)}}return-1!==i&&(n+=encodeURIComponent(e.substring(i))),void 0!==n?n:e}function Pt(e){for(var t=void 0,n=0;n<e.length;n++){var i=e.charCodeAt(n);35===i||63===i?(void 0===t&&(t=e.substr(0,n)),t+=Mt[i]):void 0!==t&&(t+=e[n])}return void 0!==t?t:e}function Rt(e){var t;return t=e.authority&&e.path.length>1&&"file"===e.scheme?"//"+e.authority+e.path:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?e.path[1].toLowerCase()+e.path.substr(2):e.path,v&&(t=t.replace(/\//g,"\\")),t}function At(e,t){var n=t?Pt:Tt,i="",o=e.scheme,r=e.authority,s=e.path,a=e.query,u=e.fragment;if(o&&(i+=o,i+=":"),(r||"file"===o)&&(i+=Nt,i+=Nt),r){var l=r.indexOf("@");if(-1!==l){var c=r.substr(0,l);r=r.substr(l+1),-1===(l=c.indexOf(":"))?i+=n(c,!1):(i+=n(c.substr(0,l),!1),i+=":",i+=n(c.substr(l+1),!1)),i+="@"}-1===(l=(r=r.toLowerCase()).indexOf(":"))?i+=n(r,!1):(i+=n(r.substr(0,l),!1),i+=r.substr(l))}if(s){if(s.length>=3&&47===s.charCodeAt(0)&&58===s.charCodeAt(2))(d=s.charCodeAt(1))>=65&&d<=90&&(s="/"+String.fromCharCode(d+32)+":"+s.substr(3));else if(s.length>=2&&58===s.charCodeAt(1)){var d;(d=s.charCodeAt(0))>=65&&d<=90&&(s=String.fromCharCode(d+32)+":"+s.substr(2))}i+=n(s,!0)}return a&&(i+="?",i+=n(a,!1)),u&&(i+="#",i+=t?u:Tt(u,!1)),i}var Ft=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function Wt(e){return e.match(Ft)?e.replace(Ft,(function(e){return function e(t){try{return decodeURIComponent(t)}catch(n){return t.length>3?t.substr(0,3)+e(t.substr(3)):t}}(e)})):e}var Vt,Bt,Ht,zt,jt,Ut,Kt,qt,Gt,Zt,Yt,Xt,$t,Qt,Jt,en,tn,nn,on,rn,sn,an,un,ln,cn,dn,hn,pn,fn,gn,mn,vn,_n,yn,bn=function(){function e(e,t){this.lineNumber=e,this.column=t}return e.prototype.with=function(t,n){return void 0===t&&(t=this.lineNumber),void 0===n&&(n=this.column),t===this.lineNumber&&n===this.column?this:new e(t,n)},e.prototype.delta=function(e,t){return void 0===e&&(e=0),void 0===t&&(t=0),this.with(this.lineNumber+e,this.column+t)},e.prototype.equals=function(t){return e.equals(this,t)},e.equals=function(e,t){return!e&&!t||!!e&&!!t&&e.lineNumber===t.lineNumber&&e.column===t.column},e.prototype.isBefore=function(t){return e.isBefore(this,t)},e.isBefore=function(e,t){return e.lineNumber<t.lineNumber||!(t.lineNumber<e.lineNumber)&&e.column<t.column},e.prototype.isBeforeOrEqual=function(t){return e.isBeforeOrEqual(this,t)},e.isBeforeOrEqual=function(e,t){return e.lineNumber<t.lineNumber||!(t.lineNumber<e.lineNumber)&&e.column<=t.column},e.compare=function(e,t){var n=0|e.lineNumber,i=0|t.lineNumber;return n===i?(0|e.column)-(0|t.column):n-i},e.prototype.clone=function(){return new e(this.lineNumber,this.column)},e.prototype.toString=function(){return"("+this.lineNumber+","+this.column+")"},e.lift=function(t){return new e(t.lineNumber,t.column)},e.isIPosition=function(e){return e&&"number"==typeof e.lineNumber&&"number"==typeof e.column},e}(),wn=function(){function e(e,t,n,i){e>n||e===n&&t>i?(this.startLineNumber=n,this.startColumn=i,this.endLineNumber=e,this.endColumn=t):(this.startLineNumber=e,this.startColumn=t,this.endLineNumber=n,this.endColumn=i)}return e.prototype.isEmpty=function(){return e.isEmpty(this)},e.isEmpty=function(e){return e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn},e.prototype.containsPosition=function(t){return e.containsPosition(this,t)},e.containsPosition=function(e,t){return!(t.lineNumber<e.startLineNumber||t.lineNumber>e.endLineNumber)&&(!(t.lineNumber===e.startLineNumber&&t.column<e.startColumn)&&!(t.lineNumber===e.endLineNumber&&t.column>e.endColumn))},e.prototype.containsRange=function(t){return e.containsRange(this,t)},e.containsRange=function(e,t){return!(t.startLineNumber<e.startLineNumber||t.endLineNumber<e.startLineNumber)&&(!(t.startLineNumber>e.endLineNumber||t.endLineNumber>e.endLineNumber)&&(!(t.startLineNumber===e.startLineNumber&&t.startColumn<e.startColumn)&&!(t.endLineNumber===e.endLineNumber&&t.endColumn>e.endColumn)))},e.prototype.strictContainsRange=function(t){return e.strictContainsRange(this,t)},e.strictContainsRange=function(e,t){return!(t.startLineNumber<e.startLineNumber||t.endLineNumber<e.startLineNumber)&&(!(t.startLineNumber>e.endLineNumber||t.endLineNumber>e.endLineNumber)&&(!(t.startLineNumber===e.startLineNumber&&t.startColumn<=e.startColumn)&&!(t.endLineNumber===e.endLineNumber&&t.endColumn>=e.endColumn)))},e.prototype.plusRange=function(t){return e.plusRange(this,t)},e.plusRange=function(t,n){var i,o,r,s;return n.startLineNumber<t.startLineNumber?(i=n.startLineNumber,o=n.startColumn):n.startLineNumber===t.startLineNumber?(i=n.startLineNumber,o=Math.min(n.startColumn,t.startColumn)):(i=t.startLineNumber,o=t.startColumn),n.endLineNumber>t.endLineNumber?(r=n.endLineNumber,s=n.endColumn):n.endLineNumber===t.endLineNumber?(r=n.endLineNumber,s=Math.max(n.endColumn,t.endColumn)):(r=t.endLineNumber,s=t.endColumn),new e(i,o,r,s)},e.prototype.intersectRanges=function(t){return e.intersectRanges(this,t)},e.intersectRanges=function(t,n){var i=t.startLineNumber,o=t.startColumn,r=t.endLineNumber,s=t.endColumn,a=n.startLineNumber,u=n.startColumn,l=n.endLineNumber,c=n.endColumn;return i<a?(i=a,o=u):i===a&&(o=Math.max(o,u)),r>l?(r=l,s=c):r===l&&(s=Math.min(s,c)),i>r||i===r&&o>s?null:new e(i,o,r,s)},e.prototype.equalsRange=function(t){return e.equalsRange(this,t)},e.equalsRange=function(e,t){return!!e&&!!t&&e.startLineNumber===t.startLineNumber&&e.startColumn===t.startColumn&&e.endLineNumber===t.endLineNumber&&e.endColumn===t.endColumn},e.prototype.getEndPosition=function(){return new bn(this.endLineNumber,this.endColumn)},e.prototype.getStartPosition=function(){return new bn(this.startLineNumber,this.startColumn)},e.prototype.toString=function(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"},e.prototype.setEndPosition=function(t,n){return new e(this.startLineNumber,this.startColumn,t,n)},e.prototype.setStartPosition=function(t,n){return new e(t,n,this.endLineNumber,this.endColumn)},e.prototype.collapseToStart=function(){return e.collapseToStart(this)},e.collapseToStart=function(t){return new e(t.startLineNumber,t.startColumn,t.startLineNumber,t.startColumn)},e.fromPositions=function(t,n){return void 0===n&&(n=t),new e(t.lineNumber,t.column,n.lineNumber,n.column)},e.lift=function(t){return t?new e(t.startLineNumber,t.startColumn,t.endLineNumber,t.endColumn):null},e.isIRange=function(e){return e&&"number"==typeof e.startLineNumber&&"number"==typeof e.startColumn&&"number"==typeof e.endLineNumber&&"number"==typeof e.endColumn},e.areIntersectingOrTouching=function(e,t){return!(e.endLineNumber<t.startLineNumber||e.endLineNumber===t.startLineNumber&&e.endColumn<t.startColumn)&&!(t.endLineNumber<e.startLineNumber||t.endLineNumber===e.startLineNumber&&t.endColumn<e.startColumn)},e.areIntersecting=function(e,t){return!(e.endLineNumber<t.startLineNumber||e.endLineNumber===t.startLineNumber&&e.endColumn<=t.startColumn)&&!(t.endLineNumber<e.startLineNumber||t.endLineNumber===e.startLineNumber&&t.endColumn<=e.startColumn)},e.compareRangesUsingStarts=function(e,t){if(e&&t){var n=0|e.startLineNumber,i=0|t.startLineNumber;if(n===i){var o=0|e.startColumn,r=0|t.startColumn;if(o===r){var s=0|e.endLineNumber,a=0|t.endLineNumber;return s===a?(0|e.endColumn)-(0|t.endColumn):s-a}return o-r}return n-i}return(e?1:0)-(t?1:0)},e.compareRangesUsingEnds=function(e,t){return e.endLineNumber===t.endLineNumber?e.endColumn===t.endColumn?e.startLineNumber===t.startLineNumber?e.startColumn-t.startColumn:e.startLineNumber-t.startLineNumber:e.endColumn-t.endColumn:e.endLineNumber-t.endLineNumber},e.spansMultipleLines=function(e){return e.endLineNumber>e.startLineNumber},e}(),Cn=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Sn=function(e){function t(t,n,i,o){var r=e.call(this,t,n,i,o)||this;return r.selectionStartLineNumber=t,r.selectionStartColumn=n,r.positionLineNumber=i,r.positionColumn=o,r}return Cn(t,e),t.prototype.toString=function(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"},t.prototype.equalsSelection=function(e){return t.selectionsEqual(this,e)},t.selectionsEqual=function(e,t){return e.selectionStartLineNumber===t.selectionStartLineNumber&&e.selectionStartColumn===t.selectionStartColumn&&e.positionLineNumber===t.positionLineNumber&&e.positionColumn===t.positionColumn},t.prototype.getDirection=function(){return this.selectionStartLineNumber===this.startLineNumber&&this.selectionStartColumn===this.startColumn?0:1},t.prototype.setEndPosition=function(e,n){return 0===this.getDirection()?new t(this.startLineNumber,this.startColumn,e,n):new t(e,n,this.startLineNumber,this.startColumn)},t.prototype.getPosition=function(){return new bn(this.positionLineNumber,this.positionColumn)},t.prototype.setStartPosition=function(e,n){return 0===this.getDirection()?new t(e,n,this.endLineNumber,this.endColumn):new t(this.endLineNumber,this.endColumn,e,n)},t.fromPositions=function(e,n){return void 0===n&&(n=e),new t(e.lineNumber,e.column,n.lineNumber,n.column)},t.liftSelection=function(e){return new t(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn)},t.selectionsArrEqual=function(e,t){if(e&&!t||!e&&t)return!1;if(!e&&!t)return!0;if(e.length!==t.length)return!1;for(var n=0,i=e.length;n<i;n++)if(!this.selectionsEqual(e[n],t[n]))return!1;return!0},t.isISelection=function(e){return e&&"number"==typeof e.selectionStartLineNumber&&"number"==typeof e.selectionStartColumn&&"number"==typeof e.positionLineNumber&&"number"==typeof e.positionColumn},t.createWithDirection=function(e,n,i,o,r){return 0===r?new t(e,n,i,o):new t(i,o,e,n)},t}(wn),Ln=function(){function e(e,t,n){this.offset=0|e,this.type=t,this.language=n}return e.prototype.toString=function(){return"("+this.offset+", "+this.type+")"},e}(),xn=function(e,t){this.tokens=e,this.endState=t},Dn=function(e,t){this.tokens=e,this.endState=t};!function(e){e[e.Unknown=0]="Unknown",e[e.Disabled=1]="Disabled",e[e.Enabled=2]="Enabled"}(Vt||(Vt={})),function(e){e[e.KeepWhitespace=1]="KeepWhitespace",e[e.InsertAsSnippet=4]="InsertAsSnippet"}(Bt||(Bt={})),function(e){e[e.Method=0]="Method",e[e.Function=1]="Function",e[e.Constructor=2]="Constructor",e[e.Field=3]="Field",e[e.Variable=4]="Variable",e[e.Class=5]="Class",e[e.Struct=6]="Struct",e[e.Interface=7]="Interface",e[e.Module=8]="Module",e[e.Property=9]="Property",e[e.Event=10]="Event",e[e.Operator=11]="Operator",e[e.Unit=12]="Unit",e[e.Value=13]="Value",e[e.Constant=14]="Constant",e[e.Enum=15]="Enum",e[e.EnumMember=16]="EnumMember",e[e.Keyword=17]="Keyword",e[e.Text=18]="Text",e[e.Color=19]="Color",e[e.File=20]="File",e[e.Reference=21]="Reference",e[e.Customcolor=22]="Customcolor",e[e.Folder=23]="Folder",e[e.TypeParameter=24]="TypeParameter",e[e.Snippet=25]="Snippet"}(Ht||(Ht={})),function(e){e[e.Deprecated=1]="Deprecated"}(zt||(zt={})),function(e){e[e.Invoke=0]="Invoke",e[e.TriggerCharacter=1]="TriggerCharacter",e[e.TriggerForIncompleteCompletions=2]="TriggerForIncompleteCompletions"}(jt||(jt={})),function(e){e[e.EXACT=0]="EXACT",e[e.ABOVE=1]="ABOVE",e[e.BELOW=2]="BELOW"}(Ut||(Ut={})),function(e){e[e.NotSet=0]="NotSet",e[e.ContentFlush=1]="ContentFlush",e[e.RecoverFromMarkers=2]="RecoverFromMarkers",e[e.Explicit=3]="Explicit",e[e.Paste=4]="Paste",e[e.Undo=5]="Undo",e[e.Redo=6]="Redo"}(Kt||(Kt={})),function(e){e[e.LF=1]="LF",e[e.CRLF=2]="CRLF"}(qt||(qt={})),function(e){e[e.Text=0]="Text",e[e.Read=1]="Read",e[e.Write=2]="Write"}(Gt||(Gt={})),function(e){e[e.None=0]="None",e[e.Keep=1]="Keep",e[e.Brackets=2]="Brackets",e[e.Advanced=3]="Advanced",e[e.Full=4]="Full"}(Zt||(Zt={})),function(e){e[e.acceptSuggestionOnCommitCharacter=0]="acceptSuggestionOnCommitCharacter",e[e.acceptSuggestionOnEnter=1]="acceptSuggestionOnEnter",e[e.accessibilitySupport=2]="accessibilitySupport",e[e.accessibilityPageSize=3]="accessibilityPageSize",e[e.ariaLabel=4]="ariaLabel",e[e.autoClosingBrackets=5]="autoClosingBrackets",e[e.autoClosingOvertype=6]="autoClosingOvertype",e[e.autoClosingQuotes=7]="autoClosingQuotes",e[e.autoIndent=8]="autoIndent",e[e.automaticLayout=9]="automaticLayout",e[e.autoSurround=10]="autoSurround",e[e.codeLens=11]="codeLens",e[e.colorDecorators=12]="colorDecorators",e[e.comments=13]="comments",e[e.contextmenu=14]="contextmenu",e[e.copyWithSyntaxHighlighting=15]="copyWithSyntaxHighlighting",e[e.cursorBlinking=16]="cursorBlinking",e[e.cursorSmoothCaretAnimation=17]="cursorSmoothCaretAnimation",e[e.cursorStyle=18]="cursorStyle",e[e.cursorSurroundingLines=19]="cursorSurroundingLines",e[e.cursorSurroundingLinesStyle=20]="cursorSurroundingLinesStyle",e[e.cursorWidth=21]="cursorWidth",e[e.disableLayerHinting=22]="disableLayerHinting",e[e.disableMonospaceOptimizations=23]="disableMonospaceOptimizations",e[e.dragAndDrop=24]="dragAndDrop",e[e.emptySelectionClipboard=25]="emptySelectionClipboard",e[e.extraEditorClassName=26]="extraEditorClassName",e[e.fastScrollSensitivity=27]="fastScrollSensitivity",e[e.find=28]="find",e[e.fixedOverflowWidgets=29]="fixedOverflowWidgets",e[e.folding=30]="folding",e[e.foldingStrategy=31]="foldingStrategy",e[e.foldingHighlight=32]="foldingHighlight",e[e.fontFamily=33]="fontFamily",e[e.fontInfo=34]="fontInfo",e[e.fontLigatures=35]="fontLigatures",e[e.fontSize=36]="fontSize",e[e.fontWeight=37]="fontWeight",e[e.formatOnPaste=38]="formatOnPaste",e[e.formatOnType=39]="formatOnType",e[e.glyphMargin=40]="glyphMargin",e[e.gotoLocation=41]="gotoLocation",e[e.hideCursorInOverviewRuler=42]="hideCursorInOverviewRuler",e[e.highlightActiveIndentGuide=43]="highlightActiveIndentGuide",e[e.hover=44]="hover",e[e.inDiffEditor=45]="inDiffEditor",e[e.letterSpacing=46]="letterSpacing",e[e.lightbulb=47]="lightbulb",e[e.lineDecorationsWidth=48]="lineDecorationsWidth",e[e.lineHeight=49]="lineHeight",e[e.lineNumbers=50]="lineNumbers",e[e.lineNumbersMinChars=51]="lineNumbersMinChars",e[e.links=52]="links",e[e.matchBrackets=53]="matchBrackets",e[e.minimap=54]="minimap",e[e.mouseStyle=55]="mouseStyle",e[e.mouseWheelScrollSensitivity=56]="mouseWheelScrollSensitivity",e[e.mouseWheelZoom=57]="mouseWheelZoom",e[e.multiCursorMergeOverlapping=58]="multiCursorMergeOverlapping",e[e.multiCursorModifier=59]="multiCursorModifier",e[e.multiCursorPaste=60]="multiCursorPaste",e[e.occurrencesHighlight=61]="occurrencesHighlight",e[e.overviewRulerBorder=62]="overviewRulerBorder",e[e.overviewRulerLanes=63]="overviewRulerLanes",e[e.parameterHints=64]="parameterHints",e[e.peekWidgetDefaultFocus=65]="peekWidgetDefaultFocus",e[e.quickSuggestions=66]="quickSuggestions",e[e.quickSuggestionsDelay=67]="quickSuggestionsDelay",e[e.readOnly=68]="readOnly",e[e.renderControlCharacters=69]="renderControlCharacters",e[e.renderIndentGuides=70]="renderIndentGuides",e[e.renderFinalNewline=71]="renderFinalNewline",e[e.renderLineHighlight=72]="renderLineHighlight",e[e.renderValidationDecorations=73]="renderValidationDecorations",e[e.renderWhitespace=74]="renderWhitespace",e[e.revealHorizontalRightPadding=75]="revealHorizontalRightPadding",e[e.roundedSelection=76]="roundedSelection",e[e.rulers=77]="rulers",e[e.scrollbar=78]="scrollbar",e[e.scrollBeyondLastColumn=79]="scrollBeyondLastColumn",e[e.scrollBeyondLastLine=80]="scrollBeyondLastLine",e[e.selectionClipboard=81]="selectionClipboard",e[e.selectionHighlight=82]="selectionHighlight",e[e.selectOnLineNumbers=83]="selectOnLineNumbers",e[e.showFoldingControls=84]="showFoldingControls",e[e.showUnused=85]="showUnused",e[e.snippetSuggestions=86]="snippetSuggestions",e[e.smoothScrolling=87]="smoothScrolling",e[e.stopRenderingLineAfter=88]="stopRenderingLineAfter",e[e.suggest=89]="suggest",e[e.suggestFontSize=90]="suggestFontSize",e[e.suggestLineHeight=91]="suggestLineHeight",e[e.suggestOnTriggerCharacters=92]="suggestOnTriggerCharacters",e[e.suggestSelection=93]="suggestSelection",e[e.tabCompletion=94]="tabCompletion",e[e.useTabStops=95]="useTabStops",e[e.wordSeparators=96]="wordSeparators",e[e.wordWrap=97]="wordWrap",e[e.wordWrapBreakAfterCharacters=98]="wordWrapBreakAfterCharacters",e[e.wordWrapBreakBeforeCharacters=99]="wordWrapBreakBeforeCharacters",e[e.wordWrapColumn=100]="wordWrapColumn",e[e.wordWrapMinified=101]="wordWrapMinified",e[e.wrappingIndent=102]="wrappingIndent",e[e.wrappingStrategy=103]="wrappingStrategy",e[e.editorClassName=104]="editorClassName",e[e.pixelRatio=105]="pixelRatio",e[e.tabFocusMode=106]="tabFocusMode",e[e.layoutInfo=107]="layoutInfo",e[e.wrappingInfo=108]="wrappingInfo"}(Yt||(Yt={})),function(e){e[e.TextDefined=0]="TextDefined",e[e.LF=1]="LF",e[e.CRLF=2]="CRLF"}(Xt||(Xt={})),function(e){e[e.LF=0]="LF",e[e.CRLF=1]="CRLF"}($t||($t={})),function(e){e[e.None=0]="None",e[e.Indent=1]="Indent",e[e.IndentOutdent=2]="IndentOutdent",e[e.Outdent=3]="Outdent"}(Qt||(Qt={})),function(e){e[e.Unknown=0]="Unknown",e[e.Backspace=1]="Backspace",e[e.Tab=2]="Tab",e[e.Enter=3]="Enter",e[e.Shift=4]="Shift",e[e.Ctrl=5]="Ctrl",e[e.Alt=6]="Alt",e[e.PauseBreak=7]="PauseBreak",e[e.CapsLock=8]="CapsLock",e[e.Escape=9]="Escape",e[e.Space=10]="Space",e[e.PageUp=11]="PageUp",e[e.PageDown=12]="PageDown",e[e.End=13]="End",e[e.Home=14]="Home",e[e.LeftArrow=15]="LeftArrow",e[e.UpArrow=16]="UpArrow",e[e.RightArrow=17]="RightArrow",e[e.DownArrow=18]="DownArrow",e[e.Insert=19]="Insert",e[e.Delete=20]="Delete",e[e.KEY_0=21]="KEY_0",e[e.KEY_1=22]="KEY_1",e[e.KEY_2=23]="KEY_2",e[e.KEY_3=24]="KEY_3",e[e.KEY_4=25]="KEY_4",e[e.KEY_5=26]="KEY_5",e[e.KEY_6=27]="KEY_6",e[e.KEY_7=28]="KEY_7",e[e.KEY_8=29]="KEY_8",e[e.KEY_9=30]="KEY_9",e[e.KEY_A=31]="KEY_A",e[e.KEY_B=32]="KEY_B",e[e.KEY_C=33]="KEY_C",e[e.KEY_D=34]="KEY_D",e[e.KEY_E=35]="KEY_E",e[e.KEY_F=36]="KEY_F",e[e.KEY_G=37]="KEY_G",e[e.KEY_H=38]="KEY_H",e[e.KEY_I=39]="KEY_I",e[e.KEY_J=40]="KEY_J",e[e.KEY_K=41]="KEY_K",e[e.KEY_L=42]="KEY_L",e[e.KEY_M=43]="KEY_M",e[e.KEY_N=44]="KEY_N",e[e.KEY_O=45]="KEY_O",e[e.KEY_P=46]="KEY_P",e[e.KEY_Q=47]="KEY_Q",e[e.KEY_R=48]="KEY_R",e[e.KEY_S=49]="KEY_S",e[e.KEY_T=50]="KEY_T",e[e.KEY_U=51]="KEY_U",e[e.KEY_V=52]="KEY_V",e[e.KEY_W=53]="KEY_W",e[e.KEY_X=54]="KEY_X",e[e.KEY_Y=55]="KEY_Y",e[e.KEY_Z=56]="KEY_Z",e[e.Meta=57]="Meta",e[e.ContextMenu=58]="ContextMenu",e[e.F1=59]="F1",e[e.F2=60]="F2",e[e.F3=61]="F3",e[e.F4=62]="F4",e[e.F5=63]="F5",e[e.F6=64]="F6",e[e.F7=65]="F7",e[e.F8=66]="F8",e[e.F9=67]="F9",e[e.F10=68]="F10",e[e.F11=69]="F11",e[e.F12=70]="F12",e[e.F13=71]="F13",e[e.F14=72]="F14",e[e.F15=73]="F15",e[e.F16=74]="F16",e[e.F17=75]="F17",e[e.F18=76]="F18",e[e.F19=77]="F19",e[e.NumLock=78]="NumLock",e[e.ScrollLock=79]="ScrollLock",e[e.US_SEMICOLON=80]="US_SEMICOLON",e[e.US_EQUAL=81]="US_EQUAL",e[e.US_COMMA=82]="US_COMMA",e[e.US_MINUS=83]="US_MINUS",e[e.US_DOT=84]="US_DOT",e[e.US_SLASH=85]="US_SLASH",e[e.US_BACKTICK=86]="US_BACKTICK",e[e.US_OPEN_SQUARE_BRACKET=87]="US_OPEN_SQUARE_BRACKET",e[e.US_BACKSLASH=88]="US_BACKSLASH",e[e.US_CLOSE_SQUARE_BRACKET=89]="US_CLOSE_SQUARE_BRACKET",e[e.US_QUOTE=90]="US_QUOTE",e[e.OEM_8=91]="OEM_8",e[e.OEM_102=92]="OEM_102",e[e.NUMPAD_0=93]="NUMPAD_0",e[e.NUMPAD_1=94]="NUMPAD_1",e[e.NUMPAD_2=95]="NUMPAD_2",e[e.NUMPAD_3=96]="NUMPAD_3",e[e.NUMPAD_4=97]="NUMPAD_4",e[e.NUMPAD_5=98]="NUMPAD_5",e[e.NUMPAD_6=99]="NUMPAD_6",e[e.NUMPAD_7=100]="NUMPAD_7",e[e.NUMPAD_8=101]="NUMPAD_8",e[e.NUMPAD_9=102]="NUMPAD_9",e[e.NUMPAD_MULTIPLY=103]="NUMPAD_MULTIPLY",e[e.NUMPAD_ADD=104]="NUMPAD_ADD",e[e.NUMPAD_SEPARATOR=105]="NUMPAD_SEPARATOR",e[e.NUMPAD_SUBTRACT=106]="NUMPAD_SUBTRACT",e[e.NUMPAD_DECIMAL=107]="NUMPAD_DECIMAL",e[e.NUMPAD_DIVIDE=108]="NUMPAD_DIVIDE",e[e.KEY_IN_COMPOSITION=109]="KEY_IN_COMPOSITION",e[e.ABNT_C1=110]="ABNT_C1",e[e.ABNT_C2=111]="ABNT_C2",e[e.MAX_VALUE=112]="MAX_VALUE"}(Jt||(Jt={})),(tn=en||(en={}))[tn.Hint=1]="Hint",tn[tn.Info=2]="Info",tn[tn.Warning=4]="Warning",tn[tn.Error=8]="Error",function(e){e[e.Unnecessary=1]="Unnecessary",e[e.Deprecated=2]="Deprecated"}(nn||(nn={})),function(e){e[e.Inline=1]="Inline",e[e.Gutter=2]="Gutter"}(on||(on={})),function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.TEXTAREA=1]="TEXTAREA",e[e.GUTTER_GLYPH_MARGIN=2]="GUTTER_GLYPH_MARGIN",e[e.GUTTER_LINE_NUMBERS=3]="GUTTER_LINE_NUMBERS",e[e.GUTTER_LINE_DECORATIONS=4]="GUTTER_LINE_DECORATIONS",e[e.GUTTER_VIEW_ZONE=5]="GUTTER_VIEW_ZONE",e[e.CONTENT_TEXT=6]="CONTENT_TEXT",e[e.CONTENT_EMPTY=7]="CONTENT_EMPTY",e[e.CONTENT_VIEW_ZONE=8]="CONTENT_VIEW_ZONE",e[e.CONTENT_WIDGET=9]="CONTENT_WIDGET",e[e.OVERVIEW_RULER=10]="OVERVIEW_RULER",e[e.SCROLLBAR=11]="SCROLLBAR",e[e.OVERLAY_WIDGET=12]="OVERLAY_WIDGET",e[e.OUTSIDE_EDITOR=13]="OUTSIDE_EDITOR"}(rn||(rn={})),function(e){e[e.TOP_RIGHT_CORNER=0]="TOP_RIGHT_CORNER",e[e.BOTTOM_RIGHT_CORNER=1]="BOTTOM_RIGHT_CORNER",e[e.TOP_CENTER=2]="TOP_CENTER"}(sn||(sn={})),function(e){e[e.Left=1]="Left",e[e.Center=2]="Center",e[e.Right=4]="Right",e[e.Full=7]="Full"}(an||(an={})),function(e){e[e.Off=0]="Off",e[e.On=1]="On",e[e.Relative=2]="Relative",e[e.Interval=3]="Interval",e[e.Custom=4]="Custom"}(un||(un={})),function(e){e[e.None=0]="None",e[e.Text=1]="Text",e[e.Blocks=2]="Blocks"}(ln||(ln={})),function(e){e[e.Smooth=0]="Smooth",e[e.Immediate=1]="Immediate"}(cn||(cn={})),function(e){e[e.Auto=1]="Auto",e[e.Hidden=2]="Hidden",e[e.Visible=3]="Visible"}(dn||(dn={})),function(e){e[e.LTR=0]="LTR",e[e.RTL=1]="RTL"}(hn||(hn={})),function(e){e[e.Invoke=1]="Invoke",e[e.TriggerCharacter=2]="TriggerCharacter",e[e.ContentChange=3]="ContentChange"}(pn||(pn={})),function(e){e[e.File=0]="File",e[e.Module=1]="Module",e[e.Namespace=2]="Namespace",e[e.Package=3]="Package",e[e.Class=4]="Class",e[e.Method=5]="Method",e[e.Property=6]="Property",e[e.Field=7]="Field",e[e.Constructor=8]="Constructor",e[e.Enum=9]="Enum",e[e.Interface=10]="Interface",e[e.Function=11]="Function",e[e.Variable=12]="Variable",e[e.Constant=13]="Constant",e[e.String=14]="String",e[e.Number=15]="Number",e[e.Boolean=16]="Boolean",e[e.Array=17]="Array",e[e.Object=18]="Object",e[e.Key=19]="Key",e[e.Null=20]="Null",e[e.EnumMember=21]="EnumMember",e[e.Struct=22]="Struct",e[e.Event=23]="Event",e[e.Operator=24]="Operator",e[e.TypeParameter=25]="TypeParameter"}(fn||(fn={})),function(e){e[e.Deprecated=1]="Deprecated"}(gn||(gn={})),function(e){e[e.Hidden=0]="Hidden",e[e.Blink=1]="Blink",e[e.Smooth=2]="Smooth",e[e.Phase=3]="Phase",e[e.Expand=4]="Expand",e[e.Solid=5]="Solid"}(mn||(mn={})),function(e){e[e.Line=1]="Line",e[e.Block=2]="Block",e[e.Underline=3]="Underline",e[e.LineThin=4]="LineThin",e[e.BlockOutline=5]="BlockOutline",e[e.UnderlineThin=6]="UnderlineThin"}(vn||(vn={})),function(e){e[e.AlwaysGrowsWhenTypingAtEdges=0]="AlwaysGrowsWhenTypingAtEdges",e[e.NeverGrowsWhenTypingAtEdges=1]="NeverGrowsWhenTypingAtEdges",e[e.GrowsOnlyWhenTypingBefore=2]="GrowsOnlyWhenTypingBefore",e[e.GrowsOnlyWhenTypingAfter=3]="GrowsOnlyWhenTypingAfter"}(_n||(_n={})),function(e){e[e.None=0]="None",e[e.Same=1]="Same",e[e.Indent=2]="Indent",e[e.DeepIndent=3]="DeepIndent"}(yn||(yn={}));var Nn=function(){function e(){}return e.chord=function(e,t){return gt(e,t)},e.CtrlCmd=2048,e.Shift=1024,e.Alt=512,e.WinCtrl=256,e}();function kn(){return{editor:void 0,languages:void 0,CancellationTokenSource:ct,Emitter:nt,KeyCode:Jt,KeyMod:Nn,Position:bn,Range:wn,Selection:Sn,SelectionDirection:hn,MarkerSeverity:en,MarkerTag:nn,Uri:Et,Token:Ln}}var En;n(370);!function(e){e.serviceIds=new Map,e.DI_TARGET="$di$target",e.DI_DEPENDENCIES="$di$dependencies",e.getServiceDependencies=function(t){return t[e.DI_DEPENDENCIES]||[]}}(En||(En={}));var In=Mn("instantiationService");function On(e,t,n,i){t[En.DI_TARGET]===t?t[En.DI_DEPENDENCIES].push({id:e,index:n,optional:i}):(t[En.DI_DEPENDENCIES]=[{id:e,index:n,optional:i}],t[En.DI_TARGET]=t)}function Mn(e){if(En.serviceIds.has(e))return En.serviceIds.get(e);var t=function(e,n,i){if(3!==arguments.length)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");On(t,e,i,!1)};return t.toString=function(){return e},En.serviceIds.set(e,t),t}function Tn(e){return function(t,n,i){if(3!==arguments.length)throw new Error("@optional-decorator can only be used to decorate a parameter");On(e,t,i,!0)}}var Pn=Mn("codeEditorService"),Rn=function(){function e(){this._zoomLevel=0,this._lastZoomLevelChangeTime=0,this._onDidChangeZoomLevel=new nt,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event}return e.prototype.getZoomLevel=function(){return this._zoomLevel},e.prototype.getTimeSinceLastZoomLevelChanged=function(){return Date.now()-this._lastZoomLevelChangeTime},e.prototype.getPixelRatio=function(){var e=document.createElement("canvas").getContext("2d");return(window.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1)},e.INSTANCE=new e,e}();function An(){return Rn.INSTANCE.getZoomLevel()}function Fn(e){return Rn.INSTANCE.onDidChangeZoomLevel(e)}var Wn=navigator.userAgent,Vn=Wn.indexOf("Trident")>=0,Bn=Wn.indexOf("Edge/")>=0,Hn=Vn||Bn,zn=Wn.indexOf("Firefox")>=0,jn=Wn.indexOf("AppleWebKit")>=0,Un=Wn.indexOf("Chrome")>=0,Kn=!Un&&Wn.indexOf("Safari")>=0,qn=!Un&&!Kn&&jn,Gn=Wn.indexOf("iPad")>=0||Kn&&navigator.maxTouchPoints>0,Zn=Bn&&Wn.indexOf("WebView/")>=0,Yn=window.matchMedia&&window.matchMedia("(display-mode: standalone)").matches,Xn=function(e,t,n){var i=function(e){return o.fire(e)},o=new nt({onFirstListenerAdd:function(){e.addEventListener(t,i,n)},onLastListenerRemove:function(){e.removeEventListener(t,i,n)}});return o.event};function $n(e){return Ge.map(e,(function(e){return e.preventDefault(),e.stopPropagation(),e}))}var Qn=new Array(230),Jn=new Array(112);!function(){for(var e=0;e<Jn.length;e++)Jn[e]=-1;function t(e,t){Qn[e]=t,Jn[t]=e}t(3,7),t(8,1),t(9,2),t(13,3),t(16,4),t(17,5),t(18,6),t(19,7),t(20,8),t(27,9),t(32,10),t(33,11),t(34,12),t(35,13),t(36,14),t(37,15),t(38,16),t(39,17),t(40,18),t(45,19),t(46,20),t(48,21),t(49,22),t(50,23),t(51,24),t(52,25),t(53,26),t(54,27),t(55,28),t(56,29),t(57,30),t(65,31),t(66,32),t(67,33),t(68,34),t(69,35),t(70,36),t(71,37),t(72,38),t(73,39),t(74,40),t(75,41),t(76,42),t(77,43),t(78,44),t(79,45),t(80,46),t(81,47),t(82,48),t(83,49),t(84,50),t(85,51),t(86,52),t(87,53),t(88,54),t(89,55),t(90,56),t(93,58),t(96,93),t(97,94),t(98,95),t(99,96),t(100,97),t(101,98),t(102,99),t(103,100),t(104,101),t(105,102),t(106,103),t(107,104),t(108,105),t(109,106),t(110,107),t(111,108),t(112,59),t(113,60),t(114,61),t(115,62),t(116,63),t(117,64),t(118,65),t(119,66),t(120,67),t(121,68),t(122,69),t(123,70),t(124,71),t(125,72),t(126,73),t(127,74),t(128,75),t(129,76),t(130,77),t(144,78),t(145,79),t(186,80),t(187,81),t(188,82),t(189,83),t(190,84),t(191,85),t(192,86),t(193,110),t(194,111),t(219,87),t(220,88),t(221,89),t(222,90),t(223,91),t(226,92),t(229,109),Vn?t(91,57):zn?(t(59,80),t(107,81),t(109,83),_&&t(224,57)):jn&&(t(91,57),t(_?93:92,57))}();var ei=_?256:2048,ti=_?2048:256,ni=function(){function e(e){this._standardKeyboardEventBrand=!0;var t=e;this.browserEvent=t,this.target=t.target,this.ctrlKey=t.ctrlKey,this.shiftKey=t.shiftKey,this.altKey=t.altKey,this.metaKey=t.metaKey,this.keyCode=function(e){if(e.charCode){var t=String.fromCharCode(e.charCode).toUpperCase();return ut.fromString(t)}return Qn[e.keyCode]||0}(t),this.code=t.code,this.ctrlKey=this.ctrlKey||5===this.keyCode,this.altKey=this.altKey||6===this.keyCode,this.shiftKey=this.shiftKey||4===this.keyCode,this.metaKey=this.metaKey||57===this.keyCode,this._asKeybinding=this._computeKeybinding(),this._asRuntimeKeybinding=this._computeRuntimeKeybinding()}return e.prototype.preventDefault=function(){this.browserEvent&&this.browserEvent.preventDefault&&this.browserEvent.preventDefault()},e.prototype.stopPropagation=function(){this.browserEvent&&this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()},e.prototype.toKeybinding=function(){return this._asRuntimeKeybinding},e.prototype.equals=function(e){return this._asKeybinding===e},e.prototype._computeKeybinding=function(){var e=0;5!==this.keyCode&&4!==this.keyCode&&6!==this.keyCode&&57!==this.keyCode&&(e=this.keyCode);var t=0;return this.ctrlKey&&(t|=ei),this.altKey&&(t|=512),this.shiftKey&&(t|=1024),this.metaKey&&(t|=ti),t|=e},e.prototype._computeRuntimeKeybinding=function(){var e=0;return 5!==this.keyCode&&4!==this.keyCode&&6!==this.keyCode&&57!==this.keyCode&&(e=this.keyCode),new yt(this.ctrlKey,this.shiftKey,this.altKey,this.metaKey,e)},e}(),ii=!1,oi=null;function ri(e){if(!e.parent||e.parent===e)return null;try{var t=e.location,n=e.parent.location;if(t.protocol!==n.protocol||t.hostname!==n.hostname||t.port!==n.port)return ii=!0,null}catch(e){return ii=!0,null}return e.parent}function si(e,t){for(var n,i=e.document.getElementsByTagName("iframe"),o=0,r=i.length;o<r;o++)if((n=i[o]).contentWindow===t)return n;return null}var ai=function(){function e(){}return e.getSameOriginWindowChain=function(){if(!oi){oi=[];var e,t=window;do{(e=ri(t))?oi.push({window:t,iframeElement:si(e,t)}):oi.push({window:t,iframeElement:null}),t=e}while(t)}return oi.slice(0)},e.hasDifferentOriginAncestor=function(){return oi||this.getSameOriginWindowChain(),ii},e.getPositionOfChildWindowRelativeToAncestorWindow=function(e,t){if(!t||e===t)return{top:0,left:0};for(var n=0,i=0,o=0,r=this.getSameOriginWindowChain();o<r.length;o++){var s=r[o];if(s.window===t)break;if(!s.iframeElement)break;var a=s.iframeElement.getBoundingClientRect();n+=a.top,i+=a.left}return{top:n,left:i}},e}(),ui=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),li=function(){function e(e){this.timestamp=Date.now(),this.browserEvent=e,this.leftButton=0===e.button,this.middleButton=1===e.button,this.rightButton=2===e.button,this.buttons=e.buttons,this.target=e.target,this.detail=e.detail||1,"dblclick"===e.type&&(this.detail=2),this.ctrlKey=e.ctrlKey,this.shiftKey=e.shiftKey,this.altKey=e.altKey,this.metaKey=e.metaKey,"number"==typeof e.pageX?(this.posx=e.pageX,this.posy=e.pageY):(this.posx=e.clientX+document.body.scrollLeft+document.documentElement.scrollLeft,this.posy=e.clientY+document.body.scrollTop+document.documentElement.scrollTop);var t=ai.getPositionOfChildWindowRelativeToAncestorWindow(self,e.view);this.posx-=t.left,this.posy-=t.top}return e.prototype.preventDefault=function(){this.browserEvent.preventDefault&&this.browserEvent.preventDefault()},e.prototype.stopPropagation=function(){this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()},e}(),ci=function(e){function t(t){var n=e.call(this,t)||this;return n.dataTransfer=t.dataTransfer,n}return ui(t,e),t}(li),di=function(){function e(e,t,n){if(void 0===t&&(t=0),void 0===n&&(n=0),this.browserEvent=e||null,this.target=e?e.target||e.targetNode||e.srcElement:null,this.deltaY=n,this.deltaX=t,e){var i=e,o=e;if(void 0!==i.wheelDeltaY)this.deltaY=i.wheelDeltaY/120;else if(void 0!==o.VERTICAL_AXIS&&o.axis===o.VERTICAL_AXIS)this.deltaY=-o.detail/3;else if("wheel"===e.type){(r=e).deltaMode===r.DOM_DELTA_LINE?this.deltaY=-e.deltaY:this.deltaY=-e.deltaY/40}if(void 0!==i.wheelDeltaX)this.deltaX=Kn&&v?-i.wheelDeltaX/120:i.wheelDeltaX/120;else if(void 0!==o.HORIZONTAL_AXIS&&o.axis===o.HORIZONTAL_AXIS)this.deltaX=-e.detail/3;else if("wheel"===e.type){var r;(r=e).deltaMode===r.DOM_DELTA_LINE?this.deltaX=-e.deltaX:this.deltaX=-e.deltaX/40}0===this.deltaY&&0===this.deltaX&&e.wheelDelta&&(this.deltaY=e.wheelDelta/120)}}return e.prototype.preventDefault=function(){this.browserEvent&&this.browserEvent.preventDefault&&this.browserEvent.preventDefault()},e.prototype.stopPropagation=function(){this.browserEvent&&this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()},e}();function hi(e){var t=new ct,n=e(t.token),i=new Promise((function(e,i){t.token.onCancellationRequested((function(){i(Ie())})),Promise.resolve(n).then((function(n){t.dispose(),e(n)}),(function(e){t.dispose(),i(e)}))}));return new(function(){function e(){}return e.prototype.cancel=function(){t.cancel()},e.prototype.then=function(e,t){return i.then(e,t)},e.prototype.catch=function(e){return this.then(void 0,e)},e.prototype.finally=function(e){return i.finally(e)},e}())}function pi(e,t,n){return Promise.race([e,new Promise((function(e){return t.onCancellationRequested((function(){return e(n)}))}))])}var fi=function(){function e(e){this.defaultDelay=e,this.timeout=null,this.completionPromise=null,this.doResolve=null,this.doReject=null,this.task=null}return e.prototype.trigger=function(e,t){var n=this;return void 0===t&&(t=this.defaultDelay),this.task=e,this.cancelTimeout(),this.completionPromise||(this.completionPromise=new Promise((function(e,t){n.doResolve=e,n.doReject=t})).then((function(){if(n.completionPromise=null,n.doResolve=null,n.task){var e=n.task;return n.task=null,e()}}))),this.timeout=setTimeout((function(){n.timeout=null,n.doResolve&&n.doResolve(null)}),t),this.completionPromise},e.prototype.isTriggered=function(){return null!==this.timeout},e.prototype.cancel=function(){this.cancelTimeout(),this.completionPromise&&(this.doReject&&this.doReject(Ie()),this.completionPromise=null)},e.prototype.cancelTimeout=function(){null!==this.timeout&&(clearTimeout(this.timeout),this.timeout=null)},e.prototype.dispose=function(){this.cancelTimeout()},e}();function gi(e,t){return t?new Promise((function(n,i){var o=setTimeout(n,e);t.onCancellationRequested((function(){clearTimeout(o),i(Ie())}))})):hi((function(t){return gi(e,t)}))}function mi(e,t){void 0===t&&(t=0);var n=setTimeout(e,t);return We((function(){return clearTimeout(n)}))}function vi(e,t,n){void 0===t&&(t=function(e){return!!e}),void 0===n&&(n=null);var i=0,o=e.length,r=function(){if(i>=o)return Promise.resolve(n);var s=e[i++];return Promise.resolve(s()).then((function(e){return t(e)?Promise.resolve(e):r()}))};return r()}var _i,yi=function(){function e(e,t){this._token=-1,"function"==typeof e&&"number"==typeof t&&this.setIfNotSet(e,t)}return e.prototype.dispose=function(){this.cancel()},e.prototype.cancel=function(){-1!==this._token&&(clearTimeout(this._token),this._token=-1)},e.prototype.cancelAndSet=function(e,t){var n=this;this.cancel(),this._token=setTimeout((function(){n._token=-1,e()}),t)},e.prototype.setIfNotSet=function(e,t){var n=this;-1===this._token&&(this._token=setTimeout((function(){n._token=-1,e()}),t))},e}(),bi=function(){function e(){this._token=-1}return e.prototype.dispose=function(){this.cancel()},e.prototype.cancel=function(){-1!==this._token&&(clearInterval(this._token),this._token=-1)},e.prototype.cancelAndSet=function(e,t){this.cancel(),this._token=setInterval((function(){e()}),t)},e}(),wi=function(){function e(e,t){this.timeoutToken=-1,this.runner=e,this.timeout=t,this.timeoutHandler=this.onTimeout.bind(this)}return e.prototype.dispose=function(){this.cancel(),this.runner=null},e.prototype.cancel=function(){this.isScheduled()&&(clearTimeout(this.timeoutToken),this.timeoutToken=-1)},e.prototype.schedule=function(e){void 0===e&&(e=this.timeout),this.cancel(),this.timeoutToken=setTimeout(this.timeoutHandler,e)},e.prototype.isScheduled=function(){return-1!==this.timeoutToken},e.prototype.onTimeout=function(){this.timeoutToken=-1,this.runner&&this.doRun()},e.prototype.doRun=function(){this.runner&&this.runner()},e}();!function(){if("function"!=typeof requestIdleCallback||"function"!=typeof cancelIdleCallback){var e=Object.freeze({didTimeout:!0,timeRemaining:function(){return 15}});_i=function(t){var n=setTimeout((function(){return t(e)})),i=!1;return{dispose:function(){i||(i=!0,clearTimeout(n))}}}}else _i=function(e,t){var n=requestIdleCallback(e,"number"==typeof t?{timeout:t}:void 0),i=!1;return{dispose:function(){i||(i=!0,cancelIdleCallback(n))}}}}();var Ci,Si=function(){function e(e){var t=this;this._didRun=!1,this._executor=function(){try{t._value=e()}catch(e){t._error=e}finally{t._didRun=!0}},this._handle=_i((function(){return t._executor()}))}return e.prototype.dispose=function(){this._handle.dispose()},e.prototype.getValue=function(){if(this._didRun||(this._handle.dispose(),this._executor()),this._error)throw this._error;return this._value},e}();function Li(e,t){return void 0===t&&(t=0),e[e.length-(1+t)]}function xi(e,t,n){if(void 0===n&&(n=function(e,t){return e===t}),e===t)return!0;if(!e||!t)return!1;if(e.length!==t.length)return!1;for(var i=0,o=e.length;i<o;i++)if(!n(e[i],t[i]))return!1;return!0}function Di(e,t,n){for(var i=0,o=e.length-1;i<=o;){var r=(i+o)/2|0,s=n(e[r],t);if(s<0)i=r+1;else{if(!(s>0))return r;o=r-1}}return-(i+1)}function Ni(e,t){return function e(t,n,i,o,r){if(o<=i)return;var s=i+(o-i)/2|0;if(e(t,n,i,s,r),e(t,n,s+1,o,r),n(t[s],t[s+1])<=0)return;!function(e,t,n,i,o,r){for(var s=n,a=i+1,u=n;u<=o;u++)r[u]=e[u];for(u=n;u<=o;u++)s>i?e[u]=r[a++]:a>o?e[u]=r[s++]:t(r[a],r[s])<0?e[u]=r[a++]:e[u]=r[s++]}(t,n,i,s,o,r)}(e,t,0,e.length-1,[]),e}function ki(e,t){for(var n=[],i=void 0,o=0,r=Ni(e.slice(0),t);o<r.length;o++){var s=r[o];i&&0===t(i[0],s)?i.push(s):(i=[s],n.push(i))}return n}function Ei(e){return e.filter((function(e){return!!e}))}function Ii(e){return!Array.isArray(e)||0===e.length}function Oi(e){return Array.isArray(e)&&e.length>0}function Mi(e,t){if(!t)return e.filter((function(t,n){return e.indexOf(t)===n}));var n=Object.create(null);return e.filter((function(e){var i=t(e);return!n[i]&&(n[i]=!0,!0)}))}function Ti(e){var t=new Set;return e.filter((function(e){return!t.has(e)&&(t.add(e),!0)}))}function Pi(e,t){for(var n=0;n<e.length;n++){if(t(e[n]))return n}return-1}function Ri(e,t,n){void 0===n&&(n=void 0);var i=Pi(e,t);return i<0?n:e[i]}function Ai(e,t){return e.length>0?e[0]:t}function Fi(e){var t;return(t=[]).concat.apply(t,e)}function Wi(e,t){var n="number"==typeof t?e:0;"number"==typeof t?n=e:(n=0,t=e);var i=[];if(n<=t)for(var o=n;o<t;o++)i.push(o);else for(o=n;o>t;o--)i.push(o);return i}function Vi(e,t,n){var i=e.slice(0,t),o=e.slice(t);return i.concat(n,o)}function Bi(e,t){var n=e.indexOf(t);n>-1&&(e.splice(n,1),e.unshift(t))}function Hi(e,t){var n=e.indexOf(t);n>-1&&(e.splice(n,1),e.push(t))}function zi(e,t){for(var n=0;n<e.length;n++){var i=e[n];if(t(i,n,e))return i}}function ji(e){return Array.isArray(e)?e:[e]}!function(e){e.inMemory="inmemory",e.vscode="vscode",e.internal="private",e.walkThrough="walkThrough",e.walkThroughSnippet="walkThroughSnippet",e.http="http",e.https="https",e.file="file",e.mailto="mailto",e.untitled="untitled",e.data="data",e.command="command",e.vscodeRemote="vscode-remote",e.vscodeRemoteResource="vscode-remote-resource",e.userData="vscode-userdata"}(Ci||(Ci={}));var Ui=new(function(){function e(){this._hosts=Object.create(null),this._ports=Object.create(null),this._connectionTokens=Object.create(null),this._preferredWebSchema="http",this._delegate=null}return e.prototype.setPreferredWebSchema=function(e){this._preferredWebSchema=e},e.prototype.rewrite=function(e){if(this._delegate)return this._delegate(e);var t=e.authority,n=this._hosts[t];n&&-1!==n.indexOf(":")&&(n="["+n+"]");var i=this._ports[t],o=this._connectionTokens[t],r="path="+encodeURIComponent(e.path);return"string"==typeof o&&(r+="&tkn="+encodeURIComponent(o)),Et.from({scheme:w?this._preferredWebSchema:Ci.vscodeRemoteResource,authority:n+":"+i,path:"/vscode-remote-resource",query:r})},e}()),Ki={clipboard:{writeText:b||document.queryCommandSupported&&document.queryCommandSupported("copy")||!!(navigator&&navigator.clipboard&&navigator.clipboard.writeText),readText:b||!!(navigator&&navigator.clipboard&&navigator.clipboard.readText),richText:function(){if(Vn)return!1;if(Bn){var e=navigator.userAgent.indexOf("Edge/"),t=parseInt(navigator.userAgent.substring(e+5,navigator.userAgent.indexOf(".",e)),10);if(!t||t>=12&&t<=16)return!1}return!0}()},keyboard:b||Yn?0:navigator.keyboard||Kn?1:2,touch:"ontouchstart"in window||navigator.maxTouchPoints>0||window.navigator.msMaxTouchPoints>0,pointerEvents:window.PointerEvent&&("ontouchstart"in window||window.navigator.maxTouchPoints>0||navigator.maxTouchPoints>0||window.navigator.msMaxTouchPoints>0)},qi=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Gi=function(){return(Gi=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},Zi=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i};function Yi(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function Xi(e){e.parentNode&&e.parentNode.removeChild(e)}function $i(e){for(;e;){if(e===document.body)return!0;e=e.parentNode||e.host}return!1}var Qi=new(function(){function e(){this._lastStart=-1,this._lastEnd=-1}return e.prototype._findClassName=function(e,t){var n=e.className;if(n){t=t.trim();var i=n.length,o=t.length;if(0!==o)if(i<o)this._lastStart=-1;else{if(n===t)return this._lastStart=0,void(this._lastEnd=i);for(var r,s=-1;(s=n.indexOf(t,s+1))>=0;){if(r=s+o,(0===s||32===n.charCodeAt(s-1))&&32===n.charCodeAt(r))return this._lastStart=s,void(this._lastEnd=r+1);if(s>0&&32===n.charCodeAt(s-1)&&r===i)return this._lastStart=s-1,void(this._lastEnd=r);if(0===s&&r===i)return this._lastStart=0,void(this._lastEnd=r)}this._lastStart=-1}else this._lastStart=-1}else this._lastStart=-1},e.prototype.hasClass=function(e,t){return this._findClassName(e,t),-1!==this._lastStart},e.prototype.addClasses=function(e){for(var t=this,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];n.forEach((function(n){return n.split(" ").forEach((function(n){return t.addClass(e,n)}))}))},e.prototype.addClass=function(e,t){e.className?(this._findClassName(e,t),-1===this._lastStart&&(e.className=e.className+" "+t)):e.className=t},e.prototype.removeClass=function(e,t){this._findClassName(e,t),-1!==this._lastStart&&(e.className=e.className.substring(0,this._lastStart)+e.className.substring(this._lastEnd))},e.prototype.removeClasses=function(e){for(var t=this,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];n.forEach((function(n){return n.split(" ").forEach((function(n){return t.removeClass(e,n)}))}))},e.prototype.toggleClass=function(e,t,n){this._findClassName(e,t),-1===this._lastStart||void 0!==n&&n||this.removeClass(e,t),-1!==this._lastStart||void 0!==n&&!n||this.addClass(e,t)},e}()),Ji=new(function(){function e(){}return e.prototype.hasClass=function(e,t){return Boolean(t)&&e.classList&&e.classList.contains(t)},e.prototype.addClasses=function(e){for(var t=this,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];n.forEach((function(n){return n.split(" ").forEach((function(n){return t.addClass(e,n)}))}))},e.prototype.addClass=function(e,t){t&&e.classList&&e.classList.add(t)},e.prototype.removeClass=function(e,t){t&&e.classList&&e.classList.remove(t)},e.prototype.removeClasses=function(e){for(var t=this,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];n.forEach((function(n){return n.split(" ").forEach((function(n){return t.removeClass(e,n)}))}))},e.prototype.toggleClass=function(e,t,n){e.classList&&e.classList.toggle(t,n)},e}()),eo=Vn?Qi:Ji,to=eo.hasClass.bind(eo),no=eo.addClass.bind(eo),io=eo.addClasses.bind(eo),oo=eo.removeClass.bind(eo),ro=eo.removeClasses.bind(eo),so=eo.toggleClass.bind(eo),ao=function(){function e(e,t,n,i){this._node=e,this._type=t,this._handler=n,this._options=i||!1,this._node.addEventListener(this._type,this._handler,this._options)}return e.prototype.dispose=function(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)},e}();function uo(e,t,n,i){return new ao(e,t,n,i)}function lo(e){return function(t){return e(new li(t))}}var co=function(e,t,n,i){var o=n;return"click"===t||"mousedown"===t?o=lo(n):"keydown"!==t&&"keypress"!==t&&"keyup"!==t||(o=function(e){return function(t){return e(new ni(t))}}(n)),uo(e,t,o,i)};function ho(e,t,n){return uo(e,C&&Ki.pointerEvents?qo.POINTER_DOWN:qo.MOUSE_DOWN,t,n)}function po(e,t,n){return uo(e,C&&Ki.pointerEvents?qo.POINTER_UP:qo.MOUSE_UP,t,n)}function fo(e,t){return uo(e,"mouseout",(function(n){for(var i=n.relatedTarget;i&&i!==e;)i=i.parentNode;i!==e&&t(n)}))}var go,mo,vo=null;var _o,yo,bo,wo,Co,So=function(){function e(e,t){void 0===t&&(t=0),this._runner=e,this.priority=t,this._canceled=!1}return e.prototype.dispose=function(){this._canceled=!0},e.prototype.execute=function(){if(!this._canceled)try{this._runner()}catch(e){De(e)}},e.sort=function(e,t){return t.priority-e.priority},e}();_o=[],yo=null,bo=!1,wo=!1,Co=function(){for(bo=!1,yo=_o,_o=[],wo=!0;yo.length>0;)yo.sort(So.sort),yo.shift().execute();wo=!1},mo=function(e,t){void 0===t&&(t=0);var n,i=new So(e,t);return _o.push(i),bo||(bo=!0,n=Co,vo||(vo=self.requestAnimationFrame||self.msRequestAnimationFrame||self.webkitRequestAnimationFrame||self.mozRequestAnimationFrame||self.oRequestAnimationFrame||function(e){return setTimeout((function(){return e((new Date).getTime())}),0)}),vo.call(self,n)),i},go=function(e,t){if(wo){var n=new So(e,t);return yo.push(n),n}return mo(e,t)};var Lo=function(e,t){return t},xo=function(e){function t(t,n,i,o,r){void 0===o&&(o=Lo),void 0===r&&(r=16);var s=e.call(this)||this,a=null,u=0,l=s._register(new yi),c=function(){u=(new Date).getTime(),i(a),a=null};return s._register(uo(t,n,(function(e){a=o(a,e);var t=(new Date).getTime()-u;t>=r?(l.cancel(),c()):l.setIfNotSet(c,r-t)}))),s}return qi(t,e),t}(He);function Do(e,t,n,i,o){return new xo(e,t,n,i,o)}function No(e){return document.defaultView.getComputedStyle(e,null)}var ko=function(){function e(){}return e.convertToPixels=function(e,t){return parseFloat(t)||0},e.getDimension=function(t,n,i){var o=No(t),r="0";return o&&(r=o.getPropertyValue?o.getPropertyValue(n):o.getAttribute(i)),e.convertToPixels(t,r)},e.getBorderLeftWidth=function(t){return e.getDimension(t,"border-left-width","borderLeftWidth")},e.getBorderRightWidth=function(t){return e.getDimension(t,"border-right-width","borderRightWidth")},e.getBorderTopWidth=function(t){return e.getDimension(t,"border-top-width","borderTopWidth")},e.getBorderBottomWidth=function(t){return e.getDimension(t,"border-bottom-width","borderBottomWidth")},e.getPaddingLeft=function(t){return e.getDimension(t,"padding-left","paddingLeft")},e.getPaddingRight=function(t){return e.getDimension(t,"padding-right","paddingRight")},e.getPaddingTop=function(t){return e.getDimension(t,"padding-top","paddingTop")},e.getPaddingBottom=function(t){return e.getDimension(t,"padding-bottom","paddingBottom")},e.getMarginLeft=function(t){return e.getDimension(t,"margin-left","marginLeft")},e.getMarginTop=function(t){return e.getDimension(t,"margin-top","marginTop")},e.getMarginRight=function(t){return e.getDimension(t,"margin-right","marginRight")},e.getMarginBottom=function(t){return e.getDimension(t,"margin-bottom","marginBottom")},e}(),Eo=function(e,t){this.width=e,this.height=t};function Io(e){for(var t=e.offsetParent,n=e.offsetTop,i=e.offsetLeft;null!==(e=e.parentNode)&&e!==document.body&&e!==document.documentElement;){n-=e.scrollTop;var o=Vo(e)?null:No(e);o&&(i-="rtl"!==o.direction?e.scrollLeft:-e.scrollLeft),e===t&&(i+=ko.getBorderLeftWidth(e),n+=ko.getBorderTopWidth(e),n+=e.offsetTop,i+=e.offsetLeft,t=e.offsetParent)}return{left:i,top:n}}function Oo(e){var t=e.getBoundingClientRect();return{left:t.left+Mo.scrollX,top:t.top+Mo.scrollY,width:t.width,height:t.height}}var Mo=new(function(){function e(){}return Object.defineProperty(e.prototype,"scrollX",{get:function(){return"number"==typeof window.scrollX?window.scrollX:document.body.scrollLeft+document.documentElement.scrollLeft},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"scrollY",{get:function(){return"number"==typeof window.scrollY?window.scrollY:document.body.scrollTop+document.documentElement.scrollTop},enumerable:!0,configurable:!0}),e}());function To(e){var t=ko.getMarginLeft(e)+ko.getMarginRight(e);return e.offsetWidth+t}function Po(e){var t=ko.getBorderLeftWidth(e)+ko.getBorderRightWidth(e),n=ko.getPaddingLeft(e)+ko.getPaddingRight(e);return e.offsetWidth-t-n}function Ro(e){var t=ko.getBorderTopWidth(e)+ko.getBorderBottomWidth(e),n=ko.getPaddingTop(e)+ko.getPaddingBottom(e);return e.offsetHeight-t-n}function Ao(e){var t=ko.getMarginTop(e)+ko.getMarginBottom(e);return e.offsetHeight+t}function Fo(e,t){for(;e;){if(e===t)return!0;e=e.parentNode}return!1}function Wo(e,t,n){for(;e&&e.nodeType===e.ELEMENT_NODE;){if(to(e,t))return e;if(n)if("string"==typeof n){if(to(e,n))return null}else if(e===n)return null;e=e.parentNode}return null}function Vo(e){return e&&!!e.host&&!!e.mode}function Bo(e){return!!Ho(e)}function Ho(e){for(;e.parentNode;){if(e===document.body)return null;e=e.parentNode}return Vo(e)?e:null}function zo(e){void 0===e&&(e=document.getElementsByTagName("head")[0]);var t=document.createElement("style");return t.type="text/css",t.media="screen",e.appendChild(t),t}var jo=null;function Uo(){return jo||(jo=zo()),jo}function Ko(e,t){if(void 0===t&&(t=Uo()),t){for(var n=function(e){return e&&e.sheet&&e.sheet.rules?e.sheet.rules:e&&e.sheet&&e.sheet.cssRules?e.sheet.cssRules:[]}(t),i=[],o=0;o<n.length;o++){-1!==n[o].selectorText.indexOf(e)&&i.push(o)}for(o=i.length-1;o>=0;o--)t.sheet.deleteRule(i[o])}}var qo={CLICK:"click",DBLCLICK:"dblclick",MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_MOVE:"mousemove",MOUSE_OUT:"mouseout",MOUSE_ENTER:"mouseenter",MOUSE_LEAVE:"mouseleave",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",CONTEXT_MENU:"contextmenu",WHEEL:"wheel",KEY_DOWN:"keydown",KEY_PRESS:"keypress",KEY_UP:"keyup",LOAD:"load",BEFORE_UNLOAD:"beforeunload",UNLOAD:"unload",ABORT:"abort",ERROR:"error",RESIZE:"resize",SCROLL:"scroll",FULLSCREEN_CHANGE:"fullscreenchange",WK_FULLSCREEN_CHANGE:"webkitfullscreenchange",SELECT:"select",CHANGE:"change",SUBMIT:"submit",RESET:"reset",FOCUS:"focus",FOCUS_IN:"focusin",FOCUS_OUT:"focusout",BLUR:"blur",INPUT:"input",STORAGE:"storage",DRAG_START:"dragstart",DRAG:"drag",DRAG_ENTER:"dragenter",DRAG_LEAVE:"dragleave",DRAG_OVER:"dragover",DROP:"drop",DRAG_END:"dragend",ANIMATION_START:jn?"webkitAnimationStart":"animationstart",ANIMATION_END:jn?"webkitAnimationEnd":"animationend",ANIMATION_ITERATION:jn?"webkitAnimationIteration":"animationiteration"},Go=function(e,t){e.preventDefault?e.preventDefault():e.returnValue=!1,t&&(e.stopPropagation?e.stopPropagation():e.cancelBubble=!0)};var Zo=function(e){function t(t){var n=e.call(this)||this;n._onDidFocus=n._register(new nt),n.onDidFocus=n._onDidFocus.event,n._onDidBlur=n._register(new nt),n.onDidBlur=n._onDidBlur.event;var i=Fo(document.activeElement,t),o=!1,r=function(){o=!1,i||(i=!0,n._onDidFocus.fire())},s=function(){i&&(o=!0,window.setTimeout((function(){o&&(o=!1,i=!1,n._onDidBlur.fire())}),0))};return n._refreshStateHandler=function(){Fo(document.activeElement,t)!==i&&(i?s():r())},n._register(Xn(t,qo.FOCUS,!0)(r)),n._register(Xn(t,qo.BLUR,!0)(s)),n}return qi(t,e),t}(He);function Yo(e){return new Zo(e)}function Xo(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];return t.forEach((function(t){return e.appendChild(t)})),t[t.length-1]}var $o,Qo=/([\w\-]+)?(#([\w\-]+))?((.([\w\-]+))*)/;function Jo(e,t,n){for(var i=[],o=3;o<arguments.length;o++)i[o-3]=arguments[o];var r=Qo.exec(t);if(!r)throw new Error("Bad use of emmet");n=Gi({},n||{});var s,a=r[1]||"div";return s=e!==$o.HTML?document.createElementNS(e,a):document.createElement(a),r[3]&&(s.id=r[3]),r[4]&&(s.className=r[4].replace(/\./g," ").trim()),Object.keys(n).forEach((function(e){var t=n[e];void 0!==t&&(/^on\w+$/.test(e)?s[e]=t:"selected"===e?t&&s.setAttribute(e,"true"):s.setAttribute(e,t))})),Ei(i).forEach((function(e){e instanceof Node?s.appendChild(e):s.appendChild(document.createTextNode(e))})),s}function er(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return Jo.apply(void 0,Zi([$o.HTML,e,t],n))}function tr(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n=0,i=e;n<i.length;n++){var o=i[n];o.style.display="",o.removeAttribute("aria-hidden")}}function nr(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n=0,i=e;n<i.length;n++){var o=i[n];o.style.display="none",o.setAttribute("aria-hidden","true")}}function ir(e){if(e&&e.hasAttribute("tabIndex")){if(document.activeElement===e){var t=function(e,t){for(;e&&e.nodeType===e.ELEMENT_NODE;){if(e instanceof HTMLElement&&e.hasAttribute(t))return e;e=e.parentNode}return null}(e.parentElement,"tabIndex");t&&t.focus()}e.removeAttribute("tabindex")}}function or(e){return Array.prototype.slice.call(document.getElementsByTagName(e),0)}function rr(e){var t=window.devicePixelRatio*e;return Math.max(1,Math.floor(t))/window.devicePixelRatio}function sr(e){if(b||Zn)window.open(e);else{var t=window.open();t&&(t.opener=null,t.location.href=e)}}function ar(e){return e&&Ci.vscodeRemote===e.scheme?Ui.rewrite(e):e}function ur(e){return e?"url('"+ar(e).toString(!0).replace(/'/g,"%27")+"')":"url('')"}function lr(e){var t=JSON.parse(e);return t=function e(t,n){void 0===n&&(n=0);if(!t||n>200)return t;if("object"==typeof t){switch(t.$mid){case 1:return Et.revive(t);case 2:return new RegExp(t.source,t.flags)}for(var i in t)Object.hasOwnProperty.call(t,i)&&(t[i]=e(t[i],n+1))}return t}(t)}function cr(e){return!e||"string"!=typeof e||0===e.trim().length}function dr(e,t,n){void 0===n&&(n="0");for(var i=""+e,o=[i],r=i.length;r<t;r++)o.push(n);return o.reverse().join("")}!function(e){e.HTML="http://www.w3.org/1999/xhtml",e.SVG="http://www.w3.org/2000/svg"}($o||($o={})),er.SVG=function(e,t){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return Jo.apply(void 0,Zi([$o.SVG,e,t],n))},Ui.setPreferredWebSchema(/^https:/.test(window.location.href)?"https":"http");var hr=/{(\d+)}/g;function pr(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];return 0===t.length?e:e.replace(hr,(function(e,n){var i=parseInt(n,10);return isNaN(i)||i<0||i>=t.length?e:t[i]}))}function fr(e){return e.replace(/[<>&]/g,(function(e){switch(e){case"<":return"<";case">":return">";case"&":return"&";default:return e}}))}function gr(e){return e.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function mr(e,t){if(!e||!t)return e;var n=t.length,i=e.length;if(0===n||0===i)return e;for(var o=i,r=-1;-1!==(r=e.lastIndexOf(t,o-1))&&r+n===o;){if(0===r)return"";o=r}return e.substring(0,o)}function vr(e,t){if(e.length<t.length)return!1;if(e===t)return!0;for(var n=0;n<t.length;n++)if(e[n]!==t[n])return!1;return!0}function _r(e,t){var n=e.length-t.length;return n>0?e.indexOf(t,n)===n:0===n&&e===t}function yr(e,t,n){if(void 0===n&&(n={}),!e)throw new Error("Cannot create regex from empty string");t||(e=gr(e)),n.wholeWord&&(/\B/.test(e.charAt(0))||(e="\\b"+e),/\B/.test(e.charAt(e.length-1))||(e+="\\b"));var i="";return n.global&&(i+="g"),n.matchCase||(i+="i"),n.multiline&&(i+="m"),n.unicode&&(i+="u"),new RegExp(e,i)}function br(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")}function wr(e){for(var t=0,n=e.length;t<n;t++){var i=e.charCodeAt(t);if(32!==i&&9!==i)return t}return-1}function Cr(e,t,n){void 0===t&&(t=0),void 0===n&&(n=e.length);for(var i=t;i<n;i++){var o=e.charCodeAt(i);if(32!==o&&9!==o)return e.substring(t,i)}return e.substring(t,n)}function Sr(e,t){void 0===t&&(t=e.length-1);for(var n=t;n>=0;n--){var i=e.charCodeAt(n);if(32!==i&&9!==i)return n}return-1}function Lr(e,t){return e<t?-1:e>t?1:0}function xr(e,t){for(var n=Math.min(e.length,t.length),i=0;i<n;i++){var o=e.charCodeAt(i),r=t.charCodeAt(i);if(o!==r){Nr(o)&&(o+=32),Nr(r)&&(r+=32);var s=o-r;if(0!==s)return Dr(o)&&Dr(r)?s:Lr(e.toLowerCase(),t.toLowerCase())}}return e.length<t.length?-1:e.length>t.length?1:0}function Dr(e){return e>=97&&e<=122}function Nr(e){return e>=65&&e<=90}function kr(e){return Dr(e)||Nr(e)}function Er(e,t){return e.length===t.length&&Ir(e,t)}function Ir(e,t,n){void 0===n&&(n=e.length);for(var i=0;i<n;i++){var o=e.charCodeAt(i),r=t.charCodeAt(i);if(o!==r)if(kr(o)&&kr(r)){var s=Math.abs(o-r);if(0!==s&&32!==s)return!1}else if(String.fromCharCode(o).toLowerCase()!==String.fromCharCode(r).toLowerCase())return!1}return!0}function Or(e,t){var n=t.length;return!(t.length>e.length)&&Ir(e,t,n)}function Mr(e,t){var n,i=Math.min(e.length,t.length);for(n=0;n<i;n++)if(e.charCodeAt(n)!==t.charCodeAt(n))return n;return i}function Tr(e){return 55296<=e&&e<=56319}function Pr(e){return 56320<=e&&e<=57343}function Rr(e,t,n){var i=e.charCodeAt(n);if(Tr(i)&&n+1<t){var o=e.charCodeAt(n+1);if(Pr(o))return o-56320+(i-55296<<10)+65536}return i}function Ar(e,t){var n=e.charCodeAt(t-1);if(Pr(n)&&t>1){var i=e.charCodeAt(t-2);if(Tr(i))return n-56320+(i-55296<<10)+65536}return n}function Fr(e,t){var n=Qr.getInstance(),i=t,o=e.length,r=Rr(e,o,t);t+=r>=65536?2:1;for(var s=n.getGraphemeBreakType(r);t<o;){var a=Rr(e,o,t),u=n.getGraphemeBreakType(a);if($r(s,u))break;t+=a>=65536?2:1,s=u}return t-i}var Wr=/(?:[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05F4\u0608\u060B\u060D\u061B-\u064A\u066D-\u066F\u0671-\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u0710\u0712-\u072F\u074D-\u07A5\u07B1-\u07EA\u07F4\u07F5\u07FA-\u0815\u081A\u0824\u0828\u0830-\u0858\u085E-\u08BD\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFD3D\uFD50-\uFDFC\uFE70-\uFEFC]|\uD802[\uDC00-\uDD1B\uDD20-\uDE00\uDE10-\uDE33\uDE40-\uDEE4\uDEEB-\uDF35\uDF40-\uDFFF]|\uD803[\uDC00-\uDCFF]|\uD83A[\uDC00-\uDCCF\uDD00-\uDD43\uDD50-\uDFFF]|\uD83B[\uDC00-\uDEBB])/;function Vr(e){return Wr.test(e)}var Br=/(?:[\u231A\u231B\u23F0\u23F3\u2600-\u27BF\u2B50\u2B55]|\uD83C[\uDDE6-\uDDFF\uDF00-\uDFFF]|\uD83D[\uDC00-\uDE4F\uDE80-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD00-\uDDFF\uDE70-\uDE73\uDE78-\uDE82\uDE90-\uDE95])/;var Hr=/^[\t\n\r\x20-\x7E]*$/;function zr(e){return Hr.test(e)}function jr(e){return(e=+e)>=11904&&e<=55215||e>=63744&&e<=64255||e>=65281&&e<=65374}function Ur(e){return e>=127462&&e<=127487||e>=9728&&e<=10175||e>=127744&&e<=128591||e>=128640&&e<=128764||e>=128992&&e<=129003||e>=129280&&e<=129535||e>=129648&&e<=129651||e>=129656&&e<=129666||e>=129680&&e<=129685}var Kr=String.fromCharCode(65279);function qr(e){return!!(e&&e.length>0&&65279===e.charCodeAt(0))}function Gr(e){return btoa(encodeURIComponent(e))}function Zr(e,t){for(var n="",i=0;i<t;i++)n+=e;return n}function Yr(e){return(e%=52)<26?String.fromCharCode(97+e):String.fromCharCode(65+e-26)}function Xr(e){return Qr.getInstance().getGraphemeBreakType(e)}function $r(e,t){return 0===e?5!==t&&7!==t:(2!==e||3!==t)&&(4===e||2===e||3===e||(4===t||2===t||3===t||(8!==e||8!==t&&9!==t&&11!==t&&12!==t)&&((11!==e&&9!==e||9!==t&&10!==t)&&((12!==e&&10!==e||10!==t)&&(5!==t&&13!==t&&(7!==t&&(1!==e&&((13!==e||14!==t)&&(6!==e||6!==t)))))))))}var Qr=function(){function e(){this._data=JSON.parse("[0,0,0,51592,51592,11,44424,44424,11,72251,72254,5,7150,7150,7,48008,48008,11,55176,55176,11,128420,128420,14,3276,3277,5,9979,9980,14,46216,46216,11,49800,49800,11,53384,53384,11,70726,70726,5,122915,122916,5,129320,129327,14,2558,2558,5,5906,5908,5,9762,9763,14,43360,43388,8,45320,45320,11,47112,47112,11,48904,48904,11,50696,50696,11,52488,52488,11,54280,54280,11,70082,70083,1,71350,71350,7,73111,73111,5,127892,127893,14,128726,128727,14,129473,129474,14,2027,2035,5,2901,2902,5,3784,3789,5,6754,6754,5,8418,8420,5,9877,9877,14,11088,11088,14,44008,44008,5,44872,44872,11,45768,45768,11,46664,46664,11,47560,47560,11,48456,48456,11,49352,49352,11,50248,50248,11,51144,51144,11,52040,52040,11,52936,52936,11,53832,53832,11,54728,54728,11,69811,69814,5,70459,70460,5,71096,71099,7,71998,71998,5,72874,72880,5,119149,119149,7,127374,127374,14,128335,128335,14,128482,128482,14,128765,128767,14,129399,129400,14,129680,129685,14,1476,1477,5,2377,2380,7,2759,2760,5,3137,3140,7,3458,3459,7,4153,4154,5,6432,6434,5,6978,6978,5,7675,7679,5,9723,9726,14,9823,9823,14,9919,9923,14,10035,10036,14,42736,42737,5,43596,43596,5,44200,44200,11,44648,44648,11,45096,45096,11,45544,45544,11,45992,45992,11,46440,46440,11,46888,46888,11,47336,47336,11,47784,47784,11,48232,48232,11,48680,48680,11,49128,49128,11,49576,49576,11,50024,50024,11,50472,50472,11,50920,50920,11,51368,51368,11,51816,51816,11,52264,52264,11,52712,52712,11,53160,53160,11,53608,53608,11,54056,54056,11,54504,54504,11,54952,54952,11,68108,68111,5,69933,69940,5,70197,70197,7,70498,70499,7,70845,70845,5,71229,71229,5,71727,71735,5,72154,72155,5,72344,72345,5,73023,73029,5,94095,94098,5,121403,121452,5,126981,127182,14,127538,127546,14,127990,127990,14,128391,128391,14,128445,128449,14,128500,128505,14,128752,128752,14,129160,129167,14,129356,129356,14,129432,129442,14,129648,129651,14,129751,131069,14,173,173,4,1757,1757,1,2274,2274,1,2494,2494,5,2641,2641,5,2876,2876,5,3014,3016,7,3262,3262,7,3393,3396,5,3570,3571,7,3968,3972,5,4228,4228,7,6086,6086,5,6679,6680,5,6912,6915,5,7080,7081,5,7380,7392,5,8252,8252,14,9096,9096,14,9748,9749,14,9784,9786,14,9833,9850,14,9890,9894,14,9938,9938,14,9999,9999,14,10085,10087,14,12349,12349,14,43136,43137,7,43454,43456,7,43755,43755,7,44088,44088,11,44312,44312,11,44536,44536,11,44760,44760,11,44984,44984,11,45208,45208,11,45432,45432,11,45656,45656,11,45880,45880,11,46104,46104,11,46328,46328,11,46552,46552,11,46776,46776,11,47000,47000,11,47224,47224,11,47448,47448,11,47672,47672,11,47896,47896,11,48120,48120,11,48344,48344,11,48568,48568,11,48792,48792,11,49016,49016,11,49240,49240,11,49464,49464,11,49688,49688,11,49912,49912,11,50136,50136,11,50360,50360,11,50584,50584,11,50808,50808,11,51032,51032,11,51256,51256,11,51480,51480,11,51704,51704,11,51928,51928,11,52152,52152,11,52376,52376,11,52600,52600,11,52824,52824,11,53048,53048,11,53272,53272,11,53496,53496,11,53720,53720,11,53944,53944,11,54168,54168,11,54392,54392,11,54616,54616,11,54840,54840,11,55064,55064,11,65438,65439,5,69633,69633,5,69837,69837,1,70018,70018,7,70188,70190,7,70368,70370,7,70465,70468,7,70712,70719,5,70835,70840,5,70850,70851,5,71132,71133,5,71340,71340,7,71458,71461,5,71985,71989,7,72002,72002,7,72193,72202,5,72281,72283,5,72766,72766,7,72885,72886,5,73104,73105,5,92912,92916,5,113824,113827,4,119173,119179,5,121505,121519,5,125136,125142,5,127279,127279,14,127489,127490,14,127570,127743,14,127900,127901,14,128254,128254,14,128369,128370,14,128400,128400,14,128425,128432,14,128468,128475,14,128489,128494,14,128715,128720,14,128745,128745,14,128759,128760,14,129004,129023,14,129296,129304,14,129340,129342,14,129388,129392,14,129404,129407,14,129454,129455,14,129485,129487,14,129659,129663,14,129719,129727,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2363,2363,7,2402,2403,5,2507,2508,7,2622,2624,7,2691,2691,7,2786,2787,5,2881,2884,5,3006,3006,5,3072,3072,5,3170,3171,5,3267,3268,7,3330,3331,7,3406,3406,1,3538,3540,5,3655,3662,5,3897,3897,5,4038,4038,5,4184,4185,5,4352,4447,8,6068,6069,5,6155,6157,5,6448,6449,7,6742,6742,5,6783,6783,5,6966,6970,5,7042,7042,7,7143,7143,7,7212,7219,5,7412,7412,5,8206,8207,4,8294,8303,4,8596,8601,14,9410,9410,14,9742,9742,14,9757,9757,14,9770,9770,14,9794,9794,14,9828,9828,14,9855,9855,14,9882,9882,14,9900,9903,14,9929,9933,14,9963,9967,14,9987,9988,14,10006,10006,14,10062,10062,14,10175,10175,14,11744,11775,5,42607,42607,5,43043,43044,7,43263,43263,5,43444,43445,7,43569,43570,5,43698,43700,5,43766,43766,5,44032,44032,11,44144,44144,11,44256,44256,11,44368,44368,11,44480,44480,11,44592,44592,11,44704,44704,11,44816,44816,11,44928,44928,11,45040,45040,11,45152,45152,11,45264,45264,11,45376,45376,11,45488,45488,11,45600,45600,11,45712,45712,11,45824,45824,11,45936,45936,11,46048,46048,11,46160,46160,11,46272,46272,11,46384,46384,11,46496,46496,11,46608,46608,11,46720,46720,11,46832,46832,11,46944,46944,11,47056,47056,11,47168,47168,11,47280,47280,11,47392,47392,11,47504,47504,11,47616,47616,11,47728,47728,11,47840,47840,11,47952,47952,11,48064,48064,11,48176,48176,11,48288,48288,11,48400,48400,11,48512,48512,11,48624,48624,11,48736,48736,11,48848,48848,11,48960,48960,11,49072,49072,11,49184,49184,11,49296,49296,11,49408,49408,11,49520,49520,11,49632,49632,11,49744,49744,11,49856,49856,11,49968,49968,11,50080,50080,11,50192,50192,11,50304,50304,11,50416,50416,11,50528,50528,11,50640,50640,11,50752,50752,11,50864,50864,11,50976,50976,11,51088,51088,11,51200,51200,11,51312,51312,11,51424,51424,11,51536,51536,11,51648,51648,11,51760,51760,11,51872,51872,11,51984,51984,11,52096,52096,11,52208,52208,11,52320,52320,11,52432,52432,11,52544,52544,11,52656,52656,11,52768,52768,11,52880,52880,11,52992,52992,11,53104,53104,11,53216,53216,11,53328,53328,11,53440,53440,11,53552,53552,11,53664,53664,11,53776,53776,11,53888,53888,11,54000,54000,11,54112,54112,11,54224,54224,11,54336,54336,11,54448,54448,11,54560,54560,11,54672,54672,11,54784,54784,11,54896,54896,11,55008,55008,11,55120,55120,11,64286,64286,5,66272,66272,5,68900,68903,5,69762,69762,7,69817,69818,5,69927,69931,5,70003,70003,5,70070,70078,5,70094,70094,7,70194,70195,7,70206,70206,5,70400,70401,5,70463,70463,7,70475,70477,7,70512,70516,5,70722,70724,5,70832,70832,5,70842,70842,5,70847,70848,5,71088,71089,7,71102,71102,7,71219,71226,5,71231,71232,5,71342,71343,7,71453,71455,5,71463,71467,5,71737,71738,5,71995,71996,5,72000,72000,7,72145,72147,7,72160,72160,5,72249,72249,7,72273,72278,5,72330,72342,5,72752,72758,5,72850,72871,5,72882,72883,5,73018,73018,5,73031,73031,5,73109,73109,5,73461,73462,7,94031,94031,5,94192,94193,7,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,126976,126979,14,127184,127231,14,127344,127345,14,127405,127461,14,127514,127514,14,127561,127567,14,127778,127779,14,127896,127896,14,127985,127986,14,127995,127999,5,128326,128328,14,128360,128366,14,128378,128378,14,128394,128397,14,128405,128406,14,128422,128423,14,128435,128443,14,128453,128464,14,128479,128480,14,128484,128487,14,128496,128498,14,128640,128709,14,128723,128724,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129096,129103,14,129292,129292,14,129311,129311,14,129329,129330,14,129344,129349,14,129360,129374,14,129394,129394,14,129402,129402,14,129413,129425,14,129445,129450,14,129466,129471,14,129483,129483,14,129511,129535,14,129653,129655,14,129667,129670,14,129705,129711,14,129731,129743,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2307,2307,7,2366,2368,7,2382,2383,7,2434,2435,7,2497,2500,5,2519,2519,5,2563,2563,7,2631,2632,5,2677,2677,5,2750,2752,7,2763,2764,7,2817,2817,5,2879,2879,5,2891,2892,7,2914,2915,5,3008,3008,5,3021,3021,5,3076,3076,5,3146,3149,5,3202,3203,7,3264,3265,7,3271,3272,7,3298,3299,5,3390,3390,5,3402,3404,7,3426,3427,5,3535,3535,5,3544,3550,7,3635,3635,7,3763,3763,7,3893,3893,5,3953,3966,5,3981,3991,5,4145,4145,7,4157,4158,5,4209,4212,5,4237,4237,5,4520,4607,10,5970,5971,5,6071,6077,5,6089,6099,5,6277,6278,5,6439,6440,5,6451,6456,7,6683,6683,5,6744,6750,5,6765,6770,7,6846,6846,5,6964,6964,5,6972,6972,5,7019,7027,5,7074,7077,5,7083,7085,5,7146,7148,7,7154,7155,7,7222,7223,5,7394,7400,5,7416,7417,5,8204,8204,5,8233,8233,4,8288,8292,4,8413,8416,5,8482,8482,14,8986,8987,14,9193,9203,14,9654,9654,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9775,14,9792,9792,14,9800,9811,14,9825,9826,14,9831,9831,14,9852,9853,14,9872,9873,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9936,9936,14,9941,9960,14,9974,9974,14,9982,9985,14,9992,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10145,10145,14,11013,11015,14,11503,11505,5,12334,12335,5,12951,12951,14,42612,42621,5,43014,43014,5,43047,43047,7,43204,43205,5,43335,43345,5,43395,43395,7,43450,43451,7,43561,43566,5,43573,43574,5,43644,43644,5,43710,43711,5,43758,43759,7,44005,44005,5,44012,44012,7,44060,44060,11,44116,44116,11,44172,44172,11,44228,44228,11,44284,44284,11,44340,44340,11,44396,44396,11,44452,44452,11,44508,44508,11,44564,44564,11,44620,44620,11,44676,44676,11,44732,44732,11,44788,44788,11,44844,44844,11,44900,44900,11,44956,44956,11,45012,45012,11,45068,45068,11,45124,45124,11,45180,45180,11,45236,45236,11,45292,45292,11,45348,45348,11,45404,45404,11,45460,45460,11,45516,45516,11,45572,45572,11,45628,45628,11,45684,45684,11,45740,45740,11,45796,45796,11,45852,45852,11,45908,45908,11,45964,45964,11,46020,46020,11,46076,46076,11,46132,46132,11,46188,46188,11,46244,46244,11,46300,46300,11,46356,46356,11,46412,46412,11,46468,46468,11,46524,46524,11,46580,46580,11,46636,46636,11,46692,46692,11,46748,46748,11,46804,46804,11,46860,46860,11,46916,46916,11,46972,46972,11,47028,47028,11,47084,47084,11,47140,47140,11,47196,47196,11,47252,47252,11,47308,47308,11,47364,47364,11,47420,47420,11,47476,47476,11,47532,47532,11,47588,47588,11,47644,47644,11,47700,47700,11,47756,47756,11,47812,47812,11,47868,47868,11,47924,47924,11,47980,47980,11,48036,48036,11,48092,48092,11,48148,48148,11,48204,48204,11,48260,48260,11,48316,48316,11,48372,48372,11,48428,48428,11,48484,48484,11,48540,48540,11,48596,48596,11,48652,48652,11,48708,48708,11,48764,48764,11,48820,48820,11,48876,48876,11,48932,48932,11,48988,48988,11,49044,49044,11,49100,49100,11,49156,49156,11,49212,49212,11,49268,49268,11,49324,49324,11,49380,49380,11,49436,49436,11,49492,49492,11,49548,49548,11,49604,49604,11,49660,49660,11,49716,49716,11,49772,49772,11,49828,49828,11,49884,49884,11,49940,49940,11,49996,49996,11,50052,50052,11,50108,50108,11,50164,50164,11,50220,50220,11,50276,50276,11,50332,50332,11,50388,50388,11,50444,50444,11,50500,50500,11,50556,50556,11,50612,50612,11,50668,50668,11,50724,50724,11,50780,50780,11,50836,50836,11,50892,50892,11,50948,50948,11,51004,51004,11,51060,51060,11,51116,51116,11,51172,51172,11,51228,51228,11,51284,51284,11,51340,51340,11,51396,51396,11,51452,51452,11,51508,51508,11,51564,51564,11,51620,51620,11,51676,51676,11,51732,51732,11,51788,51788,11,51844,51844,11,51900,51900,11,51956,51956,11,52012,52012,11,52068,52068,11,52124,52124,11,52180,52180,11,52236,52236,11,52292,52292,11,52348,52348,11,52404,52404,11,52460,52460,11,52516,52516,11,52572,52572,11,52628,52628,11,52684,52684,11,52740,52740,11,52796,52796,11,52852,52852,11,52908,52908,11,52964,52964,11,53020,53020,11,53076,53076,11,53132,53132,11,53188,53188,11,53244,53244,11,53300,53300,11,53356,53356,11,53412,53412,11,53468,53468,11,53524,53524,11,53580,53580,11,53636,53636,11,53692,53692,11,53748,53748,11,53804,53804,11,53860,53860,11,53916,53916,11,53972,53972,11,54028,54028,11,54084,54084,11,54140,54140,11,54196,54196,11,54252,54252,11,54308,54308,11,54364,54364,11,54420,54420,11,54476,54476,11,54532,54532,11,54588,54588,11,54644,54644,11,54700,54700,11,54756,54756,11,54812,54812,11,54868,54868,11,54924,54924,11,54980,54980,11,55036,55036,11,55092,55092,11,55148,55148,11,55216,55238,9,65056,65071,5,65529,65531,4,68097,68099,5,68159,68159,5,69446,69456,5,69688,69702,5,69808,69810,7,69815,69816,7,69821,69821,1,69888,69890,5,69932,69932,7,69957,69958,7,70016,70017,5,70067,70069,7,70079,70080,7,70089,70092,5,70095,70095,5,70191,70193,5,70196,70196,5,70198,70199,5,70367,70367,5,70371,70378,5,70402,70403,7,70462,70462,5,70464,70464,5,70471,70472,7,70487,70487,5,70502,70508,5,70709,70711,7,70720,70721,7,70725,70725,7,70750,70750,5,70833,70834,7,70841,70841,7,70843,70844,7,70846,70846,7,70849,70849,7,71087,71087,5,71090,71093,5,71100,71101,5,71103,71104,5,71216,71218,7,71227,71228,7,71230,71230,7,71339,71339,5,71341,71341,5,71344,71349,5,71351,71351,5,71456,71457,7,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123628,123631,5,125252,125258,5,126980,126980,14,127183,127183,14,127245,127247,14,127340,127343,14,127358,127359,14,127377,127386,14,127462,127487,6,127491,127503,14,127535,127535,14,127548,127551,14,127568,127569,14,127744,127777,14,127780,127891,14,127894,127895,14,127897,127899,14,127902,127984,14,127987,127989,14,127991,127994,14,128000,128253,14,128255,128317,14,128329,128334,14,128336,128359,14,128367,128368,14,128371,128377,14,128379,128390,14,128392,128393,14,128398,128399,14,128401,128404,14,128407,128419,14,128421,128421,14,128424,128424,14,128433,128434,14,128444,128444,14,128450,128452,14,128465,128467,14,128476,128478,14,128481,128481,14,128483,128483,14,128488,128488,14,128495,128495,14,128499,128499,14,128506,128591,14,128710,128714,14,128721,128722,14,128725,128725,14,128728,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129664,129666,14,129671,129679,14,129686,129704,14,129712,129718,14,129728,129730,14,129744,129750,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2259,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3134,3136,5,3142,3144,5,3157,3158,5,3201,3201,5,3260,3260,5,3263,3263,5,3266,3266,5,3270,3270,5,3274,3275,7,3285,3286,5,3328,3329,5,3387,3388,5,3391,3392,7,3398,3400,7,3405,3405,5,3415,3415,5,3457,3457,5,3530,3530,5,3536,3537,7,3542,3542,5,3551,3551,5,3633,3633,5,3636,3642,5,3761,3761,5,3764,3772,5,3864,3865,5,3895,3895,5,3902,3903,7,3967,3967,7,3974,3975,5,3993,4028,5,4141,4144,5,4146,4151,5,4155,4156,7,4182,4183,7,4190,4192,5,4226,4226,5,4229,4230,5,4253,4253,5,4448,4519,9,4957,4959,5,5938,5940,5,6002,6003,5,6070,6070,7,6078,6085,7,6087,6088,7,6109,6109,5,6158,6158,4,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6848,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7673,5,8203,8203,4,8205,8205,13,8232,8232,4,8234,8238,4,8265,8265,14,8293,8293,4,8400,8412,5,8417,8417,5,8421,8432,5,8505,8505,14,8617,8618,14,9000,9000,14,9167,9167,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9776,9783,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9935,14,9937,9937,14,9939,9940,14,9961,9962,14,9968,9973,14,9975,9978,14,9981,9981,14,9986,9986,14,9989,9989,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10084,14,10133,10135,14,10160,10160,14,10548,10549,14,11035,11036,14,11093,11093,14,11647,11647,5,12330,12333,5,12336,12336,14,12441,12442,5,12953,12953,14,42608,42610,5,42654,42655,5,43010,43010,5,43019,43019,5,43045,43046,5,43052,43052,5,43188,43203,7,43232,43249,5,43302,43309,5,43346,43347,7,43392,43394,5,43443,43443,5,43446,43449,5,43452,43453,5,43493,43493,5,43567,43568,7,43571,43572,7,43587,43587,5,43597,43597,7,43696,43696,5,43703,43704,5,43713,43713,5,43756,43757,5,43765,43765,7,44003,44004,7,44006,44007,7,44009,44010,7,44013,44013,5,44033,44059,12,44061,44087,12,44089,44115,12,44117,44143,12,44145,44171,12,44173,44199,12,44201,44227,12,44229,44255,12,44257,44283,12,44285,44311,12,44313,44339,12,44341,44367,12,44369,44395,12,44397,44423,12,44425,44451,12,44453,44479,12,44481,44507,12,44509,44535,12,44537,44563,12,44565,44591,12,44593,44619,12,44621,44647,12,44649,44675,12,44677,44703,12,44705,44731,12,44733,44759,12,44761,44787,12,44789,44815,12,44817,44843,12,44845,44871,12,44873,44899,12,44901,44927,12,44929,44955,12,44957,44983,12,44985,45011,12,45013,45039,12,45041,45067,12,45069,45095,12,45097,45123,12,45125,45151,12,45153,45179,12,45181,45207,12,45209,45235,12,45237,45263,12,45265,45291,12,45293,45319,12,45321,45347,12,45349,45375,12,45377,45403,12,45405,45431,12,45433,45459,12,45461,45487,12,45489,45515,12,45517,45543,12,45545,45571,12,45573,45599,12,45601,45627,12,45629,45655,12,45657,45683,12,45685,45711,12,45713,45739,12,45741,45767,12,45769,45795,12,45797,45823,12,45825,45851,12,45853,45879,12,45881,45907,12,45909,45935,12,45937,45963,12,45965,45991,12,45993,46019,12,46021,46047,12,46049,46075,12,46077,46103,12,46105,46131,12,46133,46159,12,46161,46187,12,46189,46215,12,46217,46243,12,46245,46271,12,46273,46299,12,46301,46327,12,46329,46355,12,46357,46383,12,46385,46411,12,46413,46439,12,46441,46467,12,46469,46495,12,46497,46523,12,46525,46551,12,46553,46579,12,46581,46607,12,46609,46635,12,46637,46663,12,46665,46691,12,46693,46719,12,46721,46747,12,46749,46775,12,46777,46803,12,46805,46831,12,46833,46859,12,46861,46887,12,46889,46915,12,46917,46943,12,46945,46971,12,46973,46999,12,47001,47027,12,47029,47055,12,47057,47083,12,47085,47111,12,47113,47139,12,47141,47167,12,47169,47195,12,47197,47223,12,47225,47251,12,47253,47279,12,47281,47307,12,47309,47335,12,47337,47363,12,47365,47391,12,47393,47419,12,47421,47447,12,47449,47475,12,47477,47503,12,47505,47531,12,47533,47559,12,47561,47587,12,47589,47615,12,47617,47643,12,47645,47671,12,47673,47699,12,47701,47727,12,47729,47755,12,47757,47783,12,47785,47811,12,47813,47839,12,47841,47867,12,47869,47895,12,47897,47923,12,47925,47951,12,47953,47979,12,47981,48007,12,48009,48035,12,48037,48063,12,48065,48091,12,48093,48119,12,48121,48147,12,48149,48175,12,48177,48203,12,48205,48231,12,48233,48259,12,48261,48287,12,48289,48315,12,48317,48343,12,48345,48371,12,48373,48399,12,48401,48427,12,48429,48455,12,48457,48483,12,48485,48511,12,48513,48539,12,48541,48567,12,48569,48595,12,48597,48623,12,48625,48651,12,48653,48679,12,48681,48707,12,48709,48735,12,48737,48763,12,48765,48791,12,48793,48819,12,48821,48847,12,48849,48875,12,48877,48903,12,48905,48931,12,48933,48959,12,48961,48987,12,48989,49015,12,49017,49043,12,49045,49071,12,49073,49099,12,49101,49127,12,49129,49155,12,49157,49183,12,49185,49211,12,49213,49239,12,49241,49267,12,49269,49295,12,49297,49323,12,49325,49351,12,49353,49379,12,49381,49407,12,49409,49435,12,49437,49463,12,49465,49491,12,49493,49519,12,49521,49547,12,49549,49575,12,49577,49603,12,49605,49631,12,49633,49659,12,49661,49687,12,49689,49715,12,49717,49743,12,49745,49771,12,49773,49799,12,49801,49827,12,49829,49855,12,49857,49883,12,49885,49911,12,49913,49939,12,49941,49967,12,49969,49995,12,49997,50023,12,50025,50051,12,50053,50079,12,50081,50107,12,50109,50135,12,50137,50163,12,50165,50191,12,50193,50219,12,50221,50247,12,50249,50275,12,50277,50303,12,50305,50331,12,50333,50359,12,50361,50387,12,50389,50415,12,50417,50443,12,50445,50471,12,50473,50499,12,50501,50527,12,50529,50555,12,50557,50583,12,50585,50611,12,50613,50639,12,50641,50667,12,50669,50695,12,50697,50723,12,50725,50751,12,50753,50779,12,50781,50807,12,50809,50835,12,50837,50863,12,50865,50891,12,50893,50919,12,50921,50947,12,50949,50975,12,50977,51003,12,51005,51031,12,51033,51059,12,51061,51087,12,51089,51115,12,51117,51143,12,51145,51171,12,51173,51199,12,51201,51227,12,51229,51255,12,51257,51283,12,51285,51311,12,51313,51339,12,51341,51367,12,51369,51395,12,51397,51423,12,51425,51451,12,51453,51479,12,51481,51507,12,51509,51535,12,51537,51563,12,51565,51591,12,51593,51619,12,51621,51647,12,51649,51675,12,51677,51703,12,51705,51731,12,51733,51759,12,51761,51787,12,51789,51815,12,51817,51843,12,51845,51871,12,51873,51899,12,51901,51927,12,51929,51955,12,51957,51983,12,51985,52011,12,52013,52039,12,52041,52067,12,52069,52095,12,52097,52123,12,52125,52151,12,52153,52179,12,52181,52207,12,52209,52235,12,52237,52263,12,52265,52291,12,52293,52319,12,52321,52347,12,52349,52375,12,52377,52403,12,52405,52431,12,52433,52459,12,52461,52487,12,52489,52515,12,52517,52543,12,52545,52571,12,52573,52599,12,52601,52627,12,52629,52655,12,52657,52683,12,52685,52711,12,52713,52739,12,52741,52767,12,52769,52795,12,52797,52823,12,52825,52851,12,52853,52879,12,52881,52907,12,52909,52935,12,52937,52963,12,52965,52991,12,52993,53019,12,53021,53047,12,53049,53075,12,53077,53103,12,53105,53131,12,53133,53159,12,53161,53187,12,53189,53215,12,53217,53243,12,53245,53271,12,53273,53299,12,53301,53327,12,53329,53355,12,53357,53383,12,53385,53411,12,53413,53439,12,53441,53467,12,53469,53495,12,53497,53523,12,53525,53551,12,53553,53579,12,53581,53607,12,53609,53635,12,53637,53663,12,53665,53691,12,53693,53719,12,53721,53747,12,53749,53775,12,53777,53803,12,53805,53831,12,53833,53859,12,53861,53887,12,53889,53915,12,53917,53943,12,53945,53971,12,53973,53999,12,54001,54027,12,54029,54055,12,54057,54083,12,54085,54111,12,54113,54139,12,54141,54167,12,54169,54195,12,54197,54223,12,54225,54251,12,54253,54279,12,54281,54307,12,54309,54335,12,54337,54363,12,54365,54391,12,54393,54419,12,54421,54447,12,54449,54475,12,54477,54503,12,54505,54531,12,54533,54559,12,54561,54587,12,54589,54615,12,54617,54643,12,54645,54671,12,54673,54699,12,54701,54727,12,54729,54755,12,54757,54783,12,54785,54811,12,54813,54839,12,54841,54867,12,54869,54895,12,54897,54923,12,54925,54951,12,54953,54979,12,54981,55007,12,55009,55035,12,55037,55063,12,55065,55091,12,55093,55119,12,55121,55147,12,55149,55175,12,55177,55203,12,55243,55291,10,65024,65039,5,65279,65279,4,65520,65528,4,66045,66045,5,66422,66426,5,68101,68102,5,68152,68154,5,68325,68326,5,69291,69292,5,69632,69632,7,69634,69634,7,69759,69761,5]")}return e.getInstance=function(){return e._INSTANCE||(e._INSTANCE=new e),e._INSTANCE},e.prototype.getGraphemeBreakType=function(e){if(e<32)return 10===e?3:13===e?2:4;if(e<127)return 0;for(var t=this._data,n=t.length/3,i=1;i<=n;)if(e<t[3*i])i*=2;else{if(!(e>t[3*i+1]))return t[3*i+2];i=2*i+1}return 0},e._INSTANCE=null,e}();var Jr="undefined"==typeof process?{cwd:function(){return"/"},env:Object.create(null),get platform(){return v?"win32":_?"darwin":"linux"},nextTick:function(e){return L(e)}}:process,es=Jr.cwd,ts=Jr.env,ns=Jr.platform,is=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),os=function(e){function t(t,n,i){var o,r=this;"string"==typeof n&&0===n.indexOf("not ")?(o="must not be",n=n.replace(/^not /,"")):o="must be";var s=-1!==t.indexOf(".")?"property":"argument",a='The "'+t+'" '+s+" "+o+" of type "+n;return a+=". Received type "+typeof i,(r=e.call(this,a)||this).code="ERR_INVALID_ARG_TYPE",r}return is(t,e),t}(Error);function rs(e,t){if("string"!=typeof e)throw new os(t,"string",e)}function ss(e){return 47===e||92===e}function as(e){return 47===e}function us(e){return e>=65&&e<=90||e>=97&&e<=122}function ls(e,t,n,i){for(var o,r="",s=0,a=-1,u=0,l=0;l<=e.length;++l){if(l<e.length)o=e.charCodeAt(l);else{if(i(o))break;o=47}if(i(o)){if(a===l-1||1===u);else if(a!==l-1&&2===u){if(r.length<2||2!==s||46!==r.charCodeAt(r.length-1)||46!==r.charCodeAt(r.length-2)){if(r.length>2){var c=r.lastIndexOf(n);-1===c?(r="",s=0):s=(r=r.slice(0,c)).length-1-r.lastIndexOf(n),a=l,u=0;continue}if(2===r.length||1===r.length){r="",s=0,a=l,u=0;continue}}t&&(r.length>0?r+=n+"..":r="..",s=2)}else r.length>0?r+=n+e.slice(a+1,l):r=e.slice(a+1,l),s=l-a-1;a=l,u=0}else 46===o&&-1!==u?++u:u=-1}return r}function cs(e,t){var n=t.dir||t.root,i=t.base||(t.name||"")+(t.ext||"");return n?n===t.root?n+i:n+e+i:i}var ds={resolve:function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n="",i="",o=!1,r=e.length-1;r>=-1;r--){var s=void 0;if(r>=0?s=e[r]:n?void 0!==(s=ts["="+n]||es())&&s.slice(0,3).toLowerCase()===n.toLowerCase()+"\\"||(s=n+"\\"):s=es(),rs(s,"path"),0!==s.length){var a=s.length,u=0,l="",c=!1,d=s.charCodeAt(0);if(a>1)if(ss(d))if(c=!0,ss(s.charCodeAt(1))){for(var h=2,p=h;h<a&&!ss(s.charCodeAt(h));++h);if(h<a&&h!==p){var f=s.slice(p,h);for(p=h;h<a&&ss(s.charCodeAt(h));++h);if(h<a&&h!==p){for(p=h;h<a&&!ss(s.charCodeAt(h));++h);h===a?(l="\\\\"+f+"\\"+s.slice(p),u=h):h!==p&&(l="\\\\"+f+"\\"+s.slice(p,h),u=h)}}}else u=1;else us(d)&&58===s.charCodeAt(1)&&(l=s.slice(0,2),u=2,a>2&&ss(s.charCodeAt(2))&&(c=!0,u=3));else ss(d)&&(u=1,c=!0);if(!(l.length>0&&n.length>0&&l.toLowerCase()!==n.toLowerCase())&&(0===n.length&&l.length>0&&(n=l),o||(i=s.slice(u)+"\\"+i,o=c),n.length>0&&o))break}}return n+(o?"\\":"")+(i=ls(i,!o,"\\",ss))||"."},normalize:function(e){rs(e,"path");var t=e.length;if(0===t)return".";var n,i,o=0,r=!1,s=e.charCodeAt(0);if(t>1)if(ss(s))if(r=!0,ss(e.charCodeAt(1))){for(var a=2,u=a;a<t&&!ss(e.charCodeAt(a));++a);if(a<t&&a!==u){var l=e.slice(u,a);for(u=a;a<t&&ss(e.charCodeAt(a));++a);if(a<t&&a!==u){for(u=a;a<t&&!ss(e.charCodeAt(a));++a);if(a===t)return"\\\\"+l+"\\"+e.slice(u)+"\\";a!==u&&(n="\\\\"+l+"\\"+e.slice(u,a),o=a)}}}else o=1;else us(s)&&58===e.charCodeAt(1)&&(n=e.slice(0,2),o=2,t>2&&ss(e.charCodeAt(2))&&(r=!0,o=3));else if(ss(s))return"\\";return 0!==(i=o<t?ls(e.slice(o),!r,"\\",ss):"").length||r||(i="."),i.length>0&&ss(e.charCodeAt(t-1))&&(i+="\\"),void 0===n?r?i.length>0?"\\"+i:"\\":i.length>0?i:"":r?i.length>0?n+"\\"+i:n+"\\":i.length>0?n+i:n},isAbsolute:function(e){rs(e,"path");var t=e.length;if(0===t)return!1;var n=e.charCodeAt(0);return!!ss(n)||!!(us(n)&&t>2&&58===e.charCodeAt(1)&&ss(e.charCodeAt(2)))},join:function(){for(var e,t,n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];if(0===n.length)return".";for(var o=0;o<n.length;++o){var r=n[o];rs(r,"path"),r.length>0&&(void 0===e?e=t=r:e+="\\"+r)}if(void 0===e)return".";var s=!0,a=0;if("string"==typeof t&&ss(t.charCodeAt(0))){++a;var u=t.length;u>1&&ss(t.charCodeAt(1))&&(++a,u>2&&(ss(t.charCodeAt(2))?++a:s=!1))}if(s){for(;a<e.length&&ss(e.charCodeAt(a));++a);a>=2&&(e="\\"+e.slice(a))}return ds.normalize(e)},relative:function(e,t){if(rs(e,"from"),rs(t,"to"),e===t)return"";var n=ds.resolve(e),i=ds.resolve(t);if(n===i)return"";if((e=n.toLowerCase())===(t=i.toLowerCase()))return"";for(var o=0;o<e.length&&92===e.charCodeAt(o);++o);for(var r=e.length;r-1>o&&92===e.charCodeAt(r-1);--r);for(var s=r-o,a=0;a<t.length&&92===t.charCodeAt(a);++a);for(var u=t.length;u-1>a&&92===t.charCodeAt(u-1);--u);for(var l=u-a,c=s<l?s:l,d=-1,h=0;h<=c;++h){if(h===c){if(l>c){if(92===t.charCodeAt(a+h))return i.slice(a+h+1);if(2===h)return i.slice(a+h)}s>c&&(92===e.charCodeAt(o+h)?d=h:2===h&&(d=3));break}var p=e.charCodeAt(o+h);if(p!==t.charCodeAt(a+h))break;92===p&&(d=h)}if(h!==c&&-1===d)return i;var f="";for(-1===d&&(d=0),h=o+d+1;h<=r;++h)h!==r&&92!==e.charCodeAt(h)||(0===f.length?f+="..":f+="\\..");return f.length>0?f+i.slice(a+d,u):(a+=d,92===i.charCodeAt(a)&&++a,i.slice(a,u))},toNamespacedPath:function(e){if("string"!=typeof e)return e;if(0===e.length)return"";var t=ds.resolve(e);if(t.length>=3)if(92===t.charCodeAt(0)){if(92===t.charCodeAt(1)){var n=t.charCodeAt(2);if(63!==n&&46!==n)return"\\\\?\\UNC\\"+t.slice(2)}}else if(us(t.charCodeAt(0))&&58===t.charCodeAt(1)&&92===t.charCodeAt(2))return"\\\\?\\"+t;return e},dirname:function(e){rs(e,"path");var t=e.length;if(0===t)return".";var n=-1,i=-1,o=!0,r=0,s=e.charCodeAt(0);if(t>1)if(ss(s)){if(n=r=1,ss(e.charCodeAt(1))){for(var a=2,u=a;a<t&&!ss(e.charCodeAt(a));++a);if(a<t&&a!==u){for(u=a;a<t&&ss(e.charCodeAt(a));++a);if(a<t&&a!==u){for(u=a;a<t&&!ss(e.charCodeAt(a));++a);if(a===t)return e;a!==u&&(n=r=a+1)}}}}else us(s)&&58===e.charCodeAt(1)&&(n=r=2,t>2&&ss(e.charCodeAt(2))&&(n=r=3));else if(ss(s))return e;for(var l=t-1;l>=r;--l)if(ss(e.charCodeAt(l))){if(!o){i=l;break}}else o=!1;if(-1===i){if(-1===n)return".";i=n}return e.slice(0,i)},basename:function(e,t){void 0!==t&&rs(t,"ext"),rs(e,"path");var n,i=0,o=-1,r=!0;e.length>=2&&(us(e.charCodeAt(0))&&58===e.charCodeAt(1)&&(i=2));if(void 0!==t&&t.length>0&&t.length<=e.length){if(t.length===e.length&&t===e)return"";var s=t.length-1,a=-1;for(n=e.length-1;n>=i;--n){var u=e.charCodeAt(n);if(ss(u)){if(!r){i=n+1;break}}else-1===a&&(r=!1,a=n+1),s>=0&&(u===t.charCodeAt(s)?-1==--s&&(o=n):(s=-1,o=a))}return i===o?o=a:-1===o&&(o=e.length),e.slice(i,o)}for(n=e.length-1;n>=i;--n)if(ss(e.charCodeAt(n))){if(!r){i=n+1;break}}else-1===o&&(r=!1,o=n+1);return-1===o?"":e.slice(i,o)},extname:function(e){rs(e,"path");var t=0,n=-1,i=0,o=-1,r=!0,s=0;e.length>=2&&58===e.charCodeAt(1)&&us(e.charCodeAt(0))&&(t=i=2);for(var a=e.length-1;a>=t;--a){var u=e.charCodeAt(a);if(ss(u)){if(!r){i=a+1;break}}else-1===o&&(r=!1,o=a+1),46===u?-1===n?n=a:1!==s&&(s=1):-1!==n&&(s=-1)}return-1===n||-1===o||0===s||1===s&&n===o-1&&n===i+1?"":e.slice(n,o)},format:function(e){if(null===e||"object"!=typeof e)throw new os("pathObject","Object",e);return cs("\\",e)},parse:function(e){rs(e,"path");var t={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return t;var n=e.length,i=0,o=e.charCodeAt(0);if(n>1){if(ss(o)){if(i=1,ss(e.charCodeAt(1))){for(var r=2,s=r;r<n&&!ss(e.charCodeAt(r));++r);if(r<n&&r!==s){for(s=r;r<n&&ss(e.charCodeAt(r));++r);if(r<n&&r!==s){for(s=r;r<n&&!ss(e.charCodeAt(r));++r);r===n?i=r:r!==s&&(i=r+1)}}}}else if(us(o)&&58===e.charCodeAt(1)){if(i=2,!(n>2))return t.root=t.dir=e,t;if(ss(e.charCodeAt(2))){if(3===n)return t.root=t.dir=e,t;i=3}}}else if(ss(o))return t.root=t.dir=e,t;i>0&&(t.root=e.slice(0,i));for(var a=-1,u=i,l=-1,c=!0,d=e.length-1,h=0;d>=i;--d)if(ss(o=e.charCodeAt(d))){if(!c){u=d+1;break}}else-1===l&&(c=!1,l=d+1),46===o?-1===a?a=d:1!==h&&(h=1):-1!==a&&(h=-1);return-1===a||-1===l||0===h||1===h&&a===l-1&&a===u+1?-1!==l&&(t.base=t.name=e.slice(u,l)):(t.name=e.slice(u,a),t.base=e.slice(u,l),t.ext=e.slice(a,l)),t.dir=u>0&&u!==i?e.slice(0,u-1):t.root,t},sep:"\\",delimiter:";",win32:null,posix:null},hs={resolve:function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n="",i=!1,o=e.length-1;o>=-1&&!i;o--){var r=void 0;rs(r=o>=0?e[o]:es(),"path"),0!==r.length&&(n=r+"/"+n,i=47===r.charCodeAt(0))}return n=ls(n,!i,"/",as),i?n.length>0?"/"+n:"/":n.length>0?n:"."},normalize:function(e){if(rs(e,"path"),0===e.length)return".";var t=47===e.charCodeAt(0),n=47===e.charCodeAt(e.length-1);return 0!==(e=ls(e,!t,"/",as)).length||t||(e="."),e.length>0&&n&&(e+="/"),t?"/"+e:e},isAbsolute:function(e){return rs(e,"path"),e.length>0&&47===e.charCodeAt(0)},join:function(){for(var e,t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];if(0===t.length)return".";for(var i=0;i<t.length;++i){var o=arguments[i];rs(o,"path"),o.length>0&&(void 0===e?e=o:e+="/"+o)}return void 0===e?".":hs.normalize(e)},relative:function(e,t){if(rs(e,"from"),rs(t,"to"),e===t)return"";if((e=hs.resolve(e))===(t=hs.resolve(t)))return"";for(var n=1;n<e.length&&47===e.charCodeAt(n);++n);for(var i=e.length,o=i-n,r=1;r<t.length&&47===t.charCodeAt(r);++r);for(var s=t.length-r,a=o<s?o:s,u=-1,l=0;l<=a;++l){if(l===a){if(s>a){if(47===t.charCodeAt(r+l))return t.slice(r+l+1);if(0===l)return t.slice(r+l)}else o>a&&(47===e.charCodeAt(n+l)?u=l:0===l&&(u=0));break}var c=e.charCodeAt(n+l);if(c!==t.charCodeAt(r+l))break;47===c&&(u=l)}var d="";for(l=n+u+1;l<=i;++l)l!==i&&47!==e.charCodeAt(l)||(0===d.length?d+="..":d+="/..");return d.length>0?d+t.slice(r+u):(r+=u,47===t.charCodeAt(r)&&++r,t.slice(r))},toNamespacedPath:function(e){return e},dirname:function(e){if(rs(e,"path"),0===e.length)return".";for(var t=47===e.charCodeAt(0),n=-1,i=!0,o=e.length-1;o>=1;--o)if(47===e.charCodeAt(o)){if(!i){n=o;break}}else i=!1;return-1===n?t?"/":".":t&&1===n?"//":e.slice(0,n)},basename:function(e,t){void 0!==t&&rs(t,"ext"),rs(e,"path");var n,i=0,o=-1,r=!0;if(void 0!==t&&t.length>0&&t.length<=e.length){if(t.length===e.length&&t===e)return"";var s=t.length-1,a=-1;for(n=e.length-1;n>=0;--n){var u=e.charCodeAt(n);if(47===u){if(!r){i=n+1;break}}else-1===a&&(r=!1,a=n+1),s>=0&&(u===t.charCodeAt(s)?-1==--s&&(o=n):(s=-1,o=a))}return i===o?o=a:-1===o&&(o=e.length),e.slice(i,o)}for(n=e.length-1;n>=0;--n)if(47===e.charCodeAt(n)){if(!r){i=n+1;break}}else-1===o&&(r=!1,o=n+1);return-1===o?"":e.slice(i,o)},extname:function(e){rs(e,"path");for(var t=-1,n=0,i=-1,o=!0,r=0,s=e.length-1;s>=0;--s){var a=e.charCodeAt(s);if(47!==a)-1===i&&(o=!1,i=s+1),46===a?-1===t?t=s:1!==r&&(r=1):-1!==t&&(r=-1);else if(!o){n=s+1;break}}return-1===t||-1===i||0===r||1===r&&t===i-1&&t===n+1?"":e.slice(t,i)},format:function(e){if(null===e||"object"!=typeof e)throw new os("pathObject","Object",e);return cs("/",e)},parse:function(e){rs(e,"path");var t={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return t;var n,i=47===e.charCodeAt(0);i?(t.root="/",n=1):n=0;for(var o=-1,r=0,s=-1,a=!0,u=e.length-1,l=0;u>=n;--u){var c=e.charCodeAt(u);if(47!==c)-1===s&&(a=!1,s=u+1),46===c?-1===o?o=u:1!==l&&(l=1):-1!==o&&(l=-1);else if(!a){r=u+1;break}}return-1===o||-1===s||0===l||1===l&&o===s-1&&o===r+1?-1!==s&&(t.base=t.name=0===r&&i?e.slice(1,s):e.slice(r,s)):(0===r&&i?(t.name=e.slice(1,o),t.base=e.slice(1,s)):(t.name=e.slice(r,o),t.base=e.slice(r,s)),t.ext=e.slice(o,s)),r>0?t.dir=e.slice(0,r-1):i&&(t.dir="/"),t},sep:"/",delimiter:":",win32:null,posix:null};hs.win32=ds.win32=ds,hs.posix=ds.posix=hs;var ps="win32"===ns?ds.normalize:hs.normalize,fs="win32"===ns?ds.join:hs.join,gs="win32"===ns?ds.relative:hs.relative,ms="win32"===ns?ds.dirname:hs.dirname,vs="win32"===ns?ds.basename:hs.basename,_s="win32"===ns?ds.extname:hs.extname,ys="win32"===ns?ds.sep:hs.sep;var bs,ws=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i};function Cs(e){return!e||e.scheme!==Ci.file||!y}function Ss(e){return Ds(e)||e.authority}function Ls(e,t){return e===t||Er(e,t)}function xs(e,t,n){if(void 0===n&&(n=Cs(e)),e===t)return!0;if(!e||!t)return!1;if(e.scheme!==t.scheme||!Ls(e.authority,t.authority))return!1;var i=e.path||"/",o=t.path||"/";return i===o||n&&Er(i||"/",o||"/")}function Ds(e){return hs.basename(e.path)}function Ns(e){if(0===e.path.length)return e;if(e.scheme===Ci.file)return Et.file(ms(ks(e)));var t=hs.dirname(e.path);return e.authority&&t.length&&47!==t.charCodeAt(0)&&(console.error('dirname("'+e.toString+")) resulted in a relative path"),t="/"),e.with({path:t})}function ks(e){var t,n,i=e.path;return t=e.authority&&i.length>1&&e.scheme===Ci.file?"//"+e.authority+i:v&&47===i.charCodeAt(0)&&((n=i.charCodeAt(1))>=65&&n<=90||n>=97&&n<=122)&&58===i.charCodeAt(2)?i.substr(1):i,v&&(t=t.replace(/\//g,"\\")),t}function Es(e,t,n){if(void 0===n&&(n=Cs(e)),e.scheme===t.scheme&&Ls(e.authority,t.authority)){if(e.scheme===Ci.file){var i=gs(e.path,t.path);return v?i.replace(/[\\/]/g,hs.sep):i}var o=e.path||"/",r=t.path||"/";if(n){for(var s=0,a=Math.min(o.length,r.length);s<a&&(o.charCodeAt(s)===r.charCodeAt(s)||o.charAt(s).toLowerCase()===r.charAt(s).toLowerCase());s++);o=r.substr(0,s)+o.substr(s)}return hs.relative(o,r)}}!function(e){e.META_DATA_LABEL="label",e.META_DATA_DESCRIPTION="description",e.META_DATA_SIZE="size",e.META_DATA_MIME="mime",e.parseMetaData=function(t){var n=new Map;t.path.substring(t.path.indexOf(";")+1,t.path.lastIndexOf(";")).split(";").forEach((function(e){var t=e.split(":"),i=t[0],o=t[1];i&&o&&n.set(i,o)}));var i=t.path.substring(0,t.path.indexOf(";"));return i&&n.set(e.META_DATA_MIME,i),n}}(bs||(bs={}));var Is="number",Os="string",Ms="undefined",Ts="object",Ps="function";function Rs(e){return Array.isArray?Array.isArray(e):!(!e||typeof e.length!==Is||e.constructor!==Array)}function As(e){return typeof e===Os||e instanceof String}function Fs(e){return!(typeof e!==Ts||null===e||Array.isArray(e)||e instanceof RegExp||e instanceof Date)}function Ws(e){return(typeof e===Is||e instanceof Number)&&!isNaN(e)}function Vs(e){return!0===e||!1===e}function Bs(e){return typeof e===Ms}function Hs(e){return Bs(e)||null===e}function zs(e,t){if(!e)throw new Error(t?"Unexpected type, expected '"+t+"'":"Unexpected type")}var js=Object.prototype.hasOwnProperty;function Us(e){if(!Fs(e))return!1;for(var t in e)if(js.call(e,t))return!1;return!0}function Ks(e){return typeof e===Ps}function qs(e,t){for(var n=Math.min(e.length,t.length),i=0;i<n;i++)Gs(e[i],t[i])}function Gs(e,t){if(As(t)){if(typeof e!==t)throw new Error("argument does not match constraint: typeof "+t)}else if(Ks(t)){try{if(e instanceof t)return}catch(e){}if(!Hs(e)&&e.constructor===t)return;if(1===t.length&&!0===t.call(void 0,e))return;throw new Error("argument does not match one of these constraints: arg instanceof constraint, arg.constructor === constraint, nor constraint(arg) === true")}}function Zs(e){for(var t=[],n=0,i=function(e){for(var t=[],n=Object.getPrototypeOf(e);Object.prototype!==n;)t=t.concat(Object.getOwnPropertyNames(n)),n=Object.getPrototypeOf(n);return t}(e);n<i.length;n++){var o=i[n];"function"==typeof e[o]&&t.push(o)}return t}function Ys(e,t){for(var n=function(e){return function(){var n=Array.prototype.slice.call(arguments,0);return t(e,n)}},i={},o=0,r=e;o<r.length;o++){var s=r[o];i[s]=n(s)}return i}function Xs(e){return null===e?void 0:e}function $s(e){return void 0===e?null:e}var Qs=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function Js(e){var t=[];return e.forEach((function(e){return t.push(e)})),t}function ea(e){var t=[];return e.forEach((function(e,n){return t.push(n)})),t}var ta,na=function(){function e(){this._value="",this._pos=0}return e.prototype.reset=function(e){return this._value=e,this._pos=0,this},e.prototype.next=function(){return this._pos+=1,this},e.prototype.hasNext=function(){return this._pos<this._value.length-1},e.prototype.cmp=function(e){return e.charCodeAt(0)-this._value.charCodeAt(this._pos)},e.prototype.value=function(){return this._value[this._pos]},e}(),ia=function(){function e(e){void 0===e&&(e=!0),this._splitOnBackslash=e}return e.prototype.reset=function(e){return this._value=e.replace(/\\$|\/$/,""),this._from=0,this._to=0,this.next()},e.prototype.hasNext=function(){return this._to<this._value.length},e.prototype.next=function(){this._from=this._to;for(var e=!0;this._to<this._value.length;this._to++){var t=this._value.charCodeAt(this._to);if(47===t||this._splitOnBackslash&&92===t){if(!e)break;this._from++}else e=!1}return this},e.prototype.cmp=function(e){for(var t=0,n=e.length,i=this._from;t<n&&i<this._to;){var o=e.charCodeAt(t)-this._value.charCodeAt(i);if(0!==o)return o;t+=1,i+=1}return n===this._to-this._from?0:t<n?-1:1},e.prototype.value=function(){return this._value.substring(this._from,this._to)},e}(),oa=function(){},ra=function(){function e(e){this._iter=e}return e.forPaths=function(){return new e(new ia)},e.forStrings=function(){return new e(new na)},e.prototype.clear=function(){this._root=void 0},e.prototype.set=function(e,t){var n,i=this._iter.reset(e);for(this._root||(this._root=new oa,this._root.segment=i.value()),n=this._root;;){var o=i.cmp(n.segment);if(o>0)n.left||(n.left=new oa,n.left.segment=i.value()),n=n.left;else if(o<0)n.right||(n.right=new oa,n.right.segment=i.value()),n=n.right;else{if(!i.hasNext())break;i.next(),n.mid||(n.mid=new oa,n.mid.segment=i.value()),n=n.mid}}var r=n.value;return n.value=t,n.key=e,r},e.prototype.get=function(e){for(var t=this._iter.reset(e),n=this._root;n;){var i=t.cmp(n.segment);if(i>0)n=n.left;else if(i<0)n=n.right;else{if(!t.hasNext())break;t.next(),n=n.mid}}return n?n.value:void 0},e.prototype.findSubstr=function(e){for(var t=this._iter.reset(e),n=this._root,i=void 0;n;){var o=t.cmp(n.segment);if(o>0)n=n.left;else if(o<0)n=n.right;else{if(!t.hasNext())break;t.next(),i=n.value||i,n=n.mid}}return n&&n.value||i},e.prototype.forEach=function(e){this._forEach(this._root,e)},e.prototype._forEach=function(e,t){e&&(this._forEach(e.left,t),e.value&&t(e.value,e.key),this._forEach(e.mid,t),this._forEach(e.right,t))},e}(),sa=function(){function e(){this.map=new Map,this.ignoreCase=!1}return e.prototype.set=function(e,t){this.map.set(this.toKey(e),t)},e.prototype.get=function(e){return this.map.get(this.toKey(e))},e.prototype.toKey=function(e){var t=e.toString();return this.ignoreCase&&(t=t.toLowerCase()),t},e}(),aa=function(e){function t(t,n){void 0===n&&(n=1);var i=e.call(this)||this;return i._limit=t,i._ratio=Math.min(Math.max(0,n),1),i}return Qs(t,e),t.prototype.get=function(t){return e.prototype.get.call(this,t,2)},t.prototype.peek=function(t){return e.prototype.get.call(this,t,0)},t.prototype.set=function(t,n){e.prototype.set.call(this,t,n,2),this.checkTrim()},t.prototype.checkTrim=function(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))},t}(function(){function e(){this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0}return e.prototype.clear=function(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0},Object.defineProperty(e.prototype,"size",{get:function(){return this._size},enumerable:!0,configurable:!0}),e.prototype.get=function(e,t){void 0===t&&(t=0);var n=this._map.get(e);if(n)return 0!==t&&this.touch(n,t),n.value},e.prototype.set=function(e,t,n){void 0===n&&(n=0);var i=this._map.get(e);if(i)i.value=t,0!==n&&this.touch(i,n);else{switch(i={key:e,value:t,next:void 0,previous:void 0},n){case 0:this.addItemLast(i);break;case 1:this.addItemFirst(i);break;case 2:default:this.addItemLast(i)}this._map.set(e,i),this._size++}},e.prototype.delete=function(e){return!!this.remove(e)},e.prototype.remove=function(e){var t=this._map.get(e);if(t)return this._map.delete(e),this.removeItem(t),this._size--,t.value},e.prototype.forEach=function(e,t){for(var n=this._head;n;)t?e.bind(t)(n.value,n.key,this):e(n.value,n.key,this),n=n.next},e.prototype.trimOld=function(e){if(!(e>=this.size))if(0!==e){for(var t=this._head,n=this.size;t&&n>e;)this._map.delete(t.key),t=t.next,n--;this._head=t,this._size=n,t&&(t.previous=void 0)}else this.clear()},e.prototype.addItemFirst=function(e){if(this._head||this._tail){if(!this._head)throw new Error("Invalid list");e.next=this._head,this._head.previous=e}else this._tail=e;this._head=e},e.prototype.addItemLast=function(e){if(this._head||this._tail){if(!this._tail)throw new Error("Invalid list");e.previous=this._tail,this._tail.next=e}else this._head=e;this._tail=e},e.prototype.removeItem=function(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{var t=e.next,n=e.previous;if(!t||!n)throw new Error("Invalid list");t.previous=n,n.next=t}e.next=void 0,e.previous=void 0},e.prototype.touch=function(e,t){if(!this._head||!this._tail)throw new Error("Invalid list");if(1===t||2===t)if(1===t){if(e===this._head)return;var n=e.next,i=e.previous;e===this._tail?(i.next=void 0,this._tail=i):(n.previous=i,i.next=n),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e}else if(2===t){if(e===this._tail)return;n=e.next,i=e.previous;e===this._head?(n.previous=void 0,this._head=n):(n.previous=i,i.next=n),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e}},e.prototype.toJSON=function(){var e=[];return this.forEach((function(t,n){e.push([n,t])})),e},e}()),ua=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},la=Mn("commandService"),ca=new(function(){function e(){this._commands=new Map,this._onDidRegisterCommand=new nt,this.onDidRegisterCommand=this._onDidRegisterCommand.event}return e.prototype.registerCommand=function(e,t){var n=this;if(!e)throw new Error("invalid command");if("string"==typeof e){if(!t)throw new Error("invalid command");return this.registerCommand({id:e,handler:t})}if(e.description){for(var i=[],o=0,r=e.description.args;o<r.length;o++){var s=r[o];i.push(s.constraint)}var a=e.handler;e.handler=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];return qs(t,i),a.apply(void 0,ua([e],t))}}var u=e.id,l=this._commands.get(u);l||(l=new Qe,this._commands.set(u,l));var c=l.unshift(e),d=We((function(){c();var e=n._commands.get(u);(null==e?void 0:e.isEmpty())&&n._commands.delete(u)}));return this._onDidRegisterCommand.fire(u),d},e.prototype.registerCommandAlias=function(e,t){return ca.registerCommand(e,(function(e){for(var n,i=[],o=1;o<arguments.length;o++)i[o-1]=arguments[o];return(n=e.get(la)).executeCommand.apply(n,ua([t],i))}))},e.prototype.getCommand=function(e){var t=this._commands.get(e);if(t&&!t.isEmpty())return t.iterator().next().value},e.prototype.getCommands=function(){for(var e=new Map,t=0,n=ea(this._commands);t<n.length;t++){var i=n[t],o=this.getCommand(i);o&&e.set(i,o)}return e},e}()),da=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},ha=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},pa=Mn("openerService"),fa=Object.freeze({_serviceBrand:void 0,registerOpener:function(){return He.None},registerValidator:function(){return He.None},registerExternalUriResolver:function(){return He.None},setExternalOpener:function(){},open:function(){return da(this,void 0,void 0,(function(){return ha(this,(function(e){return[2,!1]}))}))},resolveExternalUri:function(e){return da(this,void 0,void 0,(function(){return ha(this,(function(t){return[2,{resolved:e,dispose:function(){}}]}))}))}});function ga(e,t){return Et.isUri(e)?Er(e.scheme,t):Or(e,t+":")}!function(e){e[e.API=0]="API",e[e.USER=1]="USER"}(ta||(ta={}));var ma=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},va=function(e,t){return function(n,i){t(n,i,e)}},_a=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},ya=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},ba=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},wa=function(){function e(e){this._commandService=e}return e.prototype.open=function(e){return _a(this,void 0,void 0,(function(){var t,n;return ya(this,(function(i){switch(i.label){case 0:if(!ga(e,Ci.command))return[2,!1];if("string"==typeof e&&(e=Et.parse(e)),!ca.getCommand(e.path))throw new Error("command '"+e.path+"' NOT known");t=[];try{t=lr(decodeURIComponent(e.query))}catch(n){try{t=lr(e.query)}catch(e){}}return Array.isArray(t)||(t=[t]),[4,(n=this._commandService).executeCommand.apply(n,ba([e.path],t))];case 1:return i.sent(),[2,!0]}}))}))},e=ma([va(0,la)],e)}(),Ca=function(){function e(e){this._editorService=e}return e.prototype.open=function(e,t){return _a(this,void 0,void 0,(function(){var n,i;return ya(this,(function(o){switch(o.label){case 0:return"string"==typeof e&&(e=Et.parse(e)),n=void 0,(i=/^L?(\d+)(?:,(\d+))?/.exec(e.fragment))&&(n={startLineNumber:parseInt(i[1]),startColumn:i[2]?parseInt(i[2]):1},e=e.with({fragment:""})),e.scheme===Ci.file&&(e=(r=e).path.length?(s=r.scheme===Ci.file?Et.file(ps(ks(r))).path:hs.normalize(r.path),r.with({path:s})):r),[4,this._editorService.openCodeEditor({resource:e,options:{selection:n,context:(null==t?void 0:t.fromUserGesture)?ta.USER:ta.API}},this._editorService.getFocusedCodeEditor(),null==t?void 0:t.openToSide)];case 1:return o.sent(),[2,!0]}var r,s}))}))},e=ma([va(0,Pn)],e)}(),Sa=function(){function e(e,t){var n=this;this._openers=new Qe,this._validators=new Qe,this._resolvers=new Qe,this._externalOpener={openExternal:function(e){return sr(e),Promise.resolve(!0)}},this._openers.push({open:function(e,t){return _a(n,void 0,void 0,(function(){return ya(this,(function(n){switch(n.label){case 0:return(null==t?void 0:t.openExternal)||ga(e,Ci.mailto)||ga(e,Ci.http)||ga(e,Ci.https)?[4,this._doOpenExternal(e,t)]:[3,2];case 1:return n.sent(),[2,!0];case 2:return[2,!1]}}))}))}}),this._openers.push(new wa(t)),this._openers.push(new Ca(e))}return e.prototype.open=function(e,t){return _a(this,void 0,void 0,(function(){var n,i,o,r;return ya(this,(function(s){switch(s.label){case 0:n=0,i=this._validators.toArray(),s.label=1;case 1:return n<i.length?[4,i[n].shouldOpen(e)]:[3,4];case 2:if(!s.sent())return[2,!1];s.label=3;case 3:return n++,[3,1];case 4:o=0,r=this._openers.toArray(),s.label=5;case 5:return o<r.length?[4,r[o].open(e,t)]:[3,8];case 6:if(s.sent())return[2,!0];s.label=7;case 7:return o++,[3,5];case 8:return[2,!1]}}))}))},e.prototype.resolveExternalUri=function(e,t){return _a(this,void 0,void 0,(function(){var n,i,o;return ya(this,(function(r){switch(r.label){case 0:n=0,i=this._resolvers.toArray(),r.label=1;case 1:return n<i.length?[4,i[n].resolveExternalUri(e,t)]:[3,4];case 2:if(o=r.sent())return[2,o];r.label=3;case 3:return n++,[3,1];case 4:return[2,{resolved:e,dispose:function(){}}]}}))}))},e.prototype._doOpenExternal=function(e,t){return _a(this,void 0,void 0,(function(){var n,i;return ya(this,(function(o){switch(o.label){case 0:return n="string"==typeof e?Et.parse(e):e,[4,this.resolveExternalUri(n,t)];case 1:return i=o.sent().resolved,"string"==typeof e&&n.toString()===i.toString()?[2,this._externalOpener.openExternal(e)]:[2,this._externalOpener.openExternal(encodeURI(i.toString(!0)))]}}))}))},e.prototype.dispose=function(){this._validators.clear()},e=ma([va(0,Pn),va(1,la)],e)}();function La(e,t){if(!e)throw new Error(t?"Assertion failed ("+t+")":"Assertion Failed")}function xa(e){if(!e||"object"!=typeof e)return e;if(e instanceof RegExp)return e;var t=Array.isArray(e)?[]:{};return Object.keys(e).forEach((function(n){e[n]&&"object"==typeof e[n]?t[n]=xa(e[n]):t[n]=e[n]})),t}var Da=Object.prototype.hasOwnProperty;function Na(e,t){return function e(t,n,i){if(Hs(t))return t;var o=n(t);if(void 0!==o)return o;if(Rs(t)){for(var r=[],s=0,a=t;s<a.length;s++){var u=a[s];r.push(e(u,n,i))}return r}if(Fs(t)){if(i.has(t))throw new Error("Cannot clone recursive data-structure");i.add(t);var l={};for(var c in t)Da.call(t,c)&&(l[c]=e(t[c],n,i));return i.delete(t),l}return t}(e,t,new Set)}function ka(e,t,n){return void 0===n&&(n=!0),Fs(e)?(Fs(t)&&Object.keys(t).forEach((function(i){i in e?n&&(Fs(e[i])&&Fs(t[i])?ka(e[i],t[i],n):e[i]=t[i]):e[i]=t[i]})),e):t}function Ea(e,t){if(e===t)return!0;if(null==e||null==t)return!1;if(typeof e!=typeof t)return!1;if("object"!=typeof e)return!1;if(Array.isArray(e)!==Array.isArray(t))return!1;var n,i;if(Array.isArray(e)){if(e.length!==t.length)return!1;for(n=0;n<e.length;n++)if(!Ea(e[n],t[n]))return!1}else{var o=[];for(i in e)o.push(i);o.sort();var r=[];for(i in t)r.push(i);if(r.sort(),!Ea(o,r))return!1;for(n=0;n<o.length;n++)if(!Ea(e[o[n]],t[o[n]]))return!1}return!0}function Ia(e,t,n){var i=t(e);return void 0===i?n:i}var Oa=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Ma={followsCaret:!0,ignoreCharChanges:!0,alwaysRevealFirst:!0},Ta=function(e){function t(t,n){void 0===n&&(n={});var i=e.call(this)||this;return i._onDidUpdate=i._register(new nt),i._editor=t,i._options=ka(n,Ma,!1),i.disposed=!1,i.nextIdx=-1,i.ranges=[],i.ignoreSelectionChange=!1,i.revealFirst=Boolean(i._options.alwaysRevealFirst),i._register(i._editor.onDidDispose((function(){return i.dispose()}))),i._register(i._editor.onDidUpdateDiff((function(){return i._onDiffUpdated()}))),i._options.followsCaret&&i._register(i._editor.getModifiedEditor().onDidChangeCursorPosition((function(e){i.ignoreSelectionChange||(i.nextIdx=-1)}))),i._options.alwaysRevealFirst&&i._register(i._editor.getModifiedEditor().onDidChangeModel((function(e){i.revealFirst=!0}))),i._init(),i}return Oa(t,e),t.prototype._init=function(){this._editor.getLineChanges()},t.prototype._onDiffUpdated=function(){this._init(),this._compute(this._editor.getLineChanges()),this.revealFirst&&null!==this._editor.getLineChanges()&&(this.revealFirst=!1,this.nextIdx=-1,this.next(1))},t.prototype._compute=function(e){var t=this;this.ranges=[],e&&e.forEach((function(e){!t._options.ignoreCharChanges&&e.charChanges?e.charChanges.forEach((function(e){t.ranges.push({rhs:!0,range:new wn(e.modifiedStartLineNumber,e.modifiedStartColumn,e.modifiedEndLineNumber,e.modifiedEndColumn)})})):t.ranges.push({rhs:!0,range:new wn(e.modifiedStartLineNumber,1,e.modifiedStartLineNumber,1)})})),this.ranges.sort((function(e,t){return e.range.getStartPosition().isBeforeOrEqual(t.range.getStartPosition())?-1:t.range.getStartPosition().isBeforeOrEqual(e.range.getStartPosition())?1:0})),this._onDidUpdate.fire(this)},t.prototype._initIdx=function(e){var t=!1,n=this._editor.getPosition();if(n){for(var i=0,o=this.ranges.length;i<o&&!t;i++){var r=this.ranges[i].range;n.isBeforeOrEqual(r.getStartPosition())&&(this.nextIdx=i+(e?0:-1),t=!0)}t||(this.nextIdx=e?0:this.ranges.length-1),this.nextIdx<0&&(this.nextIdx=this.ranges.length-1)}else this.nextIdx=0},t.prototype._move=function(e,t){if(La(!this.disposed,"Illegal State - diff navigator has been disposed"),this.canNavigate()){-1===this.nextIdx?this._initIdx(e):e?(this.nextIdx+=1,this.nextIdx>=this.ranges.length&&(this.nextIdx=0)):(this.nextIdx-=1,this.nextIdx<0&&(this.nextIdx=this.ranges.length-1));var n=this.ranges[this.nextIdx];this.ignoreSelectionChange=!0;try{var i=n.range.getStartPosition();this._editor.setPosition(i),this._editor.revealPositionInCenter(i,t)}finally{this.ignoreSelectionChange=!1}}},t.prototype.canNavigate=function(){return this.ranges&&this.ranges.length>0},t.prototype.next=function(e){void 0===e&&(e=0),this._move(!0,e)},t.prototype.previous=function(e){void 0===e&&(e=0),this._move(!1,e)},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.ranges=[],this.disposed=!0},t}(He),Pa=new(function(){function e(){this._zoomLevel=0,this._onDidChangeZoomLevel=new nt,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event}return e.prototype.getZoomLevel=function(){return this._zoomLevel},e.prototype.setZoomLevel=function(e){e=Math.min(Math.max(-5,e),20),this._zoomLevel!==e&&(this._zoomLevel=e,this._onDidChangeZoomLevel.fire(this._zoomLevel))},e}()),Ra=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Aa=_?1.5:1.35,Fa=function(){function e(e){this.zoomLevel=e.zoomLevel,this.fontFamily=String(e.fontFamily),this.fontWeight=String(e.fontWeight),this.fontSize=e.fontSize,this.fontFeatureSettings=e.fontFeatureSettings,this.lineHeight=0|e.lineHeight,this.letterSpacing=e.letterSpacing}return e.createFromValidatedSettings=function(t,n,i){var o=t.get(33),r=t.get(37),s=t.get(36),a=t.get(35),u=t.get(49),l=t.get(46);return e._create(o,r,s,a,u,l,n,i)},e._create=function(t,n,i,o,r,s,a,u){0===r?r=Math.round(Aa*i):r<8&&(r=8);var l=1+(u?0:.1*Pa.getZoomLevel());return new e({zoomLevel:a,fontFamily:t,fontWeight:n,fontSize:i*=l,fontFeatureSettings:o,lineHeight:r*=l,letterSpacing:s})},e.prototype.getId=function(){return this.zoomLevel+"-"+this.fontFamily+"-"+this.fontWeight+"-"+this.fontSize+"-"+this.fontFeatureSettings+"-"+this.lineHeight+"-"+this.letterSpacing},e.prototype.getMassagedFontFamily=function(){return/[,"']/.test(this.fontFamily)?this.fontFamily:/[+ ]/.test(this.fontFamily)?'"'+this.fontFamily+'"':this.fontFamily},e}(),Wa=function(e){function t(t,n){var i=e.call(this,t)||this;return i.isTrusted=n,i.isMonospace=t.isMonospace,i.typicalHalfwidthCharacterWidth=t.typicalHalfwidthCharacterWidth,i.typicalFullwidthCharacterWidth=t.typicalFullwidthCharacterWidth,i.canUseHalfwidthRightwardsArrow=t.canUseHalfwidthRightwardsArrow,i.spaceWidth=t.spaceWidth,i.middotWidth=t.middotWidth,i.maxDigitWidth=t.maxDigitWidth,i}return Ra(t,e),t.prototype.equals=function(e){return this.fontFamily===e.fontFamily&&this.fontWeight===e.fontWeight&&this.fontSize===e.fontSize&&this.fontFeatureSettings===e.fontFeatureSettings&&this.lineHeight===e.lineHeight&&this.letterSpacing===e.letterSpacing&&this.typicalHalfwidthCharacterWidth===e.typicalHalfwidthCharacterWidth&&this.typicalFullwidthCharacterWidth===e.typicalFullwidthCharacterWidth&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.spaceWidth===e.spaceWidth&&this.middotWidth===e.middotWidth&&this.maxDigitWidth===e.maxDigitWidth},t}(Fa);var Va,Ba,Ha={ICodeEditor:"vs.editor.ICodeEditor",IDiffEditor:"vs.editor.IDiffEditor"},za={ExecuteCommand:"executeCommand",ExecuteCommands:"executeCommands",Type:"type",ReplacePreviousChar:"replacePreviousChar",CompositionStart:"compositionStart",CompositionEnd:"compositionEnd",Paste:"paste",Cut:"cut",Undo:"undo",Redo:"redo"};!function(e){e[e.Left=1]="Left",e[e.Center=2]="Center",e[e.Right=4]="Right",e[e.Full=7]="Full"}(Va||(Va={})),function(e){e[e.Inline=1]="Inline",e[e.Gutter=2]="Gutter"}(Ba||(Ba={}));var ja=function(){function e(e){this.tabSize=Math.max(1,0|e.tabSize),this.indentSize=0|e.tabSize,this.insertSpaces=Boolean(e.insertSpaces),this.defaultEOL=0|e.defaultEOL,this.trimAutoWhitespace=Boolean(e.trimAutoWhitespace)}return e.prototype.equals=function(e){return this.tabSize===e.tabSize&&this.indentSize===e.indentSize&&this.insertSpaces===e.insertSpaces&&this.defaultEOL===e.defaultEOL&&this.trimAutoWhitespace===e.trimAutoWhitespace},e.prototype.createChangeEvent=function(e){return{tabSize:this.tabSize!==e.tabSize,indentSize:this.indentSize!==e.indentSize,insertSpaces:this.insertSpaces!==e.insertSpaces,trimAutoWhitespace:this.trimAutoWhitespace!==e.trimAutoWhitespace}},e}(),Ua=function(e,t){this.range=e,this.matches=t},Ka=function(e,t,n){this.reverseEdits=e,this.changes=t,this.trimAutoWhitespaceLineNumbers=n},qa=/\//g;function Ga(e){switch(e){case 0:return"";case 1:return"[^/\\\\]*?";default:return"(?:[/\\\\]|[^/\\\\]+[/\\\\]|[/\\\\][^/\\\\]+)*?"}}function Za(e,t){if(!e)return[];for(var n=[],i=!1,o=!1,r="",s=0,a=e;s<a.length;s++){var u=a[s];switch(u){case t:if(!i&&!o){n.push(r),r="";continue}break;case"{":i=!0;break;case"}":i=!1;break;case"[":o=!0;break;case"]":o=!1}r+=u}return r&&n.push(r),n}var Ya=/^\*\*\/\*\.[\w\.-]+$/,Xa=/^\*\*\/([\w\.-]+)\/?$/,$a=/^{\*\*\/[\*\.]?[\w\.-]+\/?(,\*\*\/[\*\.]?[\w\.-]+\/?)*}$/,Qa=/^{\*\*\/[\*\.]?[\w\.-]+(\/(\*\*)?)?(,\*\*\/[\*\.]?[\w\.-]+(\/(\*\*)?)?)*}$/,Ja=/^\*\*((\/[\w\.-]+)+)\/?$/,eu=/^([\w\.-]+(\/[\w\.-]+)*)\/?$/,tu=new aa(1e4),nu=function(){return!1},iu=function(){return null};function ou(e,t){if(!e)return iu;var n,i,o=(n=(n="string"!=typeof e?e.pattern:e).trim())+"_"+!!t.trimForExclusions,r=tu.get(o);if(r)return ru(r,e);if(Ya.test(n)){var s=n.substr(4);r=function(e,t){return"string"==typeof e&&_r(e,s)?n:null}}else r=(i=Xa.exec(su(n,t)))?function(e,t){var n="/"+e,i="\\"+e,o=function(o,r){return"string"!=typeof o?null:r?r===e?t:null:o===e||_r(o,n)||_r(o,i)?t:null},r=[e];return o.basenames=r,o.patterns=[t],o.allBasenames=r,o}(i[1],n):(t.trimForExclusions?Qa:$a).test(n)?function(e,t){var n=lu(e.slice(1,-1).split(",").map((function(e){return ou(e,t)})).filter((function(e){return e!==iu})),e),i=n.length;if(!i)return iu;if(1===i)return n[0];var o=function(t,i){for(var o=0,r=n.length;o<r;o++)if(n[o](t,i))return e;return null},r=Ri(n,(function(e){return!!e.allBasenames}));r&&(o.allBasenames=r.allBasenames);var s=n.reduce((function(e,t){return t.allPaths?e.concat(t.allPaths):e}),[]);s.length&&(o.allPaths=s);return o}(n,t):(i=Ja.exec(su(n,t)))?au(i[1].substr(1),n,!0):(i=eu.exec(su(n,t)))?au(i[1],n,!1):function(e){try{var t=new RegExp("^"+function e(t){if(!t)return"";var n="",i=Za(t,"/");if(i.every((function(e){return"**"===e})))n=".*";else{var o=!1;i.forEach((function(t,r){if("**"!==t){for(var s=!1,a="",u=!1,l="",c=0,d=t;c<d.length;c++){var h=d[c];if("}"!==h&&s)a+=h;else if(!u||"]"===h&&l)switch(h){case"{":s=!0;continue;case"[":u=!0;continue;case"}":var p="(?:"+Za(a,",").map((function(t){return e(t)})).join("|")+")";n+=p,s=!1,a="";break;case"]":n+="["+l+"]",u=!1,l="";break;case"?":n+="[^/\\\\]";continue;case"*":n+=Ga(1);continue;default:n+=gr(h)}else{l+="-"===h?h:"^"!==h&&"!"!==h||l?"/"===h?"":gr(h):"^"}}r<i.length-1&&("**"!==i[r+1]||r+2<i.length)&&(n+="[/\\\\]"),o=!1}else o||(n+=Ga(2),o=!0)}))}return n}(e)+"$");return function(n,i){return t.lastIndex=0,"string"==typeof n&&t.test(n)?e:null}}catch(e){return iu}}(n);return tu.set(o,r),ru(r,e)}function ru(e,t){return"string"==typeof t?e:function(n,i){return function(e,t,n,i){if(void 0===i&&(i=ys),e===t)return!0;if(!e||!t)return!1;if(t.length>e.length)return!1;if(n){if(!Or(e,t))return!1;if(t.length===e.length)return!0;var o=t.length;return t.charAt(t.length-1)===i&&o--,e.charAt(o)===i}return t.charAt(t.length-1)!==i&&(t+=i),0===e.indexOf(t)}(n,t.base)?e(gs(t.base,n),i):null}}function su(e,t){return t.trimForExclusions&&_r(e,"/**")?e.substr(0,e.length-2):e}function au(e,t,n){var i=ys!==hs.sep?e.replace(qa,ys):e,o=ys+i,r=n?function(e,n){return"string"!=typeof e||e!==i&&!_r(e,o)?null:t}:function(e,n){return"string"==typeof e&&e===i?t:null};return r.allPaths=[(n?"*/":"./")+e],r}function uu(e,t,n){return!(!e||"string"!=typeof t)&&function(e,t){void 0===t&&(t={});if(!e)return nu;if("string"==typeof e||(o=e,r=o,r&&"string"==typeof r.base&&"string"==typeof r.pattern)){var n=ou(e,t);if(n===iu)return nu;var i=function(e,t){return!!n(e,t)};return n.allBasenames&&(i.allBasenames=n.allBasenames),n.allPaths&&(i.allPaths=n.allPaths),i}var o,r;return function(e,t){var n=lu(Object.getOwnPropertyNames(e).map((function(n){return function(e,t,n){if(!1===t)return iu;var i=ou(e,n);if(i===iu)return iu;if("boolean"==typeof t)return i;if(t){var o=t.when;if("string"==typeof o){var r=function(t,n,r,s){if(!s||!i(t,n))return null;var a,u=s(o.replace("$(basename)",r));return(a=u)&&"function"==typeof a.then?u.then((function(t){return t?e:null})):u?e:null};return r.requiresSiblings=!0,r}}return i}(n,e[n],t)})).filter((function(e){return e!==iu}))),i=n.length;if(!i)return iu;if(!n.some((function(e){return!!e.requiresSiblings}))){if(1===i)return n[0];var o=function(e,t){for(var i=0,o=n.length;i<o;i++){var r=n[i](e,t);if(r)return r}return null},r=Ri(n,(function(e){return!!e.allBasenames}));r&&(o.allBasenames=r.allBasenames);var s=n.reduce((function(e,t){return t.allPaths?e.concat(t.allPaths):e}),[]);return s.length&&(o.allPaths=s),o}var a=function(e,t,i){for(var o=void 0,r=0,s=n.length;r<s;r++){var a=n[r];a.requiresSiblings&&i&&(t||(t=vs(e)),o||(o=t.substr(0,t.length-_s(e).length)));var u=a(e,t,o,i);if(u)return u}return null},u=Ri(n,(function(e){return!!e.allBasenames}));u&&(a.allBasenames=u.allBasenames);var l=n.reduce((function(e,t){return t.allPaths?e.concat(t.allPaths):e}),[]);l.length&&(a.allPaths=l);return a}(e,t)}(e)(t,void 0,n)}function lu(e,t){var n=e.filter((function(e){return!!e.basenames}));if(n.length<2)return e;var i,o=n.reduce((function(e,t){var n=t.basenames;return n?e.concat(n):e}),[]);if(t){i=[];for(var r=0,s=o.length;r<s;r++)i.push(t)}else i=n.reduce((function(e,t){var n=t.patterns;return n?e.concat(n):e}),[]);var a=function(e,t){if("string"!=typeof e)return null;if(!t){var n=void 0;for(n=e.length;n>0;n--){var r=e.charCodeAt(n-1);if(47===r||92===r)break}t=e.substr(n)}var s=o.indexOf(t);return-1!==s?i[s]:null};a.basenames=o,a.patterns=i,a.allBasenames=o;var u=e.filter((function(e){return!e.basenames}));return u.push(a),u}function cu(e,t,n,i){if(Array.isArray(e)){for(var o=0,r=0,s=e;r<s.length;r++){var a=cu(s[r],t,n,i);if(10===a)return a;a>o&&(o=a)}return o}if("string"==typeof e)return i?"*"===e?5:e===n?10:0:0;if(e){var u=e.language,l=e.pattern,c=e.scheme,d=e.hasAccessToAllModels;if(!i&&!d)return 0;o=0;if(c)if(c===t.scheme)o=10;else{if("*"!==c)return 0;o=5}if(u)if(u===n)o=10;else{if("*"!==u)return 0;o=Math.max(o,5)}if(l){if(l!==t.fsPath&&!uu(l,t.fsPath))return 0;o=10}return o}return 0}var du=Mn("modelService");function hu(e){return!e.isTooLargeForSyncing()&&!e.isForSimpleWidget}function pu(e){return"string"!=typeof e&&(Array.isArray(e)?e.every(pu):!!e.exclusive)}var fu,gu,mu,vu,_u=function(){function e(){this._clock=0,this._entries=[],this._onDidChange=new nt}return Object.defineProperty(e.prototype,"onDidChange",{get:function(){return this._onDidChange.event},enumerable:!0,configurable:!0}),e.prototype.register=function(e,t){var n=this,i={selector:e,provider:t,_score:-1,_time:this._clock++};return this._entries.push(i),this._lastCandidate=void 0,this._onDidChange.fire(this._entries.length),We((function(){if(i){var e=n._entries.indexOf(i);e>=0&&(n._entries.splice(e,1),n._lastCandidate=void 0,n._onDidChange.fire(n._entries.length),i=void 0)}}))},e.prototype.has=function(e){return this.all(e).length>0},e.prototype.all=function(e){if(!e)return[];this._updateScores(e);for(var t=[],n=0,i=this._entries;n<i.length;n++){var o=i[n];o._score>0&&t.push(o.provider)}return t},e.prototype.ordered=function(e){var t=[];return this._orderedForEach(e,(function(e){return t.push(e.provider)})),t},e.prototype.orderedGroups=function(e){var t,n,i=[];return this._orderedForEach(e,(function(e){t&&n===e._score?t.push(e.provider):(n=e._score,t=[e.provider],i.push(t))})),i},e.prototype._orderedForEach=function(e,t){if(e){this._updateScores(e);for(var n=0,i=this._entries;n<i.length;n++){var o=i[n];o._score>0&&t(o)}}},e.prototype._updateScores=function(t){var n={uri:t.uri.toString(),language:t.getLanguageIdentifier().language};if(!this._lastCandidate||this._lastCandidate.language!==n.language||this._lastCandidate.uri!==n.uri){this._lastCandidate=n;for(var i=0,o=this._entries;i<o.length;i++){var r=o[i];if(r._score=cu(r.selector,t.uri,t.getLanguageIdentifier().language,hu(t)),pu(r.selector)&&r._score>0){for(var s=0,a=this._entries;s<a.length;s++){a[s]._score=0}r._score=1e3;break}}this._entries.sort(e._compareByScoreAndTime)}},e._compareByScoreAndTime=function(e,t){return e._score<t._score?1:e._score>t._score?-1:e._time<t._time?1:e._time>t._time?-1:0},e}(),yu=function(){function e(){this._map=new Map,this._promises=new Map,this._onDidChange=new nt,this.onDidChange=this._onDidChange.event,this._colorMap=null}return e.prototype.fire=function(e){this._onDidChange.fire({changedLanguages:e,changedColorMap:!1})},e.prototype.register=function(e,t){var n=this;return this._map.set(e,t),this.fire([e]),We((function(){n._map.get(e)===t&&(n._map.delete(e),n.fire([e]))}))},e.prototype.registerPromise=function(e,t){var n=this,i=null,o=!1;return this._promises.set(e,t.then((function(t){n._promises.delete(e),!o&&t&&(i=n.register(e,t))}))),We((function(){o=!0,i&&i.dispose()}))},e.prototype.getPromise=function(e){var t=this,n=this.get(e);if(n)return Promise.resolve(n);var i=this._promises.get(e);return i?i.then((function(n){return t.get(e)})):null},e.prototype.get=function(e){return $s(this._map.get(e))},e.prototype.setColorMap=function(e){this._colorMap=e,this._onDidChange.fire({changedLanguages:ea(this._map),changedColorMap:!0})},e.prototype.getColorMap=function(){return this._colorMap},e.prototype.getDefaultBackground=function(){return this._colorMap&&this._colorMap.length>2?this._colorMap[2]:null},e}(),bu=function(e,t){this.language=e,this.id=t},wu=function(){function e(){}return e.getLanguageId=function(e){return(255&e)>>>0},e.getTokenType=function(e){return(1792&e)>>>8},e.getFontStyle=function(e){return(14336&e)>>>11},e.getForeground=function(e){return(8372224&e)>>>14},e.getBackground=function(e){return(4286578688&e)>>>23},e.getClassNameFromMetadata=function(e){var t="mtk"+this.getForeground(e),n=this.getFontStyle(e);return 1&n&&(t+=" mtki"),2&n&&(t+=" mtkb"),4&n&&(t+=" mtku"),t},e.getInlineStyleFromMetadata=function(e,t){var n=this.getForeground(e),i=this.getFontStyle(e),o="color: "+t[n]+";";return 1&i&&(o+="font-style: italic;"),2&i&&(o+="font-weight: bold;"),4&i&&(o+="text-decoration: underline;"),o},e}(),Cu=((fu=Object.create(null))[0]="method",fu[1]="function",fu[2]="constructor",fu[3]="field",fu[4]="variable",fu[5]="class",fu[6]="struct",fu[7]="interface",fu[8]="module",fu[9]="property",fu[10]="event",fu[11]="operator",fu[12]="unit",fu[13]="value",fu[14]="constant",fu[15]="enum",fu[16]="enum-member",fu[17]="keyword",fu[25]="snippet",fu[18]="text",fu[19]="color",fu[20]="file",fu[21]="reference",fu[22]="customcolor",fu[23]="folder",fu[24]="type-parameter",function(e){return fu[e]||"property"}),Su=function(){var e=Object.create(null);return e.method=0,e.function=1,e.constructor=2,e.field=3,e.variable=4,e.class=5,e.struct=6,e.interface=7,e.module=8,e.property=9,e.event=10,e.operator=11,e.unit=12,e.value=13,e.constant=14,e.enum=15,e["enum-member"]=16,e.enumMember=16,e.keyword=17,e.snippet=25,e.text=18,e.color=19,e.file=20,e.reference=21,e.customcolor=22,e.folder=23,e["type-parameter"]=24,e.typeParameter=24,function(t,n){var i=e[t];return void 0!==i||n||(i=9),i}}();!function(e){e[e.Invoke=1]="Invoke",e[e.TriggerCharacter=2]="TriggerCharacter",e[e.ContentChange=3]="ContentChange"}(gu||(gu={})),function(e){e[e.Text=0]="Text",e[e.Read=1]="Read",e[e.Write=2]="Write"}(mu||(mu={})),function(e){var t=new Map;t.set("file",0),t.set("module",1),t.set("namespace",2),t.set("package",3),t.set("class",4),t.set("method",5),t.set("property",6),t.set("field",7),t.set("constructor",8),t.set("enum",9),t.set("interface",10),t.set("function",11),t.set("variable",12),t.set("constant",13),t.set("string",14),t.set("number",15),t.set("boolean",16),t.set("array",17),t.set("object",18),t.set("key",19),t.set("null",20),t.set("enum-member",21),t.set("struct",22),t.set("event",23),t.set("operator",24),t.set("type-parameter",25);var n=new Map;n.set(0,"file"),n.set(1,"module"),n.set(2,"namespace"),n.set(3,"package"),n.set(4,"class"),n.set(5,"method"),n.set(6,"property"),n.set(7,"field"),n.set(8,"constructor"),n.set(9,"enum"),n.set(10,"interface"),n.set(11,"function"),n.set(12,"variable"),n.set(13,"constant"),n.set(14,"string"),n.set(15,"number"),n.set(16,"boolean"),n.set(17,"array"),n.set(18,"object"),n.set(19,"key"),n.set(20,"null"),n.set(21,"enum-member"),n.set(22,"struct"),n.set(23,"event"),n.set(24,"operator"),n.set(25,"type-parameter"),e.fromString=function(e){return t.get(e)},e.toString=function(e){return n.get(e)},e.toCssClassName=function(e,t){return"codicon "+(t?"inline":"block")+" codicon-symbol-"+(n.get(e)||"property")}}(vu||(vu={}));var Lu,xu,Du=function(){function e(e){this.value=e}return e.Comment=new e("comment"),e.Imports=new e("imports"),e.Region=new e("region"),e}();(Lu||(Lu={})).is=function(e){return Fs(e)&&(Boolean(e.newUri)||Boolean(e.oldUri))},(xu||(xu={})).is=function(e){return Fs(e)&&Et.isUri(e.resource)&&Fs(e.edit)};var Nu=new _u,ku=new _u,Eu=new _u,Iu=new _u,Ou=new _u,Mu=new _u,Tu=new _u,Pu=new _u,Ru=new _u,Au=new _u,Fu=new _u,Wu=new _u,Vu=new _u,Bu=new _u,Hu=new _u,zu=new _u,ju=new _u,Uu=new _u,Ku=new _u,qu=new _u,Gu=new _u,Zu=new _u,Yu=new yu,Xu=new(function(){function e(){}return e.prototype.clone=function(){return this},e.prototype.equals=function(e){return this===e},e}()),$u=new bu("vs.editor.nullMode",0);function Qu(e,t,n,i){return new xn([new Ln(i,"",e)],n)}function Ju(e,t,n,i){var o=new Uint32Array(2);return o[0]=i,o[1]=(16384|e<<0|2<<23)>>>0,new Dn(o,null===n?Xu:n)}var el=Mn("editorWorkerService"),tl=Mn("textModelService"),nl=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),il=!1;function ol(e){w&&(il||(il=!0,console.warn("Could not create web worker(s). Falling back to loading web worker code in main thread, which might cause UI freezes. Please see https://github.com/Microsoft/monaco-editor#faq")),console.warn(e.message))}var rl=function(){function e(e){this._workerId=-1,this._handler=e,this._lastSentReq=0,this._pendingReplies=Object.create(null)}return e.prototype.setWorkerId=function(e){this._workerId=e},e.prototype.sendMessage=function(e,t){var n=this,i=String(++this._lastSentReq);return new Promise((function(o,r){n._pendingReplies[i]={resolve:o,reject:r},n._send({vsWorker:n._workerId,req:i,method:e,args:t})}))},e.prototype.handleMessage=function(e){e&&e.vsWorker&&(-1!==this._workerId&&e.vsWorker!==this._workerId||this._handleMessage(e))},e.prototype._handleMessage=function(e){var t=this;if(e.seq){var n=e;if(!this._pendingReplies[n.seq])return void console.warn("Got reply to unknown seq");var i=this._pendingReplies[n.seq];if(delete this._pendingReplies[n.seq],n.err){var o=n.err;return n.err.$isError&&((o=new Error).name=n.err.name,o.message=n.err.message,o.stack=n.err.stack),void i.reject(o)}i.resolve(n.res)}else{var r=e,s=r.req;this._handler.handleMessage(r.method,r.args).then((function(e){t._send({vsWorker:t._workerId,seq:s,res:e,err:void 0})}),(function(e){e.detail instanceof Error&&(e.detail=ke(e.detail)),t._send({vsWorker:t._workerId,seq:s,res:void 0,err:ke(e)})}))}},e.prototype._send=function(e){var t=[];if(e.req)for(var n=e,i=0;i<n.args.length;i++)n.args[i]instanceof ArrayBuffer&&t.push(n.args[i]);else(n=e).res instanceof ArrayBuffer&&t.push(n.res);this._handler.sendMessage(e,t)},e}(),sl=function(e){function t(t,n,i){var o=e.call(this)||this,r=null;o._worker=o._register(t.create("vs/base/common/worker/simpleWorker",(function(e){o._protocol.handleMessage(e)}),(function(e){r&&r(e)}))),o._protocol=new rl({sendMessage:function(e,t){o._worker.postMessage(e,t)},handleMessage:function(e,t){if("function"!=typeof i[e])return Promise.reject(new Error("Missing method "+e+" on main thread host."));try{return Promise.resolve(i[e].apply(i,t))}catch(e){return Promise.reject(e)}}}),o._protocol.setWorkerId(o._worker.getId());var s=null;void 0!==self.require&&"function"==typeof self.require.getConfig?s=self.require.getConfig():void 0!==self.requirejs&&(s=self.requirejs.s.contexts._.config);var a=Zs(i);o._onModuleLoaded=o._protocol.sendMessage("$initialize",[o._worker.getId(),JSON.parse(JSON.stringify(s)),n,a]);var u=function(e,t){return o._request(e,t)};return o._lazyProxy=new Promise((function(e,t){r=t,o._onModuleLoaded.then((function(t){e(Ys(t,u))}),(function(e){t(e),o._onError("Worker failed to load "+n,e)}))})),o}return nl(t,e),t.prototype.getProxyObject=function(){return this._lazyProxy},t.prototype._request=function(e,t){var n=this;return new Promise((function(i,o){n._onModuleLoaded.then((function(){n._protocol.sendMessage(e,t).then(i,o)}),o)}))},t.prototype._onError=function(e,t){console.error(e),console.info(t)},t}(He);!function(){function e(e,t){var n=this;this._requestHandlerFactory=t,this._requestHandler=null,this._protocol=new rl({sendMessage:function(t,n){e(t,n)},handleMessage:function(e,t){return n._handleMessage(e,t)}})}e.prototype.onmessage=function(e){this._protocol.handleMessage(e)},e.prototype._handleMessage=function(e,t){if("$initialize"===e)return this.initialize(t[0],t[1],t[2],t[3]);if(!this._requestHandler||"function"!=typeof this._requestHandler[e])return Promise.reject(new Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._requestHandler[e].apply(this._requestHandler,t))}catch(e){return Promise.reject(e)}},e.prototype.initialize=function(e,t,n,i){var o=this;this._protocol.setWorkerId(e);var r=Ys(i,(function(e,t){return o._protocol.sendMessage(e,t)}));return this._requestHandlerFactory?(this._requestHandler=this._requestHandlerFactory(r),Promise.resolve(Zs(this._requestHandler))):(t&&(void 0!==t.baseUrl&&delete t.baseUrl,void 0!==t.paths&&void 0!==t.paths.vs&&delete t.paths.vs,t.catchError=!0,self.require.config(t)),new Promise((function(e,t){self.require([n],(function(n){o._requestHandler=n.create(r),o._requestHandler?e(Zs(o._requestHandler)):t(new Error("No RequestHandler!"))}),t)})))}}();var al,ul=function(){function e(e,t,n,i,o){this.id=t;var r=function(e,t){if(S.MonacoEnvironment){if("function"==typeof S.MonacoEnvironment.getWorker)return S.MonacoEnvironment.getWorker(e,t);if("function"==typeof S.MonacoEnvironment.getWorkerUrl)return new Worker(S.MonacoEnvironment.getWorkerUrl(e,t))}throw new Error("You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker")}("workerMain.js",n);"function"==typeof r.then?this.worker=r:this.worker=Promise.resolve(r),this.postMessage(e,[]),this.worker.then((function(e){e.onmessage=function(e){i(e.data)},e.onmessageerror=o,"function"==typeof e.addEventListener&&e.addEventListener("error",o)}))}return e.prototype.getId=function(){return this.id},e.prototype.postMessage=function(e,t){this.worker&&this.worker.then((function(n){return n.postMessage(e,t)}))},e.prototype.dispose=function(){this.worker&&this.worker.then((function(e){return e.terminate()})),this.worker=null},e}(),ll=function(){function e(e){this._label=e,this._webWorkerFailedBeforeError=!1}return e.prototype.create=function(t,n,i){var o=this,r=++e.LAST_WORKER_ID;if(this._webWorkerFailedBeforeError)throw this._webWorkerFailedBeforeError;return new ul(t,r,this._label||"anonymous"+r,n,(function(e){ol(e),o._webWorkerFailedBeforeError=e,i(e)}))},e.LAST_WORKER_ID=0,e}();!function(e){e[e.None=0]="None",e[e.Indent=1]="Indent",e[e.IndentOutdent=2]="IndentOutdent",e[e.Outdent=3]="Outdent"}(al||(al={}));var cl=function(){function e(e){if(this.open=e.open,this.close=e.close,this._standardTokenMask=0,Array.isArray(e.notIn))for(var t=0,n=e.notIn.length;t<n;t++){switch(e.notIn[t]){case"string":this._standardTokenMask|=2;break;case"comment":this._standardTokenMask|=1;break;case"regex":this._standardTokenMask|=4}}}return e.prototype.isOK=function(e){return 0==(this._standardTokenMask&e)},e}();function dl(e,t){for(var n=e.getCount(),i=e.findTokenIndexAtOffset(t),o=e.getLanguageId(i),r=i;r+1<n&&e.getLanguageId(r+1)===o;)r++;for(var s=i;s>0&&e.getLanguageId(s-1)===o;)s--;return new hl(e,o,s,r+1,e.getStartOffset(s),e.getEndOffset(r))}var hl=function(){function e(e,t,n,i,o,r){this._actual=e,this.languageId=t,this._firstTokenIndex=n,this._lastTokenIndex=i,this.firstCharOffset=o,this._lastCharOffset=r}return e.prototype.getLineContent=function(){return this._actual.getLineContent().substring(this.firstCharOffset,this._lastCharOffset)},e.prototype.getActualLineContentBefore=function(e){return this._actual.getLineContent().substring(0,this.firstCharOffset+e)},e.prototype.getTokenCount=function(){return this._lastTokenIndex-this._firstTokenIndex},e.prototype.findTokenIndexAtOffset=function(e){return this._actual.findTokenIndexAtOffset(e+this.firstCharOffset)-this._firstTokenIndex},e.prototype.getStandardTokenType=function(e){return this._actual.getStandardTokenType(e+this._firstTokenIndex)},e}();function pl(e){return 0!=(7&e)}var fl=function(){function e(t){if(t.autoClosingPairs?this._autoClosingPairs=t.autoClosingPairs.map((function(e){return new cl(e)})):t.brackets?this._autoClosingPairs=t.brackets.map((function(e){return new cl({open:e[0],close:e[1]})})):this._autoClosingPairs=[],t.__electricCharacterSupport&&t.__electricCharacterSupport.docComment){var n=t.__electricCharacterSupport.docComment;this._autoClosingPairs.push(new cl({open:n.open,close:n.close||""}))}this._autoCloseBefore="string"==typeof t.autoCloseBefore?t.autoCloseBefore:e.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED,this._surroundingPairs=t.surroundingPairs||this._autoClosingPairs}return e.prototype.getAutoClosingPairs=function(){return this._autoClosingPairs},e.prototype.getAutoCloseBeforeSet=function(){return this._autoCloseBefore},e.shouldAutoClosePair=function(e,t,n){if(0===t.getTokenCount())return!0;var i=t.findTokenIndexAtOffset(n-2),o=t.getStandardTokenType(i);return e.isOK(o)},e.prototype.getSurroundingPairs=function(){return this._surroundingPairs},e.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED=";:.,=}])> \n\t",e}(),gl=function(){function e(t,n,i,o,r,s){this.languageIdentifier=t,this.index=n,this.open=i,this.close=o,this.forwardRegex=r,this.reversedRegex=s,this._openSet=e._toSet(this.open),this._closeSet=e._toSet(this.close)}return e.prototype.isOpen=function(e){return this._openSet.has(e)},e.prototype.isClose=function(e){return this._closeSet.has(e)},e._toSet=function(e){for(var t=new Set,n=0,i=e;n<i.length;n++){var o=i[n];t.add(o)}return t},e}();var ml=function(e,t){var n=function(e){var t=e.length;e=e.map((function(e){return[e[0].toLowerCase(),e[1].toLowerCase()]}));for(var n=[],i=0;i<t;i++)n[i]=i;var o=function(e,t){var n=e[0],i=e[1],o=t[0],r=t[1];return n===o||n===r||i===o||i===r},r=function(e,i){for(var o=Math.min(e,i),r=Math.max(e,i),s=0;s<t;s++)n[s]===r&&(n[s]=o)};for(i=0;i<t;i++)for(var s=e[i],a=i+1;a<t;a++)o(s,e[a])&&r(n[i],n[a]);for(var u=[],l=0;l<t;l++){var c=[],d=[];for(i=0;i<t;i++)if(n[i]===l){var h=e[i],p=h[0],f=h[1];c.push(p),d.push(f)}c.length>0&&u.push({open:c,close:d})}return u}(t);this.brackets=n.map((function(t,i){return new gl(e,i,t.open,t.close,function(e,t,n,i){var o=[];o=(o=o.concat(e)).concat(t);for(var r=0,s=o.length;r<s;r++)vl(o[r],n,i,o);return(o=yl(o)).sort(_l),o.reverse(),wl(o)}(t.open,t.close,n,i),function(e,t,n,i){var o=[];o=(o=o.concat(e)).concat(t);for(var r=0,s=o.length;r<s;r++)vl(o[r],n,i,o);return(o=yl(o)).sort(_l),o.reverse(),wl(o.map(Ll))}(t.open,t.close,n,i))})),this.forwardRegex=function(e){for(var t=[],n=0,i=e;n<i.length;n++){for(var o=i[n],r=0,s=o.open;r<s.length;r++){var a=s[r];t.push(a)}for(var u=0,l=o.close;u<l.length;u++){var c=l[u];t.push(c)}}return wl(t=yl(t))}(this.brackets),this.reversedRegex=function(e){for(var t=[],n=0,i=e;n<i.length;n++){for(var o=i[n],r=0,s=o.open;r<s.length;r++){var a=s[r];t.push(a)}for(var u=0,l=o.close;u<l.length;u++){var c=l[u];t.push(c)}}return wl((t=yl(t)).map(Ll))}(this.brackets),this.textIsBracket={},this.textIsOpenBracket={},this.maxBracketLength=0;for(var i=0,o=this.brackets;i<o.length;i++){for(var r=o[i],s=0,a=r.open;s<a.length;s++){var u=a[s];this.textIsBracket[u]=r,this.textIsOpenBracket[u]=!0,this.maxBracketLength=Math.max(this.maxBracketLength,u.length)}for(var l=0,c=r.close;l<c.length;l++){var d=c[l];this.textIsBracket[d]=r,this.textIsOpenBracket[d]=!1,this.maxBracketLength=Math.max(this.maxBracketLength,d.length)}}};function vl(e,t,n,i){for(var o=0,r=t.length;o<r;o++)if(o!==n){for(var s=t[o],a=0,u=s.open;a<u.length;a++){var l=u[a];l.indexOf(e)>=0&&i.push(l)}for(var c=0,d=s.close;c<d.length;c++){var h=d[c];h.indexOf(e)>=0&&i.push(h)}}}function _l(e,t){return e.length-t.length}function yl(e){if(e.length<=1)return e;for(var t=[],n=new Set,i=0,o=e;i<o.length;i++){var r=o[i];n.has(r)||(t.push(r),n.add(r))}return t}function bl(e){var t=/^[\w ]+$/.test(e);return e=gr(e),t?"\\b"+e+"\\b":e}function wl(e){return yr("("+e.map(bl).join(")|(")+")",!0)}var Cl,Sl,Ll=(Cl=null,Sl=null,function(e){return Cl!==e&&(Sl=function(e){for(var t="",n=e.length-1;n>=0;n--)t+=e.charAt(n);return t}(Cl=e)),Sl}),xl=function(){function e(){}return e._findPrevBracketInText=function(e,t,n,i){var o=n.match(e);if(!o)return null;var r=n.length-(o.index||0),s=o[0].length,a=i+r;return new wn(t,a-s+1,t,a+1)},e.findPrevBracketInRange=function(e,t,n,i,o){var r=Ll(n).substring(n.length-o,n.length-i);return this._findPrevBracketInText(e,t,r,i)},e.findNextBracketInText=function(e,t,n,i){var o=n.match(e);if(!o)return null;var r=o.index||0,s=o[0].length;if(0===s)return null;var a=i+r;return new wn(t,a+1,t,a+1+s)},e.findNextBracketInRange=function(e,t,n,i,o){var r=n.substring(i,o);return this.findNextBracketInText(e,t,r,i)},e}(),Dl=function(){function e(e){this._richEditBrackets=e}return e.prototype.getElectricCharacters=function(){var e=[];if(this._richEditBrackets)for(var t=0,n=this._richEditBrackets.brackets;t<n.length;t++)for(var i=0,o=n[t].close;i<o.length;i++){var r=o[i],s=r.charAt(r.length-1);e.push(s)}return e=e.filter((function(e,t,n){return n.indexOf(e)===t}))},e.prototype.onElectricCharacter=function(e,t,n){if(!this._richEditBrackets||0===this._richEditBrackets.brackets.length)return null;var i=t.findTokenIndexAtOffset(n-1);if(pl(t.getStandardTokenType(i)))return null;var o=this._richEditBrackets.reversedRegex,r=t.getLineContent().substring(0,n-1)+e,s=xl.findPrevBracketInRange(o,1,r,0,r.length);if(!s)return null;var a=r.substring(s.startColumn-1,s.endColumn-1).toLowerCase();if(this._richEditBrackets.textIsOpenBracket[a])return null;var u=t.getActualLineContentBefore(s.startColumn-1);return/^\s*$/.test(u)?{matchOpenBracket:a}:null},e}(),Nl=function(){function e(e){this._indentationRules=e}return e.prototype.shouldIncrease=function(e){return!!(this._indentationRules&&this._indentationRules.increaseIndentPattern&&this._indentationRules.increaseIndentPattern.test(e))},e.prototype.shouldDecrease=function(e){return!!(this._indentationRules&&this._indentationRules.decreaseIndentPattern&&this._indentationRules.decreaseIndentPattern.test(e))},e.prototype.shouldIndentNextLine=function(e){return!!(this._indentationRules&&this._indentationRules.indentNextLinePattern&&this._indentationRules.indentNextLinePattern.test(e))},e.prototype.shouldIgnore=function(e){return!!(this._indentationRules&&this._indentationRules.unIndentedLinePattern&&this._indentationRules.unIndentedLinePattern.test(e))},e.prototype.getIndentMetadata=function(e){var t=0;return this.shouldIncrease(e)&&(t+=1),this.shouldDecrease(e)&&(t+=2),this.shouldIndentNextLine(e)&&(t+=4),this.shouldIgnore(e)&&(t+=8),t},e}(),kl=function(){function e(t){var n=this;(t=t||{}).brackets=t.brackets||[["(",")"],["{","}"],["[","]"]],this._brackets=[],t.brackets.forEach((function(t){var i=e._createOpenBracketRegExp(t[0]),o=e._createCloseBracketRegExp(t[1]);i&&o&&n._brackets.push({open:t[0],openRegExp:i,close:t[1],closeRegExp:o})})),this._regExpRules=t.onEnterRules||[]}return e.prototype.onEnter=function(e,t,n,i){if(e>=3)for(var o=0,r=this._regExpRules.length;o<r;o++){var s=this._regExpRules[o];if([{reg:s.beforeText,text:n},{reg:s.afterText,text:i},{reg:s.oneLineAboveText,text:t}].every((function(e){return!e.reg||e.reg.test(e.text)})))return s.action}if(e>=2&&n.length>0&&i.length>0)for(o=0,r=this._brackets.length;o<r;o++){if((a=this._brackets[o]).openRegExp.test(n)&&a.closeRegExp.test(i))return{indentAction:al.IndentOutdent}}if(e>=2&&n.length>0)for(o=0,r=this._brackets.length;o<r;o++){var a;if((a=this._brackets[o]).openRegExp.test(n))return{indentAction:al.Indent}}return null},e._createOpenBracketRegExp=function(t){var n=gr(t);return/\B/.test(n.charAt(0))||(n="\\b"+n),n+="\\s*$",e._safeRegExp(n)},e._createCloseBracketRegExp=function(t){var n=gr(t);return/\B/.test(n.charAt(n.length-1))||(n+="\\b"),n="^\\s*"+n,e._safeRegExp(n)},e._safeRegExp=function(e){try{return new RegExp(e)}catch(e){return De(e),null}},e}(),El=function(){function e(t,n,i){this._languageIdentifier=t,this._brackets=null,this._electricCharacter=null;var o=null;n&&(o=n._conf),this._conf=e._mergeConf(o,i),this._onEnterSupport=this._conf.brackets||this._conf.indentationRules||this._conf.onEnterRules?new kl(this._conf):null,this.comments=e._handleComments(this._conf),this.characterPair=new fl(this._conf),this.wordDefinition=this._conf.wordPattern||D,this.indentationRules=this._conf.indentationRules,this._conf.indentationRules?this.indentRulesSupport=new Nl(this._conf.indentationRules):this.indentRulesSupport=null,this.foldingRules=this._conf.folding||{}}return Object.defineProperty(e.prototype,"brackets",{get:function(){return!this._brackets&&this._conf.brackets&&(this._brackets=new ml(this._languageIdentifier,this._conf.brackets)),this._brackets},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"electricCharacter",{get:function(){return this._electricCharacter||(this._electricCharacter=new Dl(this.brackets)),this._electricCharacter},enumerable:!0,configurable:!0}),e.prototype.onEnter=function(e,t,n,i){return this._onEnterSupport?this._onEnterSupport.onEnter(e,t,n,i):null},e._mergeConf=function(e,t){return{comments:e?t.comments||e.comments:t.comments,brackets:e?t.brackets||e.brackets:t.brackets,wordPattern:e?t.wordPattern||e.wordPattern:t.wordPattern,indentationRules:e?t.indentationRules||e.indentationRules:t.indentationRules,onEnterRules:e?t.onEnterRules||e.onEnterRules:t.onEnterRules,autoClosingPairs:e?t.autoClosingPairs||e.autoClosingPairs:t.autoClosingPairs,surroundingPairs:e?t.surroundingPairs||e.surroundingPairs:t.surroundingPairs,autoCloseBefore:e?t.autoCloseBefore||e.autoCloseBefore:t.autoCloseBefore,folding:e?t.folding||e.folding:t.folding,__electricCharacterSupport:e?t.__electricCharacterSupport||e.__electricCharacterSupport:t.__electricCharacterSupport}},e._handleComments=function(e){var t=e.comments;if(!t)return null;var n={};if(t.lineComment&&(n.lineCommentToken=t.lineComment),t.blockComment){var i=t.blockComment,o=i[0],r=i[1];n.blockCommentStartToken=o,n.blockCommentEndToken=r}return n},e}(),Il=function(e){this.languageIdentifier=e},Ol=new(function(){function e(){this._entries=new Map,this._onDidChange=new nt,this.onDidChange=this._onDidChange.event}return e.prototype.register=function(e,t){var n=this,i=this._getRichEditSupport(e.id),o=new El(e,i,t);return this._entries.set(e.id,o),this._onDidChange.fire(new Il(e)),We((function(){n._entries.get(e.id)===o&&(n._entries.set(e.id,i),n._onDidChange.fire(new Il(e)))}))},e.prototype._getRichEditSupport=function(e){return this._entries.get(e)},e.prototype._getElectricCharacterSupport=function(e){var t=this._getRichEditSupport(e);return t&&t.electricCharacter||null},e.prototype.getElectricCharacters=function(e){var t=this._getElectricCharacterSupport(e);return t?t.getElectricCharacters():[]},e.prototype.onElectricCharacter=function(e,t,n){var i=dl(t,n-1),o=this._getElectricCharacterSupport(i.languageId);return o?o.onElectricCharacter(e,i,n-i.firstCharOffset):null},e.prototype.getComments=function(e){var t=this._getRichEditSupport(e);return t&&t.comments||null},e.prototype._getCharacterPairSupport=function(e){var t=this._getRichEditSupport(e);return t&&t.characterPair||null},e.prototype.getAutoClosingPairs=function(e){var t=this._getCharacterPairSupport(e);return t?t.getAutoClosingPairs():[]},e.prototype.getAutoCloseBeforeSet=function(e){var t=this._getCharacterPairSupport(e);return t?t.getAutoCloseBeforeSet():fl.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED},e.prototype.getSurroundingPairs=function(e){var t=this._getCharacterPairSupport(e);return t?t.getSurroundingPairs():[]},e.prototype.shouldAutoClosePair=function(e,t,n){var i=dl(t,n-1);return fl.shouldAutoClosePair(e,i,n-i.firstCharOffset)},e.prototype.getWordDefinition=function(e){var t=this._getRichEditSupport(e);return N(t&&t.wordDefinition||null)},e.prototype.getFoldingRules=function(e){var t=this._getRichEditSupport(e);return t?t.foldingRules:{}},e.prototype.getIndentRulesSupport=function(e){var t=this._getRichEditSupport(e);return t&&t.indentRulesSupport||null},e.prototype.getPrecedingValidLine=function(e,t,n){var i=e.getLanguageIdAtPosition(t,0);if(t>1){var o=void 0,r=-1;for(o=t-1;o>=1;o--){if(e.getLanguageIdAtPosition(o,0)!==i)return r;var s=e.getLineContent(o);if(!n.shouldIgnore(s)&&!/^\s+$/.test(s)&&""!==s)return o;r=o}}return-1},e.prototype.getInheritIndentForLine=function(e,t,n,i){if(void 0===i&&(i=!0),e<4)return null;var o=this.getIndentRulesSupport(t.getLanguageIdentifier().id);if(!o)return null;if(n<=1)return{indentation:"",action:null};var r=this.getPrecedingValidLine(t,n,o);if(r<0)return null;if(r<1)return{indentation:"",action:null};var s=t.getLineContent(r);if(o.shouldIncrease(s)||o.shouldIndentNextLine(s))return{indentation:Cr(s),action:al.Indent,line:r};if(o.shouldDecrease(s))return{indentation:Cr(s),action:null,line:r};if(1===r)return{indentation:Cr(t.getLineContent(r)),action:null,line:r};var a=r-1,u=o.getIndentMetadata(t.getLineContent(a));if(!(3&u)&&4&u){for(var l=0,c=a-1;c>0;c--)if(!o.shouldIndentNextLine(t.getLineContent(c))){l=c;break}return{indentation:Cr(t.getLineContent(l+1)),action:null,line:l+1}}if(i)return{indentation:Cr(t.getLineContent(r)),action:null,line:r};for(c=r;c>0;c--){var d=t.getLineContent(c);if(o.shouldIncrease(d))return{indentation:Cr(d),action:al.Indent,line:c};if(o.shouldIndentNextLine(d)){l=0;for(var h=c-1;h>0;h--)if(!o.shouldIndentNextLine(t.getLineContent(c))){l=h;break}return{indentation:Cr(t.getLineContent(l+1)),action:null,line:l+1}}if(o.shouldDecrease(d))return{indentation:Cr(d),action:null,line:c}}return{indentation:Cr(t.getLineContent(1)),action:null,line:1}},e.prototype.getGoodIndentForLine=function(e,t,n,i,o){if(e<4)return null;var r=this._getRichEditSupport(n);if(!r)return null;var s=this.getIndentRulesSupport(n);if(!s)return null;var a=this.getInheritIndentForLine(e,t,i),u=t.getLineContent(i);if(a){var l=a.line;if(void 0!==l){var c=r.onEnter(e,"",t.getLineContent(l),"");if(c){var d=Cr(t.getLineContent(l));return c.removeText&&(d=d.substring(0,d.length-c.removeText)),c.indentAction===al.Indent||c.indentAction===al.IndentOutdent?d=o.shiftIndent(d):c.indentAction===al.Outdent&&(d=o.unshiftIndent(d)),s.shouldDecrease(u)&&(d=o.unshiftIndent(d)),c.appendText&&(d+=c.appendText),Cr(d)}}return s.shouldDecrease(u)?a.action===al.Indent?a.indentation:o.unshiftIndent(a.indentation):a.action===al.Indent?o.shiftIndent(a.indentation):a.indentation}return null},e.prototype.getIndentForEnter=function(e,t,n,i){if(e<4)return null;t.forceTokenization(n.startLineNumber);var o,r,s=t.getLineTokens(n.startLineNumber),a=dl(s,n.startColumn-1),u=a.getLineContent(),l=!1;(a.firstCharOffset>0&&s.getLanguageId(0)!==a.languageId?(l=!0,o=u.substr(0,n.startColumn-1-a.firstCharOffset)):o=s.getLineContent().substring(0,n.startColumn-1),n.isEmpty())?r=u.substr(n.startColumn-1-a.firstCharOffset):r=this.getScopedLineTokens(t,n.endLineNumber,n.endColumn).getLineContent().substr(n.endColumn-1-a.firstCharOffset);var c=this.getIndentRulesSupport(a.languageId);if(!c)return null;var d=o,h=Cr(o),p={getLineTokens:function(e){return t.getLineTokens(e)},getLanguageIdentifier:function(){return t.getLanguageIdentifier()},getLanguageIdAtPosition:function(e,n){return t.getLanguageIdAtPosition(e,n)},getLineContent:function(e){return e===n.startLineNumber?d:t.getLineContent(e)}},f=Cr(s.getLineContent()),g=this.getInheritIndentForLine(e,p,n.startLineNumber+1);if(!g){var m=l?f:h;return{beforeEnter:m,afterEnter:m}}var v=l?f:g.indentation;return g.action===al.Indent&&(v=i.shiftIndent(v)),c.shouldDecrease(r)&&(v=i.unshiftIndent(v)),{beforeEnter:l?f:h,afterEnter:v}},e.prototype.getIndentActionForType=function(e,t,n,i,o){if(e<4)return null;var r=this.getScopedLineTokens(t,n.startLineNumber,n.startColumn),s=this.getIndentRulesSupport(r.languageId);if(!s)return null;var a,u=r.getLineContent(),l=u.substr(0,n.startColumn-1-r.firstCharOffset);n.isEmpty()?a=u.substr(n.startColumn-1-r.firstCharOffset):a=this.getScopedLineTokens(t,n.endLineNumber,n.endColumn).getLineContent().substr(n.endColumn-1-r.firstCharOffset);if(!s.shouldDecrease(l+a)&&s.shouldDecrease(l+i+a)){var c=this.getInheritIndentForLine(e,t,n.startLineNumber,!1);if(!c)return null;var d=c.indentation;return c.action!==al.Indent&&(d=o.unshiftIndent(d)),d}return null},e.prototype.getIndentMetadata=function(e,t){var n=this.getIndentRulesSupport(e.getLanguageIdentifier().id);return n?t<1||t>e.getLineCount()?null:n.getIndentMetadata(e.getLineContent(t)):null},e.prototype.getEnterAction=function(e,t,n){var i=this.getScopedLineTokens(t,n.startLineNumber,n.startColumn),o=this._getRichEditSupport(i.languageId);if(!o)return null;var r,s=i.getLineContent(),a=s.substr(0,n.startColumn-1-i.firstCharOffset);n.isEmpty()?r=s.substr(n.startColumn-1-i.firstCharOffset):r=this.getScopedLineTokens(t,n.endLineNumber,n.endColumn).getLineContent().substr(n.endColumn-1-i.firstCharOffset);var u="";if(n.startLineNumber>1&&0===i.firstCharOffset){var l=this.getScopedLineTokens(t,n.startLineNumber-1);l.languageId===i.languageId&&(u=l.getLineContent())}var c=o.onEnter(e,u,a,r);if(!c)return null;var d=c.indentAction,h=c.appendText,p=c.removeText||0;h||(h=d===al.Indent||d===al.IndentOutdent?"\t":"");var f=this.getIndentationAtPosition(t,n.startLineNumber,n.startColumn);return p&&(f=f.substring(0,f.length-p)),{indentAction:d,appendText:h,removeText:p,indentation:f}},e.prototype.getIndentationAtPosition=function(e,t,n){var i=Cr(e.getLineContent(t));return i.length>n-1&&(i=i.substring(0,n-1)),i},e.prototype.getScopedLineTokens=function(e,t,n){return e.forceTokenization(t),dl(e.getLineTokens(t),void 0===n?e.getLineMaxColumn(t)-1:n-1)},e.prototype.getBracketsSupport=function(e){var t=this._getRichEditSupport(e);return t&&t.brackets||null},e}()),Ml=function(){function e(e,t,n,i){this.originalStart=e,this.originalLength=t,this.modifiedStart=n,this.modifiedLength=i}return e.prototype.getOriginalEnd=function(){return this.originalStart+this.originalLength},e.prototype.getModifiedEnd=function(){return this.modifiedStart+this.modifiedLength},e}();function Tl(e,t){switch(void 0===t&&(t=0),typeof e){case"object":return null===e?Pl(349,t):Array.isArray(e)?(n=e,i=Pl(104579,i=t),n.reduce((function(e,t){return Tl(t,e)}),i)):function(e,t){return t=Pl(181387,t),Object.keys(e).sort().reduce((function(t,n){return t=Rl(n,t),Tl(e[n],t)}),t)}(e,t);case"string":return Rl(e,t);case"boolean":return function(e,t){return Pl(e?433:863,t)}(e,t);case"number":return Pl(e,t);case"undefined":return Pl(0,937);default:return Pl(0,617)}var n,i}function Pl(e,t){return(t<<5)-t+e|0}function Rl(e,t){t=Pl(149417,t);for(var n=0,i=e.length;n<i;n++)t=Pl(e.charCodeAt(n),t);return t}var Al=function(){function e(e){this.source=e}return e.prototype.getElements=function(){for(var e=this.source,t=new Int32Array(e.length),n=0,i=e.length;n<i;n++)t[n]=e.charCodeAt(n);return t},e}();function Fl(e,t,n){return new Hl(new Al(e),new Al(t)).ComputeDiff(n).changes}var Wl=function(){function e(){}return e.Assert=function(e,t){if(!e)throw new Error(t)},e}(),Vl=function(){function e(){}return e.Copy=function(e,t,n,i,o){for(var r=0;r<o;r++)n[i+r]=e[t+r]},e.Copy2=function(e,t,n,i,o){for(var r=0;r<o;r++)n[i+r]=e[t+r]},e}(),Bl=function(){function e(){this.m_changes=[],this.m_originalStart=1073741824,this.m_modifiedStart=1073741824,this.m_originalCount=0,this.m_modifiedCount=0}return e.prototype.MarkNextChange=function(){(this.m_originalCount>0||this.m_modifiedCount>0)&&this.m_changes.push(new Ml(this.m_originalStart,this.m_originalCount,this.m_modifiedStart,this.m_modifiedCount)),this.m_originalCount=0,this.m_modifiedCount=0,this.m_originalStart=1073741824,this.m_modifiedStart=1073741824},e.prototype.AddOriginalElement=function(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_originalCount++},e.prototype.AddModifiedElement=function(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_modifiedCount++},e.prototype.getChanges=function(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes},e.prototype.getReverseChanges=function(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes.reverse(),this.m_changes},e}(),Hl=function(){function e(t,n,i){void 0===i&&(i=null),this.ContinueProcessingPredicate=i;var o=e._getElements(t),r=o[0],s=o[1],a=o[2],u=e._getElements(n),l=u[0],c=u[1],d=u[2];this._hasStrings=a&&d,this._originalStringElements=r,this._originalElementsOrHash=s,this._modifiedStringElements=l,this._modifiedElementsOrHash=c,this.m_forwardHistory=[],this.m_reverseHistory=[]}return e._isStringArray=function(e){return e.length>0&&"string"==typeof e[0]},e._getElements=function(t){var n=t.getElements();if(e._isStringArray(n)){for(var i=new Int32Array(n.length),o=0,r=n.length;o<r;o++)i[o]=Rl(n[o],0);return[n,i,!0]}return n instanceof Int32Array?[[],n,!1]:[[],new Int32Array(n),!1]},e.prototype.ElementsAreEqual=function(e,t){return this._originalElementsOrHash[e]===this._modifiedElementsOrHash[t]&&(!this._hasStrings||this._originalStringElements[e]===this._modifiedStringElements[t])},e.prototype.OriginalElementsAreEqual=function(e,t){return this._originalElementsOrHash[e]===this._originalElementsOrHash[t]&&(!this._hasStrings||this._originalStringElements[e]===this._originalStringElements[t])},e.prototype.ModifiedElementsAreEqual=function(e,t){return this._modifiedElementsOrHash[e]===this._modifiedElementsOrHash[t]&&(!this._hasStrings||this._modifiedStringElements[e]===this._modifiedStringElements[t])},e.prototype.ComputeDiff=function(e){return this._ComputeDiff(0,this._originalElementsOrHash.length-1,0,this._modifiedElementsOrHash.length-1,e)},e.prototype._ComputeDiff=function(e,t,n,i,o){var r=[!1],s=this.ComputeDiffRecursive(e,t,n,i,r);return o&&(s=this.PrettifyChanges(s)),{quitEarly:r[0],changes:s}},e.prototype.ComputeDiffRecursive=function(e,t,n,i,o){for(o[0]=!1;e<=t&&n<=i&&this.ElementsAreEqual(e,n);)e++,n++;for(;t>=e&&i>=n&&this.ElementsAreEqual(t,i);)t--,i--;if(e>t||n>i){var r=void 0;return n<=i?(Wl.Assert(e===t+1,"originalStart should only be one more than originalEnd"),r=[new Ml(e,0,n,i-n+1)]):e<=t?(Wl.Assert(n===i+1,"modifiedStart should only be one more than modifiedEnd"),r=[new Ml(e,t-e+1,n,0)]):(Wl.Assert(e===t+1,"originalStart should only be one more than originalEnd"),Wl.Assert(n===i+1,"modifiedStart should only be one more than modifiedEnd"),r=[]),r}var s=[0],a=[0],u=this.ComputeRecursionPoint(e,t,n,i,s,a,o),l=s[0],c=a[0];if(null!==u)return u;if(!o[0]){var d=this.ComputeDiffRecursive(e,l,n,c,o),h=[];return h=o[0]?[new Ml(l+1,t-(l+1)+1,c+1,i-(c+1)+1)]:this.ComputeDiffRecursive(l+1,t,c+1,i,o),this.ConcatenateChanges(d,h)}return[new Ml(e,t-e+1,n,i-n+1)]},e.prototype.WALKTRACE=function(e,t,n,i,o,r,s,a,u,l,c,d,h,p,f,g,m,v){var _,y=null,b=new Bl,w=t,C=n,S=h[0]-g[0]-i,L=-1073741824,x=this.m_forwardHistory.length-1;do{(E=S+e)===w||E<C&&u[E-1]<u[E+1]?(p=(c=u[E+1])-S-i,c<L&&b.MarkNextChange(),L=c,b.AddModifiedElement(c+1,p),S=E+1-e):(p=(c=u[E-1]+1)-S-i,c<L&&b.MarkNextChange(),L=c-1,b.AddOriginalElement(c,p+1),S=E-1-e),x>=0&&(e=(u=this.m_forwardHistory[x])[0],w=1,C=u.length-1)}while(--x>=-1);if(_=b.getReverseChanges(),v[0]){var D=h[0]+1,N=g[0]+1;if(null!==_&&_.length>0){var k=_[_.length-1];D=Math.max(D,k.getOriginalEnd()),N=Math.max(N,k.getModifiedEnd())}y=[new Ml(D,d-D+1,N,f-N+1)]}else{b=new Bl,w=r,C=s,S=h[0]-g[0]-a,L=1073741824,x=m?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{var E;(E=S+o)===w||E<C&&l[E-1]>=l[E+1]?(p=(c=l[E+1]-1)-S-a,c>L&&b.MarkNextChange(),L=c+1,b.AddOriginalElement(c+1,p+1),S=E+1-o):(p=(c=l[E-1])-S-a,c>L&&b.MarkNextChange(),L=c,b.AddModifiedElement(c+1,p+1),S=E-1-o),x>=0&&(o=(l=this.m_reverseHistory[x])[0],w=1,C=l.length-1)}while(--x>=-1);y=b.getChanges()}return this.ConcatenateChanges(_,y)},e.prototype.ComputeRecursionPoint=function(e,t,n,i,o,r,s){var a=0,u=0,l=0,c=0,d=0,h=0;e--,n--,o[0]=0,r[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];var p=t-e+(i-n),f=p+1,g=new Int32Array(f),m=new Int32Array(f),v=i-n,_=t-e,y=e-n,b=t-i,w=(_-v)%2==0;g[v]=e,m[_]=t,s[0]=!1;for(var C=1;C<=p/2+1;C++){var S=0,L=0;l=this.ClipDiagonalBound(v-C,C,v,f),c=this.ClipDiagonalBound(v+C,C,v,f);for(var x=l;x<=c;x+=2){u=(a=x===l||x<c&&g[x-1]<g[x+1]?g[x+1]:g[x-1]+1)-(x-v)-y;for(var D=a;a<t&&u<i&&this.ElementsAreEqual(a+1,u+1);)a++,u++;if(g[x]=a,a+u>S+L&&(S=a,L=u),!w&&Math.abs(x-_)<=C-1&&a>=m[x])return o[0]=a,r[0]=u,D<=m[x]&&C<=1448?this.WALKTRACE(v,l,c,y,_,d,h,b,g,m,a,t,o,u,i,r,w,s):null}var N=(S-e+(L-n)-C)/2;if(null!==this.ContinueProcessingPredicate&&!this.ContinueProcessingPredicate(S,N))return s[0]=!0,o[0]=S,r[0]=L,N>0&&C<=1448?this.WALKTRACE(v,l,c,y,_,d,h,b,g,m,a,t,o,u,i,r,w,s):(e++,n++,[new Ml(e,t-e+1,n,i-n+1)]);d=this.ClipDiagonalBound(_-C,C,_,f),h=this.ClipDiagonalBound(_+C,C,_,f);for(x=d;x<=h;x+=2){u=(a=x===d||x<h&&m[x-1]>=m[x+1]?m[x+1]-1:m[x-1])-(x-_)-b;for(D=a;a>e&&u>n&&this.ElementsAreEqual(a,u);)a--,u--;if(m[x]=a,w&&Math.abs(x-v)<=C&&a<=g[x])return o[0]=a,r[0]=u,D>=g[x]&&C<=1448?this.WALKTRACE(v,l,c,y,_,d,h,b,g,m,a,t,o,u,i,r,w,s):null}if(C<=1447){var k=new Int32Array(c-l+2);k[0]=v-l+1,Vl.Copy2(g,l,k,1,c-l+1),this.m_forwardHistory.push(k),(k=new Int32Array(h-d+2))[0]=_-d+1,Vl.Copy2(m,d,k,1,h-d+1),this.m_reverseHistory.push(k)}}return this.WALKTRACE(v,l,c,y,_,d,h,b,g,m,a,t,o,u,i,r,w,s)},e.prototype.PrettifyChanges=function(e){for(var t=0;t<e.length;t++){for(var n=e[t],i=t<e.length-1?e[t+1].originalStart:this._originalElementsOrHash.length,o=t<e.length-1?e[t+1].modifiedStart:this._modifiedElementsOrHash.length,r=n.originalLength>0,s=n.modifiedLength>0;n.originalStart+n.originalLength<i&&n.modifiedStart+n.modifiedLength<o&&(!r||this.OriginalElementsAreEqual(n.originalStart,n.originalStart+n.originalLength))&&(!s||this.ModifiedElementsAreEqual(n.modifiedStart,n.modifiedStart+n.modifiedLength));)n.originalStart++,n.modifiedStart++;var a=[null];t<e.length-1&&this.ChangesOverlap(e[t],e[t+1],a)&&(e[t]=a[0],e.splice(t+1,1),t--)}for(t=e.length-1;t>=0;t--){n=e[t],i=0,o=0;if(t>0){var u=e[t-1];u.originalLength>0&&(i=u.originalStart+u.originalLength),u.modifiedLength>0&&(o=u.modifiedStart+u.modifiedLength)}r=n.originalLength>0,s=n.modifiedLength>0;for(var l=0,c=this._boundaryScore(n.originalStart,n.originalLength,n.modifiedStart,n.modifiedLength),d=1;;d++){var h=n.originalStart-d,p=n.modifiedStart-d;if(h<i||p<o)break;if(r&&!this.OriginalElementsAreEqual(h,h+n.originalLength))break;if(s&&!this.ModifiedElementsAreEqual(p,p+n.modifiedLength))break;var f=this._boundaryScore(h,n.originalLength,p,n.modifiedLength);f>c&&(c=f,l=d)}n.originalStart-=l,n.modifiedStart-=l}return e},e.prototype._OriginalIsBoundary=function(e){return e<=0||e>=this._originalElementsOrHash.length-1||this._hasStrings&&/^\s*$/.test(this._originalStringElements[e])},e.prototype._OriginalRegionIsBoundary=function(e,t){if(this._OriginalIsBoundary(e)||this._OriginalIsBoundary(e-1))return!0;if(t>0){var n=e+t;if(this._OriginalIsBoundary(n-1)||this._OriginalIsBoundary(n))return!0}return!1},e.prototype._ModifiedIsBoundary=function(e){return e<=0||e>=this._modifiedElementsOrHash.length-1||this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[e])},e.prototype._ModifiedRegionIsBoundary=function(e,t){if(this._ModifiedIsBoundary(e)||this._ModifiedIsBoundary(e-1))return!0;if(t>0){var n=e+t;if(this._ModifiedIsBoundary(n-1)||this._ModifiedIsBoundary(n))return!0}return!1},e.prototype._boundaryScore=function(e,t,n,i){return(this._OriginalRegionIsBoundary(e,t)?1:0)+(this._ModifiedRegionIsBoundary(n,i)?1:0)},e.prototype.ConcatenateChanges=function(e,t){var n=[];if(0===e.length||0===t.length)return t.length>0?t:e;if(this.ChangesOverlap(e[e.length-1],t[0],n)){var i=new Array(e.length+t.length-1);return Vl.Copy(e,0,i,0,e.length-1),i[e.length-1]=n[0],Vl.Copy(t,1,i,e.length,t.length-1),i}i=new Array(e.length+t.length);return Vl.Copy(e,0,i,0,e.length),Vl.Copy(t,0,i,e.length,t.length),i},e.prototype.ChangesOverlap=function(e,t,n){if(Wl.Assert(e.originalStart<=t.originalStart,"Left change is not less than or equal to right change"),Wl.Assert(e.modifiedStart<=t.modifiedStart,"Left change is not less than or equal to right change"),e.originalStart+e.originalLength>=t.originalStart||e.modifiedStart+e.modifiedLength>=t.modifiedStart){var i=e.originalStart,o=e.originalLength,r=e.modifiedStart,s=e.modifiedLength;return e.originalStart+e.originalLength>=t.originalStart&&(o=t.originalStart+t.originalLength-e.originalStart),e.modifiedStart+e.modifiedLength>=t.modifiedStart&&(s=t.modifiedStart+t.modifiedLength-e.modifiedStart),n[0]=new Ml(i,o,r,s),!0}return n[0]=null,!1},e.prototype.ClipDiagonalBound=function(e,t,n,i){if(e>=0&&e<i)return e;var o=t%2==0;return e<0?o===(n%2==0)?0:1:o===((i-n-1)%2==0)?i-1:i-2},e}();function zl(e,t,n,i){return new Hl(e,t,n).ComputeDiff(i)}var jl=function(){function e(e){for(var t=[],n=[],i=0,o=e.length;i<o;i++)t[i]=Zl(e[i],1),n[i]=Yl(e[i],1);this.lines=e,this._startColumns=t,this._endColumns=n}return e.prototype.getElements=function(){for(var e=[],t=0,n=this.lines.length;t<n;t++)e[t]=this.lines[t].substring(this._startColumns[t]-1,this._endColumns[t]-1);return e},e.prototype.getStartLineNumber=function(e){return e+1},e.prototype.getEndLineNumber=function(e){return e+1},e.prototype.createCharSequence=function(e,t,n){for(var i=[],o=[],r=[],s=0,a=t;a<=n;a++)for(var u=this.lines[a],l=e?this._startColumns[a]:1,c=e?this._endColumns[a]:u.length+1,d=l;d<c;d++)i[s]=u.charCodeAt(d-1),o[s]=a+1,r[s]=d,s++;return new Ul(i,o,r)},e}(),Ul=function(){function e(e,t,n){this._charCodes=e,this._lineNumbers=t,this._columns=n}return e.prototype.getElements=function(){return this._charCodes},e.prototype.getStartLineNumber=function(e){return this._lineNumbers[e]},e.prototype.getStartColumn=function(e){return this._columns[e]},e.prototype.getEndLineNumber=function(e){return this._lineNumbers[e]},e.prototype.getEndColumn=function(e){return this._columns[e]+1},e}(),Kl=function(){function e(e,t,n,i,o,r,s,a){this.originalStartLineNumber=e,this.originalStartColumn=t,this.originalEndLineNumber=n,this.originalEndColumn=i,this.modifiedStartLineNumber=o,this.modifiedStartColumn=r,this.modifiedEndLineNumber=s,this.modifiedEndColumn=a}return e.createFromDiffChange=function(t,n,i){var o,r,s,a,u,l,c,d;return 0===t.originalLength?(o=0,r=0,s=0,a=0):(o=n.getStartLineNumber(t.originalStart),r=n.getStartColumn(t.originalStart),s=n.getEndLineNumber(t.originalStart+t.originalLength-1),a=n.getEndColumn(t.originalStart+t.originalLength-1)),0===t.modifiedLength?(u=0,l=0,c=0,d=0):(u=i.getStartLineNumber(t.modifiedStart),l=i.getStartColumn(t.modifiedStart),c=i.getEndLineNumber(t.modifiedStart+t.modifiedLength-1),d=i.getEndColumn(t.modifiedStart+t.modifiedLength-1)),new e(o,r,s,a,u,l,c,d)},e}();var ql=function(){function e(e,t,n,i,o){this.originalStartLineNumber=e,this.originalEndLineNumber=t,this.modifiedStartLineNumber=n,this.modifiedEndLineNumber=i,this.charChanges=o}return e.createFromDiffResult=function(t,n,i,o,r,s,a){var u,l,c,d,h=void 0;if(0===n.originalLength?(u=i.getStartLineNumber(n.originalStart)-1,l=0):(u=i.getStartLineNumber(n.originalStart),l=i.getEndLineNumber(n.originalStart+n.originalLength-1)),0===n.modifiedLength?(c=o.getStartLineNumber(n.modifiedStart)-1,d=0):(c=o.getStartLineNumber(n.modifiedStart),d=o.getEndLineNumber(n.modifiedStart+n.modifiedLength-1)),s&&n.originalLength>0&&n.originalLength<20&&n.modifiedLength>0&&n.modifiedLength<20&&r()){var p=i.createCharSequence(t,n.originalStart,n.originalStart+n.originalLength-1),f=o.createCharSequence(t,n.modifiedStart,n.modifiedStart+n.modifiedLength-1),g=zl(p,f,r,!0).changes;a&&(g=function(e){if(e.length<=1)return e;for(var t=[e[0]],n=t[0],i=1,o=e.length;i<o;i++){var r=e[i],s=r.originalStart-(n.originalStart+n.originalLength),a=r.modifiedStart-(n.modifiedStart+n.modifiedLength);Math.min(s,a)<3?(n.originalLength=r.originalStart+r.originalLength-n.originalStart,n.modifiedLength=r.modifiedStart+r.modifiedLength-n.modifiedStart):(t.push(r),n=r)}return t}(g)),h=[];for(var m=0,v=g.length;m<v;m++)h.push(Kl.createFromDiffChange(g[m],p,f))}return new e(u,l,c,d,h)},e}(),Gl=function(){function e(e,t,n){this.shouldComputeCharChanges=n.shouldComputeCharChanges,this.shouldPostProcessCharChanges=n.shouldPostProcessCharChanges,this.shouldIgnoreTrimWhitespace=n.shouldIgnoreTrimWhitespace,this.shouldMakePrettyDiff=n.shouldMakePrettyDiff,this.originalLines=e,this.modifiedLines=t,this.original=new jl(e),this.modified=new jl(t),this.continueLineDiff=Xl(n.maxComputationTime),this.continueCharDiff=Xl(0===n.maxComputationTime?0:Math.min(n.maxComputationTime,5e3))}return e.prototype.computeDiff=function(){if(1===this.original.lines.length&&0===this.original.lines[0].length)return{quitEarly:!1,changes:[{originalStartLineNumber:1,originalEndLineNumber:1,modifiedStartLineNumber:1,modifiedEndLineNumber:this.modified.lines.length,charChanges:[{modifiedEndColumn:0,modifiedEndLineNumber:0,modifiedStartColumn:0,modifiedStartLineNumber:0,originalEndColumn:0,originalEndLineNumber:0,originalStartColumn:0,originalStartLineNumber:0}]}]};if(1===this.modified.lines.length&&0===this.modified.lines[0].length)return{quitEarly:!1,changes:[{originalStartLineNumber:1,originalEndLineNumber:this.original.lines.length,modifiedStartLineNumber:1,modifiedEndLineNumber:1,charChanges:[{modifiedEndColumn:0,modifiedEndLineNumber:0,modifiedStartColumn:0,modifiedStartLineNumber:0,originalEndColumn:0,originalEndLineNumber:0,originalStartColumn:0,originalStartLineNumber:0}]}]};var e=zl(this.original,this.modified,this.continueLineDiff,this.shouldMakePrettyDiff),t=e.changes,n=e.quitEarly;if(this.shouldIgnoreTrimWhitespace){for(var i=[],o=0,r=t.length;o<r;o++)i.push(ql.createFromDiffResult(this.shouldIgnoreTrimWhitespace,t[o],this.original,this.modified,this.continueCharDiff,this.shouldComputeCharChanges,this.shouldPostProcessCharChanges));return{quitEarly:n,changes:i}}for(var s=[],a=0,u=0,l=(o=-1,t.length);o<l;o++){for(var c=o+1<l?t[o+1]:null,d=c?c.originalStart:this.originalLines.length,h=c?c.modifiedStart:this.modifiedLines.length;a<d&&u<h;){var p=this.originalLines[a],f=this.modifiedLines[u];if(p!==f){for(var g=Zl(p,1),m=Zl(f,1);g>1&&m>1;){if(p.charCodeAt(g-2)!==f.charCodeAt(m-2))break;g--,m--}(g>1||m>1)&&this._pushTrimWhitespaceCharChange(s,a+1,1,g,u+1,1,m);for(var v=Yl(p,1),_=Yl(f,1),y=p.length+1,b=f.length+1;v<y&&_<b;){if(p.charCodeAt(v-1)!==p.charCodeAt(_-1))break;v++,_++}(v<y||_<b)&&this._pushTrimWhitespaceCharChange(s,a+1,v,y,u+1,_,b)}a++,u++}c&&(s.push(ql.createFromDiffResult(this.shouldIgnoreTrimWhitespace,c,this.original,this.modified,this.continueCharDiff,this.shouldComputeCharChanges,this.shouldPostProcessCharChanges)),a+=c.originalLength,u+=c.modifiedLength)}return{quitEarly:n,changes:s}},e.prototype._pushTrimWhitespaceCharChange=function(e,t,n,i,o,r,s){if(!this._mergeTrimWhitespaceCharChange(e,t,n,i,o,r,s)){var a=void 0;this.shouldComputeCharChanges&&(a=[new Kl(t,n,t,i,o,r,o,s)]),e.push(new ql(t,t,o,o,a))}},e.prototype._mergeTrimWhitespaceCharChange=function(e,t,n,i,o,r,s){var a=e.length;if(0===a)return!1;var u=e[a-1];return 0!==u.originalEndLineNumber&&0!==u.modifiedEndLineNumber&&(u.originalEndLineNumber+1===t&&u.modifiedEndLineNumber+1===o&&(u.originalEndLineNumber=t,u.modifiedEndLineNumber=o,this.shouldComputeCharChanges&&u.charChanges&&u.charChanges.push(new Kl(t,n,t,i,o,r,o,s)),!0))},e}();function Zl(e,t){var n=wr(e);return-1===n?t:n+1}function Yl(e,t){var n=Sr(e);return-1===n?t:n+2}function Xl(e){if(0===e)return function(){return!0};var t=Date.now();return function(){return Date.now()-t<e}}function $l(e){return e<0?0:e>255?255:0|e}function Ql(e){return e<0?0:e>4294967295?4294967295:0|e}var Jl=function(e,t){this.index=e,this.remainder=t},ec=function(){function e(e){this.values=e,this.prefixSum=new Uint32Array(e.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}return e.prototype.insertValues=function(e,t){e=Ql(e);var n=this.values,i=this.prefixSum,o=t.length;return 0!==o&&(this.values=new Uint32Array(n.length+o),this.values.set(n.subarray(0,e),0),this.values.set(n.subarray(e),e+o),this.values.set(t,e),e-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=e-1),this.prefixSum=new Uint32Array(this.values.length),this.prefixSumValidIndex[0]>=0&&this.prefixSum.set(i.subarray(0,this.prefixSumValidIndex[0]+1)),!0)},e.prototype.changeValue=function(e,t){return e=Ql(e),t=Ql(t),this.values[e]!==t&&(this.values[e]=t,e-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=e-1),!0)},e.prototype.removeValues=function(e,t){e=Ql(e),t=Ql(t);var n=this.values,i=this.prefixSum;if(e>=n.length)return!1;var o=n.length-e;return t>=o&&(t=o),0!==t&&(this.values=new Uint32Array(n.length-t),this.values.set(n.subarray(0,e),0),this.values.set(n.subarray(e+t),e),this.prefixSum=new Uint32Array(this.values.length),e-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=e-1),this.prefixSumValidIndex[0]>=0&&this.prefixSum.set(i.subarray(0,this.prefixSumValidIndex[0]+1)),!0)},e.prototype.getTotalValue=function(){return 0===this.values.length?0:this._getAccumulatedValue(this.values.length-1)},e.prototype.getAccumulatedValue=function(e){return e<0?0:(e=Ql(e),this._getAccumulatedValue(e))},e.prototype._getAccumulatedValue=function(e){if(e<=this.prefixSumValidIndex[0])return this.prefixSum[e];var t=this.prefixSumValidIndex[0]+1;0===t&&(this.prefixSum[0]=this.values[0],t++),e>=this.values.length&&(e=this.values.length-1);for(var n=t;n<=e;n++)this.prefixSum[n]=this.prefixSum[n-1]+this.values[n];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],e),this.prefixSum[e]},e.prototype.getIndexOf=function(e){e=Math.floor(e),this.getTotalValue();for(var t=0,n=this.values.length-1,i=0,o=0,r=0;t<=n;)if(i=t+(n-t)/2|0,e<(r=(o=this.prefixSum[i])-this.values[i]))n=i-1;else{if(!(e>=o))break;t=i+1}return new Jl(i,e-r)},e}(),tc=function(){function e(e,t,n,i){this._uri=e,this._lines=t,this._eol=n,this._versionId=i,this._lineStarts=null}return e.prototype.dispose=function(){this._lines.length=0},e.prototype.getText=function(){return this._lines.join(this._eol)},e.prototype.onEvents=function(e){e.eol&&e.eol!==this._eol&&(this._eol=e.eol,this._lineStarts=null);for(var t=0,n=e.changes;t<n.length;t++){var i=n[t];this._acceptDeleteRange(i.range),this._acceptInsertText(new bn(i.range.startLineNumber,i.range.startColumn),i.text)}this._versionId=e.versionId},e.prototype._ensureLineStarts=function(){if(!this._lineStarts){for(var e=this._eol.length,t=this._lines.length,n=new Uint32Array(t),i=0;i<t;i++)n[i]=this._lines[i].length+e;this._lineStarts=new ec(n)}},e.prototype._setLineText=function(e,t){this._lines[e]=t,this._lineStarts&&this._lineStarts.changeValue(e,this._lines[e].length+this._eol.length)},e.prototype._acceptDeleteRange=function(e){if(e.startLineNumber!==e.endLineNumber)this._setLineText(e.startLineNumber-1,this._lines[e.startLineNumber-1].substring(0,e.startColumn-1)+this._lines[e.endLineNumber-1].substring(e.endColumn-1)),this._lines.splice(e.startLineNumber,e.endLineNumber-e.startLineNumber),this._lineStarts&&this._lineStarts.removeValues(e.startLineNumber,e.endLineNumber-e.startLineNumber);else{if(e.startColumn===e.endColumn)return;this._setLineText(e.startLineNumber-1,this._lines[e.startLineNumber-1].substring(0,e.startColumn-1)+this._lines[e.startLineNumber-1].substring(e.endColumn-1))}},e.prototype._acceptInsertText=function(e,t){if(0!==t.length){var n=t.split(/\r\n|\r|\n/);if(1!==n.length){n[n.length-1]+=this._lines[e.lineNumber-1].substring(e.column-1),this._setLineText(e.lineNumber-1,this._lines[e.lineNumber-1].substring(0,e.column-1)+n[0]);for(var i=new Uint32Array(n.length-1),o=1;o<n.length;o++)this._lines.splice(e.lineNumber+o-1,0,n[o]),i[o-1]=n[o].length+this._eol.length;this._lineStarts&&this._lineStarts.insertValues(e.lineNumber,i)}else this._setLineText(e.lineNumber-1,this._lines[e.lineNumber-1].substring(0,e.column-1)+n[0]+this._lines[e.lineNumber-1].substring(e.column-1))}},e}(),nc=function(){function e(t){var n=$l(t);this._defaultValue=n,this._asciiMap=e._createAsciiMap(n),this._map=new Map}return e._createAsciiMap=function(e){for(var t=new Uint8Array(256),n=0;n<256;n++)t[n]=e;return t},e.prototype.set=function(e,t){var n=$l(t);e>=0&&e<256?this._asciiMap[e]=n:this._map.set(e,n)},e.prototype.get=function(e){return e>=0&&e<256?this._asciiMap[e]:this._map.get(e)||this._defaultValue},e}(),ic=function(){function e(){this._actual=new nc(0)}return e.prototype.add=function(e){this._actual.set(e,1)},e.prototype.has=function(e){return 1===this._actual.get(e)},e}(),oc=function(){function e(e,t,n){for(var i=new Uint8Array(e*t),o=0,r=e*t;o<r;o++)i[o]=n;this._data=i,this.rows=e,this.cols=t}return e.prototype.get=function(e,t){return this._data[e*this.cols+t]},e.prototype.set=function(e,t,n){this._data[e*this.cols+t]=n},e}(),rc=function(){function e(e){for(var t=0,n=0,i=0,o=e.length;i<o;i++){var r=e[i],s=r[0];(l=r[1])>t&&(t=l),s>n&&(n=s),(c=r[2])>n&&(n=c)}t++,n++;var a=new oc(n,t,0);for(i=0,o=e.length;i<o;i++){var u=e[i],l=(s=u[0],u[1]),c=u[2];a.set(s,l,c)}this._states=a,this._maxCharCode=t}return e.prototype.nextState=function(e,t){return t<0||t>=this._maxCharCode?0:this._states.get(e,t)},e}(),sc=null;var ac=null;var uc=function(){function e(){}return e._createLink=function(e,t,n,i,o){var r=o-1;do{var s=t.charCodeAt(r);if(2!==e.get(s))break;r--}while(r>i);if(i>0){var a=t.charCodeAt(i-1),u=t.charCodeAt(r);(40===a&&41===u||91===a&&93===u||123===a&&125===u)&&r--}return{range:{startLineNumber:n,startColumn:i+1,endLineNumber:n,endColumn:r+2},url:t.substring(i,r+1)}},e.computeLinks=function(t,n){void 0===n&&(null===sc&&(sc=new rc([[1,104,2],[1,72,2],[1,102,6],[1,70,6],[2,116,3],[2,84,3],[3,116,4],[3,84,4],[4,112,5],[4,80,5],[5,115,9],[5,83,9],[5,58,10],[6,105,7],[6,73,7],[7,108,8],[7,76,8],[8,101,9],[8,69,9],[9,58,10],[10,47,11],[11,47,12]])),n=sc);for(var i=function(){if(null===ac){ac=new nc(0);for(var e=0;e<" \t<>'\"、。。、,.:;?!@#$%&*‘“〈《「『【〔([{「」}])〕】』」》〉”’`~…".length;e++)ac.set(" \t<>'\"、。。、,.:;?!@#$%&*‘“〈《「『【〔([{「」}])〕】』」》〉”’`~…".charCodeAt(e),1);for(e=0;e<".,;".length;e++)ac.set(".,;".charCodeAt(e),2)}return ac}(),o=[],r=1,s=t.getLineCount();r<=s;r++){for(var a=t.getLineContent(r),u=a.length,l=0,c=0,d=0,h=1,p=!1,f=!1,g=!1;l<u;){var m=!1,v=a.charCodeAt(l);if(13===h){var _=void 0;switch(v){case 40:p=!0,_=0;break;case 41:_=p?0:1;break;case 91:f=!0,_=0;break;case 93:_=f?0:1;break;case 123:g=!0,_=0;break;case 125:_=g?0:1;break;case 39:_=34===d||96===d?0:1;break;case 34:_=39===d||96===d?0:1;break;case 96:_=39===d||34===d?0:1;break;case 42:_=42===d?1:0;break;case 124:_=124===d?1:0;break;default:_=i.get(v)}1===_&&(o.push(e._createLink(i,a,r,c,l)),m=!0)}else if(12===h){_=void 0;91===v?(f=!0,_=0):_=i.get(v),1===_?m=!0:h=13}else 0===(h=n.nextState(h,v))&&(m=!0);m&&(h=1,p=!1,f=!1,g=!1,c=l+1,d=v),l++}13===h&&o.push(e._createLink(i,a,r,c,u))}return o},e}();function lc(e){return e&&"function"==typeof e.getLineCount&&"function"==typeof e.getLineContent?uc.computeLinks(e):[]}var cc=function(){function e(){this._defaultValueSet=[["true","false"],["True","False"],["Private","Public","Friend","ReadOnly","Partial","Protected","WriteOnly"],["public","protected","private"]]}return e.prototype.navigateValueSet=function(e,t,n,i,o){var r;if(e&&t&&(r=this.doNavigateValueSet(t,o)))return{range:e,value:r};if(n&&i&&(r=this.doNavigateValueSet(i,o)))return{range:n,value:r};return null},e.prototype.doNavigateValueSet=function(e,t){var n=this.numberReplace(e,t);return null!==n?n:this.textReplace(e,t)},e.prototype.numberReplace=function(e,t){var n=Math.pow(10,e.length-(e.lastIndexOf(".")+1)),i=Number(e),o=parseFloat(e);return isNaN(i)||isNaN(o)||i!==o?null:0!==i||t?(i=Math.floor(i*n),i+=t?n:-n,String(i/n)):null},e.prototype.textReplace=function(e,t){return this.valueSetsReplace(this._defaultValueSet,e,t)},e.prototype.valueSetsReplace=function(e,t,n){for(var i=null,o=0,r=e.length;null===i&&o<r;o++)i=this.valueSetReplace(e[o],t,n);return i},e.prototype.valueSetReplace=function(e,t,n){var i=e.indexOf(t);return i>=0?((i+=n?1:-1)<0?i=e.length-1:i%=e.length,e[i]):null},e.INSTANCE=new e,e}(),dc=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),hc=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},pc=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},fc=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return dc(t,e),Object.defineProperty(t.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"version",{get:function(){return this._versionId},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"eol",{get:function(){return this._eol},enumerable:!0,configurable:!0}),t.prototype.getValue=function(){return this.getText()},t.prototype.getLinesContent=function(){return this._lines.slice(0)},t.prototype.getLineCount=function(){return this._lines.length},t.prototype.getLineContent=function(e){return this._lines[e-1]},t.prototype.getWordAtPosition=function(e,t){var n=k(e.column,N(t),this._lines[e.lineNumber-1],0);return n?new wn(e.lineNumber,n.startColumn,e.lineNumber,n.endColumn):null},t.prototype.createWordIterator=function(e){var t,n,i=this,o=0,r=0,s=[],a=function(){if(r<s.length){var u=n.substring(s[r].start,s[r].end);return r+=1,t?t.value=u:t={done:!1,value:u},t}return o>=i._lines.length?Ke:(n=i._lines[o],s=i._wordenize(n,e),r=0,o+=1,a())};return{next:a}},t.prototype.getLineWords=function(e,t){for(var n=this._lines[e-1],i=[],o=0,r=this._wordenize(n,t);o<r.length;o++){var s=r[o];i.push({word:n.substring(s.start,s.end),startColumn:s.start+1,endColumn:s.end+1})}return i},t.prototype._wordenize=function(e,t){var n,i=[];for(t.lastIndex=0;(n=t.exec(e))&&0!==n[0].length;)i.push({start:n.index,end:n.index+n[0].length});return i},t.prototype.getValueInRange=function(e){if((e=this._validateRange(e)).startLineNumber===e.endLineNumber)return this._lines[e.startLineNumber-1].substring(e.startColumn-1,e.endColumn-1);var t=this._eol,n=e.startLineNumber-1,i=e.endLineNumber-1,o=[];o.push(this._lines[n].substring(e.startColumn-1));for(var r=n+1;r<i;r++)o.push(this._lines[r]);return o.push(this._lines[i].substring(0,e.endColumn-1)),o.join(t)},t.prototype.offsetAt=function(e){return e=this._validatePosition(e),this._ensureLineStarts(),this._lineStarts.getAccumulatedValue(e.lineNumber-2)+(e.column-1)},t.prototype.positionAt=function(e){e=Math.floor(e),e=Math.max(0,e),this._ensureLineStarts();var t=this._lineStarts.getIndexOf(e),n=this._lines[t.index].length;return{lineNumber:1+t.index,column:1+Math.min(t.remainder,n)}},t.prototype._validateRange=function(e){var t=this._validatePosition({lineNumber:e.startLineNumber,column:e.startColumn}),n=this._validatePosition({lineNumber:e.endLineNumber,column:e.endColumn});return t.lineNumber!==e.startLineNumber||t.column!==e.startColumn||n.lineNumber!==e.endLineNumber||n.column!==e.endColumn?{startLineNumber:t.lineNumber,startColumn:t.column,endLineNumber:n.lineNumber,endColumn:n.column}:e},t.prototype._validatePosition=function(e){if(!bn.isIPosition(e))throw new Error("bad position");var t=e.lineNumber,n=e.column,i=!1;if(t<1)t=1,n=1,i=!0;else if(t>this._lines.length)t=this._lines.length,n=this._lines[t-1].length+1,i=!0;else{var o=this._lines[t-1].length+1;n<1?(n=1,i=!0):n>o&&(n=o,i=!0)}return i?{lineNumber:t,column:n}:e},t}(tc),gc=function(){function e(e,t){this._host=e,this._models=Object.create(null),this._foreignModuleFactory=t,this._foreignModule=null}return e.prototype.dispose=function(){this._models=Object.create(null)},e.prototype._getModel=function(e){return this._models[e]},e.prototype._getModels=function(){var e=this,t=[];return Object.keys(this._models).forEach((function(n){return t.push(e._models[n])})),t},e.prototype.acceptNewModel=function(e){this._models[e.url]=new fc(Et.parse(e.url),e.lines,e.EOL,e.versionId)},e.prototype.acceptModelChanged=function(e,t){this._models[e]&&this._models[e].onEvents(t)},e.prototype.acceptRemovedModel=function(e){this._models[e]&&delete this._models[e]},e.prototype.computeDiff=function(e,t,n,i){return hc(this,void 0,void 0,(function(){var o,r,s,a,u,l,c;return pc(this,(function(d){return o=this._getModel(e),r=this._getModel(t),o&&r?(s=o.getLinesContent(),a=r.getLinesContent(),u=new Gl(s,a,{shouldComputeCharChanges:!0,shouldPostProcessCharChanges:!0,shouldIgnoreTrimWhitespace:n,shouldMakePrettyDiff:!0,maxComputationTime:i}),l=u.computeDiff(),c=!(l.changes.length>0)&&this._modelsAreIdentical(o,r),[2,{quitEarly:l.quitEarly,identical:c,changes:l.changes}]):[2,null]}))}))},e.prototype._modelsAreIdentical=function(e,t){var n=e.getLineCount();if(n!==t.getLineCount())return!1;for(var i=1;i<=n;i++){if(e.getLineContent(i)!==t.getLineContent(i))return!1}return!0},e.prototype.computeMoreMinimalEdits=function(t,n){return hc(this,void 0,void 0,(function(){var i,o,r,s,a,u,l,c,d,h,p,f,g,m,v,_,y,b;return pc(this,(function(w){if(!(i=this._getModel(t)))return[2,n];for(o=[],r=void 0,n=Ni(n,(function(e,t){return e.range&&t.range?wn.compareRangesUsingStarts(e.range,t.range):(e.range?0:1)-(t.range?0:1)})),s=0,a=n;s<a.length;s++)if(u=a[s],l=u.range,c=u.text,"number"==typeof(d=u.eol)&&(r=d),(!wn.isEmpty(l)||c)&&(h=i.getValueInRange(l),c=c.replace(/\r\n|\n|\r/g,i.eol),h!==c))if(Math.max(c.length,h.length)>e._diffLimit)o.push({range:l,text:c});else for(p=Fl(h,c,!1),f=i.offsetAt(wn.lift(l).getStartPosition()),g=0,m=p;g<m.length;g++)v=m[g],_=i.positionAt(f+v.originalStart),y=i.positionAt(f+v.originalStart+v.originalLength),b={text:c.substr(v.modifiedStart,v.modifiedLength),range:{startLineNumber:_.lineNumber,startColumn:_.column,endLineNumber:y.lineNumber,endColumn:y.column}},i.getValueInRange(b.range)!==b.text&&o.push(b);return"number"==typeof r&&o.push({eol:r,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),[2,o]}))}))},e.prototype.computeLinks=function(e){return hc(this,void 0,void 0,(function(){var t;return pc(this,(function(n){return(t=this._getModel(e))?[2,lc(t)]:[2,null]}))}))},e.prototype.textualSuggest=function(t,n,i,o){return hc(this,void 0,void 0,(function(){var r,s,a,u,l,c,d,h;return pc(this,(function(p){if(!(r=this._getModel(t)))return[2,null];for(s=[],a=new Set,u=new RegExp(i,o),(l=r.getWordAtPosition(n,u))&&a.add(r.getValueInRange(l)),c=r.createWordIterator(u),d=c.next();!d.done&&a.size<=e._suggestionsLimit;d=c.next())h=d.value,a.has(h)||(a.add(h),isNaN(Number(h))&&s.push(h));return[2,s]}))}))},e.prototype.computeWordRanges=function(e,t,n,i){return hc(this,void 0,void 0,(function(){var o,r,s,a,u,l,c,d,h;return pc(this,(function(p){if(!(o=this._getModel(e)))return[2,Object.create(null)];for(r=new RegExp(n,i),s=Object.create(null),a=t.startLineNumber;a<t.endLineNumber;a++)for(u=o.getLineWords(a,r),l=0,c=u;l<c.length;l++)d=c[l],isNaN(Number(d.word))&&((h=s[d.word])||(h=[],s[d.word]=h),h.push({startLineNumber:a,startColumn:d.startColumn,endLineNumber:a,endColumn:d.endColumn}));return[2,s]}))}))},e.prototype.navigateValueSet=function(e,t,n,i,o){return hc(this,void 0,void 0,(function(){var r,s,a,u,l;return pc(this,(function(c){return(r=this._getModel(e))?(s=new RegExp(i,o),t.startColumn===t.endColumn&&(t={startLineNumber:t.startLineNumber,startColumn:t.startColumn,endLineNumber:t.endLineNumber,endColumn:t.endColumn+1}),a=r.getValueInRange(t),(u=r.getWordAtPosition({lineNumber:t.startLineNumber,column:t.startColumn},s))?(l=r.getValueInRange(u),[2,cc.INSTANCE.navigateValueSet(t,a,u,l,n)]):[2,null]):[2,null]}))}))},e.prototype.loadForeignModule=function(e,t,n){var i=this,o={host:Ys(n,(function(e,t){return i._host.fhr(e,t)})),getMirrorModels:function(){return i._getModels()}};return this._foreignModuleFactory?(this._foreignModule=this._foreignModuleFactory(o,t),Promise.resolve(Zs(this._foreignModule))):Promise.reject(new Error("Unexpected usage"))},e.prototype.fmr=function(e,t){if(!this._foreignModule||"function"!=typeof this._foreignModule[e])return Promise.reject(new Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._foreignModule[e].apply(this._foreignModule,t))}catch(e){return Promise.reject(e)}},e._diffLimit=1e5,e._suggestionsLimit=1e4,e}();"function"==typeof importScripts&&(S.monaco=kn());var mc,vc=Mn("textResourceConfigurationService"),_c=Mn("textResourcePropertiesService"),yc=Mn("logService");!function(e){e[e.Trace=0]="Trace",e[e.Debug=1]="Debug",e[e.Info=2]="Info",e[e.Warning=3]="Warning",e[e.Error=4]="Error",e[e.Critical=5]="Critical",e[e.Off=6]="Off"}(mc||(mc={}));var bc=function(){function e(){}return e.prototype.getLevel=function(){return mc.Info},e.prototype.trace=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n]},e.prototype.error=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n]},e.prototype.dispose=function(){},e}(),wc=S.performance&&"function"==typeof S.performance.now,Cc=function(){function e(e){this._highResolution=wc&&e,this._startTime=this._now(),this._stopTime=-1}return e.create=function(t){return void 0===t&&(t=!0),new e(t)},e.prototype.stop=function(){this._stopTime=this._now()},e.prototype.elapsed=function(){return-1!==this._stopTime?this._stopTime-this._startTime:this._now()-this._startTime},e.prototype._now=function(){return this._highResolution?S.performance.now():(new Date).getTime()},e}(),Sc=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Lc=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},xc=function(e,t){return function(n,i){t(n,i,e)}},Dc=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},Nc=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}};function kc(e,t){var n=e.getModel(t);return!!n&&!n.isTooLargeForSyncing()}var Ec=function(e){function t(t,n,i){var o=e.call(this)||this;return o._modelService=t,o._workerManager=o._register(new Oc(o._modelService)),o._logService=i,o._register(ju.register("*",{provideLinks:function(e,t){return kc(o._modelService,e.uri)?o._workerManager.withWorker().then((function(t){return t.computeLinks(e.uri)})).then((function(e){return e&&{links:e}})):Promise.resolve({links:[]})}})),o._register(Eu.register("*",new Ic(o._workerManager,n,o._modelService))),o}return Sc(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.canComputeDiff=function(e,t){return kc(this._modelService,e)&&kc(this._modelService,t)},t.prototype.computeDiff=function(e,t,n,i){return this._workerManager.withWorker().then((function(o){return o.computeDiff(e,t,n,i)}))},t.prototype.computeMoreMinimalEdits=function(e,t){var n=this;if(Oi(t)){if(!kc(this._modelService,e))return Promise.resolve(t);var i=Cc.create(!0),o=this._workerManager.withWorker().then((function(n){return n.computeMoreMinimalEdits(e,t)}));return o.finally((function(){return n._logService.trace("FORMAT#computeMoreMinimalEdits",e.toString(!0),i.elapsed())})),o}return Promise.resolve(void 0)},t.prototype.canNavigateValueSet=function(e){return kc(this._modelService,e)},t.prototype.navigateValueSet=function(e,t,n){return this._workerManager.withWorker().then((function(i){return i.navigateValueSet(e,t,n)}))},t.prototype.canComputeWordRanges=function(e){return kc(this._modelService,e)},t.prototype.computeWordRanges=function(e,t){return this._workerManager.withWorker().then((function(n){return n.computeWordRanges(e,t)}))},t=Lc([xc(0,du),xc(1,vc),xc(2,yc)],t)}(He),Ic=function(){function e(e,t,n){this._debugDisplayName="wordbasedCompletions",this._workerManager=e,this._configurationService=t,this._modelService=n}return e.prototype.provideCompletionItems=function(e,t){return Dc(this,void 0,void 0,(function(){var n,i,o,r;return Nc(this,(function(s){switch(s.label){case 0:return this._configurationService.getValue(e.uri,t,"editor").wordBasedSuggestions&&kc(this._modelService,e.uri)?(n=e.getWordAtPosition(t),i=n?new wn(t.lineNumber,n.startColumn,t.lineNumber,n.endColumn):wn.fromPositions(t),o=i.setEndPosition(t.lineNumber,t.column),[4,this._workerManager.withWorker()]):[2,void 0];case 1:return[4,s.sent().textualSuggest(e.uri,t)];case 2:return(r=s.sent())?[2,{suggestions:r.map((function(e){return{kind:18,label:e,insertText:e,range:{insert:o,replace:i}}}))}]:[2,void 0]}}))}))},e}(),Oc=function(e){function t(t){var n=e.call(this)||this;return n._modelService=t,n._editorWorkerClient=null,n._lastWorkerUsedTime=(new Date).getTime(),n._register(new bi).cancelAndSet((function(){return n._checkStopIdleWorker()}),Math.round(15e4)),n._register(n._modelService.onModelRemoved((function(e){return n._checkStopEmptyWorker()}))),n}return Sc(t,e),t.prototype.dispose=function(){this._editorWorkerClient&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null),e.prototype.dispose.call(this)},t.prototype._checkStopEmptyWorker=function(){this._editorWorkerClient&&(0===this._modelService.getModels().length&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null))},t.prototype._checkStopIdleWorker=function(){this._editorWorkerClient&&((new Date).getTime()-this._lastWorkerUsedTime>3e5&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null))},t.prototype.withWorker=function(){return this._lastWorkerUsedTime=(new Date).getTime(),this._editorWorkerClient||(this._editorWorkerClient=new Rc(this._modelService,!1,"editorWorkerService")),Promise.resolve(this._editorWorkerClient)},t}(He),Mc=function(e){function t(t,n,i){var o=e.call(this)||this;if(o._syncedModels=Object.create(null),o._syncedModelsLastUsedTime=Object.create(null),o._proxy=t,o._modelService=n,!i){var r=new bi;r.cancelAndSet((function(){return o._checkStopModelSync()}),Math.round(3e4)),o._register(r)}return o}return Sc(t,e),t.prototype.dispose=function(){for(var t in this._syncedModels)Ae(this._syncedModels[t]);this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),e.prototype.dispose.call(this)},t.prototype.ensureSyncedResources=function(e){for(var t=0,n=e;t<n.length;t++){var i=n[t],o=i.toString();this._syncedModels[o]||this._beginModelSync(i),this._syncedModels[o]&&(this._syncedModelsLastUsedTime[o]=(new Date).getTime())}},t.prototype._checkStopModelSync=function(){var e=(new Date).getTime(),t=[];for(var n in this._syncedModelsLastUsedTime){e-this._syncedModelsLastUsedTime[n]>6e4&&t.push(n)}for(var i=0,o=t;i<o.length;i++){var r=o[i];this._stopModelSync(r)}},t.prototype._beginModelSync=function(e){var t=this,n=this._modelService.getModel(e);if(n&&!n.isTooLargeForSyncing()){var i=e.toString();this._proxy.acceptNewModel({url:n.uri.toString(),lines:n.getLinesContent(),EOL:n.getEOL(),versionId:n.getVersionId()});var o=new Be;o.add(n.onDidChangeContent((function(e){t._proxy.acceptModelChanged(i.toString(),e)}))),o.add(n.onWillDispose((function(){t._stopModelSync(i)}))),o.add(We((function(){t._proxy.acceptRemovedModel(i)}))),this._syncedModels[i]=o}},t.prototype._stopModelSync=function(e){var t=this._syncedModels[e];delete this._syncedModels[e],delete this._syncedModelsLastUsedTime[e],Ae(t)},t}(He),Tc=function(){function e(e){this._instance=e,this._proxyObj=Promise.resolve(this._instance)}return e.prototype.dispose=function(){this._instance.dispose()},e.prototype.getProxyObject=function(){return this._proxyObj},e}(),Pc=function(){function e(e){this._workerClient=e}return e.prototype.fhr=function(e,t){return this._workerClient.fhr(e,t)},e}(),Rc=function(e){function t(t,n,i){var o=e.call(this)||this;return o._modelService=t,o._keepIdleModels=n,o._workerFactory=new ll(i),o._worker=null,o._modelManager=null,o}return Sc(t,e),t.prototype.fhr=function(e,t){throw new Error("Not implemented!")},t.prototype._getOrCreateWorker=function(){if(!this._worker)try{this._worker=this._register(new sl(this._workerFactory,"vs/editor/common/services/editorSimpleWorker",new Pc(this)))}catch(e){ol(e),this._worker=new Tc(new gc(new Pc(this),null))}return this._worker},t.prototype._getProxy=function(){var e=this;return this._getOrCreateWorker().getProxyObject().then(void 0,(function(t){return ol(t),e._worker=new Tc(new gc(new Pc(e),null)),e._getOrCreateWorker().getProxyObject()}))},t.prototype._getOrCreateModelManager=function(e){return this._modelManager||(this._modelManager=this._register(new Mc(e,this._modelService,this._keepIdleModels))),this._modelManager},t.prototype._withSyncedResources=function(e){var t=this;return this._getProxy().then((function(n){return t._getOrCreateModelManager(n).ensureSyncedResources(e),n}))},t.prototype.computeDiff=function(e,t,n,i){return this._withSyncedResources([e,t]).then((function(o){return o.computeDiff(e.toString(),t.toString(),n,i)}))},t.prototype.computeMoreMinimalEdits=function(e,t){return this._withSyncedResources([e]).then((function(n){return n.computeMoreMinimalEdits(e.toString(),t)}))},t.prototype.computeLinks=function(e){return this._withSyncedResources([e]).then((function(t){return t.computeLinks(e.toString())}))},t.prototype.textualSuggest=function(e,t){var n=this;return this._withSyncedResources([e]).then((function(i){var o=n._modelService.getModel(e);if(!o)return null;var r=Ol.getWordDefinition(o.getLanguageIdentifier().id),s=r.source,a=br(r);return i.textualSuggest(e.toString(),t,s,a)}))},t.prototype.computeWordRanges=function(e,t){var n=this;return this._withSyncedResources([e]).then((function(i){var o=n._modelService.getModel(e);if(!o)return Promise.resolve(null);var r=Ol.getWordDefinition(o.getLanguageIdentifier().id),s=r.source,a=br(r);return i.computeWordRanges(e.toString(),t,s,a)}))},t.prototype.navigateValueSet=function(e,t,n){var i=this;return this._withSyncedResources([e]).then((function(o){var r=i._modelService.getModel(e);if(!r)return null;var s=Ol.getWordDefinition(r.getLanguageIdentifier().id),a=s.source,u=br(s);return o.navigateValueSet(e.toString(),t,n,a,u)}))},t}(He),Ac=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();var Fc,Wc=function(e){function t(t,n){var i=e.call(this,t,n.keepIdleModels||!1,n.label)||this;return i._foreignModuleId=n.moduleId,i._foreignModuleCreateData=n.createData||null,i._foreignModuleHost=n.host||null,i._foreignProxy=null,i}return Ac(t,e),t.prototype.fhr=function(e,t){if(!this._foreignModuleHost||"function"!=typeof this._foreignModuleHost[e])return Promise.reject(new Error("Missing method "+e+" or missing main thread foreign host."));try{return Promise.resolve(this._foreignModuleHost[e].apply(this._foreignModuleHost,t))}catch(e){return Promise.reject(e)}},t.prototype._getForeignProxy=function(){var e=this;return this._foreignProxy||(this._foreignProxy=this._getProxy().then((function(t){var n=e._foreignModuleHost?Zs(e._foreignModuleHost):[];return t.loadForeignModule(e._foreignModuleId,e._foreignModuleCreateData,n).then((function(n){e._foreignModuleCreateData=null;for(var i=function(e,n){return t.fmr(e,n)},o=function(e,t){return function(){var n=Array.prototype.slice.call(arguments,0);return t(e,n)}},r={},s=0,a=n;s<a.length;s++){var u=a[s];r[u]=o(u,i)}return r}))}))),this._foreignProxy},t.prototype.getProxy=function(){return this._getForeignProxy()},t.prototype.withSyncedResources=function(e){var t=this;return this._withSyncedResources(e).then((function(e){return t.getProxy()}))},t}(Rc),Vc=function(){function e(e,t){this._tokens=e,this._tokensCount=this._tokens.length>>>1,this._text=t}return e.prototype.equals=function(t){return t instanceof e&&this.slicedEquals(t,0,this._tokensCount)},e.prototype.slicedEquals=function(e,t,n){if(this._text!==e._text)return!1;if(this._tokensCount!==e._tokensCount)return!1;for(var i=t<<1,o=i+(n<<1),r=i;r<o;r++)if(this._tokens[r]!==e._tokens[r])return!1;return!0},e.prototype.getLineContent=function(){return this._text},e.prototype.getCount=function(){return this._tokensCount},e.prototype.getStartOffset=function(e){return e>0?this._tokens[e-1<<1]:0},e.prototype.getMetadata=function(e){return this._tokens[1+(e<<1)]},e.prototype.getLanguageId=function(e){var t=this._tokens[1+(e<<1)];return wu.getLanguageId(t)},e.prototype.getStandardTokenType=function(e){var t=this._tokens[1+(e<<1)];return wu.getTokenType(t)},e.prototype.getForeground=function(e){var t=this._tokens[1+(e<<1)];return wu.getForeground(t)},e.prototype.getClassName=function(e){var t=this._tokens[1+(e<<1)];return wu.getClassNameFromMetadata(t)},e.prototype.getInlineStyle=function(e,t){var n=this._tokens[1+(e<<1)];return wu.getInlineStyleFromMetadata(n,t)},e.prototype.getEndOffset=function(e){return this._tokens[e<<1]},e.prototype.findTokenIndexAtOffset=function(t){return e.findIndexInTokensArray(this._tokens,t)},e.prototype.inflate=function(){return this},e.prototype.sliceAndInflate=function(e,t,n){return new Bc(this,e,t,n)},e.convertToEndOffset=function(e,t){for(var n=(e.length>>>1)-1,i=0;i<n;i++)e[i<<1]=e[i+1<<1];e[n<<1]=t},e.findIndexInTokensArray=function(e,t){if(e.length<=2)return 0;for(var n=0,i=(e.length>>>1)-1;n<i;){var o=n+Math.floor((i-n)/2),r=e[o<<1];if(r===t)return o+1;r<t?n=o+1:r>t&&(i=o)}return n},e}(),Bc=function(){function e(e,t,n,i){this._source=e,this._startOffset=t,this._endOffset=n,this._deltaOffset=i,this._firstTokenIndex=e.findTokenIndexAtOffset(t),this._tokensCount=0;for(var o=this._firstTokenIndex,r=e.getCount();o<r;o++){if(e.getStartOffset(o)>=n)break;this._tokensCount++}}return e.prototype.equals=function(t){return t instanceof e&&(this._startOffset===t._startOffset&&this._endOffset===t._endOffset&&this._deltaOffset===t._deltaOffset&&this._source.slicedEquals(t._source,this._firstTokenIndex,this._tokensCount))},e.prototype.getCount=function(){return this._tokensCount},e.prototype.getForeground=function(e){return this._source.getForeground(this._firstTokenIndex+e)},e.prototype.getEndOffset=function(e){var t=this._source.getEndOffset(this._firstTokenIndex+e);return Math.min(this._endOffset,t)-this._startOffset+this._deltaOffset},e.prototype.getClassName=function(e){return this._source.getClassName(this._firstTokenIndex+e)},e.prototype.getInlineStyle=function(e,t){return this._source.getInlineStyle(this._firstTokenIndex+e,t)},e.prototype.findTokenIndexAtOffset=function(e){return this._source.findTokenIndexAtOffset(e+this._startOffset-this._deltaOffset)-this._firstTokenIndex},e}();Fc="undefined"!=typeof TextDecoder?function(e){return new Hc(e)}:function(e){return new zc};var Hc=function(){function e(e){this._decoder=new TextDecoder("UTF-16LE"),this._capacity=0|e,this._buffer=new Uint16Array(this._capacity),this._completedStrings=null,this._bufferLength=0}return e.prototype.reset=function(){this._completedStrings=null,this._bufferLength=0},e.prototype.build=function(){return null!==this._completedStrings?(this._flushBuffer(),this._completedStrings.join("")):this._buildBuffer()},e.prototype._buildBuffer=function(){if(0===this._bufferLength)return"";var e=new Uint16Array(this._buffer.buffer,0,this._bufferLength);return this._decoder.decode(e)},e.prototype._flushBuffer=function(){var e=this._buildBuffer();this._bufferLength=0,null===this._completedStrings?this._completedStrings=[e]:this._completedStrings[this._completedStrings.length]=e},e.prototype.write1=function(e){var t=this._capacity-this._bufferLength;t<=1&&(0===t||Tr(e))&&this._flushBuffer(),this._buffer[this._bufferLength++]=e},e.prototype.appendASCII=function(e){this._bufferLength===this._capacity&&this._flushBuffer(),this._buffer[this._bufferLength++]=e},e.prototype.appendASCIIString=function(e){var t=e.length;if(this._bufferLength+t>=this._capacity)return this._flushBuffer(),void(this._completedStrings[this._completedStrings.length]=e);for(var n=0;n<t;n++)this._buffer[this._bufferLength++]=e.charCodeAt(n)},e}(),zc=function(){function e(){this._pieces=[],this._piecesLen=0}return e.prototype.reset=function(){this._pieces=[],this._piecesLen=0},e.prototype.build=function(){return this._pieces.join("")},e.prototype.write1=function(e){this._pieces[this._piecesLen++]=String.fromCharCode(e)},e.prototype.appendASCII=function(e){this._pieces[this._piecesLen++]=String.fromCharCode(e)},e.prototype.appendASCIIString=function(e){this._pieces[this._piecesLen++]=e},e}(),jc=function(){function e(e,t,n,i){this.startColumn=e,this.endColumn=t,this.className=n,this.type=i}return e._equals=function(e,t){return e.startColumn===t.startColumn&&e.endColumn===t.endColumn&&e.className===t.className&&e.type===t.type},e.equalsArr=function(t,n){var i=t.length;if(i!==n.length)return!1;for(var o=0;o<i;o++)if(!e._equals(t[o],n[o]))return!1;return!0},e.filter=function(t,n,i,o){if(0===t.length)return[];for(var r=[],s=0,a=0,u=t.length;a<u;a++){var l=t[a],c=l.range;if(!(c.endLineNumber<n||c.startLineNumber>n)&&(!c.isEmpty()||0!==l.type&&3!==l.type)){var d=c.startLineNumber===n?c.startColumn:i,h=c.endLineNumber===n?c.endColumn:o;r[s++]=new e(d,h,l.inlineClassName,l.type)}}return r},e.compare=function(e,t){return e.startColumn===t.startColumn?e.endColumn===t.endColumn?e.className<t.className?-1:e.className>t.className?1:0:e.endColumn-t.endColumn:e.startColumn-t.startColumn},e}(),Uc=function(e,t,n){this.startOffset=e,this.endOffset=t,this.className=n},Kc=function(){function e(){this.stopOffsets=[],this.classNames=[],this.count=0}return e.prototype.consumeLowerThan=function(e,t,n){for(;this.count>0&&this.stopOffsets[0]<e;){for(var i=0;i+1<this.count&&this.stopOffsets[i]===this.stopOffsets[i+1];)i++;n.push(new Uc(t,this.stopOffsets[i],this.classNames.join(" "))),t=this.stopOffsets[i]+1,this.stopOffsets.splice(0,i+1),this.classNames.splice(0,i+1),this.count-=i+1}return this.count>0&&t<e&&(n.push(new Uc(t,e-1,this.classNames.join(" "))),t=e),t},e.prototype.insert=function(e,t){if(0===this.count||this.stopOffsets[this.count-1]<=e)this.stopOffsets.push(e),this.classNames.push(t);else for(var n=0;n<this.count;n++)if(this.stopOffsets[n]>=e){this.stopOffsets.splice(n,0,e),this.classNames.splice(n,0,t);break}this.count++},e}(),qc=function(){function e(){}return e.normalize=function(e,t){if(0===t.length)return[];for(var n=[],i=new Kc,o=0,r=0,s=t.length;r<s;r++){var a=t[r],u=a.startColumn,l=a.endColumn,c=a.className;if(u>1)Tr(e.charCodeAt(u-2))&&u--;if(l>1)Tr(e.charCodeAt(l-2))&&l--;var d=u-1,h=l-2;o=i.consumeLowerThan(d,o,n),0===i.count&&(o=d),i.insert(h,c)}return i.consumeLowerThan(1073741824,o,n),n},e}(),Gc=function(e,t){this.endIndex=e,this.type=t},Zc=function(){function e(e,t){this.startOffset=e,this.endOffset=t}return e.prototype.equals=function(e){return this.startOffset===e.startOffset&&this.endOffset===e.endOffset},e}(),Yc=function(){function e(e,t,n,i,o,r,s,a,u,l,c,d,h,p,f,g,m,v){this.useMonospaceOptimizations=e,this.canUseHalfwidthRightwardsArrow=t,this.lineContent=n,this.continuesWithWrappedLine=i,this.isBasicASCII=o,this.containsRTL=r,this.fauxIndentLength=s,this.lineTokens=a,this.lineDecorations=u,this.tabSize=l,this.startVisibleColumn=c,this.spaceWidth=d,this.middotWidth=h,this.stopRenderingLineAfter=p,this.renderWhitespace="all"===f?3:"boundary"===f?1:"selection"===f?2:0,this.renderControlCharacters=g,this.fontLigatures=m,this.selectionsOnLine=v&&v.sort((function(e,t){return e.startOffset<t.startOffset?-1:1}))}return e.prototype.sameSelection=function(e){if(null===this.selectionsOnLine)return null===e;if(null===e)return!1;if(e.length!==this.selectionsOnLine.length)return!1;for(var t=0;t<this.selectionsOnLine.length;t++)if(!this.selectionsOnLine[t].equals(e[t]))return!1;return!0},e.prototype.equals=function(e){return this.useMonospaceOptimizations===e.useMonospaceOptimizations&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.lineContent===e.lineContent&&this.continuesWithWrappedLine===e.continuesWithWrappedLine&&this.isBasicASCII===e.isBasicASCII&&this.containsRTL===e.containsRTL&&this.fauxIndentLength===e.fauxIndentLength&&this.tabSize===e.tabSize&&this.startVisibleColumn===e.startVisibleColumn&&this.spaceWidth===e.spaceWidth&&this.stopRenderingLineAfter===e.stopRenderingLineAfter&&this.renderWhitespace===e.renderWhitespace&&this.renderControlCharacters===e.renderControlCharacters&&this.fontLigatures===e.fontLigatures&&jc.equalsArr(this.lineDecorations,e.lineDecorations)&&this.lineTokens.equals(e.lineTokens)&&this.sameSelection(e.selectionsOnLine)},e}(),Xc=function(){function e(e,t){this.length=e,this._data=new Uint32Array(this.length),this._absoluteOffsets=new Uint32Array(this.length)}return e.getPartIndex=function(e){return(4294901760&e)>>>16},e.getCharIndex=function(e){return(65535&e)>>>0},e.prototype.setPartData=function(e,t,n,i){var o=(t<<16|n<<0)>>>0;this._data[e]=o,this._absoluteOffsets[e]=i+n},e.prototype.getAbsoluteOffsets=function(){return this._absoluteOffsets},e.prototype.charOffsetToPartData=function(e){return 0===this.length?0:e<0?this._data[0]:e>=this.length?this._data[this.length-1]:this._data[e]},e.prototype.partDataToCharOffset=function(t,n,i){if(0===this.length)return 0;for(var o=(t<<16|i<<0)>>>0,r=0,s=this.length-1;r+1<s;){var a=r+s>>>1,u=this._data[a];if(u===o)return a;u>o?s=a:r=a}if(r===s)return r;var l=this._data[r],c=this._data[s];if(l===o)return r;if(c===o)return s;var d=e.getPartIndex(l);return i-e.getCharIndex(l)<=(d!==e.getPartIndex(c)?n:e.getCharIndex(c))-i?r:s},e}(),$c=function(e,t,n){this.characterMapping=e,this.containsRTL=t,this.containsForeignElements=n};function Qc(e,t){if(0===e.lineContent.length){var n=0,i="<span><span> </span></span>";if(e.lineDecorations.length>0){for(var o=[],r=[],s=0,a=e.lineDecorations.length;s<a;s++){var u=e.lineDecorations[s];1===u.type&&(o.push(e.lineDecorations[s].className),n|=1),2===u.type&&(r.push(e.lineDecorations[s].className),n|=2)}if(0!==n)i="<span>"+(o.length>0?'<span class="'+o.join(" ")+'"></span>':"")+(r.length>0?'<span class="'+r.join(" ")+'"></span>':"")+"</span>"}return t.appendASCIIString(i),new $c(new Xc(0,0),!1,n)}return function(e,t){var n=e.fontIsMonospace,i=e.canUseHalfwidthRightwardsArrow,o=e.containsForeignElements,r=e.lineContent,s=e.len,a=e.isOverflowing,u=e.parts,l=e.fauxIndentLength,c=e.tabSize,d=e.startVisibleColumn,h=e.containsRTL,p=e.spaceWidth,f=e.middotWidth,g=e.renderWhitespace,m=e.renderControlCharacters,v=f>p?11825:183,_=new Xc(s+1,u.length),y=0,b=d,w=0,C=0,S=0;t.appendASCIIString("<span>");for(var L=0,x=u.length;L<x;L++){S+=C;var D=u[L],N=D.endIndex,k=D.type,E=0!==g&&k.indexOf("vs-whitespace")>=0;if(w=0,t.appendASCIIString('<span class="'),t.appendASCIIString(k),t.appendASCII(34),E){for(var I=0,O=y,M=b;O<N;O++){var T=r.charCodeAt(O);I+=P=0|(9===T?c-M%c:1),O>=l&&(M+=P)}if(!n)!("vs-whitespace"===k)&&o||(t.appendASCIIString(' style="display:inline-block;width:'),t.appendASCIIString(String(p*I)),t.appendASCIIString('px"'));for(t.appendASCII(62);y<N;y++){_.setPartData(y,L,w,S);T=r.charCodeAt(y);var P=void 0;if(9===T){P=c-b%c|0,!i||P>1?t.write1(8594):t.write1(65515);for(var R=2;R<=P;R++)t.write1(160)}else P=1,t.write1(v);w+=P,y>=l&&(b+=P)}C=I}else{I=0;for(h&&t.appendASCIIString(' dir="ltr"'),t.appendASCII(62);y<N;y++){_.setPartData(y,L,w,S);T=r.charCodeAt(y);var A=1;P=1;switch(T){case 9:P=A=c-b%c;for(R=1;R<=A;R++)t.write1(160);break;case 32:t.write1(160);break;case 60:t.appendASCIIString("<");break;case 62:t.appendASCIIString(">");break;case 38:t.appendASCIIString("&");break;case 0:t.appendASCIIString("�");break;case 65279:case 8232:t.write1(65533);break;default:jr(T)&&P++,m&&T<32?t.write1(9216+T):t.write1(T)}w+=A,I+=A,y>=l&&(b+=P)}C=I}t.appendASCIIString("</span>")}_.setPartData(s,u.length-1,w,S),a&&t.appendASCIIString("<span>…</span>");return t.appendASCIIString("</span>"),new $c(_,h,o)}(function(e){var t,n,i=e.useMonospaceOptimizations,o=e.lineContent;-1!==e.stopRenderingLineAfter&&e.stopRenderingLineAfter<o.length?(t=!0,n=e.stopRenderingLineAfter):(t=!1,n=o.length);var r=function(e,t,n){var i=[],o=0;t>0&&(i[o++]=new Gc(t,""));for(var r=0,s=e.getCount();r<s;r++){var a=e.getEndOffset(r);if(!(a<=t)){var u=e.getClassName(r);if(a>=n){i[o++]=new Gc(n,u);break}i[o++]=new Gc(a,u)}}return i}(e.lineTokens,e.fauxIndentLength,n);(3===e.renderWhitespace||1===e.renderWhitespace||2===e.renderWhitespace&&e.selectionsOnLine)&&(r=function(e,t,n,i,o,r,s,a,u,l){var c,d=[],h=0,p=0,f=i[p].type,g=i[p].endIndex,m=i.length,v=wr(e);-1===v?(v=t,c=t):c=Sr(e);for(var _=!1,y=0,b=u&&u[y],w=s%r,C=o;C<t;C++){var S=e.charCodeAt(C);b&&C>=b.endOffset&&(y++,b=u&&u[y]);var L=void 0;if(C<v||C>c)L=!0;else if(9===S)L=!0;else if(32===S)if(l)if(_)L=!0;else{var x=C+1<t?e.charCodeAt(C+1):0;L=32===x||9===x}else L=!0;else L=!1;L&&u&&(L=!!b&&b.startOffset<=C&&b.endOffset>C),_?(!L||!a&&w>=r)&&(d[h++]=new Gc(C,"vs-whitespace"),w%=r):(C===g||L&&C>o)&&(d[h++]=new Gc(C,f),w%=r),9===S?w=r:jr(S)?w+=2:w++,_=L,C===g&&++p<m&&(f=i[p].type,g=i[p].endIndex)}var D=!1;if(_)if(n&&l){var N=t>0?e.charCodeAt(t-1):0,k=t>1?e.charCodeAt(t-2):0;32===N&&32!==k&&9!==k||(D=!0)}else D=!0;return d[h++]=new Gc(t,D?"vs-whitespace":f),d}(o,n,e.continuesWithWrappedLine,r,e.fauxIndentLength,e.tabSize,e.startVisibleColumn,i,e.selectionsOnLine,1===e.renderWhitespace));var s=0;if(e.lineDecorations.length>0){for(var a=0,u=e.lineDecorations.length;a<u;a++){var l=e.lineDecorations[a];3===l.type||1===l.type?s|=1:2===l.type&&(s|=2)}r=function(e,t,n,i){i.sort(jc.compare);for(var o=qc.normalize(e,i),r=o.length,s=0,a=[],u=0,l=0,c=0,d=n.length;c<d;c++){for(var h=n[c],p=h.endIndex,f=h.type;s<r&&o[s].startOffset<p;){var g=o[s];if(g.startOffset>l&&(l=g.startOffset,a[u++]=new Gc(l,f)),!(g.endOffset+1<=p)){l=p,a[u++]=new Gc(l,f+" "+g.className);break}l=g.endOffset+1,a[u++]=new Gc(l,f+" "+g.className),s++}p>l&&(l=p,a[u++]=new Gc(l,f))}var m=n[n.length-1].endIndex;if(s<r&&o[s].startOffset===m){for(var v=[];s<r&&o[s].startOffset===m;)v.push(o[s].className),s++;a[u++]=new Gc(l,v.join(" "))}return a}(o,0,r,e.lineDecorations)}e.containsRTL||(r=function(e,t,n){var i=0,o=[],r=0;if(n)for(var s=0,a=t.length;s<a;s++){var u=(p=t[s]).endIndex;if(i+50<u){for(var l=p.type,c=-1,d=i,h=i;h<u;h++)32===e.charCodeAt(h)&&(c=h),-1!==c&&h-d>=50&&(o[r++]=new Gc(c+1,l),d=c+1,c=-1);d!==u&&(o[r++]=new Gc(u,l))}else o[r++]=p;i=u}else for(s=0,a=t.length;s<a;s++){var p=t[s],f=(u=p.endIndex)-i;if(f>50){l=p.type;var g=Math.ceil(f/50);for(h=1;h<g;h++){var m=i+50*h;o[r++]=new Gc(m,l)}o[r++]=new Gc(u,l)}else o[r++]=p;i=u}return o}(o,r,!e.isBasicASCII||e.fontLigatures));return new td(i,e.canUseHalfwidthRightwardsArrow,o,n,t,r,s,e.fauxIndentLength,e.tabSize,e.startVisibleColumn,e.containsRTL,e.spaceWidth,e.middotWidth,e.renderWhitespace,e.renderControlCharacters)}(e),t)}var Jc=function(e,t,n,i){this.characterMapping=e,this.html=t,this.containsRTL=n,this.containsForeignElements=i};function ed(e){var t=Fc(1e4),n=Qc(e,t);return new Jc(n.characterMapping,t.build(),n.containsRTL,n.containsForeignElements)}var td=function(e,t,n,i,o,r,s,a,u,l,c,d,h,p,f){this.fontIsMonospace=e,this.canUseHalfwidthRightwardsArrow=t,this.lineContent=n,this.len=i,this.isOverflowing=o,this.parts=r,this.containsForeignElements=s,this.fauxIndentLength=a,this.tabSize=u,this.startVisibleColumn=l,this.containsRTL=c,this.spaceWidth=d,this.middotWidth=h,this.renderWhitespace=p,this.renderControlCharacters=f};var nd=function(e,t,n,i){this.top=0|e,this.left=0|t,this.width=0|n,this.height=0|i},id=function(e,t){this.tabSize=e,this.data=t},od=function(e,t,n,i,o,r){this.content=e,this.continuesWithWrappedLine=t,this.minColumn=n,this.maxColumn=i,this.startVisibleColumn=o,this.tokens=r},rd=function(){function e(t,n,i,o,r,s,a,u,l,c){this.minColumn=t,this.maxColumn=n,this.content=i,this.continuesWithWrappedLine=o,this.isBasicASCII=e.isBasicASCII(i,s),this.containsRTL=e.containsRTL(i,this.isBasicASCII,r),this.tokens=a,this.inlineDecorations=u,this.tabSize=l,this.startVisibleColumn=c}return e.isBasicASCII=function(e,t){return!t||zr(e)},e.containsRTL=function(e,t,n){return!(t||!n)&&Vr(e)},e}(),sd=function(e,t,n){this.range=e,this.inlineClassName=t,this.type=n},ad=function(e,t){this.range=e,this.options=t};function ud(e){return!function(e){return Array.isArray(e)}(e)}function ld(e){return"string"==typeof e}function cd(e){return!ld(e)}function dd(e){return!e}function hd(e,t){return e.ignoreCase&&t?t.toLowerCase():t}function pd(e){return e.replace(/[&<>'"_]/g,"-")}function fd(e,t){return new Error(e.languageId+": "+t)}function gd(e,t,n,i,o){var r=null;return t.replace(/\$((\$)|(#)|(\d\d?)|[sS](\d\d?)|@(\w+))/g,(function(t,s,a,u,l,c,d,h,p){return dd(a)?dd(u)?!dd(l)&&l<i.length?hd(e,i[l]):!dd(d)&&e&&"string"==typeof e[d]?e[d]:(null===r&&(r=o.split(".")).unshift(o),!dd(c)&&c<r.length?hd(e,r[c]):""):hd(e,n):"$"}))}function md(e,t){for(var n=t;n&&n.length>0;){var i=e.tokenizer[n];if(i)return i;var o=n.lastIndexOf(".");n=o<0?null:n.substr(0,o)}return null}var vd=function(){function e(e){this._maxCacheDepth=e,this._entries=Object.create(null)}return e.create=function(e,t){return this._INSTANCE.create(e,t)},e.prototype.create=function(e,t){if(null!==e&&e.depth>=this._maxCacheDepth)return new _d(e,t);var n=_d.getStackElementId(e);n.length>0&&(n+="|"),n+=t;var i=this._entries[n];return i||(i=new _d(e,t),this._entries[n]=i,i)},e._INSTANCE=new e(5),e}(),_d=function(){function e(e,t){this.parent=e,this.state=t,this.depth=(this.parent?this.parent.depth:0)+1}return e.getStackElementId=function(e){for(var t="";null!==e;)t.length>0&&(t+="|"),t+=e.state,e=e.parent;return t},e._equals=function(e,t){for(;null!==e&&null!==t;){if(e===t)return!0;if(e.state!==t.state)return!1;e=e.parent,t=t.parent}return null===e&&null===t},e.prototype.equals=function(t){return e._equals(this,t)},e.prototype.push=function(e){return vd.create(this,e)},e.prototype.pop=function(){return this.parent},e.prototype.popall=function(){for(var e=this;e.parent;)e=e.parent;return e},e.prototype.switchTo=function(e){return vd.create(this.parent,e)},e}(),yd=function(){function e(e,t){this.modeId=e,this.state=t}return e.prototype.equals=function(e){return this.modeId===e.modeId&&this.state.equals(e.state)},e.prototype.clone=function(){return this.state.clone()===this.state?this:new e(this.modeId,this.state)},e}(),bd=function(){function e(e){this._maxCacheDepth=e,this._entries=Object.create(null)}return e.create=function(e,t){return this._INSTANCE.create(e,t)},e.prototype.create=function(e,t){if(null!==t)return new wd(e,t);if(null!==e&&e.depth>=this._maxCacheDepth)return new wd(e,t);var n=_d.getStackElementId(e),i=this._entries[n];return i||(i=new wd(e,null),this._entries[n]=i,i)},e._INSTANCE=new e(5),e}(),wd=function(){function e(e,t){this.stack=e,this.embeddedModeData=t}return e.prototype.clone=function(){return(this.embeddedModeData?this.embeddedModeData.clone():null)===this.embeddedModeData?this:bd.create(this.stack,this.embeddedModeData)},e.prototype.equals=function(t){return t instanceof e&&(!!this.stack.equals(t.stack)&&(null===this.embeddedModeData&&null===t.embeddedModeData||null!==this.embeddedModeData&&null!==t.embeddedModeData&&this.embeddedModeData.equals(t.embeddedModeData)))},e}(),Cd=function(){function e(){this._tokens=[],this._language=null,this._lastTokenType=null,this._lastTokenLanguage=null}return e.prototype.enterMode=function(e,t){this._language=t},e.prototype.emit=function(e,t){this._lastTokenType===t&&this._lastTokenLanguage===this._language||(this._lastTokenType=t,this._lastTokenLanguage=this._language,this._tokens.push(new Ln(e,t,this._language)))},e.prototype.nestedModeTokenize=function(e,t,n){var i=t.modeId,o=t.state,r=Yu.get(i);if(!r)return this.enterMode(n,i),this.emit(n,""),o;var s=r.tokenize(e,o,n);return this._tokens=this._tokens.concat(s.tokens),this._lastTokenType=null,this._lastTokenLanguage=null,this._language=null,s.endState},e.prototype.finalize=function(e){return new xn(this._tokens,e)},e}(),Sd=function(){function e(e,t){this._modeService=e,this._theme=t,this._prependTokens=null,this._tokens=[],this._currentLanguageId=0,this._lastTokenMetadata=0}return e.prototype.enterMode=function(e,t){this._currentLanguageId=this._modeService.getLanguageIdentifier(t).id},e.prototype.emit=function(e,t){var n=this._theme.match(this._currentLanguageId,t);this._lastTokenMetadata!==n&&(this._lastTokenMetadata=n,this._tokens.push(e),this._tokens.push(n))},e._merge=function(e,t,n){var i=null!==e?e.length:0,o=t.length,r=null!==n?n.length:0;if(0===i&&0===o&&0===r)return new Uint32Array(0);if(0===i&&0===o)return n;if(0===o&&0===r)return e;var s=new Uint32Array(i+o+r);null!==e&&s.set(e);for(var a=0;a<o;a++)s[i+a]=t[a];return null!==n&&s.set(n,i+o),s},e.prototype.nestedModeTokenize=function(t,n,i){var o=n.modeId,r=n.state,s=Yu.get(o);if(!s)return this.enterMode(i,o),this.emit(i,""),r;var a=s.tokenize2(t,r,i);return this._prependTokens=e._merge(this._prependTokens,this._tokens,a.tokens),this._tokens=[],this._currentLanguageId=0,this._lastTokenMetadata=0,a.endState},e.prototype.finalize=function(t){return new Dn(e._merge(this._prependTokens,this._tokens,null),t)},e}(),Ld=function(){function e(e,t,n,i){var o=this;this._modeService=e,this._standaloneThemeService=t,this._modeId=n,this._lexer=i,this._embeddedModes=Object.create(null),this.embeddedLoaded=Promise.resolve(void 0);var r=!1;this._tokenizationRegistryListener=Yu.onDidChange((function(e){if(!r){for(var t=!1,n=0,i=e.changedLanguages.length;n<i;n++){var s=e.changedLanguages[n];if(o._embeddedModes[s]){t=!0;break}}t&&(r=!0,Yu.fire([o._modeId]),r=!1)}}))}return e.prototype.dispose=function(){this._tokenizationRegistryListener.dispose()},e.prototype.getLoadStatus=function(){var t=[];for(var n in this._embeddedModes){var i=Yu.get(n);if(i){if(i instanceof e){var o=i.getLoadStatus();!1===o.loaded&&t.push(o.promise)}}else{var r=Yu.getPromise(n);r&&t.push(r)}}return 0===t.length?{loaded:!0}:{loaded:!1,promise:Promise.all(t).then((function(e){}))}},e.prototype.getInitialState=function(){var e=vd.create(null,this._lexer.start);return bd.create(e,null)},e.prototype.tokenize=function(e,t,n){var i=new Cd,o=this._tokenize(e,t,n,i);return i.finalize(o)},e.prototype.tokenize2=function(e,t,n){var i=new Sd(this._modeService,this._standaloneThemeService.getTheme().tokenTheme),o=this._tokenize(e,t,n,i);return i.finalize(o)},e.prototype._tokenize=function(e,t,n,i){return t.embeddedModeData?this._nestedTokenize(e,t,n,i):this._myTokenize(e,t,n,i)},e.prototype._findLeavingNestedModeOffset=function(e,t){var n=this._lexer.tokenizer[t.stack.state];if(!n&&!(n=md(this._lexer,t.stack.state)))throw fd(this._lexer,"tokenizer state is not defined: "+t.stack.state);for(var i=-1,o=!1,r=0,s=n;r<s.length;r++){var a=s[r];if(cd(a.action)&&"@pop"===a.action.nextEmbedded){o=!0;var u=a.regex,l=a.regex.source;"^(?:"===l.substr(0,4)&&")"===l.substr(l.length-1,1)&&(u=new RegExp(l.substr(4,l.length-5),u.ignoreCase?"i":""));var c=e.search(u);-1===c||0!==c&&a.matchOnlyAtLineStart||(-1===i||c<i)&&(i=c)}}if(!o)throw fd(this._lexer,'no rule containing nextEmbedded: "@pop" in tokenizer embedded state: '+t.stack.state);return i},e.prototype._nestedTokenize=function(e,t,n,i){var o=this._findLeavingNestedModeOffset(e,t);if(-1===o){var r=i.nestedModeTokenize(e,t.embeddedModeData,n);return bd.create(t.stack,new yd(t.embeddedModeData.modeId,r))}var s=e.substring(0,o);s.length>0&&i.nestedModeTokenize(s,t.embeddedModeData,n);var a=e.substring(o);return this._myTokenize(a,t,n+o,i)},e.prototype._safeRuleName=function(e){return e?e.name:"(unknown)"},e.prototype._myTokenize=function(e,t,n,i){i.enterMode(n,this._modeId);for(var o,r,s=e.length,a=t.embeddedModeData,u=t.stack,l=0,c=null,d=!0;d||l<s;){var h=l,p=u.depth,f=c?c.groups.length:0,g=u.state,m=null,v=null,_=null,y=null,b=null;if(c){m=c.matches;var w=c.groups.shift();v=w.matched,_=w.action,y=c.rule,0===c.groups.length&&(c=null)}else{if(!d&&l>=s)break;d=!1;var C=this._lexer.tokenizer[g];if(!C&&!(C=md(this._lexer,g)))throw fd(this._lexer,"tokenizer state is not defined: "+g);for(var S=e.substr(l),L=0,x=C;L<x.length;L++){var D=x[L];if((0===l||!D.matchOnlyAtLineStart)&&(m=S.match(D.regex))){v=m[0],_=D.action;break}}}if(m||(m=[""],v=""),_||(l<s&&(v=(m=[e.charAt(l)])[0]),_=this._lexer.defaultToken),null===v)break;for(l+=v.length;ud(_)&&cd(_)&&_.test;)_=_.test(v,m,g,l===s);var N=null;if("string"==typeof _||Array.isArray(_))N=_;else if(_.group)N=_.group;else if(null!==_.token&&void 0!==_.token){if(N=_.tokenSubst?gd(this._lexer,_.token,v,m,g):_.token,_.nextEmbedded)if("@pop"===_.nextEmbedded){if(!a)throw fd(this._lexer,"cannot pop embedded mode if not inside one");a=null}else{if(a)throw fd(this._lexer,"cannot enter embedded mode from within an embedded mode");b=gd(this._lexer,_.nextEmbedded,v,m,g)}if(_.goBack&&(l=Math.max(0,l-_.goBack)),_.switchTo&&"string"==typeof _.switchTo){if("@"===(k=gd(this._lexer,_.switchTo,v,m,g))[0]&&(k=k.substr(1)),!md(this._lexer,k))throw fd(this._lexer,"trying to switch to a state '"+k+"' that is undefined in rule: "+this._safeRuleName(y));u=u.switchTo(k)}else{if(_.transform&&"function"==typeof _.transform)throw fd(this._lexer,"action.transform not supported");if(_.next)if("@push"===_.next){if(u.depth>=this._lexer.maxStack)throw fd(this._lexer,"maximum tokenizer stack size reached: ["+u.state+","+u.parent.state+",...]");u=u.push(g)}else if("@pop"===_.next){if(u.depth<=1)throw fd(this._lexer,"trying to pop an empty stack in rule: "+this._safeRuleName(y));u=u.pop()}else if("@popall"===_.next)u=u.popall();else{var k;if("@"===(k=gd(this._lexer,_.next,v,m,g))[0]&&(k=k.substr(1)),!md(this._lexer,k))throw fd(this._lexer,"trying to set a next state '"+k+"' that is undefined in rule: "+this._safeRuleName(y));u=u.push(k)}}_.log&&"string"==typeof _.log&&(o=this._lexer,r=this._lexer.languageId+": "+gd(this._lexer,_.log,v,m,g),console.log(o.languageId+": "+r))}if(null===N)throw fd(this._lexer,"lexer rule has no well-defined action in rule: "+this._safeRuleName(y));if(Array.isArray(N)){if(c&&c.groups.length>0)throw fd(this._lexer,"groups cannot be nested: "+this._safeRuleName(y));if(m.length!==N.length+1)throw fd(this._lexer,"matched number of groups does not match the number of actions in rule: "+this._safeRuleName(y));for(var E=0,I=1;I<m.length;I++)E+=m[I].length;if(E!==v.length)throw fd(this._lexer,"with groups, all characters should be matched in consecutive groups in rule: "+this._safeRuleName(y));c={rule:y,matches:m,groups:[]};for(I=0;I<N.length;I++)c.groups[I]={action:N[I],matched:m[I+1]};l-=v.length}else{if("@rematch"===N&&(l-=v.length,v="",m=null,N=""),0===v.length){if(0===s||p!==u.depth||g!==u.state||(c?c.groups.length:0)!==f)continue;throw fd(this._lexer,"no progress in tokenizer in rule: "+this._safeRuleName(y))}var O=null;if(ld(N)&&0===N.indexOf("@brackets")){var M=N.substr("@brackets".length),T=xd(this._lexer,v);if(!T)throw fd(this._lexer,"@brackets token returned but no bracket defined as: "+v);O=pd(T.token+M)}else{O=pd(""===N?"":N+this._lexer.tokenPostfix)}if(i.emit(h+n,O),null!==b){var P=this._modeService.getModeIdForLanguageName(b);P&&(b=P);var R=this._getNestedEmbeddedModeData(b);if(l<s){S=e.substr(l);return this._nestedTokenize(S,bd.create(u,R),n+l,i)}return bd.create(u,R)}}}return bd.create(u,a)},e.prototype._getNestedEmbeddedModeData=function(e){var t=this._locateMode(e);if(t){var n=Yu.get(t);if(n)return new yd(t,n.getInitialState())}return new yd(t||"vs.editor.nullMode",Xu)},e.prototype._locateMode=function(e){if(!e||!this._modeService.isRegisteredMode(e))return null;if(e===this._modeId)return e;var t=this._modeService.getModeId(e);return t&&(this._modeService.triggerMode(t),this._embeddedModes[t]=!0),t},e}();function xd(e,t){if(!t)return null;t=hd(e,t);for(var n=0,i=e.brackets;n<i.length;n++){var o=i[n];if(o.open===t)return{token:o.token,bracketType:1};if(o.close===t)return{token:o.token,bracketType:-1}}return null}var Dd,Nd,kd=function(){function e(){}return e.colorizeElement=function(e,t,n,i){var o=(i=i||{}).theme||"vs",r=i.mimeType||n.getAttribute("lang")||n.getAttribute("data-lang");if(!r)return console.error("Mode not detected"),Promise.resolve();e.setTheme(o);var s=n.firstChild?n.firstChild.nodeValue:"";n.className+=" "+o;return this.colorize(t,s||"",r,i).then((function(e){n.innerHTML=e}),(function(e){return console.error(e)}))},e.colorize=function(e,t,n,i){var o=4;i&&"number"==typeof i.tabSize&&(o=i.tabSize),qr(t)&&(t=t.substr(1));var r=t.split(/\r\n|\r|\n/),s=e.getModeId(n);if(!s)return Promise.resolve(Id(r,o));e.triggerMode(s);var a=Yu.get(s);if(a)return Ed(r,o,a);var u=Yu.getPromise(s);return new Promise(u?function(e,t){u.then((function(n){Ed(r,o,n).then(e,t)}),t)}:function(e,t){var n=null,i=null,a=function(){n&&(n.dispose(),n=null),i&&(i.dispose(),i=null);var a=Yu.get(s);a?Ed(r,o,a).then(e,t):e(Id(r,o))};(i=new yi).cancelAndSet(a,500),n=Yu.onDidChange((function(e){e.changedLanguages.indexOf(s)>=0&&a()}))})},e.colorizeLine=function(e,t,n,i,o){void 0===o&&(o=4);var r=rd.isBasicASCII(e,t),s=rd.containsRTL(e,r,n);return ed(new Yc(!1,!0,e,!1,r,s,0,i,[],o,0,0,0,-1,"none",!1,!1,null)).html},e.colorizeModelLine=function(e,t,n){void 0===n&&(n=4);var i=e.getLineContent(t);e.forceTokenization(t);var o=e.getLineTokens(t).inflate();return this.colorizeLine(i,e.mightContainNonBasicASCII(),e.mightContainRTL(),o,n)},e}();function Ed(e,t,n){return new Promise((function(i,o){var r=function(){var s=function(e,t,n){for(var i=[],o=n.getInitialState(),r=0,s=e.length;r<s;r++){var a=e[r],u=n.tokenize2(a,o,0);Vc.convertToEndOffset(u.tokens,a.length);var l=new Vc(u.tokens,a),c=rd.isBasicASCII(a,!0),d=rd.containsRTL(a,c,!0),h=ed(new Yc(!1,!0,a,!1,c,d,0,l.inflate(),[],t,0,0,0,-1,"none",!1,!1,null));(i=i.concat(h.html)).push("<br/>"),o=u.endState}return i.join("")}(e,t,n);if(n instanceof Ld){var a=n.getLoadStatus();if(!1===a.loaded)return void a.promise.then(r,o)}i(s)};r()}))}function Id(e,t){var n=[],i=new Uint32Array(2);i[0]=0,i[1]=16793600;for(var o=0,r=e.length;o<r;o++){var s=e[o];i[0]=s.length;var a=new Vc(i,s),u=rd.isBasicASCII(s,!0),l=rd.containsRTL(s,u,!0),c=ed(new Yc(!1,!0,s,!1,u,l,0,a,[],t,0,0,0,-1,"none",!1,!1,null));(n=n.concat(c.html)).push("<br/>")}return n.join("")}(Nd=Dd||(Dd={}))[Nd.Ignore=0]="Ignore",Nd[Nd.Info=1]="Info",Nd[Nd.Warning=2]="Warning",Nd[Nd.Error=3]="Error",function(e){var t=Object.create(null);t[e.Error]=r("sev.error","Error"),t[e.Warning]=r("sev.warning","Warning"),t[e.Info]=r("sev.info","Info"),e.fromValue=function(t){return t?Er("error",t)?e.Error:Er("warning",t)||Er("warn",t)?e.Warning:Er("info",t)?e.Info:e.Ignore:e.Ignore}}(Dd||(Dd={}));var Od=Dd;function Md(e){return!(!e||"function"!=typeof e.getEditorType)&&e.getEditorType()===Ha.ICodeEditor}var Td=new(function(){function e(){this.data=new Map}return e.prototype.add=function(e,t){La(As(e)),La(Fs(t)),La(!this.data.has(e),"There is already an extension with this id"),this.data.set(e,t)},e.prototype.as=function(e){return this.data.get(e)||null},e}()),Pd="base.contributions.json";var Rd=new(function(){function e(){this._onDidChangeSchema=new nt,this.schemasById={}}return e.prototype.registerSchema=function(e,t){var n;this.schemasById[(n=e,n.length>0&&"#"===n.charAt(n.length-1)?n.substring(0,n.length-1):n)]=t,this._onDidChangeSchema.fire(e)},e.prototype.notifySchemaChanged=function(e){this._onDidChangeSchema.fire(e)},e}());Td.add(Pd,Rd);var Ad="base.contributions.configuration",Fd={properties:{},patternProperties:{}},Wd={properties:{},patternProperties:{}},Vd={properties:{},patternProperties:{}},Bd={properties:{},patternProperties:{}},Hd={properties:{},patternProperties:{}},zd={properties:{},patternProperties:{}},jd=Td.as(Pd),Ud=function(){function e(){this.overrideIdentifiers=new Set,this._onDidSchemaChange=new nt,this._onDidUpdateConfiguration=new nt,this.defaultOverridesConfigurationNode={id:"defaultOverrides",title:r("defaultConfigurations.title","Default Configuration Overrides"),properties:{}},this.configurationContributors=[this.defaultOverridesConfigurationNode],this.resourceLanguageSettingsSchema={properties:{},patternProperties:{},additionalProperties:!1,errorMessage:"Unknown editor configuration setting",allowTrailingCommas:!0,allowComments:!0},this.configurationProperties={},this.excludedConfigurationProperties={},jd.registerSchema("vscode://schemas/settings/resourceLanguage",this.resourceLanguageSettingsSchema)}return e.prototype.registerConfiguration=function(e,t){void 0===t&&(t=!0),this.registerConfigurations([e],t)},e.prototype.registerConfigurations=function(e,t){var n=this;void 0===t&&(t=!0);var i=[];e.forEach((function(e){i.push.apply(i,n.validateAndRegisterProperties(e,t)),n.configurationContributors.push(e),n.registerJSONConfiguration(e)})),jd.registerSchema("vscode://schemas/settings/resourceLanguage",this.resourceLanguageSettingsSchema),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire(i)},e.prototype.registerOverrideIdentifiers=function(e){for(var t=0,n=e;t<n.length;t++){var i=n[t];this.overrideIdentifiers.add(i)}this.updateOverridePropertyPatternKey()},e.prototype.validateAndRegisterProperties=function(e,t,n){void 0===t&&(t=!0),void 0===n&&(n=3),n=Hs(e.scope)?n:e.scope;var i=[],o=e.properties;if(o)for(var r in o)if(t&&Zd(r))delete o[r];else{var s=o[r];Bs(s.default)&&(s.default=qd(s.type)),Kd.test(r)?s.scope=void 0:s.scope=Hs(s.scope)?n:s.scope,!o[r].hasOwnProperty("included")||o[r].included?(this.configurationProperties[r]=o[r],i.push(r)):(this.excludedConfigurationProperties[r]=o[r],delete o[r])}var a=e.allOf;if(a)for(var u=0,l=a;u<l.length;u++){var c=l[u];i.push.apply(i,this.validateAndRegisterProperties(c,t,n))}return i},e.prototype.getConfigurationProperties=function(){return this.configurationProperties},e.prototype.registerJSONConfiguration=function(e){var t=this,n=function(e){var i=e.properties;if(i)for(var o in i)switch(Fd.properties[o]=i[o],i[o].scope){case 1:Wd.properties[o]=i[o];break;case 2:Vd.properties[o]=i[o];break;case 6:Bd.properties[o]=i[o];break;case 3:Hd.properties[o]=i[o];break;case 4:zd.properties[o]=i[o];break;case 5:zd.properties[o]=i[o],t.resourceLanguageSettingsSchema.properties[o]=i[o]}var r=e.allOf;r&&r.forEach(n)};n(e)},e.prototype.updateOverridePropertyPatternKey=function(){for(var e,t=0,n=Js(this.overrideIdentifiers);t<n.length;t++){var i="["+n[t]+"]",o={type:"object",description:r("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),errorMessage:r("overrideSettings.errorMessage","This setting does not support per-language configuration."),$ref:"vscode://schemas/settings/resourceLanguage",default:null===(e=this.defaultOverridesConfigurationNode.properties[i])||void 0===e?void 0:e.default};Fd.properties[i]=o,Wd.properties[i]=o,Vd.properties[i]=o,Bd.properties[i]=o,Hd.properties[i]=o,zd.properties[i]=o}this._onDidSchemaChange.fire()},e}(),Kd=new RegExp("\\[.*\\]$");function qd(e){switch(Array.isArray(e)?e[0]:e){case"boolean":return!1;case"integer":case"number":return 0;case"string":return"";case"array":return[];case"object":return{};default:return null}}var Gd=new Ud;function Zd(e){return Kd.test(e)?r("config.property.languageDefault","Cannot register '{0}'. This matches property pattern '\\\\[.*\\\\]$' for describing language specific editor settings. Use 'configurationDefaults' contribution.",e):void 0!==Gd.getConfigurationProperties()[e]?r("config.property.duplicate","Cannot register '{0}'. This property is already registered.",e):null}Td.add(Ad,Gd);var Yd=Object.prototype.hasOwnProperty;function Xd(e){var t=[];for(var n in e)Yd.call(e,n)&&t.push(e[n]);return t}function $d(e){for(var t in e)if(Yd.call(e,t))return e[t]}function Qd(e,t){var n=function(n){if(Yd.call(e,n)&&!1===t({key:n,value:e[n]},(function(){delete e[n]})))return{value:void 0}};for(var i in e){var o=n(i);if("object"==typeof o)return o.value}}var Jd=function(){function e(){this.map=new Map}return e.prototype.add=function(e,t){var n=this.map.get(e);n||(n=new Set,this.map.set(e,n)),n.add(t)},e.prototype.delete=function(e,t){var n=this.map.get(e);n&&(n.delete(t),0===n.size&&this.map.delete(e))},e.prototype.forEach=function(e,t){var n=this.map.get(e);n&&n.forEach(t)},e}(),eh=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),th=function(){return(th=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},nh=new(function(){function e(){this._tabFocus=!1,this._onDidChangeTabFocus=new nt,this.onDidChangeTabFocus=this._onDidChangeTabFocus.event}return e.prototype.getTabFocusMode=function(){return this._tabFocus},e.prototype.setTabFocusMode=function(e){this._tabFocus!==e&&(this._tabFocus=e,this._onDidChangeTabFocus.fire(this._tabFocus))},e}()),ih=Object.hasOwnProperty,oh=function(){function e(){this._values=[]}return e.prototype._read=function(e){return this._values[e]},e.prototype.get=function(e){return this._values[e]},e.prototype._write=function(e,t){this._values[e]=t},e}(),rh=function(){function e(){this._values=[]}return e.prototype._read=function(e){return this._values[e]},e.prototype._write=function(e,t){this._values[e]=t},e}(),sh=function(){function e(){}return e.readOptions=function(e){for(var t=e,n=new rh,i=0,o=Ce;i<o.length;i++){var r=o[i],s="_never_"===r.name?void 0:t[r.name];n._write(r.id,s)}return n},e.validateOptions=function(e){for(var t=new T,n=0,i=Ce;n<i.length;n++){var o=i[n];t._write(o.id,o.validate(e._read(o.id)))}return t},e.computeOptions=function(e,t){for(var n=new oh,i=0,o=Ce;i<o.length;i++){var r=o[i];n._write(r.id,r.compute(t,n,e._read(r.id)))}return n},e._deepEquals=function(t,n){if("object"!=typeof t||"object"!=typeof n)return t===n;if(Array.isArray(t)||Array.isArray(n))return!(!Array.isArray(t)||!Array.isArray(n))&&xi(t,n);for(var i in t)if(!e._deepEquals(t[i],n[i]))return!1;return!0},e.checkEquals=function(t,n){for(var i=[],o=!1,r=0,s=Ce;r<s.length;r++){var a=s[r],u=!e._deepEquals(t._read(a.id),n._read(a.id));i[a.id]=u,u&&(o=!0)}return o?new M(i):null},e}();function ah(e){var t=xa(e);return function(e){var t=e.wordWrap;!0===t?e.wordWrap="on":!1===t&&(e.wordWrap="off");var n=e.lineNumbers;!0===n?e.lineNumbers="on":!1===n&&(e.lineNumbers="off"),!1===e.autoClosingBrackets&&(e.autoClosingBrackets="never",e.autoClosingQuotes="never",e.autoSurround="never"),"visible"===e.cursorBlinking&&(e.cursorBlinking="solid");var i=e.renderWhitespace;!0===i?e.renderWhitespace="boundary":!1===i&&(e.renderWhitespace="none");var o=e.renderLineHighlight;!0===o?e.renderLineHighlight="line":!1===o&&(e.renderLineHighlight="none");var r=e.acceptSuggestionOnEnter;!0===r?e.acceptSuggestionOnEnter="on":!1===r&&(e.acceptSuggestionOnEnter="off");var s=e.tabCompletion;!1===s?e.tabCompletion="off":!0===s&&(e.tabCompletion="onlySnippets");var a=e.suggest;if(a&&"object"==typeof a.filteredTypes&&a.filteredTypes){var u={method:"showMethods",function:"showFunctions",constructor:"showConstructors",field:"showFields",variable:"showVariables",class:"showClasses",struct:"showStructs",interface:"showInterfaces",module:"showModules",property:"showProperties",event:"showEvents",operator:"showOperators",unit:"showUnits",value:"showValues",constant:"showConstants",enum:"showEnums",enumMember:"showEnumMembers",keyword:"showKeywords",text:"showWords",color:"showColors",file:"showFiles",reference:"showReferences",folder:"showFolders",typeParameter:"showTypeParameters",snippet:"showSnippets"};Qd(u,(function(e){var t=a.filteredTypes[e.key];!1===t&&(a[e.value]=t)}))}var l=e.hover;!0===l?e.hover={enabled:!0}:!1===l&&(e.hover={enabled:!1});var c=e.parameterHints;!0===c?e.parameterHints={enabled:!0}:!1===c&&(e.parameterHints={enabled:!1});var d=e.autoIndent;!0===d?e.autoIndent="full":!1===d&&(e.autoIndent="advanced");var h=e.matchBrackets;!0===h?e.matchBrackets="always":!1===h&&(e.matchBrackets="never")}(t),t}var uh,lh=function(e){function t(t,n){var i=e.call(this)||this;return i._onDidChange=i._register(new nt),i.onDidChange=i._onDidChange.event,i.isSimpleWidget=t,i._isDominatedByLongLines=!1,i._lineNumbersDigitCount=1,i._rawOptions=ah(n),i._readOptions=sh.readOptions(i._rawOptions),i._validatedOptions=sh.validateOptions(i._readOptions),i._register(Pa.onDidChangeZoomLevel((function(e){return i._recomputeOptions()}))),i._register(nh.onDidChangeTabFocus((function(e){return i._recomputeOptions()}))),i}return eh(t,e),t.prototype.observeReferenceElement=function(e){},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._recomputeOptions=function(){var e=this.options,t=this._computeInternalOptions();if(e){var n=sh.checkEquals(e,t);if(null===n)return;this.options=t,this._onDidChange.fire(n)}else this.options=t},t.prototype.getRawOptions=function(){return this._rawOptions},t.prototype._computeInternalOptions=function(){var e=this._getEnvConfiguration(),t=Fa.createFromValidatedSettings(this._validatedOptions,e.zoomLevel,this.isSimpleWidget),n={outerWidth:e.outerWidth,outerHeight:e.outerHeight,fontInfo:this.readConfiguration(t),extraEditorClassName:e.extraEditorClassName,isDominatedByLongLines:this._isDominatedByLongLines,lineNumbersDigitCount:this._lineNumbersDigitCount,emptySelectionClipboard:e.emptySelectionClipboard,pixelRatio:e.pixelRatio,tabFocusMode:nh.getTabFocusMode(),accessibilitySupport:e.accessibilitySupport};return sh.computeOptions(this._validatedOptions,n)},t._subsetEquals=function(e,t){for(var n in t)if(ih.call(t,n)){var i=t[n],o=e[n];if(o===i)continue;if(Array.isArray(o)&&Array.isArray(i)){if(!xi(o,i))return!1;continue}if("object"==typeof o&&"object"==typeof i){if(!this._subsetEquals(o,i))return!1;continue}return!1}return!0},t.prototype.updateOptions=function(e){if(void 0!==e){var n=ah(e);t._subsetEquals(this._rawOptions,n)||(this._rawOptions=ka(this._rawOptions,n||{}),this._readOptions=sh.readOptions(this._rawOptions),this._validatedOptions=sh.validateOptions(this._readOptions),this._recomputeOptions())}},t.prototype.setIsDominatedByLongLines=function(e){this._isDominatedByLongLines=e,this._recomputeOptions()},t.prototype.setMaxLineNumber=function(e){var n=t._digitCount(e);this._lineNumbersDigitCount!==n&&(this._lineNumbersDigitCount=n,this._recomputeOptions())},t._digitCount=function(e){for(var t=0;e;)e=Math.floor(e/10),t++;return t||1},t}(He),ch=Object.freeze({id:"editor",order:5,type:"object",title:r("editorConfigurationTitle","Editor"),scope:5}),dh=Td.as(Ad),hh=th(th({},ch),{properties:{"editor.tabSize":{type:"number",default:me,minimum:1,markdownDescription:r("tabSize","The number of spaces a tab is equal to. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.")},"editor.insertSpaces":{type:"boolean",default:_e,markdownDescription:r("insertSpaces","Insert spaces when pressing `Tab`. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.")},"editor.detectIndentation":{type:"boolean",default:ye,markdownDescription:r("detectIndentation","Controls whether `#editor.tabSize#` and `#editor.insertSpaces#` will be automatically detected when a file is opened based on the file contents.")},"editor.trimAutoWhitespace":{type:"boolean",default:be,description:r("trimAutoWhitespace","Remove trailing auto inserted whitespace.")},"editor.largeFileOptimizations":{type:"boolean",default:we,description:r("largeFileOptimizations","Special handling for large files to disable certain memory intensive features.")},"editor.wordBasedSuggestions":{type:"boolean",default:!0,description:r("wordBasedSuggestions","Controls whether completions should be computed based on words in the document.")},"editor.semanticHighlighting.enabled":{type:"boolean",default:!1,description:r("semanticHighlighting.enabled","Controls whether the semanticHighlighting is shown for the languages that support it.")},"editor.stablePeek":{type:"boolean",default:!1,markdownDescription:r("stablePeek","Keep peek editors open even when double clicking their content or when hitting `Escape`.")},"editor.maxTokenizationLineLength":{type:"integer",default:2e4,description:r("maxTokenizationLineLength","Lines above this length will not be tokenized for performance reasons")},"diffEditor.maxComputationTime":{type:"number",default:5e3,description:r("maxComputationTime","Timeout in milliseconds after which diff computation is cancelled. Use 0 for no timeout.")},"diffEditor.renderSideBySide":{type:"boolean",default:!0,description:r("sideBySide","Controls whether the diff editor shows the diff side by side or inline.")},"diffEditor.ignoreTrimWhitespace":{type:"boolean",default:!0,description:r("ignoreTrimWhitespace","Controls whether the diff editor shows changes in leading or trailing whitespace as diffs.")},"diffEditor.renderIndicators":{type:"boolean",default:!0,description:r("renderIndicators","Controls whether the diff editor shows +/- indicators for added/removed changes.")}}});for(var ph=0,fh=Ce;ph<fh.length;ph++){var gh=fh[ph],mh=gh.schema;if(void 0!==mh)if(void 0!==(uh=mh).type||void 0!==uh.anyOf)hh.properties["editor."+gh.name]=mh;else for(var vh in mh)ih.call(mh,vh)&&(hh.properties[vh]=mh[vh])}var _h=null;function yh(){return null===_h&&(_h=Object.create(null),Object.keys(hh.properties).forEach((function(e){_h[e]=!0}))),_h}dh.registerConfiguration(hh);var bh=function(){function e(){}return e.insert=function(e,t){return{range:new wn(e.lineNumber,e.column,e.lineNumber,e.column),text:t,forceMoveMarkers:!0}},e.delete=function(e){return{range:e,text:null}},e.replace=function(e,t){return{range:e,text:t}},e.replaceMove=function(e,t){return{range:e,text:t,forceMoveMarkers:!0}},e}(),wh=Mn("configurationService");function Ch(e,t){var n=Object.create(null);for(var i in e)Sh(n,i,e[i],t);return n}function Sh(e,t,n,i){for(var o=t.split("."),r=o.pop(),s=e,a=0;a<o.length;a++){var u=o[a],l=s[u];switch(typeof l){case"undefined":l=s[u]=Object.create(null);break;case"object":break;default:return void i("Ignoring "+t+" as "+o.slice(0,a+1).join(".")+" is "+JSON.stringify(l))}s=l}"object"==typeof s?s[r]=n:i("Ignoring "+t+" as "+o.join(".")+" is "+JSON.stringify(s))}function Lh(e,t){!function e(t,n){var i=n.shift();if(0===n.length)return void delete t[i];if(-1!==Object.keys(t).indexOf(i)){var o=t[i];"object"!=typeof o||Array.isArray(o)||(e(o,n),0===Object.keys(o).length&&delete t[i])}}(e,t.split("."))}function xh(e,t,n){var i=function(e,t){for(var n=e,i=0,o=t;i<o.length;i++){var r=o[i];if("object"!=typeof n||null===n)return;n=n[r]}return n}(e,t.split("."));return void 0===i?n:i}function Dh(e){return e.substring(1,e.length-1)}var Nh=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),kh=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},Eh=function(){function e(e,t,n){void 0===e&&(e={}),void 0===t&&(t=[]),void 0===n&&(n=[]),this._contents=e,this._keys=t,this._overrides=n,this.isFrozen=!1}return Object.defineProperty(e.prototype,"contents",{get:function(){return this.checkAndFreeze(this._contents)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"overrides",{get:function(){return this.checkAndFreeze(this._overrides)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"keys",{get:function(){return this.checkAndFreeze(this._keys)},enumerable:!0,configurable:!0}),e.prototype.isEmpty=function(){return 0===this._keys.length&&0===Object.keys(this._contents).length&&0===this._overrides.length},e.prototype.getValue=function(e){return e?xh(this.contents,e):this.contents},e.prototype.getOverrideValue=function(e,t){var n=this.getContentsForOverrideIdentifer(t);return n?e?xh(n,e):n:void 0},e.prototype.override=function(t){var n=this.getContentsForOverrideIdentifer(t);if(!n||"object"!=typeof n||!Object.keys(n).length)return this;for(var i={},o=0,r=Mi(kh(Object.keys(this.contents),Object.keys(n)));o<r.length;o++){var s=r[o],a=this.contents[s],u=n[s];u&&("object"==typeof a&&"object"==typeof u?(a=xa(a),this.mergeContents(a,u)):a=u),i[s]=a}return new e(i,this.keys,this.overrides)},e.prototype.merge=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];for(var i=xa(this.contents),o=xa(this.overrides),r=kh(this.keys),s=0,a=t;s<a.length;s++){var u=a[s];this.mergeContents(i,u.contents);for(var l=function(e){var t=o.filter((function(t){return xi(t.identifiers,e.identifiers)}))[0];t?c.mergeContents(t.contents,e.contents):o.push(xa(e))},c=this,d=0,h=u.overrides;d<h.length;d++){var p=h[d];l(p)}for(var f=0,g=u.keys;f<g.length;f++){var m=g[f];-1===r.indexOf(m)&&r.push(m)}}return new e(i,r,o)},e.prototype.freeze=function(){return this.isFrozen=!0,this},e.prototype.mergeContents=function(e,t){for(var n=0,i=Object.keys(t);n<i.length;n++){var o=i[n];o in e&&Fs(e[o])&&Fs(t[o])?this.mergeContents(e[o],t[o]):e[o]=xa(t[o])}},e.prototype.checkAndFreeze=function(e){return this.isFrozen&&!Object.isFrozen(e)?function(e){if(!e||"object"!=typeof e)return e;for(var t=[e];t.length>0;){var n=t.shift();for(var i in Object.freeze(n),n)if(Da.call(n,i)){var o=n[i];"object"!=typeof o||Object.isFrozen(o)||t.push(o)}}return e}(e):e},e.prototype.getContentsForOverrideIdentifer=function(e){for(var t=0,n=this.overrides;t<n.length;t++){var i=n[t];if(-1!==i.identifiers.indexOf(e))return i.contents}return null},e.prototype.toJSON=function(){return{contents:this.contents,overrides:this.overrides,keys:this.keys}},e.prototype.setValue=function(e,t){this.addKey(e),Sh(this.contents,e,t,(function(e){throw new Error(e)}))},e.prototype.removeValue=function(e){this.removeKey(e)&&Lh(this.contents,e)},e.prototype.addKey=function(e){for(var t=this.keys.length,n=0;n<t;n++)0===e.indexOf(this.keys[n])&&(t=n);this.keys.splice(t,1,e)},e.prototype.removeKey=function(e){var t=this.keys.indexOf(e);return-1!==t&&(this.keys.splice(t,1),!0)},e}(),Ih=function(e){function t(){for(var t,n=function(){var e=Object.create(null),t=Td.as(Ad).getConfigurationProperties();for(var n in t){Sh(e,n,t[n].default,(function(e){return console.error("Conflict in default settings: "+e)}))}return e}(),i=(t=Td.as(Ad).getConfigurationProperties(),Object.keys(t)),o=[],r=0,s=Object.keys(n);r<s.length;r++){var a=s[r];Kd.test(a)&&o.push({identifiers:[Dh(a).trim()],keys:Object.keys(n[a]),contents:Ch(n[a],(function(e){return console.error("Conflict in default settings file: "+e)}))})}return e.call(this,n,i,o)||this}return Nh(t,e),t}(Eh),Oh=function(){function e(e,t,n,i,o,r,s,a){void 0===n&&(n=new Eh),void 0===i&&(i=new Eh),void 0===o&&(o=new sa),void 0===r&&(r=new Eh),void 0===s&&(s=new sa),void 0===a&&(a=!0),this._defaultConfiguration=e,this._localUserConfiguration=t,this._remoteUserConfiguration=n,this._workspaceConfiguration=i,this._folderConfigurations=o,this._memoryConfiguration=r,this._memoryConfigurationByResource=s,this._freeze=a,this._workspaceConsolidatedConfiguration=null,this._foldersConsolidatedConfigurations=new sa,this._userConfiguration=null}return e.prototype.getValue=function(e,t,n){return this.getConsolidateConfigurationModel(t,n).getValue(e)},e.prototype.updateValue=function(e,t,n){var i;void 0===n&&(n={}),n.resource?(i=this._memoryConfigurationByResource.get(n.resource))||(i=new Eh,this._memoryConfigurationByResource.set(n.resource,i)):i=this._memoryConfiguration,void 0===t?i.removeValue(e):i.setValue(e,t),n.resource||(this._workspaceConsolidatedConfiguration=null)},e.prototype.inspect=function(e,t,n){var i=this.getConsolidateConfigurationModel(t,n),o=this.getFolderConfigurationModelForResource(t.resource,n),r=t.resource&&this._memoryConfigurationByResource.get(t.resource)||this._memoryConfiguration,s=t.overrideIdentifier?this._defaultConfiguration.freeze().override(t.overrideIdentifier).getValue(e):this._defaultConfiguration.freeze().getValue(e),a=t.overrideIdentifier?this.userConfiguration.freeze().override(t.overrideIdentifier).getValue(e):this.userConfiguration.freeze().getValue(e),u=t.overrideIdentifier?this.localUserConfiguration.freeze().override(t.overrideIdentifier).getValue(e):this.localUserConfiguration.freeze().getValue(e),l=t.overrideIdentifier?this.remoteUserConfiguration.freeze().override(t.overrideIdentifier).getValue(e):this.remoteUserConfiguration.freeze().getValue(e),c=n?t.overrideIdentifier?this._workspaceConfiguration.freeze().override(t.overrideIdentifier).getValue(e):this._workspaceConfiguration.freeze().getValue(e):void 0,d=o?t.overrideIdentifier?o.freeze().override(t.overrideIdentifier).getValue(e):o.freeze().getValue(e):void 0,h=t.overrideIdentifier?r.override(t.overrideIdentifier).getValue(e):r.getValue(e),p=i.getValue(e),f=Mi(Fi(i.overrides.map((function(e){return e.identifiers})))).filter((function(t){return void 0!==i.getOverrideValue(e,t)}));return{defaultValue:s,userValue:a,userLocalValue:u,userRemoteValue:l,workspaceValue:c,workspaceFolderValue:d,memoryValue:h,value:p,default:void 0!==s?{value:this._defaultConfiguration.freeze().getValue(e),override:t.overrideIdentifier?this._defaultConfiguration.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,user:void 0!==a?{value:this.userConfiguration.freeze().getValue(e),override:t.overrideIdentifier?this.userConfiguration.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,userLocal:void 0!==u?{value:this.localUserConfiguration.freeze().getValue(e),override:t.overrideIdentifier?this.localUserConfiguration.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,userRemote:void 0!==l?{value:this.remoteUserConfiguration.freeze().getValue(e),override:t.overrideIdentifier?this.remoteUserConfiguration.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,workspace:void 0!==c?{value:this._workspaceConfiguration.freeze().getValue(e),override:t.overrideIdentifier?this._workspaceConfiguration.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,workspaceFolder:void 0!==d?{value:null==o?void 0:o.freeze().getValue(e),override:t.overrideIdentifier?null==o?void 0:o.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,memory:void 0!==h?{value:r.getValue(e),override:t.overrideIdentifier?r.getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,overrideIdentifiers:f.length?f:void 0}},Object.defineProperty(e.prototype,"userConfiguration",{get:function(){return this._userConfiguration||(this._userConfiguration=this._remoteUserConfiguration.isEmpty()?this._localUserConfiguration:this._localUserConfiguration.merge(this._remoteUserConfiguration),this._freeze&&this._userConfiguration.freeze()),this._userConfiguration},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"localUserConfiguration",{get:function(){return this._localUserConfiguration},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"remoteUserConfiguration",{get:function(){return this._remoteUserConfiguration},enumerable:!0,configurable:!0}),e.prototype.getConsolidateConfigurationModel=function(e,t){var n=this.getConsolidatedConfigurationModelForResource(e,t);return e.overrideIdentifier?n.override(e.overrideIdentifier):n},e.prototype.getConsolidatedConfigurationModelForResource=function(e,t){var n=e.resource,i=this.getWorkspaceConsolidatedConfiguration();if(t&&n){var o=t.getFolder(n);o&&(i=this.getFolderConsolidatedConfiguration(o.uri)||i);var r=this._memoryConfigurationByResource.get(n);r&&(i=i.merge(r))}return i},e.prototype.getWorkspaceConsolidatedConfiguration=function(){return this._workspaceConsolidatedConfiguration||(this._workspaceConsolidatedConfiguration=this._defaultConfiguration.merge(this.userConfiguration,this._workspaceConfiguration,this._memoryConfiguration),this._freeze&&(this._workspaceConfiguration=this._workspaceConfiguration.freeze())),this._workspaceConsolidatedConfiguration},e.prototype.getFolderConsolidatedConfiguration=function(e){var t=this._foldersConsolidatedConfigurations.get(e);if(!t){var n=this.getWorkspaceConsolidatedConfiguration(),i=this._folderConfigurations.get(e);i?(t=n.merge(i),this._freeze&&(t=t.freeze()),this._foldersConsolidatedConfigurations.set(e,t)):t=n}return t},e.prototype.getFolderConfigurationModelForResource=function(e,t){if(t&&e){var n=t.getFolder(e);if(n)return this._folderConfigurations.get(n.uri)}},e}(),Mh=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Th=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r._contextKeyService=t,r._commandService=n,r._telemetryService=i,r._notificationService=o,r._onDidUpdateKeybindings=r._register(new nt),r._currentChord=null,r._currentChordChecker=new bi,r._currentChordStatusMessage=null,r}return Mh(t,e),Object.defineProperty(t.prototype,"onDidUpdateKeybindings",{get:function(){return this._onDidUpdateKeybindings?this._onDidUpdateKeybindings.event:Ge.None},enumerable:!0,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.getKeybindings=function(){return this._getResolver().getKeybindings()},t.prototype.lookupKeybinding=function(e){var t=this._getResolver().lookupPrimaryKeybinding(e);if(t)return t.resolvedKeybinding},t.prototype.softDispatch=function(e,t){var n=this.resolveKeyboardEvent(e);if(n.isChord())return console.warn("Unexpected keyboard event mapped to a chord"),null;var i=n.getDispatchParts()[0];if(null===i)return null;var o=this._contextKeyService.getContext(t),r=this._currentChord?this._currentChord.keypress:null;return this._getResolver().resolve(o,r,i)},t.prototype._enterChordMode=function(e,t){var n=this;this._currentChord={keypress:e,label:t},this._currentChordStatusMessage=this._notificationService.status(r("first.chord","({0}) was pressed. Waiting for second key of chord...",t));var i=Date.now();this._currentChordChecker.cancelAndSet((function(){n._documentHasFocus()?Date.now()-i>5e3&&n._leaveChordMode():n._leaveChordMode()}),500)},t.prototype._leaveChordMode=function(){this._currentChordStatusMessage&&(this._currentChordStatusMessage.dispose(),this._currentChordStatusMessage=null),this._currentChordChecker.cancel(),this._currentChord=null},t.prototype._dispatch=function(e,t){return this._doDispatch(this.resolveKeyboardEvent(e),t)},t.prototype._doDispatch=function(e,t){var n=this,i=!1;if(e.isChord())return console.warn("Unexpected keyboard event mapped to a chord"),!1;var o=e.getDispatchParts()[0];if(null===o)return i;var s=this._contextKeyService.getContext(t),a=this._currentChord?this._currentChord.keypress:null,u=e.getLabel(),l=this._getResolver().resolve(s,a,o);return l&&l.enterChord?(i=!0,this._enterChordMode(o,u),i):(this._currentChord&&(l&&l.commandId||(this._notificationService.status(r("missing.chord","The key combination ({0}, {1}) is not a command.",this._currentChord.label,u),{hideAfter:1e4}),i=!0)),this._leaveChordMode(),l&&l.commandId&&(l.bubble||(i=!0),void 0===l.commandArgs?this._commandService.executeCommand(l.commandId).then(void 0,(function(e){return n._notificationService.warn(e)})):this._commandService.executeCommand(l.commandId,l.commandArgs).then(void 0,(function(e){return n._notificationService.warn(e)})),this._telemetryService.publicLog2("workbenchActionExecuted",{id:l.commandId,from:"keybinding"})),i)},t.prototype.mightProducePrintableCharacter=function(e){return!e.ctrlKey&&!e.metaKey&&(e.keyCode>=31&&e.keyCode<=56||e.keyCode>=21&&e.keyCode<=30)},t}(He),Ph=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Rh=function(){function e(){}return e.has=function(e){return Fh.create(e)},e.equals=function(e,t){return Wh.create(e,t)},e.regex=function(e,t){return Hh.create(e,t)},e.not=function(e){return Bh.create(e)},e.and=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return jh.create(e)},e.or=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return Uh.create(e)},e.deserialize=function(e,t){if(void 0===t&&(t=!1),e)return this._deserializeOrExpression(e,t)},e._deserializeOrExpression=function(e,t){var n=this,i=e.split("||");return Uh.create(i.map((function(e){return n._deserializeAndExpression(e,t)})))},e._deserializeAndExpression=function(e,t){var n=this,i=e.split("&&");return jh.create(i.map((function(e){return n._deserializeOne(e,t)})))},e._deserializeOne=function(e,t){if((e=e.trim()).indexOf("!=")>=0){var n=e.split("!=");return Vh.create(n[0].trim(),this._deserializeValue(n[1],t))}if(e.indexOf("==")>=0){n=e.split("==");return Wh.create(n[0].trim(),this._deserializeValue(n[1],t))}if(e.indexOf("=~")>=0){n=e.split("=~");return Hh.create(n[0].trim(),this._deserializeRegexValue(n[1],t))}return/^\!\s*/.test(e)?Bh.create(e.substr(1).trim()):Fh.create(e)},e._deserializeValue=function(e,t){if("true"===(e=e.trim()))return!0;if("false"===e)return!1;var n=/^'([^']*)'$/.exec(e);return n?n[1].trim():e},e._deserializeRegexValue=function(e,t){if(cr(e)){if(t)throw new Error("missing regexp-value for =~-expression");return console.warn("missing regexp-value for =~-expression"),null}var n=e.indexOf("/"),i=e.lastIndexOf("/");if(n===i||n<0){if(t)throw new Error("bad regexp-value '"+e+"', missing /-enclosure");return console.warn("bad regexp-value '"+e+"', missing /-enclosure"),null}var o=e.slice(n+1,i),r="i"===e[i+1]?"i":"";try{return new RegExp(o,r)}catch(n){if(t)throw new Error("bad regexp-value '"+e+"', parse error: "+n);return console.warn("bad regexp-value '"+e+"', parse error: "+n),null}},e}();function Ah(e,t){var n=e.getType(),i=t.getType();if(n!==i)return n-i;switch(n){case 1:case 2:case 3:case 4:case 6:case 7:case 5:return e.cmp(t);default:throw new Error("Unknown ContextKeyExpr!")}}var Fh=function(){function e(e){this.key=e}return e.create=function(t){return new e(t)},e.prototype.getType=function(){return 1},e.prototype.cmp=function(e){return this.key<e.key?-1:this.key>e.key?1:0},e.prototype.equals=function(t){return t instanceof e&&this.key===t.key},e.prototype.evaluate=function(e){return!!e.getValue(this.key)},e.prototype.keys=function(){return[this.key]},e.prototype.negate=function(){return Bh.create(this.key)},e}(),Wh=function(){function e(e,t){this.key=e,this.value=t}return e.create=function(t,n){return"boolean"==typeof n?n?Fh.create(t):Bh.create(t):new e(t,n)},e.prototype.getType=function(){return 3},e.prototype.cmp=function(e){return this.key<e.key?-1:this.key>e.key?1:this.value<e.value?-1:this.value>e.value?1:0},e.prototype.equals=function(t){return t instanceof e&&(this.key===t.key&&this.value===t.value)},e.prototype.evaluate=function(e){return e.getValue(this.key)==this.value},e.prototype.keys=function(){return[this.key]},e.prototype.negate=function(){return Vh.create(this.key,this.value)},e}(),Vh=function(){function e(e,t){this.key=e,this.value=t}return e.create=function(t,n){return"boolean"==typeof n?n?Bh.create(t):Fh.create(t):new e(t,n)},e.prototype.getType=function(){return 4},e.prototype.cmp=function(e){return this.key<e.key?-1:this.key>e.key?1:this.value<e.value?-1:this.value>e.value?1:0},e.prototype.equals=function(t){return t instanceof e&&(this.key===t.key&&this.value===t.value)},e.prototype.evaluate=function(e){return e.getValue(this.key)!=this.value},e.prototype.keys=function(){return[this.key]},e.prototype.negate=function(){return Wh.create(this.key,this.value)},e}(),Bh=function(){function e(e){this.key=e}return e.create=function(t){return new e(t)},e.prototype.getType=function(){return 2},e.prototype.cmp=function(e){return this.key<e.key?-1:this.key>e.key?1:0},e.prototype.equals=function(t){return t instanceof e&&this.key===t.key},e.prototype.evaluate=function(e){return!e.getValue(this.key)},e.prototype.keys=function(){return[this.key]},e.prototype.negate=function(){return Fh.create(this.key)},e}(),Hh=function(){function e(e,t){this.key=e,this.regexp=t}return e.create=function(t,n){return new e(t,n)},e.prototype.getType=function(){return 6},e.prototype.cmp=function(e){if(this.key<e.key)return-1;if(this.key>e.key)return 1;var t=this.regexp?this.regexp.source:"",n=e.regexp?e.regexp.source:"";return t<n?-1:t>n?1:0},e.prototype.equals=function(t){if(t instanceof e){var n=this.regexp?this.regexp.source:"",i=t.regexp?t.regexp.source:"";return this.key===t.key&&n===i}return!1},e.prototype.evaluate=function(e){var t=e.getValue(this.key);return!!this.regexp&&this.regexp.test(t)},e.prototype.keys=function(){return[this.key]},e.prototype.negate=function(){return zh.create(this)},e}(),zh=function(){function e(e){this._actual=e}return e.create=function(t){return new e(t)},e.prototype.getType=function(){return 7},e.prototype.cmp=function(e){return this._actual.cmp(e._actual)},e.prototype.equals=function(t){return t instanceof e&&this._actual.equals(t._actual)},e.prototype.evaluate=function(e){return!this._actual.evaluate(e)},e.prototype.keys=function(){return this._actual.keys()},e.prototype.negate=function(){return this._actual},e}(),jh=function(){function e(e){this.expr=e}return e.create=function(t){var n=e._normalizeArr(t);if(0!==n.length)return 1===n.length?n[0]:new e(n)},e.prototype.getType=function(){return 5},e.prototype.cmp=function(e){if(this.expr.length<e.expr.length)return-1;if(this.expr.length>e.expr.length)return 1;for(var t=0,n=this.expr.length;t<n;t++){var i=Ah(this.expr[t],e.expr[t]);if(0!==i)return i}return 0},e.prototype.equals=function(t){if(t instanceof e){if(this.expr.length!==t.expr.length)return!1;for(var n=0,i=this.expr.length;n<i;n++)if(!this.expr[n].equals(t.expr[n]))return!1;return!0}return!1},e.prototype.evaluate=function(e){for(var t=0,n=this.expr.length;t<n;t++)if(!this.expr[t].evaluate(e))return!1;return!0},e._normalizeArr=function(t){var n=[];if(t){for(var i=0,o=t.length;i<o;i++){var r=t[i];if(r)if(r instanceof e)n=n.concat(r.expr);else{if(r instanceof Uh)throw new Error('It is not allowed to have an or expression here due to lack of parens! For example "a && (b||c)" is not supported, use "(a&&b) || (a&&c)" instead.');n.push(r)}}n.sort(Ah)}return n},e.prototype.keys=function(){for(var e=[],t=0,n=this.expr;t<n.length;t++){var i=n[t];e.push.apply(e,i.keys())}return e},e.prototype.negate=function(){for(var e=[],t=0,n=this.expr;t<n.length;t++){var i=n[t];e.push(i.negate())}return Uh.create(e)},e}(),Uh=function(){function e(e){this.expr=e}return e.create=function(t){var n=e._normalizeArr(t);if(0!==n.length)return 1===n.length?n[0]:new e(n)},e.prototype.getType=function(){return 8},e.prototype.equals=function(t){if(t instanceof e){if(this.expr.length!==t.expr.length)return!1;for(var n=0,i=this.expr.length;n<i;n++)if(!this.expr[n].equals(t.expr[n]))return!1;return!0}return!1},e.prototype.evaluate=function(e){for(var t=0,n=this.expr.length;t<n;t++)if(this.expr[t].evaluate(e))return!0;return!1},e._normalizeArr=function(t){var n=[];if(t){for(var i=0,o=t.length;i<o;i++){var r=t[i];r&&(r instanceof e?n=n.concat(r.expr):n.push(r))}n.sort(Ah)}return n},e.prototype.keys=function(){for(var e=[],t=0,n=this.expr;t<n.length;t++){var i=n[t];e.push.apply(e,i.keys())}return e},e.prototype.negate=function(){for(var t=[],n=0,i=this.expr;n<i.length;n++){var o=i[n];t.push(o.negate())}for(var r=function(t){return t instanceof e?t.expr:[t]};t.length>1;){for(var s=t.shift(),a=t.shift(),u=[],l=0,c=r(s);l<c.length;l++)for(var d=c[l],h=0,p=r(a);h<p.length;h++){var f=p[h];u.push(Rh.and(d,f))}t.unshift(Rh.or.apply(Rh,u))}return t[0]},e}(),Kh=function(e){function t(t,n){var i=e.call(this,t)||this;return i._defaultValue=n,i}return Ph(t,e),t.prototype.bindTo=function(e){return e.createKey(this.key,this._defaultValue)},t.prototype.getValue=function(e){return e.getContextKeyValue(this.key)},t.prototype.toNegated=function(){return Rh.not(this.key)},t}(Fh),qh=Mn("contextKeyService"),Gh=function(){function e(t,n){this._defaultKeybindings=t,this._defaultBoundCommands=new Map;for(var i=0,o=t.length;i<o;i++){var r=t[i].command;r&&this._defaultBoundCommands.set(r,!0)}this._map=new Map,this._lookupMap=new Map,this._keybindings=e.combine(t,n);for(i=0,o=this._keybindings.length;i<o;i++){var s=this._keybindings[i];0!==s.keypressParts.length&&this._addKeyPress(s.keypressParts[0],s)}}return e._isTargetedForRemoval=function(e,t,n,i,o){if(e.command!==i)return!1;if(t&&e.keypressParts[0]!==t)return!1;if(n&&e.keypressParts[1]!==n)return!1;if(o){if(!e.when)return!1;if(!o.equals(e.when))return!1}return!0},e.combine=function(e,t){e=e.slice(0);for(var n=[],i=0,o=t;i<o.length;i++){var r=o[i];if(r.command&&0!==r.command.length&&"-"===r.command.charAt(0))for(var s=r.command.substr(1),a=r.keypressParts[0],u=r.keypressParts[1],l=r.when,c=e.length-1;c>=0;c--)this._isTargetedForRemoval(e[c],a,u,s,l)&&e.splice(c,1);else n.push(r)}return e.concat(n)},e.prototype._addKeyPress=function(t,n){var i=this._map.get(t);if(void 0===i)return this._map.set(t,[n]),void this._addToLookupMap(n);for(var o=i.length-1;o>=0;o--){var r=i[o];if(r.command!==n.command){var s=r.keypressParts.length>1,a=n.keypressParts.length>1;s&&a&&r.keypressParts[1]!==n.keypressParts[1]||e.whenIsEntirelyIncluded(r.when,n.when)&&this._removeFromLookupMap(r)}}i.push(n),this._addToLookupMap(n)},e.prototype._addToLookupMap=function(e){if(e.command){var t=this._lookupMap.get(e.command);void 0===t?(t=[e],this._lookupMap.set(e.command,t)):t.push(e)}},e.prototype._removeFromLookupMap=function(e){if(e.command){var t=this._lookupMap.get(e.command);if(void 0!==t)for(var n=0,i=t.length;n<i;n++)if(t[n]===e)return void t.splice(n,1)}},e.whenIsEntirelyIncluded=function(e,t){return!t||!!e&&this._implies(e,t)},e._implies=function(e,t){for(var n=function(e){return e instanceof Uh?e.expr:[e]},i=n(e.negate()).concat(n(t)),o=0;o<i.length;o++)for(var r=i[o].negate(),s=o+1;s<i.length;s++){var a=i[s];if(r.equals(a))return!0}return!1},e.prototype.getKeybindings=function(){return this._keybindings},e.prototype.lookupPrimaryKeybinding=function(e){var t=this._lookupMap.get(e);return void 0===t||0===t.length?null:t[t.length-1]},e.prototype.resolve=function(e,t,n){var i=null;if(null!==t){if(void 0===(a=this._map.get(t)))return null;i=[];for(var o=0,r=a.length;o<r;o++){var s=a[o];s.keypressParts[1]===n&&i.push(s)}}else{var a;if(void 0===(a=this._map.get(n)))return null;i=a}var u=this._findCommand(e,i);return u?null===t&&u.keypressParts.length>1&&null!==u.keypressParts[1]?{enterChord:!0,commandId:null,commandArgs:null,bubble:!1}:{enterChord:!1,commandId:u.command,commandArgs:u.commandArgs,bubble:u.bubble}:null},e.prototype._findCommand=function(t,n){for(var i=n.length-1;i>=0;i--){var o=n[i];if(e.contextMatchesRules(t,o.when))return o}return null},e.contextMatchesRules=function(e,t){return!t||t.evaluate(e)},e}(),Zh=new(function(){function e(){this._coreKeybindings=[],this._extensionKeybindings=[],this._cachedMergedKeybindings=null}return e.bindToCurrentPlatform=function(e){if(1===x){if(e&&e.win)return e.win}else if(2===x){if(e&&e.mac)return e.mac}else if(e&&e.linux)return e.linux;return e},e.prototype.registerKeybindingRule=function(t){var n=e.bindToCurrentPlatform(t);n&&n.primary&&((r=mt(n.primary,x))&&this._registerDefaultKeybinding(r,t.id,t.args,t.weight,0,t.when));if(n&&Array.isArray(n.secondary))for(var i=0,o=n.secondary.length;i<o;i++){var r;(r=mt(n.secondary[i],x))&&this._registerDefaultKeybinding(r,t.id,t.args,t.weight,-i-1,t.when)}},e.prototype.registerCommandAndKeybindingRule=function(e){this.registerKeybindingRule(e),ca.registerCommand(e)},e._mightProduceChar=function(e){return e>=21&&e<=30||(e>=31&&e<=56||(80===e||81===e||82===e||83===e||84===e||85===e||86===e||110===e||111===e||87===e||88===e||89===e||90===e||91===e||92===e))},e.prototype._assertNoCtrlAlt=function(t,n){t.ctrlKey&&t.altKey&&!t.metaKey&&e._mightProduceChar(t.keyCode)&&console.warn("Ctrl+Alt+ keybindings should not be used by default under Windows. Offender: ",t," for ",n)},e.prototype._registerDefaultKeybinding=function(e,t,n,i,o,r){1===x&&this._assertNoCtrlAlt(e.parts[0],t),this._coreKeybindings.push({keybinding:e,command:t,commandArgs:n,when:r,weight1:i,weight2:o}),this._cachedMergedKeybindings=null},e.prototype.getDefaultKeybindings=function(){return this._cachedMergedKeybindings||(this._cachedMergedKeybindings=[].concat(this._coreKeybindings).concat(this._extensionKeybindings),this._cachedMergedKeybindings.sort(Yh)),this._cachedMergedKeybindings.slice(0)},e}());function Yh(e,t){return e.weight1!==t.weight1?e.weight1-t.weight1:e.command<t.command?-1:e.command>t.command?1:e.weight2-t.weight2}Td.add("platform.keybindingsRegistry",Zh);var Xh=function(e,t,n,i,o){this.resolvedKeybinding=e,this.keypressParts=e?function(e){for(var t=[],n=0,i=e.length;n<i;n++){var o=e[n];if(!o)return t;t.push(o)}return t}(e.getDispatchParts()):[],this.bubble=!!t&&94===t.charCodeAt(0),this.command=this.bubble?t.substr(1):t,this.commandArgs=n,this.when=i,this.isDefault=o};var $h=function(){function e(e,t,n){void 0===n&&(n=t),this.modifierLabels=[null],this.modifierLabels[2]=e,this.modifierLabels[1]=t,this.modifierLabels[3]=n}return e.prototype.toLabel=function(e,t,n){if(0===t.length)return null;for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=n(s);if(null===a)return null;i[o]=ep(s,a,this.modifierLabels[e])}return i.join(" ")},e}(),Qh=new $h({ctrlKey:"⌃",shiftKey:"⇧",altKey:"⌥",metaKey:"⌘",separator:""},{ctrlKey:r({key:"ctrlKey",comment:["This is the short form for the Control key on the keyboard"]},"Ctrl"),shiftKey:r({key:"shiftKey",comment:["This is the short form for the Shift key on the keyboard"]},"Shift"),altKey:r({key:"altKey",comment:["This is the short form for the Alt key on the keyboard"]},"Alt"),metaKey:r({key:"windowsKey",comment:["This is the short form for the Windows key on the keyboard"]},"Windows"),separator:"+"},{ctrlKey:r({key:"ctrlKey",comment:["This is the short form for the Control key on the keyboard"]},"Ctrl"),shiftKey:r({key:"shiftKey",comment:["This is the short form for the Shift key on the keyboard"]},"Shift"),altKey:r({key:"altKey",comment:["This is the short form for the Alt key on the keyboard"]},"Alt"),metaKey:r({key:"superKey",comment:["This is the short form for the Super key on the keyboard"]},"Super"),separator:"+"}),Jh=new $h({ctrlKey:r({key:"ctrlKey.long",comment:["This is the long form for the Control key on the keyboard"]},"Control"),shiftKey:r({key:"shiftKey.long",comment:["This is the long form for the Shift key on the keyboard"]},"Shift"),altKey:r({key:"altKey.long",comment:["This is the long form for the Alt key on the keyboard"]},"Alt"),metaKey:r({key:"cmdKey.long",comment:["This is the long form for the Command key on the keyboard"]},"Command"),separator:"+"},{ctrlKey:r({key:"ctrlKey.long",comment:["This is the long form for the Control key on the keyboard"]},"Control"),shiftKey:r({key:"shiftKey.long",comment:["This is the long form for the Shift key on the keyboard"]},"Shift"),altKey:r({key:"altKey.long",comment:["This is the long form for the Alt key on the keyboard"]},"Alt"),metaKey:r({key:"windowsKey.long",comment:["This is the long form for the Windows key on the keyboard"]},"Windows"),separator:"+"},{ctrlKey:r({key:"ctrlKey.long",comment:["This is the long form for the Control key on the keyboard"]},"Control"),shiftKey:r({key:"shiftKey.long",comment:["This is the long form for the Shift key on the keyboard"]},"Shift"),altKey:r({key:"altKey.long",comment:["This is the long form for the Alt key on the keyboard"]},"Alt"),metaKey:r({key:"superKey.long",comment:["This is the long form for the Super key on the keyboard"]},"Super"),separator:"+"});function ep(e,t,n){if(null===t)return"";var i=[];return e.ctrlKey&&i.push(n.ctrlKey),e.shiftKey&&i.push(n.shiftKey),e.altKey&&i.push(n.altKey),e.metaKey&&i.push(n.metaKey),i.push(t),i.join(n.separator)}var tp,np,ip=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),op=function(e){function t(t,n){var i=e.call(this)||this;if(0===n.length)throw Oe("parts");return i._os=t,i._parts=n,i}return ip(t,e),t.prototype.getLabel=function(){var e=this;return Qh.toLabel(this._os,this._parts,(function(t){return e._getLabel(t)}))},t.prototype.getAriaLabel=function(){var e=this;return Jh.toLabel(this._os,this._parts,(function(t){return e._getAriaLabel(t)}))},t.prototype.isChord=function(){return this._parts.length>1},t.prototype.getParts=function(){var e=this;return this._parts.map((function(t){return e._getPart(t)}))},t.prototype._getPart=function(e){return new wt(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,this._getLabel(e),this._getAriaLabel(e))},t.prototype.getDispatchParts=function(){var e=this;return this._parts.map((function(t){return e._getDispatchPart(t)}))},t}(Ct),rp=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),sp=function(e){function t(t,n){return e.call(this,n,t.parts)||this}return rp(t,e),t.prototype._keyCodeToUILabel=function(e){if(2===this._os)switch(e){case 15:return"←";case 16:return"↑";case 17:return"→";case 18:return"↓"}return ut.toString(e)},t.prototype._getLabel=function(e){return e.isDuplicateModifierCase()?"":this._keyCodeToUILabel(e.keyCode)},t.prototype._getAriaLabel=function(e){return e.isDuplicateModifierCase()?"":ut.toString(e.keyCode)},t.prototype._getDispatchPart=function(e){return t.getDispatchStr(e)},t.getDispatchStr=function(e){if(e.isModifierKey())return null;var t="";return e.ctrlKey&&(t+="ctrl+"),e.shiftKey&&(t+="shift+"),e.altKey&&(t+="alt+"),e.metaKey&&(t+="meta+"),t+=ut.toString(e.keyCode)},t}(op),ap=Mn("notificationService"),up=function(){},lp=Mn("contextService");!function(e){e.isIWorkspace=function(e){return e&&"object"==typeof e&&"string"==typeof e.id&&Array.isArray(e.folders)}}(tp||(tp={})),(np||(np={})).isIWorkspaceFolder=function(e){return e&&"object"==typeof e&&Et.isUri(e.uri)&&"string"==typeof e.name&&"function"==typeof e.toResource};!function(){function e(e,t,n){void 0===t&&(t=[]),void 0===n&&(n=null),this._id=e,this._configuration=n,this._foldersMap=ra.forPaths(),this.folders=t}Object.defineProperty(e.prototype,"folders",{get:function(){return this._folders},set:function(e){this._folders=e,this.updateFoldersMap()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"id",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"configuration",{get:function(){return this._configuration},set:function(e){this._configuration=e},enumerable:!0,configurable:!0}),e.prototype.getFolder=function(e){return e&&this._foldersMap.findSubstr(e.with({scheme:e.scheme,authority:e.authority,path:e.path}).toString())||null},e.prototype.updateFoldersMap=function(){this._foldersMap=ra.forPaths();for(var e=0,t=this.folders;e<t.length;e++){var n=t[e];this._foldersMap.set(n.uri.toString(),n)}},e.prototype.toJSON=function(){return{id:this.id,folders:this.folders,configuration:this.configuration}}}();var cp,dp,hp,pp,fp,gp,mp,vp,_p,yp,bp,wp,Cp,Sp=function(){function e(e,t){this.raw=t,this.uri=e.uri,this.index=e.index,this.name=e.name}return e.prototype.toResource=function(e){return function(e){for(var t,n,o=[],r=1;r<arguments.length;r++)o[r-1]=arguments[r];return n=e.scheme===Ci.file?Et.file(fs.apply(i,ws([ks(e)],o))).path:(t=hs).join.apply(t,ws([e.path||"/"],o)),e.with({path:n})}(this.uri,e)},e.prototype.toJSON=function(){return{uri:this.uri,name:this.name,index:this.index}},e}();(dp=cp||(cp={})).noSelection=r("noSelection","No selection"),dp.singleSelectionRange=r("singleSelectionRange","Line {0}, Column {1} ({2} selected)"),dp.singleSelection=r("singleSelection","Line {0}, Column {1}"),dp.multiSelectionRange=r("multiSelectionRange","{0} selections ({1} characters selected)"),dp.multiSelection=r("multiSelection","{0} selections"),dp.emergencyConfOn=r("emergencyConfOn","Now changing the setting `accessibilitySupport` to 'on'."),dp.openingDocs=r("openingDocs","Now opening the Editor Accessibility documentation page."),dp.readonlyDiffEditor=r("readonlyDiffEditor"," in a read-only pane of a diff editor."),dp.editableDiffEditor=r("editableDiffEditor"," in a pane of a diff editor."),dp.readonlyEditor=r("readonlyEditor"," in a read-only code editor"),dp.editableEditor=r("editableEditor"," in a code editor"),dp.changeConfigToOnMac=r("changeConfigToOnMac","To configure the editor to be optimized for usage with a Screen Reader press Command+E now."),dp.changeConfigToOnWinLinux=r("changeConfigToOnWinLinux","To configure the editor to be optimized for usage with a Screen Reader press Control+E now."),dp.auto_on=r("auto_on","The editor is configured to be optimized for usage with a Screen Reader."),dp.auto_off=r("auto_off","The editor is configured to never be optimized for usage with a Screen Reader, which is not the case at this time."),dp.tabFocusModeOnMsg=r("tabFocusModeOnMsg","Pressing Tab in the current editor will move focus to the next focusable element. Toggle this behavior by pressing {0}."),dp.tabFocusModeOnMsgNoKb=r("tabFocusModeOnMsgNoKb","Pressing Tab in the current editor will move focus to the next focusable element. The command {0} is currently not triggerable by a keybinding."),dp.tabFocusModeOffMsg=r("tabFocusModeOffMsg","Pressing Tab in the current editor will insert the tab character. Toggle this behavior by pressing {0}."),dp.tabFocusModeOffMsgNoKb=r("tabFocusModeOffMsgNoKb","Pressing Tab in the current editor will insert the tab character. The command {0} is currently not triggerable by a keybinding."),dp.openDocMac=r("openDocMac","Press Command+H now to open a browser window with more information related to editor accessibility."),dp.openDocWinLinux=r("openDocWinLinux","Press Control+H now to open a browser window with more information related to editor accessibility."),dp.outroMsg=r("outroMsg","You can dismiss this tooltip and return to the editor by pressing Escape or Shift+Escape."),dp.showAccessibilityHelpAction=r("showAccessibilityHelpAction","Show Accessibility Help"),(hp||(hp={})).inspectTokensAction=r("inspectTokens","Developer: Inspect Tokens"),(fp=pp||(pp={})).gotoLineLabelValidLineAndColumn=r("gotoLineLabelValidLineAndColumn","Go to line {0} and character {1}"),fp.gotoLineLabelValidLine=r("gotoLineLabelValidLine","Go to line {0}"),fp.gotoLineLabelEmptyWithLineLimit=r("gotoLineLabelEmptyWithLineLimit","Type a line number between 1 and {0} to navigate to"),fp.gotoLineLabelEmptyWithLineAndColumnLimit=r("gotoLineLabelEmptyWithLineAndColumnLimit","Type a character between 1 and {0} to navigate to"),fp.gotoLineAriaLabel=r("gotoLineAriaLabel","Current Line: {0}. Go to line {1}."),fp.gotoLineActionInput=r("gotoLineActionInput","Type a line number, followed by an optional colon and a character number to navigate to"),fp.gotoLineActionLabel=r("gotoLineActionLabel","Go to Line..."),(mp=gp||(gp={})).ariaLabelEntryWithKey=r("ariaLabelEntryWithKey","{0}, {1}, commands"),mp.ariaLabelEntry=r("ariaLabelEntry","{0}, commands"),mp.quickCommandActionInput=r("quickCommandActionInput","Type the name of an action you want to execute"),mp.quickCommandActionLabel=r("quickCommandActionLabel","Command Palette"),(_p=vp||(vp={})).entryAriaLabel=r("entryAriaLabel","{0}, symbols"),_p.quickOutlineActionInput=r("quickOutlineActionInput","Type the name of an identifier you wish to navigate to"),_p.quickOutlineActionLabel=r("quickOutlineActionLabel","Go to Symbol..."),_p._symbols_=r("symbols","symbols ({0})"),_p._modules_=r("modules","modules ({0})"),_p._class_=r("class","classes ({0})"),_p._interface_=r("interface","interfaces ({0})"),_p._method_=r("method","methods ({0})"),_p._function_=r("function","functions ({0})"),_p._property_=r("property","properties ({0})"),_p._variable_=r("variable","variables ({0})"),_p._variable2_=r("variable2","variables ({0})"),_p._constructor_=r("_constructor","constructors ({0})"),_p._call_=r("call","calls ({0})"),(bp=yp||(yp={})).editorViewAccessibleLabel=r("editorViewAccessibleLabel","Editor content"),bp.accessibilityHelpMessageIE=r("accessibilityHelpMessageIE","Press Ctrl+F1 for Accessibility Options."),bp.accessibilityHelpMessage=r("accessibilityHelpMessage","Press Alt+F1 for Accessibility Options."),(wp||(wp={})).toggleHighContrast=r("toggleHighContrast","Toggle High Contrast Theme"),(Cp||(Cp={})).bulkEditServiceSummary=r("bulkEditServiceSummary","Made {0} edits in {1} files");var Lp=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),xp=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Dp=function(e,t){return function(n,i){t(n,i,e)}},Np=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},kp=function(){function e(e){this.model=e,this._onDispose=new nt}return Object.defineProperty(e.prototype,"textEditorModel",{get:function(){return this.model},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){this._onDispose.fire()},e}();var Ep=function(){function e(e){this.modelService=e}return e.prototype.setEditor=function(e){this.editor=e},e.prototype.createModelReference=function(e){var t,n,i,o=this,r=null;return this.editor&&(t=this.editor,n=function(t){return o.findModel(t,e)},i=function(t){return o.findModel(t.getOriginalEditor(),e)||o.findModel(t.getModifiedEditor(),e)},r=Md(t)?n(t):i(t)),r?Promise.resolve(new je(new kp(r))):Promise.reject(new Error("Model not found"))},e.prototype.findModel=function(e,t){var n=this.modelService?this.modelService.getModel(t):e.getModel();return n&&n.uri.toString()!==t.toString()?null:n},e}(),Ip=function(){function e(){}return e.prototype.show=function(){return e.NULL_PROGRESS_RUNNER},e.prototype.showWhile=function(e,t){return Promise.resolve(void 0)},e.NULL_PROGRESS_RUNNER={done:function(){},total:function(){},worked:function(){}},e}(),Op=function(){},Mp=function(){function e(){}return e.prototype.info=function(e){return this.notify({severity:Od.Info,message:e})},e.prototype.warn=function(e){return this.notify({severity:Od.Warning,message:e})},e.prototype.error=function(e){return this.notify({severity:Od.Error,message:e})},e.prototype.notify=function(t){switch(t.severity){case Od.Error:console.error(t.message);break;case Od.Warning:console.warn(t.message);break;default:console.log(t.message)}return e.NO_OP},e.prototype.status=function(e,t){return He.None},e.NO_OP=new up,e}(),Tp=function(){function e(e){this._onWillExecuteCommand=new nt,this._onDidExecuteCommand=new nt,this._instantiationService=e,this._dynamicCommands=Object.create(null)}return e.prototype.addCommand=function(e){var t=this,n=e.id;return this._dynamicCommands[n]=e,We((function(){delete t._dynamicCommands[n]}))},e.prototype.executeCommand=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=ca.getCommand(e)||this._dynamicCommands[e];if(!i)return Promise.reject(new Error("command '"+e+"' not found"));try{this._onWillExecuteCommand.fire({commandId:e,args:t});var o=this._instantiationService.invokeFunction.apply(this._instantiationService,Np([i.handler],t));return this._onDidExecuteCommand.fire({commandId:e,args:t}),Promise.resolve(o)}catch(e){return Promise.reject(e)}},e}(),Pp=function(e){function t(t,n,i,o,r){var s=e.call(this,t,n,i,o)||this;return s._cachedResolver=null,s._dynamicKeybindings=[],s._register(uo(r,qo.KEY_DOWN,(function(e){var t=new ni(e);s._dispatch(t,t.target)&&(t.preventDefault(),t.stopPropagation())}))),s}return Lp(t,e),t.prototype.addDynamicKeybinding=function(e,t,n,i){var o=this,r=mt(t,x),s=new Be;r&&(this._dynamicKeybindings.push({keybinding:r,command:e,when:i,weight1:1e3,weight2:0}),s.add(We((function(){for(var t=0;t<o._dynamicKeybindings.length;t++){if(o._dynamicKeybindings[t].command===e)return o._dynamicKeybindings.splice(t,1),void o.updateResolver({source:1})}}))));var a=this._commandService;if(!(a instanceof Tp))throw new Error("Unknown command service!");return s.add(a.addCommand({id:e,handler:n})),this.updateResolver({source:1}),s},t.prototype.updateResolver=function(e){this._cachedResolver=null,this._onDidUpdateKeybindings.fire(e)},t.prototype._getResolver=function(){if(!this._cachedResolver){var e=this._toNormalizedKeybindingItems(Zh.getDefaultKeybindings(),!0),t=this._toNormalizedKeybindingItems(this._dynamicKeybindings,!1);this._cachedResolver=new Gh(e,t)}return this._cachedResolver},t.prototype._documentHasFocus=function(){return document.hasFocus()},t.prototype._toNormalizedKeybindingItems=function(e,t){for(var n=[],i=0,o=0,r=e;o<r.length;o++){var s=r[o],a=s.when||void 0,u=s.keybinding;if(u)for(var l=0,c=this.resolveKeybinding(u);l<c.length;l++){var d=c[l];n[i++]=new Xh(d,s.command,s.commandArgs,a,t)}else n[i++]=new Xh(void 0,s.command,s.commandArgs,a,t)}return n},t.prototype.resolveKeybinding=function(e){return[new sp(e,x)]},t.prototype.resolveKeyboardEvent=function(e){var t=new yt(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,e.keyCode).toChord();return new sp(t,x)},t}(Th);function Rp(e){return e&&"object"==typeof e&&(!e.overrideIdentifier||"string"==typeof e.overrideIdentifier)&&(!e.resource||e.resource instanceof Et)}var Ap=function(){function e(){this._onDidChangeConfiguration=new nt,this.onDidChangeConfiguration=this._onDidChangeConfiguration.event,this._configuration=new Oh(new Ih,new Eh)}return e.prototype.configuration=function(){return this._configuration},e.prototype.getValue=function(e,t){var n="string"==typeof e?e:void 0,i=Rp(e)?e:Rp(t)?t:{};return this.configuration().getValue(n,i,void 0)},e.prototype.updateValue=function(e,t,n,i){return this.configuration().updateValue(e,t),Promise.resolve()},e.prototype.inspect=function(e,t){return void 0===t&&(t={}),this.configuration().inspect(e,t,void 0)},e}(),Fp=function(){function e(e){var t=this;this.configurationService=e,this._onDidChangeConfiguration=new nt,this.configurationService.onDidChangeConfiguration((function(e){t._onDidChangeConfiguration.fire({affectedKeys:e.affectedKeys,affectsConfiguration:function(t,n){return e.affectsConfiguration(n)}})}))}return e.prototype.getValue=function(e,t,n){var i=(bn.isIPosition(t)?t:null)?"string"==typeof n?n:void 0:"string"==typeof t?t:void 0;return void 0===i?this.configurationService.getValue():this.configurationService.getValue(i)},e}(),Wp=function(){function e(e){this.configurationService=e}return e.prototype.getEOL=function(e,t){var n=this.configurationService.getValue("files.eol",{overrideIdentifier:t,resource:e});return n&&"auto"!==n?n:y||_?"\n":"\r\n"},e=xp([Dp(0,wh)],e)}(),Vp=function(){function e(){}return e.prototype.publicLog=function(e,t){return Promise.resolve(void 0)},e.prototype.publicLog2=function(e,t){return this.publicLog(e,t)},e}(),Bp=function(){function e(){var t=Et.from({scheme:e.SCHEME,authority:"model",path:"/"});this.workspace={id:"4064f6ec-cb38-4ad0-af64-ee6467e63c82",folders:[new Sp({uri:t,name:"",index:0})]}}return e.prototype.getWorkspace=function(){return this.workspace},e.prototype.getWorkspaceFolder=function(t){return t&&t.scheme===e.SCHEME?this.workspace.folders[0]:null},e.SCHEME="inmemory",e}();function Hp(e,t,n){t&&e instanceof Ap&&Object.keys(t).forEach((function(i){(function(e){return yh()["editor."+e]||!1})(i)&&e.updateValue("editor."+i,t[i]),n&&function(e){return yh()["diffEditor."+e]||!1}(i)&&e.updateValue("diffEditor."+i,t[i])}))}var zp,jp,Up,Kp=function(){function e(e){this._modelService=e}return e.prototype.hasPreviewHandler=function(){return!1},e.prototype.apply=function(e,t){var n=new Map;if(e.edits)for(var i=0,o=e.edits;i<o.length;i++){var r=o[i];if(!xu.is(r))return Promise.reject(new Error("bad edit - only text edits are supported"));var s=this._modelService.getModel(r.resource);if(!s)return Promise.reject(new Error("bad edit - model not found"));var a=n.get(s);a||(a=[],n.set(s,a)),a.push(r.edit)}var u=0,l=0;return n.forEach((function(e,t){t.pushStackElement(),t.pushEditOperations([],e.map((function(e){return bh.replaceMove(wn.lift(e.range),e.text)})),(function(){return[]})),t.pushStackElement(),l+=1,u+=e.length})),Promise.resolve({selection:void 0,ariaSummary:pr(Cp.bulkEditServiceSummary,u,l)})},e}(),qp=function(){function e(){}return e.prototype.getUriLabel=function(e,t){return"file"===e.scheme?e.fsPath:e.path},e}(),Gp=function(){function e(e){this._container=e,this.onLayout=Ge.None}return Object.defineProperty(e.prototype,"container",{get:function(){return this._container},enumerable:!0,configurable:!0}),e}();n(371);function Zp(e,t){Qp(jp,e,t)}function Yp(e,t){_?Zp(e,t):Qp(Up,e,t)}var Xp=0,$p=void 0;function Qp(e,t,n){if(zp){if(!n)switch($p===t?Xp++:($p=t,Xp=0),Xp){case 0:break;case 1:t=r("repeated","{0} (occurred again)",t);break;default:t=r("repeatedNtimes","{0} (occurred {1} times)",t,Xp)}Yi(e),e.textContent=t,e.style.visibility="hidden",e.style.visibility="visible"}}n(372);var Jp=function(){function e(e,t){this.chr=e,this.type=t,this.width=0}return e.prototype.fulfill=function(e){this.width=e},e}(),ef=function(){function e(e,t){this._bareFontInfo=e,this._requests=t,this._container=null,this._testElements=null}return e.prototype.read=function(){this._createDomElements(),document.body.appendChild(this._container),this._readFromDomElements(),document.body.removeChild(this._container),this._container=null,this._testElements=null},e.prototype._createDomElements=function(){var t=document.createElement("div");t.style.position="absolute",t.style.top="-50000px",t.style.width="50000px";var n=document.createElement("div");n.style.fontFamily=this._bareFontInfo.getMassagedFontFamily(),n.style.fontWeight=this._bareFontInfo.fontWeight,n.style.fontSize=this._bareFontInfo.fontSize+"px",n.style.fontFeatureSettings=this._bareFontInfo.fontFeatureSettings,n.style.lineHeight=this._bareFontInfo.lineHeight+"px",n.style.letterSpacing=this._bareFontInfo.letterSpacing+"px",t.appendChild(n);var i=document.createElement("div");i.style.fontFamily=this._bareFontInfo.getMassagedFontFamily(),i.style.fontWeight="bold",i.style.fontSize=this._bareFontInfo.fontSize+"px",i.style.fontFeatureSettings=this._bareFontInfo.fontFeatureSettings,i.style.lineHeight=this._bareFontInfo.lineHeight+"px",i.style.letterSpacing=this._bareFontInfo.letterSpacing+"px",t.appendChild(i);var o=document.createElement("div");o.style.fontFamily=this._bareFontInfo.getMassagedFontFamily(),o.style.fontWeight=this._bareFontInfo.fontWeight,o.style.fontSize=this._bareFontInfo.fontSize+"px",o.style.fontFeatureSettings=this._bareFontInfo.fontFeatureSettings,o.style.lineHeight=this._bareFontInfo.lineHeight+"px",o.style.letterSpacing=this._bareFontInfo.letterSpacing+"px",o.style.fontStyle="italic",t.appendChild(o);for(var r=[],s=0,a=this._requests;s<a.length;s++){var u=a[s],l=void 0;0===u.type&&(l=n),2===u.type&&(l=i),1===u.type&&(l=o),l.appendChild(document.createElement("br"));var c=document.createElement("span");e._render(c,u),l.appendChild(c),r.push(c)}this._container=t,this._testElements=r},e._render=function(e,t){if(" "===t.chr){for(var n=" ",i=0;i<8;i++)n+=n;e.innerHTML=n}else{var o=t.chr;for(i=0;i<8;i++)o+=o;e.textContent=o}},e.prototype._readFromDomElements=function(){for(var e=0,t=this._requests.length;e<t;e++){var n=this._requests[e],i=this._testElements[e];n.fulfill(i.offsetWidth/256)}},e}();var tf=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),nf=function(e){function t(t,n,i){var o=e.call(this)||this;return o.referenceDomElement=t,o.changeCallback=i,o.width=-1,o.height=-1,o.mutationObserver=null,o.windowSizeListener=null,o.measureReferenceDomElement(!1,n),o}return tf(t,e),t.prototype.dispose=function(){this.stopObserving(),e.prototype.dispose.call(this)},t.prototype.getWidth=function(){return this.width},t.prototype.getHeight=function(){return this.height},t.prototype.startObserving=function(){var e=this;!this.mutationObserver&&this.referenceDomElement&&(this.mutationObserver=new MutationObserver((function(){return e._onDidMutate()})),this.mutationObserver.observe(this.referenceDomElement,{attributes:!0})),this.windowSizeListener||(this.windowSizeListener=uo(window,"resize",(function(){return e._onDidResizeWindow()})))},t.prototype.stopObserving=function(){this.mutationObserver&&(this.mutationObserver.disconnect(),this.mutationObserver=null),this.windowSizeListener&&(this.windowSizeListener.dispose(),this.windowSizeListener=null)},t.prototype.observe=function(e){this.measureReferenceDomElement(!0,e)},t.prototype._onDidMutate=function(){this.measureReferenceDomElement(!0)},t.prototype._onDidResizeWindow=function(){this.measureReferenceDomElement(!0)},t.prototype.measureReferenceDomElement=function(e,t){var n=0,i=0;t?(n=t.width,i=t.height):this.referenceDomElement&&(n=this.referenceDomElement.clientWidth,i=this.referenceDomElement.clientHeight),n=Math.max(5,n),i=Math.max(5,i),this.width===n&&this.height===i||(this.width=n,this.height=i,e&&this.changeCallback())},t}(He),of=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),rf=function(){function e(){this._keys=Object.create(null),this._values=Object.create(null)}return e.prototype.has=function(e){var t=e.getId();return!!this._values[t]},e.prototype.get=function(e){var t=e.getId();return this._values[t]},e.prototype.put=function(e,t){var n=e.getId();this._keys[n]=e,this._values[n]=t},e.prototype.remove=function(e){var t=e.getId();delete this._keys[t],delete this._values[t]},e.prototype.getValues=function(){var e=this;return Object.keys(this._keys).map((function(t){return e._values[t]}))},e}();var sf=function(e){function t(){var t=e.call(this)||this;return t._onDidChange=t._register(new nt),t.onDidChange=t._onDidChange.event,t._cache=new rf,t._evictUntrustedReadingsTimeout=-1,t}return of(t,e),t.prototype.dispose=function(){-1!==this._evictUntrustedReadingsTimeout&&(clearTimeout(this._evictUntrustedReadingsTimeout),this._evictUntrustedReadingsTimeout=-1),e.prototype.dispose.call(this)},t.prototype.clearCache=function(){this._cache=new rf,this._onDidChange.fire()},t.prototype._writeToCache=function(e,t){var n=this;this._cache.put(e,t),t.isTrusted||-1!==this._evictUntrustedReadingsTimeout||(this._evictUntrustedReadingsTimeout=setTimeout((function(){n._evictUntrustedReadingsTimeout=-1,n._evictUntrustedReadings()}),5e3))},t.prototype._evictUntrustedReadings=function(){for(var e=this._cache.getValues(),t=!1,n=0,i=e.length;n<i;n++){var o=e[n];o.isTrusted||(t=!0,this._cache.remove(o))}t&&this._onDidChange.fire()},t.prototype.readConfiguration=function(e){if(!this._cache.has(e)){var n=t._actualReadConfiguration(e);(n.typicalHalfwidthCharacterWidth<=2||n.typicalFullwidthCharacterWidth<=2||n.spaceWidth<=2||n.maxDigitWidth<=2)&&(n=new Wa({zoomLevel:An(),fontFamily:n.fontFamily,fontWeight:n.fontWeight,fontSize:n.fontSize,fontFeatureSettings:n.fontFeatureSettings,lineHeight:n.lineHeight,letterSpacing:n.letterSpacing,isMonospace:n.isMonospace,typicalHalfwidthCharacterWidth:Math.max(n.typicalHalfwidthCharacterWidth,5),typicalFullwidthCharacterWidth:Math.max(n.typicalFullwidthCharacterWidth,5),canUseHalfwidthRightwardsArrow:n.canUseHalfwidthRightwardsArrow,spaceWidth:Math.max(n.spaceWidth,5),middotWidth:Math.max(n.middotWidth,5),maxDigitWidth:Math.max(n.maxDigitWidth,5)},!1)),this._writeToCache(e,n)}return this._cache.get(e)},t.createRequest=function(e,t,n,i){var o=new Jp(e,t);return n.push(o),i&&i.push(o),o},t._actualReadConfiguration=function(e){var t=[],n=[],i=this.createRequest("n",0,t,n),o=this.createRequest("m",0,t,null),r=this.createRequest(" ",0,t,n),s=this.createRequest("0",0,t,n),a=this.createRequest("1",0,t,n),u=this.createRequest("2",0,t,n),l=this.createRequest("3",0,t,n),c=this.createRequest("4",0,t,n),d=this.createRequest("5",0,t,n),h=this.createRequest("6",0,t,n),p=this.createRequest("7",0,t,n),f=this.createRequest("8",0,t,n),g=this.createRequest("9",0,t,n),m=this.createRequest("→",0,t,n),v=this.createRequest("→",0,t,null),_=this.createRequest("·",0,t,n);this.createRequest("|",0,t,n),this.createRequest("/",0,t,n),this.createRequest("-",0,t,n),this.createRequest("_",0,t,n),this.createRequest("i",0,t,n),this.createRequest("l",0,t,n),this.createRequest("m",0,t,n),this.createRequest("|",1,t,n),this.createRequest("_",1,t,n),this.createRequest("i",1,t,n),this.createRequest("l",1,t,n),this.createRequest("m",1,t,n),this.createRequest("n",1,t,n),this.createRequest("|",2,t,n),this.createRequest("_",2,t,n),this.createRequest("i",2,t,n),this.createRequest("l",2,t,n),this.createRequest("m",2,t,n),this.createRequest("n",2,t,n),function(e,t){new ef(e,t).read()}(e,t);for(var y=Math.max(s.width,a.width,u.width,l.width,c.width,d.width,h.width,p.width,f.width,g.width),b=e.fontFeatureSettings===Y.OFF,w=n[0].width,C=1,S=n.length;b&&C<S;C++){var L=w-n[C].width;if(L<-.001||L>.001){b=!1;break}}var x=!0;b&&v.width!==w&&(x=!1),v.width>m.width&&(x=!1);var D=Rn.INSTANCE.getTimeSinceLastZoomLevelChanged()>2e3;return new Wa({zoomLevel:An(),fontFamily:e.fontFamily,fontWeight:e.fontWeight,fontSize:e.fontSize,fontFeatureSettings:e.fontFeatureSettings,lineHeight:e.lineHeight,letterSpacing:e.letterSpacing,isMonospace:b,typicalHalfwidthCharacterWidth:i.width,typicalFullwidthCharacterWidth:o.width,canUseHalfwidthRightwardsArrow:x,spaceWidth:r.width,middotWidth:_.width,maxDigitWidth:y},D)},t.INSTANCE=new t,t}(He),af=function(e){function t(t,n,i,o){void 0===i&&(i=null);var r=e.call(this,t,n)||this;return r.accessibilityService=o,r._elementSizeObserver=r._register(new nf(i,n.dimension,(function(){return r._onReferenceDomElementSizeChanged()}))),r._register(sf.INSTANCE.onDidChange((function(){return r._onCSSBasedConfigurationChanged()}))),r._validatedOptions.get(9)&&r._elementSizeObserver.startObserving(),r._register(Fn((function(e){return r._recomputeOptions()}))),r._register(r.accessibilityService.onDidChangeScreenReaderOptimized((function(){return r._recomputeOptions()}))),r._recomputeOptions(),r}return of(t,e),t.applyFontInfoSlow=function(e,t){e.style.fontFamily=t.getMassagedFontFamily(),e.style.fontWeight=t.fontWeight,e.style.fontSize=t.fontSize+"px",e.style.fontFeatureSettings=t.fontFeatureSettings,e.style.lineHeight=t.lineHeight+"px",e.style.letterSpacing=t.letterSpacing+"px"},t.applyFontInfo=function(e,t){e.setFontFamily(t.getMassagedFontFamily()),e.setFontWeight(t.fontWeight),e.setFontSize(t.fontSize),e.setFontFeatureSettings(t.fontFeatureSettings),e.setLineHeight(t.lineHeight),e.setLetterSpacing(t.letterSpacing)},t.prototype._onReferenceDomElementSizeChanged=function(){this._recomputeOptions()},t.prototype._onCSSBasedConfigurationChanged=function(){this._recomputeOptions()},t.prototype.observeReferenceElement=function(e){this._elementSizeObserver.observe(e)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._getExtraEditorClassName=function(){var e="";return Kn||qn||(e+="no-user-select "),_&&(e+="mac "),e},t.prototype._getEnvConfiguration=function(){return{extraEditorClassName:this._getExtraEditorClassName(),outerWidth:this._elementSizeObserver.getWidth(),outerHeight:this._elementSizeObserver.getHeight(),emptySelectionClipboard:jn||zn,pixelRatio:Rn.INSTANCE.getPixelRatio(),zoomLevel:An(),accessibilitySupport:this.accessibilityService.isScreenReaderOptimized()?2:this.accessibilityService.getAccessibilitySupport()}},t.prototype.readConfiguration=function(e){return sf.INSTANCE.readConfiguration(e)},t}(lh),uf=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),lf=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},cf=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},df=function(e){function t(t,n,i,o,r){void 0===n&&(n=""),void 0===i&&(i=""),void 0===o&&(o=!0);var s=e.call(this)||this;return s._onDidChange=s._register(new nt),s.onDidChange=s._onDidChange.event,s._enabled=!0,s._checked=!1,s._id=t,s._label=n,s._cssClass=i,s._enabled=o,s._actionCallback=r,s}return uf(t,e),Object.defineProperty(t.prototype,"id",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"label",{get:function(){return this._label},set:function(e){this._setLabel(e)},enumerable:!0,configurable:!0}),t.prototype._setLabel=function(e){this._label!==e&&(this._label=e,this._onDidChange.fire({label:e}))},Object.defineProperty(t.prototype,"tooltip",{get:function(){return this._tooltip||""},set:function(e){this._setTooltip(e)},enumerable:!0,configurable:!0}),t.prototype._setTooltip=function(e){this._tooltip!==e&&(this._tooltip=e,this._onDidChange.fire({tooltip:e}))},Object.defineProperty(t.prototype,"class",{get:function(){return this._cssClass},set:function(e){this._setClass(e)},enumerable:!0,configurable:!0}),t.prototype._setClass=function(e){this._cssClass!==e&&(this._cssClass=e,this._onDidChange.fire({class:e}))},Object.defineProperty(t.prototype,"enabled",{get:function(){return this._enabled},set:function(e){this._setEnabled(e)},enumerable:!0,configurable:!0}),t.prototype._setEnabled=function(e){this._enabled!==e&&(this._enabled=e,this._onDidChange.fire({enabled:e}))},Object.defineProperty(t.prototype,"checked",{get:function(){return this._checked},set:function(e){this._setChecked(e)},enumerable:!0,configurable:!0}),t.prototype._setChecked=function(e){this._checked!==e&&(this._checked=e,this._onDidChange.fire({checked:e}))},t.prototype.run=function(e,t){return this._actionCallback?this._actionCallback(e):Promise.resolve(!0)},t}(He),hf=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._onDidBeforeRun=t._register(new nt),t.onDidBeforeRun=t._onDidBeforeRun.event,t._onDidRun=t._register(new nt),t.onDidRun=t._onDidRun.event,t}return uf(t,e),t.prototype.run=function(e,t){return lf(this,void 0,void 0,(function(){var n,i;return cf(this,(function(o){switch(o.label){case 0:if(!e.enabled)return[2,Promise.resolve(null)];this._onDidBeforeRun.fire({action:e}),o.label=1;case 1:return o.trys.push([1,3,,4]),[4,this.runAction(e,t)];case 2:return n=o.sent(),this._onDidRun.fire({action:e,result:n}),[3,4];case 3:return i=o.sent(),this._onDidRun.fire({action:e,error:i}),[3,4];case 4:return[2]}}))}))},t.prototype.runAction=function(e,t){var n=t?e.run(t):e.run();return Promise.resolve(n)},t}(He),pf=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),ff=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},gf=function(e,t){return function(n,i){t(n,i,e)}},mf=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i};function vf(e){return void 0!==e.command}var _f,yf=Mn("menuService"),bf=new(function(){function e(){this._commands=new Map,this._menuItems=new Map,this._onDidChangeMenu=new nt,this.onDidChangeMenu=this._onDidChangeMenu.event}return e.prototype.addCommand=function(e){var t=this;return this._commands.set(e.id,e),this._onDidChangeMenu.fire(0),{dispose:function(){t._commands.delete(e.id)&&t._onDidChangeMenu.fire(0)}}},e.prototype.getCommand=function(e){return this._commands.get(e)},e.prototype.getCommands=function(){var e=new Map;return this._commands.forEach((function(t,n){return e.set(n,t)})),e},e.prototype.appendMenuItem=function(e,t){var n=this,i=this._menuItems.get(e);return i?i.push(t):(i=[t],this._menuItems.set(e,i)),this._onDidChangeMenu.fire(e),{dispose:function(){var o=i.indexOf(t);o>=0&&(i.splice(o,1),n._onDidChangeMenu.fire(e))}}},e.prototype.getMenuItems=function(e){var t=(this._menuItems.get(e)||[]).slice(0);return 0===e&&this._appendImplicitItems(t),t},e.prototype._appendImplicitItems=function(e){for(var t=new Set,n=0,i=e.filter((function(e){return vf(e)}));n<i.length;n++){var o=i[n],r=o.command,s=o.alt;t.add(r.id),s&&t.add(s.id)}this._commands.forEach((function(n,i){t.has(i)||e.push({command:n})}))},e}()),wf=function(e){function t(t,n,i){var o=e.call(this,t,n)||this;return o._commandService=i,o}return pf(t,e),t.prototype.run=function(){for(var e,t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return(e=this._commandService).executeCommand.apply(e,mf([this.id],t))},t=ff([gf(2,la)],t)}(df),Cf=function(e){function t(t){var n=this;return(n="string"==typeof t.title?e.call(this,"",t.title,"submenu")||this:e.call(this,"",t.title.value,"submenu")||this).item=t,n}return pf(t,e),t}(df),Sf=function(e){function t(n,i,o,r,s){var a=this;return(a="string"==typeof n.title?e.call(this,n.id,n.title,s)||this:e.call(this,n.id,n.title.value,s)||this)._cssClass=void 0,a._enabled=!n.precondition||r.contextMatchesRules(n.precondition),a._checked=Boolean(n.toggled&&r.contextMatchesRules(n.toggled)),a._options=o||{},a.item=n,a.alt=i?new t(i,void 0,a._options,r,s):void 0,a}return pf(t,e),t.prototype.dispose=function(){this.alt&&this.alt.dispose(),e.prototype.dispose.call(this)},t.prototype.run=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var i=[];return this._options.arg&&(i=mf(i,[this._options.arg])),this._options.shouldForwardArgs&&(i=mf(i,t)),e.prototype.run.apply(this,i)},t=ff([gf(3,qh),gf(4,la)],t)}(wf),Lf=Mn("telemetryService"),xf=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Df=function(){function e(e){this.id=e.id,this.precondition=e.precondition,this._kbOpts=e.kbOpts,this._menuOpts=e.menuOpts,this._description=e.description}return e.prototype.register=function(){var e=this;if(Array.isArray(this._menuOpts)?this._menuOpts.forEach(this._registerMenuItem,this):this._menuOpts&&this._registerMenuItem(this._menuOpts),this._kbOpts){var t=this._kbOpts.kbExpr;this.precondition&&(t=t?Rh.and(t,this.precondition):this.precondition),Zh.registerCommandAndKeybindingRule({id:this.id,handler:function(t,n){return e.runCommand(t,n)},weight:this._kbOpts.weight,when:t,primary:this._kbOpts.primary,secondary:this._kbOpts.secondary,win:this._kbOpts.win,linux:this._kbOpts.linux,mac:this._kbOpts.mac,description:this._description})}else ca.registerCommand({id:this.id,handler:function(t,n){return e.runCommand(t,n)},description:this._description})},e.prototype._registerMenuItem=function(e){bf.appendMenuItem(e.menuId,{group:e.group,command:{id:this.id,title:e.title},when:e.when,order:e.order})},e}(),Nf=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return xf(t,e),t.bindToContribution=function(e){return function(t){function n(e){var n=t.call(this,e)||this;return n._callback=e.handler,n}return xf(n,t),n.prototype.runEditorCommand=function(t,n,i){e(n)&&this._callback(e(n),i)},n}(t)},t.prototype.runCommand=function(e,t){var n=this,i=e.get(Pn),o=i.getFocusedCodeEditor()||i.getActiveCodeEditor();if(o)return o.invokeWithinContext((function(e){if(e.get(qh).contextMatchesRules(Xs(n.precondition)))return n.runEditorCommand(e,o,t)}))},t}(Df),kf=function(e){function t(n){var i=e.call(this,t.convertOptions(n))||this;return i.label=n.label,i.alias=n.alias,i}return xf(t,e),t.convertOptions=function(e){var t;function n(t){return t.menuId||(t.menuId=7),t.title||(t.title=e.label),t.when=Rh.and(e.precondition,t.when),t}return t=Array.isArray(e.menuOpts)?e.menuOpts:e.menuOpts?[e.menuOpts]:[],Array.isArray(e.contextMenuOpts)?t.push.apply(t,e.contextMenuOpts.map(n)):e.contextMenuOpts&&t.push(n(e.contextMenuOpts)),e.menuOpts=t,e},t.prototype.runEditorCommand=function(e,t,n){return this.reportTelemetry(e,t),this.run(e,t,n||{})},t.prototype.reportTelemetry=function(e,t){e.get(Lf).publicLog2("editorActionInvoked",{name:this.label,id:this.id})},t}(Nf);function Ef(e,t){ca.registerCommand(e,(function(e,n){return t(e,n||{})}))}function If(e,t){Ef(e,(function(e,n){var i=n.resource,o=n.position;if(!(i instanceof Et))throw Oe("resource");if(!bn.isIPosition(o))throw Oe("position");var r=e.get(du).getModel(i);if(r){var s=bn.lift(o);return t(r,s,n)}return e.get(tl).createModelReference(i).then((function(e){return new Promise((function(i,r){try{i(t(e.object.textEditorModel,bn.lift(o),n))}catch(e){r(e)}})).finally((function(){e.dispose()}))}))}))}function Of(e,t){ca.registerCommand(e,(function(e){for(var n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];var o=n[0],r=n[1];zs(Et.isUri(o)),zs(bn.isIPosition(r));var s=e.get(du).getModel(o);if(s){var a=bn.lift(r);return t(s,a,n.slice(2))}return e.get(tl).createModelReference(o).then((function(e){return new Promise((function(i,o){try{i(t(e.object.textEditorModel,bn.lift(r),n.slice(2)))}catch(e){o(e)}})).finally((function(){e.dispose()}))}))}))}function Mf(e){return Rf.INSTANCE.registerEditorCommand(e),e}function Tf(e){Rf.INSTANCE.registerEditorAction(new e)}function Pf(e,t){Rf.INSTANCE.registerEditorContribution(e,t)}!function(e){e.getEditorCommand=function(e){return Rf.INSTANCE.getEditorCommand(e)},e.getEditorActions=function(){return Rf.INSTANCE.getEditorActions()},e.getEditorContributions=function(){return Rf.INSTANCE.getEditorContributions()},e.getSomeEditorContributions=function(e){return Rf.INSTANCE.getEditorContributions().filter((function(t){return e.indexOf(t.id)>=0}))},e.getDiffEditorContributions=function(){return Rf.INSTANCE.getDiffEditorContributions()}}(_f||(_f={}));var Rf=function(){function e(){this.editorContributions=[],this.diffEditorContributions=[],this.editorActions=[],this.editorCommands=Object.create(null)}return e.prototype.registerEditorContribution=function(e,t){this.editorContributions.push({id:e,ctor:t})},e.prototype.getEditorContributions=function(){return this.editorContributions.slice(0)},e.prototype.getDiffEditorContributions=function(){return this.diffEditorContributions.slice(0)},e.prototype.registerEditorAction=function(e){e.register(),this.editorActions.push(e)},e.prototype.getEditorActions=function(){return this.editorActions.slice(0)},e.prototype.registerEditorCommand=function(e){e.register(),this.editorCommands[e.id]=e},e.prototype.getEditorCommand=function(e){return this.editorCommands[e]||null},e.INSTANCE=new e,e}();Td.add("editor.contributions",Rf.INSTANCE);var Af=function(){function e(e){this.domNode=e,this._maxWidth=-1,this._width=-1,this._height=-1,this._top=-1,this._left=-1,this._bottom=-1,this._right=-1,this._fontFamily="",this._fontWeight="",this._fontSize=-1,this._fontFeatureSettings="",this._lineHeight=-1,this._letterSpacing=-100,this._className="",this._display="",this._position="",this._visibility="",this._backgroundColor="",this._layerHint=!1,this._contain="none"}return e.prototype.setMaxWidth=function(e){this._maxWidth!==e&&(this._maxWidth=e,this.domNode.style.maxWidth=this._maxWidth+"px")},e.prototype.setWidth=function(e){this._width!==e&&(this._width=e,this.domNode.style.width=this._width+"px")},e.prototype.setHeight=function(e){this._height!==e&&(this._height=e,this.domNode.style.height=this._height+"px")},e.prototype.setTop=function(e){this._top!==e&&(this._top=e,this.domNode.style.top=this._top+"px")},e.prototype.unsetTop=function(){-1!==this._top&&(this._top=-1,this.domNode.style.top="")},e.prototype.setLeft=function(e){this._left!==e&&(this._left=e,this.domNode.style.left=this._left+"px")},e.prototype.setBottom=function(e){this._bottom!==e&&(this._bottom=e,this.domNode.style.bottom=this._bottom+"px")},e.prototype.setRight=function(e){this._right!==e&&(this._right=e,this.domNode.style.right=this._right+"px")},e.prototype.setFontFamily=function(e){this._fontFamily!==e&&(this._fontFamily=e,this.domNode.style.fontFamily=this._fontFamily)},e.prototype.setFontWeight=function(e){this._fontWeight!==e&&(this._fontWeight=e,this.domNode.style.fontWeight=this._fontWeight)},e.prototype.setFontSize=function(e){this._fontSize!==e&&(this._fontSize=e,this.domNode.style.fontSize=this._fontSize+"px")},e.prototype.setFontFeatureSettings=function(e){this._fontFeatureSettings!==e&&(this._fontFeatureSettings=e,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)},e.prototype.setLineHeight=function(e){this._lineHeight!==e&&(this._lineHeight=e,this.domNode.style.lineHeight=this._lineHeight+"px")},e.prototype.setLetterSpacing=function(e){this._letterSpacing!==e&&(this._letterSpacing=e,this.domNode.style.letterSpacing=this._letterSpacing+"px")},e.prototype.setClassName=function(e){this._className!==e&&(this._className=e,this.domNode.className=this._className)},e.prototype.toggleClassName=function(e,t){so(this.domNode,e,t),this._className=this.domNode.className},e.prototype.setDisplay=function(e){this._display!==e&&(this._display=e,this.domNode.style.display=this._display)},e.prototype.setPosition=function(e){this._position!==e&&(this._position=e,this.domNode.style.position=this._position)},e.prototype.setVisibility=function(e){this._visibility!==e&&(this._visibility=e,this.domNode.style.visibility=this._visibility)},e.prototype.setBackgroundColor=function(e){this._backgroundColor!==e&&(this._backgroundColor=e,this.domNode.style.backgroundColor=this._backgroundColor)},e.prototype.setLayerHinting=function(e){this._layerHint!==e&&(this._layerHint=e,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")},e.prototype.setContain=function(e){this._contain!==e&&(this._contain=e,this.domNode.style.contain=this._contain)},e.prototype.setAttribute=function(e,t){this.domNode.setAttribute(e,t)},e.prototype.removeAttribute=function(e){this.domNode.removeAttribute(e)},e.prototype.appendChild=function(e){this.domNode.appendChild(e.domNode)},e.prototype.removeChild=function(e){this.domNode.removeChild(e.domNode)},e}();function Ff(e){return new Af(e)}var Wf=0;function Vf(e,t,n){return function(){var e="$memoize"+Wf++,t=void 0,n=function(n,i,o){var r=null,s=null;if("function"==typeof o.value?(r="value",0!==(s=o.value).length&&console.warn("Memoize should only be used in functions with zero parameters")):"function"==typeof o.get&&(r="get",s=o.get),!s)throw new Error("not supported");var a=e+":"+i;o[r]=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return t=this,this.hasOwnProperty(a)||Object.defineProperty(this,a,{configurable:!0,enumerable:!1,writable:!0,value:s.apply(this,e)}),this[a]}};return n.clear=function(){void 0!==t&&Object.getOwnPropertyNames(t).forEach((function(n){0===n.indexOf(e)&&delete t[n]}))},n}()(e,t,n)}var Bf,Hf=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),zf=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s};!function(e){e.Tap="-monaco-gesturetap",e.Change="-monaco-gesturechange",e.Start="-monaco-gesturestart",e.End="-monaco-gesturesend",e.Contextmenu="-monaco-gesturecontextmenu"}(Bf||(Bf={}));var jf=function(e){function t(){var t=e.call(this)||this;return t.dispatched=!1,t.activeTouches={},t.handle=null,t.targets=[],t.ignoreTargets=[],t._lastSetTapCountTime=0,t._register(uo(document,"touchstart",(function(e){return t.onTouchStart(e)}))),t._register(uo(document,"touchend",(function(e){return t.onTouchEnd(e)}))),t._register(uo(document,"touchmove",(function(e){return t.onTouchMove(e)}))),t}return Hf(t,e),t.addTarget=function(e){return t.isTouchDevice()?(t.INSTANCE||(t.INSTANCE=new t),t.INSTANCE.targets.push(e),{dispose:function(){t.INSTANCE.targets=t.INSTANCE.targets.filter((function(t){return t!==e}))}}):He.None},t.ignoreTarget=function(e){return t.isTouchDevice()?(t.INSTANCE||(t.INSTANCE=new t),t.INSTANCE.ignoreTargets.push(e),{dispose:function(){t.INSTANCE.ignoreTargets=t.INSTANCE.ignoreTargets.filter((function(t){return t!==e}))}}):He.None},t.isTouchDevice=function(){return"ontouchstart"in window||navigator.maxTouchPoints>0||window.navigator.msMaxTouchPoints>0},t.prototype.dispose=function(){this.handle&&(this.handle.dispose(),this.handle=null),e.prototype.dispose.call(this)},t.prototype.onTouchStart=function(e){var t=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(var n=0,i=e.targetTouches.length;n<i;n++){var o=e.targetTouches.item(n);this.activeTouches[o.identifier]={id:o.identifier,initialTarget:o.target,initialTimeStamp:t,initialPageX:o.pageX,initialPageY:o.pageY,rollingTimestamps:[t],rollingPageX:[o.pageX],rollingPageY:[o.pageY]};var r=this.newGestureEvent(Bf.Start,o.target);r.pageX=o.pageX,r.pageY=o.pageY,this.dispatchEvent(r)}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)},t.prototype.onTouchEnd=function(e){for(var n=Date.now(),i=Object.keys(this.activeTouches).length,o=function(o,s){var a=e.changedTouches.item(o);if(!r.activeTouches.hasOwnProperty(String(a.identifier)))return console.warn("move of an UNKNOWN touch",a),"continue";var u=r.activeTouches[a.identifier],l=Date.now()-u.initialTimeStamp;if(l<t.HOLD_DELAY&&Math.abs(u.initialPageX-Li(u.rollingPageX))<30&&Math.abs(u.initialPageY-Li(u.rollingPageY))<30)(c=r.newGestureEvent(Bf.Tap,u.initialTarget)).pageX=Li(u.rollingPageX),c.pageY=Li(u.rollingPageY),r.dispatchEvent(c);else if(l>=t.HOLD_DELAY&&Math.abs(u.initialPageX-Li(u.rollingPageX))<30&&Math.abs(u.initialPageY-Li(u.rollingPageY))<30){var c;(c=r.newGestureEvent(Bf.Contextmenu,u.initialTarget)).pageX=Li(u.rollingPageX),c.pageY=Li(u.rollingPageY),r.dispatchEvent(c)}else if(1===i){var d=Li(u.rollingPageX),h=Li(u.rollingPageY),p=Li(u.rollingTimestamps)-u.rollingTimestamps[0],f=d-u.rollingPageX[0],g=h-u.rollingPageY[0],m=r.targets.filter((function(e){return u.initialTarget instanceof Node&&e.contains(u.initialTarget)}));r.inertia(m,n,Math.abs(f)/p,f>0?1:-1,d,Math.abs(g)/p,g>0?1:-1,h)}r.dispatchEvent(r.newGestureEvent(Bf.End,u.initialTarget)),delete r.activeTouches[a.identifier]},r=this,s=0,a=e.changedTouches.length;s<a;s++)o(s);this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)},t.prototype.newGestureEvent=function(e,t){var n=document.createEvent("CustomEvent");return n.initEvent(e,!1,!0),n.initialTarget=t,n.tapCount=0,n},t.prototype.dispatchEvent=function(e){var n=this;if(e.type===Bf.Tap){var i=(new Date).getTime(),o=0;o=i-this._lastSetTapCountTime>t.CLEAR_TAP_COUNT_TIME?1:2,this._lastSetTapCountTime=i,e.tapCount=o}else e.type!==Bf.Change&&e.type!==Bf.Contextmenu||(this._lastSetTapCountTime=0);for(var r=0;r<this.ignoreTargets.length;r++)if(e.initialTarget instanceof Node&&this.ignoreTargets[r].contains(e.initialTarget))return;this.targets.forEach((function(t){e.initialTarget instanceof Node&&t.contains(e.initialTarget)&&(t.dispatchEvent(e),n.dispatched=!0)}))},t.prototype.inertia=function(e,n,i,o,r,s,a,u){var l=this;this.handle=mo((function(){var c=Date.now(),d=c-n,h=0,p=0,f=!0;i+=t.SCROLL_FRICTION*d,s+=t.SCROLL_FRICTION*d,i>0&&(f=!1,h=o*i*d),s>0&&(f=!1,p=a*s*d);var g=l.newGestureEvent(Bf.Change);g.translationX=h,g.translationY=p,e.forEach((function(e){return e.dispatchEvent(g)})),f||l.inertia(e,c,i,o,r+h,s,a,u+p)}))},t.prototype.onTouchMove=function(e){for(var t=Date.now(),n=0,i=e.changedTouches.length;n<i;n++){var o=e.changedTouches.item(n);if(this.activeTouches.hasOwnProperty(String(o.identifier))){var r=this.activeTouches[o.identifier],s=this.newGestureEvent(Bf.Change,r.initialTarget);s.translationX=o.pageX-Li(r.rollingPageX),s.translationY=o.pageY-Li(r.rollingPageY),s.pageX=o.pageX,s.pageY=o.pageY,this.dispatchEvent(s),r.rollingPageX.length>3&&(r.rollingPageX.shift(),r.rollingPageY.shift(),r.rollingTimestamps.shift()),r.rollingPageX.push(o.pageX),r.rollingPageY.push(o.pageY),r.rollingTimestamps.push(t)}else console.warn("end of an UNKNOWN touch",o)}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)},t.SCROLL_FRICTION=-.005,t.HOLD_DELAY=700,t.CLEAR_TAP_COUNT_TIME=400,zf([Vf],t,"isTouchDevice",null),t}(He);function Uf(e,t){var n=new li(t);return n.preventDefault(),{leftButton:n.leftButton,buttons:n.buttons,posx:n.posx,posy:n.posy}}var Kf=function(){function e(){this._hooks=new Be,this._mouseMoveEventMerger=null,this._mouseMoveCallback=null,this._onStopCallback=null}return e.prototype.dispose=function(){this.stopMonitoring(!1),this._hooks.dispose()},e.prototype.stopMonitoring=function(e){if(this.isMonitoring()){this._hooks.clear(),this._mouseMoveEventMerger=null,this._mouseMoveCallback=null;var t=this._onStopCallback;this._onStopCallback=null,e&&t&&t()}},e.prototype.isMonitoring=function(){return!!this._mouseMoveEventMerger},e.prototype.startMonitoring=function(e,t,n,i,o){var r=this;if(!this.isMonitoring()){this._mouseMoveEventMerger=n,this._mouseMoveCallback=i,this._onStopCallback=o;var s=ai.getSameOriginWindowChain(),a=C&&Ki.pointerEvents?"pointermove":"mousemove",u=C&&Ki.pointerEvents?"pointerup":"mouseup",l=s.map((function(e){return e.window.document})),c=Ho(e);c&&l.unshift(c);for(var d=0,h=l;d<h.length;d++){var p=h[d];this._hooks.add(Do(p,a,(function(e){Vn||e.buttons===t?r._mouseMoveCallback(e):r.stopMonitoring(!0)}),(function(e,t){return r._mouseMoveEventMerger(e,t)}))),this._hooks.add(uo(p,u,(function(e){return r.stopMonitoring(!0)})))}if(ai.hasDifferentOriginAncestor()){var f=s[s.length-1];this._hooks.add(uo(f.window.document,"mouseout",(function(e){"html"===new li(e).target.tagName.toLowerCase()&&r.stopMonitoring(!0)}))),this._hooks.add(uo(f.window.document,"mouseover",(function(e){"html"===new li(e).target.tagName.toLowerCase()&&r.stopMonitoring(!0)}))),this._hooks.add(uo(f.window.document.body,"mouseleave",(function(e){r.stopMonitoring(!0)})))}}},e}(),qf=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Gf=function(){function e(e,t){this.x=e,this.y=t}return e.prototype.toClientCoordinates=function(){return new Zf(this.x-Mo.scrollX,this.y-Mo.scrollY)},e}(),Zf=function(){function e(e,t){this.clientX=e,this.clientY=t}return e.prototype.toPageCoordinates=function(){return new Gf(this.clientX+Mo.scrollX,this.clientY+Mo.scrollY)},e}(),Yf=function(e,t,n,i){this.x=e,this.y=t,this.width=n,this.height=i};function Xf(e){var t=Oo(e);return new Yf(t.left,t.top,t.width,t.height)}var $f=function(e){function t(t,n){var i=e.call(this,t)||this;return i.pos=new Gf(i.posx,i.posy),i.editorPos=Xf(n),i}return qf(t,e),t}(li),Qf=function(){function e(e){this._editorViewDomNode=e}return e.prototype._create=function(e){return new $f(e,this._editorViewDomNode)},e.prototype.onContextMenu=function(e,t){var n=this;return uo(e,"contextmenu",(function(e){t(n._create(e))}))},e.prototype.onMouseUp=function(e,t){var n=this;return uo(e,"mouseup",(function(e){t(n._create(e))}))},e.prototype.onMouseDown=function(e,t){var n=this;return uo(e,"mousedown",(function(e){t(n._create(e))}))},e.prototype.onMouseLeave=function(e,t){var n=this;return fo(e,(function(e){t(n._create(e))}))},e.prototype.onMouseMoveThrottled=function(e,t,n,i){var o=this;return Do(e,"mousemove",t,(function(e,t){return n(e,o._create(t))}),i)},e}(),Jf=function(){function e(e){this._editorViewDomNode=e}return e.prototype._create=function(e){return new $f(e,this._editorViewDomNode)},e.prototype.onPointerUp=function(e,t){var n=this;return uo(e,"pointerup",(function(e){t(n._create(e))}))},e.prototype.onPointerDown=function(e,t){var n=this;return uo(e,"pointerdown",(function(e){t(n._create(e))}))},e.prototype.onPointerLeave=function(e,t){var n,i,o=this;return i=function(e){t(o._create(e))},uo(n=e,"pointerout",(function(e){for(var t=e.relatedTarget;t&&t!==n;)t=t.parentNode;t!==n&&i(e)}))},e.prototype.onPointerMoveThrottled=function(e,t,n,i){var o=this;return Do(e,"pointermove",t,(function(e,t){return n(e,o._create(t))}),i)},e}(),eg=function(e){function t(t){var n=e.call(this)||this;return n._editorViewDomNode=t,n._globalMouseMoveMonitor=n._register(new Kf),n._keydownListener=null,n}return qf(t,e),t.prototype.startMonitoring=function(e,t,n,i,o){var r=this;this._keydownListener=co(document,"keydown",(function(e){e.toKeybinding().isModifierKey()||r._globalMouseMoveMonitor.stopMonitoring(!0)}),!0);this._globalMouseMoveMonitor.startMonitoring(e,t,(function(e,t){return n(e,new $f(t,r._editorViewDomNode))}),i,(function(){r._keydownListener.dispose(),o()}))},t}(He),tg=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),ng=function(e){function t(){var t=e.call(this)||this;return t._shouldRender=!0,t}return tg(t,e),t.prototype.shouldRender=function(){return this._shouldRender},t.prototype.forceShouldRender=function(){this._shouldRender=!0},t.prototype.setShouldRender=function(){this._shouldRender=!0},t.prototype.onDidRender=function(){this._shouldRender=!1},t.prototype.onConfigurationChanged=function(e){return!1},t.prototype.onContentSizeChanged=function(e){return!1},t.prototype.onCursorStateChanged=function(e){return!1},t.prototype.onDecorationsChanged=function(e){return!1},t.prototype.onFlushed=function(e){return!1},t.prototype.onFocusChanged=function(e){return!1},t.prototype.onLanguageConfigurationChanged=function(e){return!1},t.prototype.onLineMappingChanged=function(e){return!1},t.prototype.onLinesChanged=function(e){return!1},t.prototype.onLinesDeleted=function(e){return!1},t.prototype.onLinesInserted=function(e){return!1},t.prototype.onRevealRangeRequest=function(e){return!1},t.prototype.onScrollChanged=function(e){return!1},t.prototype.onThemeChanged=function(e){return!1},t.prototype.onTokensChanged=function(e){return!1},t.prototype.onTokensColorsChanged=function(e){return!1},t.prototype.onZonesChanged=function(e){return!1},t.prototype.handleEvents=function(e){for(var t=!1,n=0,i=e.length;n<i;n++){var o=e[n];switch(o.type){case 1:this.onConfigurationChanged(o)&&(t=!0);break;case 2:this.onContentSizeChanged(o)&&(t=!0);break;case 3:this.onCursorStateChanged(o)&&(t=!0);break;case 4:this.onDecorationsChanged(o)&&(t=!0);break;case 5:this.onFlushed(o)&&(t=!0);break;case 6:this.onFocusChanged(o)&&(t=!0);break;case 7:this.onLanguageConfigurationChanged(o)&&(t=!0);break;case 8:this.onLineMappingChanged(o)&&(t=!0);break;case 9:this.onLinesChanged(o)&&(t=!0);break;case 10:this.onLinesDeleted(o)&&(t=!0);break;case 11:this.onLinesInserted(o)&&(t=!0);break;case 12:this.onRevealRangeRequest(o)&&(t=!0);break;case 13:this.onScrollChanged(o)&&(t=!0);break;case 15:this.onTokensChanged(o)&&(t=!0);break;case 14:this.onThemeChanged(o)&&(t=!0);break;case 16:this.onTokensColorsChanged(o)&&(t=!0);break;case 17:this.onZonesChanged(o)&&(t=!0);break;default:console.info("View received unknown event: "),console.info(o)}}t&&(this._shouldRender=!0)},t}(He),ig=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),og=function(e){function t(t){var n=e.call(this)||this;return n._context=t,n._context.addEventHandler(n),n}return ig(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),e.prototype.dispose.call(this)},t}(ng),rg=function(){function e(){}return e.write=function(e,t){e.setAttribute("data-mprt",String(t))},e.read=function(e){var t=e.getAttribute("data-mprt");return null===t?0:parseInt(t,10)},e.collect=function(e,t){for(var n=[],i=0;e&&e!==document.body&&e!==t;)e.nodeType===e.ELEMENT_NODE&&(n[i++]=this.read(e)),e=e.parentElement;for(var o=new Uint8Array(i),r=0;r<i;r++)o[r]=n[i-r-1];return o},e}(),sg=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),ag=function(e){function t(t,n,i){var o=e.call(this,t,n)||this;return o._viewLines=i,o}return sg(t,e),t.prototype.linesVisibleRangesForRange=function(e,t){return this._viewLines.linesVisibleRangesForRange(e,t)},t.prototype.visibleRangeForPosition=function(e){return this._viewLines.visibleRangeForPosition(e)},t}(function(){function e(e,t){this._viewLayout=e,this.viewportData=t,this.scrollWidth=this._viewLayout.getScrollWidth(),this.scrollHeight=this._viewLayout.getScrollHeight(),this.visibleRange=this.viewportData.visibleRange,this.bigNumbersDelta=this.viewportData.bigNumbersDelta;var n=this._viewLayout.getCurrentViewport();this.scrollTop=n.top,this.scrollLeft=n.left,this.viewportWidth=n.width,this.viewportHeight=n.height}return e.prototype.getScrolledTopFromAbsoluteTop=function(e){return e-this.scrollTop},e.prototype.getVerticalOffsetForLineNumber=function(e){return this._viewLayout.getVerticalOffsetForLineNumber(e)},e.prototype.getDecorationsInViewport=function(){return this.viewportData.getDecorationsInViewport()},e}()),ug=function(e,t,n){this.outsideRenderedLine=e,this.lineNumber=t,this.ranges=n},lg=function(){function e(e,t){this.left=Math.round(e),this.width=Math.round(t)}return e.prototype.toString=function(){return"["+this.left+","+this.width+"]"},e}(),cg=function(e,t){this.outsideRenderedLine=e,this.left=Math.round(t)},dg=function(e,t){this.outsideRenderedLine=e,this.ranges=t},hg=function(){function e(e,t){this.left=e,this.width=t}return e.prototype.toString=function(){return"["+this.left+","+this.width+"]"},e.compare=function(e,t){return e.left-t.left},e}(),pg=function(){function e(){}return e._createRange=function(){return this._handyReadyRange||(this._handyReadyRange=document.createRange()),this._handyReadyRange},e._detachRange=function(e,t){e.selectNodeContents(t)},e._readClientRects=function(e,t,n,i,o){var r=this._createRange();try{return r.setStart(e,t),r.setEnd(n,i),r.getClientRects()}catch(e){return null}finally{this._detachRange(r,o)}},e._mergeAdjacentRanges=function(e){if(1===e.length)return[new lg(e[0].left,e[0].width)];e.sort(hg.compare);for(var t=[],n=0,i=e[0].left,o=e[0].width,r=1,s=e.length;r<s;r++){var a=e[r],u=a.left,l=a.width;i+o+.9>=u?o=Math.max(o,u+l-i):(t[n++]=new lg(i,o),i=u,o=l)}return t[n++]=new lg(i,o),t},e._createHorizontalRangesFromClientRects=function(e,t){if(!e||0===e.length)return null;for(var n=[],i=0,o=e.length;i<o;i++){var r=e[i];n[i]=new hg(Math.max(0,r.left-t),r.width)}return this._mergeAdjacentRanges(n)},e.readHorizontalRanges=function(e,t,n,i,o,r,s){var a=e.children.length-1;if(0>a)return null;(t=Math.min(a,Math.max(0,t)))!==(i=Math.min(a,Math.max(0,i)))&&i>0&&0===o&&(i--,o=1073741824);var u=e.children[t].firstChild,l=e.children[i].firstChild;if(u&&l||(!u&&0===n&&t>0&&(u=e.children[t-1].firstChild,n=1073741824),!l&&0===o&&i>0&&(l=e.children[i-1].firstChild,o=1073741824)),!u||!l)return null;n=Math.min(u.textContent.length,Math.max(0,n)),o=Math.min(l.textContent.length,Math.max(0,o));var c=this._readClientRects(u,n,l,o,s);return this._createHorizontalRangesFromClientRects(c,r)},e}(),fg=Mn("themeService");function gg(e){return{id:e}}function mg(e){switch(e){case"dark":return"vs-dark";case"hc":return"hc-black";default:return"vs"}}var vg="base.contributions.theming",_g=new(function(){function e(){this.themingParticipants=[],this.themingParticipants=[],this.onThemingParticipantAddedEmitter=new nt}return e.prototype.onThemeChange=function(e){var t=this;return this.themingParticipants.push(e),this.onThemingParticipantAddedEmitter.fire(e),We((function(){var n=t.themingParticipants.indexOf(e);t.themingParticipants.splice(n,1)}))},e.prototype.getThemingParticipants=function(){return this.themingParticipants},e}());function yg(e){return _g.onThemeChange(e)}Td.add(vg,_g);var bg=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),wg=!!b||!(y||zn||Kn),Cg=Hn,Sg=function(){function e(e,t){this._domNode=e,this._clientRectDeltaLeft=0,this._clientRectDeltaLeftRead=!1,this.endNode=t}return Object.defineProperty(e.prototype,"clientRectDeltaLeft",{get:function(){return this._clientRectDeltaLeftRead||(this._clientRectDeltaLeftRead=!0,this._clientRectDeltaLeft=this._domNode.getBoundingClientRect().left),this._clientRectDeltaLeft},enumerable:!0,configurable:!0}),e}(),Lg=function(){function e(e,t){this.themeType=t;var n=e.options,i=n.get(34);this.renderWhitespace=n.get(74),this.renderControlCharacters=n.get(69),this.spaceWidth=i.spaceWidth,this.middotWidth=i.middotWidth,this.useMonospaceOptimizations=i.isMonospace&&!n.get(23),this.canUseHalfwidthRightwardsArrow=i.canUseHalfwidthRightwardsArrow,this.lineHeight=n.get(49),this.stopRenderingLineAfter=n.get(88),this.fontLigatures=n.get(35)}return e.prototype.equals=function(e){return this.themeType===e.themeType&&this.renderWhitespace===e.renderWhitespace&&this.renderControlCharacters===e.renderControlCharacters&&this.spaceWidth===e.spaceWidth&&this.middotWidth===e.middotWidth&&this.useMonospaceOptimizations===e.useMonospaceOptimizations&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.lineHeight===e.lineHeight&&this.stopRenderingLineAfter===e.stopRenderingLineAfter&&this.fontLigatures===e.fontLigatures},e}(),xg=function(){function e(e){this._options=e,this._isMaybeInvalid=!0,this._renderedViewLine=null}return e.prototype.getDomNode=function(){return this._renderedViewLine&&this._renderedViewLine.domNode?this._renderedViewLine.domNode.domNode:null},e.prototype.setDomNode=function(e){if(!this._renderedViewLine)throw new Error("I have no rendered view line to set the dom node to...");this._renderedViewLine.domNode=Ff(e)},e.prototype.onContentChanged=function(){this._isMaybeInvalid=!0},e.prototype.onTokensChanged=function(){this._isMaybeInvalid=!0},e.prototype.onDecorationsChanged=function(){this._isMaybeInvalid=!0},e.prototype.onOptionsChanged=function(e){this._isMaybeInvalid=!0,this._options=e},e.prototype.onSelectionChanged=function(){return!(!Cg&&"hc"!==this._options.themeType&&"selection"!==this._options.renderWhitespace)&&(this._isMaybeInvalid=!0,!0)},e.prototype.renderLine=function(t,n,i,o){if(!1===this._isMaybeInvalid)return!1;this._isMaybeInvalid=!1;var r=i.getViewLineRenderingData(t),s=this._options,a=jc.filter(r.inlineDecorations,t,r.minColumn,r.maxColumn),u=null;if(Cg||"hc"===s.themeType||"selection"===this._options.renderWhitespace)for(var l=0,c=i.selections;l<c.length;l++){var d=c[l];if(!(d.endLineNumber<t||d.startLineNumber>t)){var h=d.startLineNumber===t?d.startColumn:r.minColumn,p=d.endLineNumber===t?d.endColumn:r.maxColumn;h<p&&("selection"!==this._options.renderWhitespace?a.push(new jc(h,p,"inline-selected-text",0)):(u||(u=[]),u.push(new Zc(h-1,p-1))))}}var f=new Yc(s.useMonospaceOptimizations,s.canUseHalfwidthRightwardsArrow,r.content,r.continuesWithWrappedLine,r.isBasicASCII,r.containsRTL,r.minColumn-1,r.tokens,a,r.tabSize,r.startVisibleColumn,s.spaceWidth,s.middotWidth,s.stopRenderingLineAfter,s.renderWhitespace,s.renderControlCharacters,s.fontLigatures!==Y.OFF,u);if(this._renderedViewLine&&this._renderedViewLine.input.equals(f))return!1;o.appendASCIIString('<div style="top:'),o.appendASCIIString(String(n)),o.appendASCIIString("px;height:"),o.appendASCIIString(String(this._options.lineHeight)),o.appendASCIIString('px;" class="'),o.appendASCIIString(e.CLASS_NAME),o.appendASCIIString('">');var g=Qc(f,o);o.appendASCIIString("</div>");var m=null;return wg&&r.isBasicASCII&&s.useMonospaceOptimizations&&0===g.containsForeignElements&&r.content.length<300&&f.lineTokens.getCount()<100&&(m=new Dg(this._renderedViewLine?this._renderedViewLine.domNode:null,f,g.characterMapping)),m||(m=Eg(this._renderedViewLine?this._renderedViewLine.domNode:null,f,g.characterMapping,g.containsRTL,g.containsForeignElements)),this._renderedViewLine=m,!0},e.prototype.layoutLine=function(e,t){this._renderedViewLine&&this._renderedViewLine.domNode&&(this._renderedViewLine.domNode.setTop(t),this._renderedViewLine.domNode.setHeight(this._options.lineHeight))},e.prototype.getWidth=function(){return this._renderedViewLine?this._renderedViewLine.getWidth():0},e.prototype.getWidthIsFast=function(){return!this._renderedViewLine||this._renderedViewLine.getWidthIsFast()},e.prototype.getVisibleRangesForRange=function(e,t,n){if(!this._renderedViewLine)return null;e|=0,t|=0,e=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,e)),t=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,t));var i=0|this._renderedViewLine.input.stopRenderingLineAfter,o=!1;-1!==i&&e>i+1&&t>i+1&&(o=!0),-1!==i&&e>i+1&&(e=i+1),-1!==i&&t>i+1&&(t=i+1);var r=this._renderedViewLine.getVisibleRangesForRange(e,t,n);return r&&r.length>0?new dg(o,r):null},e.prototype.getColumnOfNodeOffset=function(e,t,n){return this._renderedViewLine?this._renderedViewLine.getColumnOfNodeOffset(e,t,n):1},e.CLASS_NAME="view-line",e}(),Dg=function(){function e(e,t,n){this.domNode=e,this.input=t,this._characterMapping=n,this._charWidth=t.spaceWidth}return e.prototype.getWidth=function(){return this._getCharPosition(this._characterMapping.length)},e.prototype.getWidthIsFast=function(){return!0},e.prototype.getVisibleRangesForRange=function(e,t,n){var i=this._getCharPosition(e),o=this._getCharPosition(t);return[new lg(i,o-i)]},e.prototype._getCharPosition=function(e){var t=this._characterMapping.getAbsoluteOffsets();return 0===t.length?0:Math.round(this._charWidth*t[e-1])},e.prototype.getColumnOfNodeOffset=function(e,t,n){for(var i=t.textContent.length,o=-1;t;)t=t.previousSibling,o++;return this._characterMapping.partDataToCharOffset(o,i,n)+1},e}(),Ng=function(){function e(e,t,n,i,o){if(this.domNode=e,this.input=t,this._characterMapping=n,this._isWhitespaceOnly=/^\s*$/.test(t.lineContent),this._containsForeignElements=o,this._cachedWidth=-1,this._pixelOffsetCache=null,!i||0===this._characterMapping.length){this._pixelOffsetCache=new Int32Array(Math.max(2,this._characterMapping.length+1));for(var r=0,s=this._characterMapping.length;r<=s;r++)this._pixelOffsetCache[r]=-1}}return e.prototype._getReadingTarget=function(e){return e.domNode.firstChild},e.prototype.getWidth=function(){return this.domNode?(-1===this._cachedWidth&&(this._cachedWidth=this._getReadingTarget(this.domNode).offsetWidth),this._cachedWidth):0},e.prototype.getWidthIsFast=function(){return-1!==this._cachedWidth},e.prototype.getVisibleRangesForRange=function(e,t,n){if(!this.domNode)return null;if(null!==this._pixelOffsetCache){var i=this._readPixelOffset(this.domNode,e,n);if(-1===i)return null;var o=this._readPixelOffset(this.domNode,t,n);return-1===o?null:[new lg(i,o-i)]}return this._readVisibleRangesForRange(this.domNode,e,t,n)},e.prototype._readVisibleRangesForRange=function(e,t,n,i){if(t===n){var o=this._readPixelOffset(e,t,i);return-1===o?null:[new lg(o,0)]}return this._readRawVisibleRangesForRange(e,t,n,i)},e.prototype._readPixelOffset=function(e,t,n){if(0===this._characterMapping.length){if(0===this._containsForeignElements)return 0;if(2===this._containsForeignElements)return 0;if(1===this._containsForeignElements)return this.getWidth();var i=this._getReadingTarget(e);return i.firstChild?i.firstChild.offsetWidth:0}if(null!==this._pixelOffsetCache){var o=this._pixelOffsetCache[t];if(-1!==o)return o;var r=this._actualReadPixelOffset(e,t,n);return this._pixelOffsetCache[t]=r,r}return this._actualReadPixelOffset(e,t,n)},e.prototype._actualReadPixelOffset=function(e,t,n){if(0===this._characterMapping.length){var i=pg.readHorizontalRanges(this._getReadingTarget(e),0,0,0,0,n.clientRectDeltaLeft,n.endNode);return i&&0!==i.length?i[0].left:-1}if(t===this._characterMapping.length&&this._isWhitespaceOnly&&0===this._containsForeignElements)return this.getWidth();var o=this._characterMapping.charOffsetToPartData(t-1),r=Xc.getPartIndex(o),s=Xc.getCharIndex(o),a=pg.readHorizontalRanges(this._getReadingTarget(e),r,s,r,s,n.clientRectDeltaLeft,n.endNode);return a&&0!==a.length?a[0].left:-1},e.prototype._readRawVisibleRangesForRange=function(e,t,n,i){if(1===t&&n===this._characterMapping.length)return[new lg(0,this.getWidth())];var o=this._characterMapping.charOffsetToPartData(t-1),r=Xc.getPartIndex(o),s=Xc.getCharIndex(o),a=this._characterMapping.charOffsetToPartData(n-1),u=Xc.getPartIndex(a),l=Xc.getCharIndex(a);return pg.readHorizontalRanges(this._getReadingTarget(e),r,s,u,l,i.clientRectDeltaLeft,i.endNode)},e.prototype.getColumnOfNodeOffset=function(e,t,n){for(var i=t.textContent.length,o=-1;t;)t=t.previousSibling,o++;return this._characterMapping.partDataToCharOffset(o,i,n)+1},e}(),kg=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return bg(t,e),t.prototype._readVisibleRangesForRange=function(t,n,i,o){var r=e.prototype._readVisibleRangesForRange.call(this,t,n,i,o);if(!r||0===r.length||n===i||1===n&&i===this._characterMapping.length)return r;if(!this.input.containsRTL){var s=this._readPixelOffset(t,i,o);if(-1!==s){var a=r[r.length-1];a.left<s&&(a.width=s-a.left)}}return r},t}(Ng),Eg=jn?Ig:Og;function Ig(e,t,n,i,o){return new kg(e,t,n,i,o)}function Og(e,t,n,i,o){return new Ng(e,t,n,i,o)}var Mg=function(){function e(e,t){this.beforeVersionId=e,this.beforeCursorState=t,this.afterCursorState=null,this.afterVersionId=-1,this.editOperations=[]}return e.prototype.undo=function(e){for(var t=this.editOperations.length-1;t>=0;t--)this.editOperations[t]={operations:e.applyEdits(this.editOperations[t].operations)}},e.prototype.redo=function(e){for(var t=0;t<this.editOperations.length;t++)this.editOperations[t]={operations:e.applyEdits(this.editOperations[t].operations)}},e}();function Tg(e){return"\n"===e.getEOL()?0:1}var Pg=function(){function e(e,t){this.beforeVersionId=e,this.beforeCursorState=null,this.afterCursorState=null,this.afterVersionId=-1,this.eol=t}return e.prototype.undo=function(e){var t=Tg(e);e.setEOL(this.eol),this.eol=t},e.prototype.redo=function(e){var t=Tg(e);e.setEOL(this.eol),this.eol=t},e}(),Rg=function(){function e(e){this.model=e,this.currentOpenStackElement=null,this.past=[],this.future=[]}return e.prototype.pushStackElement=function(){null!==this.currentOpenStackElement&&(this.past.push(this.currentOpenStackElement),this.currentOpenStackElement=null)},e.prototype.clear=function(){this.currentOpenStackElement=null,this.past=[],this.future=[]},e.prototype.pushEOL=function(e){this.future=[],this.currentOpenStackElement&&this.pushStackElement();var t=Tg(this.model),n=new Pg(this.model.getAlternativeVersionId(),t);this.model.setEOL(e),n.afterVersionId=this.model.getVersionId(),this.currentOpenStackElement=n,this.pushStackElement()},e.prototype.pushEditOperation=function(t,n,i){this.future=[];var o=null;this.currentOpenStackElement&&(this.currentOpenStackElement instanceof Mg?o=this.currentOpenStackElement:this.pushStackElement()),this.currentOpenStackElement||(o=new Mg(this.model.getAlternativeVersionId(),t),this.currentOpenStackElement=o);var r={operations:this.model.applyEdits(n)};return o.editOperations.push(r),o.afterCursorState=e._computeCursorState(i,r.operations),o.afterVersionId=this.model.getVersionId(),o.afterCursorState},e._computeCursorState=function(e,t){try{return e?e(t):null}catch(e){return De(e),null}},e.prototype.undo=function(){if(this.pushStackElement(),this.past.length>0){var e=this.past.pop();try{e.undo(this.model)}catch(e){return De(e),this.clear(),null}return this.future.push(e),{selections:e.beforeCursorState,recordedVersionId:e.beforeVersionId}}return null},e.prototype.canUndo=function(){return this.past.length>0||null!==this.currentOpenStackElement},e.prototype.redo=function(){if(this.future.length>0){var e=this.future.pop();try{e.redo(this.model)}catch(e){return De(e),this.clear(),null}return this.past.push(e),{selections:e.afterCursorState,recordedVersionId:e.afterVersionId}}return null},e.prototype.canRedo=function(){return this.future.length>0},e}(),Ag=function(){this.spacesDiff=0,this.looksLikeAlignment=!1};function Fg(e,t,n,i,o){var r;for(o.spacesDiff=0,o.looksLikeAlignment=!1,r=0;r<t&&r<i;r++){if(e.charCodeAt(r)!==n.charCodeAt(r))break}for(var s=0,a=0,u=r;u<t;u++){32===e.charCodeAt(u)?s++:a++}var l=0,c=0;for(u=r;u<i;u++){32===n.charCodeAt(u)?l++:c++}if(!(s>0&&a>0||l>0&&c>0)){var d=Math.abs(a-c),h=Math.abs(s-l);if(0===d)return o.spacesDiff=h,void(h>0&&0<=l-1&&l-1<e.length&&l<n.length&&32!==n.charCodeAt(l)&&32===e.charCodeAt(l-1)&&44===e.charCodeAt(e.length-1)&&(o.looksLikeAlignment=!0));h%d!=0||(o.spacesDiff=h/d)}}function Wg(e,t,n){for(var i=Math.min(e.getLineCount(),1e4),o=0,r=0,s="",a=0,u=[0,0,0,0,0,0,0,0,0],l=new Ag,c=1;c<=i;c++){for(var d=e.getLineLength(c),h=e.getLineContent(c),p=d<=65536,f=!1,g=0,m=0,v=0,_=0,y=d;_<y;_++){var b=p?h.charCodeAt(_):e.getLineCharCode(c,_);if(9===b)v++;else{if(32!==b){f=!0,g=_;break}m++}}if(f&&(v>0?o++:m>1&&r++,Fg(s,a,h,g,l),!l.looksLikeAlignment||n&&t===l.spacesDiff)){var w=l.spacesDiff;w<=8&&u[w]++,s=h,a=g}}var C=n;o!==r&&(C=o<r);var S=t;if(C){var L=C?0:.1*i;[2,4,6,8,3,5,7].forEach((function(e){var t=u[e];t>L&&(L=t,S=e)})),4===S&&u[4]>0&&u[2]>0&&u[2]>=u[4]/2&&(S=2)}return{insertSpaces:C,tabSize:S}}function Vg(e){return(1&e.metadata)>>>0}function Bg(e,t){e.metadata=254&e.metadata|t<<0}function Hg(e){return(2&e.metadata)>>>1==1}function zg(e,t){e.metadata=253&e.metadata|(t?1:0)<<1}function jg(e){return(4&e.metadata)>>>2==1}function Ug(e,t){e.metadata=251&e.metadata|(t?1:0)<<2}function Kg(e){return(8&e.metadata)>>>3==1}function qg(e,t){e.metadata=247&e.metadata|(t?1:0)<<3}function Gg(e,t){e.metadata=207&e.metadata|t<<4}function Zg(e,t){e.metadata=191&e.metadata|(t?1:0)<<6}var Yg=function(){function e(e,t,n){this.metadata=0,this.parent=this,this.left=this,this.right=this,Bg(this,1),this.start=t,this.end=n,this.delta=0,this.maxEnd=n,this.id=e,this.ownerId=0,this.options=null,Ug(this,!1),Gg(this,1),qg(this,!1),Zg(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=n,this.range=null,zg(this,!1)}return e.prototype.reset=function(e,t,n,i){this.start=t,this.end=n,this.maxEnd=n,this.cachedVersionId=e,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=n,this.range=i},e.prototype.setOptions=function(e){this.options=e;var t=this.options.className;Ug(this,"squiggly-error"===t||"squiggly-warning"===t||"squiggly-info"===t),Gg(this,this.options.stickiness),qg(this,!(!this.options.overviewRuler||!this.options.overviewRuler.color)),Zg(this,this.options.collapseOnReplaceEdit)},e.prototype.setCachedOffsets=function(e,t,n){this.cachedVersionId!==n&&(this.range=null),this.cachedVersionId=n,this.cachedAbsoluteStart=e,this.cachedAbsoluteEnd=t},e.prototype.detach=function(){this.parent=null,this.left=null,this.right=null},e}(),Xg=new Yg(null,0,0);Xg.parent=Xg,Xg.left=Xg,Xg.right=Xg,Bg(Xg,0);var $g=function(){function e(){this.root=Xg,this.requestNormalizeDelta=!1}return e.prototype.intervalSearch=function(e,t,n,i,o){return this.root===Xg?[]:function(e,t,n,i,o,r){var s=e.root,a=0,u=0,l=0,c=[],d=0;for(;s!==Xg;)if(Hg(s))zg(s.left,!1),zg(s.right,!1),s===s.parent.right&&(a-=s.parent.delta),s=s.parent;else{if(!Hg(s.left)){if(a+s.maxEnd<t){zg(s,!0);continue}if(s.left!==Xg){s=s.left;continue}}if((u=a+s.start)>n)zg(s,!0);else{if((l=a+s.end)>=t){s.setCachedOffsets(u,l,r);var h=!0;i&&s.ownerId&&s.ownerId!==i&&(h=!1),o&&jg(s)&&(h=!1),h&&(c[d++]=s)}zg(s,!0),s.right===Xg||Hg(s.right)||(a+=s.delta,s=s.right)}}return zg(e.root,!1),c}(this,e,t,n,i,o)},e.prototype.search=function(e,t,n){return this.root===Xg?[]:function(e,t,n,i){var o=e.root,r=0,s=0,a=0,u=[],l=0;for(;o!==Xg;)if(Hg(o))zg(o.left,!1),zg(o.right,!1),o===o.parent.right&&(r-=o.parent.delta),o=o.parent;else if(o.left===Xg||Hg(o.left)){s=r+o.start,a=r+o.end,o.setCachedOffsets(s,a,i);var c=!0;t&&o.ownerId&&o.ownerId!==t&&(c=!1),n&&jg(o)&&(c=!1),c&&(u[l++]=o),zg(o,!0),o.right===Xg||Hg(o.right)||(r+=o.delta,o=o.right)}else o=o.left;return zg(e.root,!1),u}(this,e,t,n)},e.prototype.collectNodesFromOwner=function(e){return function(e,t){var n=e.root,i=[],o=0;for(;n!==Xg;)Hg(n)?(zg(n.left,!1),zg(n.right,!1),n=n.parent):n.left===Xg||Hg(n.left)?(n.ownerId===t&&(i[o++]=n),zg(n,!0),n.right===Xg||Hg(n.right)||(n=n.right)):n=n.left;return zg(e.root,!1),i}(this,e)},e.prototype.collectNodesPostOrder=function(){return function(e){var t=e.root,n=[],i=0;for(;t!==Xg;)Hg(t)?(zg(t.left,!1),zg(t.right,!1),t=t.parent):t.left===Xg||Hg(t.left)?t.right===Xg||Hg(t.right)?(n[i++]=t,zg(t,!0)):t=t.right:t=t.left;return zg(e.root,!1),n}(this)},e.prototype.insert=function(e){em(this,e),this._normalizeDeltaIfNecessary()},e.prototype.delete=function(e){tm(this,e),this._normalizeDeltaIfNecessary()},e.prototype.resolveNode=function(e,t){for(var n=e,i=0;e!==this.root;)e===e.parent.right&&(i+=e.parent.delta),e=e.parent;var o=n.start+i,r=n.end+i;n.setCachedOffsets(o,r,t)},e.prototype.acceptReplace=function(e,t,n,i){for(var o=function(e,t,n){var i=e.root,o=0,r=0,s=0,a=[],u=0;for(;i!==Xg;)if(Hg(i))zg(i.left,!1),zg(i.right,!1),i===i.parent.right&&(o-=i.parent.delta),i=i.parent;else{if(!Hg(i.left)){if(o+i.maxEnd<t){zg(i,!0);continue}if(i.left!==Xg){i=i.left;continue}}(r=o+i.start)>n?zg(i,!0):((s=o+i.end)>=t&&(i.setCachedOffsets(r,s,0),a[u++]=i),zg(i,!0),i.right===Xg||Hg(i.right)||(o+=i.delta,i=i.right))}return zg(e.root,!1),a}(this,e,e+t),r=0,s=o.length;r<s;r++){tm(this,a=o[r])}this._normalizeDeltaIfNecessary(),function(e,t,n,i){var o=e.root,r=0,s=i-(n-t);for(;o!==Xg;)if(Hg(o))zg(o.left,!1),zg(o.right,!1),o===o.parent.right&&(r-=o.parent.delta),sm(o),o=o.parent;else{if(!Hg(o.left)){if(r+o.maxEnd<t){zg(o,!0);continue}if(o.left!==Xg){o=o.left;continue}}r+o.start>n?(o.start+=s,o.end+=s,o.delta+=s,(o.delta<-1073741824||o.delta>1073741824)&&(e.requestNormalizeDelta=!0),zg(o,!0)):(zg(o,!0),o.right===Xg||Hg(o.right)||(r+=o.delta,o=o.right))}zg(e.root,!1)}(this,e,e+t,n),this._normalizeDeltaIfNecessary();for(r=0,s=o.length;r<s;r++){var a;(a=o[r]).start=a.cachedAbsoluteStart,a.end=a.cachedAbsoluteEnd,Jg(a,e,e+t,n,i),a.maxEnd=a.end,em(this,a)}this._normalizeDeltaIfNecessary()},e.prototype._normalizeDeltaIfNecessary=function(){this.requestNormalizeDelta&&(this.requestNormalizeDelta=!1,function(e){var t=e.root,n=0;for(;t!==Xg;)t.left===Xg||Hg(t.left)?t.right===Xg||Hg(t.right)?(t.start=n+t.start,t.end=n+t.end,t.delta=0,sm(t),zg(t,!0),zg(t.left,!1),zg(t.right,!1),t===t.parent.right&&(n-=t.parent.delta),t=t.parent):(n+=t.delta,t=t.right):t=t.left;zg(e.root,!1)}(this))},e}();function Qg(e,t,n,i){return e<n||!(e>n)&&(1!==i&&(2===i||t))}function Jg(e,t,n,i,o){var r=function(e){return(48&e.metadata)>>>4}(e),s=0===r||2===r,a=1===r||2===r,u=n-t,l=i,c=Math.min(u,l),d=e.start,h=!1,p=e.end,f=!1;t<=d&&p<=n&&function(e){return(64&e.metadata)>>>6==1}(e)&&(e.start=t,h=!0,e.end=t,f=!0);var g=o?1:u>0?2:0;if(!h&&Qg(d,s,t,g)&&(h=!0),!f&&Qg(p,a,t,g)&&(f=!0),c>0&&!o){g=u>l?2:0;!h&&Qg(d,s,t+c,g)&&(h=!0),!f&&Qg(p,a,t+c,g)&&(f=!0)}g=o?1:0;!h&&Qg(d,s,n,g)&&(e.start=t+l,h=!0),!f&&Qg(p,a,n,g)&&(e.end=t+l,f=!0);var m=l-u;h||(e.start=Math.max(0,d+m)),f||(e.end=Math.max(0,p+m)),e.start>e.end&&(e.end=e.start)}function em(e,t){if(e.root===Xg)return t.parent=Xg,t.left=Xg,t.right=Xg,Bg(t,0),e.root=t,e.root;!function(e,t){var n=0,i=e.root,o=t.start,r=t.end;for(;;){if(um(o,r,i.start+n,i.end+n)<0){if(i.left===Xg){t.start-=n,t.end-=n,t.maxEnd-=n,i.left=t;break}i=i.left}else{if(i.right===Xg){t.start-=n+i.delta,t.end-=n+i.delta,t.maxEnd-=n+i.delta,i.right=t;break}n+=i.delta,i=i.right}}t.parent=i,t.left=Xg,t.right=Xg,Bg(t,1)}(e,t),am(t.parent);for(var n=t;n!==e.root&&1===Vg(n.parent);){var i;if(n.parent===n.parent.parent.left)1===Vg(i=n.parent.parent.right)?(Bg(n.parent,0),Bg(i,0),Bg(n.parent.parent,1),n=n.parent.parent):(n===n.parent.right&&im(e,n=n.parent),Bg(n.parent,0),Bg(n.parent.parent,1),om(e,n.parent.parent));else 1===Vg(i=n.parent.parent.left)?(Bg(n.parent,0),Bg(i,0),Bg(n.parent.parent,1),n=n.parent.parent):(n===n.parent.left&&om(e,n=n.parent),Bg(n.parent,0),Bg(n.parent.parent,1),im(e,n.parent.parent))}return Bg(e.root,0),t}function tm(e,t){var n,i;if(t.left===Xg?(i=t,(n=t.right).delta+=t.delta,(n.delta<-1073741824||n.delta>1073741824)&&(e.requestNormalizeDelta=!0),n.start+=t.delta,n.end+=t.delta):t.right===Xg?(n=t.left,i=t):((n=(i=function(e){for(;e.left!==Xg;)e=e.left;return e}(t.right)).right).start+=i.delta,n.end+=i.delta,n.delta+=i.delta,(n.delta<-1073741824||n.delta>1073741824)&&(e.requestNormalizeDelta=!0),i.start+=t.delta,i.end+=t.delta,i.delta=t.delta,(i.delta<-1073741824||i.delta>1073741824)&&(e.requestNormalizeDelta=!0)),i===e.root)return e.root=n,Bg(n,0),t.detach(),nm(),sm(n),void(e.root.parent=Xg);var o,r=1===Vg(i);if(i===i.parent.left?i.parent.left=n:i.parent.right=n,i===t?n.parent=i.parent:(i.parent===t?n.parent=i:n.parent=i.parent,i.left=t.left,i.right=t.right,i.parent=t.parent,Bg(i,Vg(t)),t===e.root?e.root=i:t===t.parent.left?t.parent.left=i:t.parent.right=i,i.left!==Xg&&(i.left.parent=i),i.right!==Xg&&(i.right.parent=i)),t.detach(),r)return am(n.parent),i!==t&&(am(i),am(i.parent)),void nm();for(am(n),am(n.parent),i!==t&&(am(i),am(i.parent));n!==e.root&&0===Vg(n);)n===n.parent.left?(1===Vg(o=n.parent.right)&&(Bg(o,0),Bg(n.parent,1),im(e,n.parent),o=n.parent.right),0===Vg(o.left)&&0===Vg(o.right)?(Bg(o,1),n=n.parent):(0===Vg(o.right)&&(Bg(o.left,0),Bg(o,1),om(e,o),o=n.parent.right),Bg(o,Vg(n.parent)),Bg(n.parent,0),Bg(o.right,0),im(e,n.parent),n=e.root)):(1===Vg(o=n.parent.left)&&(Bg(o,0),Bg(n.parent,1),om(e,n.parent),o=n.parent.left),0===Vg(o.left)&&0===Vg(o.right)?(Bg(o,1),n=n.parent):(0===Vg(o.left)&&(Bg(o.right,0),Bg(o,1),im(e,o),o=n.parent.left),Bg(o,Vg(n.parent)),Bg(n.parent,0),Bg(o.left,0),om(e,n.parent),n=e.root));Bg(n,0),nm()}function nm(){Xg.parent=Xg,Xg.delta=0,Xg.start=0,Xg.end=0}function im(e,t){var n=t.right;n.delta+=t.delta,(n.delta<-1073741824||n.delta>1073741824)&&(e.requestNormalizeDelta=!0),n.start+=t.delta,n.end+=t.delta,t.right=n.left,n.left!==Xg&&(n.left.parent=t),n.parent=t.parent,t.parent===Xg?e.root=n:t===t.parent.left?t.parent.left=n:t.parent.right=n,n.left=t,t.parent=n,sm(t),sm(n)}function om(e,t){var n=t.left;t.delta-=n.delta,(t.delta<-1073741824||t.delta>1073741824)&&(e.requestNormalizeDelta=!0),t.start-=n.delta,t.end-=n.delta,t.left=n.right,n.right!==Xg&&(n.right.parent=t),n.parent=t.parent,t.parent===Xg?e.root=n:t===t.parent.right?t.parent.right=n:t.parent.left=n,n.right=t,t.parent=n,sm(t),sm(n)}function rm(e){var t=e.end;if(e.left!==Xg){var n=e.left.maxEnd;n>t&&(t=n)}if(e.right!==Xg){var i=e.right.maxEnd+e.delta;i>t&&(t=i)}return t}function sm(e){e.maxEnd=rm(e)}function am(e){for(;e!==Xg;){var t=rm(e);if(e.maxEnd===t)return;e.maxEnd=t,e=e.parent}}function um(e,t,n,i){return e===n?t-i:e-n}var lm=function(){function e(e,t){this.piece=e,this.color=t,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}return e.prototype.next=function(){if(this.right!==cm)return dm(this.right);for(var e=this;e.parent!==cm&&e.parent.left!==e;)e=e.parent;return e.parent===cm?cm:e.parent},e.prototype.prev=function(){if(this.left!==cm)return hm(this.left);for(var e=this;e.parent!==cm&&e.parent.right!==e;)e=e.parent;return e.parent===cm?cm:e.parent},e.prototype.detach=function(){this.parent=null,this.left=null,this.right=null},e}(),cm=new lm(null,0);function dm(e){for(;e.left!==cm;)e=e.left;return e}function hm(e){for(;e.right!==cm;)e=e.right;return e}function pm(e){return e===cm?0:e.size_left+e.piece.length+pm(e.right)}function fm(e){return e===cm?0:e.lf_left+e.piece.lineFeedCnt+fm(e.right)}function gm(){cm.parent=cm}function mm(e,t){var n=t.right;n.size_left+=t.size_left+(t.piece?t.piece.length:0),n.lf_left+=t.lf_left+(t.piece?t.piece.lineFeedCnt:0),t.right=n.left,n.left!==cm&&(n.left.parent=t),n.parent=t.parent,t.parent===cm?e.root=n:t.parent.left===t?t.parent.left=n:t.parent.right=n,n.left=t,t.parent=n}function vm(e,t){var n=t.left;t.left=n.right,n.right!==cm&&(n.right.parent=t),n.parent=t.parent,t.size_left-=n.size_left+(n.piece?n.piece.length:0),t.lf_left-=n.lf_left+(n.piece?n.piece.lineFeedCnt:0),t.parent===cm?e.root=n:t===t.parent.right?t.parent.right=n:t.parent.left=n,n.right=t,t.parent=n}function _m(e,t){var n,i;if(n=t.left===cm?(i=t).right:t.right===cm?(i=t).left:(i=dm(t.right)).right,i===e.root)return e.root=n,n.color=0,t.detach(),gm(),void(e.root.parent=cm);var o=1===i.color;if(i===i.parent.left?i.parent.left=n:i.parent.right=n,i===t?(n.parent=i.parent,wm(e,n)):(i.parent===t?n.parent=i:n.parent=i.parent,wm(e,n),i.left=t.left,i.right=t.right,i.parent=t.parent,i.color=t.color,t===e.root?e.root=i:t===t.parent.left?t.parent.left=i:t.parent.right=i,i.left!==cm&&(i.left.parent=i),i.right!==cm&&(i.right.parent=i),i.size_left=t.size_left,i.lf_left=t.lf_left,wm(e,i)),t.detach(),n.parent.left===n){var r=pm(n),s=fm(n);if(r!==n.parent.size_left||s!==n.parent.lf_left){var a=r-n.parent.size_left,u=s-n.parent.lf_left;n.parent.size_left=r,n.parent.lf_left=s,bm(e,n.parent,a,u)}}if(wm(e,n.parent),o)gm();else{for(var l;n!==e.root&&0===n.color;)n===n.parent.left?(1===(l=n.parent.right).color&&(l.color=0,n.parent.color=1,mm(e,n.parent),l=n.parent.right),0===l.left.color&&0===l.right.color?(l.color=1,n=n.parent):(0===l.right.color&&(l.left.color=0,l.color=1,vm(e,l),l=n.parent.right),l.color=n.parent.color,n.parent.color=0,l.right.color=0,mm(e,n.parent),n=e.root)):(1===(l=n.parent.left).color&&(l.color=0,n.parent.color=1,vm(e,n.parent),l=n.parent.left),0===l.left.color&&0===l.right.color?(l.color=1,n=n.parent):(0===l.left.color&&(l.right.color=0,l.color=1,mm(e,l),l=n.parent.left),l.color=n.parent.color,n.parent.color=0,l.left.color=0,vm(e,n.parent),n=e.root));n.color=0,gm()}}function ym(e,t){for(wm(e,t);t!==e.root&&1===t.parent.color;){var n;if(t.parent===t.parent.parent.left)1===(n=t.parent.parent.right).color?(t.parent.color=0,n.color=0,t.parent.parent.color=1,t=t.parent.parent):(t===t.parent.right&&mm(e,t=t.parent),t.parent.color=0,t.parent.parent.color=1,vm(e,t.parent.parent));else 1===(n=t.parent.parent.left).color?(t.parent.color=0,n.color=0,t.parent.parent.color=1,t=t.parent.parent):(t===t.parent.left&&vm(e,t=t.parent),t.parent.color=0,t.parent.parent.color=1,mm(e,t.parent.parent))}e.root.color=0}function bm(e,t,n,i){for(;t!==e.root&&t!==cm;)t.parent.left===t&&(t.parent.size_left+=n,t.parent.lf_left+=i),t=t.parent}function wm(e,t){var n=0,i=0;if(t!==e.root){if(0===n){for(;t!==e.root&&t===t.parent.right;)t=t.parent;if(t===e.root)return;n=pm((t=t.parent).left)-t.size_left,i=fm(t.left)-t.lf_left,t.size_left+=n,t.lf_left+=i}for(;t!==e.root&&(0!==n||0!==i);)t.parent.left===t&&(t.parent.size_left+=n,t.parent.lf_left+=i),t=t.parent}}cm.parent=cm,cm.left=cm,cm.right=cm,cm.color=0;var Cm=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Sm=function(e){function t(t){for(var n=e.call(this,0)||this,i=0,o=t.length;i<o;i++)n.set(t.charCodeAt(i),2);return n.set(32,1),n.set(9,1),n}return Cm(t,e),t}(nc);var Lm,xm,Dm=(Lm=function(e){return new Sm(e)},xm={},function(e){return xm.hasOwnProperty(e)||(xm[e]=Lm(e)),xm[e]}),Nm=function(){function e(e,t,n,i){this.searchString=e,this.isRegex=t,this.matchCase=n,this.wordSeparators=i}return e.prototype.parseSearchRequest=function(){if(""===this.searchString)return null;var e;e=this.isRegex?function(e){if(!e||0===e.length)return!1;for(var t=0,n=e.length;t<n;t++){if(92===e.charCodeAt(t)){if(++t>=n)break;var i=e.charCodeAt(t);if(110===i||114===i||87===i||119===i)return!0}}return!1}(this.searchString):this.searchString.indexOf("\n")>=0;var t=null;try{t=yr(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:!1,multiline:e,global:!0,unicode:!0})}catch(e){return null}if(!t)return null;var n=!this.isRegex&&!e;return n&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()&&(n=this.matchCase),new km(t,this.wordSeparators?Dm(this.wordSeparators):null,n?this.searchString:null)},e}();var km=function(e,t,n){this.regex=e,this.wordSeparators=t,this.simpleSearch=n};function Em(e,t,n){if(!n)return new Ua(e,null);for(var i=[],o=0,r=t.length;o<r;o++)i[o]=t[o];return new Ua(e,i)}var Im=function(){function e(e){for(var t=[],n=0,i=0,o=e.length;i<o;i++)10===e.charCodeAt(i)&&(t[n++]=i);this._lineFeedsOffsets=t}return e.prototype.findLineFeedCountBeforeOffset=function(e){var t=this._lineFeedsOffsets,n=0,i=t.length-1;if(-1===i)return 0;if(e<=t[0])return 0;for(;n<i;){var o=n+((i-n)/2>>0);t[o]>=e?i=o-1:t[o+1]>=e?(n=o,i=o):n=o+1}return n+1},e}(),Om=function(){function e(){}return e.findMatches=function(e,t,n,i,o){var r=t.parseSearchRequest();return r?r.regex.multiline?this._doFindMatchesMultiline(e,n,new Tm(r.wordSeparators,r.regex),i,o):this._doFindMatchesLineByLine(e,n,r,i,o):[]},e._getMultilineMatchRange=function(e,t,n,i,o,r){var s,a,u=0;if(s=i?t+o+(u=i.findLineFeedCountBeforeOffset(o)):t+o,i){var l=i.findLineFeedCountBeforeOffset(o+r.length)-u;a=s+r.length+l}else a=s+r.length;var c=e.getPositionAt(s),d=e.getPositionAt(a);return new wn(c.lineNumber,c.column,d.lineNumber,d.column)},e._doFindMatchesMultiline=function(e,t,n,i,o){var r,s=e.getOffsetAt(t.getStartPosition()),a=e.getValueInRange(t,1),u="\r\n"===e.getEOL()?new Im(a):null,l=[],c=0;for(n.reset(0);r=n.next(a);)if(l[c++]=Em(this._getMultilineMatchRange(e,s,a,u,r.index,r[0]),r,i),c>=o)return l;return l},e._doFindMatchesLineByLine=function(e,t,n,i,o){var r=[],s=0;if(t.startLineNumber===t.endLineNumber){var a=e.getLineContent(t.startLineNumber).substring(t.startColumn-1,t.endColumn-1);return s=this._findMatchesInLine(n,a,t.startLineNumber,t.startColumn-1,s,r,i,o),r}var u=e.getLineContent(t.startLineNumber).substring(t.startColumn-1);s=this._findMatchesInLine(n,u,t.startLineNumber,t.startColumn-1,s,r,i,o);for(var l=t.startLineNumber+1;l<t.endLineNumber&&s<o;l++)s=this._findMatchesInLine(n,e.getLineContent(l),l,0,s,r,i,o);if(s<o){var c=e.getLineContent(t.endLineNumber).substring(0,t.endColumn-1);s=this._findMatchesInLine(n,c,t.endLineNumber,0,s,r,i,o)}return r},e._findMatchesInLine=function(e,t,n,i,o,r,s,a){var u=e.wordSeparators;if(!s&&e.simpleSearch){for(var l=e.simpleSearch,c=l.length,d=t.length,h=-c;-1!==(h=t.indexOf(l,h+c));)if((!u||Mm(u,t,d,h,c))&&(r[o++]=new Ua(new wn(n,h+1+i,n,h+1+c+i),null),o>=a))return o;return o}var p,f=new Tm(e.wordSeparators,e.regex);f.reset(0);do{if((p=f.next(t))&&(r[o++]=Em(new wn(n,p.index+1+i,n,p.index+1+p[0].length+i),p,s),o>=a))return o}while(p);return o},e.findNextMatch=function(e,t,n,i){var o=t.parseSearchRequest();if(!o)return null;var r=new Tm(o.wordSeparators,o.regex);return o.regex.multiline?this._doFindNextMatchMultiline(e,n,r,i):this._doFindNextMatchLineByLine(e,n,r,i)},e._doFindNextMatchMultiline=function(e,t,n,i){var o=new bn(t.lineNumber,1),r=e.getOffsetAt(o),s=e.getLineCount(),a=e.getValueInRange(new wn(o.lineNumber,o.column,s,e.getLineMaxColumn(s)),1),u="\r\n"===e.getEOL()?new Im(a):null;n.reset(t.column-1);var l=n.next(a);return l?Em(this._getMultilineMatchRange(e,r,a,u,l.index,l[0]),l,i):1!==t.lineNumber||1!==t.column?this._doFindNextMatchMultiline(e,new bn(1,1),n,i):null},e._doFindNextMatchLineByLine=function(e,t,n,i){var o=e.getLineCount(),r=t.lineNumber,s=e.getLineContent(r),a=this._findFirstMatchInLine(n,s,r,t.column,i);if(a)return a;for(var u=1;u<=o;u++){var l=(r+u-1)%o,c=e.getLineContent(l+1),d=this._findFirstMatchInLine(n,c,l+1,1,i);if(d)return d}return null},e._findFirstMatchInLine=function(e,t,n,i,o){e.reset(i-1);var r=e.next(t);return r?Em(new wn(n,r.index+1,n,r.index+1+r[0].length),r,o):null},e.findPreviousMatch=function(e,t,n,i){var o=t.parseSearchRequest();if(!o)return null;var r=new Tm(o.wordSeparators,o.regex);return o.regex.multiline?this._doFindPreviousMatchMultiline(e,n,r,i):this._doFindPreviousMatchLineByLine(e,n,r,i)},e._doFindPreviousMatchMultiline=function(e,t,n,i){var o=this._doFindMatchesMultiline(e,new wn(1,1,t.lineNumber,t.column),n,i,9990);if(o.length>0)return o[o.length-1];var r=e.getLineCount();return t.lineNumber!==r||t.column!==e.getLineMaxColumn(r)?this._doFindPreviousMatchMultiline(e,new bn(r,e.getLineMaxColumn(r)),n,i):null},e._doFindPreviousMatchLineByLine=function(e,t,n,i){var o=e.getLineCount(),r=t.lineNumber,s=e.getLineContent(r).substring(0,t.column-1),a=this._findLastMatchInLine(n,s,r,i);if(a)return a;for(var u=1;u<=o;u++){var l=(o+r-u-1)%o,c=e.getLineContent(l+1),d=this._findLastMatchInLine(n,c,l+1,i);if(d)return d}return null},e._findLastMatchInLine=function(e,t,n,i){var o,r=null;for(e.reset(0);o=e.next(t);)r=Em(new wn(n,o.index+1,n,o.index+1+o[0].length),o,i);return r},e}();function Mm(e,t,n,i,o){return function(e,t,n,i,o){if(0===i)return!0;var r=t.charCodeAt(i-1);if(0!==e.get(r))return!0;if(13===r||10===r)return!0;if(o>0){var s=t.charCodeAt(i);if(0!==e.get(s))return!0}return!1}(e,t,0,i,o)&&function(e,t,n,i,o){if(i+o===n)return!0;var r=t.charCodeAt(i+o);if(0!==e.get(r))return!0;if(13===r||10===r)return!0;if(o>0){var s=t.charCodeAt(i+o-1);if(0!==e.get(s))return!0}return!1}(e,t,n,i,o)}var Tm=function(){function e(e,t){this._wordSeparators=e,this._searchRegex=t,this._prevMatchStartIndex=-1,this._prevMatchLength=0}return e.prototype.reset=function(e){this._searchRegex.lastIndex=e,this._prevMatchStartIndex=-1,this._prevMatchLength=0},e.prototype.next=function(e){var t,n=e.length;do{if(this._prevMatchStartIndex+this._prevMatchLength===n)return null;if(!(t=this._searchRegex.exec(e)))return null;var i=t.index,o=t[0].length;if(i===this._prevMatchStartIndex&&o===this._prevMatchLength){if(0===o){this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=i,this._prevMatchLength=o,!this._wordSeparators||Mm(this._wordSeparators,e,n,i,o))return t}while(t);return null},e}();function Pm(e){var t;return(t=e[e.length-1]<65536?new Uint16Array(e.length):new Uint32Array(e.length)).set(e,0),t}var Rm=function(e,t,n,i,o){this.lineStarts=e,this.cr=t,this.lf=n,this.crlf=i,this.isBasicASCII=o};function Am(e,t){void 0===t&&(t=!0);for(var n=[0],i=1,o=0,r=e.length;o<r;o++){var s=e.charCodeAt(o);13===s?o+1<r&&10===e.charCodeAt(o+1)?(n[i++]=o+2,o++):n[i++]=o+1:10===s&&(n[i++]=o+1)}return t?Pm(n):n}var Fm=function(e,t,n,i,o){this.bufferIndex=e,this.start=t,this.end=n,this.lineFeedCnt=i,this.length=o},Wm=function(e,t){this.buffer=e,this.lineStarts=t},Vm=function(){function e(e){this._limit=e,this._cache=[]}return e.prototype.get=function(e){for(var t=this._cache.length-1;t>=0;t--){var n=this._cache[t];if(n.nodeStartOffset<=e&&n.nodeStartOffset+n.node.piece.length>=e)return n}return null},e.prototype.get2=function(e){for(var t=this._cache.length-1;t>=0;t--){var n=this._cache[t];if(n.nodeStartLineNumber&&n.nodeStartLineNumber<e&&n.nodeStartLineNumber+n.node.piece.lineFeedCnt>=e)return n}return null},e.prototype.set=function(e){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(e)},e.prototype.valdiate=function(e){for(var t=!1,n=this._cache,i=0;i<n.length;i++){var o=n[i];(null===o.node.parent||o.nodeStartOffset>=e)&&(n[i]=null,t=!0)}if(t){for(var r=[],s=0,a=n;s<a.length;s++){var u=a[s];null!==u&&r.push(u)}this._cache=r}},e}(),Bm=function(){function e(e,t,n){this.create(e,t,n)}return e.prototype.create=function(e,t,n){this._buffers=[new Wm("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=cm,this._lineCnt=1,this._length=0,this._EOL=t,this._EOLLength=t.length,this._EOLNormalized=n;for(var i=null,o=0,r=e.length;o<r;o++)if(e[o].buffer.length>0){e[o].lineStarts||(e[o].lineStarts=Am(e[o].buffer));var s=new Fm(o+1,{line:0,column:0},{line:e[o].lineStarts.length-1,column:e[o].buffer.length-e[o].lineStarts[e[o].lineStarts.length-1]},e[o].lineStarts.length-1,e[o].buffer.length);this._buffers.push(e[o]),i=this.rbInsertRight(i,s)}this._searchCache=new Vm(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()},e.prototype.normalizeEOL=function(e){var t=this,n=65535-Math.floor(21845),i=2*n,o="",r=0,s=[];if(this.iterate(this.root,(function(a){var u=t.getNodeContent(a),l=u.length;if(r<=n||r+l<i)return o+=u,r+=l,!0;var c=o.replace(/\r\n|\r|\n/g,e);return s.push(new Wm(c,Am(c))),o=u,r=l,!0})),r>0){var a=o.replace(/\r\n|\r|\n/g,e);s.push(new Wm(a,Am(a)))}this.create(s,e,!0)},e.prototype.getEOL=function(){return this._EOL},e.prototype.setEOL=function(e){this._EOL=e,this._EOLLength=this._EOL.length,this.normalizeEOL(e)},e.prototype.getOffsetAt=function(e,t){for(var n=0,i=this.root;i!==cm;)if(i.left!==cm&&i.lf_left+1>=e)i=i.left;else{if(i.lf_left+i.piece.lineFeedCnt+1>=e)return(n+=i.size_left)+(this.getAccumulatedValue(i,e-i.lf_left-2)+t-1);e-=i.lf_left+i.piece.lineFeedCnt,n+=i.size_left+i.piece.length,i=i.right}return n},e.prototype.getPositionAt=function(e){e=Math.floor(e),e=Math.max(0,e);for(var t=this.root,n=0,i=e;t!==cm;)if(0!==t.size_left&&t.size_left>=e)t=t.left;else{if(t.size_left+t.piece.length>=e){var o=this.getIndexOf(t,e-t.size_left);if(n+=t.lf_left+o.index,0===o.index){var r=this.getOffsetAt(n+1,1);return new bn(n+1,i-r+1)}return new bn(n+1,o.remainder+1)}if(e-=t.size_left+t.piece.length,n+=t.lf_left+t.piece.lineFeedCnt,t.right===cm){r=this.getOffsetAt(n+1,1);return new bn(n+1,i-e-r+1)}t=t.right}return new bn(1,1)},e.prototype.getValueInRange=function(e,t){if(e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn)return"";var n=this.nodeAt2(e.startLineNumber,e.startColumn),i=this.nodeAt2(e.endLineNumber,e.endColumn),o=this.getValueInRange2(n,i);return t?t===this._EOL&&this._EOLNormalized&&t===this.getEOL()&&this._EOLNormalized?o:o.replace(/\r\n|\r|\n/g,t):o},e.prototype.getValueInRange2=function(e,t){if(e.node===t.node){var n=e.node,i=this._buffers[n.piece.bufferIndex].buffer,o=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);return i.substring(o+e.remainder,o+t.remainder)}var r=e.node,s=this._buffers[r.piece.bufferIndex].buffer,a=this.offsetInBuffer(r.piece.bufferIndex,r.piece.start),u=s.substring(a+e.remainder,a+r.piece.length);for(r=r.next();r!==cm;){var l=this._buffers[r.piece.bufferIndex].buffer,c=this.offsetInBuffer(r.piece.bufferIndex,r.piece.start);if(r===t.node){u+=l.substring(c,c+t.remainder);break}u+=l.substr(c,r.piece.length),r=r.next()}return u},e.prototype.getLinesContent=function(){var e=this,t=[],n=0,i="",o=!1;return this.iterate(this.root,(function(r){if(r===cm)return!0;var s=r.piece,a=s.length;if(0===a)return!0;var u=e._buffers[s.bufferIndex].buffer,l=e._buffers[s.bufferIndex].lineStarts,c=s.start.line,d=s.end.line,h=l[c]+s.start.column;if(o&&(10===u.charCodeAt(h)&&(h++,a--),t[n++]=i,i="",o=!1,0===a))return!0;if(c===d)return e._EOLNormalized||13!==u.charCodeAt(h+a-1)?i+=u.substr(h,a):(o=!0,i+=u.substr(h,a-1)),!0;i+=e._EOLNormalized?u.substring(h,Math.max(h,l[c+1]-e._EOLLength)):u.substring(h,l[c+1]).replace(/(\r\n|\r|\n)$/,""),t[n++]=i;for(var p=c+1;p<d;p++)i=e._EOLNormalized?u.substring(l[p],l[p+1]-e._EOLLength):u.substring(l[p],l[p+1]).replace(/(\r\n|\r|\n)$/,""),t[n++]=i;return e._EOLNormalized||13!==u.charCodeAt(l[d]+s.end.column-1)?i=u.substr(l[d],s.end.column):(o=!0,0===s.end.column?n--:i=u.substr(l[d],s.end.column-1)),!0})),o&&(t[n++]=i,i=""),t[n++]=i,t},e.prototype.getLength=function(){return this._length},e.prototype.getLineCount=function(){return this._lineCnt},e.prototype.getLineContent=function(e){return this._lastVisitedLine.lineNumber===e||(this._lastVisitedLine.lineNumber=e,e===this._lineCnt?this._lastVisitedLine.value=this.getLineRawContent(e):this._EOLNormalized?this._lastVisitedLine.value=this.getLineRawContent(e,this._EOLLength):this._lastVisitedLine.value=this.getLineRawContent(e).replace(/(\r\n|\r|\n)$/,"")),this._lastVisitedLine.value},e.prototype.getLineCharCode=function(e,t){var n=this.nodeAt2(e,t+1);if(n.remainder===n.node.piece.length){var i=n.node.next();if(!i)return 0;var o=this._buffers[i.piece.bufferIndex],r=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);return o.buffer.charCodeAt(r)}o=this._buffers[n.node.piece.bufferIndex];var s=(r=this.offsetInBuffer(n.node.piece.bufferIndex,n.node.piece.start))+n.remainder;return o.buffer.charCodeAt(s)},e.prototype.getLineLength=function(e){if(e===this.getLineCount()){var t=this.getOffsetAt(e,1);return this.getLength()-t}return this.getOffsetAt(e+1,1)-this.getOffsetAt(e,1)-this._EOLLength},e.prototype.findMatchesInNode=function(e,t,n,i,o,r,s,a,u,l,c){var d,h,p,f=this._buffers[e.piece.bufferIndex],g=this.offsetInBuffer(e.piece.bufferIndex,e.piece.start),m=this.offsetInBuffer(e.piece.bufferIndex,o),v=this.offsetInBuffer(e.piece.bufferIndex,r),_={line:0,column:0};t._wordSeparators?(h=f.buffer.substring(m,v),p=function(e){return e+m},t.reset(-1)):(h=f.buffer,p=function(e){return e},t.reset(m));do{if(d=t.next(h)){if(p(d.index)>=v)return l;this.positionInBuffer(e,p(d.index)-g,_);var y=this.getLineFeedCnt(e.piece.bufferIndex,o,_),b=_.line===o.line?_.column-o.column+i:_.column+1,w=b+d[0].length;if(c[l++]=Em(new wn(n+y,b,n+y,w),d,a),p(d.index)+d[0].length>=v)return l;if(l>=u)return l}}while(d);return l},e.prototype.findMatchesLineByLine=function(e,t,n,i){var o=[],r=0,s=new Tm(t.wordSeparators,t.regex),a=this.nodeAt2(e.startLineNumber,e.startColumn);if(null===a)return[];var u=this.nodeAt2(e.endLineNumber,e.endColumn);if(null===u)return[];var l=this.positionInBuffer(a.node,a.remainder),c=this.positionInBuffer(u.node,u.remainder);if(a.node===u.node)return this.findMatchesInNode(a.node,s,e.startLineNumber,e.startColumn,l,c,t,n,i,r,o),o;for(var d=e.startLineNumber,h=a.node;h!==u.node;){var p=this.getLineFeedCnt(h.piece.bufferIndex,l,h.piece.end);if(p>=1){var f=this._buffers[h.piece.bufferIndex].lineStarts,g=this.offsetInBuffer(h.piece.bufferIndex,h.piece.start),m=f[l.line+p],v=d===e.startLineNumber?e.startColumn:1;if((r=this.findMatchesInNode(h,s,d,v,l,this.positionInBuffer(h,m-g),t,n,i,r,o))>=i)return o;d+=p}var _=d===e.startLineNumber?e.startColumn-1:0;if(d===e.endLineNumber){var y=this.getLineContent(d).substring(_,e.endColumn-1);return r=this._findMatchesInLine(t,s,y,e.endLineNumber,_,r,o,n,i),o}if((r=this._findMatchesInLine(t,s,this.getLineContent(d).substr(_),d,_,r,o,n,i))>=i)return o;d++,h=(a=this.nodeAt2(d,1)).node,l=this.positionInBuffer(a.node,a.remainder)}if(d===e.endLineNumber){var b=d===e.startLineNumber?e.startColumn-1:0;y=this.getLineContent(d).substring(b,e.endColumn-1);return r=this._findMatchesInLine(t,s,y,e.endLineNumber,b,r,o,n,i),o}var w=d===e.startLineNumber?e.startColumn:1;return r=this.findMatchesInNode(u.node,s,d,w,l,c,t,n,i,r,o),o},e.prototype._findMatchesInLine=function(e,t,n,i,o,r,s,a,u){var l,c=e.wordSeparators;if(!a&&e.simpleSearch){for(var d=e.simpleSearch,h=d.length,p=n.length,f=-h;-1!==(f=n.indexOf(d,f+h));)if((!c||Mm(c,n,p,f,h))&&(s[r++]=new Ua(new wn(i,f+1+o,i,f+1+h+o),null),r>=u))return r;return r}t.reset(0);do{if((l=t.next(n))&&(s[r++]=Em(new wn(i,l.index+1+o,i,l.index+1+l[0].length+o),l,a),r>=u))return r}while(l);return r},e.prototype.insert=function(e,t,n){if(void 0===n&&(n=!1),this._EOLNormalized=this._EOLNormalized&&n,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==cm){var i=this.nodeAt(e),o=i.node,r=i.remainder,s=i.nodeStartOffset,a=o.piece,u=a.bufferIndex,l=this.positionInBuffer(o,r);if(0===o.piece.bufferIndex&&a.end.line===this._lastChangeBufferPos.line&&a.end.column===this._lastChangeBufferPos.column&&s+a.length===e&&t.length<65535)return this.appendToNode(o,t),void this.computeBufferMetadata();if(s===e)this.insertContentToNodeLeft(t,o),this._searchCache.valdiate(e);else if(s+o.piece.length>e){var c=[],d=new Fm(a.bufferIndex,l,a.end,this.getLineFeedCnt(a.bufferIndex,l,a.end),this.offsetInBuffer(u,a.end)-this.offsetInBuffer(u,l));if(this.shouldCheckCRLF()&&this.endWithCR(t))if(10===this.nodeCharCodeAt(o,r)){var h={line:d.start.line+1,column:0};d=new Fm(d.bufferIndex,h,d.end,this.getLineFeedCnt(d.bufferIndex,h,d.end),d.length-1),t+="\n"}if(this.shouldCheckCRLF()&&this.startWithLF(t))if(13===this.nodeCharCodeAt(o,r-1)){var p=this.positionInBuffer(o,r-1);this.deleteNodeTail(o,p),t="\r"+t,0===o.piece.length&&c.push(o)}else this.deleteNodeTail(o,l);else this.deleteNodeTail(o,l);var f=this.createNewPieces(t);d.length>0&&this.rbInsertRight(o,d);for(var g=o,m=0;m<f.length;m++)g=this.rbInsertRight(g,f[m]);this.deleteNodes(c)}else this.insertContentToNodeRight(t,o)}else{var v=this.createNewPieces(t);for(o=this.rbInsertLeft(null,v[0]),m=1;m<v.length;m++)o=this.rbInsertRight(o,v[m])}this.computeBufferMetadata()},e.prototype.delete=function(e,t){if(this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",!(t<=0||this.root===cm)){var n=this.nodeAt(e),i=this.nodeAt(e+t),o=n.node,r=i.node;if(o===r){var s=this.positionInBuffer(o,n.remainder),a=this.positionInBuffer(o,i.remainder);if(n.nodeStartOffset===e){if(t===o.piece.length){var u=o.next();return _m(this,o),this.validateCRLFWithPrevNode(u),void this.computeBufferMetadata()}return this.deleteNodeHead(o,a),this._searchCache.valdiate(e),this.validateCRLFWithPrevNode(o),void this.computeBufferMetadata()}return n.nodeStartOffset+o.piece.length===e+t?(this.deleteNodeTail(o,s),this.validateCRLFWithNextNode(o),void this.computeBufferMetadata()):(this.shrinkNode(o,s,a),void this.computeBufferMetadata())}var l=[],c=this.positionInBuffer(o,n.remainder);this.deleteNodeTail(o,c),this._searchCache.valdiate(e),0===o.piece.length&&l.push(o);var d=this.positionInBuffer(r,i.remainder);this.deleteNodeHead(r,d),0===r.piece.length&&l.push(r);for(var h=o.next();h!==cm&&h!==r;h=h.next())l.push(h);var p=0===o.piece.length?o.prev():o;this.deleteNodes(l),this.validateCRLFWithNextNode(p),this.computeBufferMetadata()}},e.prototype.insertContentToNodeLeft=function(e,t){var n=[];if(this.shouldCheckCRLF()&&this.endWithCR(e)&&this.startWithLF(t)){var i=t.piece,o={line:i.start.line+1,column:0},r=new Fm(i.bufferIndex,o,i.end,this.getLineFeedCnt(i.bufferIndex,o,i.end),i.length-1);t.piece=r,e+="\n",bm(this,t,-1,-1),0===t.piece.length&&n.push(t)}for(var s=this.createNewPieces(e),a=this.rbInsertLeft(t,s[s.length-1]),u=s.length-2;u>=0;u--)a=this.rbInsertLeft(a,s[u]);this.validateCRLFWithPrevNode(a),this.deleteNodes(n)},e.prototype.insertContentToNodeRight=function(e,t){this.adjustCarriageReturnFromNext(e,t)&&(e+="\n");for(var n=this.createNewPieces(e),i=this.rbInsertRight(t,n[0]),o=i,r=1;r<n.length;r++)o=this.rbInsertRight(o,n[r]);this.validateCRLFWithPrevNode(i)},e.prototype.positionInBuffer=function(e,t,n){for(var i=e.piece,o=e.piece.bufferIndex,r=this._buffers[o].lineStarts,s=r[i.start.line]+i.start.column+t,a=i.start.line,u=i.end.line,l=0,c=0,d=0;a<=u&&(d=r[l=a+(u-a)/2|0],l!==u);)if(c=r[l+1],s<d)u=l-1;else{if(!(s>=c))break;a=l+1}return n?(n.line=l,n.column=s-d,null):{line:l,column:s-d}},e.prototype.getLineFeedCnt=function(e,t,n){if(0===n.column)return n.line-t.line;var i=this._buffers[e].lineStarts;if(n.line===i.length-1)return n.line-t.line;var o=i[n.line+1],r=i[n.line]+n.column;if(o>r+1)return n.line-t.line;var s=r-1;return 13===this._buffers[e].buffer.charCodeAt(s)?n.line-t.line+1:n.line-t.line},e.prototype.offsetInBuffer=function(e,t){return this._buffers[e].lineStarts[t.line]+t.column},e.prototype.deleteNodes=function(e){for(var t=0;t<e.length;t++)_m(this,e[t])},e.prototype.createNewPieces=function(e){if(e.length>65535){for(var t=[];e.length>65535;){var n=e.charCodeAt(65534),i=void 0;13===n||n>=55296&&n<=56319?(i=e.substring(0,65534),e=e.substring(65534)):(i=e.substring(0,65535),e=e.substring(65535));var o=Am(i);t.push(new Fm(this._buffers.length,{line:0,column:0},{line:o.length-1,column:i.length-o[o.length-1]},o.length-1,i.length)),this._buffers.push(new Wm(i,o))}var r=Am(e);return t.push(new Fm(this._buffers.length,{line:0,column:0},{line:r.length-1,column:e.length-r[r.length-1]},r.length-1,e.length)),this._buffers.push(new Wm(e,r)),t}var s=this._buffers[0].buffer.length,a=Am(e,!1),u=this._lastChangeBufferPos;if(this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-1]===s&&0!==s&&this.startWithLF(e)&&this.endWithCR(this._buffers[0].buffer)){this._lastChangeBufferPos={line:this._lastChangeBufferPos.line,column:this._lastChangeBufferPos.column+1},u=this._lastChangeBufferPos;for(var l=0;l<a.length;l++)a[l]+=s+1;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(a.slice(1)),this._buffers[0].buffer+="_"+e,s+=1}else{if(0!==s)for(l=0;l<a.length;l++)a[l]+=s;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(a.slice(1)),this._buffers[0].buffer+=e}var c=this._buffers[0].buffer.length,d=this._buffers[0].lineStarts.length-1,h={line:d,column:c-this._buffers[0].lineStarts[d]},p=new Fm(0,u,h,this.getLineFeedCnt(0,u,h),c-s);return this._lastChangeBufferPos=h,[p]},e.prototype.getLineRawContent=function(e,t){void 0===t&&(t=0);var n=this.root,i="",o=this._searchCache.get2(e);if(o){n=o.node;var r=this.getAccumulatedValue(n,e-o.nodeStartLineNumber-1),s=this._buffers[n.piece.bufferIndex].buffer,a=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);if(o.nodeStartLineNumber+n.piece.lineFeedCnt!==e){var u=this.getAccumulatedValue(n,e-o.nodeStartLineNumber);return s.substring(a+r,a+u-t)}i=s.substring(a+r,a+n.piece.length)}else for(var l=0,c=e;n!==cm;)if(n.left!==cm&&n.lf_left>=e-1)n=n.left;else{if(n.lf_left+n.piece.lineFeedCnt>e-1){r=this.getAccumulatedValue(n,e-n.lf_left-2),u=this.getAccumulatedValue(n,e-n.lf_left-1),s=this._buffers[n.piece.bufferIndex].buffer,a=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);return l+=n.size_left,this._searchCache.set({node:n,nodeStartOffset:l,nodeStartLineNumber:c-(e-1-n.lf_left)}),s.substring(a+r,a+u-t)}if(n.lf_left+n.piece.lineFeedCnt===e-1){r=this.getAccumulatedValue(n,e-n.lf_left-2),s=this._buffers[n.piece.bufferIndex].buffer,a=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);i=s.substring(a+r,a+n.piece.length);break}e-=n.lf_left+n.piece.lineFeedCnt,l+=n.size_left+n.piece.length,n=n.right}for(n=n.next();n!==cm;){s=this._buffers[n.piece.bufferIndex].buffer;if(n.piece.lineFeedCnt>0){u=this.getAccumulatedValue(n,0),a=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);return i+=s.substring(a,a+u-t)}a=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);i+=s.substr(a,n.piece.length),n=n.next()}return i},e.prototype.computeBufferMetadata=function(){for(var e=this.root,t=1,n=0;e!==cm;)t+=e.lf_left+e.piece.lineFeedCnt,n+=e.size_left+e.piece.length,e=e.right;this._lineCnt=t,this._length=n,this._searchCache.valdiate(this._length)},e.prototype.getIndexOf=function(e,t){var n=e.piece,i=this.positionInBuffer(e,t),o=i.line-n.start.line;if(this.offsetInBuffer(n.bufferIndex,n.end)-this.offsetInBuffer(n.bufferIndex,n.start)===t){var r=this.getLineFeedCnt(e.piece.bufferIndex,n.start,i);if(r!==o)return{index:r,remainder:0}}return{index:o,remainder:i.column}},e.prototype.getAccumulatedValue=function(e,t){if(t<0)return 0;var n=e.piece,i=this._buffers[n.bufferIndex].lineStarts,o=n.start.line+t+1;return o>n.end.line?i[n.end.line]+n.end.column-i[n.start.line]-n.start.column:i[o]-i[n.start.line]-n.start.column},e.prototype.deleteNodeTail=function(e,t){var n=e.piece,i=n.lineFeedCnt,o=this.offsetInBuffer(n.bufferIndex,n.end),r=t,s=this.offsetInBuffer(n.bufferIndex,r),a=this.getLineFeedCnt(n.bufferIndex,n.start,r),u=a-i,l=s-o,c=n.length+l;e.piece=new Fm(n.bufferIndex,n.start,r,a,c),bm(this,e,l,u)},e.prototype.deleteNodeHead=function(e,t){var n=e.piece,i=n.lineFeedCnt,o=this.offsetInBuffer(n.bufferIndex,n.start),r=t,s=this.getLineFeedCnt(n.bufferIndex,r,n.end),a=s-i,u=o-this.offsetInBuffer(n.bufferIndex,r),l=n.length+u;e.piece=new Fm(n.bufferIndex,r,n.end,s,l),bm(this,e,u,a)},e.prototype.shrinkNode=function(e,t,n){var i=e.piece,o=i.start,r=i.end,s=i.length,a=i.lineFeedCnt,u=t,l=this.getLineFeedCnt(i.bufferIndex,i.start,u),c=this.offsetInBuffer(i.bufferIndex,t)-this.offsetInBuffer(i.bufferIndex,o);e.piece=new Fm(i.bufferIndex,i.start,u,l,c),bm(this,e,c-s,l-a);var d=new Fm(i.bufferIndex,n,r,this.getLineFeedCnt(i.bufferIndex,n,r),this.offsetInBuffer(i.bufferIndex,r)-this.offsetInBuffer(i.bufferIndex,n)),h=this.rbInsertRight(e,d);this.validateCRLFWithPrevNode(h)},e.prototype.appendToNode=function(e,t){this.adjustCarriageReturnFromNext(t,e)&&(t+="\n");var n=this.shouldCheckCRLF()&&this.startWithLF(t)&&this.endWithCR(e),i=this._buffers[0].buffer.length;this._buffers[0].buffer+=t;for(var o=Am(t,!1),r=0;r<o.length;r++)o[r]+=i;if(n){var s=this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-2];this._buffers[0].lineStarts.pop(),this._lastChangeBufferPos={line:this._lastChangeBufferPos.line-1,column:i-s}}this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(o.slice(1));var a=this._buffers[0].lineStarts.length-1,u={line:a,column:this._buffers[0].buffer.length-this._buffers[0].lineStarts[a]},l=e.piece.length+t.length,c=e.piece.lineFeedCnt,d=this.getLineFeedCnt(0,e.piece.start,u),h=d-c;e.piece=new Fm(e.piece.bufferIndex,e.piece.start,u,d,l),this._lastChangeBufferPos=u,bm(this,e,t.length,h)},e.prototype.nodeAt=function(e){var t=this.root,n=this._searchCache.get(e);if(n)return{node:n.node,nodeStartOffset:n.nodeStartOffset,remainder:e-n.nodeStartOffset};for(var i=0;t!==cm;)if(t.size_left>e)t=t.left;else{if(t.size_left+t.piece.length>=e){i+=t.size_left;var o={node:t,remainder:e-t.size_left,nodeStartOffset:i};return this._searchCache.set(o),o}e-=t.size_left+t.piece.length,i+=t.size_left+t.piece.length,t=t.right}return null},e.prototype.nodeAt2=function(e,t){for(var n=this.root,i=0;n!==cm;)if(n.left!==cm&&n.lf_left>=e-1)n=n.left;else{if(n.lf_left+n.piece.lineFeedCnt>e-1){var o=this.getAccumulatedValue(n,e-n.lf_left-2),r=this.getAccumulatedValue(n,e-n.lf_left-1);return i+=n.size_left,{node:n,remainder:Math.min(o+t-1,r),nodeStartOffset:i}}if(n.lf_left+n.piece.lineFeedCnt===e-1){if((o=this.getAccumulatedValue(n,e-n.lf_left-2))+t-1<=n.piece.length)return{node:n,remainder:o+t-1,nodeStartOffset:i};t-=n.piece.length-o;break}e-=n.lf_left+n.piece.lineFeedCnt,i+=n.size_left+n.piece.length,n=n.right}for(n=n.next();n!==cm;){if(n.piece.lineFeedCnt>0){r=this.getAccumulatedValue(n,0);var s=this.offsetOfNode(n);return{node:n,remainder:Math.min(t-1,r),nodeStartOffset:s}}if(n.piece.length>=t-1)return{node:n,remainder:t-1,nodeStartOffset:this.offsetOfNode(n)};t-=n.piece.length,n=n.next()}return null},e.prototype.nodeCharCodeAt=function(e,t){if(e.piece.lineFeedCnt<1)return-1;var n=this._buffers[e.piece.bufferIndex],i=this.offsetInBuffer(e.piece.bufferIndex,e.piece.start)+t;return n.buffer.charCodeAt(i)},e.prototype.offsetOfNode=function(e){if(!e)return 0;for(var t=e.size_left;e!==this.root;)e.parent.right===e&&(t+=e.parent.size_left+e.parent.piece.length),e=e.parent;return t},e.prototype.shouldCheckCRLF=function(){return!(this._EOLNormalized&&"\n"===this._EOL)},e.prototype.startWithLF=function(e){if("string"==typeof e)return 10===e.charCodeAt(0);if(e===cm||0===e.piece.lineFeedCnt)return!1;var t=e.piece,n=this._buffers[t.bufferIndex].lineStarts,i=t.start.line,o=n[i]+t.start.column;return i!==n.length-1&&(!(n[i+1]>o+1)&&10===this._buffers[t.bufferIndex].buffer.charCodeAt(o))},e.prototype.endWithCR=function(e){return"string"==typeof e?13===e.charCodeAt(e.length-1):e!==cm&&0!==e.piece.lineFeedCnt&&13===this.nodeCharCodeAt(e,e.piece.length-1)},e.prototype.validateCRLFWithPrevNode=function(e){if(this.shouldCheckCRLF()&&this.startWithLF(e)){var t=e.prev();this.endWithCR(t)&&this.fixCRLF(t,e)}},e.prototype.validateCRLFWithNextNode=function(e){if(this.shouldCheckCRLF()&&this.endWithCR(e)){var t=e.next();this.startWithLF(t)&&this.fixCRLF(e,t)}},e.prototype.fixCRLF=function(e,t){var n,i=[],o=this._buffers[e.piece.bufferIndex].lineStarts;n=0===e.piece.end.column?{line:e.piece.end.line-1,column:o[e.piece.end.line]-o[e.piece.end.line-1]-1}:{line:e.piece.end.line,column:e.piece.end.column-1};var r=e.piece.length-1,s=e.piece.lineFeedCnt-1;e.piece=new Fm(e.piece.bufferIndex,e.piece.start,n,s,r),bm(this,e,-1,-1),0===e.piece.length&&i.push(e);var a={line:t.piece.start.line+1,column:0},u=t.piece.length-1,l=this.getLineFeedCnt(t.piece.bufferIndex,a,t.piece.end);t.piece=new Fm(t.piece.bufferIndex,a,t.piece.end,l,u),bm(this,t,-1,-1),0===t.piece.length&&i.push(t);var c=this.createNewPieces("\r\n");this.rbInsertRight(e,c[0]);for(var d=0;d<i.length;d++)_m(this,i[d])},e.prototype.adjustCarriageReturnFromNext=function(e,t){if(this.shouldCheckCRLF()&&this.endWithCR(e)){var n=t.next();if(this.startWithLF(n)){if(e+="\n",1===n.piece.length)_m(this,n);else{var i=n.piece,o={line:i.start.line+1,column:0},r=i.length-1,s=this.getLineFeedCnt(i.bufferIndex,o,i.end);n.piece=new Fm(i.bufferIndex,o,i.end,s,r),bm(this,n,-1,-1)}return!0}}return!1},e.prototype.iterate=function(e,t){if(e===cm)return t(cm);var n=this.iterate(e.left,t);return n?t(e)&&this.iterate(e.right,t):n},e.prototype.getNodeContent=function(e){if(e===cm)return"";var t=this._buffers[e.piece.bufferIndex],n=e.piece,i=this.offsetInBuffer(n.bufferIndex,n.start),o=this.offsetInBuffer(n.bufferIndex,n.end);return t.buffer.substring(i,o)},e.prototype.rbInsertRight=function(e,t){var n=new lm(t,1);if(n.left=cm,n.right=cm,n.parent=cm,n.size_left=0,n.lf_left=0,this.root===cm)this.root=n,n.color=0;else if(e.right===cm)e.right=n,n.parent=e;else{var i=dm(e.right);i.left=n,n.parent=i}return ym(this,n),n},e.prototype.rbInsertLeft=function(e,t){var n=new lm(t,1);if(n.left=cm,n.right=cm,n.parent=cm,n.size_left=0,n.lf_left=0,this.root===cm)this.root=n,n.color=0;else if(e.left===cm)e.left=n,n.parent=e;else{var i=hm(e.left);i.right=n,n.parent=i}return ym(this,n),n},e}(),Hm=function(){function e(e,t,n,i,o,r){this._BOM=t,this._mightContainNonBasicASCII=!o,this._mightContainRTL=i,this._pieceTree=new Bm(e,n,r)}return e.prototype.mightContainRTL=function(){return this._mightContainRTL},e.prototype.mightContainNonBasicASCII=function(){return this._mightContainNonBasicASCII},e.prototype.getBOM=function(){return this._BOM},e.prototype.getEOL=function(){return this._pieceTree.getEOL()},e.prototype.getOffsetAt=function(e,t){return this._pieceTree.getOffsetAt(e,t)},e.prototype.getPositionAt=function(e){return this._pieceTree.getPositionAt(e)},e.prototype.getRangeAt=function(e,t){var n=e+t,i=this.getPositionAt(e),o=this.getPositionAt(n);return new wn(i.lineNumber,i.column,o.lineNumber,o.column)},e.prototype.getValueInRange=function(e,t){if(void 0===t&&(t=0),e.isEmpty())return"";var n=this._getEndOfLine(t);return this._pieceTree.getValueInRange(e,n)},e.prototype.getValueLengthInRange=function(e,t){if(void 0===t&&(t=0),e.isEmpty())return 0;if(e.startLineNumber===e.endLineNumber)return e.endColumn-e.startColumn;var n=this.getOffsetAt(e.startLineNumber,e.startColumn);return this.getOffsetAt(e.endLineNumber,e.endColumn)-n},e.prototype.getCharacterCountInRange=function(e,t){if(void 0===t&&(t=0),this._mightContainNonBasicASCII){for(var n=0,i=e.startLineNumber,o=e.endLineNumber,r=i;r<=o;r++)for(var s=this.getLineContent(r),a=r===i?e.startColumn-1:0,u=r===o?e.endColumn-1:s.length,l=a;l<u;l++)Tr(s.charCodeAt(l))?(n+=1,l+=1):n+=1;return n+=this._getEndOfLine(t).length*(o-i)}return this.getValueLengthInRange(e,t)},e.prototype.getLength=function(){return this._pieceTree.getLength()},e.prototype.getLineCount=function(){return this._pieceTree.getLineCount()},e.prototype.getLinesContent=function(){return this._pieceTree.getLinesContent()},e.prototype.getLineContent=function(e){return this._pieceTree.getLineContent(e)},e.prototype.getLineCharCode=function(e,t){return this._pieceTree.getLineCharCode(e,t)},e.prototype.getLineLength=function(e){return this._pieceTree.getLineLength(e)},e.prototype.getLineFirstNonWhitespaceColumn=function(e){var t=wr(this.getLineContent(e));return-1===t?0:t+1},e.prototype.getLineLastNonWhitespaceColumn=function(e){var t=Sr(this.getLineContent(e));return-1===t?0:t+2},e.prototype._getEndOfLine=function(e){switch(e){case 1:return"\n";case 2:return"\r\n";case 0:return this.getEOL()}throw new Error("Unknown EOL preference")},e.prototype.setEOL=function(e){this._pieceTree.setEOL(e)},e.prototype.applyEdits=function(t,n){for(var i=this._mightContainRTL,o=this._mightContainNonBasicASCII,r=!0,s=[],a=0;a<t.length;a++){var u=t[a];r&&u._isTracked&&(r=!1);var l=u.range;!i&&u.text&&(i=Vr(u.text)),!o&&u.text&&(o=!zr(u.text)),s[a]={sortIndex:a,identifier:u.identifier||null,range:l,rangeOffset:this.getOffsetAt(l.startLineNumber,l.startColumn),rangeLength:this.getValueLengthInRange(l),lines:u.text?u.text.split(/\r\n|\r|\n/):null,forceMoveMarkers:Boolean(u.forceMoveMarkers),isAutoWhitespaceEdit:u.isAutoWhitespaceEdit||!1}}s.sort(e._sortOpsAscending);for(var c=!1,d=(a=0,s.length-1);a<d;a++){var h=s[a].range.getEndPosition(),p=s[a+1].range.getStartPosition();if(p.isBeforeOrEqual(h)){if(p.isBefore(h))throw new Error("Overlapping ranges are not allowed!");c=!0}}r&&(s=this._reduceOperations(s));var f=e._getInverseEditRanges(s),g=[];for(a=0;a<s.length;a++){u=s[a];var m=f[a];if(n&&u.isAutoWhitespaceEdit&&u.range.isEmpty())for(var v=m.startLineNumber;v<=m.endLineNumber;v++){var _="";v===m.startLineNumber&&-1!==wr(_=this.getLineContent(u.range.startLineNumber))||g.push({lineNumber:v,oldContent:_})}}var y=[];for(a=0;a<s.length;a++){u=s[a],m=f[a];y[a]={sortIndex:u.sortIndex,identifier:u.identifier,range:m,text:this.getValueInRange(u.range),forceMoveMarkers:u.forceMoveMarkers}}c||y.sort((function(e,t){return e.sortIndex-t.sortIndex})),this._mightContainRTL=i,this._mightContainNonBasicASCII=o;var b=this._doApplyEdits(s),w=null;if(n&&g.length>0){g.sort((function(e,t){return t.lineNumber-e.lineNumber})),w=[];a=0;for(var C=g.length;a<C;a++){v=g[a].lineNumber;if(!(a>0&&g[a-1].lineNumber===v)){var S=g[a].oldContent,L=this.getLineContent(v);0!==L.length&&L!==S&&-1===wr(L)&&w.push(v)}}}return new Ka(y,b,w)},e.prototype._reduceOperations=function(e){return e.length<1e3?e:[this._toSingleEditOperation(e)]},e.prototype._toSingleEditOperation=function(e){for(var t=!1,n=e[0].range,i=e[e.length-1].range,o=new wn(n.startLineNumber,n.startColumn,i.endLineNumber,i.endColumn),r=n.startLineNumber,s=n.startColumn,a=[],u=0,l=e.length;u<l;u++){var c=e[u],d=c.range;t=t||c.forceMoveMarkers;for(var h=r;h<d.startLineNumber;h++)h===r?a.push(this.getLineContent(h).substring(s-1)):(a.push("\n"),a.push(this.getLineContent(h)));if(d.startLineNumber===r?a.push(this.getLineContent(d.startLineNumber).substring(s-1,d.startColumn-1)):(a.push("\n"),a.push(this.getLineContent(d.startLineNumber).substring(0,d.startColumn-1))),c.lines)for(var p=0,f=c.lines.length;p<f;p++)0!==p&&a.push("\n"),a.push(c.lines[p]);r=c.range.endLineNumber,s=c.range.endColumn}return{sortIndex:0,identifier:e[0].identifier,range:o,rangeOffset:this.getOffsetAt(o.startLineNumber,o.startColumn),rangeLength:this.getValueLengthInRange(o,0),lines:a.join("").split("\n"),forceMoveMarkers:t,isAutoWhitespaceEdit:!1}},e.prototype._doApplyEdits=function(t){t.sort(e._sortOpsDescending);for(var n=[],i=0;i<t.length;i++){var o=t[i],r=o.range.startLineNumber,s=o.range.startColumn,a=o.range.endLineNumber,u=o.range.endColumn;if(r!==a||s!==u||o.lines&&0!==o.lines.length){var l=a-r,c=o.lines?o.lines.length-1:0,d=Math.min(l,c),h=o.lines?o.lines.join(this.getEOL()):"";if(h?(this._pieceTree.delete(o.rangeOffset,o.rangeLength),this._pieceTree.insert(o.rangeOffset,h,!0)):this._pieceTree.delete(o.rangeOffset,o.rangeLength),d<c){for(var p=[],f=d+1;f<=c;f++)p.push(o.lines[f]);p[p.length-1]=this.getLineContent(r+c-1)}var g=new wn(r,s,a,u);n.push({range:g,rangeLength:o.rangeLength,text:h,rangeOffset:o.rangeOffset,forceMoveMarkers:o.forceMoveMarkers})}}return n},e.prototype.findMatchesLineByLine=function(e,t,n,i){return this._pieceTree.findMatchesLineByLine(e,t,n,i)},e._getInverseEditRanges=function(e){for(var t=[],n=0,i=0,o=null,r=0,s=e.length;r<s;r++){var a=e[r],u=void 0,l=void 0;o?o.range.endLineNumber===a.range.startLineNumber?(u=n,l=i+(a.range.startColumn-o.range.endColumn)):(u=n+(a.range.startLineNumber-o.range.endLineNumber),l=a.range.startColumn):(u=a.range.startLineNumber,l=a.range.startColumn);var c=void 0;if(a.lines&&a.lines.length>0){var d=a.lines.length,h=a.lines[0],p=a.lines[d-1];c=1===d?new wn(u,l,u,l+h.length):new wn(u,l,u+d-1,p.length+1)}else c=new wn(u,l,u,l);n=c.endLineNumber,i=c.endColumn,t.push(c),o=a}return t},e._sortOpsAscending=function(e,t){var n=wn.compareRangesUsingEnds(e.range,t.range);return 0===n?e.sortIndex-t.sortIndex:n},e._sortOpsDescending=function(e,t){var n=wn.compareRangesUsingEnds(e.range,t.range);return 0===n?t.sortIndex-e.sortIndex:-n},e}(),zm=function(){function e(e,t,n,i,o,r,s,a){this._chunks=e,this._bom=t,this._cr=n,this._lf=i,this._crlf=o,this._containsRTL=r,this._isBasicASCII=s,this._normalizeEOL=a}return e.prototype._getEOL=function(e){var t=this._cr+this._lf+this._crlf,n=this._cr+this._crlf;return 0===t?1===e?"\n":"\r\n":n>t/2?"\r\n":"\n"},e.prototype.create=function(e){var t=this._getEOL(e),n=this._chunks;if(this._normalizeEOL&&("\r\n"===t&&(this._cr>0||this._lf>0)||"\n"===t&&(this._cr>0||this._crlf>0)))for(var i=0,o=n.length;i<o;i++){var r=n[i].buffer.replace(/\r\n|\r|\n/g,t),s=Am(r);n[i]=new Wm(r,s)}return new Hm(n,this._bom,t,this._containsRTL,this._isBasicASCII,this._normalizeEOL)},e}(),jm=function(){function e(){this.chunks=[],this.BOM="",this._hasPreviousChar=!1,this._previousChar=0,this._tmpLineStarts=[],this.cr=0,this.lf=0,this.crlf=0,this.containsRTL=!1,this.isBasicASCII=!0}return e.prototype.acceptChunk=function(e){if(0!==e.length){0===this.chunks.length&&qr(e)&&(this.BOM=Kr,e=e.substr(1));var t=e.charCodeAt(e.length-1);13===t||t>=55296&&t<=56319?(this._acceptChunk1(e.substr(0,e.length-1),!1),this._hasPreviousChar=!0,this._previousChar=t):(this._acceptChunk1(e,!1),this._hasPreviousChar=!1,this._previousChar=t)}},e.prototype._acceptChunk1=function(e,t){(t||0!==e.length)&&(this._hasPreviousChar?this._acceptChunk2(String.fromCharCode(this._previousChar)+e):this._acceptChunk2(e))},e.prototype._acceptChunk2=function(e){var t=function(e,t){e.length=0,e[0]=0;for(var n=1,i=0,o=0,r=0,s=!0,a=0,u=t.length;a<u;a++){var l=t.charCodeAt(a);13===l?a+1<u&&10===t.charCodeAt(a+1)?(r++,e[n++]=a+2,a++):(i++,e[n++]=a+1):10===l?(o++,e[n++]=a+1):s&&9!==l&&(l<32||l>126)&&(s=!1)}var c=new Rm(Pm(e),i,o,r,s);return e.length=0,c}(this._tmpLineStarts,e);this.chunks.push(new Wm(e,t.lineStarts)),this.cr+=t.cr,this.lf+=t.lf,this.crlf+=t.crlf,this.isBasicASCII&&(this.isBasicASCII=t.isBasicASCII),this.isBasicASCII||this.containsRTL||(this.containsRTL=Vr(e))},e.prototype.finish=function(e){return void 0===e&&(e=!0),this._finish(),new zm(this.chunks,this.BOM,this.cr,this.lf,this.crlf,this.containsRTL,this.isBasicASCII,e)},e.prototype._finish=function(){if(0===this.chunks.length&&this._acceptChunk1("",!0),this._hasPreviousChar){this._hasPreviousChar=!1;var e=this.chunks[this.chunks.length-1];e.buffer+=String.fromCharCode(this._previousChar);var t=Am(e.buffer);e.lineStarts=t,13===this._previousChar&&this.cr++}},e}(),Um=function(){this.changeType=1},Km=function(e,t){this.changeType=2,this.lineNumber=e,this.detail=t},qm=function(e,t){this.changeType=3,this.fromLineNumber=e,this.toLineNumber=t},Gm=function(e,t,n){this.changeType=4,this.fromLineNumber=e,this.toLineNumber=t,this.detail=n},Zm=function(){this.changeType=5},Ym=function(){function e(e,t,n,i){this.changes=e,this.versionId=t,this.isUndoing=n,this.isRedoing=i}return e.prototype.containsEvent=function(e){for(var t=0,n=this.changes.length;t<n;t++){if(this.changes[t].changeType===e)return!0}return!1},e.merge=function(t,n){return new e([].concat(t.changes).concat(n.changes),n.versionId,t.isUndoing||n.isUndoing,t.isRedoing||n.isRedoing)},e}(),Xm=function(){function e(e,t){this.rawContentChangedEvent=e,this.contentChangedEvent=t}return e.prototype.merge=function(t){var n=Ym.merge(this.rawContentChangedEvent,t.rawContentChangedEvent),i=e._mergeChangeEvents(this.contentChangedEvent,t.contentChangedEvent);return new e(n,i)},e._mergeChangeEvents=function(e,t){return{changes:[].concat(e.changes).concat(t.changes),eol:t.eol,versionId:t.versionId,isUndoing:e.isUndoing||t.isUndoing,isRedoing:e.isRedoing||t.isRedoing,isFlush:e.isFlush||t.isFlush}},e}();function $m(e){for(var t=0,n=0,i=0,o=0,r=e.length;o<r;o++){var s=e.charCodeAt(o);13===s?(0===t&&(n=o),t++,o+1<r&&10===e.charCodeAt(o+1)&&o++,i=o+1):10===s&&(0===t&&(n=o),t++,i=o+1)}return 0===t&&(n=e.length),[t,n,e.length-i]}function Qm(e){return(16384|e<<0|2<<23)>>>0}var Jm=new Uint32Array(0).buffer,ev=function(){function e(){this.tokens=[]}return e.prototype.add=function(e,t){if(this.tokens.length>0){var n=this.tokens[this.tokens.length-1];if(n.startLineNumber+n.tokens.length-1+1===e)return void n.tokens.push(t)}this.tokens.push(new ov(e,[t]))},e}(),tv=function(){function e(e){this._tokens=e,this._tokenCount=e.length/4}return e.prototype.getMaxDeltaLine=function(){var e=this.getTokenCount();return 0===e?-1:this.getDeltaLine(e-1)},e.prototype.getTokenCount=function(){return this._tokenCount},e.prototype.getDeltaLine=function(e){return this._tokens[4*e]},e.prototype.getStartCharacter=function(e){return this._tokens[4*e+1]},e.prototype.getEndCharacter=function(e){return this._tokens[4*e+2]},e.prototype.getMetadata=function(e){return this._tokens[4*e+3]},e.prototype.clear=function(){this._tokenCount=0},e.prototype.acceptDeleteRange=function(e,t,n,i,o){for(var r=this._tokens,s=this._tokenCount,a=i-t,u=0,l=!1,c=0;c<s;c++){var d=4*c,h=r[d],p=r[d+1],f=r[d+2],g=r[d+3];if(h<t||h===t&&f<=n)u++;else{if(h===t&&p<n)h===i&&f>o?f-=o-n:f=n;else if(h===t&&p===n){if(!(h===i&&f>o)){l=!0;continue}f-=o-n}else if(h<i||h===i&&p<o){if(!(h===i&&f>o)){l=!0;continue}f=h===t?(p=n)+(f-o):(p=0)+(f-o)}else if(h>i){if(0===a&&!l){u=s;break}h-=a}else{if(!(h===i&&p>=o))throw new Error("Not possible!");e&&0===h&&(p+=e,f+=e),h-=a,p-=o-n,f-=o-n}var m=4*u;r[m]=h,r[m+1]=p,r[m+2]=f,r[m+3]=g,u++}}this._tokenCount=u},e.prototype.acceptInsertText=function(e,t,n,i,o,r){for(var s=0===n&&1===i&&(r>=48&&r<=57||r>=65&&r<=90||r>=97&&r<=122),a=this._tokens,u=this._tokenCount,l=0;l<u;l++){var c=4*l,d=a[c],h=a[c+1],p=a[c+2];if(!(d<e||d===e&&p<t)){if(d===e&&p===t){if(!s)continue;p+=1}else if(d===e&&h<t&&t<p)0===n?p+=i:p=t;else{if(d===e&&h===t&&s)continue;if(d===e)if(d+=n,0===n)h+=i,p+=i;else{var f=p-h;p=(h=o+(h-t))+f}else d+=n}a[c]=d,a[c+1]=h,a[c+2]=p}}},e}(),nv=function(){function e(e,t,n){this._actual=e,this._startTokenIndex=t,this._endTokenIndex=n}return e.prototype.getCount=function(){return this._endTokenIndex-this._startTokenIndex+1},e.prototype.getStartCharacter=function(e){return this._actual.getStartCharacter(this._startTokenIndex+e)},e.prototype.getEndCharacter=function(e){return this._actual.getEndCharacter(this._startTokenIndex+e)},e.prototype.getMetadata=function(e){return this._actual.getMetadata(this._startTokenIndex+e)},e}(),iv=function(){function e(e,t){this.startLineNumber=e,this.tokens=t,this.endLineNumber=this.startLineNumber+this.tokens.getMaxDeltaLine()}return e.prototype._updateEndLineNumber=function(){this.endLineNumber=this.startLineNumber+this.tokens.getMaxDeltaLine()},e.prototype.getLineTokens=function(t){if(this.startLineNumber<=t&&t<=this.endLineNumber){var n=e._findTokensWithLine(this.tokens,t-this.startLineNumber);if(n){var i=n[0],o=n[1];return new nv(this.tokens,i,o)}}return null},e._findTokensWithLine=function(e,t){for(var n=0,i=e.getTokenCount()-1;n<i;){var o=n+Math.floor((i-n)/2),r=e.getDeltaLine(o);if(r<t)n=o+1;else{if(!(r>t)){for(var s=o;s>n&&e.getDeltaLine(s-1)===t;)s--;for(var a=o;a<i&&e.getDeltaLine(a+1)===t;)a++;return[s,a]}i=o-1}}return e.getDeltaLine(n)===t?[n,n]:null},e.prototype.applyEdit=function(e,t){var n=$m(t),i=n[0],o=n[1],r=n[2];this.acceptEdit(e,i,o,r,t.length>0?t.charCodeAt(0):0)},e.prototype.acceptEdit=function(e,t,n,i,o){this._acceptDeleteRange(e),this._acceptInsertText(new bn(e.startLineNumber,e.startColumn),t,n,i,o),this._updateEndLineNumber()},e.prototype._acceptDeleteRange=function(e){if(e.startLineNumber!==e.endLineNumber||e.startColumn!==e.endColumn){var t=e.startLineNumber-this.startLineNumber,n=e.endLineNumber-this.startLineNumber;if(n<0){var i=n-t;this.startLineNumber-=i}else{var o=this.tokens.getMaxDeltaLine();if(!(t>=o+1)){if(t<0&&n>=o+1)return this.startLineNumber=0,void this.tokens.clear();if(t<0){var r=-t;this.startLineNumber-=r,this.tokens.acceptDeleteRange(e.startColumn-1,0,0,n,e.endColumn-1)}else this.tokens.acceptDeleteRange(0,t,e.startColumn-1,n,e.endColumn-1)}}}},e.prototype._acceptInsertText=function(e,t,n,i,o){if(0!==t||0!==n){var r=e.lineNumber-this.startLineNumber;if(r<0)this.startLineNumber+=t;else r>=this.tokens.getMaxDeltaLine()+1||this.tokens.acceptInsertText(r,e.column-1,t,n,i,o)}},e}(),ov=function(e,t){this.startLineNumber=e,this.tokens=t};function rv(e){return e instanceof Uint32Array?e:new Uint32Array(e)}var sv=function(){function e(){this._pieces=[]}return e.prototype.flush=function(){this._pieces=[]},e.prototype.set=function(e){this._pieces=e||[]},e.prototype.addSemanticTokens=function(t,n){var i=this._pieces;if(0===i.length)return n;var o=e._findFirstPieceWithLine(i,t),r=this._pieces[o].getLineTokens(t);if(!r)return n;for(var s=n.getCount(),a=r.getCount(),u=0,l=[],c=0,d=0;d<a;d++){for(var h=r.getStartCharacter(d),p=r.getEndCharacter(d),f=r.getMetadata(d),g=((1&f?2048:0)|(2&f?4096:0)|(4&f?8192:0)|(8&f?8372224:0)|(16&f?4286578688:0))>>>0,m=~g>>>0;u<s&&n.getEndOffset(u)<=h;)l[c++]=n.getEndOffset(u),l[c++]=n.getMetadata(u),u++;for(u<s&&n.getStartOffset(u)<h&&(l[c++]=h,l[c++]=n.getMetadata(u));u<s&&n.getEndOffset(u)<p;)l[c++]=n.getEndOffset(u),l[c++]=n.getMetadata(u)&m|f&g,u++;if(u<s&&n.getEndOffset(u)===p)l[c++]=n.getEndOffset(u),l[c++]=n.getMetadata(u)&m|f&g,u++;else{var v=Math.min(Math.max(0,u-1),s-1);l[c++]=p,l[c++]=n.getMetadata(v)&m|f&g}}for(;u<s;)l[c++]=n.getEndOffset(u),l[c++]=n.getMetadata(u),u++;return new Vc(new Uint32Array(l),n.getLineContent())},e._findFirstPieceWithLine=function(e,t){for(var n=0,i=e.length-1;n<i;){var o=n+Math.floor((i-n)/2);if(e[o].endLineNumber<t)n=o+1;else{if(!(e[o].startLineNumber>t)){for(;o>n&&e[o-1].startLineNumber<=t&&t<=e[o-1].endLineNumber;)o--;return o}i=o-1}}return n},e.prototype.acceptEdit=function(e,t,n,i,o){for(var r=0,s=this._pieces;r<s.length;r++){s[r].acceptEdit(e,t,n,i,o)}},e}(),av=function(){function e(){this._lineTokens=[],this._len=0}return e.prototype.flush=function(){this._lineTokens=[],this._len=0},e.prototype.getTokens=function(e,t,n){var i=null;if(t<this._len&&(i=this._lineTokens[t]),null!==i&&i!==Jm)return new Vc(rv(i),n);var o=new Uint32Array(2);return o[0]=n.length,o[1]=Qm(e),new Vc(o,n)},e._massageTokens=function(e,t,n){var i=n?rv(n):null;if(0===t){var o=!1;if(i&&i.length>1&&(o=wu.getLanguageId(i[1])!==e),!o)return Jm}if(!i||0===i.length){var r=new Uint32Array(2);return r[0]=t,r[1]=Qm(e),r.buffer}return i[i.length-2]=t,0===i.byteOffset&&i.byteLength===i.buffer.byteLength?i.buffer:i},e.prototype._ensureLine=function(e){for(;e>=this._len;)this._lineTokens[this._len]=null,this._len++},e.prototype._deleteLines=function(e,t){0!==t&&(e+t>this._len&&(t=this._len-e),this._lineTokens.splice(e,t),this._len-=t)},e.prototype._insertLines=function(e,t){if(0!==t){for(var n=[],i=0;i<t;i++)n[i]=null;this._lineTokens=Vi(this._lineTokens,e,n),this._len+=t}},e.prototype.setTokens=function(t,n,i,o){var r=e._massageTokens(t,i,o);this._ensureLine(n),this._lineTokens[n]=r},e.prototype.acceptEdit=function(e,t,n){this._acceptDeleteRange(e),this._acceptInsertText(new bn(e.startLineNumber,e.startColumn),t,n)},e.prototype._acceptDeleteRange=function(t){var n=t.startLineNumber-1;if(!(n>=this._len))if(t.startLineNumber!==t.endLineNumber){this._lineTokens[n]=e._deleteEnding(this._lineTokens[n],t.startColumn-1);var i=t.endLineNumber-1,o=null;i<this._len&&(o=e._deleteBeginning(this._lineTokens[i],t.endColumn-1)),this._lineTokens[n]=e._append(this._lineTokens[n],o),this._deleteLines(t.startLineNumber,t.endLineNumber-t.startLineNumber)}else{if(t.startColumn===t.endColumn)return;this._lineTokens[n]=e._delete(this._lineTokens[n],t.startColumn-1,t.endColumn-1)}},e.prototype._acceptInsertText=function(t,n,i){if(0!==n||0!==i){var o=t.lineNumber-1;o>=this._len||(0!==n?(this._lineTokens[o]=e._deleteEnding(this._lineTokens[o],t.column-1),this._lineTokens[o]=e._insert(this._lineTokens[o],t.column-1,i),this._insertLines(t.lineNumber,n)):this._lineTokens[o]=e._insert(this._lineTokens[o],t.column-1,i))}},e._deleteBeginning=function(t,n){return null===t||t===Jm?t:e._delete(t,0,n)},e._deleteEnding=function(t,n){if(null===t||t===Jm)return t;var i=rv(t),o=i[i.length-2];return e._delete(t,n,o)},e._delete=function(e,t,n){if(null===e||e===Jm||t===n)return e;var i=rv(e),o=i.length>>>1;if(0===t&&i[i.length-2]===n)return Jm;var r,s,a=Vc.findIndexInTokensArray(i,t),u=a>0?i[a-1<<1]:0;if(n<i[a<<1]){for(var l=n-t,c=a;c<o;c++)i[c<<1]-=l;return e}u!==t?(i[a<<1]=t,r=a+1<<1,s=t):(r=a<<1,s=u);for(var d=n-t,h=a+1;h<o;h++){var p=i[h<<1]-d;p>s&&(i[r++]=p,i[r++]=i[1+(h<<1)],s=p)}if(r===i.length)return e;var f=new Uint32Array(r);return f.set(i.subarray(0,r),0),f.buffer},e._append=function(e,t){if(t===Jm)return e;if(e===Jm)return t;if(null===e)return e;if(null===t)return null;var n=rv(e),i=rv(t),o=i.length>>>1,r=new Uint32Array(n.length+i.length);r.set(n,0);for(var s=n.length,a=n[n.length-2],u=0;u<o;u++)r[s++]=i[u<<1]+a,r[s++]=i[1+(u<<1)];return r.buffer},e._insert=function(e,t,n){if(null===e||e===Jm)return e;var i=rv(e),o=i.length>>>1,r=Vc.findIndexInTokensArray(i,t);r>0&&(i[r-1<<1]===t&&r--);for(var s=r;s<o;s++)i[s<<1]+=n;return e},e}(),uv=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),lv=function(){function e(){this._beginState=[],this._valid=[],this._len=0,this._invalidLineStartIndex=0}return e.prototype._reset=function(e){this._beginState=[],this._valid=[],this._len=0,this._invalidLineStartIndex=0,e&&this._setBeginState(0,e)},e.prototype.flush=function(e){this._reset(e)},Object.defineProperty(e.prototype,"invalidLineStartIndex",{get:function(){return this._invalidLineStartIndex},enumerable:!0,configurable:!0}),e.prototype._invalidateLine=function(e){e<this._len&&(this._valid[e]=!1),e<this._invalidLineStartIndex&&(this._invalidLineStartIndex=e)},e.prototype._isValid=function(e){return e<this._len&&this._valid[e]},e.prototype.getBeginState=function(e){return e<this._len?this._beginState[e]:null},e.prototype._ensureLine=function(e){for(;e>=this._len;)this._beginState[this._len]=null,this._valid[this._len]=!1,this._len++},e.prototype._deleteLines=function(e,t){0!==t&&(e+t>this._len&&(t=this._len-e),this._beginState.splice(e,t),this._valid.splice(e,t),this._len-=t)},e.prototype._insertLines=function(e,t){if(0!==t){for(var n=[],i=[],o=0;o<t;o++)n[o]=null,i[o]=!1;this._beginState=Vi(this._beginState,e,n),this._valid=Vi(this._valid,e,i),this._len+=t}},e.prototype._setValid=function(e,t){this._ensureLine(e),this._valid[e]=t},e.prototype._setBeginState=function(e,t){this._ensureLine(e),this._beginState[e]=t},e.prototype.setEndState=function(e,t,n){if(this._setValid(t,!0),this._invalidLineStartIndex=t+1,t!==e-1){var i=this.getBeginState(t+1);if(null===i||!n.equals(i))return this._setBeginState(t+1,n),void this._invalidateLine(t+1);for(var o=t+1;o<e&&this._isValid(o);)o++;this._invalidLineStartIndex=o}},e.prototype.setFakeTokens=function(e){this._setValid(e,!1)},e.prototype.applyEdits=function(e,t){for(var n=e.endLineNumber-e.startLineNumber,i=t,o=Math.min(n,i);o>=0;o--)this._invalidateLine(e.startLineNumber+o-1);this._acceptDeleteRange(e),this._acceptInsertText(new bn(e.startLineNumber,e.startColumn),t)},e.prototype._acceptDeleteRange=function(e){e.startLineNumber-1>=this._len||this._deleteLines(e.startLineNumber,e.endLineNumber-e.startLineNumber)},e.prototype._acceptInsertText=function(e,t){e.lineNumber-1>=this._len||this._insertLines(e.lineNumber,t)},e}(),cv=function(e){function t(t){var n=e.call(this)||this;return n._isDisposed=!1,n._textModel=t,n._tokenizationStateStore=new lv,n._tokenizationSupport=null,n._register(Yu.onDidChange((function(e){var t=n._textModel.getLanguageIdentifier();-1!==e.changedLanguages.indexOf(t.language)&&(n._resetTokenizationState(),n._textModel.clearTokens())}))),n._register(n._textModel.onDidChangeRawContentFast((function(e){e.containsEvent(1)&&n._resetTokenizationState()}))),n._register(n._textModel.onDidChangeContentFast((function(e){for(var t=0,i=e.changes.length;t<i;t++){var o=e.changes[t],r=$m(o.text)[0];n._tokenizationStateStore.applyEdits(o.range,r)}n._beginBackgroundTokenization()}))),n._register(n._textModel.onDidChangeAttached((function(){n._beginBackgroundTokenization()}))),n._register(n._textModel.onDidChangeLanguage((function(){n._resetTokenizationState(),n._textModel.clearTokens()}))),n._resetTokenizationState(),n}return uv(t,e),t.prototype.dispose=function(){this._isDisposed=!0,e.prototype.dispose.call(this)},t.prototype._resetTokenizationState=function(){var e=function(e){var t=e.getLanguageIdentifier(),n=e.isTooLargeForTokenization()?null:Yu.get(t.language),i=null;if(n)try{i=n.getInitialState()}catch(e){De(e),n=null}return[n,i]}(this._textModel),t=e[0],n=e[1];this._tokenizationSupport=t,this._tokenizationStateStore.flush(n),this._beginBackgroundTokenization()},t.prototype._beginBackgroundTokenization=function(){var e=this;this._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&L((function(){e._isDisposed||e._revalidateTokensNow()}))},t.prototype._revalidateTokensNow=function(e){void 0===e&&(e=this._textModel.getLineCount());for(var t=new ev,n=Cc.create(!1);this._hasLinesToTokenize()&&!(n.elapsed()>1);){if(this._tokenizeOneInvalidLine(t)>=e)break}this._beginBackgroundTokenization(),this._textModel.setTokens(t.tokens)},t.prototype.tokenizeViewport=function(e,t){var n=new ev;this._tokenizeViewport(n,e,t),this._textModel.setTokens(n.tokens)},t.prototype.reset=function(){this._resetTokenizationState(),this._textModel.clearTokens()},t.prototype.forceTokenization=function(e){var t=new ev;this._updateTokensUntilLine(t,e),this._textModel.setTokens(t.tokens)},t.prototype.isCheapToTokenize=function(e){if(!this._tokenizationSupport)return!0;var t=this._tokenizationStateStore.invalidLineStartIndex+1;return!(e>t)&&(e<t||this._textModel.getLineLength(e)<2048)},t.prototype._hasLinesToTokenize=function(){return!!this._tokenizationSupport&&this._tokenizationStateStore.invalidLineStartIndex<this._textModel.getLineCount()},t.prototype._tokenizeOneInvalidLine=function(e){if(!this._hasLinesToTokenize())return this._textModel.getLineCount()+1;var t=this._tokenizationStateStore.invalidLineStartIndex+1;return this._updateTokensUntilLine(e,t),t},t.prototype._updateTokensUntilLine=function(e,t){if(this._tokenizationSupport)for(var n=this._textModel.getLanguageIdentifier(),i=this._textModel.getLineCount(),o=t-1,r=this._tokenizationStateStore.invalidLineStartIndex;r<=o;r++){var s=this._textModel.getLineContent(r+1),a=this._tokenizationStateStore.getBeginState(r),u=dv(n,this._tokenizationSupport,s,a);e.add(r+1,u.tokens),this._tokenizationStateStore.setEndState(i,r,u.endState),r=this._tokenizationStateStore.invalidLineStartIndex-1}},t.prototype._tokenizeViewport=function(e,t,n){if(this._tokenizationSupport&&!(n<=this._tokenizationStateStore.invalidLineStartIndex))if(t<=this._tokenizationStateStore.invalidLineStartIndex)this._updateTokensUntilLine(e,n);else{for(var i=this._textModel.getLineFirstNonWhitespaceColumn(t),o=[],r=null,s=t-1;i>0&&s>=1;s--){var a=this._textModel.getLineFirstNonWhitespaceColumn(s);if(0!==a&&a<i){if(r=this._tokenizationStateStore.getBeginState(s-1))break;o.push(this._textModel.getLineContent(s)),i=a}}r||(r=this._tokenizationSupport.getInitialState());var u=this._textModel.getLanguageIdentifier(),l=r;for(s=o.length-1;s>=0;s--){l=(h=dv(u,this._tokenizationSupport,o[s],l)).endState}for(var c=t;c<=n;c++){var d=this._textModel.getLineContent(c),h=dv(u,this._tokenizationSupport,d,l);e.add(c,h.tokens),this._tokenizationStateStore.setFakeTokens(c-1),l=h.endState}}},t}(He);function dv(e,t,n,i){var o=null;if(t)try{o=t.tokenize2(n,i.clone(),0)}catch(e){De(e)}return o||(o=Ju(e.id,0,i,0)),Vc.convertToEndOffset(o.tokens,n.length),o}function hv(e,t){var n=Math.pow(10,t);return Math.round(e*n)/n}var pv=function(){function e(e,t,n,i){void 0===i&&(i=1),this.r=0|Math.min(255,Math.max(0,e)),this.g=0|Math.min(255,Math.max(0,t)),this.b=0|Math.min(255,Math.max(0,n)),this.a=hv(Math.max(Math.min(1,i),0),3)}return e.equals=function(e,t){return e.r===t.r&&e.g===t.g&&e.b===t.b&&e.a===t.a},e}(),fv=function(){function e(e,t,n,i){this.h=0|Math.max(Math.min(360,e),0),this.s=hv(Math.max(Math.min(1,t),0),3),this.l=hv(Math.max(Math.min(1,n),0),3),this.a=hv(Math.max(Math.min(1,i),0),3)}return e.equals=function(e,t){return e.h===t.h&&e.s===t.s&&e.l===t.l&&e.a===t.a},e.fromRGBA=function(t){var n=t.r/255,i=t.g/255,o=t.b/255,r=t.a,s=Math.max(n,i,o),a=Math.min(n,i,o),u=0,l=0,c=(a+s)/2,d=s-a;if(d>0){switch(l=Math.min(c<=.5?d/(2*c):d/(2-2*c),1),s){case n:u=(i-o)/d+(i<o?6:0);break;case i:u=(o-n)/d+2;break;case o:u=(n-i)/d+4}u*=60,u=Math.round(u)}return new e(u,l,c,r)},e._hue2rgb=function(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e},e.toRGBA=function(t){var n,i,o,r=t.h/360,s=t.s,a=t.l,u=t.a;if(0===s)n=i=o=a;else{var l=a<.5?a*(1+s):a+s-a*s,c=2*a-l;n=e._hue2rgb(c,l,r+1/3),i=e._hue2rgb(c,l,r),o=e._hue2rgb(c,l,r-1/3)}return new pv(Math.round(255*n),Math.round(255*i),Math.round(255*o),u)},e}(),gv=function(){function e(e,t,n,i){this.h=0|Math.max(Math.min(360,e),0),this.s=hv(Math.max(Math.min(1,t),0),3),this.v=hv(Math.max(Math.min(1,n),0),3),this.a=hv(Math.max(Math.min(1,i),0),3)}return e.equals=function(e,t){return e.h===t.h&&e.s===t.s&&e.v===t.v&&e.a===t.a},e.fromRGBA=function(t){var n,i=t.r/255,o=t.g/255,r=t.b/255,s=Math.max(i,o,r),a=s-Math.min(i,o,r),u=0===s?0:a/s;return n=0===a?0:s===i?((o-r)/a%6+6)%6:s===o?(r-i)/a+2:(i-o)/a+4,new e(Math.round(60*n),u,s,t.a)},e.toRGBA=function(e){var t=e.h,n=e.s,i=e.v,o=e.a,r=i*n,s=r*(1-Math.abs(t/60%2-1)),a=i-r,u=[0,0,0],l=u[0],c=u[1],d=u[2];return t<60?(l=r,c=s):t<120?(l=s,c=r):t<180?(c=r,d=s):t<240?(c=s,d=r):t<300?(l=s,d=r):t<360&&(l=r,d=s),l=Math.round(255*(l+a)),c=Math.round(255*(c+a)),d=Math.round(255*(d+a)),new pv(l,c,d,o)},e}(),mv=function(){function e(e){if(!e)throw new Error("Color needs a value");if(e instanceof pv)this.rgba=e;else if(e instanceof fv)this._hsla=e,this.rgba=fv.toRGBA(e);else{if(!(e instanceof gv))throw new Error("Invalid color ctor argument");this._hsva=e,this.rgba=gv.toRGBA(e)}}return e.fromHex=function(t){return e.Format.CSS.parseHex(t)||e.red},Object.defineProperty(e.prototype,"hsla",{get:function(){return this._hsla?this._hsla:fv.fromRGBA(this.rgba)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hsva",{get:function(){return this._hsva?this._hsva:gv.fromRGBA(this.rgba)},enumerable:!0,configurable:!0}),e.prototype.equals=function(e){return!!e&&pv.equals(this.rgba,e.rgba)&&fv.equals(this.hsla,e.hsla)&&gv.equals(this.hsva,e.hsva)},e.prototype.getRelativeLuminance=function(){return hv(.2126*e._relativeLuminanceForComponent(this.rgba.r)+.7152*e._relativeLuminanceForComponent(this.rgba.g)+.0722*e._relativeLuminanceForComponent(this.rgba.b),4)},e._relativeLuminanceForComponent=function(e){var t=e/255;return t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)},e.prototype.isLighter=function(){return(299*this.rgba.r+587*this.rgba.g+114*this.rgba.b)/1e3>=128},e.prototype.isLighterThan=function(e){return this.getRelativeLuminance()>e.getRelativeLuminance()},e.prototype.isDarkerThan=function(e){return this.getRelativeLuminance()<e.getRelativeLuminance()},e.prototype.lighten=function(t){return new e(new fv(this.hsla.h,this.hsla.s,this.hsla.l+this.hsla.l*t,this.hsla.a))},e.prototype.darken=function(t){return new e(new fv(this.hsla.h,this.hsla.s,this.hsla.l-this.hsla.l*t,this.hsla.a))},e.prototype.transparent=function(t){var n=this.rgba,i=n.r,o=n.g,r=n.b,s=n.a;return new e(new pv(i,o,r,s*t))},e.prototype.isTransparent=function(){return 0===this.rgba.a},e.prototype.isOpaque=function(){return 1===this.rgba.a},e.prototype.opposite=function(){return new e(new pv(255-this.rgba.r,255-this.rgba.g,255-this.rgba.b,this.rgba.a))},e.prototype.toString=function(){return""+e.Format.CSS.format(this)},e.getLighterColor=function(e,t,n){if(e.isLighterThan(t))return e;n=n||.5;var i=e.getRelativeLuminance(),o=t.getRelativeLuminance();return n=n*(o-i)/o,e.lighten(n)},e.getDarkerColor=function(e,t,n){if(e.isDarkerThan(t))return e;n=n||.5;var i=e.getRelativeLuminance();return n=n*(i-t.getRelativeLuminance())/i,e.darken(n)},e.white=new e(new pv(255,255,255,1)),e.black=new e(new pv(0,0,0,1)),e.red=new e(new pv(255,0,0,1)),e.blue=new e(new pv(0,0,255,1)),e.cyan=new e(new pv(0,255,255,1)),e.lightgrey=new e(new pv(211,211,211,1)),e.transparent=new e(new pv(0,0,0,0)),e}();!function(e){!function(t){!function(t){function n(e){var t=e.toString(16);return 2!==t.length?"0"+t:t}function i(e){switch(e){case 48:return 0;case 49:return 1;case 50:return 2;case 51:return 3;case 52:return 4;case 53:return 5;case 54:return 6;case 55:return 7;case 56:return 8;case 57:return 9;case 97:case 65:return 10;case 98:case 66:return 11;case 99:case 67:return 12;case 100:case 68:return 13;case 101:case 69:return 14;case 102:case 70:return 15}return 0}t.formatRGB=function(t){return 1===t.rgba.a?"rgb("+t.rgba.r+", "+t.rgba.g+", "+t.rgba.b+")":e.Format.CSS.formatRGBA(t)},t.formatRGBA=function(e){return"rgba("+e.rgba.r+", "+e.rgba.g+", "+e.rgba.b+", "+ +e.rgba.a.toFixed(2)+")"},t.formatHSL=function(t){return 1===t.hsla.a?"hsl("+t.hsla.h+", "+(100*t.hsla.s).toFixed(2)+"%, "+(100*t.hsla.l).toFixed(2)+"%)":e.Format.CSS.formatHSLA(t)},t.formatHSLA=function(e){return"hsla("+e.hsla.h+", "+(100*e.hsla.s).toFixed(2)+"%, "+(100*e.hsla.l).toFixed(2)+"%, "+e.hsla.a.toFixed(2)+")"},t.formatHex=function(e){return"#"+n(e.rgba.r)+n(e.rgba.g)+n(e.rgba.b)},t.formatHexA=function(t,i){return void 0===i&&(i=!1),i&&1===t.rgba.a?e.Format.CSS.formatHex(t):"#"+n(t.rgba.r)+n(t.rgba.g)+n(t.rgba.b)+n(Math.round(255*t.rgba.a))},t.format=function(t){return t.isOpaque()?e.Format.CSS.formatHex(t):e.Format.CSS.formatRGBA(t)},t.parseHex=function(t){var n=t.length;if(0===n)return null;if(35!==t.charCodeAt(0))return null;if(7===n){var o=16*i(t.charCodeAt(1))+i(t.charCodeAt(2)),r=16*i(t.charCodeAt(3))+i(t.charCodeAt(4)),s=16*i(t.charCodeAt(5))+i(t.charCodeAt(6));return new e(new pv(o,r,s,1))}if(9===n){o=16*i(t.charCodeAt(1))+i(t.charCodeAt(2)),r=16*i(t.charCodeAt(3))+i(t.charCodeAt(4)),s=16*i(t.charCodeAt(5))+i(t.charCodeAt(6));var a=16*i(t.charCodeAt(7))+i(t.charCodeAt(8));return new e(new pv(o,r,s,a/255))}if(4===n){o=i(t.charCodeAt(1)),r=i(t.charCodeAt(2)),s=i(t.charCodeAt(3));return new e(new pv(16*o+o,16*r+r,16*s+s))}if(5===n){o=i(t.charCodeAt(1)),r=i(t.charCodeAt(2)),s=i(t.charCodeAt(3)),a=i(t.charCodeAt(4));return new e(new pv(16*o+o,16*r+r,16*s+s,(16*a+a)/255))}return null}}(t.CSS||(t.CSS={}))}(e.Format||(e.Format={}))}(mv||(mv={}));var vv=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function _v(e){var t=new jm;return t.acceptChunk(e),t.finish()}function yv(e,t){return("string"==typeof e?_v(e):e).create(t)}var bv=0,wv=function(){throw new Error("Invalid change accessor")},Cv=function(e){function t(n,i,o,r){void 0===r&&(r=null);var s=e.call(this)||this;s._onWillDispose=s._register(new nt),s.onWillDispose=s._onWillDispose.event,s._onDidChangeDecorations=s._register(new Ov),s.onDidChangeDecorations=s._onDidChangeDecorations.event,s._onDidChangeLanguage=s._register(new nt),s.onDidChangeLanguage=s._onDidChangeLanguage.event,s._onDidChangeLanguageConfiguration=s._register(new nt),s.onDidChangeLanguageConfiguration=s._onDidChangeLanguageConfiguration.event,s._onDidChangeTokens=s._register(new nt),s.onDidChangeTokens=s._onDidChangeTokens.event,s._onDidChangeOptions=s._register(new nt),s.onDidChangeOptions=s._onDidChangeOptions.event,s._onDidChangeAttached=s._register(new nt),s.onDidChangeAttached=s._onDidChangeAttached.event,s._eventEmitter=s._register(new Mv),bv++,s.id="$model"+bv,s.isForSimpleWidget=i.isForSimpleWidget,s._associatedResource=null==r?Et.parse("inmemory://model/"+bv):r,s._attachedEditorCount=0,s._buffer=yv(n,i.defaultEOL),s._options=t.resolveOptions(s._buffer,i);var a=s._buffer.getLineCount(),u=s._buffer.getValueLengthInRange(new wn(1,1,a,s._buffer.getLineLength(a)+1),0);return i.largeFileOptimizations?s._isTooLargeForTokenization=u>t.LARGE_FILE_SIZE_THRESHOLD||a>t.LARGE_FILE_LINE_COUNT_THRESHOLD:s._isTooLargeForTokenization=!1,s._isTooLargeForSyncing=u>t.MODEL_SYNC_LIMIT,s._versionId=1,s._alternativeVersionId=1,s._isDisposed=!1,s._isDisposing=!1,s._languageIdentifier=o||$u,s._languageRegistryListener=Ol.onDidChange((function(e){e.languageIdentifier.id===s._languageIdentifier.id&&s._onDidChangeLanguageConfiguration.fire({})})),s._instanceId=Yr(bv),s._lastDecorationId=0,s._decorations=Object.create(null),s._decorationsTree=new Sv,s._commandManager=new Rg(s),s._isUndoing=!1,s._isRedoing=!1,s._trimAutoWhitespaceLines=null,s._tokens=new av,s._tokens2=new sv,s._tokenization=new cv(s),s}return vv(t,e),t.createFromString=function(e,n,i,o){return void 0===n&&(n=t.DEFAULT_CREATION_OPTIONS),void 0===i&&(i=null),void 0===o&&(o=null),new t(e,n,i,o)},t.resolveOptions=function(e,t){if(t.detectIndentation){var n=Wg(e,t.tabSize,t.insertSpaces);return new ja({tabSize:n.tabSize,indentSize:n.tabSize,insertSpaces:n.insertSpaces,trimAutoWhitespace:t.trimAutoWhitespace,defaultEOL:t.defaultEOL})}return new ja({tabSize:t.tabSize,indentSize:t.indentSize,insertSpaces:t.insertSpaces,trimAutoWhitespace:t.trimAutoWhitespace,defaultEOL:t.defaultEOL})},t.prototype.onDidChangeRawContentFast=function(e){return this._eventEmitter.fastEvent((function(t){return e(t.rawContentChangedEvent)}))},t.prototype.onDidChangeRawContent=function(e){return this._eventEmitter.slowEvent((function(t){return e(t.rawContentChangedEvent)}))},t.prototype.onDidChangeContentFast=function(e){return this._eventEmitter.fastEvent((function(t){return e(t.contentChangedEvent)}))},t.prototype.onDidChangeContent=function(e){return this._eventEmitter.slowEvent((function(t){return e(t.contentChangedEvent)}))},t.prototype.dispose=function(){this._isDisposing=!0,this._onWillDispose.fire(),this._languageRegistryListener.dispose(),this._tokenization.dispose(),this._isDisposed=!0,e.prototype.dispose.call(this),this._isDisposing=!1},t.prototype._assertNotDisposed=function(){if(this._isDisposed)throw new Error("Model is disposed!")},t.prototype._emitContentChangedEvent=function(e,t){this._isDisposing||this._eventEmitter.fire(new Xm(e,t))},t.prototype.setValue=function(e){if(this._assertNotDisposed(),null!==e){var t=yv(e,this._options.defaultEOL);this.setValueFromTextBuffer(t)}},t.prototype._createContentChanged2=function(e,t,n,i,o,r,s){return{changes:[{range:e,rangeOffset:t,rangeLength:n,text:i}],eol:this._buffer.getEOL(),versionId:this.getVersionId(),isUndoing:o,isRedoing:r,isFlush:s}},t.prototype.setValueFromTextBuffer=function(e){if(this._assertNotDisposed(),null!==e){var t=this.getFullModelRange(),n=this.getValueLengthInRange(t),i=this.getLineCount(),o=this.getLineMaxColumn(i);this._buffer=e,this._increaseVersionId(),this._tokens.flush(),this._tokens2.flush(),this._decorations=Object.create(null),this._decorationsTree=new Sv,this._commandManager=new Rg(this),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new Ym([new Um],this._versionId,!1,!1),this._createContentChanged2(new wn(1,1,i,o),0,n,this.getValue(),!1,!1,!0))}},t.prototype.setEOL=function(e){this._assertNotDisposed();var t=1===e?"\r\n":"\n";if(this._buffer.getEOL()!==t){var n=this.getFullModelRange(),i=this.getValueLengthInRange(n),o=this.getLineCount(),r=this.getLineMaxColumn(o);this._onBeforeEOLChange(),this._buffer.setEOL(t),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new Ym([new Zm],this._versionId,!1,!1),this._createContentChanged2(new wn(1,1,o,r),0,i,this.getValue(),!1,!1,!1))}},t.prototype._onBeforeEOLChange=function(){var e=this.getVersionId(),t=this._decorationsTree.search(0,!1,!1,e);this._ensureNodesHaveRanges(t)},t.prototype._onAfterEOLChange=function(){for(var e=this.getVersionId(),t=this._decorationsTree.collectNodesPostOrder(),n=0,i=t.length;n<i;n++){var o=t[n],r=o.cachedAbsoluteStart-o.start,s=this._buffer.getOffsetAt(o.range.startLineNumber,o.range.startColumn),a=this._buffer.getOffsetAt(o.range.endLineNumber,o.range.endColumn);o.cachedAbsoluteStart=s,o.cachedAbsoluteEnd=a,o.cachedVersionId=e,o.start=s-r,o.end=a-r,sm(o)}},t.prototype.onBeforeAttached=function(){this._attachedEditorCount++,1===this._attachedEditorCount&&this._onDidChangeAttached.fire(void 0)},t.prototype.onBeforeDetached=function(){this._attachedEditorCount--,0===this._attachedEditorCount&&this._onDidChangeAttached.fire(void 0)},t.prototype.isAttachedToEditor=function(){return this._attachedEditorCount>0},t.prototype.getAttachedEditorCount=function(){return this._attachedEditorCount},t.prototype.isTooLargeForSyncing=function(){return this._isTooLargeForSyncing},t.prototype.isTooLargeForTokenization=function(){return this._isTooLargeForTokenization},t.prototype.isDisposed=function(){return this._isDisposed},t.prototype.isDominatedByLongLines=function(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;for(var e=0,t=0,n=this._buffer.getLineCount(),i=1;i<=n;i++){var o=this._buffer.getLineLength(i);o>=1e4?t+=o:e+=o}return t>e},Object.defineProperty(t.prototype,"uri",{get:function(){return this._associatedResource},enumerable:!0,configurable:!0}),t.prototype.getOptions=function(){return this._assertNotDisposed(),this._options},t.prototype.getFormattingOptions=function(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}},t.prototype.updateOptions=function(e){this._assertNotDisposed();var t=void 0!==e.tabSize?e.tabSize:this._options.tabSize,n=void 0!==e.indentSize?e.indentSize:this._options.indentSize,i=void 0!==e.insertSpaces?e.insertSpaces:this._options.insertSpaces,o=void 0!==e.trimAutoWhitespace?e.trimAutoWhitespace:this._options.trimAutoWhitespace,r=new ja({tabSize:t,indentSize:n,insertSpaces:i,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:o});if(!this._options.equals(r)){var s=this._options.createChangeEvent(r);this._options=r,this._onDidChangeOptions.fire(s)}},t.prototype.detectIndentation=function(e,t){this._assertNotDisposed();var n=Wg(this._buffer,t,e);this.updateOptions({insertSpaces:n.insertSpaces,tabSize:n.tabSize,indentSize:n.tabSize})},t._normalizeIndentationFromWhitespace=function(e,t,n){for(var i=0,o=0;o<e.length;o++)"\t"===e.charAt(o)?i+=t:i++;var r="";if(!n){var s=Math.floor(i/t);i%=t;for(o=0;o<s;o++)r+="\t"}for(o=0;o<i;o++)r+=" ";return r},t.normalizeIndentation=function(e,n,i){var o=wr(e);return-1===o&&(o=e.length),t._normalizeIndentationFromWhitespace(e.substring(0,o),n,i)+e.substring(o)},t.prototype.normalizeIndentation=function(e){return this._assertNotDisposed(),t.normalizeIndentation(e,this._options.indentSize,this._options.insertSpaces)},t.prototype.getVersionId=function(){return this._assertNotDisposed(),this._versionId},t.prototype.mightContainRTL=function(){return this._buffer.mightContainRTL()},t.prototype.mightContainNonBasicASCII=function(){return this._buffer.mightContainNonBasicASCII()},t.prototype.getAlternativeVersionId=function(){return this._assertNotDisposed(),this._alternativeVersionId},t.prototype.getOffsetAt=function(e){this._assertNotDisposed();var t=this._validatePosition(e.lineNumber,e.column,0);return this._buffer.getOffsetAt(t.lineNumber,t.column)},t.prototype.getPositionAt=function(e){this._assertNotDisposed();var t=Math.min(this._buffer.getLength(),Math.max(0,e));return this._buffer.getPositionAt(t)},t.prototype._increaseVersionId=function(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId},t.prototype._overwriteAlternativeVersionId=function(e){this._alternativeVersionId=e},t.prototype.getValue=function(e,t){void 0===t&&(t=!1),this._assertNotDisposed();var n=this.getFullModelRange(),i=this.getValueInRange(n,e);return t?this._buffer.getBOM()+i:i},t.prototype.getValueLength=function(e,t){void 0===t&&(t=!1),this._assertNotDisposed();var n=this.getFullModelRange(),i=this.getValueLengthInRange(n,e);return t?this._buffer.getBOM().length+i:i},t.prototype.getValueInRange=function(e,t){return void 0===t&&(t=0),this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(e),t)},t.prototype.getValueLengthInRange=function(e,t){return void 0===t&&(t=0),this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(e),t)},t.prototype.getCharacterCountInRange=function(e,t){return void 0===t&&(t=0),this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(e),t)},t.prototype.getLineCount=function(){return this._assertNotDisposed(),this._buffer.getLineCount()},t.prototype.getLineContent=function(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineContent(e)},t.prototype.getLineLength=function(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineLength(e)},t.prototype.getLinesContent=function(){return this._assertNotDisposed(),this._buffer.getLinesContent()},t.prototype.getEOL=function(){return this._assertNotDisposed(),this._buffer.getEOL()},t.prototype.getLineMinColumn=function(e){return this._assertNotDisposed(),1},t.prototype.getLineMaxColumn=function(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineLength(e)+1},t.prototype.getLineFirstNonWhitespaceColumn=function(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(e)},t.prototype.getLineLastNonWhitespaceColumn=function(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(e)},t.prototype._validateRangeRelaxedNoAllocations=function(e){var t,n,i=this._buffer.getLineCount(),o=e.startLineNumber,r=e.startColumn;if(o<1)t=1,n=1;else if(o>i)t=i,n=this.getLineMaxColumn(t);else{if(t=0|o,r<=1)n=1;else n=r>=(c=this.getLineMaxColumn(t))?c:0|r}var s,a,u=e.endLineNumber,l=e.endColumn;if(u<1)s=1,a=1;else if(u>i)s=i,a=this.getLineMaxColumn(s);else{var c;if(s=0|u,l<=1)a=1;else a=l>=(c=this.getLineMaxColumn(s))?c:0|l}return o===t&&r===n&&u===s&&l===a&&e instanceof wn&&!(e instanceof Sn)?e:new wn(t,n,s,a)},t.prototype._isValidPosition=function(e,t,n){if("number"!=typeof e||"number"!=typeof t)return!1;if(isNaN(e)||isNaN(t))return!1;if(e<1||t<1)return!1;if((0|e)!==e||(0|t)!==t)return!1;if(e>this._buffer.getLineCount())return!1;if(1===t)return!0;if(t>this.getLineMaxColumn(e))return!1;if(1===n&&Tr(this._buffer.getLineCharCode(e,t-2)))return!1;return!0},t.prototype._validatePosition=function(e,t,n){var i=Math.floor("number"!=typeof e||isNaN(e)?1:e),o=Math.floor("number"!=typeof t||isNaN(t)?1:t),r=this._buffer.getLineCount();if(i<1)return new bn(1,1);if(i>r)return new bn(r,this.getLineMaxColumn(r));if(o<=1)return new bn(i,1);var s=this.getLineMaxColumn(i);if(o>=s)return new bn(i,s);if(1===n&&Tr(this._buffer.getLineCharCode(i,o-2)))return new bn(i,o-1);return new bn(i,o)},t.prototype.validatePosition=function(e){return this._assertNotDisposed(),e instanceof bn&&this._isValidPosition(e.lineNumber,e.column,1)?e:this._validatePosition(e.lineNumber,e.column,1)},t.prototype._isValidRange=function(e,t){var n=e.startLineNumber,i=e.startColumn,o=e.endLineNumber,r=e.endColumn;if(!this._isValidPosition(n,i,0))return!1;if(!this._isValidPosition(o,r,0))return!1;if(1===t){var s=i>1?this._buffer.getLineCharCode(n,i-2):0,a=r>1&&r<=this._buffer.getLineLength(o)?this._buffer.getLineCharCode(o,r-2):0,u=Tr(s),l=Tr(a);return!u&&!l}return!0},t.prototype.validateRange=function(e){if(this._assertNotDisposed(),e instanceof wn&&!(e instanceof Sn)&&this._isValidRange(e,1))return e;var t=this._validatePosition(e.startLineNumber,e.startColumn,0),n=this._validatePosition(e.endLineNumber,e.endColumn,0),i=t.lineNumber,o=t.column,r=n.lineNumber,s=n.column,a=o>1?this._buffer.getLineCharCode(i,o-2):0,u=s>1&&s<=this._buffer.getLineLength(r)?this._buffer.getLineCharCode(r,s-2):0,l=Tr(a),c=Tr(u);return l||c?i===r&&o===s?new wn(i,o-1,r,s-1):l&&c?new wn(i,o-1,r,s+1):l?new wn(i,o-1,r,s):new wn(i,o,r,s+1):new wn(i,o,r,s)},t.prototype.modifyPosition=function(e,t){this._assertNotDisposed();var n=this.getOffsetAt(e)+t;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,n)))},t.prototype.getFullModelRange=function(){this._assertNotDisposed();var e=this.getLineCount();return new wn(1,1,e,this.getLineMaxColumn(e))},t.prototype.findMatchesLineByLine=function(e,t,n,i){return this._buffer.findMatchesLineByLine(e,t,n,i)},t.prototype.findMatches=function(e,t,n,i,o,r,s){var a;if(void 0===s&&(s=999),this._assertNotDisposed(),a=wn.isIRange(t)?this.validateRange(t):this.getFullModelRange(),!n&&e.indexOf("\n")<0){var u=new Nm(e,n,i,o).parseSearchRequest();return u?this.findMatchesLineByLine(a,u,r,s):[]}return Om.findMatches(this,new Nm(e,n,i,o),a,r,s)},t.prototype.findNextMatch=function(e,t,n,i,o,r){this._assertNotDisposed();var s=this.validatePosition(t);if(!n&&e.indexOf("\n")<0){var a=new Nm(e,n,i,o).parseSearchRequest();if(!a)return null;var u=this.getLineCount(),l=new wn(s.lineNumber,s.column,u,this.getLineMaxColumn(u)),c=this.findMatchesLineByLine(l,a,r,1);return Om.findNextMatch(this,new Nm(e,n,i,o),s,r),c.length>0?c[0]:(l=new wn(1,1,s.lineNumber,this.getLineMaxColumn(s.lineNumber)),(c=this.findMatchesLineByLine(l,a,r,1)).length>0?c[0]:null)}return Om.findNextMatch(this,new Nm(e,n,i,o),s,r)},t.prototype.findPreviousMatch=function(e,t,n,i,o,r){this._assertNotDisposed();var s=this.validatePosition(t);return Om.findPreviousMatch(this,new Nm(e,n,i,o),s,r)},t.prototype.pushStackElement=function(){this._commandManager.pushStackElement()},t.prototype.pushEOL=function(e){if(("\n"===this.getEOL()?0:1)!==e)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._commandManager.pushEOL(e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}},t.prototype.pushEditOperations=function(e,t,n){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._pushEditOperations(e,t,n)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}},t.prototype._pushEditOperations=function(e,t,n){var i=this;if(this._options.trimAutoWhitespace&&this._trimAutoWhitespaceLines){for(var o=t.map((function(e){return{range:i.validateRange(e.range),text:e.text}})),r=!0,s=0,a=e.length;s<a;s++){for(var u=e[s],l=!1,c=0,d=o.length;c<d;c++){var h=(v=o[c].range).startLineNumber>u.endLineNumber,p=u.startLineNumber>v.endLineNumber;if(!h&&!p){l=!0;break}}if(!l){r=!1;break}}if(r)for(s=0,a=this._trimAutoWhitespaceLines.length;s<a;s++){var f=this._trimAutoWhitespaceLines[s],g=this.getLineMaxColumn(f),m=!0;for(c=0,d=o.length;c<d;c++){var v=o[c].range,_=o[c].text;if(!(f<v.startLineNumber||f>v.endLineNumber)&&!(f===v.startLineNumber&&v.startColumn===g&&v.isEmpty()&&_&&_.length>0&&"\n"===_.charAt(0)||f===v.startLineNumber&&1===v.startColumn&&v.isEmpty()&&_&&_.length>0&&"\n"===_.charAt(_.length-1))){m=!1;break}}m&&t.push({range:new wn(f,1,f,g),text:null})}this._trimAutoWhitespaceLines=null}return this._commandManager.pushEditOperation(e,t,n)},t.prototype.applyEdits=function(e){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._applyEdits(e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}},t.prototype._applyEdits=function(e){for(var t=0,n=e.length;t<n;t++)e[t].range=this.validateRange(e[t].range);var i=this._buffer.getLineCount(),o=this._buffer.applyEdits(e,this._options.trimAutoWhitespace),r=this._buffer.getLineCount(),s=o.changes;if(this._trimAutoWhitespaceLines=o.trimAutoWhitespaceLineNumbers,0!==s.length){var a=[],u=i;for(t=0,n=s.length;t<n;t++){var l=s[t],c=$m(l.text),d=c[0],h=c[1],p=c[2];this._tokens.acceptEdit(l.range,d,h),this._tokens2.acceptEdit(l.range,d,h,p,l.text.length>0?l.text.charCodeAt(0):0),this._onDidChangeDecorations.fire(),this._decorationsTree.acceptReplace(l.rangeOffset,l.rangeLength,l.text.length,l.forceMoveMarkers);for(var f=l.range.startLineNumber,g=l.range.endLineNumber,m=g-f,v=d,_=Math.min(m,v),y=v-m,b=_;b>=0;b--){var w=f+b,C=r-u-y+w;a.push(new Km(w,this.getLineContent(C)))}if(_<m){var S=f+_;a.push(new qm(S+1,g))}if(_<v){for(var L=f+_,x=v-_,D=r-u-x+L+1,N=[],k=0;k<x;k++){var E=D+k;N[E-D]=this.getLineContent(E)}a.push(new Gm(L+1,f+v,N))}u+=y}this._increaseVersionId(),this._emitContentChangedEvent(new Ym(a,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:s,eol:this._buffer.getEOL(),versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1})}return o.reverseEdits},t.prototype._undo=function(){this._isUndoing=!0;var e=this._commandManager.undo();return this._isUndoing=!1,e?(this._overwriteAlternativeVersionId(e.recordedVersionId),e.selections):null},t.prototype.undo=function(){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._undo()}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}},t.prototype.canUndo=function(){return this._commandManager.canUndo()},t.prototype._redo=function(){this._isRedoing=!0;var e=this._commandManager.redo();return this._isRedoing=!1,e?(this._overwriteAlternativeVersionId(e.recordedVersionId),e.selections):null},t.prototype.redo=function(){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._redo()}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}},t.prototype.canRedo=function(){return this._commandManager.canRedo()},t.prototype.changeDecorations=function(e,t){void 0===t&&(t=0),this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(t,e)}finally{this._onDidChangeDecorations.endDeferredEmit()}},t.prototype._changeDecorations=function(e,t){var n=this,i={addDecoration:function(t,i){return n._onDidChangeDecorations.fire(),n._deltaDecorationsImpl(e,[],[{range:t,options:i}])[0]},changeDecoration:function(e,t){n._onDidChangeDecorations.fire(),n._changeDecorationImpl(e,t)},changeDecorationOptions:function(e,t){n._onDidChangeDecorations.fire(),n._changeDecorationOptionsImpl(e,Iv(t))},removeDecoration:function(t){n._onDidChangeDecorations.fire(),n._deltaDecorationsImpl(e,[t],[])},deltaDecorations:function(t,i){return 0===t.length&&0===i.length?[]:(n._onDidChangeDecorations.fire(),n._deltaDecorationsImpl(e,t,i))}},o=null;try{o=t(i)}catch(e){De(e)}return i.addDecoration=wv,i.changeDecoration=wv,i.changeDecorationOptions=wv,i.removeDecoration=wv,i.deltaDecorations=wv,o},t.prototype.deltaDecorations=function(e,t,n){if(void 0===n&&(n=0),this._assertNotDisposed(),e||(e=[]),0===e.length&&0===t.length)return[];try{return this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._deltaDecorationsImpl(n,e,t)}finally{this._onDidChangeDecorations.endDeferredEmit()}},t.prototype._getTrackedRange=function(e){return this.getDecorationRange(e)},t.prototype._setTrackedRange=function(e,t,n){var i=e?this._decorations[e]:null;if(!i)return t?this._deltaDecorationsImpl(0,[],[{range:t,options:Ev[n]}])[0]:null;if(!t)return this._decorationsTree.delete(i),delete this._decorations[i.id],null;var o=this._validateRangeRelaxedNoAllocations(t),r=this._buffer.getOffsetAt(o.startLineNumber,o.startColumn),s=this._buffer.getOffsetAt(o.endLineNumber,o.endColumn);return this._decorationsTree.delete(i),i.reset(this.getVersionId(),r,s,o),i.setOptions(Ev[n]),this._decorationsTree.insert(i),i.id},t.prototype.removeAllDecorationsWithOwnerId=function(e){if(!this._isDisposed)for(var t=this._decorationsTree.collectNodesFromOwner(e),n=0,i=t.length;n<i;n++){var o=t[n];this._decorationsTree.delete(o),delete this._decorations[o.id]}},t.prototype.getDecorationOptions=function(e){var t=this._decorations[e];return t?t.options:null},t.prototype.getDecorationRange=function(e){var t=this._decorations[e];if(!t)return null;var n=this.getVersionId();return t.cachedVersionId!==n&&this._decorationsTree.resolveNode(t,n),null===t.range&&(t.range=this._getRangeAt(t.cachedAbsoluteStart,t.cachedAbsoluteEnd)),t.range},t.prototype.getLineDecorations=function(e,t,n){return void 0===t&&(t=0),void 0===n&&(n=!1),e<1||e>this.getLineCount()?[]:this.getLinesDecorations(e,e,t,n)},t.prototype.getLinesDecorations=function(e,t,n,i){void 0===n&&(n=0),void 0===i&&(i=!1);var o=this.getLineCount(),r=Math.min(o,Math.max(1,e)),s=Math.min(o,Math.max(1,t)),a=this.getLineMaxColumn(s);return this._getDecorationsInRange(new wn(r,1,s,a),n,i)},t.prototype.getDecorationsInRange=function(e,t,n){void 0===t&&(t=0),void 0===n&&(n=!1);var i=this.validateRange(e);return this._getDecorationsInRange(i,t,n)},t.prototype.getOverviewRulerDecorations=function(e,t){void 0===e&&(e=0),void 0===t&&(t=!1);var n=this.getVersionId(),i=this._decorationsTree.search(e,t,!0,n);return this._ensureNodesHaveRanges(i)},t.prototype.getAllDecorations=function(e,t){void 0===e&&(e=0),void 0===t&&(t=!1);var n=this.getVersionId(),i=this._decorationsTree.search(e,t,!1,n);return this._ensureNodesHaveRanges(i)},t.prototype._getDecorationsInRange=function(e,t,n){var i=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),o=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn),r=this.getVersionId(),s=this._decorationsTree.intervalSearch(i,o,t,n,r);return this._ensureNodesHaveRanges(s)},t.prototype._ensureNodesHaveRanges=function(e){for(var t=0,n=e.length;t<n;t++){var i=e[t];null===i.range&&(i.range=this._getRangeAt(i.cachedAbsoluteStart,i.cachedAbsoluteEnd))}return e},t.prototype._getRangeAt=function(e,t){return this._buffer.getRangeAt(e,t-e)},t.prototype._changeDecorationImpl=function(e,t){var n=this._decorations[e];if(n){var i=this._validateRangeRelaxedNoAllocations(t),o=this._buffer.getOffsetAt(i.startLineNumber,i.startColumn),r=this._buffer.getOffsetAt(i.endLineNumber,i.endColumn);this._decorationsTree.delete(n),n.reset(this.getVersionId(),o,r,i),this._decorationsTree.insert(n)}},t.prototype._changeDecorationOptionsImpl=function(e,t){var n=this._decorations[e];n&&(!(!n.options.overviewRuler||!n.options.overviewRuler.color)!==!(!t.overviewRuler||!t.overviewRuler.color)?(this._decorationsTree.delete(n),n.setOptions(t),this._decorationsTree.insert(n)):n.setOptions(t))},t.prototype._deltaDecorationsImpl=function(e,t,n){for(var i=this.getVersionId(),o=t.length,r=0,s=n.length,a=0,u=new Array(s);r<o||a<s;){var l=null;if(r<o){do{l=this._decorations[t[r++]]}while(!l&&r<o);l&&this._decorationsTree.delete(l)}if(a<s){if(!l){var c=++this._lastDecorationId,d=this._instanceId+";"+c;l=new Yg(d,0,0),this._decorations[d]=l}var h=n[a],p=this._validateRangeRelaxedNoAllocations(h.range),f=Iv(h.options),g=this._buffer.getOffsetAt(p.startLineNumber,p.startColumn),m=this._buffer.getOffsetAt(p.endLineNumber,p.endColumn);l.ownerId=e,l.reset(i,g,m,p),l.setOptions(f),this._decorationsTree.insert(l),u[a]=l.id,a++}else l&&delete this._decorations[l.id]}return u},t.prototype.setLineTokens=function(e,t){if(e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");this._tokens.setTokens(this._languageIdentifier.id,e-1,this._buffer.getLineLength(e),t)},t.prototype.setTokens=function(e){if(0!==e.length){for(var t=[],n=0,i=e.length;n<i;n++){var o=e[n];t.push({fromLineNumber:o.startLineNumber,toLineNumber:o.startLineNumber+o.tokens.length-1});for(var r=0,s=o.tokens.length;r<s;r++)this.setLineTokens(o.startLineNumber+r,o.tokens[r])}this._emitModelTokensChangedEvent({tokenizationSupportChanged:!1,ranges:t})}},t.prototype.setSemanticTokens=function(e){this._tokens2.set(e),this._emitModelTokensChangedEvent({tokenizationSupportChanged:!1,ranges:[{fromLineNumber:1,toLineNumber:this.getLineCount()}]})},t.prototype.tokenizeViewport=function(e,t){e=Math.max(1,e),t=Math.min(this._buffer.getLineCount(),t),this._tokenization.tokenizeViewport(e,t)},t.prototype.clearTokens=function(){this._tokens.flush(),this._emitModelTokensChangedEvent({tokenizationSupportChanged:!0,ranges:[{fromLineNumber:1,toLineNumber:this._buffer.getLineCount()}]})},t.prototype._emitModelTokensChangedEvent=function(e){this._isDisposing||this._onDidChangeTokens.fire(e)},t.prototype.resetTokenization=function(){this._tokenization.reset()},t.prototype.forceTokenization=function(e){if(e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");this._tokenization.forceTokenization(e)},t.prototype.isCheapToTokenize=function(e){return this._tokenization.isCheapToTokenize(e)},t.prototype.tokenizeIfCheap=function(e){this.isCheapToTokenize(e)&&this.forceTokenization(e)},t.prototype.getLineTokens=function(e){if(e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._getLineTokens(e)},t.prototype._getLineTokens=function(e){var t=this.getLineContent(e),n=this._tokens.getTokens(this._languageIdentifier.id,e-1,t);return this._tokens2.addSemanticTokens(e,n)},t.prototype.getLanguageIdentifier=function(){return this._languageIdentifier},t.prototype.getModeId=function(){return this._languageIdentifier.language},t.prototype.setMode=function(e){if(this._languageIdentifier.id!==e.id){var t={oldLanguage:this._languageIdentifier.language,newLanguage:e.language};this._languageIdentifier=e,this._onDidChangeLanguage.fire(t),this._onDidChangeLanguageConfiguration.fire({})}},t.prototype.getLanguageIdAtPosition=function(e,t){var n=this.validatePosition(new bn(e,t)),i=this.getLineTokens(n.lineNumber);return i.getLanguageId(i.findTokenIndexAtOffset(n.column-1))},t.prototype.getWordAtPosition=function(e){this._assertNotDisposed();var n=this.validatePosition(e),i=this.getLineContent(n.lineNumber),o=this._getLineTokens(n.lineNumber),r=o.findTokenIndexAtOffset(n.column-1),s=t._findLanguageBoundaries(o,r),a=s[0],u=s[1],l=k(n.column,Ol.getWordDefinition(o.getLanguageId(r)),i.substring(a,u),a);if(l&&l.startColumn<=e.column&&e.column<=l.endColumn)return l;if(r>0&&a===n.column-1){var c=t._findLanguageBoundaries(o,r-1),d=c[0],h=c[1],p=k(n.column,Ol.getWordDefinition(o.getLanguageId(r-1)),i.substring(d,h),d);if(p&&p.startColumn<=e.column&&e.column<=p.endColumn)return p}return null},t._findLanguageBoundaries=function(e,t){for(var n=e.getLanguageId(t),i=0,o=t;o>=0&&e.getLanguageId(o)===n;o--)i=e.getStartOffset(o);for(var r=e.getLineContent().length,s=(o=t,e.getCount());o<s&&e.getLanguageId(o)===n;o++)r=e.getEndOffset(o);return[i,r]},t.prototype.getWordUntilPosition=function(e){var t=this.getWordAtPosition(e);return t?{word:t.word.substr(0,e.column-t.startColumn),startColumn:t.startColumn,endColumn:e.column}:{word:"",startColumn:e.column,endColumn:e.column}},t.prototype.findMatchingBracketUp=function(e,t){var n=e.toLowerCase(),i=this.validatePosition(t),o=this._getLineTokens(i.lineNumber),r=o.getLanguageId(o.findTokenIndexAtOffset(i.column-1)),s=Ol.getBracketsSupport(r);if(!s)return null;var a=s.textIsBracket[n];return a?this._findMatchingBracketUp(a,i):null},t.prototype.matchBracket=function(e){return this._matchBracket(this.validatePosition(e))},t.prototype._matchBracket=function(e){var t=e.lineNumber,n=this._getLineTokens(t),i=n.getCount(),o=this._buffer.getLineContent(t),r=n.findTokenIndexAtOffset(e.column-1);if(r<0)return null;var s=Ol.getBracketsSupport(n.getLanguageId(r));if(s&&!pl(n.getStandardTokenType(r))){for(var a=Math.max(0,e.column-1-s.maxBracketLength),u=r-1;u>=0;u--){var l=n.getEndOffset(u);if(l<=a)break;pl(n.getStandardTokenType(u))&&(a=l)}for(var c=Math.min(o.length,e.column-1+s.maxBracketLength),d=null;;){if(!(m=xl.findNextBracketInRange(s.forwardRegex,t,o,a,c)))break;if(m.startColumn<=e.column&&e.column<=m.endColumn){var h=o.substring(m.startColumn-1,m.endColumn-1).toLowerCase();(v=this._matchFoundBracket(m,s.textIsBracket[h],s.textIsOpenBracket[h]))&&(d=v)}a=m.endColumn-1}if(d)return d}if(r>0&&n.getStartOffset(r)===e.column-1){var p=r-1,f=Ol.getBracketsSupport(n.getLanguageId(p));if(f&&!pl(n.getStandardTokenType(p))){for(a=Math.max(0,e.column-1-f.maxBracketLength),c=Math.min(o.length,e.column-1+f.maxBracketLength),u=p+1;u<i;u++){var g=n.getStartOffset(u);if(g>=c)break;pl(n.getStandardTokenType(u))&&(c=g)}var m;if((m=xl.findPrevBracketInRange(f.reversedRegex,t,o,a,c))&&m.startColumn<=e.column&&e.column<=m.endColumn){var v;h=o.substring(m.startColumn-1,m.endColumn-1).toLowerCase();if(v=this._matchFoundBracket(m,f.textIsBracket[h],f.textIsOpenBracket[h]))return v}}}return null},t.prototype._matchFoundBracket=function(e,t,n){if(!t)return null;var i;if(n){if(i=this._findMatchingBracketDown(t,e.getEndPosition()))return[e,i]}else if(i=this._findMatchingBracketUp(t,e.getStartPosition()))return[e,i];return null},t.prototype._findMatchingBracketUp=function(e,t){for(var n=e.languageIdentifier.id,i=e.reversedRegex,o=-1,r=function(t,n,r,s){for(;;){var a=xl.findPrevBracketInRange(i,t,n,r,s);if(!a)break;var u=n.substring(a.startColumn-1,a.endColumn-1).toLowerCase();if(e.isOpen(u)?o++:e.isClose(u)&&o--,0===o)return a;s=a.startColumn-1}return null},s=t.lineNumber;s>=1;s--){var a=this._getLineTokens(s),u=a.getCount(),l=this._buffer.getLineContent(s),c=u-1,d=l.length,h=l.length;s===t.lineNumber&&(c=a.findTokenIndexAtOffset(t.column-1),d=t.column-1,h=t.column-1);for(var p=!0;c>=0;c--){var f,g=a.getLanguageId(c)===n&&!pl(a.getStandardTokenType(c));if(g)p?d=a.getStartOffset(c):(d=a.getStartOffset(c),h=a.getEndOffset(c));else if(p&&d!==h)if(f=r(s,l,d,h))return f;p=g}if(p&&d!==h)if(f=r(s,l,d,h))return f}return null},t.prototype._findMatchingBracketDown=function(e,t){for(var n=e.languageIdentifier.id,i=e.forwardRegex,o=1,r=function(t,n,r,s){for(;;){var a=xl.findNextBracketInRange(i,t,n,r,s);if(!a)break;var u=n.substring(a.startColumn-1,a.endColumn-1).toLowerCase();if(e.isOpen(u)?o++:e.isClose(u)&&o--,0===o)return a;r=a.endColumn-1}return null},s=this.getLineCount(),a=t.lineNumber;a<=s;a++){var u=this._getLineTokens(a),l=u.getCount(),c=this._buffer.getLineContent(a),d=0,h=0,p=0;a===t.lineNumber&&(d=u.findTokenIndexAtOffset(t.column-1),h=t.column-1,p=t.column-1);for(var f=!0;d<l;d++){var g,m=u.getLanguageId(d)===n&&!pl(u.getStandardTokenType(d));if(m)f||(h=u.getStartOffset(d)),p=u.getEndOffset(d);else if(f&&h!==p)if(g=r(a,c,h,p))return g;f=m}if(f&&h!==p)if(g=r(a,c,h,p))return g}return null},t.prototype.findPrevBracket=function(e){for(var t=this.validatePosition(e),n=-1,i=null,o=t.lineNumber;o>=1;o--){var r=this._getLineTokens(o),s=r.getCount(),a=this._buffer.getLineContent(o),u=s-1,l=a.length,c=a.length;if(o===t.lineNumber)u=r.findTokenIndexAtOffset(t.column-1),l=t.column-1,c=t.column-1,n!==(h=r.getLanguageId(u))&&(n=h,i=Ol.getBracketsSupport(n));for(var d=!0;u>=0;u--){var h;if(n!==(h=r.getLanguageId(u))){if(i&&d&&l!==c){if(p=xl.findPrevBracketInRange(i.reversedRegex,o,a,l,c))return this._toFoundBracket(i,p);d=!1}n=h,i=Ol.getBracketsSupport(n)}var p,f=!!i&&!pl(r.getStandardTokenType(u));if(f)d?l=r.getStartOffset(u):(l=r.getStartOffset(u),c=r.getEndOffset(u));else if(i&&d&&l!==c)if(p=xl.findPrevBracketInRange(i.reversedRegex,o,a,l,c))return this._toFoundBracket(i,p);d=f}if(i&&d&&l!==c)if(p=xl.findPrevBracketInRange(i.reversedRegex,o,a,l,c))return this._toFoundBracket(i,p)}return null},t.prototype.findNextBracket=function(e){for(var t=this.validatePosition(e),n=this.getLineCount(),i=-1,o=null,r=t.lineNumber;r<=n;r++){var s=this._getLineTokens(r),a=s.getCount(),u=this._buffer.getLineContent(r),l=0,c=0,d=0;if(r===t.lineNumber)l=s.findTokenIndexAtOffset(t.column-1),c=t.column-1,d=t.column-1,i!==(p=s.getLanguageId(l))&&(i=p,o=Ol.getBracketsSupport(i));for(var h=!0;l<a;l++){var p;if(i!==(p=s.getLanguageId(l))){if(o&&h&&c!==d){if(f=xl.findNextBracketInRange(o.forwardRegex,r,u,c,d))return this._toFoundBracket(o,f);h=!1}i=p,o=Ol.getBracketsSupport(i)}var f,g=!!o&&!pl(s.getStandardTokenType(l));if(g)h||(c=s.getStartOffset(l)),d=s.getEndOffset(l);else if(o&&h&&c!==d)if(f=xl.findNextBracketInRange(o.forwardRegex,r,u,c,d))return this._toFoundBracket(o,f);h=g}if(o&&h&&c!==d)if(f=xl.findNextBracketInRange(o.forwardRegex,r,u,c,d))return this._toFoundBracket(o,f)}return null},t.prototype.findEnclosingBrackets=function(e,t){var n=this;void 0===t&&(t=1073741824);for(var i=this.validatePosition(e),o=this.getLineCount(),r=new Map,s=[],a=function(e,t){if(!r.has(e)){for(var n=[],i=0,o=t?t.brackets.length:0;i<o;i++)n[i]=0;r.set(e,n)}s=r.get(e)},u=function(e,t,i,o,r){for(;;){var a=xl.findNextBracketInRange(e.forwardRegex,t,i,o,r);if(!a)break;var u=i.substring(a.startColumn-1,a.endColumn-1).toLowerCase(),l=e.textIsBracket[u];if(l&&(l.isOpen(u)?s[l.index]++:l.isClose(u)&&s[l.index]--,-1===s[l.index]))return n._matchFoundBracket(a,l,!1);o=a.endColumn-1}return null},l=-1,c=null,d=Date.now(),h=i.lineNumber;h<=o;h++){if(Date.now()-d>t)return null;var p=this._getLineTokens(h),f=p.getCount(),g=this._buffer.getLineContent(h),m=0,v=0,_=0;if(h===i.lineNumber)m=p.findTokenIndexAtOffset(i.column-1),v=i.column-1,_=i.column-1,l!==(b=p.getLanguageId(m))&&a(l=b,c=Ol.getBracketsSupport(l));for(var y=!0;m<f;m++){var b;if(l!==(b=p.getLanguageId(m))){if(c&&y&&v!==_){if(w=u(c,h,g,v,_))return w;y=!1}a(l=b,c=Ol.getBracketsSupport(l))}var w,C=!!c&&!pl(p.getStandardTokenType(m));if(C)y||(v=p.getStartOffset(m)),_=p.getEndOffset(m);else if(c&&y&&v!==_)if(w=u(c,h,g,v,_))return w;y=C}if(c&&y&&v!==_)if(w=u(c,h,g,v,_))return w}return null},t.prototype._toFoundBracket=function(e,t){if(!t)return null;var n=this.getValueInRange(t);n=n.toLowerCase();var i=e.textIsBracket[n];return i?{range:t,open:i.open,close:i.close,isOpen:e.textIsOpenBracket[n]}:null},t.computeIndentLevel=function(e,t){for(var n=0,i=0,o=e.length;i<o;){var r=e.charCodeAt(i);if(32===r)n++;else{if(9!==r)break;n=n-n%t+t}i++}return i===o?-1:n},t.prototype._computeIndentLevel=function(e){return t.computeIndentLevel(this._buffer.getLineContent(e+1),this._options.tabSize)},t.prototype.getActiveIndentGuide=function(e,t,n){var i=this;this._assertNotDisposed();var o=this.getLineCount();if(e<1||e>o)throw new Error("Illegal value for lineNumber");for(var r=Ol.getFoldingRules(this._languageIdentifier.id),s=Boolean(r&&r.offSide),a=-2,u=-1,l=-2,c=-1,d=function(e){if(-1!==a&&(-2===a||a>e-1)){a=-1,u=-1;for(var t=e-2;t>=0;t--){var n=i._computeIndentLevel(t);if(n>=0){a=t,u=n;break}}}if(-2===l){l=-1,c=-1;for(t=e;t<o;t++){var r=i._computeIndentLevel(t);if(r>=0){l=t,c=r;break}}}},h=-2,p=-1,f=-2,g=-1,m=function(e){if(-2===h){h=-1,p=-1;for(var t=e-2;t>=0;t--){var n=i._computeIndentLevel(t);if(n>=0){h=t,p=n;break}}}if(-1!==f&&(-2===f||f<e-1)){f=-1,g=-1;for(t=e;t<o;t++){var r=i._computeIndentLevel(t);if(r>=0){f=t,g=r;break}}}},v=0,_=!0,y=0,b=!0,w=0,C=0;_||b;C++){var S=e-C,L=e+C;if(0!==C&&(S<1||S<t)&&(_=!1),0!==C&&(L>o||L>n)&&(b=!1),C>5e4&&(_=!1,b=!1),_){var x=void 0;if((D=this._computeIndentLevel(S-1))>=0?(l=S-1,c=D,x=Math.ceil(D/this._options.indentSize)):(d(S),x=this._getIndentLevelForWhitespaceLine(s,u,c)),0===C){if(v=S,y=L,0===(w=x))return{startLineNumber:v,endLineNumber:y,indent:w};continue}x>=w?v=S:_=!1}if(b){var D,N=void 0;(D=this._computeIndentLevel(L-1))>=0?(h=L-1,p=D,N=Math.ceil(D/this._options.indentSize)):(m(L),N=this._getIndentLevelForWhitespaceLine(s,p,g)),N>=w?y=L:b=!1}}return{startLineNumber:v,endLineNumber:y,indent:w}},t.prototype.getLinesIndentGuides=function(e,t){this._assertNotDisposed();var n=this.getLineCount();if(e<1||e>n)throw new Error("Illegal value for startLineNumber");if(t<1||t>n)throw new Error("Illegal value for endLineNumber");for(var i=Ol.getFoldingRules(this._languageIdentifier.id),o=Boolean(i&&i.offSide),r=new Array(t-e+1),s=-2,a=-1,u=-2,l=-1,c=e;c<=t;c++){var d=c-e,h=this._computeIndentLevel(c-1);if(h>=0)s=c-1,a=h,r[d]=Math.ceil(h/this._options.indentSize);else{if(-2===s){s=-1,a=-1;for(var p=c-2;p>=0;p--){if((f=this._computeIndentLevel(p))>=0){s=p,a=f;break}}}if(-1!==u&&(-2===u||u<c-1)){u=-1,l=-1;for(p=c;p<n;p++){var f;if((f=this._computeIndentLevel(p))>=0){u=p,l=f;break}}}r[d]=this._getIndentLevelForWhitespaceLine(o,a,l)}}return r},t.prototype._getIndentLevelForWhitespaceLine=function(e,t,n){return-1===t||-1===n?0:t<n?1+Math.floor(t/this._options.indentSize):t===n||e?Math.ceil(n/this._options.indentSize):1+Math.floor(n/this._options.indentSize)},t.MODEL_SYNC_LIMIT=52428800,t.LARGE_FILE_SIZE_THRESHOLD=20971520,t.LARGE_FILE_LINE_COUNT_THRESHOLD=3e5,t.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:me,indentSize:ve,insertSpaces:_e,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:be,largeFileOptimizations:we},t}(He),Sv=function(){function e(){this._decorationsTree0=new $g,this._decorationsTree1=new $g}return e.prototype.intervalSearch=function(e,t,n,i,o){var r=this._decorationsTree0.intervalSearch(e,t,n,i,o),s=this._decorationsTree1.intervalSearch(e,t,n,i,o);return r.concat(s)},e.prototype.search=function(e,t,n,i){if(n)return this._decorationsTree1.search(e,t,i);var o=this._decorationsTree0.search(e,t,i),r=this._decorationsTree1.search(e,t,i);return o.concat(r)},e.prototype.collectNodesFromOwner=function(e){var t=this._decorationsTree0.collectNodesFromOwner(e),n=this._decorationsTree1.collectNodesFromOwner(e);return t.concat(n)},e.prototype.collectNodesPostOrder=function(){var e=this._decorationsTree0.collectNodesPostOrder(),t=this._decorationsTree1.collectNodesPostOrder();return e.concat(t)},e.prototype.insert=function(e){Kg(e)?this._decorationsTree1.insert(e):this._decorationsTree0.insert(e)},e.prototype.delete=function(e){Kg(e)?this._decorationsTree1.delete(e):this._decorationsTree0.delete(e)},e.prototype.resolveNode=function(e,t){Kg(e)?this._decorationsTree1.resolveNode(e,t):this._decorationsTree0.resolveNode(e,t)},e.prototype.acceptReplace=function(e,t,n,i){this._decorationsTree0.acceptReplace(e,t,n,i),this._decorationsTree1.acceptReplace(e,t,n,i)},e}();function Lv(e){return e.replace(/[^a-z0-9\-_]/gi," ")}var xv=function(e){this.color=e.color||"",this.darkColor=e.darkColor||""},Dv=function(e){function t(t){var n=e.call(this,t)||this;return n._resolvedColor=null,n.position="number"==typeof t.position?t.position:Va.Center,n}return vv(t,e),t.prototype.getColor=function(e){return this._resolvedColor||("light"!==e.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor},t.prototype.invalidateCachedColor=function(){this._resolvedColor=null},t.prototype._resolveColor=function(e,t){if("string"==typeof e)return e;var n=e?t.getColor(e.id):null;return n?n.toString():""},t}(xv),Nv=function(e){function t(t){var n=e.call(this,t)||this;return n.position=t.position,n}return vv(t,e),t.prototype.getColor=function(e){return this._resolvedColor||("light"!==e.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor},t.prototype.invalidateCachedColor=function(){this._resolvedColor=void 0},t.prototype._resolveColor=function(e,t){return"string"==typeof e?mv.fromHex(e):t.getColor(e.id)},t}(xv),kv=function(){function e(e){this.stickiness=e.stickiness||0,this.zIndex=e.zIndex||0,this.className=e.className?Lv(e.className):null,this.hoverMessage=$s(e.hoverMessage),this.glyphMarginHoverMessage=$s(e.glyphMarginHoverMessage),this.isWholeLine=e.isWholeLine||!1,this.showIfCollapsed=e.showIfCollapsed||!1,this.collapseOnReplaceEdit=e.collapseOnReplaceEdit||!1,this.overviewRuler=e.overviewRuler?new Dv(e.overviewRuler):null,this.minimap=e.minimap?new Nv(e.minimap):null,this.glyphMarginClassName=e.glyphMarginClassName?Lv(e.glyphMarginClassName):null,this.linesDecorationsClassName=e.linesDecorationsClassName?Lv(e.linesDecorationsClassName):null,this.marginClassName=e.marginClassName?Lv(e.marginClassName):null,this.inlineClassName=e.inlineClassName?Lv(e.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=e.beforeContentClassName?Lv(e.beforeContentClassName):null,this.afterContentClassName=e.afterContentClassName?Lv(e.afterContentClassName):null}return e.register=function(t){return new e(t)},e.createDynamic=function(t){return new e(t)},e}();kv.EMPTY=kv.register({});var Ev=[kv.register({stickiness:0}),kv.register({stickiness:1}),kv.register({stickiness:2}),kv.register({stickiness:3})];function Iv(e){return e instanceof kv?e:kv.createDynamic(e)}var Ov=function(e){function t(){var t=e.call(this)||this;return t._actual=t._register(new nt),t.event=t._actual.event,t._deferredCnt=0,t._shouldFire=!1,t}return vv(t,e),t.prototype.beginDeferredEmit=function(){this._deferredCnt++},t.prototype.endDeferredEmit=function(){this._deferredCnt--,0===this._deferredCnt&&this._shouldFire&&(this._shouldFire=!1,this._actual.fire({}))},t.prototype.fire=function(){this._shouldFire=!0},t}(He),Mv=function(e){function t(){var t=e.call(this)||this;return t._fastEmitter=t._register(new nt),t.fastEvent=t._fastEmitter.event,t._slowEmitter=t._register(new nt),t.slowEvent=t._slowEmitter.event,t._deferredCnt=0,t._deferredEvent=null,t}return vv(t,e),t.prototype.beginDeferredEmit=function(){this._deferredCnt++},t.prototype.endDeferredEmit=function(){if(this._deferredCnt--,0===this._deferredCnt&&null!==this._deferredEvent){var e=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(e),this._slowEmitter.fire(e)}},t.prototype.fire=function(e){this._deferredCnt>0?this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(e):this._deferredEvent=e:(this._fastEmitter.fire(e),this._slowEmitter.fire(e))},t}(He),Tv=function(){return!0},Pv=function(){return!1},Rv=function(e){return" "===e||"\t"===e};function Av(e,t,n){e.has(t)?e.get(t).push(n):e.set(t,[n])}var Fv=function(){function e(t,n,i){this._languageIdentifier=t;var o=i.options,r=o.get(107);this.readOnly=o.get(68),this.tabSize=n.tabSize,this.indentSize=n.indentSize,this.insertSpaces=n.insertSpaces,this.lineHeight=o.get(49),this.pageSize=Math.max(1,Math.floor(r.height/this.lineHeight)-2),this.useTabStops=o.get(95),this.wordSeparators=o.get(96),this.emptySelectionClipboard=o.get(25),this.copyWithSyntaxHighlighting=o.get(15),this.multiCursorMergeOverlapping=o.get(58),this.multiCursorPaste=o.get(60),this.autoClosingBrackets=o.get(5),this.autoClosingQuotes=o.get(7),this.autoClosingOvertype=o.get(6),this.autoSurround=o.get(10),this.autoIndent=o.get(8),this.autoClosingPairsOpen2=new Map,this.autoClosingPairsClose2=new Map,this.surroundingPairs={},this._electricChars=null,this.shouldAutoCloseBefore={quote:e._getShouldAutoClose(t,this.autoClosingQuotes),bracket:e._getShouldAutoClose(t,this.autoClosingBrackets)};var s=e._getAutoClosingPairs(t);if(s)for(var a=0,u=s;a<u.length;a++){var l=u[a];Av(this.autoClosingPairsOpen2,l.open.charAt(l.open.length-1),l),1===l.close.length&&Av(this.autoClosingPairsClose2,l.close,l)}var c=e._getSurroundingPairs(t);if(c)for(var d=0,h=c;d<h.length;d++){l=h[d];this.surroundingPairs[l.open]=l.close}}return e.shouldRecreate=function(e){return e.hasChanged(107)||e.hasChanged(96)||e.hasChanged(25)||e.hasChanged(58)||e.hasChanged(60)||e.hasChanged(5)||e.hasChanged(7)||e.hasChanged(6)||e.hasChanged(10)||e.hasChanged(95)||e.hasChanged(49)||e.hasChanged(68)},Object.defineProperty(e.prototype,"electricChars",{get:function(){if(!this._electricChars){this._electricChars={};var t=e._getElectricCharacters(this._languageIdentifier);if(t)for(var n=0,i=t;n<i.length;n++){var o=i[n];this._electricChars[o]=!0}}return this._electricChars},enumerable:!0,configurable:!0}),e.prototype.normalizeIndentation=function(e){return Cv.normalizeIndentation(e,this.indentSize,this.insertSpaces)},e._getElectricCharacters=function(e){try{return Ol.getElectricCharacters(e.id)}catch(e){return De(e),null}},e._getAutoClosingPairs=function(e){try{return Ol.getAutoClosingPairs(e.id)}catch(e){return De(e),null}},e._getShouldAutoClose=function(t,n){switch(n){case"beforeWhitespace":return Rv;case"languageDefined":return e._getLanguageDefinedShouldAutoClose(t);case"always":return Tv;case"never":return Pv}},e._getLanguageDefinedShouldAutoClose=function(e){try{var t=Ol.getAutoCloseBeforeSet(e.id);return function(e){return-1!==t.indexOf(e)}}catch(e){return De(e),Pv}},e._getSurroundingPairs=function(e){try{return Ol.getSurroundingPairs(e.id)}catch(e){return De(e),null}},e}(),Wv=function(){function e(t,n,i,o){this.selectionStart=t,this.selectionStartLeftoverVisibleColumns=n,this.position=i,this.leftoverVisibleColumns=o,this.selection=e._computeSelection(this.selectionStart,this.position)}return e.prototype.equals=function(e){return this.selectionStartLeftoverVisibleColumns===e.selectionStartLeftoverVisibleColumns&&this.leftoverVisibleColumns===e.leftoverVisibleColumns&&this.position.equals(e.position)&&this.selectionStart.equalsRange(e.selectionStart)},e.prototype.hasSelection=function(){return!this.selection.isEmpty()||!this.selectionStart.isEmpty()},e.prototype.move=function(t,n,i,o){return t?new e(this.selectionStart,this.selectionStartLeftoverVisibleColumns,new bn(n,i),o):new e(new wn(n,i,n,i),o,new bn(n,i),o)},e._computeSelection=function(e,t){var n,i,o,r;return e.isEmpty()?(n=e.startLineNumber,i=e.startColumn,o=t.lineNumber,r=t.column):t.isBeforeOrEqual(e.getStartPosition())?(n=e.endLineNumber,i=e.endColumn,o=t.lineNumber,r=t.column):(n=e.startLineNumber,i=e.startColumn,o=t.lineNumber,r=t.column),new Sn(n,i,o,r)},e}(),Vv=function(){function e(e,t,n){this.model=t,this.viewModel=n,this.config=new Fv(this.model.getLanguageIdentifier(),this.model.getOptions(),e)}return e.prototype.validateViewPosition=function(e,t){return this.viewModel.coordinatesConverter.validateViewPosition(e,t)},e.prototype.validateViewRange=function(e,t){return this.viewModel.coordinatesConverter.validateViewRange(e,t)},e.prototype.convertViewRangeToModelRange=function(e){return this.viewModel.coordinatesConverter.convertViewRangeToModelRange(e)},e.prototype.convertViewPositionToModelPosition=function(e,t){return this.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new bn(e,t))},e.prototype.convertModelPositionToViewPosition=function(e){return this.viewModel.coordinatesConverter.convertModelPositionToViewPosition(e)},e.prototype.convertModelRangeToViewRange=function(e){return this.viewModel.coordinatesConverter.convertModelRangeToViewRange(e)},e.prototype.getCurrentScrollTop=function(){return this.viewModel.viewLayout.getCurrentScrollTop()},e.prototype.getCompletelyVisibleViewRange=function(){return this.viewModel.getCompletelyVisibleViewRange()},e.prototype.getCompletelyVisibleModelRange=function(){var e=this.viewModel.getCompletelyVisibleViewRange();return this.viewModel.coordinatesConverter.convertViewRangeToModelRange(e)},e.prototype.getCompletelyVisibleViewRangeAtScrollTop=function(e){return this.viewModel.getCompletelyVisibleViewRangeAtScrollTop(e)},e.prototype.getVerticalOffsetForViewLine=function(e){return this.viewModel.viewLayout.getVerticalOffsetForLineNumber(e)},e}(),Bv=function(e){this.modelState=e,this.viewState=null},Hv=function(e){this.modelState=null,this.viewState=e},zv=function(){function e(e,t){this.modelState=e,this.viewState=t}return e.fromModelState=function(e){return new Bv(e)},e.fromViewState=function(e){return new Hv(e)},e.fromModelSelection=function(t){var n=t.selectionStartLineNumber,i=t.selectionStartColumn,o=t.positionLineNumber,r=t.positionColumn,s=new Wv(new wn(n,i,n,i),0,new bn(o,r),0);return e.fromModelState(s)},e.fromModelSelections=function(e){for(var t=[],n=0,i=e.length;n<i;n++)t[n]=this.fromModelSelection(e[n]);return t},e.prototype.equals=function(e){return this.viewState.equals(e.viewState)&&this.modelState.equals(e.modelState)},e}(),jv=function(e,t,n){this.type=e,this.commands=t,this.shouldPushStackElementBefore=n.shouldPushStackElementBefore,this.shouldPushStackElementAfter=n.shouldPushStackElementAfter},Uv=function(){function e(){}return e.visibleColumnFromColumn=function(t,n,i){for(var o=t.length,r=n-1<o?n-1:o,s=0,a=0;a<r;){var u=Rr(t,r,a);if(a+=u>=65536?2:1,9===u)s=e.nextRenderTabStop(s,i);else{for(var l=Xr(u);a<r;){var c=Rr(t,r,a),d=Xr(c);if($r(l,d))break;a+=c>=65536?2:1,l=d}jr(u)||Ur(u)?s+=2:s+=1}}return s},e.visibleColumnFromColumn2=function(e,t,n){return this.visibleColumnFromColumn(t.getLineContent(n.lineNumber),n.column,e.tabSize)},e.columnFromVisibleColumn=function(t,n,i){if(n<=0)return 1;for(var o=t.length,r=0,s=1,a=0;a<o;){var u=Rr(t,o,a);a+=u>=65536?2:1;var l=void 0;if(9===u)l=e.nextRenderTabStop(r,i);else{for(var c=Xr(u);a<o;){var d=Rr(t,o,a),h=Xr(d);if($r(c,h))break;a+=d>=65536?2:1,c=h}l=jr(u)||Ur(u)?r+2:r+1}var p=a+1;if(l>=n)return l-n<n-r?p:s;r=l,s=p}return o+1},e.columnFromVisibleColumn2=function(e,t,n,i){var o=this.columnFromVisibleColumn(t.getLineContent(n),i,e.tabSize),r=t.getLineMinColumn(n);if(o<r)return r;var s=t.getLineMaxColumn(n);return o>s?s:o},e.nextRenderTabStop=function(e,t){return e+t-e%t},e.nextIndentTabStop=function(e,t){return e+t-e%t},e.prevRenderTabStop=function(e,t){return e-1-(e-1)%t},e.prevIndentTabStop=function(e,t){return e-1-(e-1)%t},e}();function Kv(e){return"'"===e||'"'===e||"`"===e}var qv=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Gv=function(e,t){this.lastViewCursorsRenderData=e,this.lastTextareaPosition=t},Zv=function(){function e(e,t,n,i,o,r){void 0===n&&(n=0),void 0===i&&(i=null),void 0===o&&(o=null),void 0===r&&(r=null),this.element=e,this.type=t,this.mouseColumn=n,this.position=i,!o&&i&&(o=new wn(i.lineNumber,i.column,i.lineNumber,i.column)),this.range=o,this.detail=r}return e._typeToString=function(e){return 1===e?"TEXTAREA":2===e?"GUTTER_GLYPH_MARGIN":3===e?"GUTTER_LINE_NUMBERS":4===e?"GUTTER_LINE_DECORATIONS":5===e?"GUTTER_VIEW_ZONE":6===e?"CONTENT_TEXT":7===e?"CONTENT_EMPTY":8===e?"CONTENT_VIEW_ZONE":9===e?"CONTENT_WIDGET":10===e?"OVERVIEW_RULER":11===e?"SCROLLBAR":12===e?"OVERLAY_WIDGET":"UNKNOWN"},e.toString=function(e){return this._typeToString(e.type)+": "+e.position+" - "+e.range+" - "+e.detail},e.prototype.toString=function(){return e.toString(this)},e}(),Yv=function(){function e(){}return e.isTextArea=function(e){return 2===e.length&&3===e[0]&&6===e[1]},e.isChildOfViewLines=function(e){return e.length>=4&&3===e[0]&&7===e[3]},e.isStrictChildOfViewLines=function(e){return e.length>4&&3===e[0]&&7===e[3]},e.isChildOfScrollableElement=function(e){return e.length>=2&&3===e[0]&&5===e[1]},e.isChildOfMinimap=function(e){return e.length>=2&&3===e[0]&&8===e[1]},e.isChildOfContentWidgets=function(e){return e.length>=4&&3===e[0]&&1===e[3]},e.isChildOfOverflowingContentWidgets=function(e){return e.length>=1&&2===e[0]},e.isChildOfOverlayWidgets=function(e){return e.length>=2&&3===e[0]&&4===e[1]},e}(),Xv=function(){function e(e,t,n){this.model=e.model;var i=e.configuration.options;this.layoutInfo=i.get(107),this.viewDomNode=t.viewDomNode,this.lineHeight=i.get(49),this.typicalHalfwidthCharacterWidth=i.get(34).typicalHalfwidthCharacterWidth,this.lastRenderData=n,this._context=e,this._viewHelper=t}return e.prototype.getZoneAtCoord=function(t){return e.getZoneAtCoord(this._context,t)},e.getZoneAtCoord=function(e,t){var n=e.viewLayout.getWhitespaceAtVerticalOffset(t);if(n){var i=n.verticalOffset+n.height/2,o=e.model.getLineCount(),r=null,s=void 0,a=null;return n.afterLineNumber!==o&&(a=new bn(n.afterLineNumber+1,1)),n.afterLineNumber>0&&(r=new bn(n.afterLineNumber,e.model.getLineMaxColumn(n.afterLineNumber))),s=null===a?r:null===r?a:t<i?r:a,{viewZoneId:n.id,afterLineNumber:n.afterLineNumber,positionBefore:r,positionAfter:a,position:s}}return null},e.prototype.getFullLineRangeAtCoord=function(e){if(this._context.viewLayout.isAfterLines(e)){var t=this._context.model.getLineCount(),n=this._context.model.getLineMaxColumn(t);return{range:new wn(t,n,t,n),isAfterLines:!0}}var i=this._context.viewLayout.getLineNumberAtVerticalOffset(e),o=this._context.model.getLineMaxColumn(i);return{range:new wn(i,1,i,o),isAfterLines:!1}},e.prototype.getLineNumberAtVerticalOffset=function(e){return this._context.viewLayout.getLineNumberAtVerticalOffset(e)},e.prototype.isAfterLines=function(e){return this._context.viewLayout.isAfterLines(e)},e.prototype.getVerticalOffsetForLineNumber=function(e){return this._context.viewLayout.getVerticalOffsetForLineNumber(e)},e.prototype.findAttribute=function(t,n){return e._findAttribute(t,n,this._viewHelper.viewDomNode)},e._findAttribute=function(e,t,n){for(;e&&e!==document.body;){if(e.hasAttribute&&e.hasAttribute(t))return e.getAttribute(t);if(e===n)return null;e=e.parentNode}return null},e.prototype.getLineWidth=function(e){return this._viewHelper.getLineWidth(e)},e.prototype.visibleRangeForPosition=function(e,t){return this._viewHelper.visibleRangeForPosition(e,t)},e.prototype.getPositionFromDOMInfo=function(e,t){return this._viewHelper.getPositionFromDOMInfo(e,t)},e.prototype.getCurrentScrollTop=function(){return this._context.viewLayout.getCurrentScrollTop()},e.prototype.getCurrentScrollLeft=function(){return this._context.viewLayout.getCurrentScrollLeft()},e}(),$v=function(e){function t(t,n,i,o){var r=e.call(this,t,n,i)||this;return r._ctx=t,o?(r.target=o,r.targetPath=rg.collect(o,t.viewDomNode)):(r.target=null,r.targetPath=new Uint8Array(0)),r}return qv(t,e),t.prototype.toString=function(){return"pos("+this.pos.x+","+this.pos.y+"), editorPos("+this.editorPos.x+","+this.editorPos.y+"), mouseVerticalOffset: "+this.mouseVerticalOffset+", mouseContentHorizontalOffset: "+this.mouseContentHorizontalOffset+"\n\ttarget: "+(this.target?this.target.outerHTML:null)},t.prototype.fulfill=function(e,t,n,i){void 0===t&&(t=null),void 0===n&&(n=null),void 0===i&&(i=null);var o=this.mouseColumn;return t&&t.column<this._ctx.model.getLineMaxColumn(t.lineNumber)&&(o=Uv.visibleColumnFromColumn(this._ctx.model.getLineContent(t.lineNumber),t.column,this._ctx.model.getOptions().tabSize)+1),new Zv(this.target,e,o,t,n,i)},t.prototype.withTarget=function(e){return new t(this._ctx,this.editorPos,this.pos,e)},t}((function(e,t,n){this.editorPos=t,this.pos=n,this.mouseVerticalOffset=Math.max(0,e.getCurrentScrollTop()+n.y-t.y),this.mouseContentHorizontalOffset=e.getCurrentScrollLeft()+n.x-t.x-e.layoutInfo.contentLeft,this.isInMarginArea=n.x-t.x<e.layoutInfo.contentLeft&&n.x-t.x>=e.layoutInfo.glyphMarginLeft,this.isInContentArea=!this.isInMarginArea,this.mouseColumn=Math.max(0,e_._getMouseColumn(this.mouseContentHorizontalOffset,e.typicalHalfwidthCharacterWidth))})),Qv={isAfterLines:!0};function Jv(e){return{isAfterLines:!1,horizontalDistanceToText:e}}var e_=function(){function e(e,t){this._context=e,this._viewHelper=t}return e.prototype.mouseTargetIsWidget=function(e){var t=e.target,n=rg.collect(t,this._viewHelper.viewDomNode);return!(!Yv.isChildOfContentWidgets(n)&&!Yv.isChildOfOverflowingContentWidgets(n))||!!Yv.isChildOfOverlayWidgets(n)},e.prototype.createMouseTarget=function(t,n,i,o){var r=new Xv(this._context,this._viewHelper,t),s=new $v(r,n,i,o);try{return e._createMouseTarget(r,s,!1)}catch(e){return s.fulfill(0)}},e._createMouseTarget=function(t,n,i){if(null===n.target){if(i)return n.fulfill(0);var o=e._doHitTest(t,n);return o.position?e.createMouseTargetFromHitTestPosition(t,n,o.position.lineNumber,o.position.column):this._createMouseTarget(t,n.withTarget(o.hitTarget),!0)}var r=n,s=null;return(s=(s=(s=(s=(s=(s=(s=(s=(s=(s=s||e._hitTestContentWidget(t,r))||e._hitTestOverlayWidget(t,r))||e._hitTestMinimap(t,r))||e._hitTestScrollbarSlider(t,r))||e._hitTestViewZone(t,r))||e._hitTestMargin(t,r))||e._hitTestViewCursor(t,r))||e._hitTestTextArea(t,r))||e._hitTestViewLines(t,r,i))||e._hitTestScrollbar(t,r))||n.fulfill(0)},e._hitTestContentWidget=function(e,t){if(Yv.isChildOfContentWidgets(t.targetPath)||Yv.isChildOfOverflowingContentWidgets(t.targetPath)){var n=e.findAttribute(t.target,"widgetId");return n?t.fulfill(9,null,null,n):t.fulfill(0)}return null},e._hitTestOverlayWidget=function(e,t){if(Yv.isChildOfOverlayWidgets(t.targetPath)){var n=e.findAttribute(t.target,"widgetId");return n?t.fulfill(12,null,null,n):t.fulfill(0)}return null},e._hitTestViewCursor=function(e,t){if(t.target)for(var n=0,i=r=e.lastRenderData.lastViewCursorsRenderData;n<i.length;n++){var o=i[n];if(t.target===o.domNode)return t.fulfill(6,o.position)}if(t.isInContentArea)for(var r=e.lastRenderData.lastViewCursorsRenderData,s=t.mouseContentHorizontalOffset,a=t.mouseVerticalOffset,u=0,l=r;u<l.length;u++){if(!(s<(o=l[u]).contentLeft)&&!(s>o.contentLeft+o.width)){var c=e.getVerticalOffsetForLineNumber(o.position.lineNumber);if(c<=a&&a<=c+o.height)return t.fulfill(6,o.position)}}return null},e._hitTestViewZone=function(e,t){var n=e.getZoneAtCoord(t.mouseVerticalOffset);if(n){var i=t.isInContentArea?8:5;return t.fulfill(i,n.position,null,n)}return null},e._hitTestTextArea=function(e,t){return Yv.isTextArea(t.targetPath)?e.lastRenderData.lastTextareaPosition?t.fulfill(6,e.lastRenderData.lastTextareaPosition):t.fulfill(1,e.lastRenderData.lastTextareaPosition):null},e._hitTestMargin=function(e,t){if(t.isInMarginArea){var n=e.getFullLineRangeAtCoord(t.mouseVerticalOffset),i=n.range.getStartPosition(),o=Math.abs(t.pos.x-t.editorPos.x),r={isAfterLines:n.isAfterLines,glyphMarginLeft:e.layoutInfo.glyphMarginLeft,glyphMarginWidth:e.layoutInfo.glyphMarginWidth,lineNumbersWidth:e.layoutInfo.lineNumbersWidth,offsetX:o};return(o-=e.layoutInfo.glyphMarginLeft)<=e.layoutInfo.glyphMarginWidth?t.fulfill(2,i,n.range,r):(o-=e.layoutInfo.glyphMarginWidth)<=e.layoutInfo.lineNumbersWidth?t.fulfill(3,i,n.range,r):(o-=e.layoutInfo.lineNumbersWidth,t.fulfill(4,i,n.range,r))}return null},e._hitTestViewLines=function(t,n,i){if(!Yv.isChildOfViewLines(n.targetPath))return null;if(t.isAfterLines(n.mouseVerticalOffset)){var o=t.model.getLineCount(),r=t.model.getLineMaxColumn(o);return n.fulfill(7,new bn(o,r),void 0,Qv)}if(i){if(Yv.isStrictChildOfViewLines(n.targetPath)){var s=t.getLineNumberAtVerticalOffset(n.mouseVerticalOffset);if(0===t.model.getLineLength(s)){var a=t.getLineWidth(s),u=Jv(n.mouseContentHorizontalOffset-a);return n.fulfill(7,new bn(s,1),void 0,u)}var l=t.getLineWidth(s);if(n.mouseContentHorizontalOffset>=l){u=Jv(n.mouseContentHorizontalOffset-l);var c=new bn(s,t.model.getLineMaxColumn(s));return n.fulfill(7,c,void 0,u)}}return n.fulfill(0)}var d=e._doHitTest(t,n);return d.position?e.createMouseTargetFromHitTestPosition(t,n,d.position.lineNumber,d.position.column):this._createMouseTarget(t,n.withTarget(d.hitTarget),!0)},e._hitTestMinimap=function(e,t){if(Yv.isChildOfMinimap(t.targetPath)){var n=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),i=e.model.getLineMaxColumn(n);return t.fulfill(11,new bn(n,i))}return null},e._hitTestScrollbarSlider=function(e,t){if(Yv.isChildOfScrollableElement(t.targetPath)&&t.target&&1===t.target.nodeType){var n=t.target.className;if(n&&/\b(slider|scrollbar)\b/.test(n)){var i=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),o=e.model.getLineMaxColumn(i);return t.fulfill(11,new bn(i,o))}}return null},e._hitTestScrollbar=function(e,t){if(Yv.isChildOfScrollableElement(t.targetPath)){var n=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),i=e.model.getLineMaxColumn(n);return t.fulfill(11,new bn(n,i))}return null},e.prototype.getMouseColumn=function(t,n){var i=this._context.configuration.options,o=i.get(107),r=this._context.viewLayout.getCurrentScrollLeft()+n.x-t.x-o.contentLeft;return e._getMouseColumn(r,i.get(34).typicalHalfwidthCharacterWidth)},e._getMouseColumn=function(e,t){return e<0?1:Math.round(e/t)+1},e.createMouseTargetFromHitTestPosition=function(e,t,n,i){var o=new bn(n,i),r=e.getLineWidth(n);if(t.mouseContentHorizontalOffset>r){if(Bn&&1===o.column){var s=Jv(t.mouseContentHorizontalOffset-r);return t.fulfill(7,new bn(n,e.model.getLineMaxColumn(n)),void 0,s)}var a=Jv(t.mouseContentHorizontalOffset-r);return t.fulfill(7,o,void 0,a)}var u=e.visibleRangeForPosition(n,i);if(!u)return t.fulfill(0,o);var l=u.left;if(t.mouseContentHorizontalOffset===l)return t.fulfill(6,o);var c=[];if(c.push({offset:u.left,column:i}),i>1){var d=e.visibleRangeForPosition(n,i-1);d&&c.push({offset:d.left,column:i-1})}if(i<e.model.getLineMaxColumn(n)){var h=e.visibleRangeForPosition(n,i+1);h&&c.push({offset:h.left,column:i+1})}c.sort((function(e,t){return e.offset-t.offset}));for(var p=1;p<c.length;p++){var f=c[p-1],g=c[p];if(f.offset<=t.mouseContentHorizontalOffset&&t.mouseContentHorizontalOffset<=g.offset){var m=new wn(n,f.column,n,g.column);return t.fulfill(6,o,m)}}return t.fulfill(6,o)},e._doHitTestWithCaretRangeFromPoint=function(e,t){var n=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),i=e.getVerticalOffsetForLineNumber(n)+Math.floor(e.lineHeight/2),o=t.pos.y+(i-t.mouseVerticalOffset);o<=t.editorPos.y&&(o=t.editorPos.y+1),o>=t.editorPos.y+e.layoutInfo.height&&(o=t.editorPos.y+e.layoutInfo.height-1);var r=new Gf(t.pos.x,o),s=this._actualDoHitTestWithCaretRangeFromPoint(e,r.toClientCoordinates());return s.position?s:this._actualDoHitTestWithCaretRangeFromPoint(e,t.pos.toClientCoordinates())},e._actualDoHitTestWithCaretRangeFromPoint=function(e,t){var n,i=Ho(e.viewDomNode);if(!(n=i?void 0===i.caretRangeFromPoint?function(e,t,n){var i=document.createRange(),o=e.elementFromPoint(t,n);if(null!==o){for(;o&&o.firstChild&&o.firstChild.nodeType!==o.firstChild.TEXT_NODE;)o=o.lastChild;var r=o.getBoundingClientRect(),s=window.getComputedStyle(o,null).getPropertyValue("font"),a=o.innerText,u=r.left,l=0,c=void 0;if(t>r.left+r.width)l=a.length;else for(var d=t_.getInstance(),h=0;h<a.length+1;h++){if(c=d.getCharWidth(a.charAt(h),s)/2,t<(u+=c)){l=h;break}u+=c}i.setStart(o.firstChild,l),i.setEnd(o.firstChild,l)}return i}(i,t.clientX,t.clientY):i.caretRangeFromPoint(t.clientX,t.clientY):document.caretRangeFromPoint(t.clientX,t.clientY))||!n.startContainer)return{position:null,hitTarget:null};var o=n.startContainer,r=null;if(o.nodeType===o.TEXT_NODE){var s=(u=(a=o.parentNode)?a.parentNode:null)?u.parentNode:null;if((s&&s.nodeType===s.ELEMENT_NODE?s.className:null)===xg.CLASS_NAME)return{position:e.getPositionFromDOMInfo(a,n.startOffset),hitTarget:null};r=o.parentNode}else if(o.nodeType===o.ELEMENT_NODE){var a,u;if(((u=(a=o.parentNode)?a.parentNode:null)&&u.nodeType===u.ELEMENT_NODE?u.className:null)===xg.CLASS_NAME)return{position:e.getPositionFromDOMInfo(o,o.textContent.length),hitTarget:null};r=o}return{position:null,hitTarget:r}},e._doHitTestWithCaretPositionFromPoint=function(e,t){var n=document.caretPositionFromPoint(t.clientX,t.clientY);if(n.offsetNode.nodeType===n.offsetNode.TEXT_NODE){var i=n.offsetNode.parentNode,o=i?i.parentNode:null,r=o?o.parentNode:null;return(r&&r.nodeType===r.ELEMENT_NODE?r.className:null)===xg.CLASS_NAME?{position:e.getPositionFromDOMInfo(n.offsetNode.parentNode,n.offset),hitTarget:null}:{position:null,hitTarget:n.offsetNode.parentNode}}return{position:null,hitTarget:n.offsetNode}},e._doHitTestWithMoveToPoint=function(e,t){var n=null,i=null,o=document.body.createTextRange();try{o.moveToPoint(t.clientX,t.clientY)}catch(e){return{position:null,hitTarget:null}}o.collapse(!0);var r=o?o.parentElement():null,s=r?r.parentNode:null,a=s?s.parentNode:null;if((a&&a.nodeType===a.ELEMENT_NODE?a.className:"")===xg.CLASS_NAME){var u=o.duplicate();u.moveToElementText(r),u.setEndPoint("EndToStart",o),n=e.getPositionFromDOMInfo(r,u.text.length),u.moveToElementText(e.viewDomNode)}else i=r;return o.moveToElementText(e.viewDomNode),{position:n,hitTarget:i}},e._doHitTest=function(e,t){return"function"==typeof document.caretRangeFromPoint?this._doHitTestWithCaretRangeFromPoint(e,t):document.caretPositionFromPoint?this._doHitTestWithCaretPositionFromPoint(e,t.pos.toClientCoordinates()):document.body.createTextRange?this._doHitTestWithMoveToPoint(e,t.pos.toClientCoordinates()):{position:null,hitTarget:null}},e}();var t_=function(){function e(){this._cache={},this._canvas=document.createElement("canvas")}return e.getInstance=function(){return e._INSTANCE||(e._INSTANCE=new e),e._INSTANCE},e.prototype.getCharWidth=function(e,t){var n=e+t;if(this._cache[n])return this._cache[n];var i=this._canvas.getContext("2d");i.font=t;var o=i.measureText(e).width;return this._cache[n]=o,o},e._INSTANCE=null,e}(),n_=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function i_(e){return function(t,n){var i=!1;return e&&(i=e.mouseTargetIsWidget(n)),i||n.preventDefault(),n}}var o_=function(e){function t(n,i,o){var r=e.call(this)||this;r._isFocused=!1,r._context=n,r.viewController=i,r.viewHelper=o,r.mouseTargetFactory=new e_(r._context,o),r._mouseDownOperation=r._register(new r_(r._context,r.viewController,r.viewHelper,(function(e,t){return r._createMouseTarget(e,t)}),(function(e){return r._getMouseColumn(e)}))),r._asyncFocus=r._register(new wi((function(){return r.viewHelper.focusTextArea()}),0)),r.lastMouseLeaveTime=-1;var s=new Qf(r.viewHelper.viewDomNode);r._register(s.onContextMenu(r.viewHelper.viewDomNode,(function(e){return r._onContextMenu(e,!0)}))),r._register(s.onMouseMoveThrottled(r.viewHelper.viewDomNode,(function(e){return r._onMouseMove(e)}),i_(r.mouseTargetFactory),t.MOUSE_MOVE_MINIMUM_TIME)),r._register(s.onMouseUp(r.viewHelper.viewDomNode,(function(e){return r._onMouseUp(e)}))),r._register(s.onMouseLeave(r.viewHelper.viewDomNode,(function(e){return r._onMouseLeave(e)}))),r._register(s.onMouseDown(r.viewHelper.viewDomNode,(function(e){return r._onMouseDown(e)})));return r._register(uo(r.viewHelper.viewDomNode,Hn?"mousewheel":"wheel",(function(e){if(r.viewController.emitMouseWheel(e),r._context.configuration.options.get(57)){var t=new di(e);if(t.browserEvent.ctrlKey||t.browserEvent.metaKey){var n=Pa.getZoomLevel(),i=t.deltaY>0?1:-1;Pa.setZoomLevel(n+i),t.preventDefault(),t.stopPropagation()}}}),{capture:!0,passive:!1})),r._context.addEventHandler(r),r}return n_(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),e.prototype.dispose.call(this)},t.prototype.onCursorStateChanged=function(e){return this._mouseDownOperation.onCursorStateChanged(e),!1},t.prototype.onFocusChanged=function(e){return this._isFocused=e.isFocused,!1},t.prototype.onScrollChanged=function(e){return this._mouseDownOperation.onScrollChanged(),!1},t.prototype.getTargetAtClientPoint=function(e,t){var n=new Zf(e,t).toPageCoordinates(),i=Xf(this.viewHelper.viewDomNode);return n.y<i.y||n.y>i.y+i.height||n.x<i.x||n.x>i.x+i.width?null:this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),i,n,null)},t.prototype._createMouseTarget=function(e,t){return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),e.editorPos,e.pos,t?e.target:null)},t.prototype._getMouseColumn=function(e){return this.mouseTargetFactory.getMouseColumn(e.editorPos,e.pos)},t.prototype._onContextMenu=function(e,t){this.viewController.emitContextMenu({event:e,target:this._createMouseTarget(e,t)})},t.prototype._onMouseMove=function(e){this._mouseDownOperation.isActive()||(e.timestamp<this.lastMouseLeaveTime||this.viewController.emitMouseMove({event:e,target:this._createMouseTarget(e,!0)}))},t.prototype._onMouseLeave=function(e){this.lastMouseLeaveTime=(new Date).getTime(),this.viewController.emitMouseLeave({event:e,target:null})},t.prototype._onMouseUp=function(e){this.viewController.emitMouseUp({event:e,target:this._createMouseTarget(e,!0)})},t.prototype._onMouseDown=function(e){var t=this,n=this._createMouseTarget(e,!0),i=6===n.type||7===n.type,o=2===n.type||3===n.type||4===n.type,r=3===n.type,s=this._context.configuration.options.get(83),a=8===n.type||5===n.type,u=9===n.type,l=e.leftButton||e.middleButton;_&&e.leftButton&&e.ctrlKey&&(l=!1);var c=function(){Vn&&!t._isFocused?t._asyncFocus.schedule():(e.preventDefault(),t.viewHelper.focusTextArea())};if(l&&(i||r&&s))c(),this._mouseDownOperation.start(n.type,e);else if(o)e.preventDefault();else if(a){var d=n.detail;this.viewHelper.shouldSuppressMouseDownOnViewZone(d.viewZoneId)&&(c(),this._mouseDownOperation.start(n.type,e),e.preventDefault())}else u&&this.viewHelper.shouldSuppressMouseDownOnWidget(n.detail)&&(c(),e.preventDefault());this.viewController.emitMouseDown({event:e,target:n})},t.MOUSE_MOVE_MINIMUM_TIME=100,t}(ng),r_=function(e){function t(t,n,i,o,r){var s=e.call(this)||this;return s._context=t,s._viewController=n,s._viewHelper=i,s._createMouseTarget=o,s._getMouseColumn=r,s._mouseMoveMonitor=s._register(new eg(s._viewHelper.viewDomNode)),s._onScrollTimeout=s._register(new yi),s._mouseState=new s_,s._currentSelection=new Sn(1,1,1,1),s._isActive=!1,s._lastMouseEvent=null,s}return n_(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.isActive=function(){return this._isActive},t.prototype._onMouseDownThenMove=function(e){this._lastMouseEvent=e,this._mouseState.setModifiers(e);var t=this._findMousePosition(e,!0);t&&(this._mouseState.isDragAndDrop?this._viewController.emitMouseDrag({event:e,target:t}):this._dispatchMouse(t,!0))},t.prototype.start=function(e,t){var n=this;this._lastMouseEvent=t,this._mouseState.setStartedOnLineNumbers(3===e),this._mouseState.setStartButtons(t),this._mouseState.setModifiers(t);var i=this._findMousePosition(t,!0);if(i&&i.position){this._mouseState.trySetCount(t.detail,i.position),t.detail=this._mouseState.count;var o=this._context.configuration.options;if(!o.get(68)&&o.get(24)&&!this._mouseState.altKey&&t.detail<2&&!this._isActive&&!this._currentSelection.isEmpty()&&6===i.type&&i.position&&this._currentSelection.containsPosition(i.position))return this._mouseState.isDragAndDrop=!0,this._isActive=!0,void this._mouseMoveMonitor.startMonitoring(t.target,t.buttons,i_(null),(function(e){return n._onMouseDownThenMove(e)}),(function(){var e=n._findMousePosition(n._lastMouseEvent,!0);n._viewController.emitMouseDrop({event:n._lastMouseEvent,target:e?n._createMouseTarget(n._lastMouseEvent,!0):null}),n._stop()}));this._mouseState.isDragAndDrop=!1,this._dispatchMouse(i,t.shiftKey),this._isActive||(this._isActive=!0,this._mouseMoveMonitor.startMonitoring(t.target,t.buttons,i_(null),(function(e){return n._onMouseDownThenMove(e)}),(function(){return n._stop()})))}},t.prototype._stop=function(){this._isActive=!1,this._onScrollTimeout.cancel()},t.prototype.onScrollChanged=function(){var e=this;this._isActive&&this._onScrollTimeout.setIfNotSet((function(){if(e._lastMouseEvent){var t=e._findMousePosition(e._lastMouseEvent,!1);t&&(e._mouseState.isDragAndDrop||e._dispatchMouse(t,!0))}}),10)},t.prototype.onCursorStateChanged=function(e){this._currentSelection=e.selections[0]},t.prototype._getPositionOutsideEditor=function(e){var t=e.editorPos,n=this._context.model,i=this._context.viewLayout,o=this._getMouseColumn(e);if(e.posy<t.y){var r=Math.max(i.getCurrentScrollTop()-(t.y-e.posy),0);if(a=Xv.getZoneAtCoord(this._context,r))if(u=this._helpPositionJumpOverViewZone(a))return new Zv(null,13,o,u);var s=i.getLineNumberAtVerticalOffset(r);return new Zv(null,13,o,new bn(s,1))}if(e.posy>t.y+t.height){var a,u;r=i.getCurrentScrollTop()+(e.posy-t.y);if(a=Xv.getZoneAtCoord(this._context,r))if(u=this._helpPositionJumpOverViewZone(a))return new Zv(null,13,o,u);var l=i.getLineNumberAtVerticalOffset(r);return new Zv(null,13,o,new bn(l,n.getLineMaxColumn(l)))}var c=i.getLineNumberAtVerticalOffset(i.getCurrentScrollTop()+(e.posy-t.y));return e.posx<t.x?new Zv(null,13,o,new bn(c,1)):e.posx>t.x+t.width?new Zv(null,13,o,new bn(c,n.getLineMaxColumn(c))):null},t.prototype._findMousePosition=function(e,t){var n=this._getPositionOutsideEditor(e);if(n)return n;var i=this._createMouseTarget(e,t);if(!i.position)return null;if(8===i.type||5===i.type){var o=this._helpPositionJumpOverViewZone(i.detail);if(o)return new Zv(i.element,i.type,i.mouseColumn,o,null,i.detail)}return i},t.prototype._helpPositionJumpOverViewZone=function(e){var t=new bn(this._currentSelection.selectionStartLineNumber,this._currentSelection.selectionStartColumn),n=e.positionBefore,i=e.positionAfter;return n&&i?n.isBefore(t)?n:i:null},t.prototype._dispatchMouse=function(e,t){e.position&&this._viewController.dispatchMouse({position:e.position,mouseColumn:e.mouseColumn,startedOnLineNumbers:this._mouseState.startedOnLineNumbers,inSelectionMode:t,mouseDownCount:this._mouseState.count,altKey:this._mouseState.altKey,ctrlKey:this._mouseState.ctrlKey,metaKey:this._mouseState.metaKey,shiftKey:this._mouseState.shiftKey,leftButton:this._mouseState.leftButton,middleButton:this._mouseState.middleButton})},t}(He),s_=function(){function e(){this._altKey=!1,this._ctrlKey=!1,this._metaKey=!1,this._shiftKey=!1,this._leftButton=!1,this._middleButton=!1,this._startedOnLineNumbers=!1,this._lastMouseDownPosition=null,this._lastMouseDownPositionEqualCount=0,this._lastMouseDownCount=0,this._lastSetMouseDownCountTime=0,this.isDragAndDrop=!1}return Object.defineProperty(e.prototype,"altKey",{get:function(){return this._altKey},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"ctrlKey",{get:function(){return this._ctrlKey},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"metaKey",{get:function(){return this._metaKey},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"shiftKey",{get:function(){return this._shiftKey},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"leftButton",{get:function(){return this._leftButton},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"middleButton",{get:function(){return this._middleButton},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"startedOnLineNumbers",{get:function(){return this._startedOnLineNumbers},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"count",{get:function(){return this._lastMouseDownCount},enumerable:!0,configurable:!0}),e.prototype.setModifiers=function(e){this._altKey=e.altKey,this._ctrlKey=e.ctrlKey,this._metaKey=e.metaKey,this._shiftKey=e.shiftKey},e.prototype.setStartButtons=function(e){this._leftButton=e.leftButton,this._middleButton=e.middleButton},e.prototype.setStartedOnLineNumbers=function(e){this._startedOnLineNumbers=e},e.prototype.trySetCount=function(t,n){var i=(new Date).getTime();i-this._lastSetMouseDownCountTime>e.CLEAR_MOUSE_DOWN_COUNT_TIME&&(t=1),this._lastSetMouseDownCountTime=i,t>this._lastMouseDownCount+1&&(t=this._lastMouseDownCount+1),this._lastMouseDownPosition&&this._lastMouseDownPosition.equals(n)?this._lastMouseDownPositionEqualCount++:this._lastMouseDownPositionEqualCount=1,this._lastMouseDownPosition=n,this._lastMouseDownCount=Math.min(t,this._lastMouseDownPositionEqualCount)},e.CLEAR_MOUSE_DOWN_COUNT_TIME=400,e}(),a_=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function u_(e,t){var n={translationY:t.translationY,translationX:t.translationX};return e&&(n.translationY+=e.translationY,n.translationX+=e.translationX),n}var l_=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;return o.viewHelper.linesContentDomNode.style.msTouchAction="none",o.viewHelper.linesContentDomNode.style.msContentZooming="none",o._installGestureHandlerTimeout=window.setTimeout((function(){if(o._installGestureHandlerTimeout=-1,window.MSGesture){var e=new MSGesture,t=new MSGesture;e.target=o.viewHelper.linesContentDomNode,t.target=o.viewHelper.linesContentDomNode,o.viewHelper.linesContentDomNode.addEventListener("MSPointerDown",(function(n){var i=n.pointerType;i!==(n.MSPOINTER_TYPE_MOUSE||"mouse")?i===(n.MSPOINTER_TYPE_TOUCH||"touch")?(o._lastPointerType="touch",e.addPointer(n.pointerId)):(o._lastPointerType="pen",t.addPointer(n.pointerId)):o._lastPointerType="mouse"})),o._register(Do(o.viewHelper.linesContentDomNode,"MSGestureChange",(function(e){return o._onGestureChange(e)}),u_)),o._register(uo(o.viewHelper.linesContentDomNode,"MSGestureTap",(function(e){return o._onCaptureGestureTap(e)}),!0))}}),100),o._lastPointerType="mouse",o}return a_(t,e),t.prototype._onMouseDown=function(t){"mouse"===this._lastPointerType&&e.prototype._onMouseDown.call(this,t)},t.prototype._onCaptureGestureTap=function(e){var t=this,n=new $f(e,this.viewHelper.viewDomNode),i=this._createMouseTarget(n,!1);i.position&&this.viewController.moveTo(i.position),n.browserEvent.fromElement?(n.preventDefault(),this.viewHelper.focusTextArea()):setTimeout((function(){t.viewHelper.focusTextArea()}))},t.prototype._onGestureChange=function(e){this._context.viewLayout.deltaScrollNow(-e.translationX,-e.translationY)},t.prototype.dispose=function(){window.clearTimeout(this._installGestureHandlerTimeout),e.prototype.dispose.call(this)},t}(o_),c_=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;return o.viewHelper.linesContentDomNode.style.touchAction="none",o._installGestureHandlerTimeout=window.setTimeout((function(){if(o._installGestureHandlerTimeout=-1,window.MSGesture){var e=new MSGesture,t=new MSGesture;e.target=o.viewHelper.linesContentDomNode,t.target=o.viewHelper.linesContentDomNode,o.viewHelper.linesContentDomNode.addEventListener("pointerdown",(function(n){var i=n.pointerType;"mouse"!==i?"touch"===i?(o._lastPointerType="touch",e.addPointer(n.pointerId)):(o._lastPointerType="pen",t.addPointer(n.pointerId)):o._lastPointerType="mouse"})),o._register(Do(o.viewHelper.linesContentDomNode,"MSGestureChange",(function(e){return o._onGestureChange(e)}),u_)),o._register(uo(o.viewHelper.linesContentDomNode,"MSGestureTap",(function(e){return o._onCaptureGestureTap(e)}),!0))}}),100),o._lastPointerType="mouse",o}return a_(t,e),t.prototype._onMouseDown=function(t){"mouse"===this._lastPointerType&&e.prototype._onMouseDown.call(this,t)},t.prototype._onCaptureGestureTap=function(e){var t=this,n=new $f(e,this.viewHelper.viewDomNode),i=this._createMouseTarget(n,!1);i.position&&this.viewController.moveTo(i.position),n.browserEvent.fromElement?(n.preventDefault(),this.viewHelper.focusTextArea()):setTimeout((function(){t.viewHelper.focusTextArea()}))},t.prototype._onGestureChange=function(e){this._context.viewLayout.deltaScrollNow(-e.translationX,-e.translationY)},t.prototype.dispose=function(){window.clearTimeout(this._installGestureHandlerTimeout),e.prototype.dispose.call(this)},t}(o_),d_=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;o._register(jf.addTarget(o.viewHelper.linesContentDomNode)),o._register(uo(o.viewHelper.linesContentDomNode,Bf.Tap,(function(e){return o.onTap(e)}))),o._register(uo(o.viewHelper.linesContentDomNode,Bf.Change,(function(e){return o.onChange(e)}))),o._register(uo(o.viewHelper.linesContentDomNode,Bf.Contextmenu,(function(e){return o._onContextMenu(new $f(e,o.viewHelper.viewDomNode),!1)}))),o._lastPointerType="mouse",o._register(uo(o.viewHelper.linesContentDomNode,"pointerdown",(function(e){var t=e.pointerType;o._lastPointerType="mouse"!==t?"touch"===t?"touch":"pen":"mouse"})));var r=new Jf(o.viewHelper.viewDomNode);return o._register(r.onPointerMoveThrottled(o.viewHelper.viewDomNode,(function(e){return o._onMouseMove(e)}),i_(o.mouseTargetFactory),o_.MOUSE_MOVE_MINIMUM_TIME)),o._register(r.onPointerUp(o.viewHelper.viewDomNode,(function(e){return o._onMouseUp(e)}))),o._register(r.onPointerLeave(o.viewHelper.viewDomNode,(function(e){return o._onMouseLeave(e)}))),o._register(r.onPointerDown(o.viewHelper.viewDomNode,(function(e){return o._onMouseDown(e)}))),o}return a_(t,e),t.prototype.onTap=function(e){if(e.initialTarget&&this.viewHelper.linesContentDomNode.contains(e.initialTarget)){e.preventDefault(),this.viewHelper.focusTextArea();var t=this._createMouseTarget(new $f(e,this.viewHelper.viewDomNode),!1);t.position&&this.viewController.dispatchMouse({position:t.position,mouseColumn:t.position.column,startedOnLineNumbers:!1,mouseDownCount:e.tapCount,inSelectionMode:!1,altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1,leftButton:!1,middleButton:!1})}},t.prototype.onChange=function(e){"touch"===this._lastPointerType&&this._context.viewLayout.deltaScrollNow(-e.translationX,-e.translationY)},t.prototype._onMouseDown=function(t){t.target&&this.viewHelper.linesContentDomNode.contains(t.target)&&"touch"===this._lastPointerType||e.prototype._onMouseDown.call(this,t)},t}(o_),h_=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;return o._register(jf.addTarget(o.viewHelper.linesContentDomNode)),o._register(uo(o.viewHelper.linesContentDomNode,Bf.Tap,(function(e){return o.onTap(e)}))),o._register(uo(o.viewHelper.linesContentDomNode,Bf.Change,(function(e){return o.onChange(e)}))),o._register(uo(o.viewHelper.linesContentDomNode,Bf.Contextmenu,(function(e){return o._onContextMenu(new $f(e,o.viewHelper.viewDomNode),!1)}))),o}return a_(t,e),t.prototype.onTap=function(e){e.preventDefault(),this.viewHelper.focusTextArea();var t=this._createMouseTarget(new $f(e,this.viewHelper.viewDomNode),!1);t.position&&this.viewController.moveTo(t.position)},t.prototype.onChange=function(e){this._context.viewLayout.deltaScrollNow(-e.translationX,-e.translationY)},t}(o_),p_=function(e){function t(t,n,i){var o=e.call(this)||this;return window.navigator.msPointerEnabled?o.handler=o._register(new l_(t,n,i)):C&&Ki.pointerEvents?o.handler=o._register(new d_(t,n,i)):window.TouchEvent?o.handler=o._register(new h_(t,n,i)):window.navigator.pointerEnabled||window.PointerEvent?o.handler=o._register(new c_(t,n,i)):o.handler=o._register(new o_(t,n,i)),o}return a_(t,e),t.prototype.getTargetAtClientPoint=function(e,t){return this.handler.getTargetAtClientPoint(e,t)},t}(He),f_=(n(373),function(){function e(e,t,n,i,o){this.value=e,this.selectionStart=t,this.selectionEnd=n,this.selectionStartPosition=i,this.selectionEndPosition=o}return e.prototype.toString=function(){return"[ <"+this.value+">, selectionStart: "+this.selectionStart+", selectionEnd: "+this.selectionEnd+"]"},e.readFromTextArea=function(t){return new e(t.getValue(),t.getSelectionStart(),t.getSelectionEnd(),null,null)},e.prototype.collapseSelection=function(){return new e(this.value,this.value.length,this.value.length,null,null)},e.prototype.writeToTextArea=function(e,t,n){t.setValue(e,this.value),n&&t.setSelectionRange(e,this.selectionStart,this.selectionEnd)},e.prototype.deduceEditorPosition=function(e){if(e<=this.selectionStart){var t=this.value.substring(e,this.selectionStart);return this._finishDeduceEditorPosition(this.selectionStartPosition,t,-1)}if(e>=this.selectionEnd){t=this.value.substring(this.selectionEnd,e);return this._finishDeduceEditorPosition(this.selectionEndPosition,t,1)}var n=this.value.substring(this.selectionStart,e);if(-1===n.indexOf(String.fromCharCode(8230)))return this._finishDeduceEditorPosition(this.selectionStartPosition,n,1);var i=this.value.substring(e,this.selectionEnd);return this._finishDeduceEditorPosition(this.selectionEndPosition,i,-1)},e.prototype._finishDeduceEditorPosition=function(e,t,n){for(var i=0,o=-1;-1!==(o=t.indexOf("\n",o+1));)i++;return[e,n*t.length,i]},e.selectedText=function(t){return new e(t,0,t.length,null,null)},e.deduceInput=function(e,t,n){if(!e)return{text:"",replaceCharCnt:0};var i=e.value,o=e.selectionStart,r=e.selectionEnd,s=t.value,a=t.selectionStart,u=t.selectionEnd,l=function(e,t){var n,i=Math.min(e.length,t.length),o=e.length-1,r=t.length-1;for(n=0;n<i;n++)if(e.charCodeAt(o-n)!==t.charCodeAt(r-n))return n;return i}(i.substring(r),s.substring(u));s=s.substring(0,s.length-l);var c,d=(i=i.substring(0,i.length-l)).substring(0,o),h=Mr(d,s.substring(0,a));if(s=s.substring(h),i=i.substring(h),a-=h,o-=h,u-=h,r-=h,n&&a===u&&i.length>0){var p=null;if(a===s.length?vr(s,i)&&(p=s.substring(i.length)):_r(s,i)&&(p=s.substring(0,s.length-i.length)),null!==p&&p.length>0&&(/\uFE0F/.test(p)||(c=p,Br.test(c))))return{text:p,replaceCharCnt:0}}return a===u?i===s&&0===o&&r===i.length&&a===s.length&&-1===s.indexOf("\n")&&function(e){for(var t=0,n=e.length;t<n;t++)if(jr(e.charCodeAt(t)))return!0;return!1}(s)?{text:"",replaceCharCnt:0}:{text:s,replaceCharCnt:d.length-h}:{text:s,replaceCharCnt:r-o}},e.EMPTY=new e("",0,0,null,null),e}()),g_=function(){function e(){}return e._getPageOfLine=function(e,t){return Math.floor((e-1)/t)},e._getRangeForPage=function(e,t){var n=e*t;return new wn(n+1,1,n+t+1,1)},e.fromEditorSelection=function(t,n,i,o,r){var s,a=e._getPageOfLine(i.startLineNumber,o),u=e._getRangeForPage(a,o),l=e._getPageOfLine(i.endLineNumber,o),c=e._getRangeForPage(l,o),d=u.intersectRanges(new wn(1,1,i.startLineNumber,i.startColumn)),h=n.getValueInRange(d,1),p=n.getLineCount(),f=n.getLineMaxColumn(p),g=c.intersectRanges(new wn(i.endLineNumber,i.endColumn,p,f)),m=n.getValueInRange(g,1);if(a===l||a+1===l)s=n.getValueInRange(i,1);else{var v=u.intersectRanges(i),_=c.intersectRanges(i);s=n.getValueInRange(v,1)+String.fromCharCode(8230)+n.getValueInRange(_,1)}if(r){h.length>500&&(h=h.substring(h.length-500,h.length)),m.length>500&&(m=m.substring(0,500)),s.length>1e3&&(s=s.substring(0,500)+String.fromCharCode(8230)+s.substring(s.length-500,s.length))}return new f_(h+s+m,h.length,h.length+s.length,new bn(i.startLineNumber,i.startColumn),new bn(i.endLineNumber,i.endColumn))},e}(),m_=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),v_={forceCopyWithSyntaxHighlighting:!1},__=function(){function e(){this._lastState=null}return e.prototype.set=function(e,t){this._lastState={lastCopiedValue:e,data:t}},e.prototype.get=function(e){return this._lastState&&this._lastState.lastCopiedValue===e?this._lastState.data:(this._lastState=null,null)},e.INSTANCE=new e,e}(),y_=function(e){function t(t,n){var i=e.call(this)||this;i.textArea=n,i._onFocus=i._register(new nt),i.onFocus=i._onFocus.event,i._onBlur=i._register(new nt),i.onBlur=i._onBlur.event,i._onKeyDown=i._register(new nt),i.onKeyDown=i._onKeyDown.event,i._onKeyUp=i._register(new nt),i.onKeyUp=i._onKeyUp.event,i._onCut=i._register(new nt),i.onCut=i._onCut.event,i._onPaste=i._register(new nt),i.onPaste=i._onPaste.event,i._onType=i._register(new nt),i.onType=i._onType.event,i._onCompositionStart=i._register(new nt),i.onCompositionStart=i._onCompositionStart.event,i._onCompositionUpdate=i._register(new nt),i.onCompositionUpdate=i._onCompositionUpdate.event,i._onCompositionEnd=i._register(new nt),i.onCompositionEnd=i._onCompositionEnd.event,i._onSelectionChangeRequest=i._register(new nt),i.onSelectionChangeRequest=i._onSelectionChangeRequest.event,i._host=t,i._textArea=i._register(new w_(n)),i._asyncTriggerCut=i._register(new wi((function(){return i._onCut.fire()}),0)),i._textAreaState=f_.EMPTY,i._selectionChangeListener=null,i.writeScreenReaderContent("ctor"),i._hasFocus=!1,i._isDoingComposition=!1,i._nextCommand=0,i._register(co(n.domNode,"keydown",(function(e){!i._isDoingComposition||109!==e.keyCode&&1!==e.keyCode||e.stopPropagation(),e.equals(9)&&e.preventDefault(),i._onKeyDown.fire(e)}))),i._register(co(n.domNode,"keyup",(function(e){i._onKeyUp.fire(e)}))),i._register(uo(n.domNode,"compositionstart",(function(e){i._isDoingComposition||(i._isDoingComposition=!0,Hn||i._setAndWriteTextAreaState("compositionstart",f_.EMPTY),i._onCompositionStart.fire())})));var o=function(e){var t=i._textAreaState,n=f_.readFromTextArea(i._textArea);return[n,f_.deduceInput(t,n,e)]},r=function(e){var t=i._textAreaState,n=f_.selectedText(e);return[n,{text:n.value,replaceCharCnt:t.selectionEnd-t.selectionStart}]},s=function(e){return!(!Hn||"ja"!==e)||!(!Vn||0!==e.indexOf("zh-Han"))};return i._register(uo(n.domNode,"compositionupdate",(function(e){if(s(e.locale)){var t=o(!1),n=t[0],a=t[1];return i._textAreaState=n,i._onType.fire(a),void i._onCompositionUpdate.fire(e)}var u=r(e.data),l=u[0],c=u[1];i._textAreaState=l,i._onType.fire(c),i._onCompositionUpdate.fire(e)}))),i._register(uo(n.domNode,"compositionend",(function(e){if(i._isDoingComposition){if(s(e.locale)){var t=o(!1),n=t[0],a=t[1];i._textAreaState=n,i._onType.fire(a)}else{var u=r(e.data);n=u[0],a=u[1];i._textAreaState=n,i._onType.fire(a)}(Hn||Un)&&(i._textAreaState=f_.readFromTextArea(i._textArea)),i._isDoingComposition&&(i._isDoingComposition=!1,i._onCompositionEnd.fire())}}))),i._register(uo(n.domNode,"input",(function(){if(i._textArea.setIgnoreSelectionChangeTime("received input event"),!i._isDoingComposition){var e=o(_),t=e[0],n=e[1];0===n.replaceCharCnt&&1===n.text.length&&Tr(n.text.charCodeAt(0))||(i._textAreaState=t,0===i._nextCommand?""!==n.text&&i._onType.fire(n):(""===n.text&&0===n.replaceCharCnt||i._firePaste(n.text,null),i._nextCommand=0))}}))),i._register(uo(n.domNode,"cut",(function(e){i._textArea.setIgnoreSelectionChangeTime("received cut event"),i._ensureClipboardGetsEditorSelection(e),i._asyncTriggerCut.schedule()}))),i._register(uo(n.domNode,"copy",(function(e){i._ensureClipboardGetsEditorSelection(e)}))),i._register(uo(n.domNode,"paste",(function(e){if(i._textArea.setIgnoreSelectionChangeTime("received paste event"),b_.canUseTextData(e)){var t=b_.getTextData(e),n=t[0],o=t[1];""!==n&&i._firePaste(n,o)}else i._textArea.getSelectionStart()!==i._textArea.getSelectionEnd()&&i._setAndWriteTextAreaState("paste",f_.EMPTY),i._nextCommand=1}))),i._register(uo(n.domNode,"focus",(function(){i._setHasFocus(!0)}))),i._register(uo(n.domNode,"blur",(function(){i._setHasFocus(!1)}))),i}return m_(t,e),t.prototype._installSelectionChangeListener=function(){var e=this,t=0;return uo(document,"selectionchange",(function(n){if(e._hasFocus&&!e._isDoingComposition&&Un&&v){var i=Date.now(),o=i-t;if(t=i,!(o<5)){var r=i-e._textArea.getIgnoreSelectionChangeTime();if(e._textArea.resetSelectionChangeTime(),!(r<100)&&e._textAreaState.selectionStartPosition&&e._textAreaState.selectionEndPosition){var s=e._textArea.getValue();if(e._textAreaState.value===s){var a=e._textArea.getSelectionStart(),u=e._textArea.getSelectionEnd();if(e._textAreaState.selectionStart!==a||e._textAreaState.selectionEnd!==u){var l=e._textAreaState.deduceEditorPosition(a),c=e._host.deduceModelPosition(l[0],l[1],l[2]),d=e._textAreaState.deduceEditorPosition(u),h=e._host.deduceModelPosition(d[0],d[1],d[2]),p=new Sn(c.lineNumber,c.column,h.lineNumber,h.column);e._onSelectionChangeRequest.fire(p)}}}}}}))},t.prototype.dispose=function(){e.prototype.dispose.call(this),this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null)},t.prototype.focusTextArea=function(){this._setHasFocus(!0),this.refreshFocusState()},t.prototype.isFocused=function(){return this._hasFocus},t.prototype.refreshFocusState=function(){var e=Ho(this.textArea.domNode);e?this._setHasFocus(e.activeElement===this.textArea.domNode):$i(this.textArea.domNode)?this._setHasFocus(document.activeElement===this.textArea.domNode):this._setHasFocus(!1)},t.prototype._setHasFocus=function(e){this._hasFocus!==e&&(this._hasFocus=e,this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null),this._hasFocus&&(this._selectionChangeListener=this._installSelectionChangeListener()),this._hasFocus&&(Bn?this._setAndWriteTextAreaState("focusgain",f_.EMPTY):this.writeScreenReaderContent("focusgain")),this._hasFocus?this._onFocus.fire():this._onBlur.fire())},t.prototype._setAndWriteTextAreaState=function(e,t){this._hasFocus||(t=t.collapseSelection()),t.writeToTextArea(e,this._textArea,this._hasFocus),this._textAreaState=t},t.prototype.writeScreenReaderContent=function(e){this._isDoingComposition||this._setAndWriteTextAreaState(e,this._host.getScreenReaderContent(this._textAreaState))},t.prototype._ensureClipboardGetsEditorSelection=function(e){var t=this._host.getDataToCopy(b_.canUseTextData(e)&&Ki.clipboard.richText),n={version:1,isFromEmptySelection:t.isFromEmptySelection,multicursorText:t.multicursorText,mode:t.mode};__.INSTANCE.set(zn?t.text.replace(/\r\n/g,"\n"):t.text,n),b_.canUseTextData(e)?b_.setTextData(e,t.text,t.html,n):this._setAndWriteTextAreaState("copy or cut",f_.selectedText(t.text))},t.prototype._firePaste=function(e,t){t||(t=__.INSTANCE.get(e)),this._onPaste.fire({text:e,metadata:t})},t}(He),b_=function(){function e(){}return e.canUseTextData=function(e){return!!e.clipboardData||!!window.clipboardData},e.getTextData=function(e){if(e.clipboardData){e.preventDefault();var t=e.clipboardData.getData("text/plain"),n=null,i=e.clipboardData.getData("vscode-editor-data");if("string"==typeof i)try{1!==(n=JSON.parse(i)).version&&(n=null)}catch(e){}return[t,n]}if(window.clipboardData)return e.preventDefault(),[t=window.clipboardData.getData("Text"),null];throw new Error("ClipboardEventUtils.getTextData: Cannot use text data!")},e.setTextData=function(e,t,n,i){if(e.clipboardData)return e.clipboardData.setData("text/plain",t),"string"==typeof n&&e.clipboardData.setData("text/html",n),e.clipboardData.setData("vscode-editor-data",JSON.stringify(i)),void e.preventDefault();if(window.clipboardData)return window.clipboardData.setData("Text",t),void e.preventDefault();throw new Error("ClipboardEventUtils.setTextData: Cannot use text data!")},e}(),w_=function(e){function t(t){var n=e.call(this)||this;return n._actual=t,n._ignoreSelectionChangeTime=0,n}return m_(t,e),t.prototype.setIgnoreSelectionChangeTime=function(e){this._ignoreSelectionChangeTime=Date.now()},t.prototype.getIgnoreSelectionChangeTime=function(){return this._ignoreSelectionChangeTime},t.prototype.resetSelectionChangeTime=function(){this._ignoreSelectionChangeTime=0},t.prototype.getValue=function(){return this._actual.domNode.value},t.prototype.setValue=function(e,t){var n=this._actual.domNode;n.value!==t&&(this.setIgnoreSelectionChangeTime("setValue"),n.value=t)},t.prototype.getSelectionStart=function(){return this._actual.domNode.selectionStart},t.prototype.getSelectionEnd=function(){return this._actual.domNode.selectionEnd},t.prototype.setSelectionRange=function(e,t,n){var i=this._actual.domNode,o=Ho(i),r=(o?o.activeElement:document.activeElement)===i,s=i.selectionStart,a=i.selectionEnd;if(r&&s===t&&a===n)zn&&window.parent!==window&&i.focus();else{if(r)return this.setIgnoreSelectionChangeTime("setSelectionRange"),i.setSelectionRange(t,n),void(zn&&window.parent!==window&&i.focus());try{var u=function(e){for(var t=[],n=0;e&&e.nodeType===e.ELEMENT_NODE;n++)t[n]=e.scrollTop,e=e.parentNode;return t}(i);this.setIgnoreSelectionChangeTime("setSelectionRange"),i.focus(),i.setSelectionRange(t,n),function(e,t){for(var n=0;e&&e.nodeType===e.ELEMENT_NODE;n++)e.scrollTop!==t[n]&&(e.scrollTop=t[n]),e=e.parentNode}(i,u)}catch(e){}}},t}(He),C_=(n(374),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),S_=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return C_(t,e),t}(ng),L_="base.contributions.colors",x_=new(function(){function e(){this._onDidChangeSchema=new nt,this.onDidChangeSchema=this._onDidChangeSchema.event,this.colorSchema={type:"object",properties:{}},this.colorReferenceSchema={type:"string",enum:[],enumDescriptions:[]},this.colorsById={}}return e.prototype.registerColor=function(e,t,n,i,o){void 0===i&&(i=!1);var r={id:e,description:n,defaults:t,needsTransparency:i,deprecationMessage:o};this.colorsById[e]=r;var s={type:"string",description:n,format:"color-hex",defaultSnippets:[{body:"${1:#ff0000}"}]};return o&&(s.deprecationMessage=o),this.colorSchema.properties[e]=s,this.colorReferenceSchema.enum.push(e),this.colorReferenceSchema.enumDescriptions.push(n),this._onDidChangeSchema.fire(),e},e.prototype.resolveDefaultColor=function(e,t){var n=this.colorsById[e];if(n&&n.defaults)return Tb(n.defaults[t.type],t)},e.prototype.getColorSchema=function(){return this.colorSchema},e.prototype.toString=function(){var e=this;return Object.keys(this.colorsById).sort((function(e,t){var n=-1===e.indexOf(".")?0:1,i=-1===t.indexOf(".")?0:1;return n!==i?n-i:e.localeCompare(t)})).map((function(t){return"- `"+t+"`: "+e.colorsById[t].description})).join("\n")},e}());function D_(e,t,n,i,o){return x_.registerColor(e,t,n,i,o)}Td.add(L_,x_);var N_,k_,E_=D_("foreground",{dark:"#CCCCCC",light:"#616161",hc:"#FFFFFF"},r("foreground","Overall foreground color. This color is only used if not overridden by a component.")),I_=D_("errorForeground",{dark:"#F48771",light:"#A1260D",hc:"#F48771"},r("errorForeground","Overall foreground color for error messages. This color is only used if not overridden by a component.")),O_=D_("focusBorder",{dark:mv.fromHex("#0E639C").transparent(.8),light:mv.fromHex("#007ACC").transparent(.4),hc:"#F38518"},r("focusBorder","Overall border color for focused elements. This color is only used if not overridden by a component.")),M_=D_("contrastBorder",{light:null,dark:null,hc:"#6FC3DF"},r("contrastBorder","An extra border around elements to separate them from others for greater contrast.")),T_=D_("contrastActiveBorder",{light:null,dark:null,hc:O_},r("activeContrastBorder","An extra border around active elements to separate them from others for greater contrast.")),P_=D_("textLink.foreground",{light:"#006AB1",dark:"#3794FF",hc:"#3794FF"},r("textLinkForeground","Foreground color for links in text.")),R_=D_("textCodeBlock.background",{light:"#dcdcdc66",dark:"#0a0a0a66",hc:mv.black},r("textCodeBlockBackground","Background color for code blocks in text.")),A_=D_("widget.shadow",{dark:"#000000",light:"#A8A8A8",hc:null},r("widgetShadow","Shadow color of widgets such as find/replace inside the editor.")),F_=D_("input.background",{dark:"#3C3C3C",light:mv.white,hc:mv.black},r("inputBoxBackground","Input box background.")),W_=D_("input.foreground",{dark:E_,light:E_,hc:E_},r("inputBoxForeground","Input box foreground.")),V_=D_("input.border",{dark:null,light:null,hc:M_},r("inputBoxBorder","Input box border.")),B_=D_("inputOption.activeBorder",{dark:"#007ACC00",light:"#007ACC00",hc:M_},r("inputBoxActiveOptionBorder","Border color of activated options in input fields.")),H_=D_("inputOption.activeBackground",{dark:Ib(O_,.5),light:Ib(O_,.3),hc:null},r("inputOption.activeBackground","Background color of activated options in input fields.")),z_=D_("inputValidation.infoBackground",{dark:"#063B49",light:"#D6ECF2",hc:mv.black},r("inputValidationInfoBackground","Input validation background color for information severity.")),j_=D_("inputValidation.infoForeground",{dark:null,light:null,hc:null},r("inputValidationInfoForeground","Input validation foreground color for information severity.")),U_=D_("inputValidation.infoBorder",{dark:"#007acc",light:"#007acc",hc:M_},r("inputValidationInfoBorder","Input validation border color for information severity.")),K_=D_("inputValidation.warningBackground",{dark:"#352A05",light:"#F6F5D2",hc:mv.black},r("inputValidationWarningBackground","Input validation background color for warning severity.")),q_=D_("inputValidation.warningForeground",{dark:null,light:null,hc:null},r("inputValidationWarningForeground","Input validation foreground color for warning severity.")),G_=D_("inputValidation.warningBorder",{dark:"#B89500",light:"#B89500",hc:M_},r("inputValidationWarningBorder","Input validation border color for warning severity.")),Z_=D_("inputValidation.errorBackground",{dark:"#5A1D1D",light:"#F2DEDE",hc:mv.black},r("inputValidationErrorBackground","Input validation background color for error severity.")),Y_=D_("inputValidation.errorForeground",{dark:null,light:null,hc:null},r("inputValidationErrorForeground","Input validation foreground color for error severity.")),X_=D_("inputValidation.errorBorder",{dark:"#BE1100",light:"#BE1100",hc:M_},r("inputValidationErrorBorder","Input validation border color for error severity.")),$_=D_("dropdown.background",{dark:"#3C3C3C",light:mv.white,hc:mv.black},r("dropdownBackground","Dropdown background.")),Q_=D_("dropdown.foreground",{dark:"#F0F0F0",light:null,hc:mv.white},r("dropdownForeground","Dropdown foreground.")),J_=D_("pickerGroup.foreground",{dark:"#3794FF",light:"#0066BF",hc:mv.white},r("pickerGroupForeground","Quick picker color for grouping labels.")),ey=D_("pickerGroup.border",{dark:"#3F3F46",light:"#CCCEDB",hc:mv.white},r("pickerGroupBorder","Quick picker color for grouping borders.")),ty=D_("badge.background",{dark:"#4D4D4D",light:"#C4C4C4",hc:mv.black},r("badgeBackground","Badge background color. Badges are small information labels, e.g. for search results count.")),ny=D_("badge.foreground",{dark:mv.white,light:"#333",hc:mv.white},r("badgeForeground","Badge foreground color. Badges are small information labels, e.g. for search results count.")),iy=D_("scrollbar.shadow",{dark:"#000000",light:"#DDDDDD",hc:null},r("scrollbarShadow","Scrollbar shadow to indicate that the view is scrolled.")),oy=D_("scrollbarSlider.background",{dark:mv.fromHex("#797979").transparent(.4),light:mv.fromHex("#646464").transparent(.4),hc:Ib(M_,.6)},r("scrollbarSliderBackground","Scrollbar slider background color.")),ry=D_("scrollbarSlider.hoverBackground",{dark:mv.fromHex("#646464").transparent(.7),light:mv.fromHex("#646464").transparent(.7),hc:Ib(M_,.8)},r("scrollbarSliderHoverBackground","Scrollbar slider background color when hovering.")),sy=D_("scrollbarSlider.activeBackground",{dark:mv.fromHex("#BFBFBF").transparent(.4),light:mv.fromHex("#000000").transparent(.6),hc:M_},r("scrollbarSliderActiveBackground","Scrollbar slider background color when clicked on.")),ay=D_("progressBar.background",{dark:mv.fromHex("#0E70C0"),light:mv.fromHex("#0E70C0"),hc:M_},r("progressBarBackground","Background color of the progress bar that can show for long running operations.")),uy=D_("editorError.foreground",{dark:"#F48771",light:"#E51400",hc:null},r("editorError.foreground","Foreground color of error squigglies in the editor.")),ly=D_("editorError.border",{dark:null,light:null,hc:mv.fromHex("#E47777").transparent(.8)},r("errorBorder","Border color of error boxes in the editor.")),cy=D_("editorWarning.foreground",{dark:"#CCA700",light:"#E9A700",hc:null},r("editorWarning.foreground","Foreground color of warning squigglies in the editor.")),dy=D_("editorWarning.border",{dark:null,light:null,hc:mv.fromHex("#FFCC00").transparent(.8)},r("warningBorder","Border color of warning boxes in the editor.")),hy=D_("editorInfo.foreground",{dark:"#75BEFF",light:"#75BEFF",hc:null},r("editorInfo.foreground","Foreground color of info squigglies in the editor.")),py=D_("editorInfo.border",{dark:null,light:null,hc:mv.fromHex("#75BEFF").transparent(.8)},r("infoBorder","Border color of info boxes in the editor.")),fy=D_("editorHint.foreground",{dark:mv.fromHex("#eeeeee").transparent(.7),light:"#6c6c6c",hc:null},r("editorHint.foreground","Foreground color of hint squigglies in the editor.")),gy=D_("editorHint.border",{dark:null,light:null,hc:mv.fromHex("#eeeeee").transparent(.8)},r("hintBorder","Border color of hint boxes in the editor.")),my=D_("editor.background",{light:"#fffffe",dark:"#1E1E1E",hc:mv.black},r("editorBackground","Editor background color.")),vy=D_("editor.foreground",{light:"#333333",dark:"#BBBBBB",hc:mv.white},r("editorForeground","Editor default foreground color.")),_y=D_("editorWidget.background",{dark:"#252526",light:"#F3F3F3",hc:"#0C141F"},r("editorWidgetBackground","Background color of editor widgets, such as find/replace.")),yy=D_("editorWidget.foreground",{dark:E_,light:E_,hc:E_},r("editorWidgetForeground","Foreground color of editor widgets, such as find/replace.")),by=D_("editorWidget.border",{dark:"#454545",light:"#C8C8C8",hc:M_},r("editorWidgetBorder","Border color of editor widgets. The color is only used if the widget chooses to have a border and if the color is not overridden by a widget.")),wy=D_("editorWidget.resizeBorder",{light:null,dark:null,hc:null},r("editorWidgetResizeBorder","Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget.")),Cy=D_("editor.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hc:"#f3f518"},r("editorSelectionBackground","Color of the editor selection.")),Sy=D_("editor.selectionForeground",{light:null,dark:null,hc:"#000000"},r("editorSelectionForeground","Color of the selected text for high contrast.")),Ly=D_("editor.inactiveSelectionBackground",{light:Ib(Cy,.5),dark:Ib(Cy,.5),hc:Ib(Cy,.5)},r("editorInactiveSelection","Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations."),!0),xy=D_("editor.selectionHighlightBackground",{light:Mb(Cy,my,.3,.6),dark:Mb(Cy,my,.3,.6),hc:null},r("editorSelectionHighlight","Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations."),!0),Dy=D_("editor.selectionHighlightBorder",{light:null,dark:null,hc:T_},r("editorSelectionHighlightBorder","Border color for regions with the same content as the selection.")),Ny=D_("editor.findMatchBackground",{light:"#A8AC94",dark:"#515C6A",hc:null},r("editorFindMatch","Color of the current search match.")),ky=D_("editor.findMatchHighlightBackground",{light:"#EA5C0055",dark:"#EA5C0055",hc:null},r("findMatchHighlight","Color of the other search matches. The color must not be opaque so as not to hide underlying decorations."),!0),Ey=D_("editor.findRangeHighlightBackground",{dark:"#3a3d4166",light:"#b4b4b44d",hc:null},r("findRangeHighlight","Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),Iy=D_("editor.findMatchBorder",{light:null,dark:null,hc:T_},r("editorFindMatchBorder","Border color of the current search match.")),Oy=D_("editor.findMatchHighlightBorder",{light:null,dark:null,hc:T_},r("findMatchHighlightBorder","Border color of the other search matches.")),My=D_("editor.findRangeHighlightBorder",{dark:null,light:null,hc:Ib(T_,.4)},r("findRangeHighlightBorder","Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),Ty=D_("editor.hoverHighlightBackground",{light:"#ADD6FF26",dark:"#264f7840",hc:"#ADD6FF26"},r("hoverHighlight","Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations."),!0),Py=D_("editorHoverWidget.background",{light:_y,dark:_y,hc:_y},r("hoverBackground","Background color of the editor hover.")),Ry=D_("editorHoverWidget.foreground",{light:yy,dark:yy,hc:yy},r("hoverForeground","Foreground color of the editor hover.")),Ay=D_("editorHoverWidget.border",{light:by,dark:by,hc:by},r("hoverBorder","Border color of the editor hover.")),Fy=D_("editorHoverWidget.statusBarBackground",{dark:(N_=Py,k_=.2,function(e){var t=Tb(N_,e);if(t)return t.lighten(k_)}),light:Eb(Py,.05),hc:_y},r("statusBarBackground","Background color of the editor hover status bar.")),Wy=D_("editorLink.activeForeground",{dark:"#4E94CE",light:mv.blue,hc:mv.cyan},r("activeLinkForeground","Color of active links.")),Vy=D_("editorLightBulb.foreground",{dark:"#FFCC00",light:"#DDB100",hc:"#FFCC00"},r("editorLightBulbForeground","The color used for the lightbulb actions icon.")),By=D_("editorLightBulbAutoFix.foreground",{dark:"#75BEFF",light:"#007ACC",hc:"#75BEFF"},r("editorLightBulbAutoFixForeground","The color used for the lightbulb auto fix actions icon.")),Hy=new mv(new pv(155,185,85,.2)),zy=new mv(new pv(255,0,0,.2)),jy=D_("diffEditor.insertedTextBackground",{dark:Hy,light:Hy,hc:null},r("diffEditorInserted","Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),Uy=D_("diffEditor.removedTextBackground",{dark:zy,light:zy,hc:null},r("diffEditorRemoved","Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),Ky=D_("diffEditor.insertedTextBorder",{dark:null,light:null,hc:"#33ff2eff"},r("diffEditorInsertedOutline","Outline color for the text that got inserted.")),qy=D_("diffEditor.removedTextBorder",{dark:null,light:null,hc:"#FF008F"},r("diffEditorRemovedOutline","Outline color for text that got removed.")),Gy=D_("diffEditor.border",{dark:null,light:null,hc:M_},r("diffEditorBorder","Border color between the two text editors.")),Zy=D_("list.focusBackground",{dark:"#062F4A",light:"#D6EBFF",hc:null},r("listFocusBackground","List/Tree background color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Yy=D_("list.focusForeground",{dark:null,light:null,hc:null},r("listFocusForeground","List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Xy=D_("list.activeSelectionBackground",{dark:"#094771",light:"#0074E8",hc:null},r("listActiveSelectionBackground","List/Tree background color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),$y=D_("list.activeSelectionForeground",{dark:mv.white,light:mv.white,hc:null},r("listActiveSelectionForeground","List/Tree foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Qy=D_("list.inactiveSelectionBackground",{dark:"#37373D",light:"#E4E6F1",hc:null},r("listInactiveSelectionBackground","List/Tree background color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Jy=D_("list.inactiveSelectionForeground",{dark:null,light:null,hc:null},r("listInactiveSelectionForeground","List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),eb=D_("list.inactiveFocusBackground",{dark:null,light:null,hc:null},r("listInactiveFocusBackground","List/Tree background color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),tb=D_("list.hoverBackground",{dark:"#2A2D2E",light:"#F0F0F0",hc:null},r("listHoverBackground","List/Tree background when hovering over items using the mouse.")),nb=D_("list.hoverForeground",{dark:null,light:null,hc:null},r("listHoverForeground","List/Tree foreground when hovering over items using the mouse.")),ib=D_("list.dropBackground",{dark:Zy,light:Zy,hc:null},r("listDropBackground","List/Tree drag and drop background when moving items around using the mouse.")),ob=D_("list.highlightForeground",{dark:"#0097fb",light:"#0066BF",hc:O_},r("highlight","List/Tree foreground color of the match highlights when searching inside the list/tree.")),rb=D_("listFilterWidget.background",{light:"#efc1ad",dark:"#653723",hc:mv.black},r("listFilterWidgetBackground","Background color of the type filter widget in lists and trees.")),sb=D_("listFilterWidget.outline",{dark:mv.transparent,light:mv.transparent,hc:"#f38518"},r("listFilterWidgetOutline","Outline color of the type filter widget in lists and trees.")),ab=D_("listFilterWidget.noMatchesOutline",{dark:"#BE1100",light:"#BE1100",hc:M_},r("listFilterWidgetNoMatchesOutline","Outline color of the type filter widget in lists and trees, when there are no matches.")),ub=D_("tree.indentGuidesStroke",{dark:"#585858",light:"#a9a9a9",hc:"#a9a9a9"},r("treeIndentGuidesStroke","Tree stroke color for the indentation guides.")),lb=D_("menu.border",{dark:null,light:null,hc:M_},r("menuBorder","Border color of menus.")),cb=D_("menu.foreground",{dark:Q_,light:E_,hc:Q_},r("menuForeground","Foreground color of menu items.")),db=D_("menu.background",{dark:$_,light:$_,hc:$_},r("menuBackground","Background color of menu items.")),hb=D_("menu.selectionForeground",{dark:$y,light:$y,hc:$y},r("menuSelectionForeground","Foreground color of the selected menu item in menus.")),pb=D_("menu.selectionBackground",{dark:Xy,light:Xy,hc:Xy},r("menuSelectionBackground","Background color of the selected menu item in menus.")),fb=D_("menu.selectionBorder",{dark:null,light:null,hc:T_},r("menuSelectionBorder","Border color of the selected menu item in menus.")),gb=D_("menu.separatorBackground",{dark:"#BBBBBB",light:"#888888",hc:M_},r("menuSeparatorBackground","Color of a separator menu item in menus.")),mb=D_("editor.snippetTabstopHighlightBackground",{dark:new mv(new pv(124,124,124,.3)),light:new mv(new pv(10,50,100,.2)),hc:new mv(new pv(124,124,124,.3))},r("snippetTabstopHighlightBackground","Highlight background color of a snippet tabstop.")),vb=D_("editor.snippetTabstopHighlightBorder",{dark:null,light:null,hc:null},r("snippetTabstopHighlightBorder","Highlight border color of a snippet tabstop.")),_b=D_("editor.snippetFinalTabstopHighlightBackground",{dark:null,light:null,hc:null},r("snippetFinalTabstopHighlightBackground","Highlight background color of the final tabstop of a snippet.")),yb=D_("editor.snippetFinalTabstopHighlightBorder",{dark:"#525252",light:new mv(new pv(10,50,100,.5)),hc:"#525252"},r("snippetFinalTabstopHighlightBorder","Highlight border color of the final stabstop of a snippet.")),bb=D_("editorOverviewRuler.findMatchForeground",{dark:"#d186167e",light:"#d186167e",hc:"#AB5A00"},r("overviewRulerFindMatchForeground","Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations."),!0),wb=D_("editorOverviewRuler.selectionHighlightForeground",{dark:"#A0A0A0CC",light:"#A0A0A0CC",hc:"#A0A0A0CC"},r("overviewRulerSelectionHighlightForeground","Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations."),!0),Cb=D_("minimap.findMatchHighlight",{light:"#d18616",dark:"#d18616",hc:"#AB5A00"},r("minimapFindMatchHighlight","Minimap marker color for find matches."),!0),Sb=D_("minimap.selectionHighlight",{light:"#ADD6FF",dark:"#264F78",hc:"#ffffff"},r("minimapSelectionHighlight","Minimap marker color for the editor selection."),!0),Lb=D_("minimap.errorHighlight",{dark:new mv(new pv(255,18,18,.7)),light:new mv(new pv(255,18,18,.7)),hc:new mv(new pv(255,50,50,1))},r("minimapError","Minimap marker color for errors.")),xb=D_("minimap.warningHighlight",{dark:cy,light:cy,hc:dy},r("overviewRuleWarning","Minimap marker color for warnings.")),Db=D_("problemsErrorIcon.foreground",{dark:uy,light:uy,hc:uy},r("problemsErrorIconForeground","The color used for the problems error icon.")),Nb=D_("problemsWarningIcon.foreground",{dark:cy,light:cy,hc:cy},r("problemsWarningIconForeground","The color used for the problems warning icon.")),kb=D_("problemsInfoIcon.foreground",{dark:hy,light:hy,hc:hy},r("problemsInfoIconForeground","The color used for the problems info icon."));function Eb(e,t){return function(n){var i=Tb(e,n);if(i)return i.darken(t)}}function Ib(e,t){return function(n){var i=Tb(e,n);if(i)return i.transparent(t)}}function Ob(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(t){for(var n=0,i=e;n<i.length;n++){var o=Tb(i[n],t);if(o)return o}}}function Mb(e,t,n,i){return function(o){var r=Tb(e,o);if(r){var s=Tb(t,o);return s?r.isDarkerThan(s)?mv.getLighterColor(r,s,n).transparent(i):mv.getDarkerColor(r,s,n).transparent(i):r.transparent(n*i)}}}function Tb(e,t){if(null!==e)return"string"==typeof e?"#"===e[0]?mv.fromHex(e):t.getColor(e):e instanceof mv?e:"function"==typeof e?e(t):void 0}var Pb=Td.as(Pd);Pb.registerSchema("vscode://schemas/workbench-colors",x_.getColorSchema());var Rb=new wi((function(){return Pb.notifySchemaChanged("vscode://schemas/workbench-colors")}),200);x_.onDidChangeSchema((function(){Rb.isScheduled()||Rb.schedule()}));var Ab=D_("editor.lineHighlightBackground",{dark:null,light:null,hc:null},r("lineHighlight","Background color for the highlight of line at the cursor position.")),Fb=D_("editor.lineHighlightBorder",{dark:"#282828",light:"#eeeeee",hc:"#f38518"},r("lineHighlightBorderBox","Background color for the border around the line at the cursor position.")),Wb=D_("editor.rangeHighlightBackground",{dark:"#ffffff0b",light:"#fdff0033",hc:null},r("rangeHighlight","Background color of highlighted ranges, like by quick open and find features. The color must not be opaque so as not to hide underlying decorations."),!0),Vb=D_("editor.rangeHighlightBorder",{dark:null,light:null,hc:T_},r("rangeHighlightBorder","Background color of the border around highlighted ranges."),!0),Bb=D_("editor.symbolHighlightBackground",{dark:ky,light:ky,hc:null},r("symbolHighlight","Background color of highlighted symbol, like for go to definition or go next/previous symbol. The color must not be opaque so as not to hide underlying decorations."),!0),Hb=D_("editor.symbolHighlightBorder",{dark:null,light:null,hc:T_},r("symbolHighlightBorder","Background color of the border around highlighted symbols."),!0),zb=D_("editorCursor.foreground",{dark:"#AEAFAD",light:mv.black,hc:mv.white},r("caret","Color of the editor cursor.")),jb=D_("editorCursor.background",null,r("editorCursorBackground","The background color of the editor cursor. Allows customizing the color of a character overlapped by a block cursor.")),Ub=D_("editorWhitespace.foreground",{dark:"#e3e4e229",light:"#33333333",hc:"#e3e4e229"},r("editorWhitespaces","Color of whitespace characters in the editor.")),Kb=D_("editorIndentGuide.background",{dark:Ub,light:Ub,hc:Ub},r("editorIndentGuides","Color of the editor indentation guides.")),qb=D_("editorIndentGuide.activeBackground",{dark:Ub,light:Ub,hc:Ub},r("editorActiveIndentGuide","Color of the active editor indentation guides.")),Gb=D_("editorLineNumber.foreground",{dark:"#858585",light:"#237893",hc:mv.white},r("editorLineNumbers","Color of editor line numbers.")),Zb=D_("editorActiveLineNumber.foreground",{dark:"#c6c6c6",light:"#0B216F",hc:T_},r("editorActiveLineNumber","Color of editor active line number"),!1,r("deprecatedEditorActiveLineNumber","Id is deprecated. Use 'editorLineNumber.activeForeground' instead.")),Yb=D_("editorLineNumber.activeForeground",{dark:Zb,light:Zb,hc:Zb},r("editorActiveLineNumber","Color of editor active line number")),Xb=D_("editorRuler.foreground",{dark:"#5A5A5A",light:mv.lightgrey,hc:mv.white},r("editorRuler","Color of the editor rulers.")),$b=D_("editorCodeLens.foreground",{dark:"#999999",light:"#999999",hc:"#999999"},r("editorCodeLensForeground","Foreground color of editor code lenses")),Qb=D_("editorBracketMatch.background",{dark:"#0064001a",light:"#0064001a",hc:"#0064001a"},r("editorBracketMatchBackground","Background color behind matching brackets")),Jb=D_("editorBracketMatch.border",{dark:"#888",light:"#B9B9B9",hc:M_},r("editorBracketMatchBorder","Color for matching brackets boxes")),ew=D_("editorOverviewRuler.border",{dark:"#7f7f7f4d",light:"#7f7f7f4d",hc:"#7f7f7f4d"},r("editorOverviewRulerBorder","Color of the overview ruler border.")),tw=D_("editorGutter.background",{dark:my,light:my,hc:my},r("editorGutter","Background color of the editor gutter. The gutter contains the glyph margins and the line numbers.")),nw=D_("editorUnnecessaryCode.border",{dark:null,light:null,hc:mv.fromHex("#fff").transparent(.8)},r("unnecessaryCodeBorder","Border color of unnecessary (unused) source code in the editor.")),iw=D_("editorUnnecessaryCode.opacity",{dark:mv.fromHex("#000a"),light:mv.fromHex("#0007"),hc:null},r("unnecessaryCodeOpacity","Opacity of unnecessary (unused) source code in the editor. For example, \"#000000c0\" will render the code with 75% opacity. For high contrast themes, use the 'editorUnnecessaryCode.border' theme color to underline unnecessary code instead of fading it out.")),ow=D_("editorOverviewRuler.errorForeground",{dark:new mv(new pv(255,18,18,.7)),light:new mv(new pv(255,18,18,.7)),hc:new mv(new pv(255,50,50,1))},r("overviewRuleError","Overview ruler marker color for errors.")),rw=D_("editorOverviewRuler.warningForeground",{dark:cy,light:cy,hc:dy},r("overviewRuleWarning","Overview ruler marker color for warnings.")),sw=D_("editorOverviewRuler.infoForeground",{dark:hy,light:hy,hc:py},r("overviewRuleInfo","Overview ruler marker color for infos."));yg((function(e,t){var n=e.getColor(my);n&&t.addRule(".monaco-editor, .monaco-editor-background, .monaco-editor .inputarea.ime-input { background-color: "+n+"; }");var i=e.getColor(vy);i&&t.addRule(".monaco-editor, .monaco-editor .inputarea.ime-input { color: "+i+"; }");var o=e.getColor(tw);o&&t.addRule(".monaco-editor .margin { background-color: "+o+"; }");var r=e.getColor(Wb);r&&t.addRule(".monaco-editor .rangeHighlight { background-color: "+r+"; }");var s=e.getColor(Vb);s&&t.addRule(".monaco-editor .rangeHighlight { border: 1px "+("hc"===e.type?"dotted":"solid")+" "+s+"; }");var a=e.getColor(Bb);a&&t.addRule(".monaco-editor .symbolHighlight { background-color: "+a+"; }");var u=e.getColor(Hb);u&&t.addRule(".monaco-editor .symbolHighlight { border: 1px "+("hc"===e.type?"dotted":"solid")+" "+u+"; }");var l=e.getColor(Ub);l&&t.addRule(".vs-whitespace { color: "+l+" !important; }")}));var aw=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),uw=function(e){function t(t){var n=e.call(this)||this;return n._context=t,n._readConfig(),n._lastCursorModelPosition=new bn(1,1),n._renderResult=null,n._context.addEventHandler(n),n}return aw(t,e),t.prototype._readConfig=function(){var e=this._context.configuration.options;this._lineHeight=e.get(49);var t=e.get(50);this._renderLineNumbers=t.renderType,this._renderCustomLineNumbers=t.renderFn,this._renderFinalNewline=e.get(71);var n=e.get(107);this._lineNumbersLeft=n.lineNumbersLeft,this._lineNumbersWidth=n.lineNumbersWidth},t.prototype.dispose=function(){this._context.removeEventHandler(this),this._renderResult=null,e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){return this._readConfig(),!0},t.prototype.onCursorStateChanged=function(e){var t=e.selections[0].getPosition();return this._lastCursorModelPosition=this._context.model.coordinatesConverter.convertViewPositionToModelPosition(t),2===this._renderLineNumbers||3===this._renderLineNumbers},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollTopChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype._getLineRenderLineNumber=function(e){var t=this._context.model.coordinatesConverter.convertViewPositionToModelPosition(new bn(e,1));if(1!==t.column)return"";var n=t.lineNumber;if(this._renderCustomLineNumbers)return this._renderCustomLineNumbers(n);if(2===this._renderLineNumbers){var i=Math.abs(this._lastCursorModelPosition.lineNumber-n);return 0===i?'<span class="relative-current-line-number">'+n+"</span>":String(i)}return 3===this._renderLineNumbers?this._lastCursorModelPosition.lineNumber===n||n%10==0?String(n):"":String(n)},t.prototype.prepareRender=function(e){if(0!==this._renderLineNumbers){for(var n=y?this._lineHeight%2==0?" lh-even":" lh-odd":"",i=e.visibleRange.startLineNumber,o=e.visibleRange.endLineNumber,r='<div class="'+t.CLASS_NAME+n+'" style="left:'+this._lineNumbersLeft.toString()+"px;width:"+this._lineNumbersWidth.toString()+'px;">',s=this._context.model.getLineCount(),a=[],u=i;u<=o;u++){var l=u-i;if(this._renderFinalNewline||u!==s||0!==this._context.model.getLineLength(u)){var c=this._getLineRenderLineNumber(u);a[l]=c?r+c+"</div>":""}else a[l]=""}this._renderResult=a}else this._renderResult=null},t.prototype.render=function(e,t){if(!this._renderResult)return"";var n=t-e;return n<0||n>=this._renderResult.length?"":this._renderResult[n]},t.CLASS_NAME="line-numbers",t}(S_);yg((function(e,t){var n=e.getColor(Gb);n&&t.addRule(".monaco-editor .line-numbers { color: "+n+"; }");var i=e.getColor(Yb);i&&t.addRule(".monaco-editor .current-line ~ .line-numbers { color: "+i+"; }")}));var lw=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),cw=function(e){function t(n){var i=e.call(this,n)||this,o=i._context.configuration.options,r=o.get(107);return i._canUseLayerHinting=!o.get(22),i._contentLeft=r.contentLeft,i._glyphMarginLeft=r.glyphMarginLeft,i._glyphMarginWidth=r.glyphMarginWidth,i._domNode=Ff(document.createElement("div")),i._domNode.setClassName(t.OUTER_CLASS_NAME),i._domNode.setPosition("absolute"),i._domNode.setAttribute("role","presentation"),i._domNode.setAttribute("aria-hidden","true"),i._glyphMarginBackgroundDomNode=Ff(document.createElement("div")),i._glyphMarginBackgroundDomNode.setClassName(t.CLASS_NAME),i._domNode.appendChild(i._glyphMarginBackgroundDomNode),i}return lw(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.getDomNode=function(){return this._domNode},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options,n=t.get(107);return this._canUseLayerHinting=!t.get(22),this._contentLeft=n.contentLeft,this._glyphMarginLeft=n.glyphMarginLeft,this._glyphMarginWidth=n.glyphMarginWidth,!0},t.prototype.onScrollChanged=function(t){return e.prototype.onScrollChanged.call(this,t)||t.scrollTopChanged},t.prototype.prepareRender=function(e){},t.prototype.render=function(e){this._domNode.setLayerHinting(this._canUseLayerHinting),this._domNode.setContain("strict");var t=e.scrollTop-e.bigNumbersDelta;this._domNode.setTop(-t);var n=Math.min(e.scrollHeight,1e6);this._domNode.setHeight(n),this._domNode.setWidth(this._contentLeft),this._glyphMarginBackgroundDomNode.setLeft(this._glyphMarginLeft),this._glyphMarginBackgroundDomNode.setWidth(this._glyphMarginWidth),this._glyphMarginBackgroundDomNode.setHeight(n)},t.CLASS_NAME="glyph-margin",t.OUTER_CLASS_NAME="margin",t}(og),dw=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),hw=function(){function e(e){this.type=1,this._source=e}return e.prototype.hasChanged=function(e){return this._source.hasChanged(e)},e}(),pw=function(e){this.type=2,this.contentWidth=e.contentWidth,this.contentHeight=e.contentHeight,this.contentWidthChanged=e.contentWidthChanged,this.contentHeightChanged=e.contentHeightChanged},fw=function(e,t){this.type=3,this.selections=e,this.modelSelections=t},gw=function(){this.type=4},mw=function(){this.type=5},vw=function(e){this.type=6,this.isFocused=e},_w=function(){this.type=7},yw=function(){this.type=8},bw=function(e,t){this.type=9,this.fromLineNumber=e,this.toLineNumber=t},ww=function(e,t){this.type=10,this.fromLineNumber=e,this.toLineNumber=t},Cw=function(e,t){this.type=11,this.fromLineNumber=e,this.toLineNumber=t},Sw=function(e,t,n,i,o){this.type=12,this.source=e,this.range=t,this.verticalType=n,this.revealHorizontal=i,this.scrollType=o},Lw=function(e){this.type=13,this.scrollWidth=e.scrollWidth,this.scrollLeft=e.scrollLeft,this.scrollHeight=e.scrollHeight,this.scrollTop=e.scrollTop,this.scrollWidthChanged=e.scrollWidthChanged,this.scrollLeftChanged=e.scrollLeftChanged,this.scrollHeightChanged=e.scrollHeightChanged,this.scrollTopChanged=e.scrollTopChanged},xw=function(){this.type=14},Dw=function(e){this.type=15,this.ranges=e},Nw=function(){this.type=16},kw=function(){this.type=17},Ew=function(e){function t(){var t=e.call(this)||this;return t._listeners=[],t._collector=null,t._collectorCnt=0,t}return dw(t,e),t.prototype.dispose=function(){this._listeners=[],e.prototype.dispose.call(this)},t.prototype._beginEmit=function(){return this._collectorCnt++,1===this._collectorCnt&&(this._collector=new Iw),this._collector},t.prototype._endEmit=function(){if(this._collectorCnt--,0===this._collectorCnt){var e=this._collector.finalize();this._collector=null,e.length>0&&this._emit(e)}},t.prototype._emit=function(e){for(var t=this._listeners.slice(0),n=0,i=t.length;n<i;n++)Ow(t[n],e)},t.prototype.addEventListener=function(e){var t=this;return this._listeners.push(e),We((function(){for(var n=t._listeners,i=0,o=n.length;i<o;i++)if(n[i]===e){n.splice(i,1);break}}))},t}(He),Iw=function(){function e(){this._eventsLen=0,this._events=[],this._eventsLen=0}return e.prototype.emit=function(e){this._events[this._eventsLen++]=e},e.prototype.finalize=function(){var e=this._events;return this._events=[],e},e}();function Ow(e,t){try{e(t)}catch(e){De(e)}}var Mw=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Tw=function(){function e(e,t,n){this.top=e,this.left=t,this.width=n}return e.prototype.setWidth=function(t){return new e(this.top,this.left,t)},e}(),Pw=Hn||zn,Rw=function(e){function t(t,n,i){var o=e.call(this,t)||this;o._primaryCursorPosition=new bn(1,1),o._primaryCursorVisibleRange=null,o._viewController=n,o._viewHelper=i,o._scrollLeft=0,o._scrollTop=0;var r=o._context.configuration.options,s=r.get(107);o._setAccessibilityOptions(r),o._contentLeft=s.contentLeft,o._contentWidth=s.contentWidth,o._contentHeight=s.height,o._fontInfo=r.get(34),o._lineHeight=r.get(49),o._emptySelectionClipboard=r.get(25),o._copyWithSyntaxHighlighting=r.get(15),o._visibleTextArea=null,o._selections=[new Sn(1,1,1,1)],o._modelSelections=[new Sn(1,1,1,1)],o._lastRenderPosition=null,o.textArea=Ff(document.createElement("textarea")),rg.write(o.textArea,6),o.textArea.setClassName("inputarea"),o.textArea.setAttribute("wrap","off"),o.textArea.setAttribute("autocorrect","off"),o.textArea.setAttribute("autocapitalize","off"),o.textArea.setAttribute("autocomplete","off"),o.textArea.setAttribute("spellcheck","false"),o.textArea.setAttribute("aria-label",o._getAriaLabel(r)),o.textArea.setAttribute("role","textbox"),o.textArea.setAttribute("aria-multiline","true"),o.textArea.setAttribute("aria-haspopup","false"),o.textArea.setAttribute("aria-autocomplete","both"),w&&r.get(68)&&o.textArea.setAttribute("readonly","true"),o.textAreaCover=Ff(document.createElement("div")),o.textAreaCover.setPosition("absolute");var a={getLineCount:function(){return o._context.model.getLineCount()},getLineMaxColumn:function(e){return o._context.model.getLineMaxColumn(e)},getValueInRange:function(e,t){return o._context.model.getValueInRange(e,t)}},u={getDataToCopy:function(e){var t=o._context.model.getPlainTextToCopy(o._modelSelections,o._emptySelectionClipboard,v),n=o._context.model.getEOL(),i=o._emptySelectionClipboard&&1===o._modelSelections.length&&o._modelSelections[0].isEmpty(),r=Array.isArray(t)?t:null,s=Array.isArray(t)?t.join(n):t,a=void 0,u=null;if(e&&(v_.forceCopyWithSyntaxHighlighting||o._copyWithSyntaxHighlighting&&s.length<65536)){var l=o._context.model.getRichTextToCopy(o._modelSelections,o._emptySelectionClipboard);l&&(a=l.html,u=l.mode)}return{isFromEmptySelection:i,multicursorText:r,text:s,html:a,mode:u}},getScreenReaderContent:function(e){if(Gn)return f_.EMPTY;if(1===o._accessibilitySupport){if(_){var t=o._selections[0];if(t.isEmpty()){var n=t.getStartPosition(),i=o._getWordBeforePosition(n);if(0===i.length&&(i=o._getCharacterBeforePosition(n)),i.length>0)return new f_(i,i.length,i.length,n,n)}}return f_.EMPTY}return g_.fromEditorSelection(e,a,o._selections[0],o._accessibilityPageSize,0===o._accessibilitySupport)},deduceModelPosition:function(e,t,n){return o._context.model.deduceModelPositionRelativeToViewPosition(e,t,n)}};return o._textAreaInput=o._register(new y_(u,o.textArea)),o._register(o._textAreaInput.onKeyDown((function(e){o._viewController.emitKeyDown(e)}))),o._register(o._textAreaInput.onKeyUp((function(e){o._viewController.emitKeyUp(e)}))),o._register(o._textAreaInput.onPaste((function(e){var t=!1,n=null,i=null;e.metadata&&(t=o._emptySelectionClipboard&&!!e.metadata.isFromEmptySelection,n=void 0!==e.metadata.multicursorText?e.metadata.multicursorText:null,i=e.metadata.mode),o._viewController.paste("keyboard",e.text,t,n,i)}))),o._register(o._textAreaInput.onCut((function(){o._viewController.cut("keyboard")}))),o._register(o._textAreaInput.onType((function(e){e.replaceCharCnt?o._viewController.replacePreviousChar("keyboard",e.text,e.replaceCharCnt):o._viewController.type("keyboard",e.text)}))),o._register(o._textAreaInput.onSelectionChangeRequest((function(e){o._viewController.setSelection("keyboard",e)}))),o._register(o._textAreaInput.onCompositionStart((function(){var e=o._selections[0].startLineNumber,t=o._selections[0].startColumn;o._context.privateViewEventBus.emit(new Sw("keyboard",new wn(e,t,e,t),0,!0,1));var n=o._viewHelper.visibleRangeForPositionRelativeToEditor(e,t);n&&(o._visibleTextArea=new Tw(o._context.viewLayout.getVerticalOffsetForLineNumber(e),n.left,Pw?0:1),o._render()),o.textArea.setClassName("inputarea ime-input"),o._viewController.compositionStart("keyboard")}))),o._register(o._textAreaInput.onCompositionUpdate((function(e){o._visibleTextArea=Hn?o._visibleTextArea.setWidth(0):o._visibleTextArea.setWidth(function(e,t){var n=document.createElement("canvas").getContext("2d");n.font=(i=t,o="normal",r=i.fontWeight,s=i.fontSize,a=i.lineHeight,u=i.fontFamily,o+" normal "+r+" "+s+"px / "+a+"px "+u);var i,o,r,s,a,u;var l=n.measureText(e);return zn?l.width+2:l.width}(e.data,o._fontInfo)),o._render()}))),o._register(o._textAreaInput.onCompositionEnd((function(){o._visibleTextArea=null,o._render(),o.textArea.setClassName("inputarea"),o._viewController.compositionEnd("keyboard")}))),o._register(o._textAreaInput.onFocus((function(){o._context.privateViewEventBus.emit(new vw(!0))}))),o._register(o._textAreaInput.onBlur((function(){o._context.privateViewEventBus.emit(new vw(!1))}))),o}return Mw(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._getWordBeforePosition=function(e){for(var t=this._context.model.getLineContent(e.lineNumber),n=Dm(this._context.configuration.options.get(96)),i=e.column,o=0;i>1;){var r=t.charCodeAt(i-2);if(0!==n.get(r)||o>50)return t.substring(i-1,e.column-1);o++,i--}return t.substring(0,e.column-1)},t.prototype._getCharacterBeforePosition=function(e){if(e.column>1){var t=this._context.model.getLineContent(e.lineNumber).charAt(e.column-2);if(!Tr(t.charCodeAt(0)))return t}return""},t.prototype._getAriaLabel=function(e){return 1===e.get(2)?r("accessibilityOffAriaLabel","The editor is not accessible at this time. Press Alt+F1 for options."):e.get(4)},t.prototype._setAccessibilityOptions=function(e){this._accessibilitySupport=e.get(2);var t=e.get(3);2===this._accessibilitySupport&&t===Le.accessibilityPageSize.defaultValue?this._accessibilityPageSize=160:this._accessibilityPageSize=t},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options,n=t.get(107);return this._setAccessibilityOptions(t),this._contentLeft=n.contentLeft,this._contentWidth=n.contentWidth,this._contentHeight=n.height,this._fontInfo=t.get(34),this._lineHeight=t.get(49),this._emptySelectionClipboard=t.get(25),this._copyWithSyntaxHighlighting=t.get(15),this.textArea.setAttribute("aria-label",this._getAriaLabel(t)),w&&e.hasChanged(68)&&(t.get(68)?this.textArea.setAttribute("readonly","true"):this.textArea.removeAttribute("readonly")),e.hasChanged(2)&&this._textAreaInput.writeScreenReaderContent("strategy changed"),!0},t.prototype.onCursorStateChanged=function(e){return this._selections=e.selections.slice(0),this._modelSelections=e.modelSelections.slice(0),this._textAreaInput.writeScreenReaderContent("selection changed"),!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return this._scrollLeft=e.scrollLeft,this._scrollTop=e.scrollTop,!0},t.prototype.onZonesChanged=function(e){return!0},t.prototype.isFocused=function(){return this._textAreaInput.isFocused()},t.prototype.focusTextArea=function(){this._textAreaInput.focusTextArea()},t.prototype.getLastRenderData=function(){return this._lastRenderPosition},t.prototype.setAriaOptions=function(e){e.activeDescendant?(this.textArea.setAttribute("aria-haspopup","true"),this.textArea.setAttribute("aria-autocomplete","list"),this.textArea.setAttribute("aria-activedescendant",e.activeDescendant)):(this.textArea.setAttribute("aria-haspopup","false"),this.textArea.setAttribute("aria-autocomplete","both"),this.textArea.removeAttribute("aria-activedescendant"))},t.prototype.prepareRender=function(e){this._primaryCursorPosition=new bn(this._selections[0].positionLineNumber,this._selections[0].positionColumn),this._primaryCursorVisibleRange=e.visibleRangeForPosition(this._primaryCursorPosition)},t.prototype.render=function(e){this._textAreaInput.writeScreenReaderContent("render"),this._render()},t.prototype._render=function(){if(this._visibleTextArea)this._renderInsideEditor(null,this._visibleTextArea.top-this._scrollTop,this._contentLeft+this._visibleTextArea.left-this._scrollLeft,this._visibleTextArea.width,this._lineHeight);else if(this._primaryCursorVisibleRange){var e=this._contentLeft+this._primaryCursorVisibleRange.left-this._scrollLeft;if(e<this._contentLeft||e>this._contentLeft+this._contentWidth)this._renderAtTopLeft();else{var t=this._context.viewLayout.getVerticalOffsetForLineNumber(this._selections[0].positionLineNumber)-this._scrollTop;t<0||t>this._contentHeight?this._renderAtTopLeft():_?this._renderInsideEditor(this._primaryCursorPosition,t,e,Pw?0:1,this._lineHeight):this._renderInsideEditor(this._primaryCursorPosition,t,e,Pw?0:1,Pw?0:1)}}else this._renderAtTopLeft()},t.prototype._renderInsideEditor=function(e,t,n,i,o){this._lastRenderPosition=e;var r=this.textArea,s=this.textAreaCover;af.applyFontInfo(r,this._fontInfo),r.setTop(t),r.setLeft(n),r.setWidth(i),r.setHeight(o),s.setTop(0),s.setLeft(0),s.setWidth(0),s.setHeight(0)},t.prototype._renderAtTopLeft=function(){this._lastRenderPosition=null;var e=this.textArea,t=this.textAreaCover;if(af.applyFontInfo(e,this._fontInfo),e.setTop(0),e.setLeft(0),t.setTop(0),t.setLeft(0),Pw)return e.setWidth(0),e.setHeight(0),t.setWidth(0),void t.setHeight(0);e.setWidth(1),e.setHeight(1),t.setWidth(1),t.setHeight(1);var n=this._context.configuration.options;n.get(40)?t.setClassName("monaco-editor-background textAreaCover "+cw.OUTER_CLASS_NAME):0!==n.get(50).renderType?t.setClassName("monaco-editor-background textAreaCover "+uw.CLASS_NAME):t.setClassName("monaco-editor-background textAreaCover")},t}(og);var Aw=function(){function e(){}return e.columnSelect=function(e,t,n,i,o,r){for(var s=Math.abs(o-n)+1,a=n>o,u=i>r,l=i<r,c=[],d=0;d<s;d++){var h=n+(a?-d:d),p=Uv.columnFromVisibleColumn2(e,t,h,i),f=Uv.columnFromVisibleColumn2(e,t,h,r),g=Uv.visibleColumnFromColumn2(e,t,new bn(h,p)),m=Uv.visibleColumnFromColumn2(e,t,new bn(h,f));if(l){if(g>r)continue;if(m<i)continue}if(u){if(m>i)continue;if(g<r)continue}c.push(new Wv(new wn(h,p,h,p),0,new bn(h,f),0))}if(0===c.length)for(d=0;d<s;d++){h=n+(a?-d:d);var v=t.getLineMaxColumn(h);c.push(new Wv(new wn(h,v,h,v),0,new bn(h,v),0))}return{viewStates:c,reversed:a,fromLineNumber:n,fromVisualColumn:i,toLineNumber:o,toVisualColumn:r}},e.columnSelectLeft=function(t,n,i){var o=i.toViewVisualColumn;return o>1&&o--,e.columnSelect(t,n,i.fromViewLineNumber,i.fromViewVisualColumn,i.toViewLineNumber,o)},e.columnSelectRight=function(e,t,n){for(var i=0,o=Math.min(n.fromViewLineNumber,n.toViewLineNumber),r=Math.max(n.fromViewLineNumber,n.toViewLineNumber),s=o;s<=r;s++){var a=t.getLineMaxColumn(s),u=Uv.visibleColumnFromColumn2(e,t,new bn(s,a));i=Math.max(i,u)}var l=n.toViewVisualColumn;return l<i&&l++,this.columnSelect(e,t,n.fromViewLineNumber,n.fromViewVisualColumn,n.toViewLineNumber,l)},e.columnSelectUp=function(e,t,n,i){var o=i?e.pageSize:1,r=Math.max(1,n.toViewLineNumber-o);return this.columnSelect(e,t,n.fromViewLineNumber,n.fromViewVisualColumn,r,n.toViewVisualColumn)},e.columnSelectDown=function(e,t,n,i){var o=i?e.pageSize:1,r=Math.min(t.getLineCount(),n.toViewLineNumber+o);return this.columnSelect(e,t,n.fromViewLineNumber,n.fromViewVisualColumn,r,n.toViewVisualColumn)},e}(),Fw=function(){function e(e,t,n){void 0===n&&(n=!1),this._range=e,this._text=t,this.insertsAutoWhitespace=n}return e.prototype.getEditOperations=function(e,t){t.addTrackedEditOperation(this._range,this._text)},e.prototype.computeCursorState=function(e,t){var n=t.getInverseEditOperations()[0].range;return new Sn(n.endLineNumber,n.endColumn,n.endLineNumber,n.endColumn)},e}(),Ww=function(){function e(e,t){this._range=e,this._text=t}return e.prototype.getEditOperations=function(e,t){t.addTrackedEditOperation(this._range,this._text)},e.prototype.computeCursorState=function(e,t){var n=t.getInverseEditOperations()[0].range;return new Sn(n.startLineNumber,n.startColumn,n.endLineNumber,n.endColumn)},e}(),Vw=function(){function e(e,t,n){void 0===n&&(n=!1),this._range=e,this._text=t,this.insertsAutoWhitespace=n}return e.prototype.getEditOperations=function(e,t){t.addTrackedEditOperation(this._range,this._text)},e.prototype.computeCursorState=function(e,t){var n=t.getInverseEditOperations()[0].range;return new Sn(n.startLineNumber,n.startColumn,n.startLineNumber,n.startColumn)},e}(),Bw=function(){function e(e,t,n,i,o){void 0===o&&(o=!1),this._range=e,this._text=t,this._columnDeltaOffset=i,this._lineNumberDeltaOffset=n,this.insertsAutoWhitespace=o}return e.prototype.getEditOperations=function(e,t){t.addTrackedEditOperation(this._range,this._text)},e.prototype.computeCursorState=function(e,t){var n=t.getInverseEditOperations()[0].range;return new Sn(n.endLineNumber+this._lineNumberDeltaOffset,n.endColumn+this._columnDeltaOffset,n.endLineNumber+this._lineNumberDeltaOffset,n.endColumn+this._columnDeltaOffset)},e}(),Hw=function(){function e(e,t,n,i){void 0===i&&(i=!1),this._range=e,this._text=t,this._initialSelection=n,this._forceMoveMarkers=i,this._selectionId=null}return e.prototype.getEditOperations=function(e,t){t.addTrackedEditOperation(this._range,this._text,this._forceMoveMarkers),this._selectionId=t.trackSelection(this._initialSelection)},e.prototype.computeCursorState=function(e,t){return t.getTrackedSelection(this._selectionId)},e}(),zw=function(e,t,n){this.lineNumber=e,this.column=t,this.leftoverVisibleColumns=n},jw=function(){function e(){}return e.leftPosition=function(e,t,n){return n>e.getLineMinColumn(t)?n-=function(e,t){var n=Qr.getInstance(),i=t,o=Ar(e,t);t-=o>=65536?2:1;for(var r=n.getGraphemeBreakType(o);t>0;){var s=Ar(e,t),a=n.getGraphemeBreakType(s);if($r(a,r))break;t-=s>=65536?2:1,r=a}return i-t}(e.getLineContent(t),n-1):t>1&&(t-=1,n=e.getLineMaxColumn(t)),new bn(t,n)},e.left=function(t,n,i,o){var r=e.leftPosition(n,i,o);return new zw(r.lineNumber,r.column,0)},e.moveLeft=function(t,n,i,o,r){var s,a;if(i.hasSelection()&&!o)s=i.selection.startLineNumber,a=i.selection.startColumn;else{var u=e.left(t,n,i.position.lineNumber,i.position.column-(r-1));s=u.lineNumber,a=u.column}return i.move(o,s,a,0)},e.rightPosition=function(e,t,n){return n<e.getLineMaxColumn(t)?n+=Fr(e.getLineContent(t),n-1):t<e.getLineCount()&&(t+=1,n=e.getLineMinColumn(t)),new bn(t,n)},e.right=function(t,n,i,o){var r=e.rightPosition(n,i,o);return new zw(r.lineNumber,r.column,0)},e.moveRight=function(t,n,i,o,r){var s,a;if(i.hasSelection()&&!o)s=i.selection.endLineNumber,a=i.selection.endColumn;else{var u=e.right(t,n,i.position.lineNumber,i.position.column+(r-1));s=u.lineNumber,a=u.column}return i.move(o,s,a,0)},e.down=function(e,t,n,i,o,r,s){var a=Uv.visibleColumnFromColumn(t.getLineContent(n),i,e.tabSize)+o;n+=r;var u=t.getLineCount();return n>u?(n=u,i=s?t.getLineMaxColumn(n):Math.min(t.getLineMaxColumn(n),i)):i=Uv.columnFromVisibleColumn2(e,t,n,a),o=a-Uv.visibleColumnFromColumn(t.getLineContent(n),i,e.tabSize),new zw(n,i,o)},e.moveDown=function(t,n,i,o,r){var s,a;i.hasSelection()&&!o?(s=i.selection.endLineNumber,a=i.selection.endColumn):(s=i.position.lineNumber,a=i.position.column);var u=e.down(t,n,s,a,i.leftoverVisibleColumns,r,!0);return i.move(o,u.lineNumber,u.column,u.leftoverVisibleColumns)},e.translateDown=function(t,n,i){var o=i.selection,r=e.down(t,n,o.selectionStartLineNumber,o.selectionStartColumn,i.selectionStartLeftoverVisibleColumns,1,!1),s=e.down(t,n,o.positionLineNumber,o.positionColumn,i.leftoverVisibleColumns,1,!1);return new Wv(new wn(r.lineNumber,r.column,r.lineNumber,r.column),r.leftoverVisibleColumns,new bn(s.lineNumber,s.column),s.leftoverVisibleColumns)},e.up=function(e,t,n,i,o,r,s){var a=Uv.visibleColumnFromColumn(t.getLineContent(n),i,e.tabSize)+o;return(n-=r)<1?(n=1,i=s?t.getLineMinColumn(n):Math.min(t.getLineMaxColumn(n),i)):i=Uv.columnFromVisibleColumn2(e,t,n,a),o=a-Uv.visibleColumnFromColumn(t.getLineContent(n),i,e.tabSize),new zw(n,i,o)},e.moveUp=function(t,n,i,o,r){var s,a;i.hasSelection()&&!o?(s=i.selection.startLineNumber,a=i.selection.startColumn):(s=i.position.lineNumber,a=i.position.column);var u=e.up(t,n,s,a,i.leftoverVisibleColumns,r,!0);return i.move(o,u.lineNumber,u.column,u.leftoverVisibleColumns)},e.translateUp=function(t,n,i){var o=i.selection,r=e.up(t,n,o.selectionStartLineNumber,o.selectionStartColumn,i.selectionStartLeftoverVisibleColumns,1,!1),s=e.up(t,n,o.positionLineNumber,o.positionColumn,i.leftoverVisibleColumns,1,!1);return new Wv(new wn(r.lineNumber,r.column,r.lineNumber,r.column),r.leftoverVisibleColumns,new bn(s.lineNumber,s.column),s.leftoverVisibleColumns)},e.moveToBeginningOfLine=function(e,t,n,i){var o,r=n.position.lineNumber,s=t.getLineMinColumn(r),a=t.getLineFirstNonWhitespaceColumn(r)||s;return o=n.position.column===a?s:a,n.move(i,r,o,0)},e.moveToEndOfLine=function(e,t,n,i){var o=n.position.lineNumber,r=t.getLineMaxColumn(o);return n.move(i,o,r,0)},e.moveToBeginningOfBuffer=function(e,t,n,i){return n.move(i,1,1,0)},e.moveToEndOfBuffer=function(e,t,n,i){var o=t.getLineCount(),r=t.getLineMaxColumn(o);return n.move(i,o,r,0)},e}(),Uw=function(){function e(){}return e.deleteRight=function(e,t,n,i){for(var o=[],r=3!==e,s=0,a=i.length;s<a;s++){var u=i[s],l=u;if(l.isEmpty()){var c=u.getPosition(),d=jw.right(t,n,c.lineNumber,c.column);l=new wn(d.lineNumber,d.column,c.lineNumber,c.column)}l.isEmpty()?o[s]=null:(l.startLineNumber!==l.endLineNumber&&(r=!0),o[s]=new Fw(l,""))}return[r,o]},e._isAutoClosingPairDelete=function(e,t,n){if("never"===e.autoClosingBrackets&&"never"===e.autoClosingQuotes)return!1;for(var i=0,o=n.length;i<o;i++){var r=n[i],s=r.getPosition();if(!r.isEmpty())return!1;var a=t.getLineContent(s.lineNumber),u=a[s.column-2],l=e.autoClosingPairsOpen2.get(u);if(!l)return!1;if(Kv(u)){if("never"===e.autoClosingQuotes)return!1}else if("never"===e.autoClosingBrackets)return!1;for(var c=a[s.column-1],d=!1,h=0,p=l;h<p.length;h++){var f=p[h];f.open===u&&f.close===c&&(d=!0)}if(!d)return!1}return!0},e._runAutoClosingPairDelete=function(e,t,n){for(var i=[],o=0,r=n.length;o<r;o++){var s=n[o].getPosition(),a=new wn(s.lineNumber,s.column-1,s.lineNumber,s.column+1);i[o]=new Fw(a,"")}return[!0,i]},e.deleteLeft=function(e,t,n,i){if(this._isAutoClosingPairDelete(t,n,i))return this._runAutoClosingPairDelete(t,n,i);for(var o=[],r=2!==e,s=0,a=i.length;s<a;s++){var u=i[s],l=u;if(l.isEmpty()){var c=u.getPosition();if(t.useTabStops&&c.column>1){var d=n.getLineContent(c.lineNumber),h=wr(d),p=-1===h?d.length+1:h+1;if(c.column<=p){var f=Uv.visibleColumnFromColumn2(t,n,c),g=Uv.prevIndentTabStop(f,t.indentSize),m=Uv.columnFromVisibleColumn2(t,n,c.lineNumber,g);l=new wn(c.lineNumber,m,c.lineNumber,c.column)}else l=new wn(c.lineNumber,c.column-1,c.lineNumber,c.column)}else{var v=jw.left(t,n,c.lineNumber,c.column);l=new wn(v.lineNumber,v.column,c.lineNumber,c.column)}}l.isEmpty()?o[s]=null:(l.startLineNumber!==l.endLineNumber&&(r=!0),o[s]=new Fw(l,""))}return[r,o]},e.cut=function(e,t,n){for(var i=[],o=0,r=n.length;o<r;o++){var s=n[o];if(s.isEmpty())if(e.emptySelectionClipboard){var a=s.getPosition(),u=void 0,l=void 0,c=void 0,d=void 0;a.lineNumber<t.getLineCount()?(u=a.lineNumber,l=1,c=a.lineNumber+1,d=1):a.lineNumber>1?(u=a.lineNumber-1,l=t.getLineMaxColumn(a.lineNumber-1),c=a.lineNumber,d=t.getLineMaxColumn(a.lineNumber)):(u=a.lineNumber,l=1,c=a.lineNumber,d=t.getLineMaxColumn(a.lineNumber));var h=new wn(u,l,c,d);h.isEmpty()?i[o]=null:i[o]=new Fw(h,"")}else i[o]=null;else i[o]=new Fw(s,"")}return new jv(0,i,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})},e}(),Kw=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),qw=function(){function e(){}return e._createWord=function(e,t,n,i,o){return{start:i,end:o,wordType:t,nextCharClass:n}},e._findPreviousWordOnLine=function(e,t,n){var i=t.getLineContent(n.lineNumber);return this._doFindPreviousWordOnLine(i,e,n)},e._doFindPreviousWordOnLine=function(e,t,n){for(var i=0,o=n.column-2;o>=0;o--){var r=e.charCodeAt(o),s=t.get(r);if(0===s){if(2===i)return this._createWord(e,i,s,o+1,this._findEndOfWord(e,t,i,o+1));i=1}else if(2===s){if(1===i)return this._createWord(e,i,s,o+1,this._findEndOfWord(e,t,i,o+1));i=2}else if(1===s&&0!==i)return this._createWord(e,i,s,o+1,this._findEndOfWord(e,t,i,o+1))}return 0!==i?this._createWord(e,i,1,0,this._findEndOfWord(e,t,i,0)):null},e._findEndOfWord=function(e,t,n,i){for(var o=e.length,r=i;r<o;r++){var s=e.charCodeAt(r),a=t.get(s);if(1===a)return r;if(1===n&&2===a)return r;if(2===n&&0===a)return r}return o},e._findNextWordOnLine=function(e,t,n){var i=t.getLineContent(n.lineNumber);return this._doFindNextWordOnLine(i,e,n)},e._doFindNextWordOnLine=function(e,t,n){for(var i=0,o=e.length,r=n.column-1;r<o;r++){var s=e.charCodeAt(r),a=t.get(s);if(0===a){if(2===i)return this._createWord(e,i,a,this._findStartOfWord(e,t,i,r-1),r);i=1}else if(2===a){if(1===i)return this._createWord(e,i,a,this._findStartOfWord(e,t,i,r-1),r);i=2}else if(1===a&&0!==i)return this._createWord(e,i,a,this._findStartOfWord(e,t,i,r-1),r)}return 0!==i?this._createWord(e,i,1,this._findStartOfWord(e,t,i,o-1),o):null},e._findStartOfWord=function(e,t,n,i){for(var o=i;o>=0;o--){var r=e.charCodeAt(o),s=t.get(r);if(1===s)return o+1;if(1===n&&2===s)return o+1;if(2===n&&0===s)return o+1}return 0},e.moveWordLeft=function(t,n,i,o){var r=i.lineNumber,s=i.column,a=!1;1===s&&r>1&&(a=!0,r-=1,s=n.getLineMaxColumn(r));var u=e._findPreviousWordOnLine(t,n,new bn(r,s));if(0===o){if(u&&!a)if(n.getLineLastNonWhitespaceColumn(r)<s)return new bn(r,u.end+1);return new bn(r,u?u.start+1:1)}if(1===o)return u&&2===u.wordType&&u.end-u.start==1&&0===u.nextCharClass&&(u=e._findPreviousWordOnLine(t,n,new bn(r,u.start+1))),new bn(r,u?u.start+1:1);if(3===o){for(;u&&2===u.wordType;)u=e._findPreviousWordOnLine(t,n,new bn(r,u.start+1));return new bn(r,u?u.start+1:1)}return u&&s<=u.end+1&&(u=e._findPreviousWordOnLine(t,n,new bn(r,u.start+1))),new bn(r,u?u.end+1:1)},e._moveWordPartLeft=function(e,t){var n=t.lineNumber,i=e.getLineMaxColumn(n);if(1===t.column)return n>1?new bn(n-1,e.getLineMaxColumn(n-1)):t;for(var o=e.getLineContent(n),r=t.column-1;r>1;r--){var s=o.charCodeAt(r-2),a=o.charCodeAt(r-1);if(95!==s&&95===a)return new bn(n,r);if(Dr(s)&&Nr(a))return new bn(n,r);if(Nr(s)&&Nr(a))if(r+1<i)if(Dr(o.charCodeAt(r)))return new bn(n,r)}return new bn(n,1)},e.moveWordRight=function(t,n,i,o){var r=i.lineNumber,s=i.column,a=!1;s===n.getLineMaxColumn(r)&&r<n.getLineCount()&&(a=!0,r+=1,s=1);var u=e._findNextWordOnLine(t,n,new bn(r,s));if(2===o)u&&2===u.wordType&&u.end-u.start==1&&0===u.nextCharClass&&(u=e._findNextWordOnLine(t,n,new bn(r,u.end+1))),s=u?u.end+1:n.getLineMaxColumn(r);else if(3===o){for(a&&(s=0);u&&(2===u.wordType||u.start+1<=s);)u=e._findNextWordOnLine(t,n,new bn(r,u.end+1));s=u?u.start+1:n.getLineMaxColumn(r)}else u&&!a&&s>=u.start+1&&(u=e._findNextWordOnLine(t,n,new bn(r,u.end+1))),s=u?u.start+1:n.getLineMaxColumn(r);return new bn(r,s)},e._moveWordPartRight=function(e,t){var n=t.lineNumber,i=e.getLineMaxColumn(n);if(t.column===i)return n<e.getLineCount()?new bn(n+1,1):t;for(var o=e.getLineContent(n),r=t.column+1;r<i;r++){var s=o.charCodeAt(r-2),a=o.charCodeAt(r-1);if(95===s&&95!==a)return new bn(n,r);if(Dr(s)&&Nr(a))return new bn(n,r);if(Nr(s)&&Nr(a))if(r+1<i)if(Dr(o.charCodeAt(r)))return new bn(n,r)}return new bn(n,i)},e._deleteWordLeftWhitespace=function(e,t){var n=e.getLineContent(t.lineNumber),i=t.column-2,o=Sr(n,i);return o+1<i?new wn(t.lineNumber,o+2,t.lineNumber,t.column):null},e.deleteWordLeft=function(t,n,i,o,r){if(!i.isEmpty())return i;var s=new bn(i.positionLineNumber,i.positionColumn),a=s.lineNumber,u=s.column;if(1===a&&1===u)return null;if(o){var l=this._deleteWordLeftWhitespace(n,s);if(l)return l}var c=e._findPreviousWordOnLine(t,n,s);return 0===r?c?u=c.start+1:u>1?u=1:(a--,u=n.getLineMaxColumn(a)):(c&&u<=c.end+1&&(c=e._findPreviousWordOnLine(t,n,new bn(a,c.start+1))),c?u=c.end+1:u>1?u=1:(a--,u=n.getLineMaxColumn(a))),new wn(a,u,s.lineNumber,s.column)},e._deleteWordPartLeft=function(t,n){if(!n.isEmpty())return n;var i=n.getPosition(),o=e._moveWordPartLeft(t,i);return new wn(i.lineNumber,i.column,o.lineNumber,o.column)},e._findFirstNonWhitespaceChar=function(e,t){for(var n=e.length,i=t;i<n;i++){var o=e.charAt(i);if(" "!==o&&"\t"!==o)return i}return n},e._deleteWordRightWhitespace=function(e,t){var n=e.getLineContent(t.lineNumber),i=t.column-1,o=this._findFirstNonWhitespaceChar(n,i);return i+1<o?new wn(t.lineNumber,t.column,t.lineNumber,o+1):null},e.deleteWordRight=function(t,n,i,o,r){if(!i.isEmpty())return i;var s=new bn(i.positionLineNumber,i.positionColumn),a=s.lineNumber,u=s.column,l=n.getLineCount(),c=n.getLineMaxColumn(a);if(a===l&&u===c)return null;if(o){var d=this._deleteWordRightWhitespace(n,s);if(d)return d}var h=e._findNextWordOnLine(t,n,s);return 2===r?h?u=h.end+1:u<c||a===l?u=c:(a++,u=(h=e._findNextWordOnLine(t,n,new bn(a,1)))?h.start+1:n.getLineMaxColumn(a)):(h&&u>=h.start+1&&(h=e._findNextWordOnLine(t,n,new bn(a,h.end+1))),h?u=h.start+1:u<c||a===l?u=c:(a++,u=(h=e._findNextWordOnLine(t,n,new bn(a,1)))?h.start+1:n.getLineMaxColumn(a))),new wn(a,u,s.lineNumber,s.column)},e._deleteWordPartRight=function(t,n){if(!n.isEmpty())return n;var i=n.getPosition(),o=e._moveWordPartRight(t,i);return new wn(i.lineNumber,i.column,o.lineNumber,o.column)},e.word=function(t,n,i,o,r){var s,a,u,l,c=Dm(t.wordSeparators),d=e._findPreviousWordOnLine(c,n,r),h=e._findNextWordOnLine(c,n,r);if(!o)return d&&1===d.wordType&&d.start<=r.column-1&&r.column-1<=d.end?(s=d.start+1,a=d.end+1):h&&1===h.wordType&&h.start<=r.column-1&&r.column-1<=h.end?(s=h.start+1,a=h.end+1):(s=d?d.end+1:1,a=h?h.start+1:n.getLineMaxColumn(r.lineNumber)),new Wv(new wn(r.lineNumber,s,r.lineNumber,a),0,new bn(r.lineNumber,a),0);d&&1===d.wordType&&d.start<r.column-1&&r.column-1<d.end?(u=d.start+1,l=d.end+1):h&&1===h.wordType&&h.start<r.column-1&&r.column-1<h.end?(u=h.start+1,l=h.end+1):(u=r.column,l=r.column);var p,f=r.lineNumber;if(i.selectionStart.containsPosition(r))p=i.selectionStart.endColumn;else if(r.isBeforeOrEqual(i.selectionStart.getStartPosition())){var g=new bn(f,p=u);i.selectionStart.containsPosition(g)&&(p=i.selectionStart.endColumn)}else{g=new bn(f,p=l);i.selectionStart.containsPosition(g)&&(p=i.selectionStart.startColumn)}return i.move(!0,f,p,0)},e}(),Gw=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Kw(t,e),t.deleteWordPartLeft=function(e,t,n,i){var o=Zw([qw.deleteWordLeft(e,t,n,i,0),qw.deleteWordLeft(e,t,n,i,2),qw._deleteWordPartLeft(t,n)]);return o.sort(wn.compareRangesUsingEnds),o[2]},t.deleteWordPartRight=function(e,t,n,i){var o=Zw([qw.deleteWordRight(e,t,n,i,0),qw.deleteWordRight(e,t,n,i,2),qw._deleteWordPartRight(t,n)]);return o.sort(wn.compareRangesUsingStarts),o[0]},t.moveWordPartLeft=function(e,t,n){var i=Zw([qw.moveWordLeft(e,t,n,0),qw.moveWordLeft(e,t,n,2),qw._moveWordPartLeft(t,n)]);return i.sort(bn.compare),i[2]},t.moveWordPartRight=function(e,t,n){var i=Zw([qw.moveWordRight(e,t,n,0),qw.moveWordRight(e,t,n,2),qw._moveWordPartRight(t,n)]);return i.sort(bn.compare),i[0]},t}(qw);function Zw(e){return e.filter((function(e){return Boolean(e)}))}var Yw,Xw,$w=function(){function e(){}return e.addCursorDown=function(e,t,n){for(var i=[],o=0,r=0,s=t.length;r<s;r++){var a=t[r];i[o++]=new zv(a.modelState,a.viewState),i[o++]=n?zv.fromModelState(jw.translateDown(e.config,e.model,a.modelState)):zv.fromViewState(jw.translateDown(e.config,e.viewModel,a.viewState))}return i},e.addCursorUp=function(e,t,n){for(var i=[],o=0,r=0,s=t.length;r<s;r++){var a=t[r];i[o++]=new zv(a.modelState,a.viewState),i[o++]=n?zv.fromModelState(jw.translateUp(e.config,e.model,a.modelState)):zv.fromViewState(jw.translateUp(e.config,e.viewModel,a.viewState))}return i},e.moveToBeginningOfLine=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o];i[o]=this._moveToLineStart(e,s,n)}return i},e._moveToLineStart=function(e,t,n){var i=t.viewState.position.column,o=i===t.modelState.position.column,r=t.viewState.position.lineNumber,s=e.viewModel.getLineFirstNonWhitespaceColumn(r);return o||i===s?this._moveToLineStartByModel(e,t,n):this._moveToLineStartByView(e,t,n)},e._moveToLineStartByView=function(e,t,n){return zv.fromViewState(jw.moveToBeginningOfLine(e.config,e.viewModel,t.viewState,n))},e._moveToLineStartByModel=function(e,t,n){return zv.fromModelState(jw.moveToBeginningOfLine(e.config,e.model,t.modelState,n))},e.moveToEndOfLine=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o];i[o]=this._moveToLineEnd(e,s,n)}return i},e._moveToLineEnd=function(e,t,n){var i=t.viewState.position,o=e.viewModel.getLineMaxColumn(i.lineNumber),r=i.column===o,s=t.modelState.position,a=e.model.getLineMaxColumn(s.lineNumber),u=o-i.column==a-s.column;return r||u?this._moveToLineEndByModel(e,t,n):this._moveToLineEndByView(e,t,n)},e._moveToLineEndByView=function(e,t,n){return zv.fromViewState(jw.moveToEndOfLine(e.config,e.viewModel,t.viewState,n))},e._moveToLineEndByModel=function(e,t,n){return zv.fromModelState(jw.moveToEndOfLine(e.config,e.model,t.modelState,n))},e.expandLineSelection=function(e,t){for(var n=[],i=0,o=t.length;i<o;i++){var r=t[i],s=r.modelState.selection.startLineNumber,a=e.model.getLineCount(),u=r.modelState.selection.endLineNumber,l=void 0;u===a?l=e.model.getLineMaxColumn(a):(u++,l=1),n[i]=zv.fromModelState(new Wv(new wn(s,1,s,1),0,new bn(u,l),0))}return n},e.moveToBeginningOfBuffer=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o];i[o]=zv.fromModelState(jw.moveToBeginningOfBuffer(e.config,e.model,s.modelState,n))}return i},e.moveToEndOfBuffer=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o];i[o]=zv.fromModelState(jw.moveToEndOfBuffer(e.config,e.model,s.modelState,n))}return i},e.selectAll=function(e,t){var n=e.model.getLineCount(),i=e.model.getLineMaxColumn(n);return zv.fromModelState(new Wv(new wn(1,1,1,1),0,new bn(n,i),0))},e.line=function(e,t,n,i,o){var r=e.model.validatePosition(i),s=o?e.validateViewPosition(new bn(o.lineNumber,o.column),r):e.convertModelPositionToViewPosition(r);if(!n||!t.modelState.hasSelection()){var a=e.model.getLineCount(),u=r.lineNumber+1,l=1;return u>a&&(u=a,l=e.model.getLineMaxColumn(u)),zv.fromModelState(new Wv(new wn(r.lineNumber,1,u,l),0,new bn(u,l),0))}var c=t.modelState.selectionStart.getStartPosition().lineNumber;if(r.lineNumber<c)return zv.fromViewState(t.viewState.move(t.modelState.hasSelection(),s.lineNumber,1,0));if(r.lineNumber>c){a=e.viewModel.getLineCount();var d=s.lineNumber+1,h=1;return d>a&&(d=a,h=e.viewModel.getLineMaxColumn(d)),zv.fromViewState(t.viewState.move(t.modelState.hasSelection(),d,h,0))}var p=t.modelState.selectionStart.getEndPosition();return zv.fromModelState(t.modelState.move(t.modelState.hasSelection(),p.lineNumber,p.column,0))},e.word=function(e,t,n,i){var o=e.model.validatePosition(i);return zv.fromModelState(qw.word(e.config,e.model,t.modelState,n,o))},e.cancelSelection=function(e,t){if(!t.modelState.hasSelection())return new zv(t.modelState,t.viewState);var n=t.viewState.position.lineNumber,i=t.viewState.position.column;return zv.fromViewState(new Wv(new wn(n,i,n,i),0,new bn(n,i),0))},e.moveTo=function(e,t,n,i,o){var r=e.model.validatePosition(i),s=o?e.validateViewPosition(new bn(o.lineNumber,o.column),r):e.convertModelPositionToViewPosition(r);return zv.fromViewState(t.viewState.move(n,s.lineNumber,s.column,0))},e.move=function(e,t,n){var i=n.select,o=n.value;switch(n.direction){case 0:return 4===n.unit?this._moveHalfLineLeft(e,t,i):this._moveLeft(e,t,i,o);case 1:return 4===n.unit?this._moveHalfLineRight(e,t,i):this._moveRight(e,t,i,o);case 2:return 2===n.unit?this._moveUpByViewLines(e,t,i,o):this._moveUpByModelLines(e,t,i,o);case 3:return 2===n.unit?this._moveDownByViewLines(e,t,i,o):this._moveDownByModelLines(e,t,i,o);case 4:return this._moveToViewMinColumn(e,t,i);case 5:return this._moveToViewFirstNonWhitespaceColumn(e,t,i);case 6:return this._moveToViewCenterColumn(e,t,i);case 7:return this._moveToViewMaxColumn(e,t,i);case 8:return this._moveToViewLastNonWhitespaceColumn(e,t,i);case 9:var r=t[0],s=e.getCompletelyVisibleModelRange(),a=this._firstLineNumberInRange(e.model,s,o),u=e.model.getLineFirstNonWhitespaceColumn(a);return[this._moveToModelPosition(e,r,i,a,u)];case 11:r=t[0],s=e.getCompletelyVisibleModelRange(),a=this._lastLineNumberInRange(e.model,s,o),u=e.model.getLineFirstNonWhitespaceColumn(a);return[this._moveToModelPosition(e,r,i,a,u)];case 10:r=t[0],s=e.getCompletelyVisibleModelRange(),a=Math.round((s.startLineNumber+s.endLineNumber)/2),u=e.model.getLineFirstNonWhitespaceColumn(a);return[this._moveToModelPosition(e,r,i,a,u)];case 12:for(var l=e.getCompletelyVisibleViewRange(),c=[],d=0,h=t.length;d<h;d++){r=t[d];c[d]=this.findPositionInViewportIfOutside(e,r,l,i)}return c}return null},e.findPositionInViewportIfOutside=function(e,t,n,i){var o=t.viewState.position.lineNumber;if(n.startLineNumber<=o&&o<=n.endLineNumber-1)return new zv(t.modelState,t.viewState);o>n.endLineNumber-1&&(o=n.endLineNumber-1),o<n.startLineNumber&&(o=n.startLineNumber);var r=e.viewModel.getLineFirstNonWhitespaceColumn(o);return this._moveToViewPosition(e,t,i,o,r)},e._firstLineNumberInRange=function(e,t,n){var i=t.startLineNumber;return t.startColumn!==e.getLineMinColumn(i)&&i++,Math.min(t.endLineNumber,i+n-1)},e._lastLineNumberInRange=function(e,t,n){var i=t.startLineNumber;return t.startColumn!==e.getLineMinColumn(i)&&i++,Math.max(i,t.endLineNumber-n+1)},e._moveLeft=function(e,t,n,i){for(var o=[],r=0,s=t.length;r<s;r++){var a=t[r],u=jw.moveLeft(e.config,e.viewModel,a.viewState,n,i);if(1===i&&u.position.lineNumber!==a.viewState.position.lineNumber)e.viewModel.coordinatesConverter.convertViewPositionToModelPosition(u.position).lineNumber===a.modelState.position.lineNumber&&(u=jw.moveLeft(e.config,e.viewModel,u,n,1));o[r]=zv.fromViewState(u)}return o},e._moveHalfLineLeft=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=s.viewState.position.lineNumber,u=Math.round(e.viewModel.getLineContent(a).length/2);i[o]=zv.fromViewState(jw.moveLeft(e.config,e.viewModel,s.viewState,n,u))}return i},e._moveRight=function(e,t,n,i){for(var o=[],r=0,s=t.length;r<s;r++){var a=t[r],u=jw.moveRight(e.config,e.viewModel,a.viewState,n,i);if(1===i&&u.position.lineNumber!==a.viewState.position.lineNumber)e.viewModel.coordinatesConverter.convertViewPositionToModelPosition(u.position).lineNumber===a.modelState.position.lineNumber&&(u=jw.moveRight(e.config,e.viewModel,u,n,1));o[r]=zv.fromViewState(u)}return o},e._moveHalfLineRight=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=s.viewState.position.lineNumber,u=Math.round(e.viewModel.getLineContent(a).length/2);i[o]=zv.fromViewState(jw.moveRight(e.config,e.viewModel,s.viewState,n,u))}return i},e._moveDownByViewLines=function(e,t,n,i){for(var o=[],r=0,s=t.length;r<s;r++){var a=t[r];o[r]=zv.fromViewState(jw.moveDown(e.config,e.viewModel,a.viewState,n,i))}return o},e._moveDownByModelLines=function(e,t,n,i){for(var o=[],r=0,s=t.length;r<s;r++){var a=t[r];o[r]=zv.fromModelState(jw.moveDown(e.config,e.model,a.modelState,n,i))}return o},e._moveUpByViewLines=function(e,t,n,i){for(var o=[],r=0,s=t.length;r<s;r++){var a=t[r];o[r]=zv.fromViewState(jw.moveUp(e.config,e.viewModel,a.viewState,n,i))}return o},e._moveUpByModelLines=function(e,t,n,i){for(var o=[],r=0,s=t.length;r<s;r++){var a=t[r];o[r]=zv.fromModelState(jw.moveUp(e.config,e.model,a.modelState,n,i))}return o},e._moveToViewPosition=function(e,t,n,i,o){return zv.fromViewState(t.viewState.move(n,i,o,0))},e._moveToModelPosition=function(e,t,n,i,o){return zv.fromModelState(t.modelState.move(n,i,o,0))},e._moveToViewMinColumn=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=s.viewState.position.lineNumber,u=e.viewModel.getLineMinColumn(a);i[o]=this._moveToViewPosition(e,s,n,a,u)}return i},e._moveToViewFirstNonWhitespaceColumn=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=s.viewState.position.lineNumber,u=e.viewModel.getLineFirstNonWhitespaceColumn(a);i[o]=this._moveToViewPosition(e,s,n,a,u)}return i},e._moveToViewCenterColumn=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=s.viewState.position.lineNumber,u=Math.round((e.viewModel.getLineMaxColumn(a)+e.viewModel.getLineMinColumn(a))/2);i[o]=this._moveToViewPosition(e,s,n,a,u)}return i},e._moveToViewMaxColumn=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=s.viewState.position.lineNumber,u=e.viewModel.getLineMaxColumn(a);i[o]=this._moveToViewPosition(e,s,n,a,u)}return i},e._moveToViewLastNonWhitespaceColumn=function(e,t,n){for(var i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=s.viewState.position.lineNumber,u=e.viewModel.getLineLastNonWhitespaceColumn(a);i[o]=this._moveToViewPosition(e,s,n,a,u)}return i},e}();(Xw=Yw||(Yw={})).description={description:"Move cursor to a logical position in the view",args:[{name:"Cursor move argument object",description:"Property-value pairs that can be passed through this argument:\n\t\t\t\t\t* 'to': A mandatory logical position value providing where to move the cursor.\n\t\t\t\t\t\t```\n\t\t\t\t\t\t'left', 'right', 'up', 'down'\n\t\t\t\t\t\t'wrappedLineStart', 'wrappedLineEnd', 'wrappedLineColumnCenter'\n\t\t\t\t\t\t'wrappedLineFirstNonWhitespaceCharacter', 'wrappedLineLastNonWhitespaceCharacter'\n\t\t\t\t\t\t'viewPortTop', 'viewPortCenter', 'viewPortBottom', 'viewPortIfOutside'\n\t\t\t\t\t\t```\n\t\t\t\t\t* 'by': Unit to move. Default is computed based on 'to' value.\n\t\t\t\t\t\t```\n\t\t\t\t\t\t'line', 'wrappedLine', 'character', 'halfLine'\n\t\t\t\t\t\t```\n\t\t\t\t\t* 'value': Number of units to move. Default is '1'.\n\t\t\t\t\t* 'select': If 'true' makes the selection. Default is 'false'.\n\t\t\t\t",constraint:function(e){if(!Fs(e))return!1;var t=e;return!(!As(t.to)||!Bs(t.select)&&!Vs(t.select)||!Bs(t.by)&&!As(t.by)||!Bs(t.value)&&!Ws(t.value))},schema:{type:"object",required:["to"],properties:{to:{type:"string",enum:["left","right","up","down","wrappedLineStart","wrappedLineEnd","wrappedLineColumnCenter","wrappedLineFirstNonWhitespaceCharacter","wrappedLineLastNonWhitespaceCharacter","viewPortTop","viewPortCenter","viewPortBottom","viewPortIfOutside"]},by:{type:"string",enum:["line","wrappedLine","character","halfLine"]},value:{type:"number",default:1},select:{type:"boolean",default:!1}}}}]},Xw.RawDirection={Left:"left",Right:"right",Up:"up",Down:"down",WrappedLineStart:"wrappedLineStart",WrappedLineFirstNonWhitespaceCharacter:"wrappedLineFirstNonWhitespaceCharacter",WrappedLineColumnCenter:"wrappedLineColumnCenter",WrappedLineEnd:"wrappedLineEnd",WrappedLineLastNonWhitespaceCharacter:"wrappedLineLastNonWhitespaceCharacter",ViewPortTop:"viewPortTop",ViewPortCenter:"viewPortCenter",ViewPortBottom:"viewPortBottom",ViewPortIfOutside:"viewPortIfOutside"},Xw.RawUnit={Line:"line",WrappedLine:"wrappedLine",Character:"character",HalfLine:"halfLine"},Xw.parse=function(e){if(!e.to)return null;var t;switch(e.to){case Xw.RawDirection.Left:t=0;break;case Xw.RawDirection.Right:t=1;break;case Xw.RawDirection.Up:t=2;break;case Xw.RawDirection.Down:t=3;break;case Xw.RawDirection.WrappedLineStart:t=4;break;case Xw.RawDirection.WrappedLineFirstNonWhitespaceCharacter:t=5;break;case Xw.RawDirection.WrappedLineColumnCenter:t=6;break;case Xw.RawDirection.WrappedLineEnd:t=7;break;case Xw.RawDirection.WrappedLineLastNonWhitespaceCharacter:t=8;break;case Xw.RawDirection.ViewPortTop:t=9;break;case Xw.RawDirection.ViewPortBottom:t=11;break;case Xw.RawDirection.ViewPortCenter:t=10;break;case Xw.RawDirection.ViewPortIfOutside:t=12;break;default:return null}var n=0;switch(e.by){case Xw.RawUnit.Line:n=1;break;case Xw.RawUnit.WrappedLine:n=2;break;case Xw.RawUnit.Character:n=3;break;case Xw.RawUnit.HalfLine:n=4}return{direction:t,unit:n,select:!!e.select,value:e.value||1}};var Qw=Object.create(null);function Jw(e,t){Qw[e]||(Qw[e]=["",e]);for(var n=Qw[e],i=n.length;i<=t;i++)n[i]=n[i-1]+e;return n[t]}var eC,tC,nC=function(){function e(e,t){this._opts=t,this._selection=e,this._selectionId=null,this._useLastEditRangeForCursorEndPosition=!1,this._selectionStartColumnStaysPut=!1}return e.unshiftIndent=function(e,t,n,i,o){var r=Uv.visibleColumnFromColumn(e,t,n);if(o){var s=Jw(" ",i);return Jw(s,Uv.prevIndentTabStop(r,i)/i)}return Jw(s="\t",Uv.prevRenderTabStop(r,n)/n)},e.shiftIndent=function(e,t,n,i,o){var r=Uv.visibleColumnFromColumn(e,t,n);if(o){var s=Jw(" ",i);return Jw(s,Uv.nextIndentTabStop(r,i)/i)}return Jw(s="\t",Uv.nextRenderTabStop(r,n)/n)},e.prototype._addEditOperation=function(e,t,n){this._useLastEditRangeForCursorEndPosition?e.addTrackedEditOperation(t,n):e.addEditOperation(t,n)},e.prototype.getEditOperations=function(t,n){var i=this._selection.startLineNumber,o=this._selection.endLineNumber;1===this._selection.endColumn&&i!==o&&(o-=1);var r=this._opts,s=r.tabSize,a=r.indentSize,u=r.insertSpaces,l=i===o;if(this._selection.isEmpty()&&/^\s*$/.test(t.getLineContent(i))&&(this._useLastEditRangeForCursorEndPosition=!0),this._opts.useTabStops)for(var c=0,d=0,h=i;h<=o;h++,c=d){d=0;var p=wr(y=t.getLineContent(h));if((!this._opts.isUnshift||0!==y.length&&0!==p)&&(l||this._opts.isUnshift||0!==y.length)){if(-1===p&&(p=y.length),h>1)if(Uv.visibleColumnFromColumn(y,p+1,s)%a!=0&&t.isCheapToTokenize(h-1)){var f=Ol.getEnterAction(this._opts.autoIndent,t,new wn(h-1,t.getLineMaxColumn(h-1),h-1,t.getLineMaxColumn(h-1)));if(f){if(d=c,f.appendText)for(var g=0,m=f.appendText.length;g<m&&d<a&&32===f.appendText.charCodeAt(g);g++)d++;f.removeText&&(d=Math.max(0,d-f.removeText));for(g=0;g<d&&(0!==p&&32===y.charCodeAt(p-1));g++)p--}}if(!this._opts.isUnshift||0!==p){var v=void 0;v=this._opts.isUnshift?e.unshiftIndent(y,p+1,s,a,u):e.shiftIndent(y,p+1,s,a,u),this._addEditOperation(n,new wn(h,1,h,p+1),v),h!==i||this._selection.isEmpty()||(this._selectionStartColumnStaysPut=this._selection.startColumn<=p+1)}}}else{var _=u?Jw(" ",a):"\t";for(h=i;h<=o;h++){var y;p=wr(y=t.getLineContent(h));if((!this._opts.isUnshift||0!==y.length&&0!==p)&&((l||this._opts.isUnshift||0!==y.length)&&(-1===p&&(p=y.length),!this._opts.isUnshift||0!==p)))if(this._opts.isUnshift){p=Math.min(p,a);for(var b=0;b<p;b++){if(9===y.charCodeAt(b)){p=b+1;break}}this._addEditOperation(n,new wn(h,1,h,p+1),"")}else this._addEditOperation(n,new wn(h,1,h,1),_),h!==i||this._selection.isEmpty()||(this._selectionStartColumnStaysPut=1===this._selection.startColumn)}}this._selectionId=n.trackSelection(this._selection)},e.prototype.computeCursorState=function(e,t){if(this._useLastEditRangeForCursorEndPosition){var n=t.getInverseEditOperations()[0];return new Sn(n.range.endLineNumber,n.range.endColumn,n.range.endLineNumber,n.range.endColumn)}var i=t.getTrackedSelection(this._selectionId);if(this._selectionStartColumnStaysPut){var o=this._selection.startColumn;return i.startColumn<=o?i:0===i.getDirection()?new Sn(i.startLineNumber,o,i.endLineNumber,i.endColumn):new Sn(i.endLineNumber,i.endColumn,i.startLineNumber,o)}return i},e}(),iC=function(){function e(e,t,n){this._range=e,this._charBeforeSelection=t,this._charAfterSelection=n}return e.prototype.getEditOperations=function(e,t){t.addTrackedEditOperation(new wn(this._range.startLineNumber,this._range.startColumn,this._range.startLineNumber,this._range.startColumn),this._charBeforeSelection),t.addTrackedEditOperation(new wn(this._range.endLineNumber,this._range.endColumn,this._range.endLineNumber,this._range.endColumn),this._charAfterSelection)},e.prototype.computeCursorState=function(e,t){var n=t.getInverseEditOperations(),i=n[0].range,o=n[1].range;return new Sn(i.endLineNumber,i.endColumn,o.endLineNumber,o.endColumn-this._charAfterSelection.length)},e}(),oC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),rC=function(){function e(){}return e.indent=function(e,t,n){if(null===t||null===n)return[];for(var i=[],o=0,r=n.length;o<r;o++)i[o]=new nC(n[o],{isUnshift:!1,tabSize:e.tabSize,indentSize:e.indentSize,insertSpaces:e.insertSpaces,useTabStops:e.useTabStops,autoIndent:e.autoIndent});return i},e.outdent=function(e,t,n){for(var i=[],o=0,r=n.length;o<r;o++)i[o]=new nC(n[o],{isUnshift:!0,tabSize:e.tabSize,indentSize:e.indentSize,insertSpaces:e.insertSpaces,useTabStops:e.useTabStops,autoIndent:e.autoIndent});return i},e.shiftIndent=function(e,t,n){return n=n||1,nC.shiftIndent(t,t.length+n,e.tabSize,e.indentSize,e.insertSpaces)},e.unshiftIndent=function(e,t,n){return n=n||1,nC.unshiftIndent(t,t.length+n,e.tabSize,e.indentSize,e.insertSpaces)},e._distributedPaste=function(e,t,n,i){for(var o=[],r=0,s=n.length;r<s;r++)o[r]=new Fw(n[r],i[r]);return new jv(0,o,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})},e._simplePaste=function(e,t,n,i,o){for(var r=[],s=0,a=n.length;s<a;s++){var u=n[s],l=u.getPosition();if(o&&!u.isEmpty()&&(o=!1),o&&i.indexOf("\n")!==i.length-1&&(o=!1),o){var c=new wn(l.lineNumber,1,l.lineNumber,1);r[s]=new Hw(c,i,u,!0)}else r[s]=new Fw(u,i)}return new jv(0,r,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})},e._distributePasteToCursors=function(e,t,n,i,o){if(i)return null;if(1===t.length)return null;if(o&&o.length===t.length)return o;if("spread"===e.multiCursorPaste){10===n.charCodeAt(n.length-1)&&(n=n.substr(0,n.length-1)),13===n.charCodeAt(n.length-1)&&(n=n.substr(0,n.length-1));var r=n.split(/\r\n|\r|\n/);if(r.length===t.length)return r}return null},e.paste=function(e,t,n,i,o,r){var s=this._distributePasteToCursors(e,n,i,o,r);return s?(n=n.sort(wn.compareRangesUsingStarts),this._distributedPaste(e,t,n,s)):this._simplePaste(e,t,n,i,o)},e._goodIndentForLine=function(t,n,i){var o=null,r="",s=Ol.getInheritIndentForLine(t.autoIndent,n,i,!1);if(s)o=s.action,r=s.indentation;else if(i>1){var a=void 0;for(a=i-1;a>=1;a--){if(Sr(n.getLineContent(a))>=0)break}if(a<1)return null;var u=n.getLineMaxColumn(a),l=Ol.getEnterAction(t.autoIndent,n,new wn(a,u,a,u));l&&(r=l.indentation+l.appendText)}return o&&(o===al.Indent&&(r=e.shiftIndent(t,r)),o===al.Outdent&&(r=e.unshiftIndent(t,r)),r=t.normalizeIndentation(r)),r||null},e._replaceJumpToNextIndent=function(e,t,n,i){var o="",r=n.getStartPosition();if(e.insertSpaces)for(var s=Uv.visibleColumnFromColumn2(e,t,r),a=e.indentSize,u=a-s%a,l=0;l<u;l++)o+=" ";else o="\t";return new Fw(n,o,i)},e.tab=function(e,t,n){for(var i=[],o=0,r=n.length;o<r;o++){var s=n[o];if(s.isEmpty()){var a=t.getLineContent(s.startLineNumber);if(/^\s*$/.test(a)&&t.isCheapToTokenize(s.startLineNumber)){var u=this._goodIndentForLine(e,t,s.startLineNumber);u=u||"\t";var l=e.normalizeIndentation(u);if(!vr(a,l)){i[o]=new Fw(new wn(s.startLineNumber,1,s.startLineNumber,a.length+1),l,!0);continue}}i[o]=this._replaceJumpToNextIndent(e,t,s,!0)}else{if(s.startLineNumber===s.endLineNumber){var c=t.getLineMaxColumn(s.startLineNumber);if(1!==s.startColumn||s.endColumn!==c){i[o]=this._replaceJumpToNextIndent(e,t,s,!1);continue}}i[o]=new nC(s,{isUnshift:!1,tabSize:e.tabSize,indentSize:e.indentSize,insertSpaces:e.insertSpaces,useTabStops:e.useTabStops,autoIndent:e.autoIndent})}}return i},e.replacePreviousChar=function(e,t,n,i,o,r){for(var s=[],a=0,u=i.length;a<u;a++){var l=i[a];if(l.isEmpty()){var c=l.getPosition(),d=Math.max(1,c.column-r),h=new wn(c.lineNumber,d,c.lineNumber,c.column);s[a]=new Fw(h,o)}else s[a]=null}return new jv(1,s,{shouldPushStackElementBefore:1!==e,shouldPushStackElementAfter:!1})},e._typeCommand=function(e,t,n){return n?new Vw(e,t,!0):new Fw(e,t,!0)},e._enter=function(t,n,i,o){if(0===t.autoIndent)return e._typeCommand(o,"\n",i);if(!n.isCheapToTokenize(o.getStartPosition().lineNumber)||1===t.autoIndent){var r=Cr(n.getLineContent(o.startLineNumber)).substring(0,o.startColumn-1);return e._typeCommand(o,"\n"+t.normalizeIndentation(r),i)}var s=Ol.getEnterAction(t.autoIndent,n,o);if(s){if(s.indentAction===al.None)return e._typeCommand(o,"\n"+t.normalizeIndentation(s.indentation+s.appendText),i);if(s.indentAction===al.Indent)return e._typeCommand(o,"\n"+t.normalizeIndentation(s.indentation+s.appendText),i);if(s.indentAction===al.IndentOutdent){var a=t.normalizeIndentation(s.indentation),u=t.normalizeIndentation(s.indentation+s.appendText),l="\n"+u+"\n"+a;return i?new Vw(o,l,!0):new Bw(o,l,-1,u.length-a.length,!0)}if(s.indentAction===al.Outdent){var c=e.unshiftIndent(t,s.indentation);return e._typeCommand(o,"\n"+t.normalizeIndentation(c+s.appendText),i)}}var d=n.getLineContent(o.startLineNumber),h=Cr(d).substring(0,o.startColumn-1);if(t.autoIndent>=4){var p=Ol.getIndentForEnter(t.autoIndent,n,o,{unshiftIndent:function(n){return e.unshiftIndent(t,n)},shiftIndent:function(n){return e.shiftIndent(t,n)},normalizeIndentation:function(e){return t.normalizeIndentation(e)}});if(p){var f=Uv.visibleColumnFromColumn2(t,n,o.getEndPosition()),g=o.endColumn,m="\n";h!==t.normalizeIndentation(p.beforeEnter)&&(m=t.normalizeIndentation(p.beforeEnter)+d.substring(h.length,o.startColumn-1)+"\n",o=new wn(o.startLineNumber,1,o.endLineNumber,o.endColumn));var v=wr(n.getLineContent(o.endLineNumber));if(o=v>=0?o.setEndPosition(o.endLineNumber,Math.max(o.endColumn,v+1)):o.setEndPosition(o.endLineNumber,n.getLineMaxColumn(o.endLineNumber)),i)return new Vw(o,m+t.normalizeIndentation(p.afterEnter),!0);var _=0;return g<=v+1&&(t.insertSpaces||(f=Math.ceil(f/t.indentSize)),_=Math.min(f+1-t.normalizeIndentation(p.afterEnter).length-1,0)),new Bw(o,m+t.normalizeIndentation(p.afterEnter),0,_,!0)}}return e._typeCommand(o,"\n"+t.normalizeIndentation(h),i)},e._isAutoIndentType=function(e,t,n){if(e.autoIndent<4)return!1;for(var i=0,o=n.length;i<o;i++)if(!t.isCheapToTokenize(n[i].getEndPosition().lineNumber))return!1;return!0},e._runAutoIndentType=function(t,n,i,o){var r=Ol.getIndentationAtPosition(n,i.startLineNumber,i.startColumn),s=Ol.getIndentActionForType(t.autoIndent,n,i,o,{shiftIndent:function(n){return e.shiftIndent(t,n)},unshiftIndent:function(n){return e.unshiftIndent(t,n)}});if(null===s)return null;if(s!==t.normalizeIndentation(r)){var a=n.getLineFirstNonWhitespaceColumn(i.startLineNumber);return 0===a?e._typeCommand(new wn(i.startLineNumber,0,i.endLineNumber,i.endColumn),t.normalizeIndentation(s)+o,!1):e._typeCommand(new wn(i.startLineNumber,0,i.endLineNumber,i.endColumn),t.normalizeIndentation(s)+n.getLineContent(i.startLineNumber).substring(a-1,i.startColumn-1)+o,!1)}return null},e._isAutoClosingOvertype=function(e,t,n,i,o){if("never"===e.autoClosingOvertype)return!1;if(!e.autoClosingPairsClose2.has(o))return!1;for(var r=0,s=n.length;r<s;r++){var a=n[r];if(!a.isEmpty())return!1;var u=a.getPosition(),l=t.getLineContent(u.lineNumber);if(l.charAt(u.column-1)!==o)return!1;var c=Kv(o);if(92===(u.column>2?l.charCodeAt(u.column-2):0)&&c)return!1;if("auto"===e.autoClosingOvertype){for(var d=!1,h=0,p=i.length;h<p;h++){var f=i[h];if(u.lineNumber===f.startLineNumber&&u.column===f.startColumn){d=!0;break}}if(!d)return!1}}return!0},e._runAutoClosingOvertype=function(e,t,n,i,o){for(var r=[],s=0,a=i.length;s<a;s++){var u=i[s].getPosition(),l=new wn(u.lineNumber,u.column,u.lineNumber,u.column+1);r[s]=new Fw(l,o)}return new jv(1,r,{shouldPushStackElementBefore:1!==e,shouldPushStackElementAfter:!1})},e._autoClosingPairIsSymmetric=function(e){var t=e.open,n=e.close;return t.indexOf(n)>=0||n.indexOf(t)>=0},e._isBeforeClosingBrace=function(t,n,i){var o=t.autoClosingPairsClose2.get(i);if(!o)return!1;for(var r=e._autoClosingPairIsSymmetric(n),s=0,a=o;s<a.length;s++){var u=a[s],l=e._autoClosingPairIsSymmetric(u);if(r||!l)return!0}return!1},e._findAutoClosingPairOpen=function(e,t,n,i){var o=e.autoClosingPairsOpen2.get(i);if(!o)return null;for(var r=null,s=0,a=o;s<a.length;s++){var u=a[s];if(null===r||u.open.length>r.open.length){for(var l=!0,c=0,d=n;c<d.length;c++){var h=d[c];if(t.getValueInRange(new wn(h.lineNumber,h.column-u.open.length+1,h.lineNumber,h.column))+i!==u.open){l=!1;break}}l&&(r=u)}}return r},e._isAutoClosingOpenCharType=function(t,n,i,o,r){var s=Kv(o),a=s?t.autoClosingQuotes:t.autoClosingBrackets;if("never"===a)return null;var u=this._findAutoClosingPairOpen(t,n,i.map((function(e){return e.getPosition()})),o);if(!u)return null;for(var l=s?t.shouldAutoCloseBefore.quote:t.shouldAutoCloseBefore.bracket,c=0,d=i.length;c<d;c++){var h=i[c];if(!h.isEmpty())return null;var p=h.getPosition(),f=n.getLineContent(p.lineNumber);if(f.length>p.column-1){var g=f.charAt(p.column-1);if(!e._isBeforeClosingBrace(t,u,g)&&!l(g))return null}if(!n.isCheapToTokenize(p.lineNumber))return null;if(1===u.open.length&&s&&"always"!==a){var m=Dm(t.wordSeparators);if(r&&p.column>1&&0===m.get(f.charCodeAt(p.column-2)))return null;if(!r&&p.column>2&&0===m.get(f.charCodeAt(p.column-3)))return null}n.forceTokenization(p.lineNumber);var v=n.getLineTokens(p.lineNumber),_=!1;try{_=Ol.shouldAutoClosePair(u,v,r?p.column:p.column-1)}catch(e){De(e)}if(!_)return null}return u},e._runAutoClosingOpenCharType=function(e,t,n,i,o,r,s){for(var a=[],u=0,l=i.length;u<l;u++){var c=i[u];a[u]=new sC(c,o,r,s.close)}return new jv(1,a,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})},e._shouldSurroundChar=function(e,t){return Kv(t)?"quotes"===e.autoSurround||"languageDefined"===e.autoSurround:"brackets"===e.autoSurround||"languageDefined"===e.autoSurround},e._isSurroundSelectionType=function(t,n,i,o){if(!e._shouldSurroundChar(t,o)||!t.surroundingPairs.hasOwnProperty(o))return!1;for(var r=Kv(o),s=0,a=i.length;s<a;s++){var u=i[s];if(u.isEmpty())return!1;for(var l=!0,c=u.startLineNumber;c<=u.endLineNumber;c++){var d=n.getLineContent(c),h=c===u.startLineNumber?u.startColumn-1:0,p=c===u.endLineNumber?u.endColumn-1:d.length,f=d.substring(h,p);if(/[^ \t]/.test(f)){l=!1;break}}if(l)return!1;if(r&&u.startLineNumber===u.endLineNumber&&u.startColumn+1===u.endColumn)if(Kv(n.getValueInRange(u)))return!1}return!0},e._runSurroundSelectionType=function(e,t,n,i,o){for(var r=[],s=0,a=i.length;s<a;s++){var u=i[s],l=t.surroundingPairs[o];r[s]=new iC(u,o,l)}return new jv(0,r,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})},e._isTypeInterceptorElectricChar=function(e,t,n){return!(1!==n.length||!t.isCheapToTokenize(n[0].getEndPosition().lineNumber))},e._typeInterceptorElectricChar=function(e,t,n,i,o){if(!t.electricChars.hasOwnProperty(o)||!i.isEmpty())return null;var r=i.getPosition();n.forceTokenization(r.lineNumber);var s,a=n.getLineTokens(r.lineNumber);try{s=Ol.onElectricCharacter(o,a,r.column)}catch(e){return De(e),null}if(!s)return null;if(s.matchOpenBracket){var u=(a.getLineContent()+o).lastIndexOf(s.matchOpenBracket)+1,l=n.findMatchingBracketUp(s.matchOpenBracket,{lineNumber:r.lineNumber,column:u});if(l){if(l.startLineNumber===r.lineNumber)return null;var c=Cr(n.getLineContent(l.startLineNumber)),d=t.normalizeIndentation(c),h=n.getLineContent(r.lineNumber),p=n.getLineFirstNonWhitespaceColumn(r.lineNumber)||r.column,f=d+h.substring(p-1,r.column-1)+o,g=new wn(r.lineNumber,1,r.lineNumber,r.column),m=new Fw(g,f);return new jv(1,[m],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!0})}}return null},e.compositionEndWithInterceptors=function(e,t,n,i,o,r){if(!i||Sn.selectionsArrEqual(i,o))return null;for(var s=null,a=0,u=o;a<u.length;a++){var l=u[a];if(!l.isEmpty())return null;var c=l.getPosition(),d=n.getValueInRange(new wn(c.lineNumber,c.column-1,c.lineNumber,c.column));if(null===s)s=d;else if(s!==d)return null}if(!s)return null;if(this._isAutoClosingOvertype(t,n,o,r,s)){var h=o.map((function(e){return new Fw(new wn(e.positionLineNumber,e.positionColumn,e.positionLineNumber,e.positionColumn+1),"",!1)}));return new jv(1,h,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}var p=this._isAutoClosingOpenCharType(t,n,o,s,!1);return p?this._runAutoClosingOpenCharType(e,t,n,o,s,!1,p):null},e.typeWithInterceptors=function(t,n,i,o,r,s){if("\n"===s){for(var a=[],u=0,l=o.length;u<l;u++)a[u]=e._enter(n,i,!1,o[u]);return new jv(1,a,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}if(this._isAutoIndentType(n,i,o)){var c=[],d=!1;for(u=0,l=o.length;u<l;u++)if(c[u]=this._runAutoIndentType(n,i,o[u],s),!c[u]){d=!0;break}if(!d)return new jv(1,c,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}if(this._isAutoClosingOvertype(n,i,o,r,s))return this._runAutoClosingOvertype(t,n,i,o,s);var h=this._isAutoClosingOpenCharType(n,i,o,s,!0);if(h)return this._runAutoClosingOpenCharType(t,n,i,o,s,!0,h);if(this._isSurroundSelectionType(n,i,o,s))return this._runSurroundSelectionType(t,n,i,o,s);if(this._isTypeInterceptorElectricChar(n,i,o)){var p=this._typeInterceptorElectricChar(t,n,i,o[0],s);if(p)return p}var f=[];for(u=0,l=o.length;u<l;u++)f[u]=new Fw(o[u],s);var g=1!==t;return" "===s&&(g=!0),new jv(1,f,{shouldPushStackElementBefore:g,shouldPushStackElementAfter:!1})},e.typeWithoutInterceptors=function(e,t,n,i,o){for(var r=[],s=0,a=i.length;s<a;s++)r[s]=new Fw(i[s],o);return new jv(1,r,{shouldPushStackElementBefore:1!==e,shouldPushStackElementAfter:!1})},e.lineInsertBefore=function(e,t,n){if(null===t||null===n)return[];for(var i=[],o=0,r=n.length;o<r;o++){var s=n[o].positionLineNumber;if(1===s)i[o]=new Vw(new wn(1,1,1,1),"\n");else{s--;var a=t.getLineMaxColumn(s);i[o]=this._enter(e,t,!1,new wn(s,a,s,a))}}return i},e.lineInsertAfter=function(e,t,n){if(null===t||null===n)return[];for(var i=[],o=0,r=n.length;o<r;o++){var s=n[o].positionLineNumber,a=t.getLineMaxColumn(s);i[o]=this._enter(e,t,!1,new wn(s,a,s,a))}return i},e.lineBreakInsert=function(e,t,n){for(var i=[],o=0,r=n.length;o<r;o++)i[o]=this._enter(e,t,!0,n[o]);return i},e}(),sC=function(e){function t(t,n,i,o){var r=e.call(this,t,(i?n:"")+o,0,-o.length)||this;return r._openCharacter=n,r._closeCharacter=o,r.closeCharacterRange=null,r.enclosingRange=null,r}return oC(t,e),t.prototype.computeCursorState=function(t,n){var i=n.getInverseEditOperations()[0].range;return this.closeCharacterRange=new wn(i.startLineNumber,i.endColumn-this._closeCharacter.length,i.endLineNumber,i.endColumn),this.enclosingRange=new wn(i.startLineNumber,i.endColumn-this._openCharacter.length-this._closeCharacter.length,i.endLineNumber,i.endColumn),e.prototype.computeCursorState.call(this,t,n)},t}(Bw);(tC=eC||(eC={})).editorSimpleInput=new Kh("editorSimpleInput",!1),tC.editorTextFocus=new Kh("editorTextFocus",!1),tC.focus=new Kh("editorFocus",!1),tC.textInputFocus=new Kh("textInputFocus",!1),tC.readOnly=new Kh("editorReadonly",!1),tC.writable=tC.readOnly.toNegated(),tC.hasNonEmptySelection=new Kh("editorHasSelection",!1),tC.hasOnlyEmptySelection=tC.hasNonEmptySelection.toNegated(),tC.hasMultipleSelections=new Kh("editorHasMultipleSelections",!1),tC.hasSingleSelection=tC.hasMultipleSelections.toNegated(),tC.tabMovesFocus=new Kh("editorTabMovesFocus",!1),tC.tabDoesNotMoveFocus=tC.tabMovesFocus.toNegated(),tC.isInEmbeddedEditor=new Kh("isInEmbeddedEditor",!1),tC.canUndo=new Kh("canUndo",!1),tC.canRedo=new Kh("canRedo",!1),tC.languageId=new Kh("editorLangId",""),tC.hasCompletionItemProvider=new Kh("editorHasCompletionItemProvider",!1),tC.hasCodeActionsProvider=new Kh("editorHasCodeActionsProvider",!1),tC.hasCodeLensProvider=new Kh("editorHasCodeLensProvider",!1),tC.hasDefinitionProvider=new Kh("editorHasDefinitionProvider",!1),tC.hasDeclarationProvider=new Kh("editorHasDeclarationProvider",!1),tC.hasImplementationProvider=new Kh("editorHasImplementationProvider",!1),tC.hasTypeDefinitionProvider=new Kh("editorHasTypeDefinitionProvider",!1),tC.hasHoverProvider=new Kh("editorHasHoverProvider",!1),tC.hasDocumentHighlightProvider=new Kh("editorHasDocumentHighlightProvider",!1),tC.hasDocumentSymbolProvider=new Kh("editorHasDocumentSymbolProvider",!1),tC.hasReferenceProvider=new Kh("editorHasReferenceProvider",!1),tC.hasRenameProvider=new Kh("editorHasRenameProvider",!1),tC.hasSignatureHelpProvider=new Kh("editorHasSignatureHelpProvider",!1),tC.hasDocumentFormattingProvider=new Kh("editorHasDocumentFormattingProvider",!1),tC.hasDocumentSelectionFormattingProvider=new Kh("editorHasDocumentSelectionFormattingProvider",!1),tC.hasMultipleDocumentFormattingProvider=new Kh("editorHasMultipleDocumentFormattingProvider",!1),tC.hasMultipleDocumentSelectionFormattingProvider=new Kh("editorHasMultipleDocumentSelectionFormattingProvider",!1);var aC,uC,lC,cC,dC,hC,pC,fC,gC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),mC=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return gC(t,e),t.prototype.runEditorCommand=function(e,t,n){var i=t._getCursors();i&&this.runCoreEditorCommand(i,n||{})},t}(Nf);function vC(e){e.register()}(uC=aC||(aC={})).description={description:"Scroll editor in the given direction",args:[{name:"Editor scroll argument object",description:"Property-value pairs that can be passed through this argument:\n\t\t\t\t\t* 'to': A mandatory direction value.\n\t\t\t\t\t\t```\n\t\t\t\t\t\t'up', 'down'\n\t\t\t\t\t\t```\n\t\t\t\t\t* 'by': Unit to move. Default is computed based on 'to' value.\n\t\t\t\t\t\t```\n\t\t\t\t\t\t'line', 'wrappedLine', 'page', 'halfPage'\n\t\t\t\t\t\t```\n\t\t\t\t\t* 'value': Number of units to move. Default is '1'.\n\t\t\t\t\t* 'revealCursor': If 'true' reveals the cursor if it is outside view port.\n\t\t\t\t",constraint:function(e){if(!Fs(e))return!1;var t=e;return!(!As(t.to)||!Bs(t.by)&&!As(t.by)||!Bs(t.value)&&!Ws(t.value)||!Bs(t.revealCursor)&&!Vs(t.revealCursor))},schema:{type:"object",required:["to"],properties:{to:{type:"string",enum:["up","down"]},by:{type:"string",enum:["line","wrappedLine","page","halfPage"]},value:{type:"number",default:1},revealCursor:{type:"boolean"}}}}]},uC.RawDirection={Up:"up",Down:"down"},uC.RawUnit={Line:"line",WrappedLine:"wrappedLine",Page:"page",HalfPage:"halfPage"},uC.parse=function(e){var t,n;switch(e.to){case uC.RawDirection.Up:t=1;break;case uC.RawDirection.Down:t=2;break;default:return null}switch(e.by){case uC.RawUnit.Line:n=1;break;case uC.RawUnit.WrappedLine:n=2;break;case uC.RawUnit.Page:n=3;break;case uC.RawUnit.HalfPage:n=4;break;default:n=2}return{direction:t,unit:n,value:Math.floor(e.value||1),revealCursor:!!e.revealCursor,select:!!e.select}},(cC=lC||(lC={})).description={description:"Reveal the given line at the given logical position",args:[{name:"Reveal line argument object",description:"Property-value pairs that can be passed through this argument:\n\t\t\t\t\t* 'lineNumber': A mandatory line number value.\n\t\t\t\t\t* 'at': Logical position at which line has to be revealed .\n\t\t\t\t\t\t```\n\t\t\t\t\t\t'top', 'center', 'bottom'\n\t\t\t\t\t\t```\n\t\t\t\t",constraint:function(e){if(!Fs(e))return!1;var t=e;return!(!Ws(t.lineNumber)||!Bs(t.at)&&!As(t.at))},schema:{type:"object",required:["lineNumber"],properties:{lineNumber:{type:"number"},at:{type:"string",enum:["top","center","bottom"]}}}}]},cC.RawAtArgument={Top:"top",Center:"center",Bottom:"bottom"},function(e){var t=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,[$w.moveTo(e.context,e.getPrimaryCursor(),this._inSelectionMode,t.position,t.viewPosition)]),e.reveal(t.source,!0,0,0)},t}(mC);e.MoveTo=Mf(new t({id:"_moveTo",inSelectionMode:!1,precondition:void 0})),e.MoveToSelect=Mf(new t({id:"_moveToSelect",inSelectionMode:!0,precondition:void 0}));var n=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement();var n=this._getColumnSelectResult(e.context,e.getPrimaryCursor(),e.getColumnSelectData(),t);e.setStates(t.source,3,n.viewStates.map((function(e){return zv.fromViewState(e)}))),e.setColumnSelectData({isReal:!0,fromViewLineNumber:n.fromLineNumber,fromViewVisualColumn:n.fromVisualColumn,toViewLineNumber:n.toLineNumber,toViewVisualColumn:n.toVisualColumn}),e.reveal(t.source,!0,n.reversed?1:2,0)},t}(mC);e.ColumnSelect=Mf(new(function(e){function t(){return e.call(this,{id:"columnSelect",precondition:void 0})||this}return gC(t,e),t.prototype._getColumnSelectResult=function(e,t,n,i){var o=e.model.validatePosition(i.position),r=e.validateViewPosition(new bn(i.viewPosition.lineNumber,i.viewPosition.column),o),s=i.doColumnSelect?n.fromViewLineNumber:r.lineNumber,a=i.doColumnSelect?n.fromViewVisualColumn:i.mouseColumn-1;return Aw.columnSelect(e.config,e.viewModel,s,a,r.lineNumber,i.mouseColumn-1)},t}(n))),e.CursorColumnSelectLeft=Mf(new(function(e){function t(){return e.call(this,{id:"cursorColumnSelectLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:3599,linux:{primary:0}}})||this}return gC(t,e),t.prototype._getColumnSelectResult=function(e,t,n,i){return Aw.columnSelectLeft(e.config,e.viewModel,n)},t}(n))),e.CursorColumnSelectRight=Mf(new(function(e){function t(){return e.call(this,{id:"cursorColumnSelectRight",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:3601,linux:{primary:0}}})||this}return gC(t,e),t.prototype._getColumnSelectResult=function(e,t,n,i){return Aw.columnSelectRight(e.config,e.viewModel,n)},t}(n)));var i=function(e){function t(t){var n=e.call(this,t)||this;return n._isPaged=t.isPaged,n}return gC(t,e),t.prototype._getColumnSelectResult=function(e,t,n,i){return Aw.columnSelectUp(e.config,e.viewModel,n,this._isPaged)},t}(n);e.CursorColumnSelectUp=Mf(new i({isPaged:!1,id:"cursorColumnSelectUp",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:3600,linux:{primary:0}}})),e.CursorColumnSelectPageUp=Mf(new i({isPaged:!0,id:"cursorColumnSelectPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:3595,linux:{primary:0}}}));var o=function(e){function t(t){var n=e.call(this,t)||this;return n._isPaged=t.isPaged,n}return gC(t,e),t.prototype._getColumnSelectResult=function(e,t,n,i){return Aw.columnSelectDown(e.config,e.viewModel,n,this._isPaged)},t}(n);e.CursorColumnSelectDown=Mf(new o({isPaged:!1,id:"cursorColumnSelectDown",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:3602,linux:{primary:0}}})),e.CursorColumnSelectPageDown=Mf(new o({isPaged:!0,id:"cursorColumnSelectPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:3596,linux:{primary:0}}}));var r=function(e){function t(){return e.call(this,{id:"cursorMove",precondition:void 0,description:Yw.description})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){var n=Yw.parse(t);n&&this._runCursorMove(e,t.source,n)},t.prototype._runCursorMove=function(e,t,n){e.context.model.pushStackElement(),e.setStates(t,3,$w.move(e.context,e.getAll(),n)),e.reveal(t,!0,0,0)},t}(mC);e.CursorMoveImpl=r,e.CursorMove=Mf(new r);var s=function(t){function n(e){var n=t.call(this,e)||this;return n._staticArgs=e.args,n}return gC(n,t),n.prototype.runCoreEditorCommand=function(t,n){var i=this._staticArgs;-1===this._staticArgs.value&&(i={direction:this._staticArgs.direction,unit:this._staticArgs.unit,select:this._staticArgs.select,value:t.context.config.pageSize}),e.CursorMove._runCursorMove(t,n.source,i)},n}(mC);e.CursorLeft=Mf(new s({args:{direction:0,unit:0,select:!1,value:1},id:"cursorLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:15,mac:{primary:15,secondary:[288]}}})),e.CursorLeftSelect=Mf(new s({args:{direction:0,unit:0,select:!0,value:1},id:"cursorLeftSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1039}})),e.CursorRight=Mf(new s({args:{direction:1,unit:0,select:!1,value:1},id:"cursorRight",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:17,mac:{primary:17,secondary:[292]}}})),e.CursorRightSelect=Mf(new s({args:{direction:1,unit:0,select:!0,value:1},id:"cursorRightSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1041}})),e.CursorUp=Mf(new s({args:{direction:2,unit:2,select:!1,value:1},id:"cursorUp",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:16,mac:{primary:16,secondary:[302]}}})),e.CursorUpSelect=Mf(new s({args:{direction:2,unit:2,select:!0,value:1},id:"cursorUpSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1040,secondary:[3088],mac:{primary:1040},linux:{primary:1040}}})),e.CursorPageUp=Mf(new s({args:{direction:2,unit:2,select:!1,value:-1},id:"cursorPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:11}})),e.CursorPageUpSelect=Mf(new s({args:{direction:2,unit:2,select:!0,value:-1},id:"cursorPageUpSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1035}})),e.CursorDown=Mf(new s({args:{direction:3,unit:2,select:!1,value:1},id:"cursorDown",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:18,mac:{primary:18,secondary:[300]}}})),e.CursorDownSelect=Mf(new s({args:{direction:3,unit:2,select:!0,value:1},id:"cursorDownSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1042,secondary:[3090],mac:{primary:1042},linux:{primary:1042}}})),e.CursorPageDown=Mf(new s({args:{direction:3,unit:2,select:!1,value:-1},id:"cursorPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:12}})),e.CursorPageDownSelect=Mf(new s({args:{direction:3,unit:2,select:!0,value:-1},id:"cursorPageDownSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1036}})),e.CreateCursor=Mf(new(function(e){function t(){return e.call(this,{id:"createCursor",precondition:void 0})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){var n,i=e.context;n=t.wholeLine?$w.line(i,e.getPrimaryCursor(),!1,t.position,t.viewPosition):$w.moveTo(i,e.getPrimaryCursor(),!1,t.position,t.viewPosition);var o=e.getAll();if(o.length>1)for(var r=n.modelState?n.modelState.position:null,s=n.viewState?n.viewState.position:null,a=0,u=o.length;a<u;a++){var l=o[a];if((!r||l.modelState.selection.containsPosition(r))&&(!s||l.viewState.selection.containsPosition(s)))return o.splice(a,1),e.context.model.pushStackElement(),void e.setStates(t.source,3,o)}o.push(n),e.context.model.pushStackElement(),e.setStates(t.source,3,o)},t}(mC))),e.LastCursorMoveToSelect=Mf(new(function(e){function t(){return e.call(this,{id:"_lastCursorMoveToSelect",precondition:void 0})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){var n=e.context,i=e.getLastAddedCursorIndex(),o=e.getAll(),r=o.slice(0);r[i]=$w.moveTo(n,o[i],!0,t.position,t.viewPosition),e.context.model.pushStackElement(),e.setStates(t.source,3,r)},t}(mC)));var a=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,$w.moveToBeginningOfLine(e.context,e.getAll(),this._inSelectionMode)),e.reveal(t.source,!0,0,0)},t}(mC);e.CursorHome=Mf(new a({inSelectionMode:!1,id:"cursorHome",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:14,mac:{primary:14,secondary:[2063]}}})),e.CursorHomeSelect=Mf(new a({inSelectionMode:!0,id:"cursorHomeSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1038,mac:{primary:1038,secondary:[3087]}}})),e.CursorLineStart=Mf(new(function(e){function t(){return e.call(this,{id:"cursorLineStart",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:0,mac:{primary:287}}})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,this._exec(e.context,e.getAll())),e.reveal(t.source,!0,0,0)},t.prototype._exec=function(e,t){for(var n=[],i=0,o=t.length;i<o;i++){var r=t[i],s=r.modelState.position.lineNumber;n[i]=zv.fromModelState(r.modelState.move(!1,s,1,0))}return n},t}(mC)));var u=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,$w.moveToEndOfLine(e.context,e.getAll(),this._inSelectionMode)),e.reveal(t.source,!0,0,0)},t}(mC);e.CursorEnd=Mf(new u({inSelectionMode:!1,id:"cursorEnd",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:13,mac:{primary:13,secondary:[2065]}}})),e.CursorEndSelect=Mf(new u({inSelectionMode:!0,id:"cursorEndSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1037,mac:{primary:1037,secondary:[3089]}}})),e.CursorLineEnd=Mf(new(function(e){function t(){return e.call(this,{id:"cursorLineEnd",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:0,mac:{primary:291}}})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,this._exec(e.context,e.getAll())),e.reveal(t.source,!0,0,0)},t.prototype._exec=function(e,t){for(var n=[],i=0,o=t.length;i<o;i++){var r=t[i],s=r.modelState.position.lineNumber,a=e.model.getLineMaxColumn(s);n[i]=zv.fromModelState(r.modelState.move(!1,s,a,0))}return n},t}(mC)));var l=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,$w.moveToBeginningOfBuffer(e.context,e.getAll(),this._inSelectionMode)),e.reveal(t.source,!0,0,0)},t}(mC);e.CursorTop=Mf(new l({inSelectionMode:!1,id:"cursorTop",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2062,mac:{primary:2064}}})),e.CursorTopSelect=Mf(new l({inSelectionMode:!0,id:"cursorTopSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:3086,mac:{primary:3088}}}));var c=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,$w.moveToEndOfBuffer(e.context,e.getAll(),this._inSelectionMode)),e.reveal(t.source,!0,0,0)},t}(mC);e.CursorBottom=Mf(new c({inSelectionMode:!1,id:"cursorBottom",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2061,mac:{primary:2066}}})),e.CursorBottomSelect=Mf(new c({inSelectionMode:!0,id:"cursorBottomSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:3085,mac:{primary:3090}}}));var d=function(e){function t(){return e.call(this,{id:"editorScroll",precondition:void 0,description:aC.description})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){var n=aC.parse(t);n&&this._runEditorScroll(e,t.source,n)},t.prototype._runEditorScroll=function(e,t,n){var i=this._computeDesiredScrollTop(e.context,n);if(n.revealCursor){var o=e.context.getCompletelyVisibleViewRangeAtScrollTop(i);e.setStates(t,3,[$w.findPositionInViewportIfOutside(e.context,e.getPrimaryCursor(),o,n.select)])}e.scrollTo(i)},t.prototype._computeDesiredScrollTop=function(e,t){if(1===t.unit){var n=e.getCompletelyVisibleModelRange(),i=void 0;i=1===t.direction?Math.max(1,n.startLineNumber-t.value):Math.min(e.model.getLineCount(),n.startLineNumber+t.value);var o=e.convertModelPositionToViewPosition(new bn(i,1));return e.getVerticalOffsetForViewLine(o.lineNumber)}var r;r=3===t.unit?e.config.pageSize*t.value:4===t.unit?Math.round(e.config.pageSize/2)*t.value:t.value;var s=(1===t.direction?-1:1)*r;return e.getCurrentScrollTop()+s*e.config.lineHeight},t}(mC);e.EditorScrollImpl=d,e.EditorScroll=Mf(new d),e.ScrollLineUp=Mf(new(function(t){function n(){return t.call(this,{id:"scrollLineUp",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2064,mac:{primary:267}}})||this}return gC(n,t),n.prototype.runCoreEditorCommand=function(t,n){e.EditorScroll._runEditorScroll(t,n.source,{direction:1,unit:2,value:1,revealCursor:!1,select:!1})},n}(mC))),e.ScrollPageUp=Mf(new(function(t){function n(){return t.call(this,{id:"scrollPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2059,win:{primary:523},linux:{primary:523}}})||this}return gC(n,t),n.prototype.runCoreEditorCommand=function(t,n){e.EditorScroll._runEditorScroll(t,n.source,{direction:1,unit:3,value:1,revealCursor:!1,select:!1})},n}(mC))),e.ScrollLineDown=Mf(new(function(t){function n(){return t.call(this,{id:"scrollLineDown",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2066,mac:{primary:268}}})||this}return gC(n,t),n.prototype.runCoreEditorCommand=function(t,n){e.EditorScroll._runEditorScroll(t,n.source,{direction:2,unit:2,value:1,revealCursor:!1,select:!1})},n}(mC))),e.ScrollPageDown=Mf(new(function(t){function n(){return t.call(this,{id:"scrollPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2060,win:{primary:524},linux:{primary:524}}})||this}return gC(n,t),n.prototype.runCoreEditorCommand=function(t,n){e.EditorScroll._runEditorScroll(t,n.source,{direction:2,unit:3,value:1,revealCursor:!1,select:!1})},n}(mC)));var h=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,[$w.word(e.context,e.getPrimaryCursor(),this._inSelectionMode,t.position)]),e.reveal(t.source,!0,0,0)},t}(mC);e.WordSelect=Mf(new h({inSelectionMode:!1,id:"_wordSelect",precondition:void 0})),e.WordSelectDrag=Mf(new h({inSelectionMode:!0,id:"_wordSelectDrag",precondition:void 0})),e.LastCursorWordSelect=Mf(new(function(e){function t(){return e.call(this,{id:"lastCursorWordSelect",precondition:void 0})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){var n=e.context,i=e.getLastAddedCursorIndex(),o=e.getAll(),r=o.slice(0),s=o[i];r[i]=$w.word(n,s,s.modelState.hasSelection(),t.position),n.model.pushStackElement(),e.setStates(t.source,3,r)},t}(mC)));var p=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,[$w.line(e.context,e.getPrimaryCursor(),this._inSelectionMode,t.position,t.viewPosition)]),e.reveal(t.source,!1,0,0)},t}(mC);e.LineSelect=Mf(new p({inSelectionMode:!1,id:"_lineSelect",precondition:void 0})),e.LineSelectDrag=Mf(new p({inSelectionMode:!0,id:"_lineSelectDrag",precondition:void 0}));var f=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){var n=e.getLastAddedCursorIndex(),i=e.getAll(),o=i.slice(0);o[n]=$w.line(e.context,i[n],this._inSelectionMode,t.position,t.viewPosition),e.context.model.pushStackElement(),e.setStates(t.source,3,o)},t}(mC);e.LastCursorLineSelect=Mf(new f({inSelectionMode:!1,id:"lastCursorLineSelect",precondition:void 0})),e.LastCursorLineSelectDrag=Mf(new f({inSelectionMode:!0,id:"lastCursorLineSelectDrag",precondition:void 0})),e.ExpandLineSelection=Mf(new(function(e){function t(){return e.call(this,{id:"expandLineSelection",precondition:void 0,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2090}})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,$w.expandLineSelection(e.context,e.getAll())),e.reveal(t.source,!0,0,0)},t}(mC))),e.CancelSelection=Mf(new(function(e){function t(){return e.call(this,{id:"cancelSelection",precondition:eC.hasNonEmptySelection,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:9,secondary:[1033]}})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,[$w.cancelSelection(e.context,e.getPrimaryCursor())]),e.reveal(t.source,!0,0,0)},t}(mC))),e.RemoveSecondaryCursors=Mf(new(function(e){function t(){return e.call(this,{id:"removeSecondaryCursors",precondition:eC.hasMultipleSelections,kbOpts:{weight:1,kbExpr:eC.textInputFocus,primary:9,secondary:[1033]}})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,[e.getPrimaryCursor()]),e.reveal(t.source,!0,0,0)},t}(mC))),e.RevealLine=Mf(new(function(e){function t(){return e.call(this,{id:"revealLine",precondition:void 0,description:lC.description})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){var n=t,i=(n.lineNumber||0)+1;i<1&&(i=1);var o=e.context.model.getLineCount();i>o&&(i=o);var r=new wn(i,1,i,e.context.model.getLineMaxColumn(i)),s=0;if(n.at)switch(n.at){case lC.RawAtArgument.Top:s=3;break;case lC.RawAtArgument.Center:s=1;break;case lC.RawAtArgument.Bottom:s=4}var a=e.context.convertModelRangeToViewRange(r);e.revealRange(t.source,!1,a,s,0)},t}(mC))),e.SelectAll=Mf(new(function(e){function t(){return e.call(this,{id:"selectAll",precondition:void 0})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,[$w.selectAll(e.context,e.getPrimaryCursor())])},t}(mC))),e.SetSelection=Mf(new(function(e){function t(){return e.call(this,{id:"setSelection",precondition:void 0})||this}return gC(t,e),t.prototype.runCoreEditorCommand=function(e,t){e.context.model.pushStackElement(),e.setStates(t.source,3,[zv.fromModelSelection(t.selection)])},t}(mC)))}(dC||(dC={})),pC=hC||(hC={}),fC=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return gC(t,e),t.prototype.runEditorCommand=function(e,t,n){var i=t._getCursors();i&&this.runCoreEditingCommand(t,i,n||{})},t}(Nf),pC.CoreEditingCommand=fC,pC.LineBreakInsert=Mf(new(function(e){function t(){return e.call(this,{id:"lineBreakInsert",precondition:eC.writable,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:0,mac:{primary:301}}})||this}return gC(t,e),t.prototype.runCoreEditingCommand=function(e,t,n){e.pushUndoStop(),e.executeCommands(this.id,rC.lineBreakInsert(t.context.config,t.context.model,t.getAll().map((function(e){return e.modelState.selection}))))},t}(fC))),pC.Outdent=Mf(new(function(e){function t(){return e.call(this,{id:"outdent",precondition:eC.writable,kbOpts:{weight:0,kbExpr:Rh.and(eC.editorTextFocus,eC.tabDoesNotMoveFocus),primary:1026}})||this}return gC(t,e),t.prototype.runCoreEditingCommand=function(e,t,n){e.pushUndoStop(),e.executeCommands(this.id,rC.outdent(t.context.config,t.context.model,t.getAll().map((function(e){return e.modelState.selection})))),e.pushUndoStop()},t}(fC))),pC.Tab=Mf(new(function(e){function t(){return e.call(this,{id:"tab",precondition:eC.writable,kbOpts:{weight:0,kbExpr:Rh.and(eC.editorTextFocus,eC.tabDoesNotMoveFocus),primary:2}})||this}return gC(t,e),t.prototype.runCoreEditingCommand=function(e,t,n){e.pushUndoStop(),e.executeCommands(this.id,rC.tab(t.context.config,t.context.model,t.getAll().map((function(e){return e.modelState.selection})))),e.pushUndoStop()},t}(fC))),pC.DeleteLeft=Mf(new(function(e){function t(){return e.call(this,{id:"deleteLeft",precondition:eC.writable,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:1,secondary:[1025],mac:{primary:1,secondary:[1025,294,257]}}})||this}return gC(t,e),t.prototype.runCoreEditingCommand=function(e,t,n){var i=Uw.deleteLeft(t.getPrevEditOperationType(),t.context.config,t.context.model,t.getAll().map((function(e){return e.modelState.selection}))),o=i[0],r=i[1];o&&e.pushUndoStop(),e.executeCommands(this.id,r),t.setPrevEditOperationType(2)},t}(fC))),pC.DeleteRight=Mf(new(function(e){function t(){return e.call(this,{id:"deleteRight",precondition:eC.writable,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:20,mac:{primary:20,secondary:[290,276]}}})||this}return gC(t,e),t.prototype.runCoreEditingCommand=function(e,t,n){var i=Uw.deleteRight(t.getPrevEditOperationType(),t.context.config,t.context.model,t.getAll().map((function(e){return e.modelState.selection}))),o=i[0],r=i[1];o&&e.pushUndoStop(),e.executeCommands(this.id,r),t.setPrevEditOperationType(3)},t}(fC)));var _C=function(e){function t(t){var n=e.call(this,t)||this;return n._editorHandler=t.editorHandler,n._inputHandler=t.inputHandler,n}return gC(t,e),t.prototype.runCommand=function(e,t){var n=e.get(Pn).getFocusedCodeEditor();if(n&&n.hasTextFocus())return this._runEditorHandler(e,n,t);var i=document.activeElement;if(!(i&&["input","textarea"].indexOf(i.tagName.toLowerCase())>=0)){var o=e.get(Pn).getActiveCodeEditor();return o?(o.focus(),this._runEditorHandler(e,o,t)):void 0}document.execCommand(this._inputHandler)},t.prototype._runEditorHandler=function(e,t,n){var i=this._editorHandler;"string"==typeof i?t.trigger("keyboard",i,n):((n=n||{}).source="keyboard",i.runEditorCommand(e,t,n))},t}(Df),yC=function(e){function t(t,n,i){var o=e.call(this,{id:t,precondition:void 0,description:i})||this;return o._handlerId=n,o}return gC(t,e),t.prototype.runCommand=function(e,t){var n=e.get(Pn).getFocusedCodeEditor();n&&n.trigger("keyboard",this._handlerId,t)},t}(Df);function bC(e,t){vC(new yC("default:"+e,e)),vC(new yC(e,e,t))}vC(new _C({editorHandler:dC.SelectAll,inputHandler:"selectAll",id:"editor.action.selectAll",precondition:eC.textInputFocus,kbOpts:{weight:0,kbExpr:null,primary:2079},menuOpts:{menuId:25,group:"1_basic",title:r({key:"miSelectAll",comment:["&& denotes a mnemonic"]},"&&Select All"),order:1}})),vC(new _C({editorHandler:za.Undo,inputHandler:"undo",id:za.Undo,precondition:eC.writable,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2104},menuOpts:{menuId:17,group:"1_do",title:r({key:"miUndo",comment:["&& denotes a mnemonic"]},"&&Undo"),order:1}})),vC(new yC("default:"+za.Undo,za.Undo)),vC(new _C({editorHandler:za.Redo,inputHandler:"redo",id:za.Redo,precondition:eC.writable,kbOpts:{weight:0,kbExpr:eC.textInputFocus,primary:2103,secondary:[3128],mac:{primary:3128}},menuOpts:{menuId:17,group:"1_do",title:r({key:"miRedo",comment:["&& denotes a mnemonic"]},"&&Redo"),order:2}})),vC(new yC("default:"+za.Redo,za.Redo)),bC(za.Type,{description:"Type",args:[{name:"args",schema:{type:"object",required:["text"],properties:{text:{type:"string"}}}}]}),bC(za.ReplacePreviousChar),bC(za.CompositionStart),bC(za.CompositionEnd),bC(za.Paste),bC(za.Cut);var wC=function(){function e(e,t,n,i){this.configuration=e,this.viewModel=t,this.outgoingEvents=n,this.commandDelegate=i}return e.prototype._execMouseCommand=function(e,t){t.source="mouse",this.commandDelegate.executeEditorCommand(e,t)},e.prototype.paste=function(e,t,n,i,o){this.commandDelegate.paste(e,t,n,i,o)},e.prototype.type=function(e,t){this.commandDelegate.type(e,t)},e.prototype.replacePreviousChar=function(e,t,n){this.commandDelegate.replacePreviousChar(e,t,n)},e.prototype.compositionStart=function(e){this.commandDelegate.compositionStart(e)},e.prototype.compositionEnd=function(e){this.commandDelegate.compositionEnd(e)},e.prototype.cut=function(e){this.commandDelegate.cut(e)},e.prototype.setSelection=function(e,t){this.commandDelegate.executeEditorCommand(dC.SetSelection,{source:e,selection:t})},e.prototype._validateViewColumn=function(e){var t=this.viewModel.getLineMinColumn(e.lineNumber);return e.column<t?new bn(e.lineNumber,t):e},e.prototype._hasMulticursorModifier=function(e){switch(this.configuration.options.get(59)){case"altKey":return e.altKey;case"ctrlKey":return e.ctrlKey;case"metaKey":return e.metaKey}return!1},e.prototype._hasNonMulticursorModifier=function(e){switch(this.configuration.options.get(59)){case"altKey":return e.ctrlKey||e.metaKey;case"ctrlKey":return e.altKey||e.metaKey;case"metaKey":return e.ctrlKey||e.altKey}return!1},e.prototype.dispatchMouse=function(e){var t=y&&this.configuration.options.get(81);e.middleButton&&!t?this._columnSelect(e.position,e.mouseColumn,e.inSelectionMode):e.startedOnLineNumbers?this._hasMulticursorModifier(e)?e.inSelectionMode?this._lastCursorLineSelect(e.position):this._createCursor(e.position,!0):e.inSelectionMode?this._lineSelectDrag(e.position):this._lineSelect(e.position):e.mouseDownCount>=4?this._selectAll():3===e.mouseDownCount?this._hasMulticursorModifier(e)?e.inSelectionMode?this._lastCursorLineSelectDrag(e.position):this._lastCursorLineSelect(e.position):e.inSelectionMode?this._lineSelectDrag(e.position):this._lineSelect(e.position):2===e.mouseDownCount?this._hasMulticursorModifier(e)?this._lastCursorWordSelect(e.position):e.inSelectionMode?this._wordSelectDrag(e.position):this._wordSelect(e.position):this._hasMulticursorModifier(e)?this._hasNonMulticursorModifier(e)||(e.shiftKey?this._columnSelect(e.position,e.mouseColumn,!0):e.inSelectionMode?this._lastCursorMoveToSelect(e.position):this._createCursor(e.position,!1)):e.inSelectionMode?e.altKey?this._columnSelect(e.position,e.mouseColumn,!0):this._moveToSelect(e.position):this.moveTo(e.position)},e.prototype._usualArgs=function(e){return e=this._validateViewColumn(e),{position:this._convertViewToModelPosition(e),viewPosition:e}},e.prototype.moveTo=function(e){this._execMouseCommand(dC.MoveTo,this._usualArgs(e))},e.prototype._moveToSelect=function(e){this._execMouseCommand(dC.MoveToSelect,this._usualArgs(e))},e.prototype._columnSelect=function(e,t,n){e=this._validateViewColumn(e),this._execMouseCommand(dC.ColumnSelect,{position:this._convertViewToModelPosition(e),viewPosition:e,mouseColumn:t,doColumnSelect:n})},e.prototype._createCursor=function(e,t){e=this._validateViewColumn(e),this._execMouseCommand(dC.CreateCursor,{position:this._convertViewToModelPosition(e),viewPosition:e,wholeLine:t})},e.prototype._lastCursorMoveToSelect=function(e){this._execMouseCommand(dC.LastCursorMoveToSelect,this._usualArgs(e))},e.prototype._wordSelect=function(e){this._execMouseCommand(dC.WordSelect,this._usualArgs(e))},e.prototype._wordSelectDrag=function(e){this._execMouseCommand(dC.WordSelectDrag,this._usualArgs(e))},e.prototype._lastCursorWordSelect=function(e){this._execMouseCommand(dC.LastCursorWordSelect,this._usualArgs(e))},e.prototype._lineSelect=function(e){this._execMouseCommand(dC.LineSelect,this._usualArgs(e))},e.prototype._lineSelectDrag=function(e){this._execMouseCommand(dC.LineSelectDrag,this._usualArgs(e))},e.prototype._lastCursorLineSelect=function(e){this._execMouseCommand(dC.LastCursorLineSelect,this._usualArgs(e))},e.prototype._lastCursorLineSelectDrag=function(e){this._execMouseCommand(dC.LastCursorLineSelectDrag,this._usualArgs(e))},e.prototype._selectAll=function(){this._execMouseCommand(dC.SelectAll,{})},e.prototype._convertViewToModelPosition=function(e){return this.viewModel.coordinatesConverter.convertViewPositionToModelPosition(e)},e.prototype.emitKeyDown=function(e){this.outgoingEvents.emitKeyDown(e)},e.prototype.emitKeyUp=function(e){this.outgoingEvents.emitKeyUp(e)},e.prototype.emitContextMenu=function(e){this.outgoingEvents.emitContextMenu(e)},e.prototype.emitMouseMove=function(e){this.outgoingEvents.emitMouseMove(e)},e.prototype.emitMouseLeave=function(e){this.outgoingEvents.emitMouseLeave(e)},e.prototype.emitMouseUp=function(e){this.outgoingEvents.emitMouseUp(e)},e.prototype.emitMouseDown=function(e){this.outgoingEvents.emitMouseDown(e)},e.prototype.emitMouseDrag=function(e){this.outgoingEvents.emitMouseDrag(e)},e.prototype.emitMouseDrop=function(e){this.outgoingEvents.emitMouseDrop(e)},e.prototype.emitMouseWheel=function(e){this.outgoingEvents.emitMouseWheel(e)},e}(),CC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),SC=function(e){function t(t){var n=e.call(this)||this;return n.onDidContentSizeChange=null,n.onDidScroll=null,n.onDidGainFocus=null,n.onDidLoseFocus=null,n.onKeyDown=null,n.onKeyUp=null,n.onContextMenu=null,n.onMouseMove=null,n.onMouseLeave=null,n.onMouseUp=null,n.onMouseDown=null,n.onMouseDrag=null,n.onMouseDrop=null,n.onMouseWheel=null,n._viewModel=t,n}return CC(t,e),t.prototype.emitContentSizeChange=function(e){this.onDidContentSizeChange&&this.onDidContentSizeChange(e)},t.prototype.emitScrollChanged=function(e){this.onDidScroll&&this.onDidScroll(e)},t.prototype.emitViewFocusGained=function(){this.onDidGainFocus&&this.onDidGainFocus(void 0)},t.prototype.emitViewFocusLost=function(){this.onDidLoseFocus&&this.onDidLoseFocus(void 0)},t.prototype.emitKeyDown=function(e){this.onKeyDown&&this.onKeyDown(e)},t.prototype.emitKeyUp=function(e){this.onKeyUp&&this.onKeyUp(e)},t.prototype.emitContextMenu=function(e){this.onContextMenu&&this.onContextMenu(this._convertViewToModelMouseEvent(e))},t.prototype.emitMouseMove=function(e){this.onMouseMove&&this.onMouseMove(this._convertViewToModelMouseEvent(e))},t.prototype.emitMouseLeave=function(e){this.onMouseLeave&&this.onMouseLeave(this._convertViewToModelMouseEvent(e))},t.prototype.emitMouseUp=function(e){this.onMouseUp&&this.onMouseUp(this._convertViewToModelMouseEvent(e))},t.prototype.emitMouseDown=function(e){this.onMouseDown&&this.onMouseDown(this._convertViewToModelMouseEvent(e))},t.prototype.emitMouseDrag=function(e){this.onMouseDrag&&this.onMouseDrag(this._convertViewToModelMouseEvent(e))},t.prototype.emitMouseDrop=function(e){this.onMouseDrop&&this.onMouseDrop(this._convertViewToModelMouseEvent(e))},t.prototype.emitMouseWheel=function(e){this.onMouseWheel&&this.onMouseWheel(e)},t.prototype._convertViewToModelMouseEvent=function(e){return e.target?{event:e.event,target:this._convertViewToModelMouseTarget(e.target)}:e},t.prototype._convertViewToModelMouseTarget=function(e){return t.convertViewToModelMouseTarget(e,this._viewModel.coordinatesConverter)},t.convertViewToModelMouseTarget=function(e,t){return new LC(e.element,e.type,e.mouseColumn,e.position?t.convertViewPositionToModelPosition(e.position):null,e.range?t.convertViewRangeToModelRange(e.range):null,e.detail)},t}(He),LC=function(){function e(e,t,n,i,o,r){this.element=e,this.type=t,this.mouseColumn=n,this.position=i,this.range=o,this.detail=r}return e.prototype.toString=function(){return Zv.toString(this)},e}(),xC=function(){function e(e){this._createLine=e,this._set(1,[])}return e.prototype.flush=function(){this._set(1,[])},e.prototype._set=function(e,t){this._lines=t,this._rendLineNumberStart=e},e.prototype._get=function(){return{rendLineNumberStart:this._rendLineNumberStart,lines:this._lines}},e.prototype.getStartLineNumber=function(){return this._rendLineNumberStart},e.prototype.getEndLineNumber=function(){return this._rendLineNumberStart+this._lines.length-1},e.prototype.getCount=function(){return this._lines.length},e.prototype.getLine=function(e){var t=e-this._rendLineNumberStart;if(t<0||t>=this._lines.length)throw new Error("Illegal value for lineNumber");return this._lines[t]},e.prototype.onLinesDeleted=function(e,t){if(0===this.getCount())return null;var n=this.getStartLineNumber(),i=this.getEndLineNumber();if(t<n){var o=t-e+1;return this._rendLineNumberStart-=o,null}if(e>i)return null;for(var r=0,s=0,a=n;a<=i;a++){var u=a-this._rendLineNumberStart;e<=a&&a<=t&&(0===s?(r=u,s=1):s++)}if(e<n){var l=0;l=t<n?t-e+1:n-e,this._rendLineNumberStart-=l}return this._lines.splice(r,s)},e.prototype.onLinesChanged=function(e,t){if(0===this.getCount())return!1;for(var n=this.getStartLineNumber(),i=this.getEndLineNumber(),o=!1,r=e;r<=t;r++)r>=n&&r<=i&&(this._lines[r-this._rendLineNumberStart].onContentChanged(),o=!0);return o},e.prototype.onLinesInserted=function(e,t){if(0===this.getCount())return null;var n=t-e+1,i=this.getStartLineNumber(),o=this.getEndLineNumber();if(e<=i)return this._rendLineNumberStart+=n,null;if(e>o)return null;if(n+e>o)return this._lines.splice(e-this._rendLineNumberStart,o-e+1);for(var r=[],s=0;s<n;s++)r[s]=this._createLine();var a=e-this._rendLineNumberStart,u=this._lines.slice(0,a),l=this._lines.slice(a,this._lines.length-n),c=this._lines.slice(this._lines.length-n,this._lines.length);return this._lines=u.concat(r).concat(l),c},e.prototype.onTokensChanged=function(e){if(0===this.getCount())return!1;for(var t=this.getStartLineNumber(),n=this.getEndLineNumber(),i=!1,o=0,r=e.length;o<r;o++){var s=e[o];if(!(s.toLineNumber<t||s.fromLineNumber>n))for(var a=Math.max(t,s.fromLineNumber),u=Math.min(n,s.toLineNumber),l=a;l<=u;l++){var c=l-this._rendLineNumberStart;this._lines[c].onTokensChanged(),i=!0}}return i},e}(),DC=function(){function e(e){var t=this;this._host=e,this.domNode=this._createDomNode(),this._linesCollection=new xC((function(){return t._host.createVisibleLine()}))}return e.prototype._createDomNode=function(){var e=Ff(document.createElement("div"));return e.setClassName("view-layer"),e.setPosition("absolute"),e.domNode.setAttribute("role","presentation"),e.domNode.setAttribute("aria-hidden","true"),e},e.prototype.onConfigurationChanged=function(e){return!!e.hasChanged(107)},e.prototype.onFlushed=function(e){return this._linesCollection.flush(),!0},e.prototype.onLinesChanged=function(e){return this._linesCollection.onLinesChanged(e.fromLineNumber,e.toLineNumber)},e.prototype.onLinesDeleted=function(e){var t=this._linesCollection.onLinesDeleted(e.fromLineNumber,e.toLineNumber);if(t)for(var n=0,i=t.length;n<i;n++){var o=t[n].getDomNode();o&&this.domNode.domNode.removeChild(o)}return!0},e.prototype.onLinesInserted=function(e){var t=this._linesCollection.onLinesInserted(e.fromLineNumber,e.toLineNumber);if(t)for(var n=0,i=t.length;n<i;n++){var o=t[n].getDomNode();o&&this.domNode.domNode.removeChild(o)}return!0},e.prototype.onScrollChanged=function(e){return e.scrollTopChanged},e.prototype.onTokensChanged=function(e){return this._linesCollection.onTokensChanged(e.ranges)},e.prototype.onZonesChanged=function(e){return!0},e.prototype.getStartLineNumber=function(){return this._linesCollection.getStartLineNumber()},e.prototype.getEndLineNumber=function(){return this._linesCollection.getEndLineNumber()},e.prototype.getVisibleLine=function(e){return this._linesCollection.getLine(e)},e.prototype.renderLines=function(e){var t=this._linesCollection._get(),n=new NC(this.domNode.domNode,this._host,e),i={rendLineNumberStart:t.rendLineNumberStart,lines:t.lines,linesLength:t.lines.length},o=n.render(i,e.startLineNumber,e.endLineNumber,e.relativeVerticalOffset);this._linesCollection._set(o.rendLineNumberStart,o.lines)},e}(),NC=function(){function e(e,t,n){this.domNode=e,this.host=t,this.viewportData=n}return e.prototype.render=function(e,t,n,i){var o={rendLineNumberStart:e.rendLineNumberStart,lines:e.lines.slice(0),linesLength:e.linesLength};if(o.rendLineNumberStart+o.linesLength-1<t||n<o.rendLineNumberStart){o.rendLineNumberStart=t,o.linesLength=n-t+1,o.lines=[];for(var r=t;r<=n;r++)o.lines[r-t]=this.host.createVisibleLine();return this._finishRendering(o,!0,i),o}if(this._renderUntouchedLines(o,Math.max(t-o.rendLineNumberStart,0),Math.min(n-o.rendLineNumberStart,o.linesLength-1),i,t),o.rendLineNumberStart>t)(u=t)<=(s=Math.min(n,o.rendLineNumberStart-1))&&(this._insertLinesBefore(o,u,s,i,t),o.linesLength+=s-u+1);else if(o.rendLineNumberStart<t){(a=Math.min(o.linesLength,t-o.rendLineNumberStart))>0&&(this._removeLinesBefore(o,a),o.linesLength-=a)}if(o.rendLineNumberStart=t,o.rendLineNumberStart+o.linesLength-1<n)(u=o.rendLineNumberStart+o.linesLength)<=(s=n)&&(this._insertLinesAfter(o,u,s,i,t),o.linesLength+=s-u+1);else if(o.rendLineNumberStart+o.linesLength-1>n){var s,a,u=Math.max(0,n-o.rendLineNumberStart+1);(a=(s=o.linesLength-1)-u+1)>0&&(this._removeLinesAfter(o,a),o.linesLength-=a)}return this._finishRendering(o,!1,i),o},e.prototype._renderUntouchedLines=function(e,t,n,i,o){for(var r=e.rendLineNumberStart,s=e.lines,a=t;a<=n;a++){var u=r+a;s[a].layoutLine(u,i[u-o])}},e.prototype._insertLinesBefore=function(e,t,n,i,o){for(var r=[],s=0,a=t;a<=n;a++)r[s++]=this.host.createVisibleLine();e.lines=r.concat(e.lines)},e.prototype._removeLinesBefore=function(e,t){for(var n=0;n<t;n++){var i=e.lines[n].getDomNode();i&&this.domNode.removeChild(i)}e.lines.splice(0,t)},e.prototype._insertLinesAfter=function(e,t,n,i,o){for(var r=[],s=0,a=t;a<=n;a++)r[s++]=this.host.createVisibleLine();e.lines=e.lines.concat(r)},e.prototype._removeLinesAfter=function(e,t){for(var n=e.linesLength-t,i=0;i<t;i++){var o=e.lines[n+i].getDomNode();o&&this.domNode.removeChild(o)}e.lines.splice(n,t)},e.prototype._finishRenderingNewLines=function(e,t,n,i){var o=this.domNode.lastChild;t||!o?this.domNode.innerHTML=n:o.insertAdjacentHTML("afterend",n);for(var r=this.domNode.lastChild,s=e.linesLength-1;s>=0;s--){var a=e.lines[s];i[s]&&(a.setDomNode(r),r=r.previousSibling)}},e.prototype._finishRenderingInvalidLines=function(e,t,n){var i=document.createElement("div");i.innerHTML=t;for(var o=0;o<e.linesLength;o++){var r=e.lines[o];if(n[o]){var s=i.firstChild,a=r.getDomNode();a.parentNode.replaceChild(s,a),r.setDomNode(s)}}},e.prototype._finishRendering=function(t,n,i){var o=e._sb,r=t.linesLength,s=t.lines,a=t.rendLineNumberStart,u=[];o.reset();for(var l=!1,c=0;c<r;c++){var d=s[c];if(u[c]=!1,!d.getDomNode())d.renderLine(c+a,i[c],this.viewportData,o)&&(u[c]=!0,l=!0)}l&&this._finishRenderingNewLines(t,n,o.build(),u),o.reset();var h=!1,p=[];for(c=0;c<r;c++){d=s[c];if(p[c]=!1,!u[c])d.renderLine(c+a,i[c],this.viewportData,o)&&(p[c]=!0,h=!0)}h&&this._finishRenderingInvalidLines(t,o.build(),p)},e._sb=Fc(1e5),e}(),kC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),EC=function(e){function t(t){var n=e.call(this,t)||this;return n._visibleLines=new DC(n),n.domNode=n._visibleLines.domNode,n._dynamicOverlays=[],n._isFocused=!1,n.domNode.setClassName("view-overlays"),n}return kC(t,e),t.prototype.shouldRender=function(){if(e.prototype.shouldRender.call(this))return!0;for(var t=0,n=this._dynamicOverlays.length;t<n;t++){if(this._dynamicOverlays[t].shouldRender())return!0}return!1},t.prototype.dispose=function(){e.prototype.dispose.call(this);for(var t=0,n=this._dynamicOverlays.length;t<n;t++){this._dynamicOverlays[t].dispose()}this._dynamicOverlays=[]},t.prototype.getDomNode=function(){return this.domNode},t.prototype.createVisibleLine=function(){return new IC(this._context.configuration,this._dynamicOverlays)},t.prototype.addDynamicOverlay=function(e){this._dynamicOverlays.push(e)},t.prototype.onConfigurationChanged=function(e){this._visibleLines.onConfigurationChanged(e);for(var t=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber(),i=t;i<=n;i++){this._visibleLines.getVisibleLine(i).onConfigurationChanged(e)}return!0},t.prototype.onFlushed=function(e){return this._visibleLines.onFlushed(e)},t.prototype.onFocusChanged=function(e){return this._isFocused=e.isFocused,!0},t.prototype.onLinesChanged=function(e){return this._visibleLines.onLinesChanged(e)},t.prototype.onLinesDeleted=function(e){return this._visibleLines.onLinesDeleted(e)},t.prototype.onLinesInserted=function(e){return this._visibleLines.onLinesInserted(e)},t.prototype.onScrollChanged=function(e){return this._visibleLines.onScrollChanged(e)||!0},t.prototype.onTokensChanged=function(e){return this._visibleLines.onTokensChanged(e)},t.prototype.onZonesChanged=function(e){return this._visibleLines.onZonesChanged(e)},t.prototype.prepareRender=function(e){for(var t=this._dynamicOverlays.filter((function(e){return e.shouldRender()})),n=0,i=t.length;n<i;n++){var o=t[n];o.prepareRender(e),o.onDidRender()}},t.prototype.render=function(e){this._viewOverlaysRender(e),this.domNode.toggleClassName("focused",this._isFocused)},t.prototype._viewOverlaysRender=function(e){this._visibleLines.renderLines(e.viewportData)},t}(og),IC=function(){function e(e,t){this._configuration=e,this._lineHeight=this._configuration.options.get(49),this._dynamicOverlays=t,this._domNode=null,this._renderedContent=null}return e.prototype.getDomNode=function(){return this._domNode?this._domNode.domNode:null},e.prototype.setDomNode=function(e){this._domNode=Ff(e)},e.prototype.onContentChanged=function(){},e.prototype.onTokensChanged=function(){},e.prototype.onConfigurationChanged=function(e){this._lineHeight=this._configuration.options.get(49)},e.prototype.renderLine=function(e,t,n,i){for(var o="",r=0,s=this._dynamicOverlays.length;r<s;r++){o+=this._dynamicOverlays[r].render(n.startLineNumber,e)}return this._renderedContent!==o&&(this._renderedContent=o,i.appendASCIIString('<div style="position:absolute;top:'),i.appendASCIIString(String(t)),i.appendASCIIString("px;width:100%;height:"),i.appendASCIIString(String(this._lineHeight)),i.appendASCIIString('px;">'),i.appendASCIIString(o),i.appendASCIIString("</div>"),!0)},e.prototype.layoutLine=function(e,t){this._domNode&&(this._domNode.setTop(t),this._domNode.setHeight(this._lineHeight))},e}(),OC=function(e){function t(t){var n=e.call(this,t)||this,i=n._context.configuration.options.get(107);return n._contentWidth=i.contentWidth,n.domNode.setHeight(0),n}return kC(t,e),t.prototype.onConfigurationChanged=function(t){var n=this._context.configuration.options.get(107);return this._contentWidth=n.contentWidth,e.prototype.onConfigurationChanged.call(this,t)||!0},t.prototype.onScrollChanged=function(t){return e.prototype.onScrollChanged.call(this,t)||t.scrollWidthChanged},t.prototype._viewOverlaysRender=function(t){e.prototype._viewOverlaysRender.call(this,t),this.domNode.setWidth(Math.max(t.scrollWidth,this._contentWidth))},t}(EC),MC=function(e){function t(t){var n=e.call(this,t)||this,i=n._context.configuration.options,o=i.get(107);return n._contentLeft=o.contentLeft,n.domNode.setClassName("margin-view-overlays"),n.domNode.setWidth(1),af.applyFontInfo(n.domNode,i.get(34)),n}return kC(t,e),t.prototype.onConfigurationChanged=function(t){var n=this._context.configuration.options;af.applyFontInfo(this.domNode,n.get(34));var i=n.get(107);return this._contentLeft=i.contentLeft,e.prototype.onConfigurationChanged.call(this,t)||!0},t.prototype.onScrollChanged=function(t){return e.prototype.onScrollChanged.call(this,t)||t.scrollHeightChanged},t.prototype._viewOverlaysRender=function(t){e.prototype._viewOverlaysRender.call(this,t);var n=Math.min(t.scrollHeight,1e6);this.domNode.setHeight(n),this.domNode.setWidth(this._contentLeft)},t}(EC),TC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),PC=function(e,t){this.top=e,this.left=t},RC=function(e){function t(t,n){var i=e.call(this,t)||this;return i._viewDomNode=n,i._widgets={},i.domNode=Ff(document.createElement("div")),rg.write(i.domNode,1),i.domNode.setClassName("contentWidgets"),i.domNode.setPosition("absolute"),i.domNode.setTop(0),i.overflowingContentWidgetsDomNode=Ff(document.createElement("div")),rg.write(i.overflowingContentWidgetsDomNode,2),i.overflowingContentWidgetsDomNode.setClassName("overflowingContentWidgets"),i}return TC(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._widgets={}},t.prototype.onConfigurationChanged=function(e){for(var t=0,n=Object.keys(this._widgets);t<n.length;t++){var i=n[t];this._widgets[i].onConfigurationChanged(e)}return!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onLineMappingChanged=function(e){for(var t=0,n=Object.keys(this._widgets);t<n.length;t++){var i=n[t];this._widgets[i].onLineMappingChanged(e)}return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return!0},t.prototype.onZonesChanged=function(e){return!0},t.prototype.addWidget=function(e){var t=new AC(this._context,this._viewDomNode,e);this._widgets[t.id]=t,t.allowEditorOverflow?this.overflowingContentWidgetsDomNode.appendChild(t.domNode):this.domNode.appendChild(t.domNode),this.setShouldRender()},t.prototype.setWidgetPosition=function(e,t,n){this._widgets[e.getId()].setPosition(t,n),this.setShouldRender()},t.prototype.removeWidget=function(e){var t=e.getId();if(this._widgets.hasOwnProperty(t)){var n=this._widgets[t];delete this._widgets[t];var i=n.domNode.domNode;i.parentNode.removeChild(i),i.removeAttribute("monaco-visible-content-widget"),this.setShouldRender()}},t.prototype.shouldSuppressMouseDownOnWidget=function(e){return!!this._widgets.hasOwnProperty(e)&&this._widgets[e].suppressMouseDown},t.prototype.onBeforeRender=function(e){for(var t=0,n=Object.keys(this._widgets);t<n.length;t++){var i=n[t];this._widgets[i].onBeforeRender(e)}},t.prototype.prepareRender=function(e){for(var t=0,n=Object.keys(this._widgets);t<n.length;t++){var i=n[t];this._widgets[i].prepareRender(e)}},t.prototype.render=function(e){for(var t=0,n=Object.keys(this._widgets);t<n.length;t++){var i=n[t];this._widgets[i].render(e)}},t}(og),AC=function(){function e(e,t,n){this._context=e,this._viewDomNode=t,this._actual=n,this.domNode=Ff(this._actual.getDomNode()),this.id=this._actual.getId(),this.allowEditorOverflow=this._actual.allowEditorOverflow||!1,this.suppressMouseDown=this._actual.suppressMouseDown||!1;var i=this._context.configuration.options,o=i.get(107);this._fixedOverflowWidgets=i.get(29),this._contentWidth=o.contentWidth,this._contentLeft=o.contentLeft,this._lineHeight=i.get(49),this._range=null,this._viewRange=null,this._preference=[],this._cachedDomNodeClientWidth=-1,this._cachedDomNodeClientHeight=-1,this._maxWidth=this._getMaxWidth(),this._isVisible=!1,this._renderData=null,this.domNode.setPosition(this._fixedOverflowWidgets&&this.allowEditorOverflow?"fixed":"absolute"),this.domNode.setVisibility("hidden"),this.domNode.setAttribute("widgetId",this.id),this.domNode.setMaxWidth(this._maxWidth)}return e.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options;if(this._lineHeight=t.get(49),e.hasChanged(107)){var n=t.get(107);this._contentLeft=n.contentLeft,this._contentWidth=n.contentWidth,this._maxWidth=this._getMaxWidth()}},e.prototype.onLineMappingChanged=function(e){this._setPosition(this._range)},e.prototype._setPosition=function(e){if(this._range=e,this._viewRange=null,this._range){var t=this._context.model.validateModelRange(this._range);(this._context.model.coordinatesConverter.modelPositionIsVisible(t.getStartPosition())||this._context.model.coordinatesConverter.modelPositionIsVisible(t.getEndPosition()))&&(this._viewRange=this._context.model.coordinatesConverter.convertModelRangeToViewRange(t))}},e.prototype._getMaxWidth=function(){return this.allowEditorOverflow?window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth:this._contentWidth},e.prototype.setPosition=function(e,t){this._setPosition(e),this._preference=t,this._cachedDomNodeClientWidth=-1,this._cachedDomNodeClientHeight=-1},e.prototype._layoutBoxInViewport=function(e,t,n,i,o){var r=e.top,s=r,a=t.top+this._lineHeight,u=r-i,l=s>=i,c=a,d=o.viewportHeight-a>=i,h=e.left,p=t.left;return h+n>o.scrollLeft+o.viewportWidth&&(h=o.scrollLeft+o.viewportWidth-n),p+n>o.scrollLeft+o.viewportWidth&&(p=o.scrollLeft+o.viewportWidth-n),h<o.scrollLeft&&(h=o.scrollLeft),p<o.scrollLeft&&(p=o.scrollLeft),{fitsAbove:l,aboveTop:u,aboveLeft:h,fitsBelow:d,belowTop:c,belowLeft:p}},e.prototype._layoutHorizontalSegmentInPage=function(e,t,n,i){var o,r=Math.max(0,t.left-i),s=Math.min(t.left+t.width+i,e.width),a=t.left+n-Mo.scrollX;a+i>s&&(a-=o=a-(s-i),n-=o);a<r&&(a-=o=a-r,n-=o);return[n,a]},e.prototype._layoutBoxInPage=function(e,t,n,i,o){var r=e.top-i,s=t.top+this._lineHeight,a=Oo(this._viewDomNode.domNode),u=a.top+r-Mo.scrollY,l=a.top+s-Mo.scrollY,c=function(e){if(e!==document.body)return new Eo(e.clientWidth,e.clientHeight);if(C&&window.visualViewport){var t=window.visualViewport.width,n=window.visualViewport.height-(Yn?24:0);return new Eo(t,n)}if(window.innerWidth&&window.innerHeight)return new Eo(window.innerWidth,window.innerHeight);if(document.body&&document.body.clientWidth&&document.body.clientHeight)return new Eo(document.body.clientWidth,document.body.clientHeight);if(document.documentElement&&document.documentElement.clientWidth&&document.documentElement.clientHeight)return new Eo(document.documentElement.clientWidth,document.documentElement.clientHeight);throw new Error("Unable to figure out browser width and height")}(document.body),d=this._layoutHorizontalSegmentInPage(c,a,e.left-o.scrollLeft+this._contentLeft,n),h=d[0],p=d[1],f=this._layoutHorizontalSegmentInPage(c,a,t.left-o.scrollLeft+this._contentLeft,n),g=f[0],m=f[1],v=u>=22,_=l+i<=c.height-22;return this._fixedOverflowWidgets?{fitsAbove:v,aboveTop:Math.max(u,22),aboveLeft:p,fitsBelow:_,belowTop:l,belowLeft:m}:{fitsAbove:v,aboveTop:Math.max(r,22),aboveLeft:h,fitsBelow:_,belowTop:s,belowLeft:g}},e.prototype._prepareRenderWidgetAtExactPositionOverflowing=function(e){return new PC(e.top,e.left+this._contentLeft)},e.prototype._getTopAndBottomLeft=function(e){if(!this._viewRange)return[null,null];var t=e.linesVisibleRangesForRange(this._viewRange,!1);if(!t||0===t.length)return[null,null];for(var n=t[0],i=t[0],o=0,r=t;o<r.length;o++){var s=r[o];s.lineNumber<n.lineNumber&&(n=s),s.lineNumber>i.lineNumber&&(i=s)}for(var a=1073741824,u=0,l=n.ranges;u<l.length;u++){(p=l[u]).left<a&&(a=p.left)}for(var c=1073741824,d=0,h=i.ranges;d<h.length;d++){var p;(p=h[d]).left<c&&(c=p.left)}var f=e.getVerticalOffsetForLineNumber(n.lineNumber)-e.scrollTop,g=new PC(f,a),m=e.getVerticalOffsetForLineNumber(i.lineNumber)-e.scrollTop;return[g,new PC(m,c)]},e.prototype._prepareRenderWidget=function(e){var t,n=this._getTopAndBottomLeft(e),i=n[0],o=n[1];if(!i||!o)return null;if(-1===this._cachedDomNodeClientWidth||-1===this._cachedDomNodeClientHeight){var r=this.domNode.domNode;this._cachedDomNodeClientWidth=r.clientWidth,this._cachedDomNodeClientHeight=r.clientHeight}if(t=this.allowEditorOverflow?this._layoutBoxInPage(i,o,this._cachedDomNodeClientWidth,this._cachedDomNodeClientHeight,e):this._layoutBoxInViewport(i,o,this._cachedDomNodeClientWidth,this._cachedDomNodeClientHeight,e),this._preference)for(var s=1;s<=2;s++)for(var a=0,u=this._preference;a<u.length;a++){var l=u[a];if(1===l){if(!t)return null;if(2===s||t.fitsAbove)return new PC(t.aboveTop,t.aboveLeft)}else{if(2!==l)return this.allowEditorOverflow?this._prepareRenderWidgetAtExactPositionOverflowing(i):i;if(!t)return null;if(2===s||t.fitsBelow)return new PC(t.belowTop,t.belowLeft)}}return null},e.prototype.onBeforeRender=function(e){this._viewRange&&this._preference&&(this._viewRange.endLineNumber<e.startLineNumber||this._viewRange.startLineNumber>e.endLineNumber||this.domNode.setMaxWidth(this._maxWidth))},e.prototype.prepareRender=function(e){this._renderData=this._prepareRenderWidget(e)},e.prototype.render=function(e){this._renderData?(this.allowEditorOverflow?(this.domNode.setTop(this._renderData.top),this.domNode.setLeft(this._renderData.left)):(this.domNode.setTop(this._renderData.top+e.scrollTop-e.bigNumbersDelta),this.domNode.setLeft(this._renderData.left)),this._isVisible||(this.domNode.setVisibility("inherit"),this.domNode.setAttribute("monaco-visible-content-widget","true"),this._isVisible=!0)):this._isVisible&&(this.domNode.removeAttribute("monaco-visible-content-widget"),this._isVisible=!1,this.domNode.setVisibility("hidden"))},e}(),FC=(n(375),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),WC=!0,VC=function(e){function t(t){var n=e.call(this)||this;n._context=t;var i=n._context.configuration.options,o=i.get(107);return n._lineHeight=i.get(49),n._renderLineHighlight=i.get(72),n._contentLeft=o.contentLeft,n._contentWidth=o.contentWidth,n._selectionIsEmpty=!0,n._cursorLineNumbers=[],n._selections=[],n._renderData=null,n._context.addEventHandler(n),n}return FC(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),e.prototype.dispose.call(this)},t.prototype._readFromSelections=function(){var e=!1,t=WC?this._selections.slice(0,1):this._selections,n=t.map((function(e){return e.positionLineNumber}));n.sort((function(e,t){return e-t})),xi(this._cursorLineNumbers,n)||(this._cursorLineNumbers=n,e=!0);var i=t.every((function(e){return e.isEmpty()}));return this._selectionIsEmpty!==i&&(this._selectionIsEmpty=i,e=!0),e},t.prototype.onThemeChanged=function(e){return this._readFromSelections()},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options,n=t.get(107);return this._lineHeight=t.get(49),this._renderLineHighlight=t.get(72),this._contentLeft=n.contentLeft,this._contentWidth=n.contentWidth,!0},t.prototype.onCursorStateChanged=function(e){return this._selections=e.selections,this._readFromSelections()},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollWidthChanged||e.scrollTopChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype.prepareRender=function(e){if(this._shouldRenderThis()){for(var t=this._renderOne(e),n=e.visibleRange.startLineNumber,i=e.visibleRange.endLineNumber,o=this._cursorLineNumbers.length,r=0,s=[],a=n;a<=i;a++){for(var u=a-n;r<o&&this._cursorLineNumbers[r]<a;)r++;r<o&&this._cursorLineNumbers[r]===a?s[u]=t:s[u]=""}this._renderData=s}else this._renderData=null},t.prototype.render=function(e,t){if(!this._renderData)return"";var n=t-e;return n>=this._renderData.length?"":this._renderData[n]},t}(S_),BC=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return FC(t,e),t.prototype._renderOne=function(e){return'<div class="'+("current-line"+(this._shouldRenderOther()?" current-line-both":""))+'" style="width:'+Math.max(e.scrollWidth,this._contentWidth)+"px; height:"+this._lineHeight+'px;"></div>'},t.prototype._shouldRenderThis=function(){return("line"===this._renderLineHighlight||"all"===this._renderLineHighlight)&&this._selectionIsEmpty},t.prototype._shouldRenderOther=function(){return"gutter"===this._renderLineHighlight||"all"===this._renderLineHighlight},t}(VC),HC=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return FC(t,e),t.prototype._renderOne=function(e){return'<div class="'+("current-line current-line-margin"+(this._shouldRenderOther()?" current-line-margin-both":""))+'" style="width:'+this._contentLeft+"px; height:"+this._lineHeight+'px;"></div>'},t.prototype._shouldRenderThis=function(){return"gutter"===this._renderLineHighlight||"all"===this._renderLineHighlight},t.prototype._shouldRenderOther=function(){return("line"===this._renderLineHighlight||"all"===this._renderLineHighlight)&&this._selectionIsEmpty},t}(VC);yg((function(e,t){WC=!1;var n=e.getColor(Ab);if(n&&(t.addRule(".monaco-editor .view-overlays .current-line { background-color: "+n+"; }"),t.addRule(".monaco-editor .margin-view-overlays .current-line-margin { background-color: "+n+"; border: none; }")),!n||n.isTransparent()||e.defines(Fb)){var i=e.getColor(Fb);i&&(WC=!0,t.addRule(".monaco-editor .view-overlays .current-line { border: 2px solid "+i+"; }"),t.addRule(".monaco-editor .margin-view-overlays .current-line-margin { border: 2px solid "+i+"; }"),"hc"===e.type&&(t.addRule(".monaco-editor .view-overlays .current-line { border-width: 1px; }"),t.addRule(".monaco-editor .margin-view-overlays .current-line-margin { border-width: 1px; }")))}}));n(376);var zC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),jC=function(e){function t(t){var n=e.call(this)||this;n._context=t;var i=n._context.configuration.options;return n._lineHeight=i.get(49),n._typicalHalfwidthCharacterWidth=i.get(34).typicalHalfwidthCharacterWidth,n._renderResult=null,n._context.addEventHandler(n),n}return zC(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),this._renderResult=null,e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options;return this._lineHeight=t.get(49),this._typicalHalfwidthCharacterWidth=t.get(34).typicalHalfwidthCharacterWidth,!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollTopChanged||e.scrollWidthChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype.prepareRender=function(e){for(var t=e.getDecorationsInViewport(),n=[],i=0,o=0,r=t.length;o<r;o++){var s=t[o];s.options.className&&(n[i++]=s)}n=n.sort((function(e,t){if(e.options.zIndex<t.options.zIndex)return-1;if(e.options.zIndex>t.options.zIndex)return 1;var n=e.options.className,i=t.options.className;return n<i?-1:n>i?1:wn.compareRangesUsingStarts(e.range,t.range)}));for(var a=e.visibleRange.startLineNumber,u=e.visibleRange.endLineNumber,l=[],c=a;c<=u;c++){l[c-a]=""}this._renderWholeLineDecorations(e,n,l),this._renderNormalDecorations(e,n,l),this._renderResult=l},t.prototype._renderWholeLineDecorations=function(e,t,n){for(var i=String(this._lineHeight),o=e.visibleRange.startLineNumber,r=e.visibleRange.endLineNumber,s=0,a=t.length;s<a;s++){var u=t[s];if(u.options.isWholeLine)for(var l='<div class="cdr '+u.options.className+'" style="left:0;width:100%;height:'+i+'px;"></div>',c=Math.max(u.range.startLineNumber,o),d=Math.min(u.range.endLineNumber,r),h=c;h<=d;h++){n[h-o]+=l}}},t.prototype._renderNormalDecorations=function(e,t,n){for(var i=String(this._lineHeight),o=e.visibleRange.startLineNumber,r=null,s=!1,a=null,u=0,l=t.length;u<l;u++){var c=t[u];if(!c.options.isWholeLine){var d=c.options.className,h=Boolean(c.options.showIfCollapsed),p=c.range;h&&1===p.endColumn&&p.endLineNumber!==p.startLineNumber&&(p=new wn(p.startLineNumber,p.startColumn,p.endLineNumber-1,this._context.model.getLineMaxColumn(p.endLineNumber-1))),r===d&&s===h&&wn.areIntersectingOrTouching(a,p)?a=wn.plusRange(a,p):(null!==r&&this._renderNormalDecoration(e,a,r,s,i,o,n),r=d,s=h,a=p)}}null!==r&&this._renderNormalDecoration(e,a,r,s,i,o,n)},t.prototype._renderNormalDecoration=function(e,t,n,i,o,r,s){var a=e.linesVisibleRangesForRange(t,"findMatch"===n);if(a)for(var u=0,l=a.length;u<l;u++){var c=a[u];if(!c.outsideRenderedLine){var d=c.lineNumber-r;if(i&&1===c.ranges.length){var h=c.ranges[0];0===h.width&&(c.ranges[0]=new lg(h.left,this._typicalHalfwidthCharacterWidth))}for(var p=0,f=c.ranges.length;p<f;p++){var g=c.ranges[p],m='<div class="cdr '+n+'" style="left:'+String(g.left)+"px;width:"+String(g.width)+"px;height:"+o+'px;"></div>';s[d]+=m}}}},t.prototype.render=function(e,t){if(!this._renderResult)return"";var n=t-e;return n<0||n>=this._renderResult.length?"":this._renderResult[n]},t}(S_),UC=(n(377),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),KC=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return UC(t,e),t.prototype.onclick=function(e,t){this._register(uo(e,qo.CLICK,(function(e){return t(new li(e))})))},t.prototype.onmousedown=function(e,t){this._register(uo(e,qo.MOUSE_DOWN,(function(e){return t(new li(e))})))},t.prototype.onmouseover=function(e,t){this._register(uo(e,qo.MOUSE_OVER,(function(e){return t(new li(e))})))},t.prototype.onnonbubblingmouseout=function(e,t){this._register(fo(e,(function(e){return t(new li(e))})))},t.prototype.onkeydown=function(e,t){this._register(uo(e,qo.KEY_DOWN,(function(e){return t(new ni(e))})))},t.prototype.onkeyup=function(e,t){this._register(uo(e,qo.KEY_UP,(function(e){return t(new ni(e))})))},t.prototype.oninput=function(e,t){this._register(uo(e,qo.INPUT,t))},t.prototype.onblur=function(e,t){this._register(uo(e,qo.BLUR,t))},t.prototype.onfocus=function(e,t){this._register(uo(e,qo.FOCUS,t))},t.prototype.ignoreGesture=function(e){jf.ignoreTarget(e)},t}(He),qC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),GC=function(e){function t(t){var n=e.call(this)||this;return n._onActivate=t.onActivate,n.bgDomNode=document.createElement("div"),n.bgDomNode.className="arrow-background",n.bgDomNode.style.position="absolute",n.bgDomNode.style.width=t.bgWidth+"px",n.bgDomNode.style.height=t.bgHeight+"px",void 0!==t.top&&(n.bgDomNode.style.top="0px"),void 0!==t.left&&(n.bgDomNode.style.left="0px"),void 0!==t.bottom&&(n.bgDomNode.style.bottom="0px"),void 0!==t.right&&(n.bgDomNode.style.right="0px"),n.domNode=document.createElement("div"),n.domNode.className=t.className,n.domNode.style.position="absolute",n.domNode.style.width="11px",n.domNode.style.height="11px",void 0!==t.top&&(n.domNode.style.top=t.top+"px"),void 0!==t.left&&(n.domNode.style.left=t.left+"px"),void 0!==t.bottom&&(n.domNode.style.bottom=t.bottom+"px"),void 0!==t.right&&(n.domNode.style.right=t.right+"px"),n._mouseMoveMonitor=n._register(new Kf),n.onmousedown(n.bgDomNode,(function(e){return n._arrowMouseDown(e)})),n.onmousedown(n.domNode,(function(e){return n._arrowMouseDown(e)})),n._mousedownRepeatTimer=n._register(new bi),n._mousedownScheduleRepeatTimer=n._register(new yi),n}return qC(t,e),t.prototype._arrowMouseDown=function(e){var t=this;this._onActivate(),this._mousedownRepeatTimer.cancel(),this._mousedownScheduleRepeatTimer.cancelAndSet((function(){t._mousedownRepeatTimer.cancelAndSet((function(){return t._onActivate()}),1e3/24)}),200),this._mouseMoveMonitor.startMonitoring(e.target,e.buttons,Uf,(function(e){}),(function(){t._mousedownRepeatTimer.cancel(),t._mousedownScheduleRepeatTimer.cancel()})),e.preventDefault()},t}(KC),ZC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),YC=function(e){function t(t,n,i){var o=e.call(this)||this;return o._visibility=t,o._visibleClassName=n,o._invisibleClassName=i,o._domNode=null,o._isVisible=!1,o._isNeeded=!1,o._shouldBeVisible=!1,o._revealTimer=o._register(new yi),o}return ZC(t,e),t.prototype.applyVisibilitySetting=function(e){return 2!==this._visibility&&(3===this._visibility||e)},t.prototype.setShouldBeVisible=function(e){var t=this.applyVisibilitySetting(e);this._shouldBeVisible!==t&&(this._shouldBeVisible=t,this.ensureVisibility())},t.prototype.setIsNeeded=function(e){this._isNeeded!==e&&(this._isNeeded=e,this.ensureVisibility())},t.prototype.setDomNode=function(e){this._domNode=e,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)},t.prototype.ensureVisibility=function(){this._isNeeded?this._shouldBeVisible?this._reveal():this._hide(!0):this._hide(!1)},t.prototype._reveal=function(){var e=this;this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet((function(){e._domNode&&e._domNode.setClassName(e._visibleClassName)}),0))},t.prototype._hide=function(e){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode&&this._domNode.setClassName(this._invisibleClassName+(e?" fade":"")))},t}(He),XC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),$C=function(e){function t(t){var n=e.call(this)||this;return n._lazyRender=t.lazyRender,n._host=t.host,n._scrollable=t.scrollable,n._scrollbarState=t.scrollbarState,n._visibilityController=n._register(new YC(t.visibility,"visible scrollbar "+t.extraScrollbarClassName,"invisible scrollbar "+t.extraScrollbarClassName)),n._visibilityController.setIsNeeded(n._scrollbarState.isNeeded()),n._mouseMoveMonitor=n._register(new Kf),n._shouldRender=!0,n.domNode=Ff(document.createElement("div")),n.domNode.setAttribute("role","presentation"),n.domNode.setAttribute("aria-hidden","true"),n._visibilityController.setDomNode(n.domNode),n.domNode.setPosition("absolute"),n.onmousedown(n.domNode.domNode,(function(e){return n._domNodeMouseDown(e)})),n}return XC(t,e),t.prototype._createArrow=function(e){var t=this._register(new GC(e));this.domNode.domNode.appendChild(t.bgDomNode),this.domNode.domNode.appendChild(t.domNode)},t.prototype._createSlider=function(e,t,n,i){var o=this;this.slider=Ff(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(e),this.slider.setLeft(t),"number"==typeof n&&this.slider.setWidth(n),"number"==typeof i&&this.slider.setHeight(i),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this.onmousedown(this.slider.domNode,(function(e){e.leftButton&&(e.preventDefault(),o._sliderMouseDown(e,(function(){})))})),this.onclick(this.slider.domNode,(function(e){e.leftButton&&e.stopPropagation()}))},t.prototype._onElementSize=function(e){return this._scrollbarState.setVisibleSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender},t.prototype._onElementScrollSize=function(e){return this._scrollbarState.setScrollSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender},t.prototype._onElementScrollPosition=function(e){return this._scrollbarState.setScrollPosition(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender},t.prototype.beginReveal=function(){this._visibilityController.setShouldBeVisible(!0)},t.prototype.beginHide=function(){this._visibilityController.setShouldBeVisible(!1)},t.prototype.render=function(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))},t.prototype._domNodeMouseDown=function(e){e.target===this.domNode.domNode&&this._onMouseDown(e)},t.prototype.delegateMouseDown=function(e){var t=this.domNode.domNode.getClientRects()[0].top,n=t+this._scrollbarState.getSliderPosition(),i=t+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),o=this._sliderMousePosition(e);n<=o&&o<=i?e.leftButton&&(e.preventDefault(),this._sliderMouseDown(e,(function(){}))):this._onMouseDown(e)},t.prototype._onMouseDown=function(e){var t,n;if(e.target===this.domNode.domNode&&"number"==typeof e.browserEvent.offsetX&&"number"==typeof e.browserEvent.offsetY)t=e.browserEvent.offsetX,n=e.browserEvent.offsetY;else{var i=Oo(this.domNode.domNode);t=e.posx-i.left,n=e.posy-i.top}this._setDesiredScrollPositionNow(this._scrollbarState.getDesiredScrollPositionFromOffset(this._mouseDownRelativePosition(t,n))),e.leftButton&&(e.preventDefault(),this._sliderMouseDown(e,(function(){})))},t.prototype._sliderMouseDown=function(e,t){var n=this,i=this._sliderMousePosition(e),o=this._sliderOrthogonalMousePosition(e),r=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._mouseMoveMonitor.startMonitoring(e.target,e.buttons,Uf,(function(e){var t=n._sliderOrthogonalMousePosition(e),s=Math.abs(t-o);if(v&&s>140)n._setDesiredScrollPositionNow(r.getScrollPosition());else{var a=n._sliderMousePosition(e)-i;n._setDesiredScrollPositionNow(r.getDesiredScrollPositionFromDelta(a))}}),(function(){n.slider.toggleClassName("active",!1),n._host.onDragEnd(),t()})),this._host.onDragStart()},t.prototype._setDesiredScrollPositionNow=function(e){var t={};this.writeScrollPosition(t,e),this._scrollable.setScrollPositionNow(t)},t}(KC),QC=function(){function e(e,t,n,i,o,r){this._scrollbarSize=Math.round(t),this._oppositeScrollbarSize=Math.round(n),this._arrowSize=Math.round(e),this._visibleSize=i,this._scrollSize=o,this._scrollPosition=r,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}return e.prototype.clone=function(){return new e(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)},e.prototype.setVisibleSize=function(e){var t=Math.round(e);return this._visibleSize!==t&&(this._visibleSize=t,this._refreshComputedValues(),!0)},e.prototype.setScrollSize=function(e){var t=Math.round(e);return this._scrollSize!==t&&(this._scrollSize=t,this._refreshComputedValues(),!0)},e.prototype.setScrollPosition=function(e){var t=Math.round(e);return this._scrollPosition!==t&&(this._scrollPosition=t,this._refreshComputedValues(),!0)},e._computeValues=function(e,t,n,i,o){var r=Math.max(0,n-e),s=Math.max(0,r-2*t),a=i>0&&i>n;if(!a)return{computedAvailableSize:Math.round(r),computedIsNeeded:a,computedSliderSize:Math.round(s),computedSliderRatio:0,computedSliderPosition:0};var u=Math.round(Math.max(20,Math.floor(n*s/i))),l=(s-u)/(i-n),c=o*l;return{computedAvailableSize:Math.round(r),computedIsNeeded:a,computedSliderSize:Math.round(u),computedSliderRatio:l,computedSliderPosition:Math.round(c)}},e.prototype._refreshComputedValues=function(){var t=e._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=t.computedAvailableSize,this._computedIsNeeded=t.computedIsNeeded,this._computedSliderSize=t.computedSliderSize,this._computedSliderRatio=t.computedSliderRatio,this._computedSliderPosition=t.computedSliderPosition},e.prototype.getArrowSize=function(){return this._arrowSize},e.prototype.getScrollPosition=function(){return this._scrollPosition},e.prototype.getRectangleLargeSize=function(){return this._computedAvailableSize},e.prototype.getRectangleSmallSize=function(){return this._scrollbarSize},e.prototype.isNeeded=function(){return this._computedIsNeeded},e.prototype.getSliderSize=function(){return this._computedSliderSize},e.prototype.getSliderPosition=function(){return this._computedSliderPosition},e.prototype.getDesiredScrollPositionFromOffset=function(e){if(!this._computedIsNeeded)return 0;var t=e-this._arrowSize-this._computedSliderSize/2;return Math.round(t/this._computedSliderRatio)},e.prototype.getDesiredScrollPositionFromDelta=function(e){if(!this._computedIsNeeded)return 0;var t=this._computedSliderPosition+e;return Math.round(t/this._computedSliderRatio)},e}(),JC=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),eS=function(e){function t(t,n,i){var o=this,r=t.getScrollDimensions(),s=t.getCurrentScrollPosition();if(o=e.call(this,{lazyRender:n.lazyRender,host:i,scrollbarState:new QC(n.horizontalHasArrows?n.arrowSize:0,2===n.horizontal?0:n.horizontalScrollbarSize,2===n.vertical?0:n.verticalScrollbarSize,r.width,r.scrollWidth,s.scrollLeft),visibility:n.horizontal,extraScrollbarClassName:"horizontal",scrollable:t})||this,n.horizontalHasArrows){var a=(n.arrowSize-11)/2,u=(n.horizontalScrollbarSize-11)/2;o._createArrow({className:"left-arrow",top:u,left:a,bottom:void 0,right:void 0,bgWidth:n.arrowSize,bgHeight:n.horizontalScrollbarSize,onActivate:function(){return o._host.onMouseWheel(new di(null,1,0))}}),o._createArrow({className:"right-arrow",top:u,left:void 0,bottom:void 0,right:a,bgWidth:n.arrowSize,bgHeight:n.horizontalScrollbarSize,onActivate:function(){return o._host.onMouseWheel(new di(null,-1,0))}})}return o._createSlider(Math.floor((n.horizontalScrollbarSize-n.horizontalSliderSize)/2),0,void 0,n.horizontalSliderSize),o}return JC(t,e),t.prototype._updateSlider=function(e,t){this.slider.setWidth(e),this.slider.setLeft(t)},t.prototype._renderDomNode=function(e,t){this.domNode.setWidth(e),this.domNode.setHeight(t),this.domNode.setLeft(0),this.domNode.setBottom(0)},t.prototype.onDidScroll=function(e){return this._shouldRender=this._onElementScrollSize(e.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(e.width)||this._shouldRender,this._shouldRender},t.prototype._mouseDownRelativePosition=function(e,t){return e},t.prototype._sliderMousePosition=function(e){return e.posx},t.prototype._sliderOrthogonalMousePosition=function(e){return e.posy},t.prototype.writeScrollPosition=function(e,t){e.scrollLeft=t},t}($C),tS=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),nS=function(e){function t(t,n,i){var o=this,r=t.getScrollDimensions(),s=t.getCurrentScrollPosition();if(o=e.call(this,{lazyRender:n.lazyRender,host:i,scrollbarState:new QC(n.verticalHasArrows?n.arrowSize:0,2===n.vertical?0:n.verticalScrollbarSize,0,r.height,r.scrollHeight,s.scrollTop),visibility:n.vertical,extraScrollbarClassName:"vertical",scrollable:t})||this,n.verticalHasArrows){var a=(n.arrowSize-11)/2,u=(n.verticalScrollbarSize-11)/2;o._createArrow({className:"up-arrow",top:a,left:u,bottom:void 0,right:void 0,bgWidth:n.verticalScrollbarSize,bgHeight:n.arrowSize,onActivate:function(){return o._host.onMouseWheel(new di(null,0,1))}}),o._createArrow({className:"down-arrow",top:void 0,left:u,bottom:a,right:void 0,bgWidth:n.verticalScrollbarSize,bgHeight:n.arrowSize,onActivate:function(){return o._host.onMouseWheel(new di(null,0,-1))}})}return o._createSlider(0,Math.floor((n.verticalScrollbarSize-n.verticalSliderSize)/2),n.verticalSliderSize,void 0),o}return tS(t,e),t.prototype._updateSlider=function(e,t){this.slider.setHeight(e),this.slider.setTop(t)},t.prototype._renderDomNode=function(e,t){this.domNode.setWidth(t),this.domNode.setHeight(e),this.domNode.setRight(0),this.domNode.setTop(0)},t.prototype.onDidScroll=function(e){return this._shouldRender=this._onElementScrollSize(e.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(e.height)||this._shouldRender,this._shouldRender},t.prototype._mouseDownRelativePosition=function(e,t){return t},t.prototype._sliderMousePosition=function(e){return e.posy},t.prototype._sliderOrthogonalMousePosition=function(e){return e.posx},t.prototype.writeScrollPosition=function(e,t){e.scrollTop=t},t}($C),iS=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),oS=function(){function e(e,t,n,i,o,r){(e|=0)<0&&(e=0),(n|=0)+e>(t|=0)&&(n=t-e),n<0&&(n=0),(i|=0)<0&&(i=0),(r|=0)+i>(o|=0)&&(r=o-i),r<0&&(r=0),this.width=e,this.scrollWidth=t,this.scrollLeft=n,this.height=i,this.scrollHeight=o,this.scrollTop=r}return e.prototype.equals=function(e){return this.width===e.width&&this.scrollWidth===e.scrollWidth&&this.scrollLeft===e.scrollLeft&&this.height===e.height&&this.scrollHeight===e.scrollHeight&&this.scrollTop===e.scrollTop},e.prototype.withScrollDimensions=function(t){return new e(void 0!==t.width?t.width:this.width,void 0!==t.scrollWidth?t.scrollWidth:this.scrollWidth,this.scrollLeft,void 0!==t.height?t.height:this.height,void 0!==t.scrollHeight?t.scrollHeight:this.scrollHeight,this.scrollTop)},e.prototype.withScrollPosition=function(t){return new e(this.width,this.scrollWidth,void 0!==t.scrollLeft?t.scrollLeft:this.scrollLeft,this.height,this.scrollHeight,void 0!==t.scrollTop?t.scrollTop:this.scrollTop)},e.prototype.createScrollEvent=function(e){var t=this.width!==e.width,n=this.scrollWidth!==e.scrollWidth,i=this.scrollLeft!==e.scrollLeft,o=this.height!==e.height,r=this.scrollHeight!==e.scrollHeight,s=this.scrollTop!==e.scrollTop;return{width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:t,scrollWidthChanged:n,scrollLeftChanged:i,heightChanged:o,scrollHeightChanged:r,scrollTopChanged:s}},e}(),rS=function(e){function t(t,n){var i=e.call(this)||this;return i._onScroll=i._register(new nt),i.onScroll=i._onScroll.event,i._smoothScrollDuration=t,i._scheduleAtNextAnimationFrame=n,i._state=new oS(0,0,0,0,0,0),i._smoothScrolling=null,i}return iS(t,e),t.prototype.dispose=function(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),e.prototype.dispose.call(this)},t.prototype.setSmoothScrollDuration=function(e){this._smoothScrollDuration=e},t.prototype.validateScrollPosition=function(e){return this._state.withScrollPosition(e)},t.prototype.getScrollDimensions=function(){return this._state},t.prototype.setScrollDimensions=function(e){var t=this._state.withScrollDimensions(e);this._setState(t),this._smoothScrolling&&this._smoothScrolling.acceptScrollDimensions(this._state)},t.prototype.getFutureScrollPosition=function(){return this._smoothScrolling?this._smoothScrolling.to:this._state},t.prototype.getCurrentScrollPosition=function(){return this._state},t.prototype.setScrollPositionNow=function(e){var t=this._state.withScrollPosition(e);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(t)},t.prototype.setScrollPositionSmooth=function(e){var t=this;if(0===this._smoothScrollDuration)return this.setScrollPositionNow(e);if(this._smoothScrolling){e={scrollLeft:void 0===e.scrollLeft?this._smoothScrolling.to.scrollLeft:e.scrollLeft,scrollTop:void 0===e.scrollTop?this._smoothScrolling.to.scrollTop:e.scrollTop};var n=this._state.withScrollPosition(e);if(this._smoothScrolling.to.scrollLeft===n.scrollLeft&&this._smoothScrolling.to.scrollTop===n.scrollTop)return;var i=this._smoothScrolling.combine(this._state,n,this._smoothScrollDuration);this._smoothScrolling.dispose(),this._smoothScrolling=i}else{n=this._state.withScrollPosition(e);this._smoothScrolling=uS.start(this._state,n,this._smoothScrollDuration)}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame((function(){t._smoothScrolling&&(t._smoothScrolling.animationFrameDisposable=null,t._performSmoothScrolling())}))},t.prototype._performSmoothScrolling=function(){var e=this;if(this._smoothScrolling){var t=this._smoothScrolling.tick(),n=this._state.withScrollPosition(t);if(this._setState(n),t.isDone)return this._smoothScrolling.dispose(),void(this._smoothScrolling=null);this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame((function(){e._smoothScrolling&&(e._smoothScrolling.animationFrameDisposable=null,e._performSmoothScrolling())}))}},t.prototype._setState=function(e){var t=this._state;t.equals(e)||(this._state=e,this._onScroll.fire(this._state.createScrollEvent(t)))},t}(He),sS=function(e,t,n){this.scrollLeft=e,this.scrollTop=t,this.isDone=n};function aS(e,t){var n=t-e;return function(t){return e+n*(1-function(e){return Math.pow(e,3)}(1-t))}}var uS=function(){function e(e,t,n,i){this.from=e,this.to=t,this.duration=i,this._startTime=n,this.animationFrameDisposable=null,this._initAnimations()}return e.prototype._initAnimations=function(){this.scrollLeft=this._initAnimation(this.from.scrollLeft,this.to.scrollLeft,this.to.width),this.scrollTop=this._initAnimation(this.from.scrollTop,this.to.scrollTop,this.to.height)},e.prototype._initAnimation=function(e,t,n){var i,o,r;if(Math.abs(e-t)>2.5*n){var s=void 0,a=void 0;return e<t?(s=e+.75*n,a=t-.75*n):(s=e-.75*n,a=t+.75*n),i=aS(e,s),o=aS(a,t),r=.33,function(e){return e<r?i(e/r):o((e-r)/(1-r))}}return aS(e,t)},e.prototype.dispose=function(){null!==this.animationFrameDisposable&&(this.animationFrameDisposable.dispose(),this.animationFrameDisposable=null)},e.prototype.acceptScrollDimensions=function(e){this.to=e.withScrollPosition(this.to),this._initAnimations()},e.prototype.tick=function(){return this._tick(Date.now())},e.prototype._tick=function(e){var t=(e-this._startTime)/this.duration;if(t<1){var n=this.scrollLeft(t),i=this.scrollTop(t);return new sS(n,i,!1)}return new sS(this.to.scrollLeft,this.to.scrollTop,!0)},e.prototype.combine=function(t,n,i){return e.start(t,n,i)},e.start=function(t,n,i){return i+=10,new e(t,n,Date.now()-10,i)},e}();var lS=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),cS=function(e,t,n){this.timestamp=e,this.deltaX=t,this.deltaY=n,this.score=0},dS=function(){function e(){this._capacity=5,this._memory=[],this._front=-1,this._rear=-1}return e.prototype.isPhysicalMouseWheel=function(){if(-1===this._front&&-1===this._rear)return!1;for(var e=1,t=0,n=1,i=this._rear;;){var o=i===this._front?e:Math.pow(2,-n);if(e-=o,t+=this._memory[i].score*o,i===this._front)break;i=(this._capacity+i-1)%this._capacity,n++}return t<=.5},e.prototype.accept=function(e,t,n){var i=new cS(e,t,n);i.score=this._computeScore(i),-1===this._front&&-1===this._rear?(this._memory[0]=i,this._front=0,this._rear=0):(this._rear=(this._rear+1)%this._capacity,this._rear===this._front&&(this._front=(this._front+1)%this._capacity),this._memory[this._rear]=i)},e.prototype._computeScore=function(e){if(Math.abs(e.deltaX)>0&&Math.abs(e.deltaY)>0)return 1;var t=.5;-1===this._front&&-1===this._rear||this._memory[this._rear];return(Math.abs(e.deltaX-Math.round(e.deltaX))>0||Math.abs(e.deltaY-Math.round(e.deltaY))>0)&&(t+=.25),Math.min(Math.max(t,0),1)},e.INSTANCE=new e,e}(),hS=function(e){function t(t,n,i){var o=e.call(this)||this;o._onScroll=o._register(new nt),o.onScroll=o._onScroll.event,t.style.overflow="hidden",o._options=mS(n),o._scrollable=i,o._register(o._scrollable.onScroll((function(e){o._onDidScroll(e),o._onScroll.fire(e)})));var r={onMouseWheel:function(e){return o._onMouseWheel(e)},onDragStart:function(){return o._onDragStart()},onDragEnd:function(){return o._onDragEnd()}};return o._verticalScrollbar=o._register(new nS(o._scrollable,o._options,r)),o._horizontalScrollbar=o._register(new eS(o._scrollable,o._options,r)),o._domNode=document.createElement("div"),o._domNode.className="monaco-scrollable-element "+o._options.className,o._domNode.setAttribute("role","presentation"),o._domNode.style.position="relative",o._domNode.style.overflow="hidden",o._domNode.appendChild(t),o._domNode.appendChild(o._horizontalScrollbar.domNode.domNode),o._domNode.appendChild(o._verticalScrollbar.domNode.domNode),o._options.useShadows?(o._leftShadowDomNode=Ff(document.createElement("div")),o._leftShadowDomNode.setClassName("shadow"),o._domNode.appendChild(o._leftShadowDomNode.domNode),o._topShadowDomNode=Ff(document.createElement("div")),o._topShadowDomNode.setClassName("shadow"),o._domNode.appendChild(o._topShadowDomNode.domNode),o._topLeftShadowDomNode=Ff(document.createElement("div")),o._topLeftShadowDomNode.setClassName("shadow top-left-corner"),o._domNode.appendChild(o._topLeftShadowDomNode.domNode)):(o._leftShadowDomNode=null,o._topShadowDomNode=null,o._topLeftShadowDomNode=null),o._listenOnDomNode=o._options.listenOnDomNode||o._domNode,o._mouseWheelToDispose=[],o._setListeningToMouseWheel(o._options.handleMouseWheel),o.onmouseover(o._listenOnDomNode,(function(e){return o._onMouseOver(e)})),o.onnonbubblingmouseout(o._listenOnDomNode,(function(e){return o._onMouseOut(e)})),o._hideTimeout=o._register(new yi),o._isDragging=!1,o._mouseIsOver=!1,o._shouldRender=!0,o._revealOnScroll=!0,o}return lS(t,e),t.prototype.dispose=function(){this._mouseWheelToDispose=Ae(this._mouseWheelToDispose),e.prototype.dispose.call(this)},t.prototype.getDomNode=function(){return this._domNode},t.prototype.getOverviewRulerLayoutInfo=function(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}},t.prototype.delegateVerticalScrollbarMouseDown=function(e){this._verticalScrollbar.delegateMouseDown(e)},t.prototype.getScrollDimensions=function(){return this._scrollable.getScrollDimensions()},t.prototype.setScrollDimensions=function(e){this._scrollable.setScrollDimensions(e)},t.prototype.updateClassName=function(e){this._options.className=e,_&&(this._options.className+=" mac"),this._domNode.className="monaco-scrollable-element "+this._options.className},t.prototype.updateOptions=function(e){var t=mS(e);this._options.handleMouseWheel=t.handleMouseWheel,this._options.mouseWheelScrollSensitivity=t.mouseWheelScrollSensitivity,this._options.fastScrollSensitivity=t.fastScrollSensitivity,this._setListeningToMouseWheel(this._options.handleMouseWheel),this._options.lazyRender||this._render()},t.prototype._setListeningToMouseWheel=function(e){var t=this;if(this._mouseWheelToDispose.length>0!==e&&(this._mouseWheelToDispose=Ae(this._mouseWheelToDispose),e)){this._mouseWheelToDispose.push(uo(this._listenOnDomNode,Hn?"mousewheel":"wheel",(function(e){t._onMouseWheel(new di(e))}),{passive:!1}))}},t.prototype._onMouseWheel=function(e){var t,n=dS.INSTANCE;if(n.accept(Date.now(),e.deltaX,e.deltaY),e.deltaY||e.deltaX){var i=e.deltaY*this._options.mouseWheelScrollSensitivity,o=e.deltaX*this._options.mouseWheelScrollSensitivity;this._options.flipAxes&&(i=(t=[o,i])[0],o=t[1]);var r=!_&&e.browserEvent&&e.browserEvent.shiftKey;!this._options.scrollYToX&&!r||o||(o=i,i=0),e.browserEvent&&e.browserEvent.altKey&&(o*=this._options.fastScrollSensitivity,i*=this._options.fastScrollSensitivity);var s=this._scrollable.getFutureScrollPosition(),a={};if(i){var u=s.scrollTop-50*i;this._verticalScrollbar.writeScrollPosition(a,u)}if(o){var l=s.scrollLeft-50*o;this._horizontalScrollbar.writeScrollPosition(a,l)}if(a=this._scrollable.validateScrollPosition(a),s.scrollLeft!==a.scrollLeft||s.scrollTop!==a.scrollTop)this._options.mouseWheelSmoothScroll&&n.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(a):this._scrollable.setScrollPositionNow(a),this._shouldRender=!0}(this._options.alwaysConsumeMouseWheel||this._shouldRender)&&(e.preventDefault(),e.stopPropagation())},t.prototype._onDidScroll=function(e){this._shouldRender=this._horizontalScrollbar.onDidScroll(e)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(e)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()},t.prototype.renderNow=function(){if(!this._options.lazyRender)throw new Error("Please use `lazyRender` together with `renderNow`!");this._render()},t.prototype._render=function(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){var e=this._scrollable.getCurrentScrollPosition(),t=e.scrollTop>0,n=e.scrollLeft>0;this._leftShadowDomNode.setClassName("shadow"+(n?" left":"")),this._topShadowDomNode.setClassName("shadow"+(t?" top":"")),this._topLeftShadowDomNode.setClassName("shadow top-left-corner"+(t?" top":"")+(n?" left":""))}},t.prototype._onDragStart=function(){this._isDragging=!0,this._reveal()},t.prototype._onDragEnd=function(){this._isDragging=!1,this._hide()},t.prototype._onMouseOut=function(e){this._mouseIsOver=!1,this._hide()},t.prototype._onMouseOver=function(e){this._mouseIsOver=!0,this._reveal()},t.prototype._reveal=function(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()},t.prototype._hide=function(){this._mouseIsOver||this._isDragging||(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())},t.prototype._scheduleHide=function(){var e=this;this._mouseIsOver||this._isDragging||this._hideTimeout.cancelAndSet((function(){return e._hide()}),500)},t}(KC),pS=function(e){function t(t,n){var i=this;(n=n||{}).mouseWheelSmoothScroll=!1;var o=new rS(0,(function(e){return mo(e)}));return(i=e.call(this,t,n,o)||this)._register(o),i}return lS(t,e),t.prototype.setScrollPosition=function(e){this._scrollable.setScrollPositionNow(e)},t.prototype.getScrollPosition=function(){return this._scrollable.getCurrentScrollPosition()},t}(hS),fS=function(e){function t(t,n,i){return e.call(this,t,n,i)||this}return lS(t,e),t}(hS),gS=function(e){function t(t,n){var i=e.call(this,t,n)||this;return i._element=t,i.onScroll((function(e){e.scrollTopChanged&&(i._element.scrollTop=e.scrollTop),e.scrollLeftChanged&&(i._element.scrollLeft=e.scrollLeft)})),i.scanDomNode(),i}return lS(t,e),t.prototype.scanDomNode=function(){this.setScrollDimensions({width:this._element.clientWidth,scrollWidth:this._element.scrollWidth,height:this._element.clientHeight,scrollHeight:this._element.scrollHeight}),this.setScrollPosition({scrollLeft:this._element.scrollLeft,scrollTop:this._element.scrollTop})},t}(pS);function mS(e){var t={lazyRender:void 0!==e.lazyRender&&e.lazyRender,className:void 0!==e.className?e.className:"",useShadows:void 0===e.useShadows||e.useShadows,handleMouseWheel:void 0===e.handleMouseWheel||e.handleMouseWheel,flipAxes:void 0!==e.flipAxes&&e.flipAxes,alwaysConsumeMouseWheel:void 0!==e.alwaysConsumeMouseWheel&&e.alwaysConsumeMouseWheel,scrollYToX:void 0!==e.scrollYToX&&e.scrollYToX,mouseWheelScrollSensitivity:void 0!==e.mouseWheelScrollSensitivity?e.mouseWheelScrollSensitivity:1,fastScrollSensitivity:void 0!==e.fastScrollSensitivity?e.fastScrollSensitivity:5,mouseWheelSmoothScroll:void 0===e.mouseWheelSmoothScroll||e.mouseWheelSmoothScroll,arrowSize:void 0!==e.arrowSize?e.arrowSize:11,listenOnDomNode:void 0!==e.listenOnDomNode?e.listenOnDomNode:null,horizontal:void 0!==e.horizontal?e.horizontal:1,horizontalScrollbarSize:void 0!==e.horizontalScrollbarSize?e.horizontalScrollbarSize:10,horizontalSliderSize:void 0!==e.horizontalSliderSize?e.horizontalSliderSize:0,horizontalHasArrows:void 0!==e.horizontalHasArrows&&e.horizontalHasArrows,vertical:void 0!==e.vertical?e.vertical:1,verticalScrollbarSize:void 0!==e.verticalScrollbarSize?e.verticalScrollbarSize:10,verticalHasArrows:void 0!==e.verticalHasArrows&&e.verticalHasArrows,verticalSliderSize:void 0!==e.verticalSliderSize?e.verticalSliderSize:0};return t.horizontalSliderSize=void 0!==e.horizontalSliderSize?e.horizontalSliderSize:t.horizontalScrollbarSize,t.verticalSliderSize=void 0!==e.verticalSliderSize?e.verticalSliderSize:t.verticalScrollbarSize,_&&(t.className+=" mac"),t}var vS=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),_S=function(e){function t(t,n,i,o){var r=e.call(this,t)||this,s=r._context.configuration.options,a=s.get(78),u=s.get(56),l=s.get(27),c={listenOnDomNode:i.domNode,className:"editor-scrollable "+mg(t.theme.type),useShadows:!1,lazyRender:!0,vertical:a.vertical,horizontal:a.horizontal,verticalHasArrows:a.verticalHasArrows,horizontalHasArrows:a.horizontalHasArrows,verticalScrollbarSize:a.verticalScrollbarSize,verticalSliderSize:a.verticalSliderSize,horizontalScrollbarSize:a.horizontalScrollbarSize,horizontalSliderSize:a.horizontalSliderSize,handleMouseWheel:a.handleMouseWheel,alwaysConsumeMouseWheel:a.alwaysConsumeMouseWheel,arrowSize:a.arrowSize,mouseWheelScrollSensitivity:u,fastScrollSensitivity:l};r.scrollbar=r._register(new fS(n.domNode,c,r._context.viewLayout.getScrollable())),rg.write(r.scrollbar.getDomNode(),5),r.scrollbarDomNode=Ff(r.scrollbar.getDomNode()),r.scrollbarDomNode.setPosition("absolute"),r._setLayout();var d=function(e,t,n){var i={};if(t){var o=e.scrollTop;o&&(i.scrollTop=r._context.viewLayout.getCurrentScrollTop()+o,e.scrollTop=0)}if(n){var s=e.scrollLeft;s&&(i.scrollLeft=r._context.viewLayout.getCurrentScrollLeft()+s,e.scrollLeft=0)}r._context.viewLayout.setScrollPositionNow(i)};return r._register(uo(i.domNode,"scroll",(function(e){return d(i.domNode,!0,!0)}))),r._register(uo(n.domNode,"scroll",(function(e){return d(n.domNode,!0,!1)}))),r._register(uo(o.domNode,"scroll",(function(e){return d(o.domNode,!0,!1)}))),r._register(uo(r.scrollbarDomNode.domNode,"scroll",(function(e){return d(r.scrollbarDomNode.domNode,!0,!1)}))),r}return vS(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._setLayout=function(){var e=this._context.configuration.options,t=e.get(107);this.scrollbarDomNode.setLeft(t.contentLeft),"right"===e.get(54).side?this.scrollbarDomNode.setWidth(t.contentWidth+t.minimapWidth):this.scrollbarDomNode.setWidth(t.contentWidth),this.scrollbarDomNode.setHeight(t.height)},t.prototype.getOverviewRulerLayoutInfo=function(){return this.scrollbar.getOverviewRulerLayoutInfo()},t.prototype.getDomNode=function(){return this.scrollbarDomNode},t.prototype.delegateVerticalScrollbarMouseDown=function(e){this.scrollbar.delegateVerticalScrollbarMouseDown(e)},t.prototype.onConfigurationChanged=function(e){if(e.hasChanged(78)||e.hasChanged(56)||e.hasChanged(27)){var t=this._context.configuration.options,n=t.get(78),i=t.get(56),o=t.get(27),r={handleMouseWheel:n.handleMouseWheel,mouseWheelScrollSensitivity:i,fastScrollSensitivity:o};this.scrollbar.updateOptions(r)}return e.hasChanged(107)&&this._setLayout(),!0},t.prototype.onScrollChanged=function(e){return!0},t.prototype.onThemeChanged=function(e){return this.scrollbar.updateClassName("editor-scrollable "+mg(this._context.theme.type)),!0},t.prototype.prepareRender=function(e){},t.prototype.render=function(e){this.scrollbar.renderNow()},t}(og),yS=(n(378),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),bS=function(e,t,n){this.startLineNumber=+e,this.endLineNumber=+t,this.className=String(n)},wS=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return yS(t,e),t.prototype._render=function(e,t,n){for(var i=[],o=e;o<=t;o++){i[o-e]=[]}if(0===n.length)return i;n.sort((function(e,t){return e.className===t.className?e.startLineNumber===t.startLineNumber?e.endLineNumber-t.endLineNumber:e.startLineNumber-t.startLineNumber:e.className<t.className?-1:1}));for(var r=null,s=0,a=0,u=n.length;a<u;a++){var l=n[a],c=l.className,d=Math.max(l.startLineNumber,e)-e,h=Math.min(l.endLineNumber,t)-e;r===c?(d=Math.max(s+1,d),s=Math.max(s,h)):(r=c,s=h);for(var p=d;p<=s;p++)i[p].push(r)}return i},t}(S_),CS=function(e){function t(t){var n=e.call(this)||this;n._context=t;var i=n._context.configuration.options,o=i.get(107);return n._lineHeight=i.get(49),n._glyphMargin=i.get(40),n._glyphMarginLeft=o.glyphMarginLeft,n._glyphMarginWidth=o.glyphMarginWidth,n._renderResult=null,n._context.addEventHandler(n),n}return yS(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),this._renderResult=null,e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options,n=t.get(107);return this._lineHeight=t.get(49),this._glyphMargin=t.get(40),this._glyphMarginLeft=n.glyphMarginLeft,this._glyphMarginWidth=n.glyphMarginWidth,!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollTopChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype._getDecorations=function(e){for(var t=e.getDecorationsInViewport(),n=[],i=0,o=0,r=t.length;o<r;o++){var s=t[o],a=s.options.glyphMarginClassName;a&&(n[i++]=new bS(s.range.startLineNumber,s.range.endLineNumber,a))}return n},t.prototype.prepareRender=function(e){if(this._glyphMargin){for(var t=e.visibleRange.startLineNumber,n=e.visibleRange.endLineNumber,i=this._render(t,n,this._getDecorations(e)),o=this._lineHeight.toString(),r='" style="left:'+this._glyphMarginLeft.toString()+"px;width:"+this._glyphMarginWidth.toString()+"px;height:"+o+'px;"></div>',s=[],a=t;a<=n;a++){var u=a-t,l=i[u];0===l.length?s[u]="":s[u]='<div class="cgmr codicon '+l.join(" ")+r}this._renderResult=s}else this._renderResult=null},t.prototype.render=function(e,t){if(!this._renderResult)return"";var n=t-e;return n<0||n>=this._renderResult.length?"":this._renderResult[n]},t}(wS),SS=(n(379),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),LS=function(e){function t(t){var n=e.call(this)||this;n._context=t,n._primaryLineNumber=0;var i=n._context.configuration.options,o=i.get(108),r=i.get(34);return n._lineHeight=i.get(49),n._spaceWidth=r.spaceWidth,n._enabled=i.get(70),n._activeIndentEnabled=i.get(43),n._maxIndentLeft=-1===o.wrappingColumn?-1:o.wrappingColumn*r.typicalHalfwidthCharacterWidth,n._renderResult=null,n._context.addEventHandler(n),n}return SS(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),this._renderResult=null,e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options,n=t.get(108),i=t.get(34);return this._lineHeight=t.get(49),this._spaceWidth=i.spaceWidth,this._enabled=t.get(70),this._activeIndentEnabled=t.get(43),this._maxIndentLeft=-1===n.wrappingColumn?-1:n.wrappingColumn*i.typicalHalfwidthCharacterWidth,!0},t.prototype.onCursorStateChanged=function(e){var t=e.selections[0],n=t.isEmpty()?t.positionLineNumber:0;return this._primaryLineNumber!==n&&(this._primaryLineNumber=n,!0)},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollTopChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype.onLanguageConfigurationChanged=function(e){return!0},t.prototype.prepareRender=function(e){if(this._enabled){var t=e.visibleRange.startLineNumber,n=e.visibleRange.endLineNumber,i=this._context.model.getOptions().indentSize*this._spaceWidth,o=e.scrollWidth,r=this._lineHeight,s=this._context.model.getLinesIndentGuides(t,n),a=0,u=0,l=0;if(this._activeIndentEnabled&&this._primaryLineNumber){var c=this._context.model.getActiveIndentGuide(this._primaryLineNumber,t,n);a=c.startLineNumber,u=c.endLineNumber,l=c.indent}for(var d=[],h=t;h<=n;h++){var p=a<=h&&h<=u,f=h-t,g=s[f],m="";if(g>=1)for(var v=e.visibleRangeForPosition(new bn(h,1)),_=v?v.left:0,y=1;y<=g;y++){if(m+='<div class="'+(p&&y===l?"cigra":"cigr")+'" style="left:'+_+"px;height:"+r+"px;width:"+i+'px"></div>',(_+=i)>o||this._maxIndentLeft>0&&_>this._maxIndentLeft)break}d[f]=m}this._renderResult=d}else this._renderResult=null},t.prototype.render=function(e,t){if(!this._renderResult)return"";var n=t-e;return n<0||n>=this._renderResult.length?"":this._renderResult[n]},t}(S_);yg((function(e,t){var n=e.getColor(Kb);n&&t.addRule(".monaco-editor .lines-content .cigr { box-shadow: 1px 0 0 0 "+n+" inset; }");var i=e.getColor(qb)||n;i&&t.addRule(".monaco-editor .lines-content .cigra { box-shadow: 1px 0 0 0 "+i+" inset; }")}));n(380);var xS=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),DS=function(){function e(){this._currentVisibleRange=new wn(1,1,1,1)}return e.prototype.getCurrentVisibleRange=function(){return this._currentVisibleRange},e.prototype.setCurrentVisibleRange=function(e){this._currentVisibleRange=e},e}(),NS=function(e,t,n,i,o,r){this.lineNumber=e,this.startColumn=t,this.endColumn=n,this.startScrollTop=i,this.stopScrollTop=o,this.scrollType=r},kS=function(e){function t(t,n){var i=e.call(this,t)||this;i._linesContent=n,i._textRangeRestingSpot=document.createElement("div"),i._visibleLines=new DC(i),i.domNode=i._visibleLines.domNode;var o=i._context.configuration,r=i._context.configuration.options,s=r.get(34),a=r.get(108);return i._lineHeight=r.get(49),i._typicalHalfwidthCharacterWidth=s.typicalHalfwidthCharacterWidth,i._isViewportWrapping=a.isViewportWrapping,i._revealHorizontalRightPadding=r.get(75),i._cursorSurroundingLines=r.get(19),i._cursorSurroundingLinesStyle=r.get(20),i._canUseLayerHinting=!r.get(22),i._viewLineOptions=new Lg(o,i._context.theme.type),rg.write(i.domNode,7),i.domNode.setClassName("view-lines"),af.applyFontInfo(i.domNode,s),i._maxLineWidth=0,i._asyncUpdateLineWidths=new wi((function(){i._updateLineWidthsSlow()}),200),i._lastRenderedData=new DS,i._horizontalRevealRequest=null,i}return xS(t,e),t.prototype.dispose=function(){this._asyncUpdateLineWidths.dispose(),e.prototype.dispose.call(this)},t.prototype.getDomNode=function(){return this.domNode},t.prototype.createVisibleLine=function(){return new xg(this._viewLineOptions)},t.prototype.onConfigurationChanged=function(e){this._visibleLines.onConfigurationChanged(e),e.hasChanged(108)&&(this._maxLineWidth=0);var t=this._context.configuration.options,n=t.get(34),i=t.get(108);return this._lineHeight=t.get(49),this._typicalHalfwidthCharacterWidth=n.typicalHalfwidthCharacterWidth,this._isViewportWrapping=i.isViewportWrapping,this._revealHorizontalRightPadding=t.get(75),this._cursorSurroundingLines=t.get(19),this._cursorSurroundingLinesStyle=t.get(20),this._canUseLayerHinting=!t.get(22),af.applyFontInfo(this.domNode,n),this._onOptionsMaybeChanged(),e.hasChanged(107)&&(this._maxLineWidth=0),!0},t.prototype._onOptionsMaybeChanged=function(){var e=this._context.configuration,t=new Lg(e,this._context.theme.type);if(!this._viewLineOptions.equals(t)){this._viewLineOptions=t;for(var n=this._visibleLines.getStartLineNumber(),i=this._visibleLines.getEndLineNumber(),o=n;o<=i;o++){this._visibleLines.getVisibleLine(o).onOptionsChanged(this._viewLineOptions)}return!0}return!1},t.prototype.onCursorStateChanged=function(e){for(var t=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber(),i=!1,o=t;o<=n;o++)i=this._visibleLines.getVisibleLine(o).onSelectionChanged()||i;return i},t.prototype.onDecorationsChanged=function(e){for(var t=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber(),i=t;i<=n;i++)this._visibleLines.getVisibleLine(i).onDecorationsChanged();return!0},t.prototype.onFlushed=function(e){var t=this._visibleLines.onFlushed(e);return this._maxLineWidth=0,t},t.prototype.onLinesChanged=function(e){return this._visibleLines.onLinesChanged(e)},t.prototype.onLinesDeleted=function(e){return this._visibleLines.onLinesDeleted(e)},t.prototype.onLinesInserted=function(e){return this._visibleLines.onLinesInserted(e)},t.prototype.onRevealRangeRequest=function(e){var t=this._computeScrollTopToRevealRange(this._context.viewLayout.getFutureViewport(),e.source,e.range,e.verticalType),n=this._context.viewLayout.validateScrollPosition({scrollTop:t});e.revealHorizontal?e.range.startLineNumber!==e.range.endLineNumber?n={scrollTop:n.scrollTop,scrollLeft:0}:this._horizontalRevealRequest=new NS(e.range.startLineNumber,e.range.startColumn,e.range.endColumn,this._context.viewLayout.getCurrentScrollTop(),n.scrollTop,e.scrollType):this._horizontalRevealRequest=null;var i=Math.abs(this._context.viewLayout.getCurrentScrollTop()-n.scrollTop);return 0===e.scrollType&&i>this._lineHeight?this._context.viewLayout.setScrollPositionSmooth(n):this._context.viewLayout.setScrollPositionNow(n),!0},t.prototype.onScrollChanged=function(e){if(this._horizontalRevealRequest&&e.scrollLeftChanged&&(this._horizontalRevealRequest=null),this._horizontalRevealRequest&&e.scrollTopChanged){var t=Math.min(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop),n=Math.max(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop);(e.scrollTop<t||e.scrollTop>n)&&(this._horizontalRevealRequest=null)}return this.domNode.setWidth(e.scrollWidth),this._visibleLines.onScrollChanged(e)||!0},t.prototype.onTokensChanged=function(e){return this._visibleLines.onTokensChanged(e)},t.prototype.onZonesChanged=function(e){return this._context.viewLayout.onMaxLineWidthChanged(this._maxLineWidth),this._visibleLines.onZonesChanged(e)},t.prototype.onThemeChanged=function(e){return this._onOptionsMaybeChanged()},t.prototype.getPositionFromDOMInfo=function(e,t){var n=this._getViewLineDomNode(e);if(null===n)return null;var i=this._getLineNumberFor(n);if(-1===i)return null;if(i<1||i>this._context.model.getLineCount())return null;if(1===this._context.model.getLineMaxColumn(i))return new bn(i,1);var o=this._visibleLines.getStartLineNumber(),r=this._visibleLines.getEndLineNumber();if(i<o||i>r)return null;var s=this._visibleLines.getVisibleLine(i).getColumnOfNodeOffset(i,e,t),a=this._context.model.getLineMinColumn(i);return s<a&&(s=a),new bn(i,s)},t.prototype._getViewLineDomNode=function(e){for(;e&&1===e.nodeType;){if(e.className===xg.CLASS_NAME)return e;e=e.parentElement}return null},t.prototype._getLineNumberFor=function(e){for(var t=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber(),i=t;i<=n;i++){if(e===this._visibleLines.getVisibleLine(i).getDomNode())return i}return-1},t.prototype.getLineWidth=function(e){var t=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber();return e<t||e>n?-1:this._visibleLines.getVisibleLine(e).getWidth()},t.prototype.linesVisibleRangesForRange=function(e,t){if(this.shouldRender())return null;var n=e.endLineNumber,i=wn.intersectRanges(e,this._lastRenderedData.getCurrentVisibleRange());if(!i)return null;var o=[],r=0,s=new Sg(this.domNode.domNode,this._textRangeRestingSpot),a=0;t&&(a=this._context.model.coordinatesConverter.convertViewPositionToModelPosition(new bn(i.startLineNumber,1)).lineNumber);for(var u=this._visibleLines.getStartLineNumber(),l=this._visibleLines.getEndLineNumber(),c=i.startLineNumber;c<=i.endLineNumber;c++)if(!(c<u||c>l)){var d=c===i.startLineNumber?i.startColumn:1,h=c===i.endLineNumber?i.endColumn:this._context.model.getLineMaxColumn(c),p=this._visibleLines.getVisibleLine(c).getVisibleRangesForRange(d,h,s);if(p){if(t&&c<n)a!==(a=this._context.model.coordinatesConverter.convertViewPositionToModelPosition(new bn(c+1,1)).lineNumber)&&(p.ranges[p.ranges.length-1].width+=this._typicalHalfwidthCharacterWidth);o[r++]=new ug(p.outsideRenderedLine,c,p.ranges)}}return 0===r?null:o},t.prototype._visibleRangesForLineRange=function(e,t,n){return this.shouldRender()||e<this._visibleLines.getStartLineNumber()||e>this._visibleLines.getEndLineNumber()?null:this._visibleLines.getVisibleLine(e).getVisibleRangesForRange(t,n,new Sg(this.domNode.domNode,this._textRangeRestingSpot))},t.prototype.visibleRangeForPosition=function(e){var t=this._visibleRangesForLineRange(e.lineNumber,e.column,e.column);return t?new cg(t.outsideRenderedLine,t.ranges[0].left):null},t.prototype.updateLineWidths=function(){this._updateLineWidths(!1)},t.prototype._updateLineWidthsFast=function(){return this._updateLineWidths(!0)},t.prototype._updateLineWidthsSlow=function(){this._updateLineWidths(!1)},t.prototype._updateLineWidths=function(e){for(var t=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber(),i=1,o=!0,r=t;r<=n;r++){var s=this._visibleLines.getVisibleLine(r);!e||s.getWidthIsFast()?i=Math.max(i,s.getWidth()):o=!1}return o&&1===t&&n===this._context.model.getLineCount()&&(this._maxLineWidth=0),this._ensureMaxLineWidth(i),o},t.prototype.prepareRender=function(){throw new Error("Not supported")},t.prototype.render=function(){throw new Error("Not supported")},t.prototype.renderText=function(e){if(this._visibleLines.renderLines(e),this._lastRenderedData.setCurrentVisibleRange(e.visibleRange),this.domNode.setWidth(this._context.viewLayout.getScrollWidth()),this.domNode.setHeight(Math.min(this._context.viewLayout.getScrollHeight(),1e6)),this._horizontalRevealRequest){var t=this._horizontalRevealRequest.lineNumber,n=this._horizontalRevealRequest.startColumn,i=this._horizontalRevealRequest.endColumn,o=this._horizontalRevealRequest.scrollType;if(e.startLineNumber<=t&&t<=e.endLineNumber){this._horizontalRevealRequest=null,this.onDidRender();var r=this._computeScrollLeftToRevealRange(t,n,i);this._isViewportWrapping||this._ensureMaxLineWidth(r.maxHorizontalOffset),0===o?this._context.viewLayout.setScrollPositionSmooth({scrollLeft:r.scrollLeft}):this._context.viewLayout.setScrollPositionNow({scrollLeft:r.scrollLeft})}}this._updateLineWidthsFast()||this._asyncUpdateLineWidths.schedule(),this._linesContent.setLayerHinting(this._canUseLayerHinting),this._linesContent.setContain("strict");var s=this._context.viewLayout.getCurrentScrollTop()-e.bigNumbersDelta;this._linesContent.setTop(-s),this._linesContent.setLeft(-this._context.viewLayout.getCurrentScrollLeft())},t.prototype._ensureMaxLineWidth=function(e){var t=Math.ceil(e);this._maxLineWidth<t&&(this._maxLineWidth=t,this._context.viewLayout.onMaxLineWidthChanged(this._maxLineWidth))},t.prototype._computeScrollTopToRevealRange=function(e,t,n,i){var o,r,s,a=e.top,u=e.height,l=a+u;if(o=this._context.viewLayout.getVerticalOffsetForLineNumber(n.startLineNumber),r=this._context.viewLayout.getVerticalOffsetForLineNumber(n.endLineNumber)+this._lineHeight,!("mouse"===t&&"default"===this._cursorSurroundingLinesStyle)){var c=Math.min(u/this._lineHeight/2,this._cursorSurroundingLines);o-=c*this._lineHeight,r+=Math.max(0,c-1)*this._lineHeight}if(0!==i&&4!==i||(r+=this._lineHeight),r-o>u)s=o;else if(1===i||2===i)if(2===i&&a<=o&&r<=l)s=a;else{var d=(o+r)/2;s=Math.max(0,d-u/2)}else s=this._computeMinimumScrolling(a,l,o,r,3===i,4===i);return s},t.prototype._computeScrollLeftToRevealRange=function(e,n,i){var o=0,r=this._context.viewLayout.getCurrentViewport(),s=r.left,a=s+r.width,u=this._visibleRangesForLineRange(e,n,i),l=1073741824,c=0;if(!u)return{scrollLeft:s,maxHorizontalOffset:o};for(var d=0,h=u.ranges;d<h.length;d++){var p=h[d];p.left<l&&(l=p.left),p.left+p.width>c&&(c=p.left+p.width)}return o=c,l=Math.max(0,l-t.HORIZONTAL_EXTRA_PX),c+=this._revealHorizontalRightPadding,{scrollLeft:this._computeMinimumScrolling(s,a,l,c),maxHorizontalOffset:o}},t.prototype._computeMinimumScrolling=function(e,t,n,i,o,r){o=!!o,r=!!r;var s=(t|=0)-(e|=0);return(i|=0)-(n|=0)<s?o?n:r?Math.max(0,i-s):n<e?n:i>t?Math.max(0,i-s):e:n},t.HORIZONTAL_EXTRA_PX=30,t}(og),ES=(n(381),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),IS=function(e){function t(t){var n=e.call(this)||this;n._context=t;var i=n._context.configuration.options.get(107);return n._decorationsLeft=i.decorationsLeft,n._decorationsWidth=i.decorationsWidth,n._renderResult=null,n._context.addEventHandler(n),n}return ES(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),this._renderResult=null,e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options.get(107);return this._decorationsLeft=t.decorationsLeft,this._decorationsWidth=t.decorationsWidth,!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollTopChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype._getDecorations=function(e){for(var t=e.getDecorationsInViewport(),n=[],i=0,o=0,r=t.length;o<r;o++){var s=t[o],a=s.options.linesDecorationsClassName;a&&(n[i++]=new bS(s.range.startLineNumber,s.range.endLineNumber,a))}return n},t.prototype.prepareRender=function(e){for(var t=e.visibleRange.startLineNumber,n=e.visibleRange.endLineNumber,i=this._render(t,n,this._getDecorations(e)),o='" style="left:'+this._decorationsLeft.toString()+"px;width:"+this._decorationsWidth.toString()+'px;"></div>',r=[],s=t;s<=n;s++){for(var a=s-t,u=i[a],l="",c=0,d=u.length;c<d;c++)l+='<div class="cldr '+u[c]+o;r[a]=l}this._renderResult=r},t.prototype.render=function(e,t){return this._renderResult?this._renderResult[t-e]:""},t}(wS),OS=(n(382),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),MS=function(e){function t(t){var n=e.call(this)||this;return n._context=t,n._renderResult=null,n._context.addEventHandler(n),n}return OS(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),this._renderResult=null,e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){return!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollTopChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype._getDecorations=function(e){for(var t=e.getDecorationsInViewport(),n=[],i=0,o=0,r=t.length;o<r;o++){var s=t[o],a=s.options.marginClassName;a&&(n[i++]=new bS(s.range.startLineNumber,s.range.endLineNumber,a))}return n},t.prototype.prepareRender=function(e){for(var t=e.visibleRange.startLineNumber,n=e.visibleRange.endLineNumber,i=this._render(t,n,this._getDecorations(e)),o=[],r=t;r<=n;r++){for(var s=r-t,a=i[s],u="",l=0,c=a.length;l<c;l++)u+='<div class="cmdr '+a[l]+'" style=""></div>';o[s]=u}this._renderResult=o},t.prototype.render=function(e,t){return this._renderResult?this._renderResult[t-e]:""},t}(wS),TS=(n(383),function(){function e(t,n,i,o){this.r=e._clamp(t),this.g=e._clamp(n),this.b=e._clamp(i),this.a=e._clamp(o)}return e._clamp=function(e){return e<0?0:e>255?255:0|e},e.Empty=new e(0,0,0,0),e}()),PS=function(){function e(){var e=this;this._onDidChange=new nt,this.onDidChange=this._onDidChange.event,this._updateColorMap(),Yu.onDidChange((function(t){t.changedColorMap&&e._updateColorMap()}))}return e.getInstance=function(){return this._INSTANCE||(this._INSTANCE=new e),this._INSTANCE},e.prototype._updateColorMap=function(){var e=Yu.getColorMap();if(!e)return this._colors=[TS.Empty],void(this._backgroundIsLight=!0);this._colors=[TS.Empty];for(var t=1;t<e.length;t++){var n=e[t].rgba;this._colors[t]=new TS(n.r,n.g,n.b,Math.round(255*n.a))}var i=e[2].getRelativeLuminance();this._backgroundIsLight=i>=.5,this._onDidChange.fire(void 0)},e.prototype.getColor=function(e){return(e<1||e>=this._colors.length)&&(e=2),this._colors[e]},e.prototype.backgroundIsLight=function(){return this._backgroundIsLight},e._INSTANCE=null,e}(),RS=function(){for(var e=[],t=32;t<=126;t++)e.push(t);return e.push(65533),e}(),AS=function(){function e(t,n){this.scale=n,this.charDataNormal=e.soften(t,.8),this.charDataLight=e.soften(t,50/60)}return e.soften=function(e,t){for(var n=new Uint8ClampedArray(e.length),i=0,o=e.length;i<o;i++)n[i]=e[i]*t;return n},e.prototype.renderChar=function(e,t,n,i,o,r,s,a){var u=1*this.scale,l=2*this.scale;if(t+u>e.width||n+l>e.height)console.warn("bad render request outside image data");else for(var c=a?this.charDataLight:this.charDataNormal,d=function(e,t){return(e-=32)<0||e>96?t<=2?(e+96)%96:95:e}(i,s),h=4*e.width,p=r.r,f=r.g,g=r.b,m=o.r-p,v=o.g-f,_=o.b-g,y=e.data,b=d*u*l,w=n*h+4*t,C=0;C<l;C++){for(var S=w,L=0;L<u;L++){var x=c[b++]/255;y[S++]=p+m*x,y[S++]=f+v*x,y[S++]=g+_*x,S++}w+=h}},e.prototype.blockRenderChar=function(e,t,n,i,o,r){var s=1*this.scale,a=2*this.scale;if(t+s>e.width||n+a>e.height)console.warn("bad render request outside image data");else for(var u=4*e.width,l=o.r,c=o.g,d=o.b,h=l+.5*(i.r-l),p=c+.5*(i.g-c),f=d+.5*(i.b-d),g=e.data,m=n*u+4*t,v=0;v<a;v++){for(var _=m,y=0;y<s;y++)g[_++]=h,g[_++]=p,g[_++]=f,_++;m+=u}},e}(),FS={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},WS=function(e){for(var t=new Uint8ClampedArray(e.length/2),n=0;n<e.length;n+=2)t[n>>1]=FS[e[n]]<<4|15&FS[e[n+1]];return t},VS={1:Te((function(){return WS("0000511D6300CF609C709645A78432005642574171487021003C451900274D35D762755E8B629C5BA856AF57BA649530C167D1512A272A3F6038604460398526BCA2A968DB6F8957C768BE5FBE2FB467CF5D8D5B795DC7625B5DFF50DE64C466DB2FC47CD860A65E9A2EB96CB54CE06DA763AB2EA26860524D3763536601005116008177A8705E53AB738E6A982F88BAA35B5F5B626D9C636B449B737E5B7B678598869A662F6B5B8542706C704C80736A607578685B70594A49715A4522E792")})),2:Te((function(){return WS("000000000000000055394F383D2800008B8B1F210002000081B1CBCBCC820000847AAF6B9AAF2119BE08B8881AD60000A44FD07DCCF107015338130C00000000385972265F390B406E2437634B4B48031B12B8A0847000001E15B29A402F0000000000004B33460B00007A752C2A0000000000004D3900000084394B82013400ABA5CFC7AD9C0302A45A3E5A98AB000089A43382D97900008BA54AA087A70A0248A6A7AE6DBE0000BF6F94987EA40A01A06DCFA7A7A9030496C32F77891D0000A99FB1A0AFA80603B29AB9CA75930D010C0948354D3900000C0948354F37460D0028BE673D8400000000AF9D7B6E00002B007AA8933400007AA642675C2700007984CFB9C3985B768772A8A6B7B20000CAAECAAFC4B700009F94A6009F840009D09F9BA4CA9C0000CC8FC76DC87F0000C991C472A2000000A894A48CA7B501079BA2C9C69BA20000B19A5D3FA89000005CA6009DA2960901B0A7F0669FB200009D009E00B7890000DAD0F5D092820000D294D4C48BD10000B5A7A4A3B1A50402CAB6CBA6A2000000B5A7A4A3B1A8044FCDADD19D9CB00000B7778F7B8AAE0803C9AB5D3F5D3F00009EA09EA0BAB006039EA0989A8C7900009B9EF4D6B7C00000A9A7816CACA80000ABAC84705D3F000096DA635CDC8C00006F486F266F263D4784006124097B00374F6D2D6D2D6D4A3A95872322000000030000000000008D8939130000000000002E22A5C9CBC70600AB25C0B5C9B400061A2DB04CA67001082AA6BEBEBFC606002321DACBC19E03087AA08B6768380000282FBAC0B8CA7A88AD25BBA5A29900004C396C5894A6000040485A6E356E9442A32CD17EADA70000B4237923628600003E2DE9C1D7B500002F25BBA5A2990000231DB6AFB4A804023025C0B5CAB588062B2CBDBEC0C706882435A75CA20000002326BD6A82A908048B4B9A5A668000002423A09CB4BB060025259C9D8A7900001C1FCAB2C7C700002A2A9387ABA200002626A4A47D6E9D14333163A0C87500004B6F9C2D643A257049364936493647358A34438355497F1A0000A24C1D590000D38DFFBDD4CD3126")}))},BS=function(){function e(){}return e.create=function(t,n){return this.lastCreated&&t===this.lastCreated.scale&&n===this.lastFontFamily?this.lastCreated:(i=VS[t]?new AS(VS[t](),t):e.createFromSampleData(e.createSampleData(n).data,t),this.lastFontFamily=n,this.lastCreated=i,i);var i},e.createSampleData=function(e){var t=document.createElement("canvas"),n=t.getContext("2d");t.style.height="16px",t.height=16,t.width=960,t.style.width="960px",n.fillStyle="#ffffff",n.font="bold 16px "+e,n.textBaseline="middle";for(var i=0,o=0,r=RS;o<r.length;o++){var s=r[o];n.fillText(String.fromCharCode(s),i,8),i+=10}return n.getImageData(0,0,960,16)},e.createFromSampleData=function(t,n){if(61440!==t.length)throw new Error("Unexpected source in MinimapCharRenderer");var i=e._downsample(t,n);return new AS(i,n)},e._downsampleChar=function(e,t,n,i,o){for(var r=1*o,s=2*o,a=i,u=0,l=0;l<s;l++)for(var c=l/s*16,d=(l+1)/s*16,h=0;h<r;h++){for(var p=h/r*10,f=(h+1)/r*10,g=0,m=0,v=c;v<d;v++)for(var _=t+3840*Math.floor(v),y=1-(v-Math.floor(v)),b=p;b<f;b++){var w=1-(b-Math.floor(b)),C=_+4*Math.floor(b),S=w*y;m+=S,g+=e[C]*e[C+3]/255*S}var L=g/m;u=Math.max(u,L),n[a++]=L}return u},e._downsample=function(e,t){for(var n=2*t*1*t,i=96*n,o=new Uint8ClampedArray(i),r=0,s=0,a=0,u=0;u<96;u++)a=Math.max(a,this._downsampleChar(e,s,o,r,t)),r+=n,s+=40;if(a>0)for(var l=255/a,c=0;c<i;c++)o[c]*=l;return o},e}(),HS=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function zS(e,t){return 1===e?2*t:3*t}function jS(e,t){return 1*t}var US=function(){function e(e){var t=this,n=e.options,i=n.get(105),o=n.get(107),r=n.get(34);this.renderMinimap=0|o.renderMinimap,this.scrollBeyondLastLine=n.get(80);var s=n.get(54);this.showSlider=s.showSlider,this.fontScale=Math.round(s.scale*i),this.charRenderer=Te((function(){return BS.create(t.fontScale,r.fontFamily)})),this.pixelRatio=i,this.typicalHalfwidthCharacterWidth=r.typicalHalfwidthCharacterWidth,this.lineHeight=n.get(49),this.minimapLeft=o.minimapLeft,this.minimapWidth=o.minimapWidth,this.minimapHeight=o.height,this.canvasInnerWidth=Math.floor(i*this.minimapWidth),this.canvasInnerHeight=Math.floor(i*this.minimapHeight),this.canvasOuterWidth=this.canvasInnerWidth/i,this.canvasOuterHeight=this.canvasInnerHeight/i}return e.prototype.equals=function(e){return this.renderMinimap===e.renderMinimap&&this.scrollBeyondLastLine===e.scrollBeyondLastLine&&this.showSlider===e.showSlider&&this.pixelRatio===e.pixelRatio&&this.typicalHalfwidthCharacterWidth===e.typicalHalfwidthCharacterWidth&&this.lineHeight===e.lineHeight&&this.fontScale===e.fontScale&&this.minimapLeft===e.minimapLeft&&this.minimapWidth===e.minimapWidth&&this.minimapHeight===e.minimapHeight&&this.canvasInnerWidth===e.canvasInnerWidth&&this.canvasInnerHeight===e.canvasInnerHeight&&this.canvasOuterWidth===e.canvasOuterWidth&&this.canvasOuterHeight===e.canvasOuterHeight},e}(),KS=function(){function e(e,t,n,i,o,r,s){this.scrollTop=e,this.scrollHeight=t,this._computedSliderRatio=n,this.sliderTop=i,this.sliderHeight=o,this.startLineNumber=r,this.endLineNumber=s}return e.prototype.getDesiredScrollTopFromDelta=function(e){var t=this.sliderTop+e;return Math.round(t/this._computedSliderRatio)},e.prototype.getDesiredScrollTopFromTouchLocation=function(e){return Math.round((e-this.sliderHeight/2)/this._computedSliderRatio)},e.create=function(t,n,i,o,r,s,a,u,l){var c,d,h=t.pixelRatio,p=zS(t.renderMinimap,t.fontScale),f=Math.floor(t.canvasInnerHeight/p),g=t.lineHeight;if(r&&i!==s){var m=i-n+1;c=Math.floor(m*p/h)}else{var v=o/g;c=Math.floor(v*p/h)}d=t.scrollBeyondLastLine?(s-1)*p/h:Math.max(0,s*p/h-c);var _=(d=Math.min(t.minimapHeight-c,d))/(u-o),y=a*_,b=0;t.scrollBeyondLastLine&&(b=v=o/g);if(f>=s+b)return new e(a,u,_,y,c,w=1,s);var w=Math.max(1,Math.floor(n-y*h/p));return l&&l.scrollHeight===u&&(l.scrollTop>a&&(w=Math.min(w,l.startLineNumber)),l.scrollTop<a&&(w=Math.max(w,l.startLineNumber))),new e(a,u,_,y,c,w,Math.min(s,w+f-1))},e}(),qS=function(){function e(e){this.dy=e}return e.prototype.onContentChanged=function(){this.dy=-1},e.prototype.onTokensChanged=function(){this.dy=-1},e.INVALID=new e(-1),e}(),GS=function(){function e(e,t,n){this.renderedLayout=e,this._imageData=t,this._renderedLines=new xC((function(){return qS.INVALID})),this._renderedLines._set(e.startLineNumber,n)}return e.prototype.linesEquals=function(e){if(!this.scrollEquals(e))return!1;for(var t=this._renderedLines._get().lines,n=0,i=t.length;n<i;n++)if(-1===t[n].dy)return!1;return!0},e.prototype.scrollEquals=function(e){return this.renderedLayout.startLineNumber===e.startLineNumber&&this.renderedLayout.endLineNumber===e.endLineNumber},e.prototype._get=function(){var e=this._renderedLines._get();return{imageData:this._imageData,rendLineNumberStart:e.rendLineNumberStart,lines:e.lines}},e.prototype.onLinesChanged=function(e){return this._renderedLines.onLinesChanged(e.fromLineNumber,e.toLineNumber)},e.prototype.onLinesDeleted=function(e){this._renderedLines.onLinesDeleted(e.fromLineNumber,e.toLineNumber)},e.prototype.onLinesInserted=function(e){this._renderedLines.onLinesInserted(e.fromLineNumber,e.toLineNumber)},e.prototype.onTokensChanged=function(e){return this._renderedLines.onTokensChanged(e.ranges)},e}(),ZS=function(){function e(t,n,i,o){this._backgroundFillData=e._createBackgroundFillData(n,i,o),this._buffers=[t.createImageData(n,i),t.createImageData(n,i)],this._lastUsedBuffer=0}return e.prototype.getBuffer=function(){this._lastUsedBuffer=1-this._lastUsedBuffer;var e=this._buffers[this._lastUsedBuffer];return e.data.set(this._backgroundFillData),e},e._createBackgroundFillData=function(e,t,n){for(var i=n.r,o=n.g,r=n.b,s=new Uint8ClampedArray(e*t*4),a=0,u=0;u<t;u++)for(var l=0;l<e;l++)s[a]=i,s[a+1]=o,s[a+2]=r,s[a+3]=255,a+=4;return s},e}(),YS=function(e){function t(t){var n=e.call(this,t)||this;return n._selections=[],n._renderDecorations=!1,n._gestureInProgress=!1,n._options=new US(n._context.configuration),n._lastRenderData=null,n._buffers=null,n._selectionColor=n._context.theme.getColor(Sb),n._domNode=Ff(document.createElement("div")),rg.write(n._domNode,8),n._domNode.setClassName(n._getMinimapDomNodeClassName()),n._domNode.setPosition("absolute"),n._domNode.setAttribute("role","presentation"),n._domNode.setAttribute("aria-hidden","true"),n._shadow=Ff(document.createElement("div")),n._shadow.setClassName("minimap-shadow-hidden"),n._domNode.appendChild(n._shadow),n._canvas=Ff(document.createElement("canvas")),n._canvas.setPosition("absolute"),n._canvas.setLeft(0),n._domNode.appendChild(n._canvas),n._decorationsCanvas=Ff(document.createElement("canvas")),n._decorationsCanvas.setPosition("absolute"),n._decorationsCanvas.setClassName("minimap-decorations-layer"),n._decorationsCanvas.setLeft(0),n._domNode.appendChild(n._decorationsCanvas),n._slider=Ff(document.createElement("div")),n._slider.setPosition("absolute"),n._slider.setClassName("minimap-slider"),n._slider.setLayerHinting(!0),n._slider.setContain("strict"),n._domNode.appendChild(n._slider),n._sliderHorizontal=Ff(document.createElement("div")),n._sliderHorizontal.setPosition("absolute"),n._sliderHorizontal.setClassName("minimap-slider-horizontal"),n._slider.appendChild(n._sliderHorizontal),n._tokensColorTracker=PS.getInstance(),n._applyLayout(),n._mouseDownListener=co(n._domNode.domNode,"mousedown",(function(e){e.preventDefault();var t=n._options.renderMinimap;if(0!==t&&n._lastRenderData){var i=zS(t,n._options.fontScale),o=n._options.pixelRatio*e.browserEvent.offsetY,r=Math.floor(o/i)+n._lastRenderData.renderedLayout.startLineNumber;r=Math.min(r,n._context.model.getLineCount()),n._context.privateViewEventBus.emit(new Sw("mouse",new wn(r,1,r,1),1,!1,0))}})),n._sliderMouseMoveMonitor=new Kf,n._sliderMouseDownListener=co(n._slider.domNode,"mousedown",(function(e){if(e.preventDefault(),e.stopPropagation(),e.leftButton&&n._lastRenderData){var t=e.posy,i=e.posx,o=n._lastRenderData.renderedLayout;n._slider.toggleClassName("active",!0),n._sliderMouseMoveMonitor.startMonitoring(e.target,e.buttons,Uf,(function(e){var r=Math.abs(e.posx-i);if(v&&r>140)n._context.viewLayout.setScrollPositionNow({scrollTop:o.scrollTop});else{var s=e.posy-t;n._context.viewLayout.setScrollPositionNow({scrollTop:o.getDesiredScrollTopFromDelta(s)})}}),(function(){n._slider.toggleClassName("active",!1)}))}})),n._gestureDisposable=jf.addTarget(n._domNode.domNode),n._sliderTouchStartListener=uo(n._domNode.domNode,Bf.Start,(function(e){e.preventDefault(),e.stopPropagation(),n._lastRenderData&&(n._slider.toggleClassName("active",!0),n._gestureInProgress=!0,n.scrollDueToTouchEvent(e))})),n._sliderTouchMoveListener=co(n._domNode.domNode,Bf.Change,(function(e){e.preventDefault(),e.stopPropagation(),n._lastRenderData&&n._gestureInProgress&&n.scrollDueToTouchEvent(e)})),n._sliderTouchEndListener=co(n._domNode.domNode,Bf.End,(function(e){e.preventDefault(),e.stopPropagation(),n._gestureInProgress=!1,n._slider.toggleClassName("active",!1)})),n}return HS(t,e),t.prototype.scrollDueToTouchEvent=function(e){var t=this._domNode.domNode.getBoundingClientRect().top,n=this._lastRenderData.renderedLayout.getDesiredScrollTopFromTouchLocation(e.pageY-t);this._context.viewLayout.setScrollPositionNow({scrollTop:n})},t.prototype.dispose=function(){this._mouseDownListener.dispose(),this._sliderMouseMoveMonitor.dispose(),this._sliderMouseDownListener.dispose(),this._gestureDisposable.dispose(),this._sliderTouchStartListener.dispose(),this._sliderTouchMoveListener.dispose(),this._sliderTouchEndListener.dispose(),e.prototype.dispose.call(this)},t.prototype._getMinimapDomNodeClassName=function(){return"always"===this._options.showSlider?"minimap slider-always":"minimap slider-mouseover"},t.prototype.getDomNode=function(){return this._domNode},t.prototype._applyLayout=function(){this._domNode.setLeft(this._options.minimapLeft),this._domNode.setWidth(this._options.minimapWidth),this._domNode.setHeight(this._options.minimapHeight),this._shadow.setHeight(this._options.minimapHeight),this._canvas.setWidth(this._options.canvasOuterWidth),this._canvas.setHeight(this._options.canvasOuterHeight),this._canvas.domNode.width=this._options.canvasInnerWidth,this._canvas.domNode.height=this._options.canvasInnerHeight,this._decorationsCanvas.setWidth(this._options.canvasOuterWidth),this._decorationsCanvas.setHeight(this._options.canvasOuterHeight),this._decorationsCanvas.domNode.width=this._options.canvasInnerWidth,this._decorationsCanvas.domNode.height=this._options.canvasInnerHeight,this._slider.setWidth(this._options.minimapWidth)},t.prototype._getBuffer=function(){return this._buffers||this._options.canvasInnerWidth>0&&this._options.canvasInnerHeight>0&&(this._buffers=new ZS(this._canvas.domNode.getContext("2d"),this._options.canvasInnerWidth,this._options.canvasInnerHeight,this._tokensColorTracker.getColor(2))),this._buffers?this._buffers.getBuffer():null},t.prototype._onOptionsMaybeChanged=function(){var e=new US(this._context.configuration);return!this._options.equals(e)&&(this._options=e,this._lastRenderData=null,this._buffers=null,this._applyLayout(),this._domNode.setClassName(this._getMinimapDomNodeClassName()),!0)},t.prototype.onConfigurationChanged=function(e){return this._onOptionsMaybeChanged()},t.prototype.onCursorStateChanged=function(e){return this._selections=e.selections,this._renderDecorations=!0,!0},t.prototype.onFlushed=function(e){return this._lastRenderData=null,!0},t.prototype.onLinesChanged=function(e){return!!this._lastRenderData&&this._lastRenderData.onLinesChanged(e)},t.prototype.onLinesDeleted=function(e){return this._lastRenderData&&this._lastRenderData.onLinesDeleted(e),!0},t.prototype.onLinesInserted=function(e){return this._lastRenderData&&this._lastRenderData.onLinesInserted(e),!0},t.prototype.onScrollChanged=function(e){return this._renderDecorations=!0,!0},t.prototype.onTokensChanged=function(e){return!!this._lastRenderData&&this._lastRenderData.onTokensChanged(e)},t.prototype.onTokensColorsChanged=function(e){return this._lastRenderData=null,this._buffers=null,!0},t.prototype.onZonesChanged=function(e){return this._lastRenderData=null,!0},t.prototype.onDecorationsChanged=function(e){return this._renderDecorations=!0,!0},t.prototype.onThemeChanged=function(e){return this._context.model.invalidateMinimapColorCache(),this._selectionColor=this._context.theme.getColor(Sb),this._renderDecorations=!0,!0},t.prototype.prepareRender=function(e){},t.prototype.render=function(e){if(0===this._options.renderMinimap)return this._shadow.setClassName("minimap-shadow-hidden"),this._sliderHorizontal.setWidth(0),void this._sliderHorizontal.setHeight(0);e.scrollLeft+e.viewportWidth>=e.scrollWidth?this._shadow.setClassName("minimap-shadow-hidden"):this._shadow.setClassName("minimap-shadow-visible");var t=KS.create(this._options,e.visibleRange.startLineNumber,e.visibleRange.endLineNumber,e.viewportHeight,e.viewportData.whitespaceViewportData.length>0,this._context.model.getLineCount(),e.scrollTop,e.scrollHeight,this._lastRenderData?this._lastRenderData.renderedLayout:null);this._slider.setTop(t.sliderTop),this._slider.setHeight(t.sliderHeight);var n=e.scrollLeft/this._options.typicalHalfwidthCharacterWidth,i=Math.min(this._options.minimapWidth,Math.round(n*jS(this._options.renderMinimap,this._options.fontScale)/this._options.pixelRatio));this._sliderHorizontal.setLeft(i),this._sliderHorizontal.setWidth(this._options.minimapWidth-i),this._sliderHorizontal.setTop(0),this._sliderHorizontal.setHeight(t.sliderHeight),this.renderDecorations(t),this._lastRenderData=this.renderLines(t)},t.prototype.renderDecorations=function(e){if(this._renderDecorations){this._renderDecorations=!1;var t=this._context.model.getDecorationsInViewport(new wn(e.startLineNumber,1,e.endLineNumber,this._context.model.getLineMaxColumn(e.endLineNumber))),n=this._options,i=n.renderMinimap,o=n.canvasInnerWidth,r=n.canvasInnerHeight,s=zS(i,this._options.fontScale),a=jS(0,this._options.fontScale),u=this._context.model.getOptions().tabSize,l=this._decorationsCanvas.domNode.getContext("2d");l.clearRect(0,0,o,r);for(var c=new Map,d=0;d<this._selections.length;d++)for(var h=this._selections[d],p=h.startLineNumber;p<=h.endLineNumber;p++)this.renderDecorationOnLine(l,c,h,this._selectionColor,e,p,s,s,u,a);for(d=0;d<t.length;d++){var f=t[d];if(f.options.minimap){var g=f.options.minimap.getColor(this._context.theme);for(p=f.range.startLineNumber;p<=f.range.endLineNumber;p++)switch(f.options.minimap.position){case Ba.Inline:this.renderDecorationOnLine(l,c,f.range,g,e,p,s,s,u,a);continue;case Ba.Gutter:var m=(p-e.startLineNumber)*s;this.renderDecoration(l,g,2,m,2,s);continue}}}}},t.prototype.renderDecorationOnLine=function(e,t,n,i,o,r,s,a,u,l){var c=(r-o.startLineNumber)*a;if(!(c+s<0||c>this._options.canvasInnerHeight)){var d=t.get(r),h=!d;if(!d){var p=this._context.model.getLineContent(r);d=[8];for(var f=1;f<p.length+1;f++){var g=p.charCodeAt(f-1),m=9===g?u*l:jr(g)?2*l:l;d[f]=d[f-1]+m}t.set(r,d)}var v=n.startColumn,_=n.endColumn,y=n.startLineNumber,b=n.endLineNumber,w=y===r?d[v-1]:8,C=b>r?d.length-1:_-1;if(C>0){var S=d[C]-w||2;this.renderDecoration(e,i,w,c,S,s)}h&&this.renderLineHighlight(e,i,c,s)}},t.prototype.renderLineHighlight=function(e,t,n,i){e.fillStyle=t&&t.transparent(.5).toString()||"",e.fillRect(8,n,e.canvas.width,i)},t.prototype.renderDecoration=function(e,t,n,i,o,r){e.fillStyle=t&&t.toString()||"",e.fillRect(n,i,o,r)},t.prototype.renderLines=function(e){var n=this._options.renderMinimap,i=this._options.charRenderer(),o=e.startLineNumber,r=e.endLineNumber,s=zS(n,this._options.fontScale);if(this._lastRenderData&&this._lastRenderData.linesEquals(e)){var a=this._lastRenderData._get();return new GS(e,a.imageData,a.lines)}var u=this._getBuffer();if(!u)return null;for(var l=t._renderUntouchedLines(u,o,r,s,this._lastRenderData),c=l[0],d=l[1],h=l[2],p=this._context.model.getMinimapLinesRenderingData(o,r,h),f=p.tabSize,g=this._tokensColorTracker.getColor(2),m=this._tokensColorTracker.backgroundIsLight(),v=0,_=[],y=0,b=r-o+1;y<b;y++)h[y]&&t._renderLine(u,g,m,n,this._tokensColorTracker,i,v,f,p.data[y],this._options.fontScale),_[y]=new qS(v),v+=s;var w=-1===c?0:c,C=(-1===d?u.height:d)-w;return this._canvas.domNode.getContext("2d").putImageData(u,0,0,0,w,u.width,C),new GS(e,u,_)},t._renderUntouchedLines=function(e,t,n,i,o){var r=[];if(!o){for(var s=0,a=n-t+1;s<a;s++)r[s]=!0;return[-1,-1,r]}for(var u=o._get(),l=u.imageData.data,c=u.rendLineNumberStart,d=u.lines,h=d.length,p=e.width,f=e.data,g=(n-t+1)*i*p*4,m=-1,v=-1,_=-1,y=-1,b=-1,w=-1,C=0,S=t;S<=n;S++){var L=S-t,x=S-c,D=x>=0&&x<h?d[x].dy:-1;if(-1!==D){var N=D*p*4,k=(D+i)*p*4,E=C*p*4,I=(C+i)*p*4;y===N&&w===E?(y=k,w=I):(-1!==_&&(f.set(l.subarray(_,y),b),-1===m&&0===_&&_===b&&(m=y),-1===v&&y===g&&_===b&&(v=_)),_=N,y=k,b=E,w=I),r[L]=!1,C+=i}else r[L]=!0,C+=i}return-1!==_&&(f.set(l.subarray(_,y),b),-1===m&&0===_&&_===b&&(m=y),-1===v&&y===g&&_===b&&(v=_)),[-1===m?-1:m/(4*p),-1===v?-1:v/(4*p),r]},t._renderLine=function(e,t,n,i,o,r,s,a,u,l){for(var c=u.content,d=u.tokens,h=jS(0,l),p=e.width-h,f=8,g=0,m=0,v=0,_=d.getCount();v<_;v++)for(var y=d.getEndOffset(v),b=d.getForeground(v),w=o.getColor(b);g<y;g++){if(f>p)return;var C=c.charCodeAt(g);if(9===C){var S=a-(g+m)%a;m+=S-1,f+=S*h}else if(32===C)f+=h;else for(var L=jr(C)?2:1,x=0;x<L;x++)if(2===i?r.blockRenderChar(e,f,s,w,t,n):r.renderChar(e,f,s,C,w,t,l,n),(f+=h)>p)return}},t}(og);yg((function(e,t){var n=e.getColor(oy);if(n){var i=n.transparent(.5);t.addRule(".monaco-editor .minimap-slider, .monaco-editor .minimap-slider .minimap-slider-horizontal { background: "+i+"; }")}var o=e.getColor(ry);if(o){var r=o.transparent(.5);t.addRule(".monaco-editor .minimap-slider:hover, .monaco-editor .minimap-slider:hover .minimap-slider-horizontal { background: "+r+"; }")}var s=e.getColor(sy);if(s){var a=s.transparent(.5);t.addRule(".monaco-editor .minimap-slider.active, .monaco-editor .minimap-slider.active .minimap-slider-horizontal { background: "+a+"; }")}var u=e.getColor(iy);u&&t.addRule(".monaco-editor .minimap-shadow-visible { box-shadow: "+u+" -6px 0 6px -6px inset; }")}));n(384);var XS=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),$S=function(e){function t(t){var n=e.call(this,t)||this,i=n._context.configuration.options.get(107);return n._widgets={},n._verticalScrollbarWidth=i.verticalScrollbarWidth,n._minimapWidth=i.minimapWidth,n._horizontalScrollbarHeight=i.horizontalScrollbarHeight,n._editorHeight=i.height,n._editorWidth=i.width,n._domNode=Ff(document.createElement("div")),rg.write(n._domNode,4),n._domNode.setClassName("overlayWidgets"),n}return XS(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._widgets={}},t.prototype.getDomNode=function(){return this._domNode},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options.get(107);return this._verticalScrollbarWidth=t.verticalScrollbarWidth,this._minimapWidth=t.minimapWidth,this._horizontalScrollbarHeight=t.horizontalScrollbarHeight,this._editorHeight=t.height,this._editorWidth=t.width,!0},t.prototype.addWidget=function(e){var t=Ff(e.getDomNode());this._widgets[e.getId()]={widget:e,preference:null,domNode:t},t.setPosition("absolute"),t.setAttribute("widgetId",e.getId()),this._domNode.appendChild(t),this.setShouldRender()},t.prototype.setWidgetPosition=function(e,t){var n=this._widgets[e.getId()];return n.preference!==t&&(n.preference=t,this.setShouldRender(),!0)},t.prototype.removeWidget=function(e){var t=e.getId();if(this._widgets.hasOwnProperty(t)){var n=this._widgets[t].domNode.domNode;delete this._widgets[t],n.parentNode.removeChild(n),this.setShouldRender()}},t.prototype._renderWidget=function(e){var t=e.domNode;if(null!==e.preference)if(0===e.preference)t.setTop(0),t.setRight(2*this._verticalScrollbarWidth+this._minimapWidth);else if(1===e.preference){var n=t.domNode.clientHeight;t.setTop(this._editorHeight-n-2*this._horizontalScrollbarHeight),t.setRight(2*this._verticalScrollbarWidth+this._minimapWidth)}else 2===e.preference&&(t.setTop(0),t.domNode.style.right="50%");else t.unsetTop()},t.prototype.prepareRender=function(e){},t.prototype.render=function(e){this._domNode.setWidth(this._editorWidth);for(var t=Object.keys(this._widgets),n=0,i=t.length;n<i;n++){var o=t[n];this._renderWidget(this._widgets[o])}},t}(og),QS=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),JS=function(){function e(e,t){var n=e.options;this.lineHeight=n.get(49),this.pixelRatio=n.get(105),this.overviewRulerLanes=n.get(63),this.renderBorder=n.get(62);var i=t.getColor(ew);this.borderColor=i?i.toString():null,this.hideCursor=n.get(42);var o=t.getColor(zb);this.cursorColor=o?o.transparent(.7).toString():null,this.themeType=t.type;var r=n.get(54),s=r.enabled,a=r.side,u=s?Yu.getDefaultBackground():null;this.backgroundColor=null===u||"left"===a?null:mv.Format.CSS.formatHex(u);var l=n.get(107).overviewRuler;this.top=l.top,this.right=l.right,this.domWidth=l.width,this.domHeight=l.height,0===this.overviewRulerLanes?(this.canvasWidth=0,this.canvasHeight=0):(this.canvasWidth=this.domWidth*this.pixelRatio|0,this.canvasHeight=this.domHeight*this.pixelRatio|0);var c=this._initLanes(1,this.canvasWidth,this.overviewRulerLanes),d=c[0],h=c[1];this.x=d,this.w=h}return e.prototype._initLanes=function(e,t,n){var i=t-e;if(n>=3){var o,r,s,a=i-(o=Math.floor(i/3))-(r=Math.floor(i/3)),u=(s=e)+o;return[[0,s,u,s,s+o+a,s,u,s],[0,o,a,o+a,r,o+a+r,a+r,o+a+r]]}if(2===n)return[[0,s=e,s,s,s+(o=Math.floor(i/2)),s,s,s],[0,o,o,o,r=i-o,o+r,o+r,o+r]];return[[0,e,e,e,e,e,e,e],[0,i,i,i,i,i,i,i]]},e.prototype.equals=function(e){return this.lineHeight===e.lineHeight&&this.pixelRatio===e.pixelRatio&&this.overviewRulerLanes===e.overviewRulerLanes&&this.renderBorder===e.renderBorder&&this.borderColor===e.borderColor&&this.hideCursor===e.hideCursor&&this.cursorColor===e.cursorColor&&this.themeType===e.themeType&&this.backgroundColor===e.backgroundColor&&this.top===e.top&&this.right===e.right&&this.domWidth===e.domWidth&&this.domHeight===e.domHeight&&this.canvasWidth===e.canvasWidth&&this.canvasHeight===e.canvasHeight},e}(),eL=function(e){function t(t){var n=e.call(this,t)||this;return n._domNode=Ff(document.createElement("canvas")),n._domNode.setClassName("decorationsOverviewRuler"),n._domNode.setPosition("absolute"),n._domNode.setLayerHinting(!0),n._domNode.setContain("strict"),n._domNode.setAttribute("aria-hidden","true"),n._updateSettings(!1),n._tokensColorTrackerListener=Yu.onDidChange((function(e){e.changedColorMap&&n._updateSettings(!0)})),n._cursorPositions=[],n}return QS(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._tokensColorTrackerListener.dispose()},t.prototype._updateSettings=function(e){var t=new JS(this._context.configuration,this._context.theme);return(!this._settings||!this._settings.equals(t))&&(this._settings=t,this._domNode.setTop(this._settings.top),this._domNode.setRight(this._settings.right),this._domNode.setWidth(this._settings.domWidth),this._domNode.setHeight(this._settings.domHeight),this._domNode.domNode.width=this._settings.canvasWidth,this._domNode.domNode.height=this._settings.canvasHeight,e&&this._render(),!0)},t.prototype.onConfigurationChanged=function(e){return this._updateSettings(!1)},t.prototype.onCursorStateChanged=function(e){this._cursorPositions=[];for(var t=0,n=e.selections.length;t<n;t++)this._cursorPositions[t]=e.selections[t].getPosition();return this._cursorPositions.sort(bn.compare),!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollHeightChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype.onThemeChanged=function(e){return this._context.model.invalidateOverviewRulerColorCache(),this._updateSettings(!1)},t.prototype.getDomNode=function(){return this._domNode.domNode},t.prototype.prepareRender=function(e){},t.prototype.render=function(e){this._render()},t.prototype._render=function(){if(0!==this._settings.overviewRulerLanes){var e=this._settings.canvasWidth,t=this._settings.canvasHeight,n=this._settings.lineHeight,i=this._context.viewLayout,o=t/this._context.viewLayout.getScrollHeight(),r=this._context.model.getAllOverviewRulerDecorations(this._context.theme),s=6*this._settings.pixelRatio|0,a=s/2|0,u=this._domNode.domNode.getContext("2d");null===this._settings.backgroundColor?u.clearRect(0,0,e,t):(u.fillStyle=this._settings.backgroundColor,u.fillRect(0,0,e,t));var l=this._settings.x,c=this._settings.w,d=Object.keys(r);d.sort();for(var h=0,p=d.length;h<p;h++){var f=d[h],g=r[f];u.fillStyle=f;for(var m=0,v=0,_=0,y=0,b=g.length;y<b;y++){var w=g[3*y],C=g[3*y+1],S=g[3*y+2],L=i.getVerticalOffsetForLineNumber(C)*o|0;if((O=(i.getVerticalOffsetForLineNumber(S)+n)*o|0)-L<s)(E=(L+O)/2|0)<a?E=a:E+a>t&&(E=t-a),L=E-a,O=E+a;L>_+1||w!==m?(0!==y&&u.fillRect(l[m],v,c[m],_-v),m=w,v=L,_=O):O>_&&(_=O)}u.fillRect(l[m],v,c[m],_-v)}if(!this._settings.hideCursor&&this._settings.cursorColor){var x=2*this._settings.pixelRatio|0,D=x/2|0,N=this._settings.x[7],k=this._settings.w[7];u.fillStyle=this._settings.cursorColor;for(v=-100,_=-100,y=0,b=this._cursorPositions.length;y<b;y++){var E,I=this._cursorPositions[y];(E=i.getVerticalOffsetForLineNumber(I.lineNumber)*o|0)<D?E=D:E+D>t&&(E=t-D);var O=(L=E-D)+x;L>_+1?(0!==y&&u.fillRect(N,v,k,_-v),v=L,_=O):O>_&&(_=O)}u.fillRect(N,v,k,_-v)}this._settings.renderBorder&&this._settings.borderColor&&this._settings.overviewRulerLanes>0&&(u.beginPath(),u.lineWidth=1,u.strokeStyle=this._settings.borderColor,u.moveTo(0,0),u.lineTo(0,t),u.stroke(),u.moveTo(0,0),u.lineTo(e,0),u.stroke())}else this._domNode.setBackgroundColor(this._settings.backgroundColor?this._settings.backgroundColor:"")},t}(og),tL=function(){function e(e,t,n){this.from=0|e,this.to=0|t,this.colorId=0|n}return e.compare=function(e,t){return e.colorId===t.colorId?e.from===t.from?e.to-t.to:e.from-t.from:e.colorId-t.colorId},e}(),nL=function(){function e(e,t,n){this.startLineNumber=e,this.endLineNumber=t,this.color=n,this._colorZone=null}return e.compare=function(e,t){return e.color===t.color?e.startLineNumber===t.startLineNumber?e.endLineNumber-t.endLineNumber:e.startLineNumber-t.startLineNumber:e.color<t.color?-1:1},e.prototype.setColorZone=function(e){this._colorZone=e},e.prototype.getColorZones=function(){return this._colorZone},e}(),iL=function(){function e(e){this._getVerticalOffsetForLine=e,this._zones=[],this._colorZonesInvalid=!1,this._lineHeight=0,this._domWidth=0,this._domHeight=0,this._outerHeight=0,this._pixelRatio=1,this._lastAssignedId=0,this._color2Id=Object.create(null),this._id2Color=[]}return e.prototype.getId2Color=function(){return this._id2Color},e.prototype.setZones=function(e){this._zones=e,this._zones.sort(nL.compare)},e.prototype.setLineHeight=function(e){return this._lineHeight!==e&&(this._lineHeight=e,this._colorZonesInvalid=!0,!0)},e.prototype.setPixelRatio=function(e){this._pixelRatio=e,this._colorZonesInvalid=!0},e.prototype.getDOMWidth=function(){return this._domWidth},e.prototype.getCanvasWidth=function(){return this._domWidth*this._pixelRatio},e.prototype.setDOMWidth=function(e){return this._domWidth!==e&&(this._domWidth=e,this._colorZonesInvalid=!0,!0)},e.prototype.getDOMHeight=function(){return this._domHeight},e.prototype.getCanvasHeight=function(){return this._domHeight*this._pixelRatio},e.prototype.setDOMHeight=function(e){return this._domHeight!==e&&(this._domHeight=e,this._colorZonesInvalid=!0,!0)},e.prototype.getOuterHeight=function(){return this._outerHeight},e.prototype.setOuterHeight=function(e){return this._outerHeight!==e&&(this._outerHeight=e,this._colorZonesInvalid=!0,!0)},e.prototype.resolveColorZones=function(){for(var e=this._colorZonesInvalid,t=Math.floor(this._lineHeight),n=Math.floor(this.getCanvasHeight()),i=n/Math.floor(this._outerHeight),o=Math.floor(4*this._pixelRatio/2),r=[],s=0,a=this._zones.length;s<a;s++){var u=this._zones[s];if(!e){var l=u.getColorZones();if(l){r.push(l);continue}}var c=Math.floor(i*this._getVerticalOffsetForLine(u.startLineNumber)),d=Math.floor(i*(this._getVerticalOffsetForLine(u.endLineNumber)+t)),h=Math.floor((c+d)/2),p=d-h;p<o&&(p=o),h-p<0&&(h=p),h+p>n&&(h=n-p);var f=u.color,g=this._color2Id[f];g||(g=++this._lastAssignedId,this._color2Id[f]=g,this._id2Color[g]=f);var m=new tL(h-p,h+p,g);u.setColorZone(m),r.push(m)}return this._colorZonesInvalid=!1,r.sort(tL.compare),r},e}(),oL=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),rL=function(e){function t(t,n){var i=e.call(this)||this;i._context=t;var o=i._context.configuration.options;return i._domNode=Ff(document.createElement("canvas")),i._domNode.setClassName(n),i._domNode.setPosition("absolute"),i._domNode.setLayerHinting(!0),i._domNode.setContain("strict"),i._zoneManager=new iL((function(e){return i._context.viewLayout.getVerticalOffsetForLineNumber(e)})),i._zoneManager.setDOMWidth(0),i._zoneManager.setDOMHeight(0),i._zoneManager.setOuterHeight(i._context.viewLayout.getScrollHeight()),i._zoneManager.setLineHeight(o.get(49)),i._zoneManager.setPixelRatio(o.get(105)),i._context.addEventHandler(i),i}return oL(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options;return e.hasChanged(49)&&(this._zoneManager.setLineHeight(t.get(49)),this._render()),e.hasChanged(105)&&(this._zoneManager.setPixelRatio(t.get(105)),this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render()),!0},t.prototype.onFlushed=function(e){return this._render(),!0},t.prototype.onScrollChanged=function(e){return e.scrollHeightChanged&&(this._zoneManager.setOuterHeight(e.scrollHeight),this._render()),!0},t.prototype.onZonesChanged=function(e){return this._render(),!0},t.prototype.getDomNode=function(){return this._domNode.domNode},t.prototype.setLayout=function(e){this._domNode.setTop(e.top),this._domNode.setRight(e.right);var t=!1;t=this._zoneManager.setDOMWidth(e.width)||t,(t=this._zoneManager.setDOMHeight(e.height)||t)&&(this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render())},t.prototype.setZones=function(e){this._zoneManager.setZones(e),this._render()},t.prototype._render=function(){if(0===this._zoneManager.getOuterHeight())return!1;var e=this._zoneManager.getCanvasWidth(),t=this._zoneManager.getCanvasHeight(),n=this._zoneManager.resolveColorZones(),i=this._zoneManager.getId2Color(),o=this._domNode.domNode.getContext("2d");return o.clearRect(0,0,e,t),n.length>0&&this._renderOneLane(o,n,i,e),!0},t.prototype._renderOneLane=function(e,t,n,i){for(var o=0,r=0,s=0,a=0,u=t;a<u.length;a++){var l=u[a],c=l.colorId,d=l.from,h=l.to;c!==o?(e.fillRect(0,r,i,s-r),o=c,e.fillStyle=n[o],r=d,s=h):s>=d?s=Math.max(s,h):(e.fillRect(0,r,i,s-r),r=d,s=h)}e.fillRect(0,r,i,s-r)},t}(ng),sL=(n(385),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),aL=function(e){function t(t){var n=e.call(this,t)||this;n.domNode=Ff(document.createElement("div")),n.domNode.setAttribute("role","presentation"),n.domNode.setAttribute("aria-hidden","true"),n.domNode.setClassName("view-rulers"),n._renderedRulers=[];var i=n._context.configuration.options;return n._rulers=i.get(77),n._typicalHalfwidthCharacterWidth=i.get(34).typicalHalfwidthCharacterWidth,n}return sL(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options;return this._rulers=t.get(77),this._typicalHalfwidthCharacterWidth=t.get(34).typicalHalfwidthCharacterWidth,!0},t.prototype.onScrollChanged=function(e){return e.scrollHeightChanged},t.prototype.prepareRender=function(e){},t.prototype._ensureRulersCount=function(){var e=this._renderedRulers.length,t=this._rulers.length;if(e!==t)if(e<t)for(var n=this._context.model.getOptions().tabSize,i=t-e;i>0;){(r=Ff(document.createElement("div"))).setClassName("view-ruler"),r.setWidth(n),this.domNode.appendChild(r),this._renderedRulers.push(r),i--}else for(var o=e-t;o>0;){var r=this._renderedRulers.pop();this.domNode.removeChild(r),o--}},t.prototype.render=function(e){this._ensureRulersCount();for(var t=0,n=this._rulers.length;t<n;t++){var i=this._renderedRulers[t];i.setHeight(Math.min(e.scrollHeight,1e6)),i.setLeft(this._rulers[t]*this._typicalHalfwidthCharacterWidth)}},t}(og);yg((function(e,t){var n=e.getColor(Xb);n&&t.addRule(".monaco-editor .view-ruler { box-shadow: 1px 0 0 0 "+n+" inset; }")}));n(386);var uL=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),lL=function(e){function t(t){var n=e.call(this,t)||this;n._scrollTop=0,n._width=0,n._updateWidth(),n._shouldShow=!1;var i=n._context.configuration.options.get(78);return n._useShadows=i.useShadows,n._domNode=Ff(document.createElement("div")),n._domNode.setAttribute("role","presentation"),n._domNode.setAttribute("aria-hidden","true"),n}return uL(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._updateShouldShow=function(){var e=this._useShadows&&this._scrollTop>0;return this._shouldShow!==e&&(this._shouldShow=e,!0)},t.prototype.getDomNode=function(){return this._domNode},t.prototype._updateWidth=function(){var e=this._context.configuration.options.get(107);0===e.renderMinimap||e.minimapWidth>0&&0===e.minimapLeft?this._width=e.width:this._width=e.width-e.minimapWidth-e.verticalScrollbarWidth},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options.get(78);return this._useShadows=t.useShadows,this._updateWidth(),this._updateShouldShow(),!0},t.prototype.onScrollChanged=function(e){return this._scrollTop=e.scrollTop,this._updateShouldShow()},t.prototype.prepareRender=function(e){},t.prototype.render=function(e){this._domNode.setWidth(this._width),this._domNode.setClassName(this._shouldShow?"scroll-decoration":"")},t}(og);yg((function(e,t){var n=e.getColor(iy);n&&t.addRule(".monaco-editor .scroll-decoration { box-shadow: "+n+" 0 6px 6px -6px inset; }")}));n(387);var cL=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),dL=function(e){this.left=e.left,this.width=e.width,this.startStyle=null,this.endStyle=null},hL=function(e,t){this.lineNumber=e,this.ranges=t};function pL(e){return new dL(e)}function fL(e){return new hL(e.lineNumber,e.ranges.map(pL))}var gL=Hn,mL=function(e){function t(t){var n=e.call(this)||this;n._previousFrameVisibleRangesWithStyle=[],n._context=t;var i=n._context.configuration.options;return n._lineHeight=i.get(49),n._roundedSelection=i.get(76),n._typicalHalfwidthCharacterWidth=i.get(34).typicalHalfwidthCharacterWidth,n._selections=[],n._renderResult=null,n._context.addEventHandler(n),n}return cL(t,e),t.prototype.dispose=function(){this._context.removeEventHandler(this),this._renderResult=null,e.prototype.dispose.call(this)},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options;return this._lineHeight=t.get(49),this._roundedSelection=t.get(76),this._typicalHalfwidthCharacterWidth=t.get(34).typicalHalfwidthCharacterWidth,!0},t.prototype.onCursorStateChanged=function(e){return this._selections=e.selections.slice(0),!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollTopChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype._visibleRangesHaveGaps=function(e){for(var t=0,n=e.length;t<n;t++){if(e[t].ranges.length>1)return!0}return!1},t.prototype._enrichVisibleRangesWithStyle=function(e,t,n){var i=this._typicalHalfwidthCharacterWidth/4,o=null,r=null;if(n&&n.length>0&&t.length>0){var s=t[0].lineNumber;if(s===e.startLineNumber)for(var a=0;!o&&a<n.length;a++)n[a].lineNumber===s&&(o=n[a].ranges[0]);var u=t[t.length-1].lineNumber;if(u===e.endLineNumber)for(a=n.length-1;!r&&a>=0;a--)n[a].lineNumber===u&&(r=n[a].ranges[0]);o&&!o.startStyle&&(o=null),r&&!r.startStyle&&(r=null)}a=0;for(var l=t.length;a<l;a++){var c=t[a].ranges[0],d=c.left,h=c.left+c.width,p={top:0,bottom:0},f={top:0,bottom:0};if(a>0){var g=t[a-1].ranges[0].left,m=t[a-1].ranges[0].left+t[a-1].ranges[0].width;vL(d-g)<i?p.top=2:d>g&&(p.top=1),vL(h-m)<i?f.top=2:g<h&&h<m&&(f.top=1)}else o&&(p.top=o.startStyle.top,f.top=o.endStyle.top);if(a+1<l){var v=t[a+1].ranges[0].left,_=t[a+1].ranges[0].left+t[a+1].ranges[0].width;vL(d-v)<i?p.bottom=2:v<d&&d<_&&(p.bottom=1),vL(h-_)<i?f.bottom=2:h<_&&(f.bottom=1)}else r&&(p.bottom=r.startStyle.bottom,f.bottom=r.endStyle.bottom);c.startStyle=p,c.endStyle=f}},t.prototype._getVisibleRangesWithStyle=function(e,t,n){var i=(t.linesVisibleRangesForRange(e,!0)||[]).map(fL),o=this._visibleRangesHaveGaps(i);return gL||o||!this._roundedSelection||this._enrichVisibleRangesWithStyle(t.visibleRange,i,n),i},t.prototype._createSelectionPiece=function(e,t,n,i,o){return'<div class="cslr '+n+'" style="top:'+e.toString()+"px;left:"+i.toString()+"px;width:"+o.toString()+"px;height:"+t+'px;"></div>'},t.prototype._actualRenderOneSelection=function(e,n,i,o){if(0!==o.length)for(var r=!!o[0].ranges[0].startStyle,s=this._lineHeight.toString(),a=(this._lineHeight-1).toString(),u=o[0].lineNumber,l=o[o.length-1].lineNumber,c=0,d=o.length;c<d;c++){for(var h=o[c],p=h.lineNumber,f=p-n,g=i&&(p===l||p===u)?a:s,m=i&&p===u?1:0,v="",_="",y=0,b=h.ranges.length;y<b;y++){var w=h.ranges[y];if(r){var C=w.startStyle,S=w.endStyle;if(1===C.top||1===C.bottom){v+=this._createSelectionPiece(m,g,t.SELECTION_CLASS_NAME,w.left-t.ROUNDED_PIECE_WIDTH,t.ROUNDED_PIECE_WIDTH);var L=t.EDITOR_BACKGROUND_CLASS_NAME;1===C.top&&(L+=" "+t.SELECTION_TOP_RIGHT),1===C.bottom&&(L+=" "+t.SELECTION_BOTTOM_RIGHT),v+=this._createSelectionPiece(m,g,L,w.left-t.ROUNDED_PIECE_WIDTH,t.ROUNDED_PIECE_WIDTH)}if(1===S.top||1===S.bottom){v+=this._createSelectionPiece(m,g,t.SELECTION_CLASS_NAME,w.left+w.width,t.ROUNDED_PIECE_WIDTH);var x=t.EDITOR_BACKGROUND_CLASS_NAME;1===S.top&&(x+=" "+t.SELECTION_TOP_LEFT),1===S.bottom&&(x+=" "+t.SELECTION_BOTTOM_LEFT),v+=this._createSelectionPiece(m,g,x,w.left+w.width,t.ROUNDED_PIECE_WIDTH)}}var D=t.SELECTION_CLASS_NAME;if(r){C=w.startStyle,S=w.endStyle;0===C.top&&(D+=" "+t.SELECTION_TOP_LEFT),0===C.bottom&&(D+=" "+t.SELECTION_BOTTOM_LEFT),0===S.top&&(D+=" "+t.SELECTION_TOP_RIGHT),0===S.bottom&&(D+=" "+t.SELECTION_BOTTOM_RIGHT)}_+=this._createSelectionPiece(m,g,D,w.left,w.width)}e[f][0]+=v,e[f][1]+=_}},t.prototype.prepareRender=function(e){for(var t=[],n=e.visibleRange.startLineNumber,i=e.visibleRange.endLineNumber,o=n;o<=i;o++){t[o-n]=["",""]}for(var r=[],s=0,a=this._selections.length;s<a;s++){var u=this._selections[s];if(u.isEmpty())r[s]=null;else{var l=this._getVisibleRangesWithStyle(u,e,this._previousFrameVisibleRangesWithStyle[s]);r[s]=l,this._actualRenderOneSelection(t,n,this._selections.length>1,l)}}this._previousFrameVisibleRangesWithStyle=r,this._renderResult=t.map((function(e){return e[0]+e[1]}))},t.prototype.render=function(e,t){if(!this._renderResult)return"";var n=t-e;return n<0||n>=this._renderResult.length?"":this._renderResult[n]},t.SELECTION_CLASS_NAME="selected-text",t.SELECTION_TOP_LEFT="top-left-radius",t.SELECTION_BOTTOM_LEFT="bottom-left-radius",t.SELECTION_TOP_RIGHT="top-right-radius",t.SELECTION_BOTTOM_RIGHT="bottom-right-radius",t.EDITOR_BACKGROUND_CLASS_NAME="monaco-editor-background",t.ROUNDED_PIECE_WIDTH=10,t}(S_);function vL(e){return e<0?-e:e}yg((function(e,t){var n=e.getColor(Cy);n&&t.addRule(".monaco-editor .focused .selected-text { background-color: "+n+"; }");var i=e.getColor(Ly);i&&t.addRule(".monaco-editor .selected-text { background-color: "+i+"; }");var o=e.getColor(Sy);o&&t.addRule(".monaco-editor .view-line span.inline-selected-text { color: "+o+"; }")}));n(388);var _L=function(e,t,n,i,o,r){this.top=e,this.left=t,this.width=n,this.height=i,this.textContent=o,this.textContentClassName=r},yL=function(){function e(e){this._context=e;var t=this._context.configuration.options,n=t.get(34);this._cursorStyle=t.get(18),this._lineHeight=t.get(49),this._typicalHalfwidthCharacterWidth=n.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(t.get(21),this._typicalHalfwidthCharacterWidth),this._isVisible=!0,this._domNode=Ff(document.createElement("div")),this._domNode.setClassName("cursor"),this._domNode.setHeight(this._lineHeight),this._domNode.setTop(0),this._domNode.setLeft(0),af.applyFontInfo(this._domNode,n),this._domNode.setDisplay("none"),this._position=new bn(1,1),this._lastRenderedContent="",this._renderData=null}return e.prototype.getDomNode=function(){return this._domNode},e.prototype.getPosition=function(){return this._position},e.prototype.show=function(){this._isVisible||(this._domNode.setVisibility("inherit"),this._isVisible=!0)},e.prototype.hide=function(){this._isVisible&&(this._domNode.setVisibility("hidden"),this._isVisible=!1)},e.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options,n=t.get(34);return this._cursorStyle=t.get(18),this._lineHeight=t.get(49),this._typicalHalfwidthCharacterWidth=n.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(t.get(21),this._typicalHalfwidthCharacterWidth),af.applyFontInfo(this._domNode,n),!0},e.prototype.onCursorPositionChanged=function(e){return this._position=e,!0},e.prototype._prepareRender=function(e){var t="";if(this._cursorStyle===j.Line||this._cursorStyle===j.LineThin){var n,i=e.visibleRangeForPosition(this._position);if(!i||i.outsideRenderedLine)return null;if(this._cursorStyle===j.Line){if((n=rr(this._lineCursorWidth>0?this._lineCursorWidth:2))>2){var o=this._context.model.getLineContent(this._position.lineNumber),r=Fr(o,this._position.column-1);t=o.substr(this._position.column-1,r)}}else n=rr(1);var s=i.left;n>=2&&s>=1&&(s-=1);var a=e.getVerticalOffsetForLineNumber(this._position.lineNumber)-e.bigNumbersDelta;return new _L(a,s,n,this._lineHeight,t,"")}var u=this._context.model.getLineContent(this._position.lineNumber),l=Fr(u,this._position.column-1),c=e.linesVisibleRangesForRange(new wn(this._position.lineNumber,this._position.column,this._position.lineNumber,this._position.column+l),!1);if(!c||0===c.length)return null;var d=c[0];if(d.outsideRenderedLine||0===d.ranges.length)return null;var h=d.ranges[0],p=h.width<1?this._typicalHalfwidthCharacterWidth:h.width,f="";if(this._cursorStyle===j.Block){var g=this._context.model.getViewLineData(this._position.lineNumber);t=u.substr(this._position.column-1,l);var m=g.tokens.findTokenIndexAtOffset(this._position.column-1);f=g.tokens.getClassName(m)}var v=e.getVerticalOffsetForLineNumber(this._position.lineNumber)-e.bigNumbersDelta,_=this._lineHeight;return this._cursorStyle!==j.Underline&&this._cursorStyle!==j.UnderlineThin||(v+=this._lineHeight-2,_=2),new _L(v,h.left,p,_,t,f)},e.prototype.prepareRender=function(e){this._renderData=this._prepareRender(e)},e.prototype.render=function(e){return this._renderData?(this._lastRenderedContent!==this._renderData.textContent&&(this._lastRenderedContent=this._renderData.textContent,this._domNode.domNode.textContent=this._lastRenderedContent),this._domNode.setClassName("cursor "+this._renderData.textContentClassName),this._domNode.setDisplay("block"),this._domNode.setTop(this._renderData.top),this._domNode.setLeft(this._renderData.left),this._domNode.setWidth(this._renderData.width),this._domNode.setLineHeight(this._renderData.height),this._domNode.setHeight(this._renderData.height),{domNode:this._domNode.domNode,position:this._position,contentLeft:this._renderData.left,height:this._renderData.height,width:2}):(this._domNode.setDisplay("none"),null)},e}(),bL=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),wL=function(e){function t(t){var n=e.call(this,t)||this,i=n._context.configuration.options;return n._readOnly=i.get(68),n._cursorBlinking=i.get(16),n._cursorStyle=i.get(18),n._cursorSmoothCaretAnimation=i.get(17),n._selectionIsEmpty=!0,n._isVisible=!1,n._primaryCursor=new yL(n._context),n._secondaryCursors=[],n._renderData=[],n._domNode=Ff(document.createElement("div")),n._domNode.setAttribute("role","presentation"),n._domNode.setAttribute("aria-hidden","true"),n._updateDomClassName(),n._domNode.appendChild(n._primaryCursor.getDomNode()),n._startCursorBlinkAnimation=new yi,n._cursorFlatBlinkInterval=new bi,n._blinkingEnabled=!1,n._editorHasFocus=!1,n._updateBlinking(),n}return bL(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._startCursorBlinkAnimation.dispose(),this._cursorFlatBlinkInterval.dispose()},t.prototype.getDomNode=function(){return this._domNode},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options;this._readOnly=t.get(68),this._cursorBlinking=t.get(16),this._cursorStyle=t.get(18),this._cursorSmoothCaretAnimation=t.get(17),this._updateBlinking(),this._updateDomClassName(),this._primaryCursor.onConfigurationChanged(e);for(var n=0,i=this._secondaryCursors.length;n<i;n++)this._secondaryCursors[n].onConfigurationChanged(e);return!0},t.prototype._onCursorPositionChanged=function(e,t){if(this._primaryCursor.onCursorPositionChanged(e),this._updateBlinking(),this._secondaryCursors.length<t.length)for(var n=t.length-this._secondaryCursors.length,i=0;i<n;i++){var o=new yL(this._context);this._domNode.domNode.insertBefore(o.getDomNode().domNode,this._primaryCursor.getDomNode().domNode.nextSibling),this._secondaryCursors.push(o)}else if(this._secondaryCursors.length>t.length){var r=this._secondaryCursors.length-t.length;for(i=0;i<r;i++)this._domNode.removeChild(this._secondaryCursors[0].getDomNode()),this._secondaryCursors.splice(0,1)}for(i=0;i<t.length;i++)this._secondaryCursors[i].onCursorPositionChanged(t[i])},t.prototype.onCursorStateChanged=function(e){for(var t=[],n=0,i=e.selections.length;n<i;n++)t[n]=e.selections[n].getPosition();this._onCursorPositionChanged(t[0],t.slice(1));var o=e.selections[0].isEmpty();return this._selectionIsEmpty!==o&&(this._selectionIsEmpty=o,this._updateDomClassName()),!0},t.prototype.onDecorationsChanged=function(e){return!0},t.prototype.onFlushed=function(e){return!0},t.prototype.onFocusChanged=function(e){return this._editorHasFocus=e.isFocused,this._updateBlinking(),!1},t.prototype.onLinesChanged=function(e){return!0},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype.onScrollChanged=function(e){return!0},t.prototype.onTokensChanged=function(e){var t=function(t){for(var n=0,i=e.ranges.length;n<i;n++)if(e.ranges[n].fromLineNumber<=t.lineNumber&&t.lineNumber<=e.ranges[n].toLineNumber)return!0;return!1};if(t(this._primaryCursor.getPosition()))return!0;for(var n=0,i=this._secondaryCursors;n<i.length;n++){if(t(i[n].getPosition()))return!0}return!1},t.prototype.onZonesChanged=function(e){return!0},t.prototype._getCursorBlinking=function(){return this._editorHasFocus?this._readOnly?5:this._cursorBlinking:0},t.prototype._updateBlinking=function(){var e=this;this._startCursorBlinkAnimation.cancel(),this._cursorFlatBlinkInterval.cancel();var n=this._getCursorBlinking(),i=0===n,o=5===n;i?this._hide():this._show(),this._blinkingEnabled=!1,this._updateDomClassName(),i||o||(1===n?this._cursorFlatBlinkInterval.cancelAndSet((function(){e._isVisible?e._hide():e._show()}),t.BLINK_INTERVAL):this._startCursorBlinkAnimation.setIfNotSet((function(){e._blinkingEnabled=!0,e._updateDomClassName()}),t.BLINK_INTERVAL))},t.prototype._updateDomClassName=function(){this._domNode.setClassName(this._getClassName())},t.prototype._getClassName=function(){var e="cursors-layer";switch(this._selectionIsEmpty||(e+=" has-selection"),this._cursorStyle){case j.Line:e+=" cursor-line-style";break;case j.Block:e+=" cursor-block-style";break;case j.Underline:e+=" cursor-underline-style";break;case j.LineThin:e+=" cursor-line-thin-style";break;case j.BlockOutline:e+=" cursor-block-outline-style";break;case j.UnderlineThin:e+=" cursor-underline-thin-style";break;default:e+=" cursor-line-style"}if(this._blinkingEnabled)switch(this._getCursorBlinking()){case 1:e+=" cursor-blink";break;case 2:e+=" cursor-smooth";break;case 3:e+=" cursor-phase";break;case 4:e+=" cursor-expand";break;case 5:e+=" cursor-solid";break;default:e+=" cursor-solid"}else e+=" cursor-solid";return this._cursorSmoothCaretAnimation&&(e+=" cursor-smooth-caret-animation"),e},t.prototype._show=function(){this._primaryCursor.show();for(var e=0,t=this._secondaryCursors.length;e<t;e++)this._secondaryCursors[e].show();this._isVisible=!0},t.prototype._hide=function(){this._primaryCursor.hide();for(var e=0,t=this._secondaryCursors.length;e<t;e++)this._secondaryCursors[e].hide();this._isVisible=!1},t.prototype.prepareRender=function(e){this._primaryCursor.prepareRender(e);for(var t=0,n=this._secondaryCursors.length;t<n;t++)this._secondaryCursors[t].prepareRender(e)},t.prototype.render=function(e){var t=[],n=0,i=this._primaryCursor.render(e);i&&(t[n++]=i);for(var o=0,r=this._secondaryCursors.length;o<r;o++){var s=this._secondaryCursors[o].render(e);s&&(t[n++]=s)}this._renderData=t},t.prototype.getLastRenderData=function(){return this._renderData},t.BLINK_INTERVAL=500,t}(og);yg((function(e,t){var n=e.getColor(zb);if(n){var i=e.getColor(jb);i||(i=n.opposite()),t.addRule(".monaco-editor .cursor { background-color: "+n+"; border-color: "+n+"; color: "+i+"; }"),"hc"===e.type&&t.addRule(".monaco-editor .cursors-layer.has-selection .cursor { border-left: 1px solid "+i+"; border-right: 1px solid "+i+"; }")}}));var CL=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),SL=function(){throw new Error("Invalid change accessor")},LL=function(e){function t(t){var n=e.call(this,t)||this,i=n._context.configuration.options,o=i.get(107);return n._lineHeight=i.get(49),n._contentWidth=o.contentWidth,n._contentLeft=o.contentLeft,n.domNode=Ff(document.createElement("div")),n.domNode.setClassName("view-zones"),n.domNode.setPosition("absolute"),n.domNode.setAttribute("role","presentation"),n.domNode.setAttribute("aria-hidden","true"),n.marginDomNode=Ff(document.createElement("div")),n.marginDomNode.setClassName("margin-view-zones"),n.marginDomNode.setPosition("absolute"),n.marginDomNode.setAttribute("role","presentation"),n.marginDomNode.setAttribute("aria-hidden","true"),n._zones={},n}return CL(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._zones={}},t.prototype._recomputeWhitespacesProps=function(){for(var e=this,t=this._context.viewLayout.getWhitespaces(),n=new Map,i=0,o=t;i<o.length;i++){var r=o[i];n.set(r.id,r)}return this._context.viewLayout.changeWhitespace((function(t){for(var i=!1,o=Object.keys(e._zones),r=0,s=o.length;r<s;r++){var a=o[r],u=e._zones[a],l=e._computeWhitespaceProps(u.delegate),c=n.get(a);!c||c.afterLineNumber===l.afterViewLineNumber&&c.height===l.heightInPx||(t.changeOneWhitespace(a,l.afterViewLineNumber,l.heightInPx),e._safeCallOnComputedHeight(u.delegate,l.heightInPx),i=!0)}return i}))},t.prototype.onConfigurationChanged=function(e){var t=this._context.configuration.options,n=t.get(107);return this._lineHeight=t.get(49),this._contentWidth=n.contentWidth,this._contentLeft=n.contentLeft,e.hasChanged(49)&&this._recomputeWhitespacesProps(),!0},t.prototype.onLineMappingChanged=function(e){var t=this._recomputeWhitespacesProps();return t&&this._context.viewLayout.onHeightMaybeChanged(),t},t.prototype.onLinesDeleted=function(e){return!0},t.prototype.onScrollChanged=function(e){return e.scrollTopChanged||e.scrollWidthChanged},t.prototype.onZonesChanged=function(e){return!0},t.prototype.onLinesInserted=function(e){return!0},t.prototype._getZoneOrdinal=function(e){return void 0!==e.afterColumn?e.afterColumn:1e4},t.prototype._computeWhitespaceProps=function(e){if(0===e.afterLineNumber)return{afterViewLineNumber:0,heightInPx:this._heightInPixels(e),minWidthInPx:this._minWidthInPixels(e)};var t,n;if(void 0!==e.afterColumn)t=this._context.model.validateModelPosition({lineNumber:e.afterLineNumber,column:e.afterColumn});else{var i=this._context.model.validateModelPosition({lineNumber:e.afterLineNumber,column:1}).lineNumber;t=new bn(i,this._context.model.getModelLineMaxColumn(i))}n=t.column===this._context.model.getModelLineMaxColumn(t.lineNumber)?this._context.model.validateModelPosition({lineNumber:t.lineNumber+1,column:1}):this._context.model.validateModelPosition({lineNumber:t.lineNumber,column:t.column+1});var o=this._context.model.coordinatesConverter.convertModelPositionToViewPosition(t),r=this._context.model.coordinatesConverter.modelPositionIsVisible(n);return{afterViewLineNumber:o.lineNumber,heightInPx:r?this._heightInPixels(e):0,minWidthInPx:this._minWidthInPixels(e)}},t.prototype.changeViewZones=function(e){var t=this;return this._context.viewLayout.changeWhitespace((function(n){var i=!1,o={addZone:function(e){return i=!0,t._addZone(n,e)},removeZone:function(e){e&&(i=t._removeZone(n,e)||i)},layoutZone:function(e){e&&(i=t._layoutZone(n,e)||i)}};return function(e,t){try{e(t)}catch(e){De(e)}}(e,o),o.addZone=SL,o.removeZone=SL,o.layoutZone=SL,i}))},t.prototype._addZone=function(e,t){var n=this._computeWhitespaceProps(t),i={whitespaceId:e.insertWhitespace(n.afterViewLineNumber,this._getZoneOrdinal(t),n.heightInPx,n.minWidthInPx),delegate:t,isVisible:!1,domNode:Ff(t.domNode),marginDomNode:t.marginDomNode?Ff(t.marginDomNode):null};return this._safeCallOnComputedHeight(i.delegate,n.heightInPx),i.domNode.setPosition("absolute"),i.domNode.domNode.style.width="100%",i.domNode.setDisplay("none"),i.domNode.setAttribute("monaco-view-zone",i.whitespaceId),this.domNode.appendChild(i.domNode),i.marginDomNode&&(i.marginDomNode.setPosition("absolute"),i.marginDomNode.domNode.style.width="100%",i.marginDomNode.setDisplay("none"),i.marginDomNode.setAttribute("monaco-view-zone",i.whitespaceId),this.marginDomNode.appendChild(i.marginDomNode)),this._zones[i.whitespaceId]=i,this.setShouldRender(),i.whitespaceId},t.prototype._removeZone=function(e,t){if(this._zones.hasOwnProperty(t)){var n=this._zones[t];return delete this._zones[t],e.removeWhitespace(n.whitespaceId),n.domNode.removeAttribute("monaco-visible-view-zone"),n.domNode.removeAttribute("monaco-view-zone"),n.domNode.domNode.parentNode.removeChild(n.domNode.domNode),n.marginDomNode&&(n.marginDomNode.removeAttribute("monaco-visible-view-zone"),n.marginDomNode.removeAttribute("monaco-view-zone"),n.marginDomNode.domNode.parentNode.removeChild(n.marginDomNode.domNode)),this.setShouldRender(),!0}return!1},t.prototype._layoutZone=function(e,t){if(this._zones.hasOwnProperty(t)){var n=this._zones[t],i=this._computeWhitespaceProps(n.delegate);return e.changeOneWhitespace(n.whitespaceId,i.afterViewLineNumber,i.heightInPx),this._safeCallOnComputedHeight(n.delegate,i.heightInPx),this.setShouldRender(),!0}return!1},t.prototype.shouldSuppressMouseDownOnViewZone=function(e){if(this._zones.hasOwnProperty(e)){var t=this._zones[e];return Boolean(t.delegate.suppressMouseDown)}return!1},t.prototype._heightInPixels=function(e){return"number"==typeof e.heightInPx?e.heightInPx:"number"==typeof e.heightInLines?this._lineHeight*e.heightInLines:this._lineHeight},t.prototype._minWidthInPixels=function(e){return"number"==typeof e.minWidthInPx?e.minWidthInPx:0},t.prototype._safeCallOnComputedHeight=function(e,t){if("function"==typeof e.onComputedHeight)try{e.onComputedHeight(t)}catch(e){De(e)}},t.prototype._safeCallOnDomNodeTop=function(e,t){if("function"==typeof e.onDomNodeTop)try{e.onDomNodeTop(t)}catch(e){De(e)}},t.prototype.prepareRender=function(e){},t.prototype.render=function(e){for(var t=e.viewportData.whitespaceViewportData,n={},i=!1,o=0,r=t.length;o<r;o++)n[t[o].id]=t[o],i=!0;var s=Object.keys(this._zones);for(o=0,r=s.length;o<r;o++){var a=s[o],u=this._zones[a],l=0,c=0,d="none";n.hasOwnProperty(a)?(l=n[a].verticalOffset-e.bigNumbersDelta,c=n[a].height,d="block",u.isVisible||(u.domNode.setAttribute("monaco-visible-view-zone","true"),u.isVisible=!0),this._safeCallOnDomNodeTop(u.delegate,e.getScrolledTopFromAbsoluteTop(n[a].verticalOffset))):(u.isVisible&&(u.domNode.removeAttribute("monaco-visible-view-zone"),u.isVisible=!1),this._safeCallOnDomNodeTop(u.delegate,e.getScrolledTopFromAbsoluteTop(-1e6))),u.domNode.setTop(l),u.domNode.setHeight(c),u.domNode.setDisplay(d),u.marginDomNode&&(u.marginDomNode.setTop(l),u.marginDomNode.setHeight(c),u.marginDomNode.setDisplay(d))}i&&(this.domNode.setWidth(Math.max(e.scrollWidth,this._contentWidth)),this.marginDomNode.setWidth(this._contentLeft))},t}(og);var xL=function(){function e(e,t,n,i){this.configuration=e,this.theme=t,this.model=n,this.viewLayout=n.viewLayout,this.privateViewEventBus=i}return e.prototype.addEventHandler=function(e){this.privateViewEventBus.addEventHandler(e)},e.prototype.removeEventHandler=function(e){this.privateViewEventBus.removeEventHandler(e)},e}(),DL=function(){function e(e){this._eventHandlerGateKeeper=e,this._eventHandlers=[],this._eventQueue=null,this._isConsumingQueue=!1}return e.prototype.addEventHandler=function(e){for(var t=0,n=this._eventHandlers.length;t<n;t++)this._eventHandlers[t]===e&&console.warn("Detected duplicate listener in ViewEventDispatcher",e);this._eventHandlers.push(e)},e.prototype.removeEventHandler=function(e){for(var t=0;t<this._eventHandlers.length;t++)if(this._eventHandlers[t]===e){this._eventHandlers.splice(t,1);break}},e.prototype.emit=function(e){this._eventQueue?this._eventQueue.push(e):this._eventQueue=[e],this._isConsumingQueue||this.consumeQueue()},e.prototype.emitMany=function(e){this._eventQueue?this._eventQueue=this._eventQueue.concat(e):this._eventQueue=e,this._isConsumingQueue||this.consumeQueue()},e.prototype.consumeQueue=function(){var e=this;this._eventHandlerGateKeeper((function(){try{e._isConsumingQueue=!0,e._doConsumeQueue()}finally{e._isConsumingQueue=!1}}))},e.prototype._doConsumeQueue=function(){for(;this._eventQueue;){var e=this._eventQueue;this._eventQueue=null;for(var t=this._eventHandlers.slice(0),n=0,i=t.length;n<i;n++)t[n].handleEvents(e)}},e}(),NL=function(){function e(e,t,n,i){this.selections=e,this.startLineNumber=0|t.startLineNumber,this.endLineNumber=0|t.endLineNumber,this.relativeVerticalOffset=t.relativeVerticalOffset,this.bigNumbersDelta=0|t.bigNumbersDelta,this.whitespaceViewportData=n,this._model=i,this.visibleRange=new wn(t.startLineNumber,this._model.getLineMinColumn(t.startLineNumber),t.endLineNumber,this._model.getLineMaxColumn(t.endLineNumber))}return e.prototype.getViewLineRenderingData=function(e){return this._model.getViewLineRenderingData(this.visibleRange,e)},e.prototype.getDecorationsInViewport=function(){return this._model.getDecorationsInViewport(this.visibleRange)},e}(),kL=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),EL=function(e){function t(t,n,i,o,r,s){var a=e.call(this)||this;a._cursor=r,a._renderAnimationFrame=null,a.outgoingEvents=s;var u=new wC(n,o,a.outgoingEvents,t);a.eventDispatcher=new DL((function(e){return a._renderOnce(e)})),a.eventDispatcher.addEventHandler(a),a._context=new xL(n,i.getTheme(),o,a.eventDispatcher),a._register(i.onThemeChange((function(e){a._context.theme=e,a.eventDispatcher.emit(new xw),a.render(!0,!1)}))),a.viewParts=[],a._textAreaHandler=new Rw(a._context,u,a.createTextAreaHandlerHelper()),a.viewParts.push(a._textAreaHandler),a.linesContent=Ff(document.createElement("div")),a.linesContent.setClassName("lines-content monaco-editor-background"),a.linesContent.setPosition("absolute"),a.domNode=Ff(document.createElement("div")),a.domNode.setClassName(a.getEditorClassName()),a.overflowGuardContainer=Ff(document.createElement("div")),rg.write(a.overflowGuardContainer,3),a.overflowGuardContainer.setClassName("overflow-guard"),a._scrollbar=new _S(a._context,a.linesContent,a.domNode,a.overflowGuardContainer),a.viewParts.push(a._scrollbar),a.viewLines=new kS(a._context,a.linesContent),a.viewZones=new LL(a._context),a.viewParts.push(a.viewZones);var l=new eL(a._context);a.viewParts.push(l);var c=new lL(a._context);a.viewParts.push(c);var d=new OC(a._context);a.viewParts.push(d),d.addDynamicOverlay(new BC(a._context)),d.addDynamicOverlay(new mL(a._context)),d.addDynamicOverlay(new LS(a._context)),d.addDynamicOverlay(new jC(a._context));var h=new MC(a._context);a.viewParts.push(h),h.addDynamicOverlay(new HC(a._context)),h.addDynamicOverlay(new CS(a._context)),h.addDynamicOverlay(new MS(a._context)),h.addDynamicOverlay(new IS(a._context)),h.addDynamicOverlay(new uw(a._context));var p=new cw(a._context);p.getDomNode().appendChild(a.viewZones.marginDomNode),p.getDomNode().appendChild(h.getDomNode()),a.viewParts.push(p),a.contentWidgets=new RC(a._context,a.domNode),a.viewParts.push(a.contentWidgets),a.viewCursors=new wL(a._context),a.viewParts.push(a.viewCursors),a.overlayWidgets=new $S(a._context),a.viewParts.push(a.overlayWidgets);var f=new aL(a._context);a.viewParts.push(f);var g=new YS(a._context);if(a.viewParts.push(g),l){var m=a._scrollbar.getOverviewRulerLayoutInfo();m.parent.insertBefore(l.getDomNode(),m.insertBefore)}return a.linesContent.appendChild(d.getDomNode()),a.linesContent.appendChild(f.domNode),a.linesContent.appendChild(a.viewZones.domNode),a.linesContent.appendChild(a.viewLines.getDomNode()),a.linesContent.appendChild(a.contentWidgets.domNode),a.linesContent.appendChild(a.viewCursors.getDomNode()),a.overflowGuardContainer.appendChild(p.getDomNode()),a.overflowGuardContainer.appendChild(a._scrollbar.getDomNode()),a.overflowGuardContainer.appendChild(c.getDomNode()),a.overflowGuardContainer.appendChild(a._textAreaHandler.textArea),a.overflowGuardContainer.appendChild(a._textAreaHandler.textAreaCover),a.overflowGuardContainer.appendChild(a.overlayWidgets.getDomNode()),a.overflowGuardContainer.appendChild(g.getDomNode()),a.domNode.appendChild(a.overflowGuardContainer),a.domNode.appendChild(a.contentWidgets.overflowingContentWidgetsDomNode),a._applyLayout(),a.pointerHandler=a._register(new p_(a._context,u,a.createPointerHandlerHelper())),a._register(o.addEventListener((function(e){a.eventDispatcher.emitMany(e)}))),a._register(a._cursor.addEventListener((function(e){a.eventDispatcher.emitMany(e)}))),a}return kL(t,e),t.prototype._flushAccumulatedAndRenderNow=function(){this._renderNow()},t.prototype.createPointerHandlerHelper=function(){var e=this;return{viewDomNode:this.domNode.domNode,linesContentDomNode:this.linesContent.domNode,focusTextArea:function(){e.focus()},getLastRenderData:function(){var t=e.viewCursors.getLastRenderData()||[],n=e._textAreaHandler.getLastRenderData();return new Gv(t,n)},shouldSuppressMouseDownOnViewZone:function(t){return e.viewZones.shouldSuppressMouseDownOnViewZone(t)},shouldSuppressMouseDownOnWidget:function(t){return e.contentWidgets.shouldSuppressMouseDownOnWidget(t)},getPositionFromDOMInfo:function(t,n){return e._flushAccumulatedAndRenderNow(),e.viewLines.getPositionFromDOMInfo(t,n)},visibleRangeForPosition:function(t,n){return e._flushAccumulatedAndRenderNow(),e.viewLines.visibleRangeForPosition(new bn(t,n))},getLineWidth:function(t){return e._flushAccumulatedAndRenderNow(),e.viewLines.getLineWidth(t)}}},t.prototype.createTextAreaHandlerHelper=function(){var e=this;return{visibleRangeForPositionRelativeToEditor:function(t,n){return e._flushAccumulatedAndRenderNow(),e.viewLines.visibleRangeForPosition(new bn(t,n))}}},t.prototype._applyLayout=function(){var e=this._context.configuration.options.get(107);this.domNode.setWidth(e.width),this.domNode.setHeight(e.height),this.overflowGuardContainer.setWidth(e.width),this.overflowGuardContainer.setHeight(e.height),this.linesContent.setWidth(1e6),this.linesContent.setHeight(1e6)},t.prototype.getEditorClassName=function(){var e=this._textAreaHandler.isFocused()?" focused":"";return this._context.configuration.options.get(104)+" "+mg(this._context.theme.type)+e},t.prototype.onConfigurationChanged=function(e){return this.domNode.setClassName(this.getEditorClassName()),this._applyLayout(),!1},t.prototype.onContentSizeChanged=function(e){return this.outgoingEvents.emitContentSizeChange(e),!1},t.prototype.onFocusChanged=function(e){return this.domNode.setClassName(this.getEditorClassName()),this._context.model.setHasFocus(e.isFocused),e.isFocused?this.outgoingEvents.emitViewFocusGained():this.outgoingEvents.emitViewFocusLost(),!1},t.prototype.onScrollChanged=function(e){return this.outgoingEvents.emitScrollChanged(e),!1},t.prototype.onThemeChanged=function(e){return this.domNode.setClassName(this.getEditorClassName()),!1},t.prototype.dispose=function(){null!==this._renderAnimationFrame&&(this._renderAnimationFrame.dispose(),this._renderAnimationFrame=null),this.eventDispatcher.removeEventHandler(this),this.outgoingEvents.dispose(),this.viewLines.dispose();for(var t=0,n=this.viewParts.length;t<n;t++)this.viewParts[t].dispose();this.viewParts=[],e.prototype.dispose.call(this)},t.prototype._renderOnce=function(e){var t=IL(e);return this._scheduleRender(),t},t.prototype._scheduleRender=function(){null===this._renderAnimationFrame&&(this._renderAnimationFrame=go(this._onRenderScheduled.bind(this),100))},t.prototype._onRenderScheduled=function(){this._renderAnimationFrame=null,this._flushAccumulatedAndRenderNow()},t.prototype._renderNow=function(){var e=this;IL((function(){return e._actualRender()}))},t.prototype._getViewPartsToRender=function(){for(var e=[],t=0,n=0,i=this.viewParts.length;n<i;n++){var o=this.viewParts[n];o.shouldRender()&&(e[t++]=o)}return e},t.prototype._actualRender=function(){if($i(this.domNode.domNode)){var e=this._getViewPartsToRender();if(this.viewLines.shouldRender()||0!==e.length){var t=this._context.viewLayout.getLinesViewportData();this._context.model.setViewport(t.startLineNumber,t.endLineNumber,t.centeredLineNumber);var n=new NL(this._cursor.getViewSelections(),t,this._context.viewLayout.getWhitespaceViewportData(),this._context.model);this.contentWidgets.shouldRender()&&this.contentWidgets.onBeforeRender(n),this.viewLines.shouldRender()&&(this.viewLines.renderText(n),this.viewLines.onDidRender(),e=this._getViewPartsToRender());for(var i=new ag(this._context.viewLayout,n,this.viewLines),o=0,r=e.length;o<r;o++){(s=e[o]).prepareRender(i)}for(o=0,r=e.length;o<r;o++){var s;(s=e[o]).render(i),s.onDidRender()}}}},t.prototype.delegateVerticalScrollbarMouseDown=function(e){this._scrollbar.delegateVerticalScrollbarMouseDown(e)},t.prototype.restoreState=function(e){this._context.viewLayout.setScrollPositionNow({scrollTop:e.scrollTop}),this._context.model.tokenizeViewport(),this._renderNow(),this.viewLines.updateLineWidths(),this._context.viewLayout.setScrollPositionNow({scrollLeft:e.scrollLeft})},t.prototype.getOffsetForColumn=function(e,t){var n=this._context.model.validateModelPosition({lineNumber:e,column:t}),i=this._context.model.coordinatesConverter.convertModelPositionToViewPosition(n);this._flushAccumulatedAndRenderNow();var o=this.viewLines.visibleRangeForPosition(new bn(i.lineNumber,i.column));return o?o.left:-1},t.prototype.getTargetAtClientPoint=function(e,t){var n=this.pointerHandler.getTargetAtClientPoint(e,t);return n?SC.convertViewToModelMouseTarget(n,this._context.model.coordinatesConverter):null},t.prototype.createOverviewRuler=function(e){return new rL(this._context,e)},t.prototype.change=function(e){var t=this;return this._renderOnce((function(){var n=t.viewZones.changeViewZones(e);return n&&(t._context.viewLayout.onHeightMaybeChanged(),t._context.privateViewEventBus.emit(new kw)),n}))},t.prototype.render=function(e,t){if(t){this.viewLines.forceShouldRender();for(var n=0,i=this.viewParts.length;n<i;n++){this.viewParts[n].forceShouldRender()}}e?this._flushAccumulatedAndRenderNow():this._scheduleRender()},t.prototype.focus=function(){this._textAreaHandler.focusTextArea()},t.prototype.isFocused=function(){return this._textAreaHandler.isFocused()},t.prototype.setAriaOptions=function(e){this._textAreaHandler.setAriaOptions(e)},t.prototype.addContentWidget=function(e){this.contentWidgets.addWidget(e.widget),this.layoutContentWidget(e),this._scheduleRender()},t.prototype.layoutContentWidget=function(e){var t=e.position&&e.position.range||null;if(null===t){var n=e.position?e.position.position:null;null!==n&&(t=new wn(n.lineNumber,n.column,n.lineNumber,n.column))}var i=e.position?e.position.preference:null;this.contentWidgets.setWidgetPosition(e.widget,t,i),this._scheduleRender()},t.prototype.removeContentWidget=function(e){this.contentWidgets.removeWidget(e.widget),this._scheduleRender()},t.prototype.addOverlayWidget=function(e){this.overlayWidgets.addWidget(e.widget),this.layoutOverlayWidget(e),this._scheduleRender()},t.prototype.layoutOverlayWidget=function(e){var t=e.position?e.position.preference:null;this.overlayWidgets.setWidgetPosition(e.widget,t)&&this._scheduleRender()},t.prototype.removeOverlayWidget=function(e){this.overlayWidgets.removeWidget(e.widget),this._scheduleRender()},t}(ng);function IL(e){try{return e()}catch(e){De(e)}}var OL=function(){function e(e){this._selTrackedRange=null,this._trackSelection=!0,this._setState(e,new Wv(new wn(1,1,1,1),0,new bn(1,1),0),new Wv(new wn(1,1,1,1),0,new bn(1,1),0))}return e.prototype.dispose=function(e){this._removeTrackedRange(e)},e.prototype.startTrackingSelection=function(e){this._trackSelection=!0,this._updateTrackedRange(e)},e.prototype.stopTrackingSelection=function(e){this._trackSelection=!1,this._removeTrackedRange(e)},e.prototype._updateTrackedRange=function(e){this._trackSelection&&(this._selTrackedRange=e.model._setTrackedRange(this._selTrackedRange,this.modelState.selection,0))},e.prototype._removeTrackedRange=function(e){this._selTrackedRange=e.model._setTrackedRange(this._selTrackedRange,null,0)},e.prototype.asCursorState=function(){return new zv(this.modelState,this.viewState)},e.prototype.readSelectionFromMarkers=function(e){var t=e.model._getTrackedRange(this._selTrackedRange);return 0===this.modelState.selection.getDirection()?new Sn(t.startLineNumber,t.startColumn,t.endLineNumber,t.endColumn):new Sn(t.endLineNumber,t.endColumn,t.startLineNumber,t.startColumn)},e.prototype.ensureValidState=function(e){this._setState(e,this.modelState,this.viewState)},e.prototype.setState=function(e,t,n){this._setState(e,t,n)},e.prototype._setState=function(e,t,n){if(t){r=e.model.validateRange(t.selectionStart);var i=t.selectionStart.equalsRange(r)?t.selectionStartLeftoverVisibleColumns:0,o=(s=e.model.validatePosition(t.position),t.position.equals(s)?t.leftoverVisibleColumns:0);t=new Wv(r,i,s,o)}else{if(!n)return;var r=e.model.validateRange(e.convertViewRangeToModelRange(n.selectionStart)),s=e.model.validatePosition(e.convertViewPositionToModelPosition(n.position.lineNumber,n.position.column));t=new Wv(r,n.selectionStartLeftoverVisibleColumns,s,n.leftoverVisibleColumns)}if(n){l=e.validateViewRange(n.selectionStart,t.selectionStart),c=e.validateViewPosition(n.position,t.position);n=new Wv(l,t.selectionStartLeftoverVisibleColumns,c,t.leftoverVisibleColumns)}else{var a=e.convertModelPositionToViewPosition(new bn(t.selectionStart.startLineNumber,t.selectionStart.startColumn)),u=e.convertModelPositionToViewPosition(new bn(t.selectionStart.endLineNumber,t.selectionStart.endColumn)),l=new wn(a.lineNumber,a.column,u.lineNumber,u.column),c=e.convertModelPositionToViewPosition(t.position);n=new Wv(l,t.selectionStartLeftoverVisibleColumns,c,t.leftoverVisibleColumns)}this.modelState=t,this.viewState=n,this._updateTrackedRange(e)},e}(),ML=function(){function e(e){this.context=e,this.primaryCursor=new OL(e),this.secondaryCursors=[],this.lastAddedCursorIndex=0}return e.prototype.dispose=function(){this.primaryCursor.dispose(this.context),this.killSecondaryCursors()},e.prototype.startTrackingSelections=function(){this.primaryCursor.startTrackingSelection(this.context);for(var e=0,t=this.secondaryCursors.length;e<t;e++)this.secondaryCursors[e].startTrackingSelection(this.context)},e.prototype.stopTrackingSelections=function(){this.primaryCursor.stopTrackingSelection(this.context);for(var e=0,t=this.secondaryCursors.length;e<t;e++)this.secondaryCursors[e].stopTrackingSelection(this.context)},e.prototype.updateContext=function(e){this.context=e},e.prototype.ensureValidState=function(){this.primaryCursor.ensureValidState(this.context);for(var e=0,t=this.secondaryCursors.length;e<t;e++)this.secondaryCursors[e].ensureValidState(this.context)},e.prototype.readSelectionFromMarkers=function(){var e=[];e[0]=this.primaryCursor.readSelectionFromMarkers(this.context);for(var t=0,n=this.secondaryCursors.length;t<n;t++)e[t+1]=this.secondaryCursors[t].readSelectionFromMarkers(this.context);return e},e.prototype.getAll=function(){var e=[];e[0]=this.primaryCursor.asCursorState();for(var t=0,n=this.secondaryCursors.length;t<n;t++)e[t+1]=this.secondaryCursors[t].asCursorState();return e},e.prototype.getViewPositions=function(){var e=[];e[0]=this.primaryCursor.viewState.position;for(var t=0,n=this.secondaryCursors.length;t<n;t++)e[t+1]=this.secondaryCursors[t].viewState.position;return e},e.prototype.getSelections=function(){var e=[];e[0]=this.primaryCursor.modelState.selection;for(var t=0,n=this.secondaryCursors.length;t<n;t++)e[t+1]=this.secondaryCursors[t].modelState.selection;return e},e.prototype.getViewSelections=function(){var e=[];e[0]=this.primaryCursor.viewState.selection;for(var t=0,n=this.secondaryCursors.length;t<n;t++)e[t+1]=this.secondaryCursors[t].viewState.selection;return e},e.prototype.setSelections=function(e){this.setStates(zv.fromModelSelections(e))},e.prototype.getPrimaryCursor=function(){return this.primaryCursor.asCursorState()},e.prototype.setStates=function(e){null!==e&&(this.primaryCursor.setState(this.context,e[0].modelState,e[0].viewState),this._setSecondaryStates(e.slice(1)))},e.prototype._setSecondaryStates=function(e){var t=this.secondaryCursors.length,n=e.length;if(t<n)for(var i=n-t,o=0;o<i;o++)this._addSecondaryCursor();else if(t>n){var r=t-n;for(o=0;o<r;o++)this._removeSecondaryCursor(this.secondaryCursors.length-1)}for(o=0;o<n;o++)this.secondaryCursors[o].setState(this.context,e[o].modelState,e[o].viewState)},e.prototype.killSecondaryCursors=function(){this._setSecondaryStates([])},e.prototype._addSecondaryCursor=function(){this.secondaryCursors.push(new OL(this.context)),this.lastAddedCursorIndex=this.secondaryCursors.length},e.prototype.getLastAddedCursorIndex=function(){return 0===this.secondaryCursors.length||0===this.lastAddedCursorIndex?0:this.lastAddedCursorIndex},e.prototype._removeSecondaryCursor=function(e){this.lastAddedCursorIndex>=e+1&&this.lastAddedCursorIndex--,this.secondaryCursors[e].dispose(this.context),this.secondaryCursors.splice(e,1)},e.prototype._getAll=function(){var e=[];e[0]=this.primaryCursor;for(var t=0,n=this.secondaryCursors.length;t<n;t++)e[t+1]=this.secondaryCursors[t];return e},e.prototype.normalize=function(){if(0!==this.secondaryCursors.length){for(var e=this._getAll(),t=[],n=0,i=e.length;n<i;n++)t.push({index:n,selection:e[n].modelState.selection});t.sort((function(e,t){return e.selection.startLineNumber===t.selection.startLineNumber?e.selection.startColumn-t.selection.startColumn:e.selection.startLineNumber-t.selection.startLineNumber}));for(var o=0;o<t.length-1;o++){var r=t[o],s=t[o+1],a=r.selection,u=s.selection;if(this.context.config.multiCursorMergeOverlapping){if(u.isEmpty()||a.isEmpty()?u.getStartPosition().isBeforeOrEqual(a.getEndPosition()):u.getStartPosition().isBefore(a.getEndPosition())){var l=r.index<s.index?o:o+1,c=r.index<s.index?o+1:o,d=t[c].index,h=t[l].index,p=t[c].selection,f=t[l].selection;if(!p.equalsSelection(f)){var g=p.plusRange(f),m=p.selectionStartLineNumber===p.startLineNumber&&p.selectionStartColumn===p.startColumn,v=f.selectionStartLineNumber===f.startLineNumber&&f.selectionStartColumn===f.startColumn,_=void 0;d===this.lastAddedCursorIndex?(_=m,this.lastAddedCursorIndex=h):_=v;var y=void 0;y=_?new Sn(g.startLineNumber,g.startColumn,g.endLineNumber,g.endColumn):new Sn(g.endLineNumber,g.endColumn,g.startLineNumber,g.startColumn),t[l].selection=y;var b=zv.fromModelSelection(y);e[h].setState(this.context,b.modelState,b.viewState)}for(var w=0,C=t;w<C.length;w++){var S=C[w];S.index>d&&S.index--}e.splice(d,1),t.splice(c,1),this._removeSecondaryCursor(d-1),o--}}}}},e}(),TL=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();var PL=function(e,t,n,i,o,r){this.selections=e,this.modelVersionId=t,this.oldSelections=n,this.oldModelVersionId=i,this.source=o,this.reason=r},RL=function(){function e(e,t){this.modelVersionId=e.getVersionId(),this.cursorState=t.getAll()}return e.prototype.equals=function(e){if(!e)return!1;if(this.modelVersionId!==e.modelVersionId)return!1;if(this.cursorState.length!==e.cursorState.length)return!1;for(var t=0,n=this.cursorState.length;t<n;t++)if(!this.cursorState[t].equals(e.cursorState[t]))return!1;return!0},e}(),AL=function(){function e(e,t,n){this._model=e,this._autoClosedCharactersDecorations=t,this._autoClosedEnclosingDecorations=n}return e.getAllAutoClosedCharacters=function(e){for(var t=[],n=0,i=e;n<i.length;n++){var o=i[n];t=t.concat(o.getAutoClosedCharactersRanges())}return t},e.prototype.dispose=function(){this._autoClosedCharactersDecorations=this._model.deltaDecorations(this._autoClosedCharactersDecorations,[]),this._autoClosedEnclosingDecorations=this._model.deltaDecorations(this._autoClosedEnclosingDecorations,[])},e.prototype.getAutoClosedCharactersRanges=function(){for(var e=[],t=0;t<this._autoClosedCharactersDecorations.length;t++){var n=this._model.getDecorationRange(this._autoClosedCharactersDecorations[t]);n&&e.push(n)}return e},e.prototype.isValid=function(e){for(var t=[],n=0;n<this._autoClosedEnclosingDecorations.length;n++){var i=this._model.getDecorationRange(this._autoClosedEnclosingDecorations[n]);if(i&&(t.push(i),i.startLineNumber!==i.endLineNumber))return!1}t.sort(wn.compareRangesUsingStarts),e.sort(wn.compareRangesUsingStarts);for(n=0;n<e.length;n++){if(n>=t.length)return!1;if(!t[n].strictContainsRange(e[n]))return!1}return!0},e}(),FL=function(e){function t(t,n,i){var o=e.call(this)||this;o._onDidReachMaxCursorCount=o._register(new nt),o.onDidReachMaxCursorCount=o._onDidReachMaxCursorCount.event,o._onDidAttemptReadOnlyEdit=o._register(new nt),o.onDidAttemptReadOnlyEdit=o._onDidAttemptReadOnlyEdit.event,o._onDidChange=o._register(new nt),o.onDidChange=o._onDidChange.event,o._configuration=t,o._model=n,o._knownModelVersionId=o._model.getVersionId(),o._viewModel=i,o.context=new Vv(o._configuration,o._model,o._viewModel),o._cursors=new ML(o.context),o._isHandling=!1,o._isDoingComposition=!1,o._selectionsWhenCompositionStarted=null,o._columnSelectData=null,o._autoClosedActions=[],o._prevEditOperationType=0,o._register(o._model.onDidChangeRawContent((function(e){if(o._knownModelVersionId=e.versionId,!o._isHandling){var t=e.containsEvent(1);o._onModelContentChanged(t)}}))),o._register(i.addEventListener((function(e){(function(e){for(var t=0,n=e.length;t<n;t++)if(8===e[t].type)return!0;return!1})(e)&&o._knownModelVersionId===o._model.getVersionId()&&o.setStates("viewModel",0,o.getAll())})));var r=function(){o.context=new Vv(o._configuration,o._model,o._viewModel),o._cursors.updateContext(o.context)};return o._register(o._model.onDidChangeLanguage((function(e){r()}))),o._register(o._model.onDidChangeLanguageConfiguration((function(){r()}))),o._register(o._model.onDidChangeOptions((function(){r()}))),o._register(o._configuration.onDidChange((function(e){Fv.shouldRecreate(e)&&r()}))),o}return TL(t,e),t.prototype.dispose=function(){this._cursors.dispose(),this._autoClosedActions=Ae(this._autoClosedActions),e.prototype.dispose.call(this)},t.prototype._validateAutoClosedActions=function(){if(this._autoClosedActions.length>0)for(var e=this._cursors.getSelections(),t=0;t<this._autoClosedActions.length;t++){var n=this._autoClosedActions[t];n.isValid(e)||(n.dispose(),this._autoClosedActions.splice(t,1),t--)}},t.prototype.getPrimaryCursor=function(){return this._cursors.getPrimaryCursor()},t.prototype.getLastAddedCursorIndex=function(){return this._cursors.getLastAddedCursorIndex()},t.prototype.getAll=function(){return this._cursors.getAll()},t.prototype.setStates=function(e,n,i){null!==i&&i.length>t.MAX_CURSOR_COUNT&&(i=i.slice(0,t.MAX_CURSOR_COUNT),this._onDidReachMaxCursorCount.fire(void 0));var o=new RL(this._model,this);this._cursors.setStates(i),this._cursors.normalize(),this._columnSelectData=null,this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(e,n,o)},t.prototype.setColumnSelectData=function(e){this._columnSelectData=e},t.prototype.reveal=function(e,t,n,i){this._revealRange(e,n,0,t,i)},t.prototype.revealRange=function(e,t,n,i,o){this.emitCursorRevealRange(e,n,i,t,o)},t.prototype.scrollTo=function(e){this._viewModel.viewLayout.setScrollPositionSmooth({scrollTop:e})},t.prototype.saveState=function(){for(var e=[],t=this._cursors.getSelections(),n=0,i=t.length;n<i;n++){var o=t[n];e.push({inSelectionMode:!o.isEmpty(),selectionStart:{lineNumber:o.selectionStartLineNumber,column:o.selectionStartColumn},position:{lineNumber:o.positionLineNumber,column:o.positionColumn}})}return e},t.prototype.restoreState=function(e){for(var t=[],n=0,i=e.length;n<i;n++){var o=e[n],r=1,s=1;o.position&&o.position.lineNumber&&(r=o.position.lineNumber),o.position&&o.position.column&&(s=o.position.column);var a=r,u=s;o.selectionStart&&o.selectionStart.lineNumber&&(a=o.selectionStart.lineNumber),o.selectionStart&&o.selectionStart.column&&(u=o.selectionStart.column),t.push({selectionStartLineNumber:a,selectionStartColumn:u,positionLineNumber:r,positionColumn:s})}this.setStates("restoreState",0,zv.fromModelSelections(t)),this.reveal("restoreState",!0,0,1)},t.prototype._onModelContentChanged=function(e){if(this._prevEditOperationType=0,e)this._cursors.dispose(),this._cursors=new ML(this.context),this._validateAutoClosedActions(),this._emitStateChangedIfNecessary("model",1,null);else{var t=this._cursors.readSelectionFromMarkers();this.setStates("modelChange",2,zv.fromModelSelections(t))}},t.prototype.getSelection=function(){return this._cursors.getPrimaryCursor().modelState.selection},t.prototype.getColumnSelectData=function(){if(this._columnSelectData)return this._columnSelectData;var e=this._cursors.getPrimaryCursor().viewState.selectionStart.getStartPosition(),t=e.lineNumber,n=Uv.visibleColumnFromColumn2(this.context.config,this.context.viewModel,e);return{isReal:!1,fromViewLineNumber:t,fromViewVisualColumn:n,toViewLineNumber:t,toViewVisualColumn:n}},t.prototype.getSelections=function(){return this._cursors.getSelections()},t.prototype.getViewSelections=function(){return this._cursors.getViewSelections()},t.prototype.getPosition=function(){return this._cursors.getPrimaryCursor().modelState.position},t.prototype.setSelections=function(e,t){this.setStates(e,0,zv.fromModelSelections(t))},t.prototype.getPrevEditOperationType=function(){return this._prevEditOperationType},t.prototype.setPrevEditOperationType=function(e){this._prevEditOperationType=e},t.prototype._pushAutoClosedAction=function(e,t){for(var n=[],i=[],o=0,r=e.length;o<r;o++)n.push({range:e[o],options:{inlineClassName:"auto-closed-character",stickiness:1}}),i.push({range:t[o],options:{stickiness:1}});var s=this._model.deltaDecorations([],n),a=this._model.deltaDecorations([],i);this._autoClosedActions.push(new AL(this._model,s,a))},t.prototype._executeEditOperation=function(e){if(e){e.shouldPushStackElementBefore&&this._model.pushStackElement();var t=WL.executeCommands(this._model,this._cursors.getSelections(),e.commands);if(t){this._interpretCommandResult(t);for(var n=[],i=[],o=0;o<e.commands.length;o++){var r=e.commands[o];r instanceof sC&&r.enclosingRange&&r.closeCharacterRange&&(n.push(r.closeCharacterRange),i.push(r.enclosingRange))}n.length>0&&this._pushAutoClosedAction(n,i),this._prevEditOperationType=e.type}e.shouldPushStackElementAfter&&this._model.pushStackElement()}},t.prototype._interpretCommandResult=function(e){e&&0!==e.length||(e=this._cursors.readSelectionFromMarkers()),this._columnSelectData=null,this._cursors.setSelections(e),this._cursors.normalize()},t.prototype._emitStateChangedIfNecessary=function(e,t,n){var i=new RL(this._model,this);if(i.equals(n))return!1;var o=this._cursors.getSelections(),r=this._cursors.getViewSelections();try{this._beginEmit().emit(new fw(r,o))}finally{this._endEmit()}if(!n||n.cursorState.length!==i.cursorState.length||i.cursorState.some((function(e,t){return!e.modelState.equals(n.cursorState[t].modelState)}))){var s=n?n.cursorState.map((function(e){return e.modelState.selection})):null,a=n?n.modelVersionId:0;this._onDidChange.fire(new PL(o,i.modelVersionId,s,a,e||"keyboard",t))}return!0},t.prototype._revealRange=function(e,t,n,i,o){var r=this._cursors.getViewPositions(),s=r[0];if(1===t)for(var a=1;a<r.length;a++)r[a].isBefore(s)&&(s=r[a]);else if(2===t)for(a=1;a<r.length;a++)s.isBeforeOrEqual(r[a])&&(s=r[a]);else if(r.length>1)return;var u=new wn(s.lineNumber,s.column,s.lineNumber,s.column);this.emitCursorRevealRange(e,u,n,i,o)},t.prototype.emitCursorRevealRange=function(e,t,n,i,o){try{this._beginEmit().emit(new Sw(e,t,n,i,o))}finally{this._endEmit()}},t.prototype._findAutoClosingPairs=function(e){if(!e.length)return null;for(var t=[],n=0,i=e.length;n<i;n++){var o=e[n];if(!o.text||o.text.indexOf("\n")>=0)return null;var r=o.text.match(/([)\]}>'"`])([^)\]}>'"`]*)$/);if(!r)return null;var s=r[1],a=this.context.config.autoClosingPairsClose2.get(s);if(!a||1!==a.length)return null;var u=a[0].open,l=o.text.length-r[2].length-1,c=o.text.lastIndexOf(u,l-1);if(-1===c)return null;t.push([c,l])}return t},t.prototype.executeEdits=function(e,t,n){var i=this,o=null;"snippet"===e&&(o=this._findAutoClosingPairs(t)),o&&(t[0]._isTracked=!0);var r=[],s=[],a=this._model.pushEditOperations(this.getSelections(),t,(function(e){if(o)for(var t=0,a=o.length;t<a;t++){var u=o[t],l=u[0],c=u[1],d=e[t],h=d.range.startLineNumber,p=d.range.startColumn-1+l,f=d.range.startColumn-1+c;r.push(new wn(h,f+1,h,f+2)),s.push(new wn(h,p+1,h,f+2))}var g=n(e);return g&&(i._isHandling=!0),g}));a&&(this._isHandling=!1,this.setSelections(e,a)),r.length>0&&this._pushAutoClosedAction(r,s)},t.prototype.trigger=function(e,t,n){var i=za;if(t===i.CompositionStart)return this._isDoingComposition=!0,void(this._selectionsWhenCompositionStarted=this.getSelections().slice(0));if(t===i.CompositionEnd&&(this._isDoingComposition=!1),this._configuration.options.get(68))this._onDidAttemptReadOnlyEdit.fire(void 0);else{var o=new RL(this._model,this),r=0;t!==i.Undo&&t!==i.Redo&&this._cursors.stopTrackingSelections(),this._cursors.ensureValidState(),this._isHandling=!0;try{switch(t){case i.Type:this._type(e,n.text);break;case i.ReplacePreviousChar:this._replacePreviousChar(n.text,n.replaceCharCnt);break;case i.Paste:r=4,this._paste(n.text,n.pasteOnNewLine,n.multicursorText||[]);break;case i.Cut:this._cut();break;case i.Undo:r=5,this._interpretCommandResult(this._model.undo());break;case i.Redo:r=6,this._interpretCommandResult(this._model.redo());break;case i.ExecuteCommand:this._externalExecuteCommand(n);break;case i.ExecuteCommands:this._externalExecuteCommands(n);break;case i.CompositionEnd:this._interpretCompositionEnd(e)}}catch(e){De(e)}this._isHandling=!1,t!==i.Undo&&t!==i.Redo&&this._cursors.startTrackingSelections(),this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(e,r,o)&&this._revealRange(e,0,0,!0,0)}},t.prototype._interpretCompositionEnd=function(e){if(!this._isDoingComposition&&"keyboard"===e){var t=AL.getAllAutoClosedCharacters(this._autoClosedActions);this._executeEditOperation(rC.compositionEndWithInterceptors(this._prevEditOperationType,this.context.config,this.context.model,this._selectionsWhenCompositionStarted,this.getSelections(),t)),this._selectionsWhenCompositionStarted=null}},t.prototype._type=function(e,t){if(this._isDoingComposition||"keyboard"!==e)this._executeEditOperation(rC.typeWithoutInterceptors(this._prevEditOperationType,this.context.config,this.context.model,this.getSelections(),t));else for(var n=t.length,i=0;i<n;){var o=Fr(t,i),r=t.substr(i,o),s=AL.getAllAutoClosedCharacters(this._autoClosedActions);this._executeEditOperation(rC.typeWithInterceptors(this._prevEditOperationType,this.context.config,this.context.model,this.getSelections(),s,r)),i+=o}},t.prototype._replacePreviousChar=function(e,t){this._executeEditOperation(rC.replacePreviousChar(this._prevEditOperationType,this.context.config,this.context.model,this.getSelections(),e,t))},t.prototype._paste=function(e,t,n){this._executeEditOperation(rC.paste(this.context.config,this.context.model,this.getSelections(),e,t,n))},t.prototype._cut=function(){this._executeEditOperation(Uw.cut(this.context.config,this.context.model,this.getSelections()))},t.prototype._externalExecuteCommand=function(e){this._cursors.killSecondaryCursors(),this._executeEditOperation(new jv(0,[e],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}))},t.prototype._externalExecuteCommands=function(e){this._executeEditOperation(new jv(0,e,{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}))},t.MAX_CURSOR_COUNT=1e4,t}(Ew),WL=function(){function e(){}return e.executeCommands=function(e,t,n){for(var i={model:e,selectionsBefore:t,trackedRanges:[],trackedRangesDirection:[]},o=this._innerExecuteCommands(i,n),r=0,s=i.trackedRanges.length;r<s;r++)i.model._setTrackedRange(i.trackedRanges[r],null,0);return o},e._innerExecuteCommands=function(e,t){if(this._arrayIsEmpty(t))return null;var n=this._getEditOperations(e,t);if(0===n.operations.length)return null;var i=n.operations,o=this._getLoserCursorMap(i);if(o.hasOwnProperty("0"))return console.warn("Ignoring commands"),null;for(var r=[],s=0,a=i.length;s<a;s++)o.hasOwnProperty(i[s].identifier.major.toString())||r.push(i[s]);n.hadTrackedEditOperation&&r.length>0&&(r[0]._isTracked=!0);var u=e.model.pushEditOperations(e.selectionsBefore,r,(function(n){for(var i=[],o=0;o<e.selectionsBefore.length;o++)i[o]=[];for(var r=0,s=n;r<s.length;r++){var a=s[r];a.identifier&&i[a.identifier.major].push(a)}var u=function(e,t){return e.identifier.minor-t.identifier.minor},l=[],c=function(n){i[n].length>0?(i[n].sort(u),l[n]=t[n].computeCursorState(e.model,{getInverseEditOperations:function(){return i[n]},getTrackedSelection:function(t){var n=parseInt(t,10),i=e.model._getTrackedRange(e.trackedRanges[n]);return 0===e.trackedRangesDirection[n]?new Sn(i.startLineNumber,i.startColumn,i.endLineNumber,i.endColumn):new Sn(i.endLineNumber,i.endColumn,i.startLineNumber,i.startColumn)}})):l[n]=e.selectionsBefore[n]};for(o=0;o<e.selectionsBefore.length;o++)c(o);return l}));u||(u=e.selectionsBefore);var l=[];for(var c in o)o.hasOwnProperty(c)&&l.push(parseInt(c,10));l.sort((function(e,t){return t-e}));for(var d=0,h=l;d<h.length;d++){var p=h[d];u.splice(p,1)}return u},e._arrayIsEmpty=function(e){for(var t=0,n=e.length;t<n;t++)if(e[t])return!1;return!0},e._getEditOperations=function(e,t){for(var n=[],i=!1,o=0,r=t.length;o<r;o++){var s=t[o];if(s){var a=this._getEditOperationsFromCommand(e,o,s);n=n.concat(a.operations),i=i||a.hadTrackedEditOperation}}return{operations:n,hadTrackedEditOperation:i}},e._getEditOperationsFromCommand=function(e,t,n){var i=[],o=0,r=function(e,r,s){void 0===s&&(s=!1),e.isEmpty()&&""===r||i.push({identifier:{major:t,minor:o++},range:e,text:r,forceMoveMarkers:s,isAutoWhitespaceEdit:n.insertsAutoWhitespace})},s=!1,a={addEditOperation:r,addTrackedEditOperation:function(e,t,n){s=!0,r(e,t,n)},trackSelection:function(t,n){var i;if(t.isEmpty())if("boolean"==typeof n)i=n?2:3;else{var o=e.model.getLineMaxColumn(t.startLineNumber);i=t.startColumn===o?2:3}else i=1;var r=e.trackedRanges.length,s=e.model._setTrackedRange(null,t,i);return e.trackedRanges[r]=s,e.trackedRangesDirection[r]=t.getDirection(),r.toString()}};try{n.getEditOperations(e.model,a)}catch(e){return De(e),{operations:[],hadTrackedEditOperation:!1}}return{operations:i,hadTrackedEditOperation:s}},e._getLoserCursorMap=function(e){(e=e.slice(0)).sort((function(e,t){return-wn.compareRangesUsingEnds(e.range,t.range)}));for(var t={},n=1;n<e.length;n++){var i=e[n-1],o=e[n];if(i.range.getStartPosition().isBefore(o.range.getEndPosition())){var r=void 0;t[(r=i.identifier.major>o.identifier.major?i.identifier.major:o.identifier.major).toString()]=!0;for(var s=0;s<e.length;s++)e[s].identifier.major===r&&(e.splice(s,1),s<n&&n--,s--);n>0&&n--}}return t},e}(),VL=function(){function e(e,t,n,i,o,r){this.id=e,this.label=t,this.alias=n,this._precondition=i,this._run=o,this._contextKeyService=r}return e.prototype.isSupported=function(){return this._contextKeyService.contextMatchesRules(this._precondition)},e.prototype.run=function(){if(!this.isSupported())return Promise.resolve(void 0);var e=this._run();return e||Promise.resolve(void 0)},e}(),BL={getInitialState:function(){return Xu},tokenize2:function(e,t,n){return Ju(0,0,t,n)}};function HL(e,t){return void 0===t&&(t=BL),function(e,t){for(var n='<div class="monaco-tokenized-source">',i=e.split(/\r\n|\r|\n/),o=t.getInitialState(),r=0,s=i.length;r<s;r++){var a=i[r];r>0&&(n+="<br/>");var u=t.tokenize2(a,o,0);Vc.convertToEndOffset(u.tokens,a.length);for(var l=new Vc(u.tokens,a).inflate(),c=0,d=0,h=l.getCount();d<h;d++){var p=l.getClassName(d),f=l.getEndOffset(d);n+='<span class="'+p+'">'+fr(a.substring(c,f))+"</span>",c=f}o=u.endState}return n+="</div>"}(e,t||BL)}function zL(e,t,n,i,o,r,s){for(var a="<div>",u=i,l=0,c=0,d=t.getCount();c<d;c++){var h=t.getEndOffset(c);if(!(h<=i)){for(var p="";u<h&&u<o;u++){var f=e.charCodeAt(u);switch(f){case 9:var g=r-(u+l)%r;for(l+=g-1;g>0;)p+=s?" ":" ",g--;break;case 60:p+="<";break;case 62:p+=">";break;case 38:p+="&";break;case 0:p+="�";break;case 65279:case 8232:p+="�";break;case 13:p+="​";break;case 32:p+=s?" ":" ";break;default:p+=String.fromCharCode(f)}}if(a+='<span style="'+t.getInlineStyle(c,n)+'">'+p+"</span>",h>o||u>=o)break}}return a+="</div>"}var jL=function(){function e(){this._hasPending=!1,this._inserts=[],this._changes=[],this._removes=[]}return e.prototype.insert=function(e){this._hasPending=!0,this._inserts.push(e)},e.prototype.change=function(e){this._hasPending=!0,this._changes.push(e)},e.prototype.remove=function(e){this._hasPending=!0,this._removes.push(e)},e.prototype.mustCommit=function(){return this._hasPending},e.prototype.commit=function(e){if(this._hasPending){var t=this._inserts,n=this._changes,i=this._removes;this._hasPending=!1,this._inserts=[],this._changes=[],this._removes=[],e._commitPendingChanges(t,n,i)}},e}(),UL=function(e,t,n,i,o){this.id=e,this.afterLineNumber=t,this.ordinal=n,this.height=i,this.minWidth=o,this.prefixSum=0},KL=function(){function e(t,n){this._instanceId=Yr(++e.INSTANCE_COUNT),this._pendingChanges=new jL,this._lastWhitespaceId=0,this._arr=[],this._prefixSumValidIndex=-1,this._minWidth=-1,this._lineCount=t,this._lineHeight=n}return e.findInsertionIndex=function(e,t,n){for(var i=0,o=e.length;i<o;){var r=i+o>>>1;t===e[r].afterLineNumber?n<e[r].ordinal?o=r:i=r+1:t<e[r].afterLineNumber?o=r:i=r+1}return i},e.prototype.setLineHeight=function(e){this._checkPendingChanges(),this._lineHeight=e},e.prototype.onFlushed=function(e){this._checkPendingChanges(),this._lineCount=e},e.prototype.changeWhitespace=function(e){var t=this;try{return e({insertWhitespace:function(e,n,i,o){e|=0,n|=0,i|=0,o|=0;var r=t._instanceId+ ++t._lastWhitespaceId;return t._pendingChanges.insert(new UL(r,e,n,i,o)),r},changeOneWhitespace:function(e,n,i){n|=0,i|=0,t._pendingChanges.change({id:e,newAfterLineNumber:n,newHeight:i})},removeWhitespace:function(e){t._pendingChanges.remove({id:e})}})}finally{this._pendingChanges.commit(this)}},e.prototype._commitPendingChanges=function(e,t,n){if((e.length>0||n.length>0)&&(this._minWidth=-1),e.length+t.length+n.length<=1){for(var i=0,o=e;i<o.length;i++){var r=o[i];this._insertWhitespace(r)}for(var s=0,a=t;s<a.length;s++){var u=a[s];this._changeOneWhitespace(u.id,u.newAfterLineNumber,u.newHeight)}for(var l=0,c=n;l<c.length;l++){var d=c[l],h=this._findWhitespaceIndex(d.id);-1!==h&&this._removeWhitespace(h)}}else{for(var p=new Set,f=0,g=n;f<g.length;f++){d=g[f];p.add(d.id)}for(var m=new Map,v=0,_=t;v<_.length;v++){u=_[v];m.set(u.id,u)}var y=function(e){for(var t=[],n=0,i=e;n<i.length;n++){var o=i[n];if(!p.has(o.id)){if(m.has(o.id)){var r=m.get(o.id);o.afterLineNumber=r.newAfterLineNumber,o.height=r.newHeight}t.push(o)}}return t},b=y(this._arr).concat(y(e));b.sort((function(e,t){return e.afterLineNumber===t.afterLineNumber?e.ordinal-t.ordinal:e.afterLineNumber-t.afterLineNumber})),this._arr=b,this._prefixSumValidIndex=-1}},e.prototype._checkPendingChanges=function(){this._pendingChanges.mustCommit()&&this._pendingChanges.commit(this)},e.prototype._insertWhitespace=function(t){var n=e.findInsertionIndex(this._arr,t.afterLineNumber,t.ordinal);this._arr.splice(n,0,t),this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,n-1)},e.prototype._findWhitespaceIndex=function(e){for(var t=this._arr,n=0,i=t.length;n<i;n++)if(t[n].id===e)return n;return-1},e.prototype._changeOneWhitespace=function(e,t,n){var i=this._findWhitespaceIndex(e);if(-1!==i&&(this._arr[i].height!==n&&(this._arr[i].height=n,this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,i-1)),this._arr[i].afterLineNumber!==t)){var o=this._arr[i];this._removeWhitespace(i),o.afterLineNumber=t,this._insertWhitespace(o)}},e.prototype._removeWhitespace=function(e){this._arr.splice(e,1),this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,e-1)},e.prototype.onLinesDeleted=function(e,t){this._checkPendingChanges(),e|=0,t|=0,this._lineCount-=t-e+1;for(var n=0,i=this._arr.length;n<i;n++){var o=this._arr[n].afterLineNumber;e<=o&&o<=t?this._arr[n].afterLineNumber=e-1:o>t&&(this._arr[n].afterLineNumber-=t-e+1)}},e.prototype.onLinesInserted=function(e,t){this._checkPendingChanges(),e|=0,t|=0,this._lineCount+=t-e+1;for(var n=0,i=this._arr.length;n<i;n++){e<=this._arr[n].afterLineNumber&&(this._arr[n].afterLineNumber+=t-e+1)}},e.prototype.getWhitespacesTotalHeight=function(){return this._checkPendingChanges(),0===this._arr.length?0:this.getWhitespacesAccumulatedHeight(this._arr.length-1)},e.prototype.getWhitespacesAccumulatedHeight=function(e){this._checkPendingChanges(),e|=0;var t=Math.max(0,this._prefixSumValidIndex+1);0===t&&(this._arr[0].prefixSum=this._arr[0].height,t++);for(var n=t;n<=e;n++)this._arr[n].prefixSum=this._arr[n-1].prefixSum+this._arr[n].height;return this._prefixSumValidIndex=Math.max(this._prefixSumValidIndex,e),this._arr[e].prefixSum},e.prototype.getLinesTotalHeight=function(){return this._checkPendingChanges(),this._lineHeight*this._lineCount+this.getWhitespacesTotalHeight()},e.prototype.getWhitespaceAccumulatedHeightBeforeLineNumber=function(e){this._checkPendingChanges(),e|=0;var t=this._findLastWhitespaceBeforeLineNumber(e);return-1===t?0:this.getWhitespacesAccumulatedHeight(t)},e.prototype._findLastWhitespaceBeforeLineNumber=function(e){e|=0;for(var t=this._arr,n=0,i=t.length-1;n<=i;){var o=n+((i-n|0)/2|0)|0;if(t[o].afterLineNumber<e){if(o+1>=t.length||t[o+1].afterLineNumber>=e)return o;n=o+1|0}else i=o-1|0}return-1},e.prototype._findFirstWhitespaceAfterLineNumber=function(e){e|=0;var t=this._findLastWhitespaceBeforeLineNumber(e)+1;return t<this._arr.length?t:-1},e.prototype.getFirstWhitespaceIndexAfterLineNumber=function(e){return this._checkPendingChanges(),e|=0,this._findFirstWhitespaceAfterLineNumber(e)},e.prototype.getVerticalOffsetForLineNumber=function(e){return this._checkPendingChanges(),((e|=0)>1?this._lineHeight*(e-1):0)+this.getWhitespaceAccumulatedHeightBeforeLineNumber(e)},e.prototype.getWhitespaceMinWidth=function(){if(this._checkPendingChanges(),-1===this._minWidth){for(var e=0,t=0,n=this._arr.length;t<n;t++)e=Math.max(e,this._arr[t].minWidth);this._minWidth=e}return this._minWidth},e.prototype.isAfterLines=function(e){return this._checkPendingChanges(),e>this.getLinesTotalHeight()},e.prototype.getLineNumberAtOrAfterVerticalOffset=function(e){if(this._checkPendingChanges(),(e|=0)<0)return 1;for(var t=0|this._lineCount,n=this._lineHeight,i=1,o=t;i<o;){var r=(i+o)/2|0,s=0|this.getVerticalOffsetForLineNumber(r);if(e>=s+n)i=r+1;else{if(e>=s)return r;o=r}}return i>t?t:i},e.prototype.getLinesViewportData=function(e,t){this._checkPendingChanges(),e|=0,t|=0;var n,i,o=this._lineHeight,r=0|this.getLineNumberAtOrAfterVerticalOffset(e),s=0|this.getVerticalOffsetForLineNumber(r),a=0|this._lineCount,u=0|this.getFirstWhitespaceIndexAfterLineNumber(r),l=0|this.getWhitespacesCount();-1===u?(u=l,i=a+1,n=0):(i=0|this.getAfterLineNumberForWhitespaceIndex(u),n=0|this.getHeightForWhitespaceIndex(u));var c=s,d=c,h=0;s>=5e5&&(h=5e5*Math.floor(s/5e5),d-=h=Math.floor(h/o)*o);for(var p=[],f=e+(t-e)/2,g=-1,m=r;m<=a;m++){if(-1===g){(c<=f&&f<c+o||c>f)&&(g=m)}for(c+=o,p[m-r]=d,d+=o;i===m;)d+=n,c+=n,++u>=l?i=a+1:(i=0|this.getAfterLineNumberForWhitespaceIndex(u),n=0|this.getHeightForWhitespaceIndex(u));if(c>=t){a=m;break}}-1===g&&(g=a);var v=0|this.getVerticalOffsetForLineNumber(a),_=r,y=a;return _<y&&s<e&&_++,_<y&&v+o>t&&y--,{bigNumbersDelta:h,startLineNumber:r,endLineNumber:a,relativeVerticalOffset:p,centeredLineNumber:g,completelyVisibleStartLineNumber:_,completelyVisibleEndLineNumber:y}},e.prototype.getVerticalOffsetForWhitespaceIndex=function(e){this._checkPendingChanges(),e|=0;var t=this.getAfterLineNumberForWhitespaceIndex(e);return(t>=1?this._lineHeight*t:0)+(e>0?this.getWhitespacesAccumulatedHeight(e-1):0)},e.prototype.getWhitespaceIndexAtOrAfterVerticallOffset=function(e){this._checkPendingChanges(),e|=0;var t=0,n=this.getWhitespacesCount()-1;if(n<0)return-1;if(e>=this.getVerticalOffsetForWhitespaceIndex(n)+this.getHeightForWhitespaceIndex(n))return-1;for(;t<n;){var i=Math.floor((t+n)/2),o=this.getVerticalOffsetForWhitespaceIndex(i);if(e>=o+this.getHeightForWhitespaceIndex(i))t=i+1;else{if(e>=o)return i;n=i}}return t},e.prototype.getWhitespaceAtVerticalOffset=function(e){this._checkPendingChanges(),e|=0;var t=this.getWhitespaceIndexAtOrAfterVerticallOffset(e);if(t<0)return null;if(t>=this.getWhitespacesCount())return null;var n=this.getVerticalOffsetForWhitespaceIndex(t);if(n>e)return null;var i=this.getHeightForWhitespaceIndex(t);return{id:this.getIdForWhitespaceIndex(t),afterLineNumber:this.getAfterLineNumberForWhitespaceIndex(t),verticalOffset:n,height:i}},e.prototype.getWhitespaceViewportData=function(e,t){this._checkPendingChanges(),e|=0,t|=0;var n=this.getWhitespaceIndexAtOrAfterVerticallOffset(e),i=this.getWhitespacesCount()-1;if(n<0)return[];for(var o=[],r=n;r<=i;r++){var s=this.getVerticalOffsetForWhitespaceIndex(r),a=this.getHeightForWhitespaceIndex(r);if(s>=t)break;o.push({id:this.getIdForWhitespaceIndex(r),afterLineNumber:this.getAfterLineNumberForWhitespaceIndex(r),verticalOffset:s,height:a})}return o},e.prototype.getWhitespaces=function(){return this._checkPendingChanges(),this._arr.slice(0)},e.prototype.getWhitespacesCount=function(){return this._checkPendingChanges(),this._arr.length},e.prototype.getIdForWhitespaceIndex=function(e){return this._checkPendingChanges(),e|=0,this._arr[e].id},e.prototype.getAfterLineNumberForWhitespaceIndex=function(e){return this._checkPendingChanges(),e|=0,this._arr[e].afterLineNumber},e.prototype.getHeightForWhitespaceIndex=function(e){return this._checkPendingChanges(),e|=0,this._arr[e].height},e.INSTANCE_COUNT=0,e}(),qL=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),GL=function(){function e(e,t,n,i){(e|=0)<0&&(e=0),(t|=0)<0&&(t=0),(n|=0)<0&&(n=0),(i|=0)<0&&(i=0),this.width=e,this.contentWidth=t,this.scrollWidth=Math.max(e,t),this.height=n,this.contentHeight=i,this.scrollHeight=Math.max(n,i)}return e.prototype.equals=function(e){return this.width===e.width&&this.contentWidth===e.contentWidth&&this.height===e.height&&this.contentHeight===e.contentHeight},e}(),ZL=function(e){function t(t,n){var i=e.call(this)||this;return i._onDidContentSizeChange=i._register(new nt),i.onDidContentSizeChange=i._onDidContentSizeChange.event,i._dimensions=new GL(0,0,0,0),i._scrollable=i._register(new rS(t,n)),i.onDidScroll=i._scrollable.onScroll,i}return qL(t,e),t.prototype.getScrollable=function(){return this._scrollable},t.prototype.setSmoothScrollDuration=function(e){this._scrollable.setSmoothScrollDuration(e)},t.prototype.validateScrollPosition=function(e){return this._scrollable.validateScrollPosition(e)},t.prototype.getScrollDimensions=function(){return this._dimensions},t.prototype.setScrollDimensions=function(e){if(!this._dimensions.equals(e)){var t=this._dimensions;this._dimensions=e,this._scrollable.setScrollDimensions({width:e.width,scrollWidth:e.scrollWidth,height:e.height,scrollHeight:e.scrollHeight});var n=t.contentWidth!==e.contentWidth,i=t.contentHeight!==e.contentHeight;(n||i)&&this._onDidContentSizeChange.fire({contentWidth:e.contentWidth,contentHeight:e.contentHeight,contentWidthChanged:n,contentHeightChanged:i})}},t.prototype.getFutureScrollPosition=function(){return this._scrollable.getFutureScrollPosition()},t.prototype.getCurrentScrollPosition=function(){return this._scrollable.getCurrentScrollPosition()},t.prototype.setScrollPositionNow=function(e){this._scrollable.setScrollPositionNow(e)},t.prototype.setScrollPositionSmooth=function(e){this._scrollable.setScrollPositionSmooth(e)},t}(He),YL=function(e){function t(t,n,i){var o=e.call(this)||this;o._configuration=t;var r=o._configuration.options,s=r.get(107);return o._linesLayout=new KL(n,r.get(49)),o._scrollable=o._register(new ZL(0,i)),o._configureSmoothScrollDuration(),o._scrollable.setScrollDimensions(new GL(s.contentWidth,0,s.height,0)),o.onDidScroll=o._scrollable.onDidScroll,o.onDidContentSizeChange=o._scrollable.onDidContentSizeChange,o._updateHeight(),o}return qL(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.getScrollable=function(){return this._scrollable.getScrollable()},t.prototype.onHeightMaybeChanged=function(){this._updateHeight()},t.prototype._configureSmoothScrollDuration=function(){this._scrollable.setSmoothScrollDuration(this._configuration.options.get(87)?125:0)},t.prototype.onConfigurationChanged=function(e){var t=this._configuration.options;if(e.hasChanged(49)&&this._linesLayout.setLineHeight(t.get(49)),e.hasChanged(107)){var n=t.get(107),i=n.contentWidth,o=n.height,r=this._scrollable.getScrollDimensions(),s=r.scrollWidth;this._scrollable.setScrollDimensions(new GL(i,r.contentWidth,o,this._getContentHeight(i,o,s)))}else this._updateHeight();e.hasChanged(87)&&this._configureSmoothScrollDuration()},t.prototype.onFlushed=function(e){this._linesLayout.onFlushed(e)},t.prototype.onLinesDeleted=function(e,t){this._linesLayout.onLinesDeleted(e,t)},t.prototype.onLinesInserted=function(e,t){this._linesLayout.onLinesInserted(e,t)},t.prototype._getHorizontalScrollbarHeight=function(e,t){var n=this._configuration.options.get(78);return 2===n.horizontal||e>=t?0:n.horizontalScrollbarSize},t.prototype._getContentHeight=function(e,t,n){var i=this._configuration.options,o=this._linesLayout.getLinesTotalHeight();return i.get(80)?o+=t-i.get(49):o+=this._getHorizontalScrollbarHeight(e,n),o},t.prototype._updateHeight=function(){var e=this._scrollable.getScrollDimensions(),t=e.width,n=e.height,i=e.scrollWidth;this._scrollable.setScrollDimensions(new GL(t,e.contentWidth,n,this._getContentHeight(t,n,i)))},t.prototype.getCurrentViewport=function(){var e=this._scrollable.getScrollDimensions(),t=this._scrollable.getCurrentScrollPosition();return new nd(t.scrollTop,t.scrollLeft,e.width,e.height)},t.prototype.getFutureViewport=function(){var e=this._scrollable.getScrollDimensions(),t=this._scrollable.getFutureScrollPosition();return new nd(t.scrollTop,t.scrollLeft,e.width,e.height)},t.prototype._computeContentWidth=function(e){var t=this._configuration.options,n=t.get(108),i=t.get(34);if(n.isViewportWrapping){var o=t.get(107),r=t.get(54);return e>o.contentWidth+i.typicalHalfwidthCharacterWidth&&r.enabled&&"right"===r.side?e+o.verticalScrollbarWidth:e}var s=t.get(79)*i.typicalHalfwidthCharacterWidth,a=this._linesLayout.getWhitespaceMinWidth();return Math.max(e+s,a)},t.prototype.onMaxLineWidthChanged=function(e){var t=this._scrollable.getScrollDimensions();this._scrollable.setScrollDimensions(new GL(t.width,this._computeContentWidth(e),t.height,t.contentHeight)),this._updateHeight()},t.prototype.saveState=function(){var e=this._scrollable.getFutureScrollPosition(),t=e.scrollTop,n=this._linesLayout.getLineNumberAtOrAfterVerticalOffset(t);return{scrollTop:t,scrollTopWithoutViewZones:t-this._linesLayout.getWhitespaceAccumulatedHeightBeforeLineNumber(n),scrollLeft:e.scrollLeft}},t.prototype.changeWhitespace=function(e){return this._linesLayout.changeWhitespace(e)},t.prototype.getVerticalOffsetForLineNumber=function(e){return this._linesLayout.getVerticalOffsetForLineNumber(e)},t.prototype.isAfterLines=function(e){return this._linesLayout.isAfterLines(e)},t.prototype.getLineNumberAtVerticalOffset=function(e){return this._linesLayout.getLineNumberAtOrAfterVerticalOffset(e)},t.prototype.getWhitespaceAtVerticalOffset=function(e){return this._linesLayout.getWhitespaceAtVerticalOffset(e)},t.prototype.getLinesViewportData=function(){var e=this.getCurrentViewport();return this._linesLayout.getLinesViewportData(e.top,e.top+e.height)},t.prototype.getLinesViewportDataAtScrollTop=function(e){var t=this._scrollable.getScrollDimensions();return e+t.height>t.scrollHeight&&(e=t.scrollHeight-t.height),e<0&&(e=0),this._linesLayout.getLinesViewportData(e,e+t.height)},t.prototype.getWhitespaceViewportData=function(){var e=this.getCurrentViewport();return this._linesLayout.getWhitespaceViewportData(e.top,e.top+e.height)},t.prototype.getWhitespaces=function(){return this._linesLayout.getWhitespaces()},t.prototype.getContentWidth=function(){return this._scrollable.getScrollDimensions().contentWidth},t.prototype.getScrollWidth=function(){return this._scrollable.getScrollDimensions().scrollWidth},t.prototype.getContentHeight=function(){return this._scrollable.getScrollDimensions().contentHeight},t.prototype.getScrollHeight=function(){return this._scrollable.getScrollDimensions().scrollHeight},t.prototype.getCurrentScrollLeft=function(){return this._scrollable.getCurrentScrollPosition().scrollLeft},t.prototype.getCurrentScrollTop=function(){return this._scrollable.getCurrentScrollPosition().scrollTop},t.prototype.validateScrollPosition=function(e){return this._scrollable.validateScrollPosition(e)},t.prototype.setScrollPositionNow=function(e){this._scrollable.setScrollPositionNow(e)},t.prototype.setScrollPositionSmooth=function(e){this._scrollable.setScrollPositionSmooth(e)},t.prototype.deltaScrollNow=function(e,t){var n=this._scrollable.getCurrentScrollPosition();this._scrollable.setScrollPositionNow({scrollLeft:n.scrollLeft+e,scrollTop:n.scrollTop+t})},t}(He),XL=function(e,t){this.outputLineIndex=e,this.outputOffset=t},$L=function(){function e(e,t,n){this.breakOffsets=e,this.breakOffsetsVisibleColumn=t,this.wrappedTextIndentLength=n}return e.getInputOffsetOfOutputPosition=function(e,t,n){return 0===t?n:e[t-1]+n},e.getOutputPositionOfInputOffset=function(e,t){for(var n=0,i=e.length-1,o=0,r=0;n<=i;){var s=e[o=n+(i-n)/2|0];if(t<(r=o>0?e[o-1]:0))i=o-1;else{if(!(t>=s))break;n=o+1}}return new XL(o,t-r)},e}(),QL=function(){function e(e){this._lines=e}return e.prototype.convertViewPositionToModelPosition=function(e){return this._lines.convertViewPositionToModelPosition(e.lineNumber,e.column)},e.prototype.convertViewRangeToModelRange=function(e){return this._lines.convertViewRangeToModelRange(e)},e.prototype.validateViewPosition=function(e,t){return this._lines.validateViewPosition(e.lineNumber,e.column,t)},e.prototype.validateViewRange=function(e,t){return this._lines.validateViewRange(e,t)},e.prototype.convertModelPositionToViewPosition=function(e){return this._lines.convertModelPositionToViewPosition(e.lineNumber,e.column)},e.prototype.convertModelRangeToViewRange=function(e){return this._lines.convertModelRangeToViewRange(e)},e.prototype.modelPositionIsVisible=function(e){return this._lines.modelPositionIsVisible(e.lineNumber,e.column)},e}(),JL=function(){function e(e){this._counts=e,this._isValid=!1,this._validEndIndex=-1,this._modelToView=[],this._viewToModel=[]}return e.prototype._invalidate=function(e){this._isValid=!1,this._validEndIndex=Math.min(this._validEndIndex,e-1)},e.prototype._ensureValid=function(){if(!this._isValid){for(var e=this._validEndIndex+1,t=this._counts.length;e<t;e++){var n=this._counts[e],i=e>0?this._modelToView[e-1]:0;this._modelToView[e]=i+n;for(var o=0;o<n;o++)this._viewToModel[i+o]=e}this._modelToView.length=this._counts.length,this._viewToModel.length=this._modelToView[this._modelToView.length-1],this._isValid=!0,this._validEndIndex=this._counts.length-1}},e.prototype.changeValue=function(e,t){this._counts[e]!==t&&(this._counts[e]=t,this._invalidate(e))},e.prototype.removeValues=function(e,t){this._counts.splice(e,t),this._invalidate(e)},e.prototype.insertValues=function(e,t){this._counts=Vi(this._counts,e,t),this._invalidate(e)},e.prototype.getTotalValue=function(){return this._ensureValid(),this._viewToModel.length},e.prototype.getAccumulatedValue=function(e){return this._ensureValid(),this._modelToView[e]},e.prototype.getIndexOf=function(e){this._ensureValid();var t=this._viewToModel[e],n=t>0?this._modelToView[t-1]:0;return new Jl(t,e-n)},e}(),ex=function(){function e(e,t,n,i,o,r,s,a){this.model=e,this._validModelVersionId=-1,this._domLineBreaksComputerFactory=t,this._monospaceLineBreaksComputerFactory=n,this.fontInfo=i,this.tabSize=o,this.wrappingStrategy=r,this.wrappingColumn=s,this.wrappingIndent=a,this._constructLines(!0,null)}return e.prototype.dispose=function(){this.hiddenAreasIds=this.model.deltaDecorations(this.hiddenAreasIds,[])},e.prototype.createCoordinatesConverter=function(){return new QL(this)},e.prototype._constructLines=function(e,t){var n=this;this.lines=[],e&&(this.hiddenAreasIds=[]);for(var i=this.model.getLinesContent(),o=i.length,r=this.createLineBreaksComputer(),s=0;s<o;s++)r.addRequest(i[s],t?t[s]:null);var a=r.finalize(),u=[],l=this.hiddenAreasIds.map((function(e){return n.model.getDecorationRange(e)})).sort(wn.compareRangesUsingStarts),c=1,d=0,h=-1,p=h+1<l.length?d+1:o+2;for(s=0;s<o;s++){var f=s+1;f===p&&(c=l[++h].startLineNumber,d=l[h].endLineNumber,p=h+1<l.length?d+1:o+2);var g=f>=c&&f<=d,m=ax(a[s],!g);u[s]=m.getViewLineCount(),this.lines[s]=m}this._validModelVersionId=this.model.getVersionId(),this.prefixSumComputer=new JL(u)},e.prototype.getHiddenAreas=function(){var e=this;return this.hiddenAreasIds.map((function(t){return e.model.getDecorationRange(t)}))},e.prototype._reduceRanges=function(e){var t=this;if(0===e.length)return[];for(var n=e.map((function(e){return t.model.validateRange(e)})).sort(wn.compareRangesUsingStarts),i=[],o=n[0].startLineNumber,r=n[0].endLineNumber,s=1,a=n.length;s<a;s++){var u=n[s];u.startLineNumber>r+1?(i.push(new wn(o,1,r,1)),o=u.startLineNumber,r=u.endLineNumber):u.endLineNumber>r&&(r=u.endLineNumber)}return i.push(new wn(o,1,r,1)),i},e.prototype.setHiddenAreas=function(e){var t=this,n=this._reduceRanges(e),i=this.hiddenAreasIds.map((function(e){return t.model.getDecorationRange(e)})).sort(wn.compareRangesUsingStarts);if(n.length===i.length){for(var o=!1,r=0;r<n.length;r++)if(!n[r].equalsRange(i[r])){o=!0;break}if(!o)return!1}for(var s=[],a=0,u=n;a<u.length;a++){var l=u[a];s.push({range:l,options:kv.EMPTY})}this.hiddenAreasIds=this.model.deltaDecorations(this.hiddenAreasIds,s);var c=n,d=1,h=0,p=-1,f=p+1<c.length?h+1:this.lines.length+2,g=!1;for(r=0;r<this.lines.length;r++){var m=r+1;m===f&&(d=c[++p].startLineNumber,h=c[p].endLineNumber,f=p+1<c.length?h+1:this.lines.length+2);var v=!1;if(m>=d&&m<=h?this.lines[r].isVisible()&&(this.lines[r]=this.lines[r].setVisible(!1),v=!0):(g=!0,this.lines[r].isVisible()||(this.lines[r]=this.lines[r].setVisible(!0),v=!0)),v){var _=this.lines[r].getViewLineCount();this.prefixSumComputer.changeValue(r,_)}}return g||this.setHiddenAreas([]),!0},e.prototype.modelPositionIsVisible=function(e,t){return!(e<1||e>this.lines.length)&&this.lines[e-1].isVisible()},e.prototype.setTabSize=function(e){return this.tabSize!==e&&(this.tabSize=e,this._constructLines(!1,null),!0)},e.prototype.setWrappingSettings=function(e,t,n,i){var o=this.fontInfo.equals(e),r=this.wrappingStrategy===t,s=this.wrappingColumn===n,a=this.wrappingIndent===i;if(o&&r&&s&&a)return!1;var u=o&&r&&!s&&a;this.fontInfo=e,this.wrappingStrategy=t,this.wrappingColumn=n,this.wrappingIndent=i;var l=null;if(u){l=[];for(var c=0,d=this.lines.length;c<d;c++)l[c]=this.lines[c].getLineBreakData()}return this._constructLines(!1,l),!0},e.prototype.createLineBreaksComputer=function(){return("advanced"===this.wrappingStrategy?this._domLineBreaksComputerFactory:this._monospaceLineBreaksComputerFactory).createLineBreaksComputer(this.fontInfo,this.tabSize,this.wrappingColumn,this.wrappingIndent)},e.prototype.onModelFlushed=function(){this._constructLines(!0,null)},e.prototype.onModelLinesDeleted=function(e,t,n){if(e<=this._validModelVersionId)return null;var i=1===t?1:this.prefixSumComputer.getAccumulatedValue(t-2)+1,o=this.prefixSumComputer.getAccumulatedValue(n-1);return this.lines.splice(t-1,n-t+1),this.prefixSumComputer.removeValues(t-1,n-t+1),new ww(i,o)},e.prototype.onModelLinesInserted=function(e,t,n,i){if(e<=this._validModelVersionId)return null;for(var o=this.getHiddenAreas(),r=!1,s=new bn(t,1),a=0,u=o;a<u.length;a++){if(u[a].containsPosition(s)){r=!0;break}}for(var l=1===t?1:this.prefixSumComputer.getAccumulatedValue(t-2)+1,c=0,d=[],h=[],p=0,f=i.length;p<f;p++){var g=ax(i[p],!r);d.push(g);var m=g.getViewLineCount();c+=m,h[p]=m}return this.lines=this.lines.slice(0,t-1).concat(d).concat(this.lines.slice(t-1)),this.prefixSumComputer.insertValues(t-1,h),new Cw(l,l+c-1)},e.prototype.onModelLineChanged=function(e,t,n){if(e<=this._validModelVersionId)return[!1,null,null,null];var i=t-1,o=this.lines[i].getViewLineCount(),r=ax(n,this.lines[i].isVisible());this.lines[i]=r;var s=this.lines[i].getViewLineCount(),a=!1,u=0,l=-1,c=0,d=-1,h=0,p=-1;return o>s?(p=(h=(l=(u=1===t?1:this.prefixSumComputer.getAccumulatedValue(t-2)+1)+s-1)+1)+(o-s)-1,a=!0):o<s?(d=(c=(l=(u=1===t?1:this.prefixSumComputer.getAccumulatedValue(t-2)+1)+o-1)+1)+(s-o)-1,a=!0):l=(u=1===t?1:this.prefixSumComputer.getAccumulatedValue(t-2)+1)+s-1,this.prefixSumComputer.changeValue(i,s),[a,u<=l?new bw(u,l):null,c<=d?new Cw(c,d):null,h<=p?new ww(h,p):null]},e.prototype.acceptVersionId=function(e){this._validModelVersionId=e,1!==this.lines.length||this.lines[0].isVisible()||this.setHiddenAreas([])},e.prototype.getViewLineCount=function(){return this.prefixSumComputer.getTotalValue()},e.prototype._toValidViewLineNumber=function(e){if(e<1)return 1;var t=this.getViewLineCount();return e>t?t:0|e},e.prototype.getActiveIndentGuide=function(e,t,n){e=this._toValidViewLineNumber(e),t=this._toValidViewLineNumber(t),n=this._toValidViewLineNumber(n);var i=this.convertViewPositionToModelPosition(e,this.getViewLineMinColumn(e)),o=this.convertViewPositionToModelPosition(t,this.getViewLineMinColumn(t)),r=this.convertViewPositionToModelPosition(n,this.getViewLineMinColumn(n)),s=this.model.getActiveIndentGuide(i.lineNumber,o.lineNumber,r.lineNumber),a=this.convertModelPositionToViewPosition(s.startLineNumber,1),u=this.convertModelPositionToViewPosition(s.endLineNumber,this.model.getLineMaxColumn(s.endLineNumber));return{startLineNumber:a.lineNumber,endLineNumber:u.lineNumber,indent:s.indent}},e.prototype.getViewLinesIndentGuides=function(e,t){e=this._toValidViewLineNumber(e),t=this._toValidViewLineNumber(t);for(var n=this.convertViewPositionToModelPosition(e,this.getViewLineMinColumn(e)),i=this.convertViewPositionToModelPosition(t,this.getViewLineMaxColumn(t)),o=[],r=[],s=[],a=n.lineNumber-1,u=i.lineNumber-1,l=null,c=a;c<=u;c++){var d=this.lines[c];if(d.isVisible()){var h=d.getViewLineNumberOfModelPosition(0,c===a?n.column:1),p=d.getViewLineNumberOfModelPosition(0,this.model.getLineMaxColumn(c+1)),f=0;(w=p-h+1)>1&&1===d.getViewLineMinColumn(this.model,c+1,p)&&(f=0===h?1:2),r.push(w),s.push(f),null===l&&(l=new bn(c+1,0))}else null!==l&&(o=o.concat(this.model.getLinesIndentGuides(l.lineNumber,c)),l=null)}null!==l&&(o=o.concat(this.model.getLinesIndentGuides(l.lineNumber,i.lineNumber)),l=null);for(var g=t-e+1,m=new Array(g),v=0,_=0,y=o.length;_<y;_++){var b=o[_],w=Math.min(g-v,r[_]),C=void 0;C=2===(f=s[_])?0:1===f?1:w;for(var S=0;S<w;S++)S===C&&(b=0),m[v++]=b}return m},e.prototype.getViewLineContent=function(e){e=this._toValidViewLineNumber(e);var t=this.prefixSumComputer.getIndexOf(e-1),n=t.index,i=t.remainder;return this.lines[n].getViewLineContent(this.model,n+1,i)},e.prototype.getViewLineLength=function(e){e=this._toValidViewLineNumber(e);var t=this.prefixSumComputer.getIndexOf(e-1),n=t.index,i=t.remainder;return this.lines[n].getViewLineLength(this.model,n+1,i)},e.prototype.getViewLineMinColumn=function(e){e=this._toValidViewLineNumber(e);var t=this.prefixSumComputer.getIndexOf(e-1),n=t.index,i=t.remainder;return this.lines[n].getViewLineMinColumn(this.model,n+1,i)},e.prototype.getViewLineMaxColumn=function(e){e=this._toValidViewLineNumber(e);var t=this.prefixSumComputer.getIndexOf(e-1),n=t.index,i=t.remainder;return this.lines[n].getViewLineMaxColumn(this.model,n+1,i)},e.prototype.getViewLineData=function(e){e=this._toValidViewLineNumber(e);var t=this.prefixSumComputer.getIndexOf(e-1),n=t.index,i=t.remainder;return this.lines[n].getViewLineData(this.model,n+1,i)},e.prototype.getViewLinesData=function(e,t,n){e=this._toValidViewLineNumber(e),t=this._toValidViewLineNumber(t);for(var i=this.prefixSumComputer.getIndexOf(e-1),o=e,r=i.index,s=i.remainder,a=[],u=r,l=this.model.getLineCount();u<l;u++){var c=this.lines[u];if(c.isVisible()){var d=u===r?s:0,h=c.getViewLineCount()-d,p=!1;o+h>t&&(p=!0,h=t-o+1);var f=d+h;if(c.getViewLinesData(this.model,u+1,d,f,o-e,n,a),o+=h,p)break}}return a},e.prototype.validateViewPosition=function(e,t,n){e=this._toValidViewLineNumber(e);var i=this.prefixSumComputer.getIndexOf(e-1),o=i.index,r=i.remainder,s=this.lines[o],a=s.getViewLineMinColumn(this.model,o+1,r),u=s.getViewLineMaxColumn(this.model,o+1,r);t<a&&(t=a),t>u&&(t=u);var l=s.getModelColumnOfViewPosition(r,t);return this.model.validatePosition(new bn(o+1,l)).equals(n)?new bn(e,t):this.convertModelPositionToViewPosition(n.lineNumber,n.column)},e.prototype.validateViewRange=function(e,t){var n=this.validateViewPosition(e.startLineNumber,e.startColumn,t.getStartPosition()),i=this.validateViewPosition(e.endLineNumber,e.endColumn,t.getEndPosition());return new wn(n.lineNumber,n.column,i.lineNumber,i.column)},e.prototype.convertViewPositionToModelPosition=function(e,t){e=this._toValidViewLineNumber(e);var n=this.prefixSumComputer.getIndexOf(e-1),i=n.index,o=n.remainder,r=this.lines[i].getModelColumnOfViewPosition(o,t);return this.model.validatePosition(new bn(i+1,r))},e.prototype.convertViewRangeToModelRange=function(e){var t=this.convertViewPositionToModelPosition(e.startLineNumber,e.startColumn),n=this.convertViewPositionToModelPosition(e.endLineNumber,e.endColumn);return new wn(t.lineNumber,t.column,n.lineNumber,n.column)},e.prototype.convertModelPositionToViewPosition=function(e,t){for(var n=this.model.validatePosition(new bn(e,t)),i=n.lineNumber,o=n.column,r=i-1,s=!1;r>0&&!this.lines[r].isVisible();)r--,s=!0;if(0===r&&!this.lines[r].isVisible())return new bn(1,1);var a=1+(0===r?0:this.prefixSumComputer.getAccumulatedValue(r-1));return s?this.lines[r].getViewPositionOfModelPosition(a,this.model.getLineMaxColumn(r+1)):this.lines[i-1].getViewPositionOfModelPosition(a,o)},e.prototype.convertModelRangeToViewRange=function(e){var t=this.convertModelPositionToViewPosition(e.startLineNumber,e.startColumn),n=this.convertModelPositionToViewPosition(e.endLineNumber,e.endColumn);return e.startLineNumber===e.endLineNumber&&t.lineNumber!==n.lineNumber&&n.column===this.getViewLineMinColumn(n.lineNumber)?new wn(t.lineNumber,t.column,n.lineNumber-1,this.getViewLineMaxColumn(n.lineNumber-1)):new wn(t.lineNumber,t.column,n.lineNumber,n.column)},e.prototype._getViewLineNumberForModelPosition=function(e,t){var n=e-1;if(this.lines[n].isVisible()){var i=1+(0===n?0:this.prefixSumComputer.getAccumulatedValue(n-1));return this.lines[n].getViewLineNumberOfModelPosition(i,t)}for(;n>0&&!this.lines[n].isVisible();)n--;if(0===n&&!this.lines[n].isVisible())return 1;var o=1+(0===n?0:this.prefixSumComputer.getAccumulatedValue(n-1));return this.lines[n].getViewLineNumberOfModelPosition(o,this.model.getLineMaxColumn(n+1))},e.prototype.getAllOverviewRulerDecorations=function(e,t,n){for(var i=this.model.getOverviewRulerDecorations(e,t),o=new cx,r=0,s=i;r<s.length;r++){var a=s[r],u=a.options.overviewRuler,l=u?u.position:0;if(0!==l){var c=u.getColor(n),d=this._getViewLineNumberForModelPosition(a.range.startLineNumber,a.range.startColumn),h=this._getViewLineNumberForModelPosition(a.range.endLineNumber,a.range.endColumn);o.accept(c,d,h,l)}}return o.result},e.prototype.getDecorationsInRange=function(e,t,n){var i=this.convertViewPositionToModelPosition(e.startLineNumber,e.startColumn),o=this.convertViewPositionToModelPosition(e.endLineNumber,e.endColumn);if(o.lineNumber-i.lineNumber<=e.endLineNumber-e.startLineNumber)return this.model.getDecorationsInRange(new wn(i.lineNumber,1,o.lineNumber,o.column),t,n);for(var r=[],s=i.lineNumber-1,a=o.lineNumber-1,u=null,l=s;l<=a;l++){if(this.lines[l].isVisible())null===u&&(u=new bn(l+1,l===s?i.column:1));else if(null!==u){var c=this.model.getLineMaxColumn(l);r=r.concat(this.model.getDecorationsInRange(new wn(u.lineNumber,u.column,l,c),t,n)),u=null}}null!==u&&(r=r.concat(this.model.getDecorationsInRange(new wn(u.lineNumber,u.column,o.lineNumber,o.column),t,n)),u=null),r.sort((function(e,t){var n=wn.compareRangesUsingStarts(e.range,t.range);return 0===n?e.id<t.id?-1:e.id>t.id?1:0:n}));for(var d=[],h=0,p=null,f=0,g=r;f<g.length;f++){var m=g[f],v=m.id;p!==v&&(p=v,d[h++]=m)}return d},e}(),tx=function(){function e(){}return e.prototype.isVisible=function(){return!0},e.prototype.setVisible=function(e){return e?this:nx.INSTANCE},e.prototype.getLineBreakData=function(){return null},e.prototype.getViewLineCount=function(){return 1},e.prototype.getViewLineContent=function(e,t,n){return e.getLineContent(t)},e.prototype.getViewLineLength=function(e,t,n){return e.getLineLength(t)},e.prototype.getViewLineMinColumn=function(e,t,n){return e.getLineMinColumn(t)},e.prototype.getViewLineMaxColumn=function(e,t,n){return e.getLineMaxColumn(t)},e.prototype.getViewLineData=function(e,t,n){var i=e.getLineTokens(t),o=i.getLineContent();return new od(o,!1,1,o.length+1,0,i.inflate())},e.prototype.getViewLinesData=function(e,t,n,i,o,r,s){r[o]?s[o]=this.getViewLineData(e,t,0):s[o]=null},e.prototype.getModelColumnOfViewPosition=function(e,t){return t},e.prototype.getViewPositionOfModelPosition=function(e,t){return new bn(e,t)},e.prototype.getViewLineNumberOfModelPosition=function(e,t){return e},e.INSTANCE=new e,e}(),nx=function(){function e(){}return e.prototype.isVisible=function(){return!1},e.prototype.setVisible=function(e){return e?tx.INSTANCE:this},e.prototype.getLineBreakData=function(){return null},e.prototype.getViewLineCount=function(){return 0},e.prototype.getViewLineContent=function(e,t,n){throw new Error("Not supported")},e.prototype.getViewLineLength=function(e,t,n){throw new Error("Not supported")},e.prototype.getViewLineMinColumn=function(e,t,n){throw new Error("Not supported")},e.prototype.getViewLineMaxColumn=function(e,t,n){throw new Error("Not supported")},e.prototype.getViewLineData=function(e,t,n){throw new Error("Not supported")},e.prototype.getViewLinesData=function(e,t,n,i,o,r,s){throw new Error("Not supported")},e.prototype.getModelColumnOfViewPosition=function(e,t){throw new Error("Not supported")},e.prototype.getViewPositionOfModelPosition=function(e,t){throw new Error("Not supported")},e.prototype.getViewLineNumberOfModelPosition=function(e,t){throw new Error("Not supported")},e.INSTANCE=new e,e}(),ix=function(){function e(e,t){this._lineBreakData=e,this._isVisible=t}return e.prototype.isVisible=function(){return this._isVisible},e.prototype.setVisible=function(e){return this._isVisible=e,this},e.prototype.getLineBreakData=function(){return this._lineBreakData},e.prototype.getViewLineCount=function(){return this._isVisible?this._lineBreakData.breakOffsets.length:0},e.prototype.getInputStartOffsetOfOutputLineIndex=function(e){return $L.getInputOffsetOfOutputPosition(this._lineBreakData.breakOffsets,e,0)},e.prototype.getInputEndOffsetOfOutputLineIndex=function(e,t,n){return n+1===this._lineBreakData.breakOffsets.length?e.getLineMaxColumn(t)-1:$L.getInputOffsetOfOutputPosition(this._lineBreakData.breakOffsets,n+1,0)},e.prototype.getViewLineContent=function(e,t,n){if(!this._isVisible)throw new Error("Not supported");var i=this.getInputStartOffsetOfOutputLineIndex(n),o=this.getInputEndOffsetOfOutputLineIndex(e,t,n),r=e.getValueInRange({startLineNumber:t,startColumn:i+1,endLineNumber:t,endColumn:o+1});return n>0&&(r=rx(this._lineBreakData.wrappedTextIndentLength)+r),r},e.prototype.getViewLineLength=function(e,t,n){if(!this._isVisible)throw new Error("Not supported");var i=this.getInputStartOffsetOfOutputLineIndex(n),o=this.getInputEndOffsetOfOutputLineIndex(e,t,n)-i;return n>0&&(o=this._lineBreakData.wrappedTextIndentLength+o),o},e.prototype.getViewLineMinColumn=function(e,t,n){if(!this._isVisible)throw new Error("Not supported");return n>0?this._lineBreakData.wrappedTextIndentLength+1:1},e.prototype.getViewLineMaxColumn=function(e,t,n){if(!this._isVisible)throw new Error("Not supported");return this.getViewLineContent(e,t,n).length+1},e.prototype.getViewLineData=function(e,t,n){if(!this._isVisible)throw new Error("Not supported");var i=this.getInputStartOffsetOfOutputLineIndex(n),o=this.getInputEndOffsetOfOutputLineIndex(e,t,n),r=e.getValueInRange({startLineNumber:t,startColumn:i+1,endLineNumber:t,endColumn:o+1});n>0&&(r=rx(this._lineBreakData.wrappedTextIndentLength)+r);var s=n>0?this._lineBreakData.wrappedTextIndentLength+1:1,a=r.length+1,u=n+1<this.getViewLineCount(),l=0;n>0&&(l=this._lineBreakData.wrappedTextIndentLength);var c=e.getLineTokens(t),d=0===n?0:this._lineBreakData.breakOffsetsVisibleColumn[n-1];return new od(r,u,s,a,d,c.sliceAndInflate(i,o,l))},e.prototype.getViewLinesData=function(e,t,n,i,o,r,s){if(!this._isVisible)throw new Error("Not supported");for(var a=n;a<i;a++){var u=o+a-n;r[u]?s[u]=this.getViewLineData(e,t,a):s[u]=null}},e.prototype.getModelColumnOfViewPosition=function(e,t){if(!this._isVisible)throw new Error("Not supported");var n=t-1;return e>0&&(n<this._lineBreakData.wrappedTextIndentLength?n=0:n-=this._lineBreakData.wrappedTextIndentLength),$L.getInputOffsetOfOutputPosition(this._lineBreakData.breakOffsets,e,n)+1},e.prototype.getViewPositionOfModelPosition=function(e,t){if(!this._isVisible)throw new Error("Not supported");var n=$L.getOutputPositionOfInputOffset(this._lineBreakData.breakOffsets,t-1),i=n.outputLineIndex,o=n.outputOffset+1;return i>0&&(o+=this._lineBreakData.wrappedTextIndentLength),new bn(e+i,o)},e.prototype.getViewLineNumberOfModelPosition=function(e,t){if(!this._isVisible)throw new Error("Not supported");return e+$L.getOutputPositionOfInputOffset(this._lineBreakData.breakOffsets,t-1).outputLineIndex},e}(),ox=[""];function rx(e){if(e>=ox.length)for(var t=1;t<=e;t++)ox[t]=sx(t);return ox[e]}function sx(e){return new Array(e+1).join(" ")}function ax(e,t){return null===e?t?tx.INSTANCE:nx.INSTANCE:new ix(e,t)}var ux=function(){function e(e){this._lines=e}return e.prototype._validPosition=function(e){return this._lines.model.validatePosition(e)},e.prototype._validRange=function(e){return this._lines.model.validateRange(e)},e.prototype.convertViewPositionToModelPosition=function(e){return this._validPosition(e)},e.prototype.convertViewRangeToModelRange=function(e){return this._validRange(e)},e.prototype.validateViewPosition=function(e,t){return this._validPosition(t)},e.prototype.validateViewRange=function(e,t){return this._validRange(t)},e.prototype.convertModelPositionToViewPosition=function(e){return this._validPosition(e)},e.prototype.convertModelRangeToViewRange=function(e){return this._validRange(e)},e.prototype.modelPositionIsVisible=function(e){var t=this._lines.model.getLineCount();return!(e.lineNumber<1||e.lineNumber>t)},e}(),lx=function(){function e(e){this.model=e}return e.prototype.dispose=function(){},e.prototype.createCoordinatesConverter=function(){return new ux(this)},e.prototype.getHiddenAreas=function(){return[]},e.prototype.setHiddenAreas=function(e){return!1},e.prototype.setTabSize=function(e){return!1},e.prototype.setWrappingSettings=function(e,t,n,i){return!1},e.prototype.createLineBreaksComputer=function(){var e=[];return{addRequest:function(t,n){e.push(null)},finalize:function(){return e}}},e.prototype.onModelFlushed=function(){},e.prototype.onModelLinesDeleted=function(e,t,n){return new ww(t,n)},e.prototype.onModelLinesInserted=function(e,t,n,i){return new Cw(t,n)},e.prototype.onModelLineChanged=function(e,t,n){return[!1,new bw(t,t),null,null]},e.prototype.acceptVersionId=function(e){},e.prototype.getViewLineCount=function(){return this.model.getLineCount()},e.prototype.getActiveIndentGuide=function(e,t,n){return{startLineNumber:e,endLineNumber:e,indent:0}},e.prototype.getViewLinesIndentGuides=function(e,t){for(var n=t-e+1,i=new Array(n),o=0;o<n;o++)i[o]=0;return i},e.prototype.getViewLineContent=function(e){return this.model.getLineContent(e)},e.prototype.getViewLineLength=function(e){return this.model.getLineLength(e)},e.prototype.getViewLineMinColumn=function(e){return this.model.getLineMinColumn(e)},e.prototype.getViewLineMaxColumn=function(e){return this.model.getLineMaxColumn(e)},e.prototype.getViewLineData=function(e){var t=this.model.getLineTokens(e),n=t.getLineContent();return new od(n,!1,1,n.length+1,0,t.inflate())},e.prototype.getViewLinesData=function(e,t,n){var i=this.model.getLineCount();e=Math.min(Math.max(1,e),i),t=Math.min(Math.max(1,t),i);for(var o=[],r=e;r<=t;r++){var s=r-e;n[s]||(o[s]=null),o[s]=this.getViewLineData(r)}return o},e.prototype.getAllOverviewRulerDecorations=function(e,t,n){for(var i=this.model.getOverviewRulerDecorations(e,t),o=new cx,r=0,s=i;r<s.length;r++){var a=s[r],u=a.options.overviewRuler,l=u?u.position:0;if(0!==l){var c=u.getColor(n),d=a.range.startLineNumber,h=a.range.endLineNumber;o.accept(c,d,h,l)}}return o.result},e.prototype.getDecorationsInRange=function(e,t,n){return this.model.getDecorationsInRange(e,t,n)},e}(),cx=function(){function e(){this.result=Object.create(null)}return e.prototype.accept=function(e,t,n,i){var o=this.result[e];if(o){var r=o[o.length-3],s=o[o.length-1];if(r===i&&s+1>=t)return void(n>s&&(o[o.length-1]=n));o.push(i,t,n)}else this.result[e]=[i,t,n]},e}(),dx=function(){function e(e,t,n,i,o){this.editorId=e,this.model=t,this.configuration=n,this._linesCollection=i,this._coordinatesConverter=o,this._decorationsCache=Object.create(null),this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null}return e.prototype._clearCachedModelDecorationsResolver=function(){this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null},e.prototype.dispose=function(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()},e.prototype.reset=function(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()},e.prototype.onModelDecorationsChanged=function(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()},e.prototype.onLineMappingChanged=function(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()},e.prototype._getOrCreateViewModelDecoration=function(e){var t=e.id,n=this._decorationsCache[t];if(!n){var i=e.range,o=e.options,r=void 0;if(o.isWholeLine){var s=this._coordinatesConverter.convertModelPositionToViewPosition(new bn(i.startLineNumber,1)),a=this._coordinatesConverter.convertModelPositionToViewPosition(new bn(i.endLineNumber,this.model.getLineMaxColumn(i.endLineNumber)));r=new wn(s.lineNumber,s.column,a.lineNumber,a.column)}else r=this._coordinatesConverter.convertModelRangeToViewRange(i);n=new ad(r,o),this._decorationsCache[t]=n}return n},e.prototype.getDecorationsViewportData=function(e){var t=null!==this._cachedModelDecorationsResolver;return(t=t&&e.equalsRange(this._cachedModelDecorationsResolverViewRange))||(this._cachedModelDecorationsResolver=this._getDecorationsViewportData(e),this._cachedModelDecorationsResolverViewRange=e),this._cachedModelDecorationsResolver},e.prototype._getDecorationsViewportData=function(e){for(var t=this._linesCollection.getDecorationsInRange(e,this.editorId,ue(this.configuration.options)),n=e.startLineNumber,i=e.endLineNumber,o=[],r=0,s=[],a=n;a<=i;a++)s[a-n]=[];for(var u=0,l=t.length;u<l;u++){var c=t[u],d=c.options,h=this._getOrCreateViewModelDecoration(c),p=h.range;if(o[r++]=h,d.inlineClassName){var f=new sd(p,d.inlineClassName,d.inlineClassNameAffectsLetterSpacing?3:0),g=Math.max(n,p.startLineNumber),m=Math.min(i,p.endLineNumber);for(a=g;a<=m;a++)s[a-n].push(f)}if(d.beforeContentClassName&&n<=p.startLineNumber&&p.startLineNumber<=i){f=new sd(new wn(p.startLineNumber,p.startColumn,p.startLineNumber,p.startColumn),d.beforeContentClassName,1);s[p.startLineNumber-n].push(f)}if(d.afterContentClassName&&n<=p.endLineNumber&&p.endLineNumber<=i){f=new sd(new wn(p.endLineNumber,p.endColumn,p.endLineNumber,p.endColumn),d.afterContentClassName,2);s[p.endLineNumber-n].push(f)}}return{decorations:o,inlineDecorations:s}},e}(),hx=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),px=function(e){function t(t,n,i,o,r,s){var a=e.call(this)||this;if(a.editorId=t,a.configuration=n,a.model=i,a._tokenizeViewportSoon=a._register(new wi((function(){return a.tokenizeViewport()}),50)),a.hasFocus=!1,a.viewportStartLine=-1,a.viewportStartLineTrackedRange=null,a.viewportStartLineDelta=0,a.model.isTooLargeForTokenization())a.lines=new lx(a.model);else{var u=a.configuration.options,l=u.get(34),c=u.get(103),d=u.get(108),h=u.get(102);a.lines=new ex(a.model,o,r,l,a.model.getOptions().tabSize,c,d.wrappingColumn,h)}return a.coordinatesConverter=a.lines.createCoordinatesConverter(),a.viewLayout=a._register(new YL(a.configuration,a.getLineCount(),s)),a._register(a.viewLayout.onDidScroll((function(e){e.scrollTopChanged&&a._tokenizeViewportSoon.schedule();try{a._beginEmit().emit(new Lw(e))}finally{a._endEmit()}}))),a._register(a.viewLayout.onDidContentSizeChange((function(e){try{a._beginEmit().emit(new pw(e))}finally{a._endEmit()}}))),a.decorations=new dx(a.editorId,a.model,a.configuration,a.lines,a.coordinatesConverter),a._registerModelEvents(),a._register(a.configuration.onDidChange((function(e){try{var t=a._beginEmit();a._onConfigurationChanged(t,e)}finally{a._endEmit()}}))),a._register(PS.getInstance().onDidChange((function(){try{a._beginEmit().emit(new Nw)}finally{a._endEmit()}}))),a}return hx(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this.decorations.dispose(),this.lines.dispose(),this.invalidateMinimapColorCache(),this.viewportStartLineTrackedRange=this.model._setTrackedRange(this.viewportStartLineTrackedRange,null,1)},t.prototype.tokenizeViewport=function(){var e=this.viewLayout.getLinesViewportData(),t=this.coordinatesConverter.convertViewPositionToModelPosition(new bn(e.startLineNumber,1)),n=this.coordinatesConverter.convertViewPositionToModelPosition(new bn(e.endLineNumber,1));this.model.tokenizeViewport(t.lineNumber,n.lineNumber)},t.prototype.setHasFocus=function(e){this.hasFocus=e},t.prototype._onConfigurationChanged=function(e,t){var n=null;if(-1!==this.viewportStartLine){var i=new bn(this.viewportStartLine,this.getLineMinColumn(this.viewportStartLine));n=this.coordinatesConverter.convertViewPositionToModelPosition(i)}var o=!1,r=this.configuration.options,s=r.get(34),a=r.get(103),u=r.get(108),l=r.get(102);if(this.lines.setWrappingSettings(s,a,u.wrappingColumn,l)&&(e.emit(new mw),e.emit(new yw),e.emit(new gw),this.decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount()),0!==this.viewLayout.getCurrentScrollTop()&&(o=!0)),t.hasChanged(68)&&(this.decorations.reset(),e.emit(new gw)),e.emit(new hw(t)),this.viewLayout.onConfigurationChanged(t),o&&n){var c=this.coordinatesConverter.convertModelPositionToViewPosition(n),d=this.viewLayout.getVerticalOffsetForLineNumber(c.lineNumber);this.viewLayout.setScrollPositionNow({scrollTop:d+this.viewportStartLineDelta})}},t.prototype._registerModelEvents=function(){var e=this;this._register(this.model.onDidChangeRawContentFast((function(t){try{for(var n=e._beginEmit(),i=!1,o=!1,r=t.changes,s=t.versionId,a=e.lines.createLineBreaksComputer(),u=0,l=r;u<l.length;u++){switch((v=l[u]).changeType){case 4:for(var c=0,d=v.detail;c<d.length;c++){var h=d[c];a.addRequest(h,null)}break;case 2:a.addRequest(v.detail,null)}}for(var p=a.finalize(),f=0,g=0,m=r;g<m.length;g++){var v;switch((v=m[g]).changeType){case 1:e.lines.onModelFlushed(),n.emit(new mw),e.decorations.reset(),e.viewLayout.onFlushed(e.getLineCount()),i=!0;break;case 3:null!==(L=e.lines.onModelLinesDeleted(s,v.fromLineNumber,v.toLineNumber))&&(n.emit(L),e.viewLayout.onLinesDeleted(L.fromLineNumber,L.toLineNumber)),i=!0;break;case 4:var _=p.slice(f,f+v.detail.length);f+=v.detail.length,null!==(S=e.lines.onModelLinesInserted(s,v.fromLineNumber,v.toLineNumber,_))&&(n.emit(S),e.viewLayout.onLinesInserted(S.fromLineNumber,S.toLineNumber)),i=!0;break;case 2:var y=p[f];f++;var b=e.lines.onModelLineChanged(s,v.lineNumber,y),w=b[0],C=b[1],S=b[2],L=b[3];o=w,C&&n.emit(C),S&&(n.emit(S),e.viewLayout.onLinesInserted(S.fromLineNumber,S.toLineNumber)),L&&(n.emit(L),e.viewLayout.onLinesDeleted(L.fromLineNumber,L.toLineNumber))}}e.lines.acceptVersionId(s),e.viewLayout.onHeightMaybeChanged(),!i&&o&&(n.emit(new yw),n.emit(new gw),e.decorations.onLineMappingChanged())}finally{e._endEmit()}if(e.viewportStartLine=-1,e.configuration.setMaxLineNumber(e.model.getLineCount()),!e.hasFocus&&e.model.getAttachedEditorCount()>=2&&e.viewportStartLineTrackedRange){var x=e.model._getTrackedRange(e.viewportStartLineTrackedRange);if(x){var D=e.coordinatesConverter.convertModelPositionToViewPosition(x.getStartPosition()),N=e.viewLayout.getVerticalOffsetForLineNumber(D.lineNumber);e.viewLayout.setScrollPositionNow({scrollTop:N+e.viewportStartLineDelta})}}}))),this._register(this.model.onDidChangeTokens((function(t){for(var n=[],i=0,o=t.ranges.length;i<o;i++){var r=t.ranges[i],s=e.coordinatesConverter.convertModelPositionToViewPosition(new bn(r.fromLineNumber,1)).lineNumber,a=e.coordinatesConverter.convertModelPositionToViewPosition(new bn(r.toLineNumber,e.model.getLineMaxColumn(r.toLineNumber))).lineNumber;n[i]={fromLineNumber:s,toLineNumber:a}}try{e._beginEmit().emit(new Dw(n))}finally{e._endEmit()}t.tokenizationSupportChanged&&e._tokenizeViewportSoon.schedule()}))),this._register(this.model.onDidChangeLanguageConfiguration((function(t){try{e._beginEmit().emit(new _w)}finally{e._endEmit()}}))),this._register(this.model.onDidChangeOptions((function(t){if(e.lines.setTabSize(e.model.getOptions().tabSize)){e.decorations.onLineMappingChanged(),e.viewLayout.onFlushed(e.getLineCount());try{var n=e._beginEmit();n.emit(new mw),n.emit(new yw),n.emit(new gw)}finally{e._endEmit()}}}))),this._register(this.model.onDidChangeDecorations((function(t){e.decorations.onModelDecorationsChanged();try{e._beginEmit().emit(new gw)}finally{e._endEmit()}})))},t.prototype.setHiddenAreas=function(e){try{var t=this._beginEmit();this.lines.setHiddenAreas(e)&&(t.emit(new mw),t.emit(new yw),t.emit(new gw),this.decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount()),this.viewLayout.onHeightMaybeChanged())}finally{this._endEmit()}},t.prototype.getVisibleRanges=function(){var e=this.getCompletelyVisibleViewRange(),t=this.coordinatesConverter.convertViewRangeToModelRange(e),n=this.lines.getHiddenAreas();if(0===n.length)return[t];for(var i=[],o=0,r=t.startLineNumber,s=t.startColumn,a=t.endLineNumber,u=t.endColumn,l=0,c=n.length;l<c;l++){var d=n[l].startLineNumber,h=n[l].endLineNumber;h<r||(d>a||(r<d&&(i[o++]=new wn(r,s,d-1,this.model.getLineMaxColumn(d-1))),r=h+1,s=1))}return(r<a||r===a&&s<u)&&(i[o++]=new wn(r,s,a,u)),i},t.prototype.getCompletelyVisibleViewRange=function(){var e=this.viewLayout.getLinesViewportData(),t=e.completelyVisibleStartLineNumber,n=e.completelyVisibleEndLineNumber;return new wn(t,this.getLineMinColumn(t),n,this.getLineMaxColumn(n))},t.prototype.getCompletelyVisibleViewRangeAtScrollTop=function(e){var t=this.viewLayout.getLinesViewportDataAtScrollTop(e),n=t.completelyVisibleStartLineNumber,i=t.completelyVisibleEndLineNumber;return new wn(n,this.getLineMinColumn(n),i,this.getLineMaxColumn(i))},t.prototype.saveState=function(){var e=this.viewLayout.saveState(),t=e.scrollTop,n=this.viewLayout.getLineNumberAtVerticalOffset(t),i=this.coordinatesConverter.convertViewPositionToModelPosition(new bn(n,this.getLineMinColumn(n))),o=this.viewLayout.getVerticalOffsetForLineNumber(n)-t;return{scrollLeft:e.scrollLeft,firstPosition:i,firstPositionDeltaTop:o}},t.prototype.reduceRestoreState=function(e){if(void 0===e.firstPosition)return this._reduceRestoreStateCompatibility(e);var t=this.model.validatePosition(e.firstPosition),n=this.coordinatesConverter.convertModelPositionToViewPosition(t),i=this.viewLayout.getVerticalOffsetForLineNumber(n.lineNumber)-e.firstPositionDeltaTop;return{scrollLeft:e.scrollLeft,scrollTop:i}},t.prototype._reduceRestoreStateCompatibility=function(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTopWithoutViewZones}},t.prototype.getTabSize=function(){return this.model.getOptions().tabSize},t.prototype.getOptions=function(){return this.model.getOptions()},t.prototype.getLineCount=function(){return this.lines.getViewLineCount()},t.prototype.setViewport=function(e,t,n){this.viewportStartLine=e;var i=this.coordinatesConverter.convertViewPositionToModelPosition(new bn(e,this.getLineMinColumn(e)));this.viewportStartLineTrackedRange=this.model._setTrackedRange(this.viewportStartLineTrackedRange,new wn(i.lineNumber,i.column,i.lineNumber,i.column),1);var o=this.viewLayout.getVerticalOffsetForLineNumber(e),r=this.viewLayout.getCurrentScrollTop();this.viewportStartLineDelta=r-o},t.prototype.getActiveIndentGuide=function(e,t,n){return this.lines.getActiveIndentGuide(e,t,n)},t.prototype.getLinesIndentGuides=function(e,t){return this.lines.getViewLinesIndentGuides(e,t)},t.prototype.getLineContent=function(e){return this.lines.getViewLineContent(e)},t.prototype.getLineLength=function(e){return this.lines.getViewLineLength(e)},t.prototype.getLineMinColumn=function(e){return this.lines.getViewLineMinColumn(e)},t.prototype.getLineMaxColumn=function(e){return this.lines.getViewLineMaxColumn(e)},t.prototype.getLineFirstNonWhitespaceColumn=function(e){var t=wr(this.getLineContent(e));return-1===t?0:t+1},t.prototype.getLineLastNonWhitespaceColumn=function(e){var t=Sr(this.getLineContent(e));return-1===t?0:t+2},t.prototype.getDecorationsInViewport=function(e){return this.decorations.getDecorationsViewportData(e).decorations},t.prototype.getViewLineRenderingData=function(e,t){var n=this.model.mightContainRTL(),i=this.model.mightContainNonBasicASCII(),o=this.getTabSize(),r=this.lines.getViewLineData(t),s=this.decorations.getDecorationsViewportData(e).inlineDecorations[t-e.startLineNumber];return new rd(r.minColumn,r.maxColumn,r.content,r.continuesWithWrappedLine,n,i,r.tokens,s,o,r.startVisibleColumn)},t.prototype.getViewLineData=function(e){return this.lines.getViewLineData(e)},t.prototype.getMinimapLinesRenderingData=function(e,t,n){var i=this.lines.getViewLinesData(e,t,n);return new id(this.getTabSize(),i)},t.prototype.getAllOverviewRulerDecorations=function(e){return this.lines.getAllOverviewRulerDecorations(this.editorId,ue(this.configuration.options),e)},t.prototype.invalidateOverviewRulerColorCache=function(){for(var e=0,t=this.model.getOverviewRulerDecorations();e<t.length;e++){var n=t[e].options.overviewRuler;n&&n.invalidateCachedColor()}},t.prototype.invalidateMinimapColorCache=function(){for(var e=0,t=this.model.getAllDecorations();e<t.length;e++){var n=t[e].options.minimap;n&&n.invalidateCachedColor()}},t.prototype.getValueInRange=function(e,t){var n=this.coordinatesConverter.convertViewRangeToModelRange(e);return this.model.getValueInRange(n,t)},t.prototype.getModelLineMaxColumn=function(e){return this.model.getLineMaxColumn(e)},t.prototype.validateModelPosition=function(e){return this.model.validatePosition(e)},t.prototype.validateModelRange=function(e){return this.model.validateRange(e)},t.prototype.deduceModelPositionRelativeToViewPosition=function(e,t,n){var i=this.coordinatesConverter.convertViewPositionToModelPosition(e);2===this.model.getEOL().length&&(t<0?t-=n:t+=n);var o=this.model.getOffsetAt(i)+t;return this.model.getPositionAt(o)},t.prototype.getEOL=function(){return this.model.getEOL()},t.prototype.getPlainTextToCopy=function(e,t,n){var i=n?"\r\n":this.model.getEOL();(e=e.slice(0)).sort(wn.compareRangesUsingStarts);for(var o=!1,r=!1,s=0,a=e;s<a.length;s++){a[s].isEmpty()?o=!0:r=!0}if(!r){if(!t)return"";for(var u=e.map((function(e){return e.startLineNumber})),l="",c=0;c<u.length;c++)c>0&&u[c-1]===u[c]||(l+=this.model.getLineContent(u[c])+i);return l}if(o&&t){for(var d=[],h=0,p=0,f=e;p<f.length;p++){var g=(y=f[p]).startLineNumber;y.isEmpty()?g!==h&&d.push(this.model.getLineContent(g)):d.push(this.model.getValueInRange(y,n?2:0)),h=g}return 1===d.length?d[0]:d}for(var m=[],v=0,_=e;v<_.length;v++){var y;(y=_[v]).isEmpty()||m.push(this.model.getValueInRange(y,n?2:0))}return 1===m.length?m[0]:m},t.prototype.getRichTextToCopy=function(e,t){var n=this.model.getLanguageIdentifier();if(1===n.id)return null;if(1!==e.length)return null;var i=e[0];if(i.isEmpty()){if(!t)return null;var o=i.startLineNumber;i=new wn(o,this.model.getLineMinColumn(o),o,this.model.getLineMaxColumn(o))}var r=this.configuration.options.get(34),s=this._getColorMap(),a=r.fontFamily===ge.fontFamily?r.fontFamily:"'"+r.fontFamily+"', "+ge.fontFamily;return{mode:n.language,html:'<div style="color: '+s[1]+";background-color: "+s[2]+";font-family: "+a+";font-weight: "+r.fontWeight+";font-size: "+r.fontSize+"px;line-height: "+r.lineHeight+'px;white-space: pre;">'+this._getHTMLToCopy(i,s)+"</div>"}},t.prototype._getHTMLToCopy=function(e,t){for(var n=e.startLineNumber,i=e.startColumn,o=e.endLineNumber,r=e.endColumn,s=this.getTabSize(),a="",u=n;u<=o;u++){var l=this.model.getLineTokens(u),c=l.getLineContent(),d=u===n?i-1:0,h=u===o?r-1:c.length;a+=""===c?"<br>":zL(c,l.inflate(),t,d,h,s,v)}return a},t.prototype._getColorMap=function(){var e=Yu.getColorMap(),t=["#000000"];if(e)for(var n=1,i=e.length;n<i;n++)t[n]=mv.Format.CSS.formatHex(e[n]);return t},t}(Ew),fx=function(){function e(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this._entries=new Map;for(var n=0,i=e;n<i.length;n++){var o=i[n],r=o[0],s=o[1];this.set(r,s)}}return e.prototype.set=function(e,t){var n=this._entries.get(e);return this._entries.set(e,t),n},e.prototype.has=function(e){return this._entries.has(e)},e.prototype.get=function(e){return this._entries.get(e)},e}(),gx=Mn("accessibilityService"),mx=new Kh("accessibilityModeEnabled",!1),vx=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),_x=function(e){function t(t,n){for(var i=e.call(this,0)||this,o=0;o<t.length;o++)i.set(t.charCodeAt(o),1);for(o=0;o<n.length;o++)i.set(n.charCodeAt(o),2);return i}return vx(t,e),t.prototype.get=function(e){return e>=0&&e<256?this._asciiMap[e]:e>=12352&&e<=12543||e>=13312&&e<=19903||e>=19968&&e<=40959?3:this._map.get(e)||this._defaultValue},t}(nc),yx=[],bx=[],wx=function(){function e(e,t){this.classifier=new _x(e,t)}return e.create=function(t){return new e(t.get(99),t.get(98))},e.prototype.createLineBreaksComputer=function(e,t,n,i){var o=this;t|=0,n=+n;var r=[],s=[];return{addRequest:function(e,t){r.push(e),s.push(t)},finalize:function(){for(var a=e.typicalFullwidthCharacterWidth/e.typicalHalfwidthCharacterWidth,u=[],l=0,c=r.length;l<c;l++){var d=s[l];u[l]=d?Cx(o.classifier,d,r[l],t,n,a,i):Sx(o.classifier,r[l],t,n,a,i)}return yx.length=0,bx.length=0,u}}},e}();function Cx(e,t,n,i,o,r,s){if(-1===o)return null;var a=n.length;if(a<=1)return null;var u=t.breakOffsets,l=t.breakOffsetsVisibleColumn,c=Nx(n,i,o,r,s),d=o-c,h=yx,p=bx,f=0,g=o,m=u.length,v=0;if(v>=0)for(var _=Math.abs(l[v]-g);v+1<m;){if((W=Math.abs(l[v+1]-g))>=_)break;_=W,v++}for(;v<m;){var y=v<0?0:u[v],b=v<0?0:l[v],w=0,C=0,S=0,L=0;if(b<=g){for(var x=b,D=n.charCodeAt(y-1),N=e.get(D),k=!0,E=y;E<a;E++){var I=E,O=void 0,M=void 0;if(Tr(T=n.charCodeAt(E))?(E++,O=0,M=2):(O=e.get(T),M=Lx(T,x,i,r)),Dx(D,N,T,O)&&(w=I,C=x),(x+=M)>g){S=I,L=x-M,x-C>d&&(w=0),k=!1;break}D=T,N=O}if(k){f>0&&(h[f]=u[u.length-1],p[f]=l[u.length-1],f++);break}}if(0===w){x=b;var T=n.charCodeAt(y),P=(O=e.get(T),!1);for(E=y-1;E>=0;E--){I=E+1;if(9===(D=n.charCodeAt(E))){P=!0;break}N=void 0;var R=void 0;if(Pr(D)?(E--,N=0,R=2):(N=e.get(D),R=jr(D)?r:1),x<=g){if(0===S&&(S=I,L=x),x<=g-d)break;if(Dx(D,N,T,O)){w=I,C=x;break}}x-=R,T=D,O=N}if(0!==w){var A=d-(L-C);if(A<=i){var F=n.charCodeAt(S);M=void 0;A-(M=Tr(F)?2:Lx(F,L,i,r))<0&&(w=0)}}if(P){v--;continue}}for(0===w&&(w=S,C=L),h[f]=w,p[f]=C,f++,g=C+d;v<0||v<m&&l[v]<C;)v++;for(_=Math.abs(l[v]-g);v+1<m;){var W;if((W=Math.abs(l[v+1]-g))>=_)break;_=W,v++}}return 0===f?null:(h.length=f,p.length=f,yx=t.breakOffsets,bx=t.breakOffsetsVisibleColumn,t.breakOffsets=h,t.breakOffsetsVisibleColumn=p,t.wrappedTextIndentLength=c,t)}function Sx(e,t,n,i,o,r){if(-1===i)return null;var s=t.length;if(s<=1)return null;var a=Nx(t,n,i,o,r),u=i-a,l=[],c=[],d=0,h=0,p=0,f=i,g=t.charCodeAt(0),m=e.get(g),v=Lx(g,0,n,o),_=1;Tr(g)&&(v+=1,g=t.charCodeAt(1),m=e.get(g),_++);for(var y=_;y<s;y++){var b=y,w=t.charCodeAt(y),C=void 0,S=void 0;Tr(w)?(y++,C=0,S=2):(C=e.get(w),S=Lx(w,v,n,o)),Dx(g,m,w,C)&&(h=b,p=v),(v+=S)>f&&((0===h||v-p>u)&&(h=b,p=v-S),l[d]=h,c[d]=p,d++,f=p+u,h=0),g=w,m=C}return 0===d?null:(l[d]=s,c[d]=v,new $L(l,c,a))}function Lx(e,t,n,i){return 9===e?n-t%n:jr(e)?i:1}function xx(e,t){return t-e%t}function Dx(e,t,n,i){return 32!==n&&(2===t||3===t&&2!==i||1===i||3===i&&1!==t)}function Nx(e,t,n,i,o){var r=0;if(0!==o){var s=wr(e);if(-1!==s){for(var a=0;a<s;a++){r+=9===e.charCodeAt(a)?xx(r,t):1}var u=3===o?2:2===o?1:0;for(a=0;a<u;a++){r+=xx(r,t)}r+i>n&&(r=0)}}return r}var kx=function(){function e(){}return e.create=function(){return new e},e.prototype.createLineBreaksComputer=function(e,t,n,i){t|=0,n=+n;var o=[];return{addRequest:function(e,t){o.push(e)},finalize:function(){return function(e,t,n,i,o){if(-1===i){for(var r=[],s=0,a=e.length;s<a;s++)r[s]=null;return r}var u=Math.round(i*t.typicalHalfwidthCharacterWidth);2!==o&&3!==o||(o=1);var l=document.createElement("div");af.applyFontInfoSlow(l,t);var c=Fc(1e4),d=[],h=[],p=[],f=[],g=[];for(s=0;s<e.length;s++){var m=e[s],v=0,_=0,y=u;if(0!==o)if(-1===(v=wr(m)))v=0;else{for(var b=0;b<v;b++){var w=9===m.charCodeAt(b)?n-_%n:1;_+=w}var C=Math.ceil(t.spaceWidth*_);C+t.typicalFullwidthCharacterWidth>u?(v=0,_=0):y=u-C}var S=m.substr(v),L=Ex(S,_,n,y,c);d[s]=v,h[s]=_,p[s]=S,f[s]=L[0],g[s]=L[1]}l.innerHTML=c.build(),l.style.position="absolute",l.style.top="10000",l.style.wordWrap="break-word",document.body.appendChild(l);var x=document.createRange(),D=Array.prototype.slice.call(l.children,0),N=[];for(s=0;s<e.length;s++){var k=D[s],E=Ix(x,k,p[s],f[s]);if(null!==E){v=d[s],_=h[s];var I=g[s],O=[],M=0;for(a=E.length;M<a;M++)O[M]=I[E[M]];if(0!==v)for(M=0,a=E.length;M<a;M++)E[M]+=v;N[s]=new $L(E,O,_)}else N[s]=null}return document.body.removeChild(l),N}(o,e,t,n,i)}}},e}();function Ex(e,t,n,i,o){o.appendASCIIString('<div style="width:'),o.appendASCIIString(String(i)),o.appendASCIIString('px;">');for(var r=e.length,s=t,a=0,u=[],l=[],c=0<r?e.charCodeAt(0):0,d=0;d<r;d++){u[d]=a,l[d]=s;var h=c;c=d+1<r?e.charCodeAt(d+1):0;var p=1,f=1;switch(h){case 9:f=p=n-s%n;for(var g=1;g<=p;g++)g<p?o.write1(160):o.appendASCII(32);break;case 32:32===c?o.write1(160):o.appendASCII(32);break;case 60:o.appendASCIIString("<");break;case 62:o.appendASCIIString(">");break;case 38:o.appendASCIIString("&");break;case 0:o.appendASCIIString("�");break;case 65279:case 8232:o.write1(65533);break;default:jr(h)&&f++,o.write1(h)}a+=p,s+=f}return u[e.length]=a,l[e.length]=s,o.appendASCIIString("</div>"),[u,l]}function Ix(e,t,n,i){if(n.length<=1)return null;var o=[];return function e(t,n,i,o,r,s,a,u){if(o===s)return;if(r=r||Ox(t,n,i[o],i[o+1]),a=a||Ox(t,n,i[s],i[s+1]),Math.abs(r[0].top-a[0].top)<=.1)return;if(o+1===s)return void u.push(s);var l=o+(s-o)/2|0,c=Ox(t,n,i[l],i[l+1]);e(t,n,i,o,r,l,c,u),e(t,n,i,l,c,s,a,u)}(e,t.firstChild,i,0,null,n.length-1,null,o),0===o.length?null:(o.push(n.length),o)}function Ox(e,t,n,i){return e.setStart(t,n),e.setEnd(t,i),e.getClientRects()}var Mx=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Tx=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Px=function(e,t){return function(n,i){t(n,i,e)}},Rx=0,Ax=function(){function e(e,t,n,i,o,r){this.model=e,this.viewModel=t,this.cursor=n,this.view=i,this.hasRealView=o,this.listenersToRemove=r}return e.prototype.dispose=function(){Ae(this.listenersToRemove),this.model.onBeforeDetached(),this.hasRealView&&this.view.dispose(),this.cursor.dispose(),this.viewModel.dispose()},e}(),Fx=function(e){function t(t,n,i,o,r,s,a,u,l,c){var d=e.call(this)||this;d._onDidDispose=d._register(new nt),d.onDidDispose=d._onDidDispose.event,d._onDidChangeModelContent=d._register(new nt),d.onDidChangeModelContent=d._onDidChangeModelContent.event,d._onDidChangeModelLanguage=d._register(new nt),d.onDidChangeModelLanguage=d._onDidChangeModelLanguage.event,d._onDidChangeModelLanguageConfiguration=d._register(new nt),d.onDidChangeModelLanguageConfiguration=d._onDidChangeModelLanguageConfiguration.event,d._onDidChangeModelOptions=d._register(new nt),d.onDidChangeModelOptions=d._onDidChangeModelOptions.event,d._onDidChangeModelDecorations=d._register(new nt),d.onDidChangeModelDecorations=d._onDidChangeModelDecorations.event,d._onDidChangeConfiguration=d._register(new nt),d.onDidChangeConfiguration=d._onDidChangeConfiguration.event,d._onDidChangeModel=d._register(new nt),d.onDidChangeModel=d._onDidChangeModel.event,d._onDidChangeCursorPosition=d._register(new nt),d.onDidChangeCursorPosition=d._onDidChangeCursorPosition.event,d._onDidChangeCursorSelection=d._register(new nt),d.onDidChangeCursorSelection=d._onDidChangeCursorSelection.event,d._onDidAttemptReadOnlyEdit=d._register(new nt),d.onDidAttemptReadOnlyEdit=d._onDidAttemptReadOnlyEdit.event,d._onDidLayoutChange=d._register(new nt),d.onDidLayoutChange=d._onDidLayoutChange.event,d._editorTextFocus=d._register(new Wx),d.onDidFocusEditorText=d._editorTextFocus.onDidChangeToTrue,d.onDidBlurEditorText=d._editorTextFocus.onDidChangeToFalse,d._editorWidgetFocus=d._register(new Wx),d.onDidFocusEditorWidget=d._editorWidgetFocus.onDidChangeToTrue,d.onDidBlurEditorWidget=d._editorWidgetFocus.onDidChangeToFalse,d._onWillType=d._register(new nt),d.onWillType=d._onWillType.event,d._onDidType=d._register(new nt),d.onDidType=d._onDidType.event,d._onDidCompositionStart=d._register(new nt),d.onDidCompositionStart=d._onDidCompositionStart.event,d._onDidCompositionEnd=d._register(new nt),d.onDidCompositionEnd=d._onDidCompositionEnd.event,d._onDidPaste=d._register(new nt),d.onDidPaste=d._onDidPaste.event,d._onMouseUp=d._register(new nt),d.onMouseUp=d._onMouseUp.event,d._onMouseDown=d._register(new nt),d.onMouseDown=d._onMouseDown.event,d._onMouseDrag=d._register(new nt),d.onMouseDrag=d._onMouseDrag.event,d._onMouseDrop=d._register(new nt),d.onMouseDrop=d._onMouseDrop.event,d._onContextMenu=d._register(new nt),d.onContextMenu=d._onContextMenu.event,d._onMouseMove=d._register(new nt),d.onMouseMove=d._onMouseMove.event,d._onMouseLeave=d._register(new nt),d.onMouseLeave=d._onMouseLeave.event,d._onMouseWheel=d._register(new nt),d.onMouseWheel=d._onMouseWheel.event,d._onKeyUp=d._register(new nt),d.onKeyUp=d._onKeyUp.event,d._onKeyDown=d._register(new nt),d.onKeyDown=d._onKeyDown.event,d._onDidContentSizeChange=d._register(new nt),d.onDidContentSizeChange=d._onDidContentSizeChange.event,d._onDidScrollChange=d._register(new nt),d.onDidScrollChange=d._onDidScrollChange.event,d._onDidChangeViewZones=d._register(new nt),d.onDidChangeViewZones=d._onDidChangeViewZones.event,d._domElement=t,d._id=++Rx,d._decorationTypeKeysToIds={},d._decorationTypeSubtypes={},d.isSimpleWidget=i.isSimpleWidget||!1,d._telemetryData=i.telemetryData,n=n||{},d._configuration=d._register(d._createConfiguration(n,c)),d._register(d._configuration.onDidChange((function(e){d._onDidChangeConfiguration.fire(e);var t=d._configuration.options;if(e.hasChanged(107)){var n=t.get(107);d._onDidLayoutChange.fire(n)}}))),d._contextKeyService=d._register(a.createScoped(d._domElement)),d._notificationService=l,d._codeEditorService=r,d._commandService=s,d._themeService=u,d._register(new Vx(d,d._contextKeyService)),d._register(new Bx(d,d._contextKeyService)),d._instantiationService=o.createChild(new fx([qh,d._contextKeyService])),d._modelData=null,d._contributions={},d._actions={},d._focusTracker=new Hx(t),d._focusTracker.onChange((function(){d._editorWidgetFocus.setValue(d._focusTracker.hasFocus())})),d._contentWidgets={},d._overlayWidgets={};for(var h=0,p=Array.isArray(i.contributions)?i.contributions:_f.getEditorContributions();h<p.length;h++){var f=p[h];try{var g=d._instantiationService.createInstance(f.ctor,d);d._contributions[f.id]=g}catch(e){De(e)}}return _f.getEditorActions().forEach((function(e){var t=new VL(e.id,e.label,e.alias,Xs(e.precondition),(function(){return d._instantiationService.invokeFunction((function(t){return Promise.resolve(e.runEditorCommand(t,d,null))}))}),d._contextKeyService);d._actions[t.id]=t})),d._codeEditorService.addCodeEditor(d),d}return Mx(t,e),t.prototype._createConfiguration=function(e,t){return new af(this.isSimpleWidget,e,this._domElement,t)},t.prototype.getId=function(){return this.getEditorType()+":"+this._id},t.prototype.getEditorType=function(){return Ha.ICodeEditor},t.prototype.dispose=function(){this._codeEditorService.removeCodeEditor(this),this._focusTracker.dispose();for(var t=Object.keys(this._contributions),n=0,i=t.length;n<i;n++){var o=t[n];this._contributions[o].dispose()}this._removeDecorationTypes(),this._postDetachModelCleanup(this._detachModel()),this._onDidDispose.fire(),e.prototype.dispose.call(this)},t.prototype.invokeWithinContext=function(e){return this._instantiationService.invokeFunction(e)},t.prototype.updateOptions=function(e){this._configuration.updateOptions(e)},t.prototype.getOptions=function(){return this._configuration.options},t.prototype.getOption=function(e){return this._configuration.options.get(e)},t.prototype.getRawOptions=function(){return this._configuration.getRawOptions()},t.prototype.getValue=function(e){if(void 0===e&&(e=null),!this._modelData)return"";var t=!(!e||!e.preserveBOM),n=0;return e&&e.lineEnding&&"\n"===e.lineEnding?n=1:e&&e.lineEnding&&"\r\n"===e.lineEnding&&(n=2),this._modelData.model.getValue(n,t)},t.prototype.setValue=function(e){this._modelData&&this._modelData.model.setValue(e)},t.prototype.getModel=function(){return this._modelData?this._modelData.model:null},t.prototype.setModel=function(e){void 0===e&&(e=null);var t=e;if(!(null===this._modelData&&null===t||this._modelData&&this._modelData.model===t)){var n=this.hasTextFocus(),i=this._detachModel();this._attachModel(t),n&&this.hasModel()&&this.focus();var o={oldModelUrl:i?i.uri:null,newModelUrl:t?t.uri:null};this._removeDecorationTypes(),this._onDidChangeModel.fire(o),this._postDetachModelCleanup(i)}},t.prototype._removeDecorationTypes=function(){if(this._decorationTypeKeysToIds={},this._decorationTypeSubtypes){for(var e in this._decorationTypeSubtypes){var t=this._decorationTypeSubtypes[e];for(var n in t)this._removeDecorationType(e+"-"+n)}this._decorationTypeSubtypes={}}},t.prototype.getVisibleRanges=function(){return this._modelData?this._modelData.viewModel.getVisibleRanges():[]},t.prototype.getWhitespaces=function(){return this._modelData?this._modelData.viewModel.viewLayout.getWhitespaces():[]},t._getVerticalOffsetForPosition=function(e,t,n){var i=e.model.validatePosition({lineNumber:t,column:n}),o=e.viewModel.coordinatesConverter.convertModelPositionToViewPosition(i);return e.viewModel.viewLayout.getVerticalOffsetForLineNumber(o.lineNumber)},t.prototype.getTopForLineNumber=function(e){return this._modelData?t._getVerticalOffsetForPosition(this._modelData,e,1):-1},t.prototype.getTopForPosition=function(e,n){return this._modelData?t._getVerticalOffsetForPosition(this._modelData,e,n):-1},t.prototype.setHiddenAreas=function(e){this._modelData&&this._modelData.viewModel.setHiddenAreas(e.map((function(e){return wn.lift(e)})))},t.prototype.getVisibleColumnFromPosition=function(e){if(!this._modelData)return e.column;var t=this._modelData.model.validatePosition(e),n=this._modelData.model.getOptions().tabSize;return Uv.visibleColumnFromColumn(this._modelData.model.getLineContent(t.lineNumber),t.column,n)+1},t.prototype.getPosition=function(){return this._modelData?this._modelData.cursor.getPosition():null},t.prototype.setPosition=function(e){if(this._modelData){if(!bn.isIPosition(e))throw new Error("Invalid arguments");this._modelData.cursor.setSelections("api",[{selectionStartLineNumber:e.lineNumber,selectionStartColumn:e.column,positionLineNumber:e.lineNumber,positionColumn:e.column}])}},t.prototype._sendRevealRange=function(e,t,n,i){if(this._modelData){if(!wn.isIRange(e))throw new Error("Invalid arguments");var o=this._modelData.model.validateRange(e),r=this._modelData.viewModel.coordinatesConverter.convertModelRangeToViewRange(o);this._modelData.cursor.emitCursorRevealRange("api",r,t,n,i)}},t.prototype.revealLine=function(e,t){void 0===t&&(t=0),this._revealLine(e,0,t)},t.prototype.revealLineInCenter=function(e,t){void 0===t&&(t=0),this._revealLine(e,1,t)},t.prototype.revealLineInCenterIfOutsideViewport=function(e,t){void 0===t&&(t=0),this._revealLine(e,2,t)},t.prototype._revealLine=function(e,t,n){if("number"!=typeof e)throw new Error("Invalid arguments");this._sendRevealRange(new wn(e,1,e,1),t,!1,n)},t.prototype.revealPosition=function(e,t){void 0===t&&(t=0),this._revealPosition(e,0,!0,t)},t.prototype.revealPositionInCenter=function(e,t){void 0===t&&(t=0),this._revealPosition(e,1,!0,t)},t.prototype.revealPositionInCenterIfOutsideViewport=function(e,t){void 0===t&&(t=0),this._revealPosition(e,2,!0,t)},t.prototype._revealPosition=function(e,t,n,i){if(!bn.isIPosition(e))throw new Error("Invalid arguments");this._sendRevealRange(new wn(e.lineNumber,e.column,e.lineNumber,e.column),t,n,i)},t.prototype.getSelection=function(){return this._modelData?this._modelData.cursor.getSelection():null},t.prototype.getSelections=function(){return this._modelData?this._modelData.cursor.getSelections():null},t.prototype.setSelection=function(e){var t=Sn.isISelection(e),n=wn.isIRange(e);if(!t&&!n)throw new Error("Invalid arguments");if(t)this._setSelectionImpl(e);else if(n){var i={selectionStartLineNumber:e.startLineNumber,selectionStartColumn:e.startColumn,positionLineNumber:e.endLineNumber,positionColumn:e.endColumn};this._setSelectionImpl(i)}},t.prototype._setSelectionImpl=function(e){if(this._modelData){var t=new Sn(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn);this._modelData.cursor.setSelections("api",[t])}},t.prototype.revealLines=function(e,t,n){void 0===n&&(n=0),this._revealLines(e,t,0,n)},t.prototype.revealLinesInCenter=function(e,t,n){void 0===n&&(n=0),this._revealLines(e,t,1,n)},t.prototype.revealLinesInCenterIfOutsideViewport=function(e,t,n){void 0===n&&(n=0),this._revealLines(e,t,2,n)},t.prototype._revealLines=function(e,t,n,i){if("number"!=typeof e||"number"!=typeof t)throw new Error("Invalid arguments");this._sendRevealRange(new wn(e,1,t,1),n,!1,i)},t.prototype.revealRange=function(e,t,n,i){void 0===t&&(t=0),void 0===n&&(n=!1),void 0===i&&(i=!0),this._revealRange(e,n?1:0,i,t)},t.prototype.revealRangeInCenter=function(e,t){void 0===t&&(t=0),this._revealRange(e,1,!0,t)},t.prototype.revealRangeInCenterIfOutsideViewport=function(e,t){void 0===t&&(t=0),this._revealRange(e,2,!0,t)},t.prototype.revealRangeAtTop=function(e,t){void 0===t&&(t=0),this._revealRange(e,3,!0,t)},t.prototype._revealRange=function(e,t,n,i){if(!wn.isIRange(e))throw new Error("Invalid arguments");this._sendRevealRange(wn.lift(e),t,n,i)},t.prototype.setSelections=function(e,t){if(void 0===t&&(t="api"),this._modelData){if(!e||0===e.length)throw new Error("Invalid arguments");for(var n=0,i=e.length;n<i;n++)if(!Sn.isISelection(e[n]))throw new Error("Invalid arguments");this._modelData.cursor.setSelections(t,e)}},t.prototype.getContentWidth=function(){return this._modelData?this._modelData.viewModel.viewLayout.getContentWidth():-1},t.prototype.getScrollWidth=function(){return this._modelData?this._modelData.viewModel.viewLayout.getScrollWidth():-1},t.prototype.getScrollLeft=function(){return this._modelData?this._modelData.viewModel.viewLayout.getCurrentScrollLeft():-1},t.prototype.getContentHeight=function(){return this._modelData?this._modelData.viewModel.viewLayout.getContentHeight():-1},t.prototype.getScrollHeight=function(){return this._modelData?this._modelData.viewModel.viewLayout.getScrollHeight():-1},t.prototype.getScrollTop=function(){return this._modelData?this._modelData.viewModel.viewLayout.getCurrentScrollTop():-1},t.prototype.setScrollLeft=function(e){if(this._modelData){if("number"!=typeof e)throw new Error("Invalid arguments");this._modelData.viewModel.viewLayout.setScrollPositionNow({scrollLeft:e})}},t.prototype.setScrollTop=function(e){if(this._modelData){if("number"!=typeof e)throw new Error("Invalid arguments");this._modelData.viewModel.viewLayout.setScrollPositionNow({scrollTop:e})}},t.prototype.setScrollPosition=function(e){this._modelData&&this._modelData.viewModel.viewLayout.setScrollPositionNow(e)},t.prototype.saveViewState=function(){if(!this._modelData)return null;for(var e={},t=0,n=Object.keys(this._contributions);t<n.length;t++){var i=n[t],o=this._contributions[i];"function"==typeof o.saveViewState&&(e[i]=o.saveViewState())}return{cursorState:this._modelData.cursor.saveState(),viewState:this._modelData.viewModel.saveState(),contributionsState:e}},t.prototype.restoreViewState=function(e){if(this._modelData&&this._modelData.hasRealView){var t=e;if(t&&t.cursorState&&t.viewState){var n=t.cursorState;Array.isArray(n)?this._modelData.cursor.restoreState(n):this._modelData.cursor.restoreState([n]);for(var i=t.contributionsState||{},o=Object.keys(this._contributions),r=0,s=o.length;r<s;r++){var a=o[r],u=this._contributions[a];"function"==typeof u.restoreViewState&&u.restoreViewState(i[a])}var l=this._modelData.viewModel.reduceRestoreState(t.viewState);this._modelData.view.restoreState(l)}}},t.prototype.getContribution=function(e){return this._contributions[e]||null},t.prototype.getActions=function(){for(var e=[],t=Object.keys(this._actions),n=0,i=t.length;n<i;n++){var o=t[n];e.push(this._actions[o])}return e},t.prototype.getSupportedActions=function(){var e=this.getActions();return e=e.filter((function(e){return e.isSupported()}))},t.prototype.getAction=function(e){return this._actions[e]||null},t.prototype.trigger=function(e,t,n){if(n=n||{},t===za.Type){if(!this._modelData||"string"!=typeof n.text||0===n.text.length)return;return"keyboard"===e&&this._onWillType.fire(n.text),this._modelData.cursor.trigger(e,t,n),void("keyboard"===e&&this._onDidType.fire(n.text))}if(t!==za.Paste){var i=this.getAction(t);i?Promise.resolve(i.run()).then(void 0,De):this._modelData&&(this._triggerEditorCommand(e,t,n)||(this._modelData.cursor.trigger(e,t,n),t===za.CompositionStart&&this._onDidCompositionStart.fire(),t===za.CompositionEnd&&this._onDidCompositionEnd.fire()))}else{if(!this._modelData||"string"!=typeof n.text||0===n.text.length)return;var o=this._modelData.cursor.getSelection().getStartPosition();this._modelData.cursor.trigger(e,t,n);var r=this._modelData.cursor.getSelection().getStartPosition();"keyboard"===e&&this._onDidPaste.fire({range:new wn(o.lineNumber,o.column,r.lineNumber,r.column),mode:n.mode})}},t.prototype._triggerEditorCommand=function(e,t,n){var i=this,o=_f.getEditorCommand(t);return!!o&&((n=n||{}).source=e,this._instantiationService.invokeFunction((function(e){Promise.resolve(o.runEditorCommand(e,i,n)).then(void 0,De)})),!0)},t.prototype._getCursors=function(){return this._modelData?this._modelData.cursor:null},t.prototype.pushUndoStop=function(){return!!this._modelData&&(!this._configuration.options.get(68)&&(this._modelData.model.pushStackElement(),!0))},t.prototype.executeEdits=function(e,t,n){return!!this._modelData&&(!this._configuration.options.get(68)&&(i=n?Array.isArray(n)?function(){return n}:n:function(){return null},this._modelData.cursor.executeEdits(e,t,i),!0));var i},t.prototype.executeCommand=function(e,t){this._modelData&&this._modelData.cursor.trigger(e,za.ExecuteCommand,t)},t.prototype.executeCommands=function(e,t){this._modelData&&this._modelData.cursor.trigger(e,za.ExecuteCommands,t)},t.prototype.changeDecorations=function(e){return this._modelData?this._modelData.model.changeDecorations(e,this._id):null},t.prototype.getLineDecorations=function(e){return this._modelData?this._modelData.model.getLineDecorations(e,this._id,ue(this._configuration.options)):null},t.prototype.deltaDecorations=function(e,t){return this._modelData?0===e.length&&0===t.length?e:this._modelData.model.deltaDecorations(e,t,this._id):[]},t.prototype.removeDecorations=function(e){var t=this._decorationTypeKeysToIds[e];t&&this.deltaDecorations(t,[]),this._decorationTypeKeysToIds.hasOwnProperty(e)&&delete this._decorationTypeKeysToIds[e],this._decorationTypeSubtypes.hasOwnProperty(e)&&delete this._decorationTypeSubtypes[e]},t.prototype.getLayoutInfo=function(){return this._configuration.options.get(107)},t.prototype.createOverviewRuler=function(e){return this._modelData&&this._modelData.hasRealView?this._modelData.view.createOverviewRuler(e):null},t.prototype.getContainerDomNode=function(){return this._domElement},t.prototype.getDomNode=function(){return this._modelData&&this._modelData.hasRealView?this._modelData.view.domNode.domNode:null},t.prototype.delegateVerticalScrollbarMouseDown=function(e){this._modelData&&this._modelData.hasRealView&&this._modelData.view.delegateVerticalScrollbarMouseDown(e)},t.prototype.layout=function(e){this._configuration.observeReferenceElement(e),this.render()},t.prototype.focus=function(){this._modelData&&this._modelData.hasRealView&&this._modelData.view.focus()},t.prototype.hasTextFocus=function(){return!(!this._modelData||!this._modelData.hasRealView)&&this._modelData.view.isFocused()},t.prototype.hasWidgetFocus=function(){return this._focusTracker&&this._focusTracker.hasFocus()},t.prototype.addContentWidget=function(e){var t={widget:e,position:e.getPosition()};this._contentWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting a content widget with the same id."),this._contentWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addContentWidget(t)},t.prototype.layoutContentWidget=function(e){var t=e.getId();if(this._contentWidgets.hasOwnProperty(t)){var n=this._contentWidgets[t];n.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutContentWidget(n)}},t.prototype.removeContentWidget=function(e){var t=e.getId();if(this._contentWidgets.hasOwnProperty(t)){var n=this._contentWidgets[t];delete this._contentWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeContentWidget(n)}},t.prototype.addOverlayWidget=function(e){var t={widget:e,position:e.getPosition()};this._overlayWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting an overlay widget with the same id."),this._overlayWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addOverlayWidget(t)},t.prototype.layoutOverlayWidget=function(e){var t=e.getId();if(this._overlayWidgets.hasOwnProperty(t)){var n=this._overlayWidgets[t];n.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutOverlayWidget(n)}},t.prototype.removeOverlayWidget=function(e){var t=e.getId();if(this._overlayWidgets.hasOwnProperty(t)){var n=this._overlayWidgets[t];delete this._overlayWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeOverlayWidget(n)}},t.prototype.changeViewZones=function(e){this._modelData&&this._modelData.hasRealView&&(this._modelData.view.change(e)&&this._onDidChangeViewZones.fire())},t.prototype.getTargetAtClientPoint=function(e,t){return this._modelData&&this._modelData.hasRealView?this._modelData.view.getTargetAtClientPoint(e,t):null},t.prototype.getScrolledVisiblePosition=function(e){if(!this._modelData||!this._modelData.hasRealView)return null;var n=this._modelData.model.validatePosition(e),i=this._configuration.options,o=i.get(107);return{top:t._getVerticalOffsetForPosition(this._modelData,n.lineNumber,n.column)-this.getScrollTop(),left:this._modelData.view.getOffsetForColumn(n.lineNumber,n.column)+o.glyphMarginWidth+o.lineNumbersWidth+o.decorationsWidth-this.getScrollLeft(),height:i.get(49)}},t.prototype.getOffsetForColumn=function(e,t){return this._modelData&&this._modelData.hasRealView?this._modelData.view.getOffsetForColumn(e,t):-1},t.prototype.render=function(e){void 0===e&&(e=!1),this._modelData&&this._modelData.hasRealView&&this._modelData.view.render(!0,e)},t.prototype.setAriaOptions=function(e){this._modelData&&this._modelData.hasRealView&&this._modelData.view.setAriaOptions(e)},t.prototype.applyFontInfo=function(e){af.applyFontInfoSlow(e,this._configuration.options.get(34))},t.prototype._attachModel=function(e){var t=this;if(e){var n=[];this._domElement.setAttribute("data-mode-id",e.getLanguageIdentifier().language),this._configuration.setIsDominatedByLongLines(e.isDominatedByLongLines()),this._configuration.setMaxLineNumber(e.getLineCount()),e.onBeforeAttached();var i=new px(this._id,this._configuration,e,kx.create(),wx.create(this._configuration.options),(function(e){return mo(e)}));n.push(e.onDidChangeDecorations((function(e){return t._onDidChangeModelDecorations.fire(e)}))),n.push(e.onDidChangeLanguage((function(n){t._domElement.setAttribute("data-mode-id",e.getLanguageIdentifier().language),t._onDidChangeModelLanguage.fire(n)}))),n.push(e.onDidChangeLanguageConfiguration((function(e){return t._onDidChangeModelLanguageConfiguration.fire(e)}))),n.push(e.onDidChangeContent((function(e){return t._onDidChangeModelContent.fire(e)}))),n.push(e.onDidChangeOptions((function(e){return t._onDidChangeModelOptions.fire(e)}))),n.push(e.onWillDispose((function(){return t.setModel(null)})));var o=new FL(this._configuration,e,i);n.push(o.onDidReachMaxCursorCount((function(){t._notificationService.warn(r("cursors.maximum","The number of cursors has been limited to {0}.",FL.MAX_CURSOR_COUNT))}))),n.push(o.onDidAttemptReadOnlyEdit((function(){t._onDidAttemptReadOnlyEdit.fire(void 0)}))),n.push(o.onDidChange((function(e){for(var n=[],i=0,o=e.selections.length;i<o;i++)n[i]=e.selections[i].getPosition();var r={position:n[0],secondaryPositions:n.slice(1),reason:e.reason,source:e.source};t._onDidChangeCursorPosition.fire(r);var s={selection:e.selections[0],secondarySelections:e.selections.slice(1),modelVersionId:e.modelVersionId,oldSelections:e.oldSelections,oldModelVersionId:e.oldModelVersionId,source:e.source,reason:e.reason};t._onDidChangeCursorSelection.fire(s)})));var s=this._createView(i,o),a=s[0],u=s[1];if(u){this._domElement.appendChild(a.domNode.domNode);for(var l=Object.keys(this._contentWidgets),c=0,d=l.length;c<d;c++){var h=l[c];a.addContentWidget(this._contentWidgets[h])}for(c=0,d=(l=Object.keys(this._overlayWidgets)).length;c<d;c++){h=l[c];a.addOverlayWidget(this._overlayWidgets[h])}a.render(!1,!0),a.domNode.domNode.setAttribute("data-uri",e.uri.toString())}this._modelData=new Ax(e,i,o,a,u,n)}else this._modelData=null},t.prototype._createView=function(e,t){var n,i=this;n=this.isSimpleWidget?{executeEditorCommand:function(e,n){e.runCoreEditorCommand(t,n)},paste:function(e,t,n,o,r){i.trigger(e,za.Paste,{text:t,pasteOnNewLine:n,multicursorText:o,mode:r})},type:function(e,t){i.trigger(e,za.Type,{text:t})},replacePreviousChar:function(e,t,n){i.trigger(e,za.ReplacePreviousChar,{text:t,replaceCharCnt:n})},compositionStart:function(e){i.trigger(e,za.CompositionStart,void 0)},compositionEnd:function(e){i.trigger(e,za.CompositionEnd,void 0)},cut:function(e){i.trigger(e,za.Cut,void 0)}}:{executeEditorCommand:function(e,n){e.runCoreEditorCommand(t,n)},paste:function(e,t,n,o,r){i._commandService.executeCommand(za.Paste,{text:t,pasteOnNewLine:n,multicursorText:o,mode:r})},type:function(e,t){i._commandService.executeCommand(za.Type,{text:t})},replacePreviousChar:function(e,t,n){i._commandService.executeCommand(za.ReplacePreviousChar,{text:t,replaceCharCnt:n})},compositionStart:function(e){i._commandService.executeCommand(za.CompositionStart,{})},compositionEnd:function(e){i._commandService.executeCommand(za.CompositionEnd,{})},cut:function(e){i._commandService.executeCommand(za.Cut,{})}};var o=new SC(e);return o.onDidContentSizeChange=function(e){return i._onDidContentSizeChange.fire(e)},o.onDidScroll=function(e){return i._onDidScrollChange.fire(e)},o.onDidGainFocus=function(){return i._editorTextFocus.setValue(!0)},o.onDidLoseFocus=function(){return i._editorTextFocus.setValue(!1)},o.onContextMenu=function(e){return i._onContextMenu.fire(e)},o.onMouseDown=function(e){return i._onMouseDown.fire(e)},o.onMouseUp=function(e){return i._onMouseUp.fire(e)},o.onMouseDrag=function(e){return i._onMouseDrag.fire(e)},o.onMouseDrop=function(e){return i._onMouseDrop.fire(e)},o.onKeyUp=function(e){return i._onKeyUp.fire(e)},o.onMouseMove=function(e){return i._onMouseMove.fire(e)},o.onMouseLeave=function(e){return i._onMouseLeave.fire(e)},o.onMouseWheel=function(e){return i._onMouseWheel.fire(e)},o.onKeyDown=function(e){return i._onKeyDown.fire(e)},[new EL(n,this._configuration,this._themeService,e,t,o),!0]},t.prototype._postDetachModelCleanup=function(e){e&&e.removeAllDecorationsWithOwnerId(this._id)},t.prototype._detachModel=function(){if(!this._modelData)return null;var e=this._modelData.model,t=this._modelData.hasRealView?this._modelData.view.domNode.domNode:null;return this._modelData.dispose(),this._modelData=null,this._domElement.removeAttribute("data-mode-id"),t&&this._domElement.removeChild(t),e},t.prototype._removeDecorationType=function(e){this._codeEditorService.removeDecorationType(e)},t.prototype.hasModel=function(){return null!==this._modelData},t=Tx([Px(3,In),Px(4,Pn),Px(5,la),Px(6,qh),Px(7,fg),Px(8,ap),Px(9,gx)],t)}(He),Wx=function(e){function t(){var t=e.call(this)||this;return t._onDidChangeToTrue=t._register(new nt),t.onDidChangeToTrue=t._onDidChangeToTrue.event,t._onDidChangeToFalse=t._register(new nt),t.onDidChangeToFalse=t._onDidChangeToFalse.event,t._value=0,t}return Mx(t,e),t.prototype.setValue=function(e){var t=e?2:1;this._value!==t&&(this._value=t,2===this._value?this._onDidChangeToTrue.fire():1===this._value&&this._onDidChangeToFalse.fire())},t}(He),Vx=function(e){function t(t,n){var i=e.call(this)||this;return i._editor=t,n.createKey("editorId",t.getId()),i._editorSimpleInput=eC.editorSimpleInput.bindTo(n),i._editorFocus=eC.focus.bindTo(n),i._textInputFocus=eC.textInputFocus.bindTo(n),i._editorTextFocus=eC.editorTextFocus.bindTo(n),i._editorTabMovesFocus=eC.tabMovesFocus.bindTo(n),i._editorReadonly=eC.readOnly.bindTo(n),i._hasMultipleSelections=eC.hasMultipleSelections.bindTo(n),i._hasNonEmptySelection=eC.hasNonEmptySelection.bindTo(n),i._canUndo=eC.canUndo.bindTo(n),i._canRedo=eC.canRedo.bindTo(n),i._register(i._editor.onDidChangeConfiguration((function(){return i._updateFromConfig()}))),i._register(i._editor.onDidChangeCursorSelection((function(){return i._updateFromSelection()}))),i._register(i._editor.onDidFocusEditorWidget((function(){return i._updateFromFocus()}))),i._register(i._editor.onDidBlurEditorWidget((function(){return i._updateFromFocus()}))),i._register(i._editor.onDidFocusEditorText((function(){return i._updateFromFocus()}))),i._register(i._editor.onDidBlurEditorText((function(){return i._updateFromFocus()}))),i._register(i._editor.onDidChangeModel((function(){return i._updateFromModel()}))),i._register(i._editor.onDidChangeConfiguration((function(){return i._updateFromModel()}))),i._updateFromConfig(),i._updateFromSelection(),i._updateFromFocus(),i._updateFromModel(),i._editorSimpleInput.set(i._editor.isSimpleWidget),i}return Mx(t,e),t.prototype._updateFromConfig=function(){var e=this._editor.getOptions();this._editorTabMovesFocus.set(e.get(106)),this._editorReadonly.set(e.get(68))},t.prototype._updateFromSelection=function(){var e=this._editor.getSelections();e?(this._hasMultipleSelections.set(e.length>1),this._hasNonEmptySelection.set(e.some((function(e){return!e.isEmpty()})))):(this._hasMultipleSelections.reset(),this._hasNonEmptySelection.reset())},t.prototype._updateFromFocus=function(){this._editorFocus.set(this._editor.hasWidgetFocus()&&!this._editor.isSimpleWidget),this._editorTextFocus.set(this._editor.hasTextFocus()&&!this._editor.isSimpleWidget),this._textInputFocus.set(this._editor.hasTextFocus())},t.prototype._updateFromModel=function(){var e=this._editor.getModel();this._canUndo.set(Boolean(e&&e.canUndo())),this._canRedo.set(Boolean(e&&e.canRedo()))},t}(He),Bx=function(e){function t(t,n){var i=e.call(this)||this;i._editor=t,i._contextKeyService=n,i._langId=eC.languageId.bindTo(n),i._hasCompletionItemProvider=eC.hasCompletionItemProvider.bindTo(n),i._hasCodeActionsProvider=eC.hasCodeActionsProvider.bindTo(n),i._hasCodeLensProvider=eC.hasCodeLensProvider.bindTo(n),i._hasDefinitionProvider=eC.hasDefinitionProvider.bindTo(n),i._hasDeclarationProvider=eC.hasDeclarationProvider.bindTo(n),i._hasImplementationProvider=eC.hasImplementationProvider.bindTo(n),i._hasTypeDefinitionProvider=eC.hasTypeDefinitionProvider.bindTo(n),i._hasHoverProvider=eC.hasHoverProvider.bindTo(n),i._hasDocumentHighlightProvider=eC.hasDocumentHighlightProvider.bindTo(n),i._hasDocumentSymbolProvider=eC.hasDocumentSymbolProvider.bindTo(n),i._hasReferenceProvider=eC.hasReferenceProvider.bindTo(n),i._hasRenameProvider=eC.hasRenameProvider.bindTo(n),i._hasSignatureHelpProvider=eC.hasSignatureHelpProvider.bindTo(n),i._hasDocumentFormattingProvider=eC.hasDocumentFormattingProvider.bindTo(n),i._hasDocumentSelectionFormattingProvider=eC.hasDocumentSelectionFormattingProvider.bindTo(n),i._hasMultipleDocumentFormattingProvider=eC.hasMultipleDocumentFormattingProvider.bindTo(n),i._hasMultipleDocumentSelectionFormattingProvider=eC.hasMultipleDocumentSelectionFormattingProvider.bindTo(n),i._isInWalkThrough=eC.isInEmbeddedEditor.bindTo(n);var o=function(){return i._update()};return i._register(t.onDidChangeModel(o)),i._register(t.onDidChangeModelLanguage(o)),i._register(Eu.onDidChange(o)),i._register(Vu.onDidChange(o)),i._register(Wu.onDidChange(o)),i._register(Pu.onDidChange(o)),i._register(Ru.onDidChange(o)),i._register(Au.onDidChange(o)),i._register(Fu.onDidChange(o)),i._register(Ou.onDidChange(o)),i._register(Tu.onDidChange(o)),i._register(Mu.onDidChange(o)),i._register(Nu.onDidChange(o)),i._register(ku.onDidChange(o)),i._register(Bu.onDidChange(o)),i._register(Hu.onDidChange(o)),i._register(Iu.onDidChange(o)),o(),i}return Mx(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.reset=function(){var e=this;this._contextKeyService.bufferChangeEvents((function(){e._langId.reset(),e._hasCompletionItemProvider.reset(),e._hasCodeActionsProvider.reset(),e._hasCodeLensProvider.reset(),e._hasDefinitionProvider.reset(),e._hasDeclarationProvider.reset(),e._hasImplementationProvider.reset(),e._hasTypeDefinitionProvider.reset(),e._hasHoverProvider.reset(),e._hasDocumentHighlightProvider.reset(),e._hasDocumentSymbolProvider.reset(),e._hasReferenceProvider.reset(),e._hasRenameProvider.reset(),e._hasDocumentFormattingProvider.reset(),e._hasDocumentSelectionFormattingProvider.reset(),e._hasSignatureHelpProvider.reset(),e._isInWalkThrough.reset()}))},t.prototype._update=function(){var e=this,t=this._editor.getModel();t?this._contextKeyService.bufferChangeEvents((function(){e._langId.set(t.getLanguageIdentifier().language),e._hasCompletionItemProvider.set(Eu.has(t)),e._hasCodeActionsProvider.set(Vu.has(t)),e._hasCodeLensProvider.set(Wu.has(t)),e._hasDefinitionProvider.set(Pu.has(t)),e._hasDeclarationProvider.set(Ru.has(t)),e._hasImplementationProvider.set(Au.has(t)),e._hasTypeDefinitionProvider.set(Fu.has(t)),e._hasHoverProvider.set(Ou.has(t)),e._hasDocumentHighlightProvider.set(Tu.has(t)),e._hasDocumentSymbolProvider.set(Mu.has(t)),e._hasReferenceProvider.set(Nu.has(t)),e._hasRenameProvider.set(ku.has(t)),e._hasSignatureHelpProvider.set(Iu.has(t)),e._hasDocumentFormattingProvider.set(Bu.has(t)||Hu.has(t)),e._hasDocumentSelectionFormattingProvider.set(Hu.has(t)),e._hasMultipleDocumentFormattingProvider.set(Bu.all(t).length+Hu.all(t).length>1),e._hasMultipleDocumentSelectionFormattingProvider.set(Hu.all(t).length>1),e._isInWalkThrough.set(t.uri.scheme===Ci.walkThroughSnippet)})):this.reset()},t}(He),Hx=function(e){function t(t){var n=e.call(this)||this;return n._onChange=n._register(new nt),n.onChange=n._onChange.event,n._hasFocus=!1,n._domFocusTracker=n._register(Yo(t)),n._register(n._domFocusTracker.onDidFocus((function(){n._hasFocus=!0,n._onChange.fire(void 0)}))),n._register(n._domFocusTracker.onDidBlur((function(){n._hasFocus=!1,n._onChange.fire(void 0)}))),n}return Mx(t,e),t.prototype.hasFocus=function(){return this._hasFocus},t}(He),zx=encodeURIComponent("<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 3' enable-background='new 0 0 6 3' height='3' width='6'><g fill='"),jx=encodeURIComponent("'><polygon points='5.5,0 2.5,3 1.1,3 4.1,0'/><polygon points='4,0 6,2 6,0.6 5.4,0'/><polygon points='0,2 1,3 2.4,3 0,0.6'/></g></svg>");function Ux(e){return zx+encodeURIComponent(e.toString())+jx}var Kx=encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" height="3" width="12"><g fill="'),qx=encodeURIComponent('"><circle cx="1" cy="1" r="1"/><circle cx="5" cy="1" r="1"/><circle cx="9" cy="1" r="1"/></g></svg>');yg((function(e,t){var n=e.getColor(ly);n&&t.addRule(".monaco-editor .squiggly-error { border-bottom: 4px double "+n+"; }");var i=e.getColor(uy);i&&t.addRule('.monaco-editor .squiggly-error { background: url("data:image/svg+xml,'+Ux(i)+'") repeat-x bottom left; }');var o=e.getColor(dy);o&&t.addRule(".monaco-editor .squiggly-warning { border-bottom: 4px double "+o+"; }");var r=e.getColor(cy);r&&t.addRule('.monaco-editor .squiggly-warning { background: url("data:image/svg+xml,'+Ux(r)+'") repeat-x bottom left; }');var s=e.getColor(py);s&&t.addRule(".monaco-editor .squiggly-info { border-bottom: 4px double "+s+"; }");var a=e.getColor(hy);a&&t.addRule('.monaco-editor .squiggly-info { background: url("data:image/svg+xml,'+Ux(a)+'") repeat-x bottom left; }');var u=e.getColor(gy);u&&t.addRule(".monaco-editor .squiggly-hint { border-bottom: 2px dotted "+u+"; }");var l=e.getColor(fy);l&&t.addRule('.monaco-editor .squiggly-hint { background: url("data:image/svg+xml,'+(Kx+encodeURIComponent(l.toString())+qx+'") no-repeat bottom left; }'));var c=e.getColor(iw);c&&t.addRule(".monaco-editor.showUnused .squiggly-inline-unnecessary { opacity: "+c.rgba.a+"; }");var d=e.getColor(nw);d&&t.addRule(".monaco-editor.showUnused .squiggly-unnecessary { border-bottom: 2px dashed "+d+"; }");var h=e.getColor(vy)||"inherit";t.addRule(".monaco-editor .squiggly-inline-deprecated { text-decoration: line-through; text-decoration-color: "+h+"}")}));n(389),n(390);var Gx=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Zx=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},Yx=function(e){function t(t,n,i){void 0===i&&(i={});var o=e.call(this)||this;return o._state=3,o._onDidEnablementChange=o._register(new nt),o.onDidEnablementChange=o._onDidEnablementChange.event,o._onDidStart=o._register(new nt),o.onDidStart=o._onDidStart.event,o._onDidChange=o._register(new nt),o.onDidChange=o._onDidChange.event,o._onDidReset=o._register(new nt),o.onDidReset=o._onDidReset.event,o._onDidEnd=o._register(new nt),o.onDidEnd=o._onDidEnd.event,o.linkedSash=void 0,o.orthogonalStartSashDisposables=o._register(new Be),o.orthogonalEndSashDisposables=o._register(new Be),o.el=Xo(t,er(".monaco-sash")),_&&no(o.el,"mac"),o._register(Xn(o.el,"mousedown")(o.onMouseDown,o)),o._register(Xn(o.el,"dblclick")(o.onMouseDoubleClick,o)),o._register(jf.addTarget(o.el)),o._register(Xn(o.el,Bf.Start)(o.onTouchStart,o)),Gn&&no(o.el,"touch"),o.setOrientation(i.orientation||0),o.hidden=!1,o.layoutProvider=n,o.orthogonalStartSash=i.orthogonalStartSash,o.orthogonalEndSash=i.orthogonalEndSash,so(o.el,"debug",!1),o}return Gx(t,e),Object.defineProperty(t.prototype,"state",{get:function(){return this._state},set:function(e){this._state!==e&&(so(this.el,"disabled",0===e),so(this.el,"minimum",1===e),so(this.el,"maximum",2===e),this._state=e,this._onDidEnablementChange.fire(e))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"orthogonalStartSash",{get:function(){return this._orthogonalStartSash},set:function(e){this.orthogonalStartSashDisposables.clear(),e?(this.orthogonalStartSashDisposables.add(e.onDidEnablementChange(this.onOrthogonalStartSashEnablementChange,this)),this.onOrthogonalStartSashEnablementChange(e.state)):this.onOrthogonalStartSashEnablementChange(0),this._orthogonalStartSash=e},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"orthogonalEndSash",{get:function(){return this._orthogonalEndSash},set:function(e){this.orthogonalEndSashDisposables.clear(),e?(this.orthogonalEndSashDisposables.add(e.onDidEnablementChange(this.onOrthogonalEndSashEnablementChange,this)),this.onOrthogonalEndSashEnablementChange(e.state)):this.onOrthogonalEndSashEnablementChange(0),this._orthogonalEndSash=e},enumerable:!0,configurable:!0}),t.prototype.setOrientation=function(e){this.orientation=e,1===this.orientation?(no(this.el,"horizontal"),oo(this.el,"vertical")):(oo(this.el,"horizontal"),no(this.el,"vertical")),this.layoutProvider&&this.layout()},t.prototype.onMouseDown=function(e){var t=this;Go(e,!1);var n=!1;if(!e.__orthogonalSashEvent){var i=this.getOrthogonalSash(e);i&&(n=!0,e.__orthogonalSashEvent=!0,i.onMouseDown(e))}if(this.linkedSash&&!e.__linkedSashEvent&&(e.__linkedSashEvent=!0,this.linkedSash.onMouseDown(e)),this.state){for(var o=Zx(or("iframe"),or("webview")),r=0,s=o;r<s.length;r++){s[r].style.pointerEvents="none"}var a=new li(e),u=a.posx,l=a.posy,c=a.altKey,d={startX:u,currentX:u,startY:l,currentY:l,altKey:c};no(this.el,"active"),this._onDidStart.fire(d);var h=zo(this.el),p=function(){var e="";e=n?"all-scroll":1===t.orientation?1===t.state?"s-resize":2===t.state?"n-resize":_?"row-resize":"ns-resize":1===t.state?"e-resize":2===t.state?"w-resize":_?"col-resize":"ew-resize",h.innerHTML="* { cursor: "+e+" !important; }"},f=new Be;p(),n||this.onDidEnablementChange(p,null,f);Xn(window,"mousemove")((function(e){Go(e,!1);var n=new li(e),i={startX:u,currentX:n.posx,startY:l,currentY:n.posy,altKey:c};t._onDidChange.fire(i)}),null,f),Xn(window,"mouseup")((function(e){Go(e,!1),t.el.removeChild(h),oo(t.el,"active"),t._onDidEnd.fire(),f.dispose();for(var n=0,i=o;n<i.length;n++){i[n].style.pointerEvents="auto"}}),null,f)}},t.prototype.onMouseDoubleClick=function(e){var t=this.getOrthogonalSash(e);t&&t._onDidReset.fire(),this.linkedSash&&this.linkedSash._onDidReset.fire(),this._onDidReset.fire()},t.prototype.onTouchStart=function(e){var t=this;Go(e);var n=[],i=e.pageX,o=e.pageY,r=e.altKey;this._onDidStart.fire({startX:i,currentX:i,startY:o,currentY:o,altKey:r}),n.push(uo(this.el,Bf.Change,(function(e){Ws(e.pageX)&&Ws(e.pageY)&&t._onDidChange.fire({startX:i,currentX:e.pageX,startY:o,currentY:e.pageY,altKey:r})}))),n.push(uo(this.el,Bf.End,(function(e){t._onDidEnd.fire(),Ae(n)})))},t.prototype.layout=function(){var e=Gn?20:4;if(0===this.orientation){var t=this.layoutProvider;this.el.style.left=t.getVerticalSashLeft(this)-e/2+"px",t.getVerticalSashTop&&(this.el.style.top=t.getVerticalSashTop(this)+"px"),t.getVerticalSashHeight&&(this.el.style.height=t.getVerticalSashHeight(this)+"px")}else{var n=this.layoutProvider;this.el.style.top=n.getHorizontalSashTop(this)-e/2+"px",n.getHorizontalSashLeft&&(this.el.style.left=n.getHorizontalSashLeft(this)+"px"),n.getHorizontalSashWidth&&(this.el.style.width=n.getHorizontalSashWidth(this)+"px")}},t.prototype.hide=function(){this.hidden=!0,this.el.style.display="none",this.el.setAttribute("aria-hidden","true")},t.prototype.onOrthogonalStartSashEnablementChange=function(e){so(this.el,"orthogonal-start",0!==e)},t.prototype.onOrthogonalEndSashEnablementChange=function(e){so(this.el,"orthogonal-end",0!==e)},t.prototype.getOrthogonalSash=function(e){if(0===this.orientation){if(e.offsetY<=4)return this.orthogonalStartSash;if(e.offsetY>=this.el.clientHeight-4)return this.orthogonalEndSash}else{if(e.offsetX<=4)return this.orthogonalStartSash;if(e.offsetX>=this.el.clientWidth-4)return this.orthogonalEndSash}},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.el.remove()},t}(He),Xx=function(e,t,n){void 0===t&&(t=[]),void 0===n&&(n=!1),this.ctor=e,this.staticArguments=t,this.supportsDelayedInstantiation=n},$x=[];function Qx(e,t,n){$x.push([e,new Xx(t,[],n)])}var Jx=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),eD=Mn("IEditorCancelService"),tD=new Kh("cancellableOperation",!1);Qx(eD,function(){function e(){this._tokens=new WeakMap}return e.prototype.add=function(e,t){var n,i=this._tokens.get(e);return i||(i=e.invokeWithinContext((function(e){return{key:tD.bindTo(e.get(qh)),tokens:new Qe}})),this._tokens.set(e,i)),i.key.set(!0),n=i.tokens.push(t),function(){n&&(n(),i.key.set(!i.tokens.isEmpty()),n=void 0)}},e.prototype.cancel=function(e){var t=this._tokens.get(e);if(t){var n=t.tokens.pop();n&&(n.cancel(),t.key.set(!t.tokens.isEmpty()))}},e}(),!0);var nD=function(e){function t(t,n){var i=e.call(this,n)||this;return i.editor=t,i._unregister=t.invokeWithinContext((function(e){return e.get(eD).add(t,i)})),i}return Jx(t,e),t.prototype.dispose=function(){this._unregister(),e.prototype.dispose.call(this)},t}(ct);Mf(new(function(e){function t(){return e.call(this,{id:"editor.cancelOperation",kbOpts:{weight:100,primary:9},precondition:tD})||this}return Jx(t,e),t.prototype.runEditorCommand=function(e,t){e.get(eD).cancel(t)},t}(Nf)));var iD=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),oD=function(){function e(e,t){if(this.flags=t,0!=(1&this.flags)){var n=e.getModel();this.modelVersionId=n?pr("{0}#{1}",n.uri.toString(),n.getVersionId()):null}else this.modelVersionId=null;0!=(4&this.flags)?this.position=e.getPosition():this.position=null,0!=(2&this.flags)?this.selection=e.getSelection():this.selection=null,0!=(8&this.flags)?(this.scrollLeft=e.getScrollLeft(),this.scrollTop=e.getScrollTop()):(this.scrollLeft=-1,this.scrollTop=-1)}return e.prototype._equals=function(t){if(!(t instanceof e))return!1;var n=t;return this.modelVersionId===n.modelVersionId&&(this.scrollLeft===n.scrollLeft&&this.scrollTop===n.scrollTop&&(!(!this.position&&n.position||this.position&&!n.position||this.position&&n.position&&!this.position.equals(n.position))&&!(!this.selection&&n.selection||this.selection&&!n.selection||this.selection&&n.selection&&!this.selection.equalsRange(n.selection))))},e.prototype.validate=function(t){return this._equals(new e(t,this.flags))},e}(),rD=function(e){function t(t,n,i){var o=e.call(this,t,i)||this;return o.editor=t,o._listener=new Be,4&n&&o._listener.add(t.onDidChangeCursorPosition((function(e){return o.cancel()}))),2&n&&o._listener.add(t.onDidChangeCursorSelection((function(e){return o.cancel()}))),8&n&&o._listener.add(t.onDidScrollChange((function(e){return o.cancel()}))),1&n&&(o._listener.add(t.onDidChangeModel((function(e){return o.cancel()}))),o._listener.add(t.onDidChangeModelContent((function(e){return o.cancel()})))),o}return iD(t,e),t.prototype.dispose=function(){this._listener.dispose(),e.prototype.dispose.call(this)},t}(nD),sD=function(e){function t(t,n){var i=e.call(this,n)||this;return i._listener=t.onDidChangeContent((function(){return i.cancel()})),i}return iD(t,e),t.prototype.dispose=function(){this._listener.dispose(),e.prototype.dispose.call(this)},t}(ct),aD=function(){function e(e,t){this._visiblePosition=e,this._visiblePositionScrollDelta=t}return e.capture=function(t){var n=null,i=0;if(0!==t.getScrollTop()){var o=t.getVisibleRanges();if(o.length>0){n=o[0].getStartPosition();var r=t.getTopForPosition(n.lineNumber,n.column);i=t.getScrollTop()-r}}return new e(n,i)},e.prototype.restore=function(e){if(this._visiblePosition){var t=e.getTopForPosition(this._visiblePosition.lineNumber,this._visiblePosition.column);e.setScrollTop(t+this._visiblePositionScrollDelta)}},e}(),uD=(n(391),n(392),"ResourceURLs"),lD="text/plain",cD=function(){function e(e){this.data=e}return e.prototype.update=function(){},e.prototype.getData=function(){return this.data},e}(),dD={CurrentDragAndDropData:void 0},hD=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),pD=function(e){function t(t,n,i){var o=e.call(this)||this;return o.options=i,o._context=t||o,o._action=n,n instanceof df&&o._register(n.onDidChange((function(e){o.element&&o.handleActionChangeEvent(e)}))),o}return hD(t,e),t.prototype.handleActionChangeEvent=function(e){void 0!==e.enabled&&this.updateEnabled(),void 0!==e.checked&&this.updateChecked(),void 0!==e.class&&this.updateClass(),void 0!==e.label&&(this.updateLabel(),this.updateTooltip()),void 0!==e.tooltip&&this.updateTooltip()},Object.defineProperty(t.prototype,"actionRunner",{get:function(){return this._actionRunner||(this._actionRunner=this._register(new hf)),this._actionRunner},set:function(e){this._actionRunner=e},enumerable:!0,configurable:!0}),t.prototype.getAction=function(){return this._action},t.prototype.isEnabled=function(){return this._action.enabled},t.prototype.setActionContext=function(e){this._context=e},t.prototype.render=function(e){var t=this,n=this.element=e;this._register(jf.addTarget(e));var i=this.options&&this.options.draggable;i&&(e.draggable=!0,zn&&this._register(uo(e,qo.DRAG_START,(function(e){var n;return null===(n=e.dataTransfer)||void 0===n?void 0:n.setData(lD,t._action.label)})))),this._register(uo(n,Bf.Tap,(function(e){return t.onClick(e)}))),this._register(uo(n,qo.MOUSE_DOWN,(function(e){i||Go(e,!0),t._action.enabled&&0===e.button&&no(n,"active")}))),this._register(uo(n,qo.CLICK,(function(e){Go(e,!0),t.options&&t.options.isMenu?t.onClick(e):L((function(){return t.onClick(e)}))}))),this._register(uo(n,qo.DBLCLICK,(function(e){Go(e,!0)}))),[qo.MOUSE_UP,qo.MOUSE_OUT].forEach((function(e){t._register(uo(n,e,(function(e){Go(e),oo(n,"active")})))}))},t.prototype.onClick=function(e){var t;Go(e,!0),Hs(this._context)?t=e:Fs(t=this._context)&&(t.event=e),this.actionRunner.run(this._action,t)},t.prototype.focus=function(){this.element&&(this.element.focus(),no(this.element,"focused"))},t.prototype.blur=function(){this.element&&(this.element.blur(),oo(this.element,"focused"))},t.prototype.updateEnabled=function(){},t.prototype.updateLabel=function(){},t.prototype.updateTooltip=function(){},t.prototype.updateClass=function(){},t.prototype.updateChecked=function(){},t.prototype.dispose=function(){this.element&&(Xi(this.element),this.element=void 0),e.prototype.dispose.call(this)},t}(He),fD=function(e){function t(n){var i=e.call(this,t.ID,n,n?"separator text":"separator")||this;return i.checked=!1,i.enabled=!1,i}return hD(t,e),t.ID="vs.actions.separator",t}(df),gD=function(e){function t(t,n,i){void 0===i&&(i={});var o=e.call(this,t,n,i)||this;return o.options=i,o.options.icon=void 0!==i.icon&&i.icon,o.options.label=void 0===i.label||i.label,o.cssClass="",o}return hD(t,e),t.prototype.render=function(t){e.prototype.render.call(this,t),this.element&&(this.label=Xo(this.element,er("a.action-label"))),this.label&&(this._action.id===fD.ID?this.label.setAttribute("role","presentation"):this.options.isMenu?this.label.setAttribute("role","menuitem"):this.label.setAttribute("role","button")),this.options.label&&this.options.keybinding&&this.element&&(Xo(this.element,er("span.keybinding")).textContent=this.options.keybinding),this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked()},t.prototype.focus=function(){e.prototype.focus.call(this),this.label&&this.label.focus()},t.prototype.updateLabel=function(){this.options.label&&this.label&&(this.label.textContent=this.getAction().label)},t.prototype.updateTooltip=function(){var e=null;this.getAction().tooltip?e=this.getAction().tooltip:!this.options.label&&this.getAction().label&&this.options.icon&&(e=this.getAction().label,this.options.keybinding&&(e=r({key:"titleLabel",comment:["action title","action keybinding"]},"{0} ({1})",e,this.options.keybinding))),e&&this.label&&(this.label.title=e)},t.prototype.updateClass=function(){this.cssClass&&this.label&&ro(this.label,this.cssClass),this.options.icon?(this.cssClass=this.getAction().class,this.label&&(no(this.label,"codicon"),this.cssClass&&io(this.label,this.cssClass)),this.updateEnabled()):this.label&&oo(this.label,"codicon")},t.prototype.updateEnabled=function(){this.getAction().enabled?(this.label&&(this.label.removeAttribute("aria-disabled"),oo(this.label,"disabled"),this.label.tabIndex=0),this.element&&oo(this.element,"disabled")):(this.label&&(this.label.setAttribute("aria-disabled","true"),no(this.label,"disabled"),ir(this.label)),this.element&&no(this.element,"disabled"))},t.prototype.updateChecked=function(){this.label&&(this.getAction().checked?no(this.label,"checked"):oo(this.label,"checked"))},t}(pD),mD={orientation:0,context:null,triggerKeys:{keys:[3,10],keyDown:!1}},vD=function(e){function t(t,n){void 0===n&&(n=mD);var i,o,r=e.call(this)||this;switch(r._onDidBlur=r._register(new nt),r.onDidBlur=r._onDidBlur.event,r._onDidCancel=r._register(new nt),r.onDidCancel=r._onDidCancel.event,r._onDidRun=r._register(new nt),r.onDidRun=r._onDidRun.event,r._onDidBeforeRun=r._register(new nt),r.onDidBeforeRun=r._onDidBeforeRun.event,r.options=n,r._context=n.context,r.options.triggerKeys||(r.options.triggerKeys=mD.triggerKeys),r.options.actionRunner?r._actionRunner=r.options.actionRunner:(r._actionRunner=new hf,r._register(r._actionRunner)),r._register(r._actionRunner.onDidRun((function(e){return r._onDidRun.fire(e)}))),r._register(r._actionRunner.onDidBeforeRun((function(e){return r._onDidBeforeRun.fire(e)}))),r.viewItems=[],r.focusedItem=void 0,r.domNode=document.createElement("div"),r.domNode.className="monaco-action-bar",!1!==n.animated&&no(r.domNode,"animated"),r.options.orientation){case 0:i=15,o=17;break;case 1:i=17,o=15,r.domNode.className+=" reverse";break;case 2:i=16,o=18,r.domNode.className+=" vertical";break;case 3:i=18,o=16,r.domNode.className+=" vertical reverse"}return r._register(uo(r.domNode,qo.KEY_DOWN,(function(e){var t=new ni(e),n=!0;t.equals(i)?r.focusPrevious():t.equals(o)?r.focusNext():t.equals(9)?r.cancel():r.isTriggerKeyEvent(t)?r.options.triggerKeys&&r.options.triggerKeys.keyDown&&r.doTrigger(t):n=!1,n&&(t.preventDefault(),t.stopPropagation())}))),r._register(uo(r.domNode,qo.KEY_UP,(function(e){var t=new ni(e);r.isTriggerKeyEvent(t)?(r.options.triggerKeys&&!r.options.triggerKeys.keyDown&&r.doTrigger(t),t.preventDefault(),t.stopPropagation()):(t.equals(2)||t.equals(1026))&&r.updateFocusedItem()}))),r.focusTracker=r._register(Yo(r.domNode)),r._register(r.focusTracker.onDidBlur((function(){document.activeElement!==r.domNode&&Fo(document.activeElement,r.domNode)||(r._onDidBlur.fire(),r.focusedItem=void 0)}))),r._register(r.focusTracker.onDidFocus((function(){return r.updateFocusedItem()}))),r.actionsList=document.createElement("ul"),r.actionsList.className="actions-container",r.actionsList.setAttribute("role","toolbar"),r.options.ariaLabel&&r.actionsList.setAttribute("aria-label",r.options.ariaLabel),r.domNode.appendChild(r.actionsList),t.appendChild(r.domNode),r}return hD(t,e),t.prototype.isTriggerKeyEvent=function(e){var t=!1;return this.options.triggerKeys&&this.options.triggerKeys.keys.forEach((function(n){t=t||e.equals(n)})),t},t.prototype.updateFocusedItem=function(){for(var e=0;e<this.actionsList.children.length;e++){var t=this.actionsList.children[e];if(Fo(document.activeElement,t)){this.focusedItem=e;break}}},Object.defineProperty(t.prototype,"context",{get:function(){return this._context},set:function(e){this._context=e,this.viewItems.forEach((function(t){return t.setActionContext(e)}))},enumerable:!0,configurable:!0}),t.prototype.getContainer=function(){return this.domNode},t.prototype.push=function(e,t){var n=this;void 0===t&&(t={});var i=Array.isArray(e)?e:[e],o=Ws(t.index)?t.index:null;i.forEach((function(e){var i,r=document.createElement("li");r.className="action-item",r.setAttribute("role","presentation"),n._register(uo(r,qo.CONTEXT_MENU,(function(e){e.preventDefault(),e.stopPropagation()}))),n.options.actionViewItemProvider&&(i=n.options.actionViewItemProvider(e)),i||(i=new gD(n.context,e,t)),i.actionRunner=n._actionRunner,i.setActionContext(n.context),i.render(r),null===o||o<0||o>=n.actionsList.children.length?(n.actionsList.appendChild(r),n.viewItems.push(i)):(n.actionsList.insertBefore(r,n.actionsList.children[o]),n.viewItems.splice(o,0,i),o++)}))},t.prototype.clear=function(){this.viewItems=Ae(this.viewItems),Yi(this.actionsList)},t.prototype.isEmpty=function(){return 0===this.viewItems.length},t.prototype.focus=function(e){var t=!1,n=void 0;void 0===e?t=!0:"number"==typeof e?n=e:"boolean"==typeof e&&(t=e),t&&void 0===this.focusedItem?(this.focusedItem=this.viewItems.length-1,this.focusNext()):(void 0!==n&&(this.focusedItem=n),this.updateFocus())},t.prototype.focusNext=function(){void 0===this.focusedItem&&(this.focusedItem=this.viewItems.length-1);var e,t=this.focusedItem;do{this.focusedItem=(this.focusedItem+1)%this.viewItems.length,e=this.viewItems[this.focusedItem]}while(this.focusedItem!==t&&!e.isEnabled());this.focusedItem!==t||e.isEnabled()||(this.focusedItem=void 0),this.updateFocus()},t.prototype.focusPrevious=function(){void 0===this.focusedItem&&(this.focusedItem=0);var e,t=this.focusedItem;do{this.focusedItem=this.focusedItem-1,this.focusedItem<0&&(this.focusedItem=this.viewItems.length-1),e=this.viewItems[this.focusedItem]}while(this.focusedItem!==t&&!e.isEnabled());this.focusedItem!==t||e.isEnabled()||(this.focusedItem=void 0),this.updateFocus(!0)},t.prototype.updateFocus=function(e,t){void 0===this.focusedItem&&this.actionsList.focus({preventScroll:t});for(var n=0;n<this.viewItems.length;n++){var i=this.viewItems[n];n===this.focusedItem?Ks(i.isEnabled)&&(i.isEnabled()&&Ks(i.focus)?i.focus(e):this.actionsList.focus({preventScroll:t})):Ks(i.blur)&&i.blur()}},t.prototype.doTrigger=function(e){if(void 0!==this.focusedItem){var t=this.viewItems[this.focusedItem];if(t instanceof pD){var n=null===t._context||void 0===t._context?e:t._context;this.run(t._action,n)}}},t.prototype.cancel=function(){document.activeElement instanceof HTMLElement&&document.activeElement.blur(),this._onDidCancel.fire()},t.prototype.run=function(e,t){return this._actionRunner.run(e,t)},t.prototype.dispose=function(){Ae(this.viewItems),this.viewItems=[],Xi(this.getContainer()),e.prototype.dispose.call(this)},t}(He),_D=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),yD=function(){function e(e,t,n,i){this.originalLineStart=e,this.originalLineEnd=t,this.modifiedLineStart=n,this.modifiedLineEnd=i}return e.prototype.getType=function(){return 0===this.originalLineStart?1:0===this.modifiedLineStart?2:0},e}(),bD=function(e){this.entries=e},wD=function(e){function t(t){var n=e.call(this)||this;return n._width=0,n._diffEditor=t,n._isVisible=!1,n.shadow=Ff(document.createElement("div")),n.shadow.setClassName("diff-review-shadow"),n.actionBarContainer=Ff(document.createElement("div")),n.actionBarContainer.setClassName("diff-review-actions"),n._actionBar=n._register(new vD(n.actionBarContainer.domNode)),n._actionBar.push(new df("diffreview.close",r("label.close","Close"),"close-diff-review",!0,(function(){return n.hide(),Promise.resolve(null)})),{label:!1,icon:!0}),n.domNode=Ff(document.createElement("div")),n.domNode.setClassName("diff-review monaco-editor-background"),n._content=Ff(document.createElement("div")),n._content.setClassName("diff-review-content"),n.scrollbar=n._register(new gS(n._content.domNode,{})),n.domNode.domNode.appendChild(n.scrollbar.getDomNode()),n._register(t.onDidUpdateDiff((function(){n._isVisible&&(n._diffs=n._compute(),n._render())}))),n._register(t.getModifiedEditor().onDidChangeCursorPosition((function(){n._isVisible&&n._render()}))),n._register(t.getOriginalEditor().onDidFocusEditorWidget((function(){n._isVisible&&n.hide()}))),n._register(t.getModifiedEditor().onDidFocusEditorWidget((function(){n._isVisible&&n.hide()}))),n._register(co(n.domNode.domNode,"click",(function(e){e.preventDefault();var t=Wo(e.target,"diff-review-row");t&&n._goToRow(t)}))),n._register(co(n.domNode.domNode,"keydown",(function(e){(e.equals(18)||e.equals(2066)||e.equals(530))&&(e.preventDefault(),n._goToRow(n._getNextRow())),(e.equals(16)||e.equals(2064)||e.equals(528))&&(e.preventDefault(),n._goToRow(n._getPrevRow())),(e.equals(9)||e.equals(2057)||e.equals(521)||e.equals(1033))&&(e.preventDefault(),n.hide()),(e.equals(10)||e.equals(3))&&(e.preventDefault(),n.accept())}))),n._diffs=[],n._currentDiff=null,n}return _D(t,e),t.prototype.prev=function(){var e=0;if(this._isVisible||(this._diffs=this._compute()),this._isVisible){for(var t=-1,n=0,i=this._diffs.length;n<i;n++)if(this._diffs[n]===this._currentDiff){t=n;break}e=this._diffs.length+t-1}else e=this._findDiffIndex(this._diffEditor.getPosition());0!==this._diffs.length&&(e%=this._diffs.length,this._diffEditor.setPosition(new bn(this._diffs[e].entries[0].modifiedLineStart,1)),this._isVisible=!0,this._diffEditor.doLayout(),this._render(),this._goToRow(this._getNextRow()))},t.prototype.next=function(){var e=0;if(this._isVisible||(this._diffs=this._compute()),this._isVisible){for(var t=-1,n=0,i=this._diffs.length;n<i;n++)if(this._diffs[n]===this._currentDiff){t=n;break}e=t+1}else e=this._findDiffIndex(this._diffEditor.getPosition());0!==this._diffs.length&&(e%=this._diffs.length,this._diffEditor.setPosition(new bn(this._diffs[e].entries[0].modifiedLineStart,1)),this._isVisible=!0,this._diffEditor.doLayout(),this._render(),this._goToRow(this._getNextRow()))},t.prototype.accept=function(){var e=-1,t=this._getCurrentFocusedRow();if(t){var n=parseInt(t.getAttribute("data-line"),10);isNaN(n)||(e=n)}this.hide(),-1!==e&&(this._diffEditor.setPosition(new bn(e,1)),this._diffEditor.revealPosition(new bn(e,1),1))},t.prototype.hide=function(){this._isVisible=!1,this._diffEditor.focus(),this._diffEditor.doLayout(),this._render()},t.prototype._getPrevRow=function(){var e=this._getCurrentFocusedRow();return e?e.previousElementSibling?e.previousElementSibling:e:this._getFirstRow()},t.prototype._getNextRow=function(){var e=this._getCurrentFocusedRow();return e?e.nextElementSibling?e.nextElementSibling:e:this._getFirstRow()},t.prototype._getFirstRow=function(){return this.domNode.domNode.querySelector(".diff-review-row")},t.prototype._getCurrentFocusedRow=function(){var e=document.activeElement;return e&&/diff-review-row/.test(e.className)?e:null},t.prototype._goToRow=function(e){var t=this._getCurrentFocusedRow();e.tabIndex=0,e.focus(),t&&t!==e&&(t.tabIndex=-1),this.scrollbar.scanDomNode()},t.prototype.isVisible=function(){return this._isVisible},t.prototype.layout=function(e,t,n){this._width=t,this.shadow.setTop(e-6),this.shadow.setWidth(t),this.shadow.setHeight(this._isVisible?6:0),this.domNode.setTop(e),this.domNode.setWidth(t),this.domNode.setHeight(n),this._content.setHeight(n),this._content.setWidth(t),this._isVisible?(this.actionBarContainer.setAttribute("aria-hidden","false"),this.actionBarContainer.setDisplay("block")):(this.actionBarContainer.setAttribute("aria-hidden","true"),this.actionBarContainer.setDisplay("none"))},t.prototype._compute=function(){var e=this._diffEditor.getLineChanges();if(!e||0===e.length)return[];var n=this._diffEditor.getOriginalEditor().getModel(),i=this._diffEditor.getModifiedEditor().getModel();return n&&i?t._mergeAdjacent(e,n.getLineCount(),i.getLineCount()):[]},t._mergeAdjacent=function(e,t,n){if(!e||0===e.length)return[];for(var i=[],o=0,r=0,s=e.length;r<s;r++){var a=e[r],u=a.originalStartLineNumber,l=a.originalEndLineNumber,c=a.modifiedStartLineNumber,d=a.modifiedEndLineNumber,h=[],p=0,f=0===l?u:u-1,g=0===d?c:c-1,m=1,v=1;if(r>0){var _=e[r-1];m=0===_.originalEndLineNumber?_.originalStartLineNumber+1:_.originalEndLineNumber+1,v=0===_.modifiedEndLineNumber?_.modifiedStartLineNumber+1:_.modifiedEndLineNumber+1}var y=f-3+1,b=g-3+1;if(y<m)y+=D=m-y,b+=D;if(b<v)y+=D=v-b,b+=D;h[p++]=new yD(y,f,b,g),0!==l&&(h[p++]=new yD(u,l,0,0)),0!==d&&(h[p++]=new yD(0,0,c,d));var w=0===l?u+1:l+1,C=0===d?c+1:d+1,S=t,L=n;if(r+1<s){var x=e[r+1];S=0===x.originalEndLineNumber?x.originalStartLineNumber:x.originalStartLineNumber-1,L=0===x.modifiedEndLineNumber?x.modifiedStartLineNumber:x.modifiedStartLineNumber-1}var D,N=w+3-1,k=C+3-1;if(N>S)N+=D=S-N,k+=D;if(k>L)N+=D=L-k,k+=D;h[p++]=new yD(w,N,C,k),i[o++]=new bD(h)}var E=i[0].entries,I=[],O=0;for(r=1,s=i.length;r<s;r++){var M=i[r].entries,T=E[E.length-1],P=M[0];0===T.getType()&&0===P.getType()&&P.originalLineStart<=T.originalLineEnd?(E[E.length-1]=new yD(T.originalLineStart,P.originalLineEnd,T.modifiedLineStart,P.modifiedLineEnd),E=E.concat(M.slice(1))):(I[O++]=new bD(E),E=M)}return I[O++]=new bD(E),I},t.prototype._findDiffIndex=function(e){for(var t=e.lineNumber,n=0,i=this._diffs.length;n<i;n++){var o=this._diffs[n].entries;if(t<=o[o.length-1].modifiedLineEnd)return n}return 0},t.prototype._render=function(){var e=this._diffEditor.getOriginalEditor().getOptions(),n=this._diffEditor.getModifiedEditor().getOptions(),i=this._diffEditor.getOriginalEditor().getModel(),o=this._diffEditor.getModifiedEditor().getModel(),s=i.getOptions(),a=o.getOptions();if(!this._isVisible||!i||!o)return Yi(this._content.domNode),this._currentDiff=null,void this.scrollbar.scanDomNode();var u=this._findDiffIndex(this._diffEditor.getPosition());if(this._diffs[u]!==this._currentDiff){this._currentDiff=this._diffs[u];var l=this._diffs[u].entries,c=document.createElement("div");c.className="diff-review-table",c.setAttribute("role","list"),af.applyFontInfoSlow(c,n.get(34));for(var d=0,h=0,p=0,f=0,g=0,m=l.length;g<m;g++){var v=(E=l[g]).originalLineStart,_=E.originalLineEnd,y=E.modifiedLineStart,b=E.modifiedLineEnd;0!==v&&(0===d||v<d)&&(d=v),0!==_&&(0===h||_>h)&&(h=_),0!==y&&(0===p||y<p)&&(p=y),0!==b&&(0===f||b>f)&&(f=b)}var w=document.createElement("div");w.className="diff-review-row";var C=document.createElement("div");C.className="diff-review-cell diff-review-summary";var S=h-d+1,L=f-p+1;C.appendChild(document.createTextNode(u+1+"/"+this._diffs.length+": @@ -"+d+","+S+" +"+p+","+L+" @@")),w.setAttribute("data-line",String(p));var x=function(e){return 0===e?r("no_lines","no lines"):1===e?r("one_line","1 line"):r("more_lines","{0} lines",e)},D=x(S),N=x(L);w.setAttribute("aria-label",r({key:"header",comment:["This is the ARIA label for a git diff header.","A git diff header looks like this: @@ -154,12 +159,39 @@.","That encodes that at original line 154 (which is now line 159), 12 lines were removed/changed with 39 lines.","Variables 0 and 1 refer to the diff index out of total number of diffs.","Variables 2 and 4 will be numbers (a line number).",'Variables 3 and 5 will be "no lines", "1 line" or "X lines", localized separately.']},"Difference {0} of {1}: original {2}, {3}, modified {4}, {5}",u+1,this._diffs.length,d,D,p,N)),w.appendChild(C),w.setAttribute("role","listitem"),c.appendChild(w);var k=p;for(g=0,m=l.length;g<m;g++){var E=l[g];t._renderSection(c,E,k,this._width,e,i,s,n,o,a),0!==E.modifiedLineStart&&(k=E.modifiedLineEnd)}Yi(this._content.domNode),this._content.domNode.appendChild(c),this.scrollbar.scanDomNode()}},t._renderSection=function(e,t,n,i,o,s,a,u,l,c){var d=t.getType(),h="diff-review-row",p="",f="diff-review-spacer";switch(d){case 1:h="diff-review-row line-insert",p=" char-insert",f="diff-review-spacer insert-sign";break;case 2:h="diff-review-row line-delete",p=" char-delete",f="diff-review-spacer delete-sign"}for(var g=t.originalLineStart,m=t.originalLineEnd,v=t.modifiedLineStart,_=t.modifiedLineEnd,y=Math.max(_-v,m-g),b=o.get(107),w=b.glyphMarginWidth+b.lineNumbersWidth,C=u.get(107),S=10+C.glyphMarginWidth+C.lineNumbersWidth,L=0;L<=y;L++){var x=0===g?0:g+L,D=0===v?0:v+L,N=document.createElement("div");N.style.minWidth=i+"px",N.className=h,N.setAttribute("role","listitem"),0!==D&&(n=D),N.setAttribute("data-line",String(n));var k=document.createElement("div");k.className="diff-review-cell",N.appendChild(k);var E=document.createElement("span");E.style.width=w+"px",E.style.minWidth=w+"px",E.className="diff-review-line-number"+p,0!==x?E.appendChild(document.createTextNode(String(x))):E.innerHTML=" ",k.appendChild(E);var I=document.createElement("span");I.style.width=S+"px",I.style.minWidth=S+"px",I.style.paddingRight="10px",I.className="diff-review-line-number"+p,0!==D?I.appendChild(document.createTextNode(String(D))):I.innerHTML=" ",k.appendChild(I);var O=document.createElement("span");O.className=f,O.innerHTML="  ",k.appendChild(O);var M=void 0;0!==D?(k.insertAdjacentHTML("beforeend",this._renderLine(l,u,c.tabSize,D)),M=l.getLineContent(D)):(k.insertAdjacentHTML("beforeend",this._renderLine(s,o,a.tabSize,x)),M=s.getLineContent(x)),0===M.length&&(M=r("blankLine","blank"));var T="";switch(d){case 0:T=r("equalLine","original {0}, modified {1}: {2}",x,D,M);break;case 1:T=r("insertLine","+ modified {0}: {1}",D,M);break;case 2:T=r("deleteLine","- original {0}: {1}",x,M)}N.setAttribute("aria-label",T),e.appendChild(N)}},t._renderLine=function(e,t,n,i){var o=e.getLineContent(i),r=t.get(34),s=new Uint32Array(2);s[0]=o.length,s[1]=16793600;var a=new Vc(s,o),u=rd.isBasicASCII(o,e.mightContainNonBasicASCII()),l=rd.containsRTL(o,u,e.mightContainRTL());return ed(new Yc(r.isMonospace&&!t.get(23),r.canUseHalfwidthRightwardsArrow,o,!1,u,l,0,a,[],n,0,r.spaceWidth,r.middotWidth,t.get(88),t.get(74),t.get(69),t.get(35)!==Y.OFF,null)).html},t}(He);yg((function(e,t){var n=e.getColor(Gb);n&&t.addRule(".monaco-diff-editor .diff-review-line-number { color: "+n+"; }");var i=e.getColor(iy);i&&t.addRule(".monaco-diff-editor .diff-review-shadow { box-shadow: "+i+" 0 -6px 6px -6px inset; }")}));var CD=function(e){function t(){return e.call(this,{id:"editor.action.diffReview.next",label:r("editor.action.diffReview.next","Go to Next Difference"),alias:"Go to Next Difference",precondition:Rh.has("isInDiffEditor"),kbOpts:{kbExpr:null,primary:65,weight:100}})||this}return _D(t,e),t.prototype.run=function(e,t){var n=LD(e);n&&n.diffReviewNext()},t}(kf),SD=function(e){function t(){return e.call(this,{id:"editor.action.diffReview.prev",label:r("editor.action.diffReview.prev","Go to Previous Difference"),alias:"Go to Previous Difference",precondition:Rh.has("isInDiffEditor"),kbOpts:{kbExpr:null,primary:1089,weight:100}})||this}return _D(t,e),t.prototype.run=function(e,t){var n=LD(e);n&&n.diffReviewPrev()},t}(kf);function LD(e){for(var t=e.get(Pn).listDiffEditors(),n=0,i=t.length;n<i;n++){var o=t[n];if(o.hasWidgetFocus())return o}return null}Tf(CD),Tf(SD);var xD=Mn("contextViewService"),DD=Mn("contextMenuService"),ND=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),kD=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},ED=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},ID=function(e){function t(t,n,i,o,s,a){var u=e.call(this)||this;u._viewZoneId=t,u._marginDomNode=n,u.editor=i,u.diff=o,u._contextMenuService=s,u._clipboardService=a,u._visibility=!1,u._marginDomNode.style.zIndex="10",u._diffActions=document.createElement("div"),u._diffActions.className="codicon codicon-lightbulb lightbulb-glyph",u._diffActions.style.position="absolute";var l=i.getOption(49),c=i.getModel().getEOL();u._diffActions.style.right="0px",u._diffActions.style.visibility="hidden",u._diffActions.style.height=l+"px",u._diffActions.style.lineHeight=l+"px",u._marginDomNode.appendChild(u._diffActions);var d=[];d.push(new df("diff.clipboard.copyDeletedContent",o.originalEndLineNumber>o.modifiedStartLineNumber?r("diff.clipboard.copyDeletedLinesContent.label","Copy deleted lines"):r("diff.clipboard.copyDeletedLinesContent.single.label","Copy deleted line"),void 0,!0,(function(){return kD(u,void 0,void 0,(function(){return ED(this,(function(e){switch(e.label){case 0:return[4,this._clipboardService.writeText(o.originalContent.join(c)+c)];case 1:return e.sent(),[2]}}))}))})));var h=0,p=void 0;o.originalEndLineNumber>o.modifiedStartLineNumber&&(p=new df("diff.clipboard.copyDeletedLineContent",r("diff.clipboard.copyDeletedLineContent.label","Copy deleted line ({0})",o.originalStartLineNumber),void 0,!0,(function(){return kD(u,void 0,void 0,(function(){return ED(this,(function(e){switch(e.label){case 0:return[4,this._clipboardService.writeText(o.originalContent[h])];case 1:return e.sent(),[2]}}))}))})),d.push(p)),i.getOption(68)||d.push(new df("diff.inline.revertChange",r("diff.inline.revertChange.label","Revert this change"),void 0,!0,(function(){return kD(u,void 0,void 0,(function(){var e;return ED(this,(function(t){return 0===o.modifiedEndLineNumber?(e=i.getModel().getLineMaxColumn(o.modifiedStartLineNumber),i.executeEdits("diffEditor",[{range:new wn(o.modifiedStartLineNumber,e,o.modifiedStartLineNumber,e),text:c+o.originalContent.join(c)}])):(e=i.getModel().getLineMaxColumn(o.modifiedEndLineNumber),i.executeEdits("diffEditor",[{range:new wn(o.modifiedStartLineNumber,1,o.modifiedEndLineNumber,e),text:o.originalContent.join(c)}])),[2]}))}))})));var f=function(e,t){u._contextMenuService.showContextMenu({getAnchor:function(){return{x:e,y:t}},getActions:function(){return p&&(p.label=r("diff.clipboard.copyDeletedLineContent.label","Copy deleted line ({0})",o.originalStartLineNumber+h)),d},autoSelectFirstItem:!0})};return u._register(co(u._diffActions,"mousedown",(function(e){var t=Oo(u._diffActions),n=t.top,i=t.height,o=Math.floor(l/3);e.preventDefault(),f(e.posx,n+i+o)}))),u._register(i.onMouseMove((function(e){8===e.target.type||5===e.target.type?e.target.detail.viewZoneId===u._viewZoneId?(u.visibility=!0,h=u._updateLightBulbPosition(u._marginDomNode,e.event.browserEvent.y,l)):u.visibility=!1:u.visibility=!1}))),u._register(i.onMouseDown((function(e){e.event.rightButton&&(8!==e.target.type&&5!==e.target.type||e.target.detail.viewZoneId===u._viewZoneId&&(e.event.preventDefault(),h=u._updateLightBulbPosition(u._marginDomNode,e.event.browserEvent.y,l),f(e.event.posx,e.event.posy+l)))}))),u}return ND(t,e),Object.defineProperty(t.prototype,"visibility",{get:function(){return this._visibility},set:function(e){this._visibility!==e&&(this._visibility=e,this._diffActions.style.visibility=e?"visible":"hidden")},enumerable:!0,configurable:!0}),t.prototype._updateLightBulbPosition=function(e,t,n){var i=t-Oo(e).top,o=Math.floor(i/n),r=o*n;return this._diffActions.style.top=r+"px",o},t}(He),OD=Mn("editorProgressService"),MD=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),TD=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},PD=function(e,t){return function(n,i){t(n,i,e)}},RD=function(){function e(e,t){this._contextMenuService=e,this._clipboardService=t,this._zones=[],this.inlineDiffMargins=[],this._zonesMap={},this._decorations=[]}return e.prototype.getForeignViewZones=function(e){var t=this;return e.filter((function(e){return!t._zonesMap[String(e.id)]}))},e.prototype.clean=function(e){var t=this;this._zones.length>0&&e.changeViewZones((function(e){for(var n=0,i=t._zones.length;n<i;n++)e.removeZone(t._zones[n])})),this._zones=[],this._zonesMap={},this._decorations=e.deltaDecorations(this._decorations,[])},e.prototype.apply=function(e,t,n,i){var o=this,r=i?aD.capture(e):null;e.changeViewZones((function(t){for(var i=0,r=o._zones.length;i<r;i++)t.removeZone(o._zones[i]);i=0;for(var s=o.inlineDiffMargins.length;i<s;i++)o.inlineDiffMargins[i].dispose();o._zones=[],o._zonesMap={},o.inlineDiffMargins=[];i=0;for(var a=n.zones.length;i<a;i++){var u=n.zones[i];u.suppressMouseDown=!0;var l=t.addZone(u);o._zones.push(l),o._zonesMap[String(l)]=!0,n.zones[i].diff&&u.marginDomNode&&o._clipboardService&&(u.suppressMouseDown=!1,o.inlineDiffMargins.push(new ID(l,u.marginDomNode,e,n.zones[i].diff,o._contextMenuService,o._clipboardService)))}})),r&&r.restore(e),this._decorations=e.deltaDecorations(this._decorations,n.decorations),t&&t.setZones(n.overviewZones)},e}(),AD=0,FD=function(e){function t(n,i,o,r,s,a,u,l,c,d,h){var p=e.call(this)||this;p._editorProgressService=h,p._onDidDispose=p._register(new nt),p.onDidDispose=p._onDidDispose.event,p._onDidUpdateDiff=p._register(new nt),p.onDidUpdateDiff=p._onDidUpdateDiff.event,p._lastOriginalWarning=null,p._lastModifiedWarning=null,p._editorWorkerService=r,p._codeEditorService=u,p._contextKeyService=p._register(s.createScoped(n)),p._contextKeyService.createKey("isInDiffEditor",!0),p._themeService=l,p._notificationService=c,p.id=++AD,p._state=0,p._updatingDiffProgress=null,p._domElement=n,i=i||{},p._renderSideBySide=!0,void 0!==i.renderSideBySide&&(p._renderSideBySide=i.renderSideBySide),p._maxComputationTime=5e3,void 0!==i.maxComputationTime&&(p._maxComputationTime=i.maxComputationTime),p._ignoreTrimWhitespace=!0,void 0!==i.ignoreTrimWhitespace&&(p._ignoreTrimWhitespace=i.ignoreTrimWhitespace),p._renderIndicators=!0,void 0!==i.renderIndicators&&(p._renderIndicators=i.renderIndicators),p._originalIsEditable=!1,void 0!==i.originalEditable&&(p._originalIsEditable=Boolean(i.originalEditable)),p._updateDecorationsRunner=p._register(new wi((function(){return p._updateDecorations()}),0)),p._containerDomElement=document.createElement("div"),p._containerDomElement.className=t._getClassName(p._themeService.getTheme(),p._renderSideBySide),p._containerDomElement.style.position="relative",p._containerDomElement.style.height="100%",p._domElement.appendChild(p._containerDomElement),p._overviewViewportDomElement=Ff(document.createElement("div")),p._overviewViewportDomElement.setClassName("diffViewport"),p._overviewViewportDomElement.setPosition("absolute"),p._overviewDomElement=document.createElement("div"),p._overviewDomElement.className="diffOverview",p._overviewDomElement.style.position="absolute",p._overviewDomElement.appendChild(p._overviewViewportDomElement.domNode),p._register(co(p._overviewDomElement,"mousedown",(function(e){p.modifiedEditor.delegateVerticalScrollbarMouseDown(e)}))),p._containerDomElement.appendChild(p._overviewDomElement),p._originalDomNode=document.createElement("div"),p._originalDomNode.className="editor original",p._originalDomNode.style.position="absolute",p._originalDomNode.style.height="100%",p._containerDomElement.appendChild(p._originalDomNode),p._modifiedDomNode=document.createElement("div"),p._modifiedDomNode.className="editor modified",p._modifiedDomNode.style.position="absolute",p._modifiedDomNode.style.height="100%",p._containerDomElement.appendChild(p._modifiedDomNode),p._beginUpdateDecorationsTimeout=-1,p._currentlyChangingViewZones=!1,p._diffComputationToken=0,p._originalEditorState=new RD(d,o),p._modifiedEditorState=new RD(d,o),p._isVisible=!0,p._isHandlingScrollEvent=!1,p._elementSizeObserver=p._register(new nf(p._containerDomElement,void 0,(function(){return p._onDidContainerSizeChanged()}))),i.automaticLayout&&p._elementSizeObserver.startObserving(),p._diffComputationResult=null;var f=p._contextKeyService.createScoped();f.createKey("isInDiffLeftEditor",!0);var g=new fx;g.set(qh,f);var m=a.createChild(g),v=p._contextKeyService.createScoped();v.createKey("isInDiffRightEditor",!0);var _=new fx;_.set(qh,v);var y=a.createChild(_);p.originalEditor=p._createLeftHandSideEditor(i,m),p.modifiedEditor=p._createRightHandSideEditor(i,y),p._originalOverviewRuler=null,p._modifiedOverviewRuler=null,p._reviewPane=new wD(p),p._containerDomElement.appendChild(p._reviewPane.domNode.domNode),p._containerDomElement.appendChild(p._reviewPane.shadow.domNode),p._containerDomElement.appendChild(p._reviewPane.actionBarContainer.domNode),p._enableSplitViewResizing=!0,void 0!==i.enableSplitViewResizing&&(p._enableSplitViewResizing=i.enableSplitViewResizing),p._renderSideBySide?p._setStrategy(new jD(p._createDataSource(),p._enableSplitViewResizing)):p._setStrategy(new KD(p._createDataSource(),p._enableSplitViewResizing)),p._register(l.onThemeChange((function(e){p._strategy&&p._strategy.applyColors(e)&&p._updateDecorationsRunner.schedule(),p._containerDomElement.className=t._getClassName(p._themeService.getTheme(),p._renderSideBySide)})));for(var b=0,w=_f.getDiffEditorContributions();b<w.length;b++){var C=w[b];try{p._register(a.createInstance(C.ctor,p))}catch(e){De(e)}}return p._codeEditorService.addDiffEditor(p),p}return MD(t,e),t.prototype._setState=function(e){this._state!==e&&(this._state=e,this._updatingDiffProgress&&(this._updatingDiffProgress.done(),this._updatingDiffProgress=null),1===this._state&&(this._updatingDiffProgress=this._editorProgressService.show(!0,1e3)))},t.prototype.hasWidgetFocus=function(){return Fo(document.activeElement,this._domElement)},t.prototype.diffReviewNext=function(){this._reviewPane.next()},t.prototype.diffReviewPrev=function(){this._reviewPane.prev()},t._getClassName=function(e,t){var n="monaco-diff-editor monaco-editor-background ";return t&&(n+="side-by-side "),n+=mg(e.type)},t.prototype._recreateOverviewRulers=function(){this._originalOverviewRuler&&(this._overviewDomElement.removeChild(this._originalOverviewRuler.getDomNode()),this._originalOverviewRuler.dispose()),this.originalEditor.hasModel()&&(this._originalOverviewRuler=this.originalEditor.createOverviewRuler("original diffOverviewRuler"),this._overviewDomElement.appendChild(this._originalOverviewRuler.getDomNode())),this._modifiedOverviewRuler&&(this._overviewDomElement.removeChild(this._modifiedOverviewRuler.getDomNode()),this._modifiedOverviewRuler.dispose()),this.modifiedEditor.hasModel()&&(this._modifiedOverviewRuler=this.modifiedEditor.createOverviewRuler("modified diffOverviewRuler"),this._overviewDomElement.appendChild(this._modifiedOverviewRuler.getDomNode())),this._layoutOverviewRulers()},t.prototype._createLeftHandSideEditor=function(e,t){var n=this,i=this._createInnerEditor(t,this._originalDomNode,this._adjustOptionsForLeftHandSide(e,this._originalIsEditable));return this._register(i.onDidScrollChange((function(e){n._isHandlingScrollEvent||(e.scrollTopChanged||e.scrollLeftChanged||e.scrollHeightChanged)&&(n._isHandlingScrollEvent=!0,n.modifiedEditor.setScrollPosition({scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}),n._isHandlingScrollEvent=!1,n._layoutOverviewViewport())}))),this._register(i.onDidChangeViewZones((function(){n._onViewZonesChanged()}))),this._register(i.onDidChangeModelContent((function(){n._isVisible&&n._beginUpdateDecorationsSoon()}))),i},t.prototype._createRightHandSideEditor=function(e,t){var n=this,i=this._createInnerEditor(t,this._modifiedDomNode,this._adjustOptionsForRightHandSide(e));return this._register(i.onDidScrollChange((function(e){n._isHandlingScrollEvent||(e.scrollTopChanged||e.scrollLeftChanged||e.scrollHeightChanged)&&(n._isHandlingScrollEvent=!0,n.originalEditor.setScrollPosition({scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}),n._isHandlingScrollEvent=!1,n._layoutOverviewViewport())}))),this._register(i.onDidChangeViewZones((function(){n._onViewZonesChanged()}))),this._register(i.onDidChangeConfiguration((function(e){e.hasChanged(34)&&i.getModel()&&n._onViewZonesChanged()}))),this._register(i.onDidChangeModelContent((function(){n._isVisible&&n._beginUpdateDecorationsSoon()}))),this._register(i.onDidChangeModelOptions((function(e){e.tabSize&&n._updateDecorationsRunner.schedule()}))),i},t.prototype._createInnerEditor=function(e,t,n){return e.createInstance(Fx,t,n,{})},t.prototype.dispose=function(){this._codeEditorService.removeDiffEditor(this),-1!==this._beginUpdateDecorationsTimeout&&(window.clearTimeout(this._beginUpdateDecorationsTimeout),this._beginUpdateDecorationsTimeout=-1),this._cleanViewZonesAndDecorations(),this._originalOverviewRuler&&(this._overviewDomElement.removeChild(this._originalOverviewRuler.getDomNode()),this._originalOverviewRuler.dispose()),this._modifiedOverviewRuler&&(this._overviewDomElement.removeChild(this._modifiedOverviewRuler.getDomNode()),this._modifiedOverviewRuler.dispose()),this._overviewDomElement.removeChild(this._overviewViewportDomElement.domNode),this._containerDomElement.removeChild(this._overviewDomElement),this._containerDomElement.removeChild(this._originalDomNode),this.originalEditor.dispose(),this._containerDomElement.removeChild(this._modifiedDomNode),this.modifiedEditor.dispose(),this._strategy.dispose(),this._containerDomElement.removeChild(this._reviewPane.domNode.domNode),this._containerDomElement.removeChild(this._reviewPane.shadow.domNode),this._containerDomElement.removeChild(this._reviewPane.actionBarContainer.domNode),this._reviewPane.dispose(),this._domElement.removeChild(this._containerDomElement),this._onDidDispose.fire(),e.prototype.dispose.call(this)},t.prototype.getId=function(){return this.getEditorType()+":"+this.id},t.prototype.getEditorType=function(){return Ha.IDiffEditor},t.prototype.getLineChanges=function(){return this._diffComputationResult?this._diffComputationResult.changes:null},t.prototype.getOriginalEditor=function(){return this.originalEditor},t.prototype.getModifiedEditor=function(){return this.modifiedEditor},t.prototype.updateOptions=function(e){var n=!1;void 0!==e.renderSideBySide&&this._renderSideBySide!==e.renderSideBySide&&(this._renderSideBySide=e.renderSideBySide,n=!0),void 0!==e.maxComputationTime&&(this._maxComputationTime=e.maxComputationTime,this._isVisible&&this._beginUpdateDecorationsSoon());var i=!1;void 0!==e.ignoreTrimWhitespace&&this._ignoreTrimWhitespace!==e.ignoreTrimWhitespace&&(this._ignoreTrimWhitespace=e.ignoreTrimWhitespace,i=!0),void 0!==e.renderIndicators&&this._renderIndicators!==e.renderIndicators&&(this._renderIndicators=e.renderIndicators,i=!0),i&&this._beginUpdateDecorations(),void 0!==e.originalEditable&&(this._originalIsEditable=Boolean(e.originalEditable)),this.modifiedEditor.updateOptions(this._adjustOptionsForRightHandSide(e)),this.originalEditor.updateOptions(this._adjustOptionsForLeftHandSide(e,this._originalIsEditable)),void 0!==e.enableSplitViewResizing&&(this._enableSplitViewResizing=e.enableSplitViewResizing),this._strategy.setEnableSplitViewResizing(this._enableSplitViewResizing),n&&(this._renderSideBySide?this._setStrategy(new jD(this._createDataSource(),this._enableSplitViewResizing)):this._setStrategy(new KD(this._createDataSource(),this._enableSplitViewResizing)),this._containerDomElement.className=t._getClassName(this._themeService.getTheme(),this._renderSideBySide))},t.prototype.getModel=function(){return{original:this.originalEditor.getModel(),modified:this.modifiedEditor.getModel()}},t.prototype.setModel=function(e){if(e&&(!e.original||!e.modified))throw new Error(e.original?"DiffEditorWidget.setModel: Modified model is null":"DiffEditorWidget.setModel: Original model is null");this._cleanViewZonesAndDecorations(),this.originalEditor.setModel(e?e.original:null),this.modifiedEditor.setModel(e?e.modified:null),this._updateDecorationsRunner.cancel(),e&&(this.originalEditor.setScrollTop(0),this.modifiedEditor.setScrollTop(0)),this._diffComputationResult=null,this._diffComputationToken++,this._setState(0),e&&(this._recreateOverviewRulers(),this._beginUpdateDecorations()),this._layoutOverviewViewport()},t.prototype.getDomNode=function(){return this._domElement},t.prototype.getVisibleColumnFromPosition=function(e){return this.modifiedEditor.getVisibleColumnFromPosition(e)},t.prototype.getPosition=function(){return this.modifiedEditor.getPosition()},t.prototype.setPosition=function(e){this.modifiedEditor.setPosition(e)},t.prototype.revealLine=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealLine(e,t)},t.prototype.revealLineInCenter=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealLineInCenter(e,t)},t.prototype.revealLineInCenterIfOutsideViewport=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealLineInCenterIfOutsideViewport(e,t)},t.prototype.revealPosition=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealPosition(e,t)},t.prototype.revealPositionInCenter=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealPositionInCenter(e,t)},t.prototype.revealPositionInCenterIfOutsideViewport=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealPositionInCenterIfOutsideViewport(e,t)},t.prototype.getSelection=function(){return this.modifiedEditor.getSelection()},t.prototype.getSelections=function(){return this.modifiedEditor.getSelections()},t.prototype.setSelection=function(e){this.modifiedEditor.setSelection(e)},t.prototype.setSelections=function(e){this.modifiedEditor.setSelections(e)},t.prototype.revealLines=function(e,t,n){void 0===n&&(n=0),this.modifiedEditor.revealLines(e,t,n)},t.prototype.revealLinesInCenter=function(e,t,n){void 0===n&&(n=0),this.modifiedEditor.revealLinesInCenter(e,t,n)},t.prototype.revealLinesInCenterIfOutsideViewport=function(e,t,n){void 0===n&&(n=0),this.modifiedEditor.revealLinesInCenterIfOutsideViewport(e,t,n)},t.prototype.revealRange=function(e,t,n,i){void 0===t&&(t=0),void 0===n&&(n=!1),void 0===i&&(i=!0),this.modifiedEditor.revealRange(e,t,n,i)},t.prototype.revealRangeInCenter=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealRangeInCenter(e,t)},t.prototype.revealRangeInCenterIfOutsideViewport=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealRangeInCenterIfOutsideViewport(e,t)},t.prototype.revealRangeAtTop=function(e,t){void 0===t&&(t=0),this.modifiedEditor.revealRangeAtTop(e,t)},t.prototype.getSupportedActions=function(){return this.modifiedEditor.getSupportedActions()},t.prototype.saveViewState=function(){return{original:this.originalEditor.saveViewState(),modified:this.modifiedEditor.saveViewState()}},t.prototype.restoreViewState=function(e){if(e.original&&e.modified){var t=e;this.originalEditor.restoreViewState(t.original),this.modifiedEditor.restoreViewState(t.modified)}},t.prototype.layout=function(e){this._elementSizeObserver.observe(e)},t.prototype.focus=function(){this.modifiedEditor.focus()},t.prototype.hasTextFocus=function(){return this.originalEditor.hasTextFocus()||this.modifiedEditor.hasTextFocus()},t.prototype.trigger=function(e,t,n){this.modifiedEditor.trigger(e,t,n)},t.prototype.changeDecorations=function(e){return this.modifiedEditor.changeDecorations(e)},t.prototype._onDidContainerSizeChanged=function(){this._doLayout()},t.prototype._getReviewHeight=function(){return this._reviewPane.isVisible()?this._elementSizeObserver.getHeight():0},t.prototype._layoutOverviewRulers=function(){if(this._originalOverviewRuler&&this._modifiedOverviewRuler){var e=this._elementSizeObserver.getHeight(),n=this._getReviewHeight(),i=t.ENTIRE_DIFF_OVERVIEW_WIDTH-2*t.ONE_OVERVIEW_WIDTH;this.modifiedEditor.getLayoutInfo()&&(this._originalOverviewRuler.setLayout({top:0,width:t.ONE_OVERVIEW_WIDTH,right:i+t.ONE_OVERVIEW_WIDTH,height:e-n}),this._modifiedOverviewRuler.setLayout({top:0,right:0,width:t.ONE_OVERVIEW_WIDTH,height:e-n}))}},t.prototype._onViewZonesChanged=function(){this._currentlyChangingViewZones||this._updateDecorationsRunner.schedule()},t.prototype._beginUpdateDecorationsSoon=function(){var e=this;-1!==this._beginUpdateDecorationsTimeout&&(window.clearTimeout(this._beginUpdateDecorationsTimeout),this._beginUpdateDecorationsTimeout=-1),this._beginUpdateDecorationsTimeout=window.setTimeout((function(){return e._beginUpdateDecorations()}),t.UPDATE_DIFF_DECORATIONS_DELAY)},t._equals=function(e,t){return!e&&!t||!(!e||!t)&&e.toString()===t.toString()},t.prototype._beginUpdateDecorations=function(){var e=this;this._beginUpdateDecorationsTimeout=-1;var n=this.originalEditor.getModel(),i=this.modifiedEditor.getModel();if(n&&i){this._diffComputationToken++;var o=this._diffComputationToken;this._setState(1),this._editorWorkerService.canComputeDiff(n.uri,i.uri)?this._editorWorkerService.computeDiff(n.uri,i.uri,this._ignoreTrimWhitespace,this._maxComputationTime).then((function(t){o===e._diffComputationToken&&n===e.originalEditor.getModel()&&i===e.modifiedEditor.getModel()&&(e._setState(2),e._diffComputationResult=t,e._updateDecorationsRunner.schedule(),e._onDidUpdateDiff.fire())}),(function(t){o===e._diffComputationToken&&n===e.originalEditor.getModel()&&i===e.modifiedEditor.getModel()&&(e._setState(2),e._diffComputationResult=null,e._updateDecorationsRunner.schedule())})):t._equals(n.uri,this._lastOriginalWarning)&&t._equals(i.uri,this._lastModifiedWarning)||(this._lastOriginalWarning=n.uri,this._lastModifiedWarning=i.uri,this._notificationService.warn(r("diff.tooLarge","Cannot compare files because one file is too large.")))}},t.prototype._cleanViewZonesAndDecorations=function(){this._originalEditorState.clean(this.originalEditor),this._modifiedEditorState.clean(this.modifiedEditor)},t.prototype._updateDecorations=function(){if(this.originalEditor.getModel()&&this.modifiedEditor.getModel()&&this._originalOverviewRuler&&this._modifiedOverviewRuler){var e=this._diffComputationResult?this._diffComputationResult.changes:[],t=this._originalEditorState.getForeignViewZones(this.originalEditor.getWhitespaces()),n=this._modifiedEditorState.getForeignViewZones(this.modifiedEditor.getWhitespaces()),i=this._strategy.getEditorsDiffDecorations(e,this._ignoreTrimWhitespace,this._renderIndicators,t,n,this.originalEditor,this.modifiedEditor);try{this._currentlyChangingViewZones=!0,this._originalEditorState.apply(this.originalEditor,this._originalOverviewRuler,i.original,!1),this._modifiedEditorState.apply(this.modifiedEditor,this._modifiedOverviewRuler,i.modified,!0)}finally{this._currentlyChangingViewZones=!1}}},t.prototype._adjustOptionsForSubEditor=function(e){var t=xa(e||{});return t.inDiffEditor=!0,t.wordWrap="off",t.wordWrapMinified=!1,t.automaticLayout=!1,t.scrollbar=t.scrollbar||{},t.scrollbar.vertical="visible",t.folding=!1,t.codeLens=!1,t.fixedOverflowWidgets=!0,t.minimap||(t.minimap={}),t.minimap.enabled=!1,t},t.prototype._adjustOptionsForLeftHandSide=function(e,t){var n=this._adjustOptionsForSubEditor(e);return n.readOnly=!t,n.extraEditorClassName="original-in-monaco-diff-editor",n},t.prototype._adjustOptionsForRightHandSide=function(e){var n=this._adjustOptionsForSubEditor(e);return n.revealHorizontalRightPadding=Le.revealHorizontalRightPadding.defaultValue+t.ENTIRE_DIFF_OVERVIEW_WIDTH,n.scrollbar.verticalHasArrows=!1,n.extraEditorClassName="modified-in-monaco-diff-editor",n},t.prototype.doLayout=function(){this._elementSizeObserver.observe(),this._doLayout()},t.prototype._doLayout=function(){var e=this._elementSizeObserver.getWidth(),n=this._elementSizeObserver.getHeight(),i=this._getReviewHeight(),o=this._strategy.layout();this._originalDomNode.style.width=o+"px",this._originalDomNode.style.left="0px",this._modifiedDomNode.style.width=e-o+"px",this._modifiedDomNode.style.left=o+"px",this._overviewDomElement.style.top="0px",this._overviewDomElement.style.height=n-i+"px",this._overviewDomElement.style.width=t.ENTIRE_DIFF_OVERVIEW_WIDTH+"px",this._overviewDomElement.style.left=e-t.ENTIRE_DIFF_OVERVIEW_WIDTH+"px",this._overviewViewportDomElement.setWidth(t.ENTIRE_DIFF_OVERVIEW_WIDTH),this._overviewViewportDomElement.setHeight(30),this.originalEditor.layout({width:o,height:n-i}),this.modifiedEditor.layout({width:e-o-t.ENTIRE_DIFF_OVERVIEW_WIDTH,height:n-i}),(this._originalOverviewRuler||this._modifiedOverviewRuler)&&this._layoutOverviewRulers(),this._reviewPane.layout(n-i,e,i),this._layoutOverviewViewport()},t.prototype._layoutOverviewViewport=function(){var e=this._computeOverviewViewport();e?(this._overviewViewportDomElement.setTop(e.top),this._overviewViewportDomElement.setHeight(e.height)):(this._overviewViewportDomElement.setTop(0),this._overviewViewportDomElement.setHeight(0))},t.prototype._computeOverviewViewport=function(){var e=this.modifiedEditor.getLayoutInfo();if(!e)return null;var t=this.modifiedEditor.getScrollTop(),n=this.modifiedEditor.getScrollHeight(),i=Math.max(0,e.height),o=Math.max(0,i-0),r=n>0?o/n:0;return{height:Math.max(0,Math.floor(e.height*r)),top:Math.floor(t*r)}},t.prototype._createDataSource=function(){var e=this;return{getWidth:function(){return e._elementSizeObserver.getWidth()},getHeight:function(){return e._elementSizeObserver.getHeight()-e._getReviewHeight()},getContainerDomNode:function(){return e._containerDomElement},relayoutEditors:function(){e._doLayout()},getOriginalEditor:function(){return e.originalEditor},getModifiedEditor:function(){return e.modifiedEditor}}},t.prototype._setStrategy=function(e){this._strategy&&this._strategy.dispose(),this._strategy=e,e.applyColors(this._themeService.getTheme()),this._diffComputationResult&&this._updateDecorations(),this._doLayout()},t.prototype._getLineChangeAtOrBeforeLineNumber=function(e,t){var n=this._diffComputationResult?this._diffComputationResult.changes:[];if(0===n.length||e<t(n[0]))return null;for(var i=0,o=n.length-1;i<o;){var r=Math.floor((i+o)/2),s=t(n[r]),a=r+1<=o?t(n[r+1]):1073741824;e<s?o=r-1:e>=a?i=r+1:(i=r,o=r)}return n[i]},t.prototype._getEquivalentLineForOriginalLineNumber=function(e){var t=this._getLineChangeAtOrBeforeLineNumber(e,(function(e){return e.originalStartLineNumber}));if(!t)return e;var n=t.originalStartLineNumber+(t.originalEndLineNumber>0?-1:0),i=t.modifiedStartLineNumber+(t.modifiedEndLineNumber>0?-1:0),o=t.originalEndLineNumber>0?t.originalEndLineNumber-t.originalStartLineNumber+1:0,r=t.modifiedEndLineNumber>0?t.modifiedEndLineNumber-t.modifiedStartLineNumber+1:0,s=e-n;return s<=o?i+Math.min(s,r):i+r-o+s},t.prototype._getEquivalentLineForModifiedLineNumber=function(e){var t=this._getLineChangeAtOrBeforeLineNumber(e,(function(e){return e.modifiedStartLineNumber}));if(!t)return e;var n=t.originalStartLineNumber+(t.originalEndLineNumber>0?-1:0),i=t.modifiedStartLineNumber+(t.modifiedEndLineNumber>0?-1:0),o=t.originalEndLineNumber>0?t.originalEndLineNumber-t.originalStartLineNumber+1:0,r=t.modifiedEndLineNumber>0?t.modifiedEndLineNumber-t.modifiedStartLineNumber+1:0,s=e-i;return s<=r?n+Math.min(s,o):n+o-r+s},t.prototype.getDiffLineInformationForOriginal=function(e){return this._diffComputationResult?{equivalentLineNumber:this._getEquivalentLineForOriginalLineNumber(e)}:null},t.prototype.getDiffLineInformationForModified=function(e){return this._diffComputationResult?{equivalentLineNumber:this._getEquivalentLineForModifiedLineNumber(e)}:null},t.ONE_OVERVIEW_WIDTH=15,t.ENTIRE_DIFF_OVERVIEW_WIDTH=30,t.UPDATE_DIFF_DECORATIONS_DELAY=200,t=TD([PD(3,el),PD(4,qh),PD(5,In),PD(6,Pn),PD(7,fg),PD(8,ap),PD(9,DD),PD(10,OD)],t)}(He),WD=function(e){function t(t){var n=e.call(this)||this;return n._dataSource=t,n._insertColor=null,n._removeColor=null,n}return MD(t,e),t.prototype.applyColors=function(e){var t=(e.getColor(jy)||Hy).transparent(2),n=(e.getColor(Uy)||zy).transparent(2),i=!t.equals(this._insertColor)||!n.equals(this._removeColor);return this._insertColor=t,this._removeColor=n,i},t.prototype.getEditorsDiffDecorations=function(e,t,n,i,o,r,s){o=o.sort((function(e,t){return e.afterLineNumber-t.afterLineNumber})),i=i.sort((function(e,t){return e.afterLineNumber-t.afterLineNumber}));var a=this._getViewZones(e,i,o,r,s,n),u=this._getOriginalEditorDecorations(e,t,n,r,s),l=this._getModifiedEditorDecorations(e,t,n,r,s);return{original:{decorations:u.decorations,overviewZones:u.overviewZones,zones:a.original},modified:{decorations:l.decorations,overviewZones:l.overviewZones,zones:a.modified}}},t}(He),VD=function(){function e(e){this._source=e,this._index=-1,this.current=null,this.advance()}return e.prototype.advance=function(){this._index++,this._index<this._source.length?this.current=this._source[this._index]:this.current=null},e}(),BD=function(){function e(e,t,n,i,o){this.lineChanges=e,this.originalForeignVZ=t,this.originalLineHeight=n,this.modifiedForeignVZ=i,this.modifiedLineHeight=o}return e.prototype.getViewZones=function(){for(var t=[],n=[],i=0,o=0,r=0,s=0,a=0,u=0,l=function(e,t){return e.afterLineNumber-t.afterLineNumber},c=function(e,t){if(null===t.domNode&&e.length>0){var n=e[e.length-1];if(n.afterLineNumber===t.afterLineNumber&&null===n.domNode)return void(n.heightInLines+=t.heightInLines)}e.push(t)},d=new VD(this.modifiedForeignVZ),h=new VD(this.originalForeignVZ),p=0,f=this.lineChanges.length;p<=f;p++){var g=p<f?this.lineChanges[p]:null;null!==g?(r=g.originalStartLineNumber+(g.originalEndLineNumber>0?-1:0),s=g.modifiedStartLineNumber+(g.modifiedEndLineNumber>0?-1:0),o=g.originalEndLineNumber>0?g.originalEndLineNumber-g.originalStartLineNumber+1:0,i=g.modifiedEndLineNumber>0?g.modifiedEndLineNumber-g.modifiedStartLineNumber+1:0,a=Math.max(g.originalStartLineNumber,g.originalEndLineNumber),u=Math.max(g.modifiedStartLineNumber,g.modifiedEndLineNumber)):(a=r+=1e7+o,u=s+=1e7+i);for(var m,v=[],_=[];d.current&&d.current.afterLineNumber<=u;){var y=void 0;y=d.current.afterLineNumber<=s?r-s+d.current.afterLineNumber:a;var b=null;g&&g.modifiedStartLineNumber<=d.current.afterLineNumber&&d.current.afterLineNumber<=g.modifiedEndLineNumber&&(b=this._createOriginalMarginDomNodeForModifiedForeignViewZoneInAddedRegion()),v.push({afterLineNumber:y,heightInLines:d.current.height/this.modifiedLineHeight,domNode:null,marginDomNode:b}),d.advance()}for(;h.current&&h.current.afterLineNumber<=a;){y=void 0;y=h.current.afterLineNumber<=r?s-r+h.current.afterLineNumber:u,_.push({afterLineNumber:y,heightInLines:h.current.height/this.originalLineHeight,domNode:null}),h.advance()}if(null!==g&&GD(g))(m=this._produceOriginalFromDiff(g,o,i))&&v.push(m);if(null!==g&&ZD(g))(m=this._produceModifiedFromDiff(g,o,i))&&_.push(m);var w=0,C=0;for(v=v.sort(l),_=_.sort(l);w<v.length&&C<_.length;){var S=v[w],L=_[C],x=S.afterLineNumber-r,D=L.afterLineNumber-s;x<D?(c(t,S),w++):D<x?(c(n,L),C++):S.shouldNotShrink?(c(t,S),w++):L.shouldNotShrink?(c(n,L),C++):S.heightInLines>=L.heightInLines?(S.heightInLines-=L.heightInLines,C++):(L.heightInLines-=S.heightInLines,w++)}for(;w<v.length;)c(t,v[w]),w++;for(;C<_.length;)c(n,_[C]),C++}return{original:e._ensureDomNodes(t),modified:e._ensureDomNodes(n)}},e._ensureDomNodes=function(e){return e.map((function(e){var t;return e.domNode||(e.domNode=((t=document.createElement("div")).className="diagonal-fill",t)),e}))},e}();function HD(e,t,n,i,o){return{range:new wn(e,t,n,i),options:o}}var zD={charDelete:kv.register({className:"char-delete"}),charDeleteWholeLine:kv.register({className:"char-delete",isWholeLine:!0}),charInsert:kv.register({className:"char-insert"}),charInsertWholeLine:kv.register({className:"char-insert",isWholeLine:!0}),lineInsert:kv.register({className:"line-insert",marginClassName:"line-insert",isWholeLine:!0}),lineInsertWithSign:kv.register({className:"line-insert",linesDecorationsClassName:"insert-sign codicon codicon-add",marginClassName:"line-insert",isWholeLine:!0}),lineDelete:kv.register({className:"line-delete",marginClassName:"line-delete",isWholeLine:!0}),lineDeleteWithSign:kv.register({className:"line-delete",linesDecorationsClassName:"delete-sign codicon codicon-remove",marginClassName:"line-delete",isWholeLine:!0}),lineDeleteMargin:kv.register({marginClassName:"line-delete"})},jD=function(e){function t(t,n){var i=e.call(this,t)||this;return i._disableSash=!1===n,i._sashRatio=null,i._sashPosition=null,i._startSashPosition=null,i._sash=i._register(new Yx(i._dataSource.getContainerDomNode(),i)),i._disableSash&&(i._sash.state=0),i._sash.onDidStart((function(){return i.onSashDragStart()})),i._sash.onDidChange((function(e){return i.onSashDrag(e)})),i._sash.onDidEnd((function(){return i.onSashDragEnd()})),i._sash.onDidReset((function(){return i.onSashReset()})),i}return MD(t,e),t.prototype.setEnableSplitViewResizing=function(e){var t=!1===e;this._disableSash!==t&&(this._disableSash=t,this._sash.state=this._disableSash?0:3)},t.prototype.layout=function(e){void 0===e&&(e=this._sashRatio);var n=this._dataSource.getWidth()-FD.ENTIRE_DIFF_OVERVIEW_WIDTH,i=Math.floor((e||.5)*n),o=Math.floor(.5*n);return i=this._disableSash?o:i||o,n>2*t.MINIMUM_EDITOR_WIDTH?(i<t.MINIMUM_EDITOR_WIDTH&&(i=t.MINIMUM_EDITOR_WIDTH),i>n-t.MINIMUM_EDITOR_WIDTH&&(i=n-t.MINIMUM_EDITOR_WIDTH)):i=o,this._sashPosition!==i&&(this._sashPosition=i,this._sash.layout()),this._sashPosition},t.prototype.onSashDragStart=function(){this._startSashPosition=this._sashPosition},t.prototype.onSashDrag=function(e){var t=this._dataSource.getWidth()-FD.ENTIRE_DIFF_OVERVIEW_WIDTH,n=this.layout((this._startSashPosition+(e.currentX-e.startX))/t);this._sashRatio=n/t,this._dataSource.relayoutEditors()},t.prototype.onSashDragEnd=function(){this._sash.layout()},t.prototype.onSashReset=function(){this._sashRatio=.5,this._dataSource.relayoutEditors(),this._sash.layout()},t.prototype.getVerticalSashTop=function(e){return 0},t.prototype.getVerticalSashLeft=function(e){return this._sashPosition},t.prototype.getVerticalSashHeight=function(e){return this._dataSource.getHeight()},t.prototype._getViewZones=function(e,t,n,i,o){return new UD(e,t,i.getOption(49),n,o.getOption(49)).getViewZones()},t.prototype._getOriginalEditorDecorations=function(e,t,n,i,o){for(var r=String(this._removeColor),s={decorations:[],overviewZones:[]},a=i.getModel(),u=0,l=e.length;u<l;u++){var c=e[u];if(ZD(c)&&(s.decorations.push({range:new wn(c.originalStartLineNumber,1,c.originalEndLineNumber,1073741824),options:n?zD.lineDeleteWithSign:zD.lineDelete}),GD(c)&&c.charChanges||s.decorations.push(HD(c.originalStartLineNumber,1,c.originalEndLineNumber,1073741824,zD.charDeleteWholeLine)),s.overviewZones.push(new nL(c.originalStartLineNumber,c.originalEndLineNumber,r)),c.charChanges))for(var d=0,h=c.charChanges.length;d<h;d++){var p=c.charChanges[d];if(ZD(p))if(t)for(var f=p.originalStartLineNumber;f<=p.originalEndLineNumber;f++){var g=void 0,m=void 0;g=f===p.originalStartLineNumber?p.originalStartColumn:a.getLineFirstNonWhitespaceColumn(f),m=f===p.originalEndLineNumber?p.originalEndColumn:a.getLineLastNonWhitespaceColumn(f),s.decorations.push(HD(f,g,f,m,zD.charDelete))}else s.decorations.push(HD(p.originalStartLineNumber,p.originalStartColumn,p.originalEndLineNumber,p.originalEndColumn,zD.charDelete))}}return s},t.prototype._getModifiedEditorDecorations=function(e,t,n,i,o){for(var r=String(this._insertColor),s={decorations:[],overviewZones:[]},a=o.getModel(),u=0,l=e.length;u<l;u++){var c=e[u];if(GD(c)&&(s.decorations.push({range:new wn(c.modifiedStartLineNumber,1,c.modifiedEndLineNumber,1073741824),options:n?zD.lineInsertWithSign:zD.lineInsert}),ZD(c)&&c.charChanges||s.decorations.push(HD(c.modifiedStartLineNumber,1,c.modifiedEndLineNumber,1073741824,zD.charInsertWholeLine)),s.overviewZones.push(new nL(c.modifiedStartLineNumber,c.modifiedEndLineNumber,r)),c.charChanges))for(var d=0,h=c.charChanges.length;d<h;d++){var p=c.charChanges[d];if(GD(p))if(t)for(var f=p.modifiedStartLineNumber;f<=p.modifiedEndLineNumber;f++){var g=void 0,m=void 0;g=f===p.modifiedStartLineNumber?p.modifiedStartColumn:a.getLineFirstNonWhitespaceColumn(f),m=f===p.modifiedEndLineNumber?p.modifiedEndColumn:a.getLineLastNonWhitespaceColumn(f),s.decorations.push(HD(f,g,f,m,zD.charInsert))}else s.decorations.push(HD(p.modifiedStartLineNumber,p.modifiedStartColumn,p.modifiedEndLineNumber,p.modifiedEndColumn,zD.charInsert))}}return s},t.MINIMUM_EDITOR_WIDTH=100,t}(WD),UD=function(e){function t(t,n,i,o,r){return e.call(this,t,n,i,o,r)||this}return MD(t,e),t.prototype._createOriginalMarginDomNodeForModifiedForeignViewZoneInAddedRegion=function(){return null},t.prototype._produceOriginalFromDiff=function(e,t,n){return n>t?{afterLineNumber:Math.max(e.originalStartLineNumber,e.originalEndLineNumber),heightInLines:n-t,domNode:null}:null},t.prototype._produceModifiedFromDiff=function(e,t,n){return t>n?{afterLineNumber:Math.max(e.modifiedStartLineNumber,e.modifiedEndLineNumber),heightInLines:t-n,domNode:null}:null},t}(BD),KD=function(e){function t(t,n){var i=e.call(this,t)||this;return i.decorationsLeft=t.getOriginalEditor().getLayoutInfo().decorationsLeft,i._register(t.getOriginalEditor().onDidLayoutChange((function(e){i.decorationsLeft!==e.decorationsLeft&&(i.decorationsLeft=e.decorationsLeft,t.relayoutEditors())}))),i}return MD(t,e),t.prototype.setEnableSplitViewResizing=function(e){},t.prototype._getViewZones=function(e,t,n,i,o,r){return new qD(e,t,n,i,o,r).getViewZones()},t.prototype._getOriginalEditorDecorations=function(e,t,n,i,o){for(var r=String(this._removeColor),s={decorations:[],overviewZones:[]},a=0,u=e.length;a<u;a++){var l=e[a];ZD(l)&&(s.decorations.push({range:new wn(l.originalStartLineNumber,1,l.originalEndLineNumber,1073741824),options:zD.lineDeleteMargin}),s.overviewZones.push(new nL(l.originalStartLineNumber,l.originalEndLineNumber,r)))}return s},t.prototype._getModifiedEditorDecorations=function(e,t,n,i,o){for(var r=String(this._insertColor),s={decorations:[],overviewZones:[]},a=o.getModel(),u=0,l=e.length;u<l;u++){var c=e[u];if(GD(c))if(s.decorations.push({range:new wn(c.modifiedStartLineNumber,1,c.modifiedEndLineNumber,1073741824),options:n?zD.lineInsertWithSign:zD.lineInsert}),s.overviewZones.push(new nL(c.modifiedStartLineNumber,c.modifiedEndLineNumber,r)),c.charChanges)for(var d=0,h=c.charChanges.length;d<h;d++){var p=c.charChanges[d];if(GD(p))if(t)for(var f=p.modifiedStartLineNumber;f<=p.modifiedEndLineNumber;f++){var g=void 0,m=void 0;g=f===p.modifiedStartLineNumber?p.modifiedStartColumn:a.getLineFirstNonWhitespaceColumn(f),m=f===p.modifiedEndLineNumber?p.modifiedEndColumn:a.getLineLastNonWhitespaceColumn(f),s.decorations.push(HD(f,g,f,m,zD.charInsert))}else s.decorations.push(HD(p.modifiedStartLineNumber,p.modifiedStartColumn,p.modifiedEndLineNumber,p.modifiedEndColumn,zD.charInsert))}else s.decorations.push(HD(c.modifiedStartLineNumber,1,c.modifiedEndLineNumber,1073741824,zD.charInsertWholeLine))}return s},t.prototype.layout=function(){return Math.max(5,this.decorationsLeft)},t}(WD),qD=function(e){function t(t,n,i,o,r,s){var a=e.call(this,t,n,o.getOption(49),i,r.getOption(49))||this;return a.originalModel=o.getModel(),a.modifiedEditorOptions=r.getOptions(),a.modifiedEditorTabSize=r.getModel().getOptions().tabSize,a.renderIndicators=s,a}return MD(t,e),t.prototype._createOriginalMarginDomNodeForModifiedForeignViewZoneInAddedRegion=function(){var e=document.createElement("div");return e.className="inline-added-margin-view-zone",e},t.prototype._produceOriginalFromDiff=function(e,t,n){var i=document.createElement("div");return i.className="inline-added-margin-view-zone",{afterLineNumber:Math.max(e.originalStartLineNumber,e.originalEndLineNumber),heightInLines:n,domNode:document.createElement("div"),marginDomNode:i}},t.prototype._produceModifiedFromDiff=function(e,t,n){var i=[];if(e.charChanges)for(var o=0,r=e.charChanges.length;o<r;o++){var s=e.charChanges[o];ZD(s)&&i.push(new sd(new wn(s.originalStartLineNumber,s.originalStartColumn,s.originalEndLineNumber,s.originalEndColumn),"char-delete",0))}for(var a=Fc(1e4),u=[],l=this.modifiedEditorOptions.get(107),c=this.modifiedEditorOptions.get(34),d=l.decorationsWidth,h=this.modifiedEditorOptions.get(49),p=c.typicalHalfwidthCharacterWidth,f=0,g=[],m=e.originalStartLineNumber;m<=e.originalEndLineNumber;m++)if(f=Math.max(f,this._renderOriginalLine(m-e.originalStartLineNumber,this.originalModel,this.modifiedEditorOptions,this.modifiedEditorTabSize,m,i,a)),g.push(this.originalModel.getLineContent(m)),this.renderIndicators){var v=m-e.originalStartLineNumber;u=u.concat(['<div class="delete-sign codicon codicon-remove" style="position:absolute;top:'+v*h+"px;width:"+d+"px;height:"+h+'px;right:0;"></div>'])}f+=this.modifiedEditorOptions.get(79);var _=document.createElement("div");_.className="view-lines line-delete",_.innerHTML=a.build(),af.applyFontInfoSlow(_,c);var y=document.createElement("div");return y.className="inline-deleted-margin-view-zone",y.innerHTML=u.join(""),af.applyFontInfoSlow(y,c),{shouldNotShrink:!0,afterLineNumber:0===e.modifiedEndLineNumber?e.modifiedStartLineNumber:e.modifiedStartLineNumber-1,heightInLines:t,minWidthInPx:f*p,domNode:_,marginDomNode:y,diff:{originalStartLineNumber:e.originalStartLineNumber,originalEndLineNumber:e.originalEndLineNumber,modifiedStartLineNumber:e.modifiedStartLineNumber,modifiedEndLineNumber:e.modifiedEndLineNumber,originalContent:g}}},t.prototype._renderOriginalLine=function(e,t,n,i,o,r,s){var a=t.getLineTokens(o),u=a.getLineContent(),l=n.get(34),c=jc.filter(r,o,1,u.length+1);s.appendASCIIString('<div class="view-line'),0===r.length&&s.appendASCIIString(" char-delete"),s.appendASCIIString('" style="top:'),s.appendASCIIString(String(e*n.get(49))),s.appendASCIIString('px;width:1000000px;">');var d=rd.isBasicASCII(u,t.mightContainNonBasicASCII()),h=rd.containsRTL(u,d,t.mightContainRTL()),p=Qc(new Yc(l.isMonospace&&!n.get(23),l.canUseHalfwidthRightwardsArrow,u,!1,d,h,0,a,c,i,0,l.spaceWidth,l.middotWidth,n.get(88),n.get(74),n.get(69),n.get(35)!==Y.OFF,null),s);s.appendASCIIString("</div>");var f=p.characterMapping.getAbsoluteOffsets();return f.length>0?f[f.length-1]:0},t}(BD);function GD(e){return e.modifiedEndLineNumber>0}function ZD(e){return e.originalEndLineNumber>0}yg((function(e,t){var n=e.getColor(jy);n&&(t.addRule(".monaco-editor .line-insert, .monaco-editor .char-insert { background-color: "+n+"; }"),t.addRule(".monaco-diff-editor .line-insert, .monaco-diff-editor .char-insert { background-color: "+n+"; }"),t.addRule(".monaco-editor .inline-added-margin-view-zone { background-color: "+n+"; }"));var i=e.getColor(Uy);i&&(t.addRule(".monaco-editor .line-delete, .monaco-editor .char-delete { background-color: "+i+"; }"),t.addRule(".monaco-diff-editor .line-delete, .monaco-diff-editor .char-delete { background-color: "+i+"; }"),t.addRule(".monaco-editor .inline-deleted-margin-view-zone { background-color: "+i+"; }"));var o=e.getColor(Ky);o&&t.addRule(".monaco-editor .line-insert, .monaco-editor .char-insert { border: 1px "+("hc"===e.type?"dashed":"solid")+" "+o+"; }");var r=e.getColor(qy);r&&t.addRule(".monaco-editor .line-delete, .monaco-editor .char-delete { border: 1px "+("hc"===e.type?"dashed":"solid")+" "+r+"; }");var s=e.getColor(iy);s&&t.addRule(".monaco-diff-editor.side-by-side .editor.modified { box-shadow: -6px 0 5px -5px "+s+"; }");var a=e.getColor(Gy);a&&t.addRule(".monaco-diff-editor.side-by-side .editor.modified { border-left: 1px solid "+a+"; }")}));var YD=Mn("themeService"),XD=Mn("keybindingService"),$D=Mn("clipboardService"),QD=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),JD=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},eN=function(e,t){return function(n,i){t(n,i,e)}},tN=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},nN=0,iN=!1;function oN(){var e;iN||(iN=!0,e=document.body,(zp=document.createElement("div")).className="monaco-aria-container",(jp=document.createElement("div")).className="monaco-alert",jp.setAttribute("role","alert"),jp.setAttribute("aria-atomic","true"),zp.appendChild(jp),(Up=document.createElement("div")).className="monaco-status",Up.setAttribute("role","status"),Up.setAttribute("aria-atomic","true"),zp.appendChild(Up),e.appendChild(zp))}var rN=function(e){function t(t,n,i,o,r,s,a,u,l,c){var d=this;return(n=n||{}).ariaLabel=n.ariaLabel||yp.editorViewAccessibleLabel,n.ariaLabel=n.ariaLabel+";"+(Vn?yp.accessibilityHelpMessageIE:yp.accessibilityHelpMessage),(d=e.call(this,t,n,{},i,o,r,s,u,l,c)||this)._standaloneKeybindingService=a instanceof Pp?a:null,oN(),d}return QD(t,e),t.prototype.addCommand=function(e,t,n){if(!this._standaloneKeybindingService)return console.warn("Cannot add command because the editor is configured with an unrecognized KeybindingService"),null;var i="DYNAMIC_"+ ++nN,o=Rh.deserialize(n);return this._standaloneKeybindingService.addDynamicKeybinding(i,e,t,o),i},t.prototype.createContextKey=function(e,t){return this._contextKeyService.createKey(e,t)},t.prototype.addAction=function(e){var t=this;if("string"!=typeof e.id||"string"!=typeof e.label||"function"!=typeof e.run)throw new Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");if(!this._standaloneKeybindingService)return console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),He.None;var n=e.id,i=e.label,o=Rh.and(Rh.equals("editorId",this.getId()),Rh.deserialize(e.precondition)),r=e.keybindings,s=Rh.and(o,Rh.deserialize(e.keybindingContext)),a=e.contextMenuGroupId||null,u=e.contextMenuOrder||0,l=function(n){for(var i=[],o=1;o<arguments.length;o++)i[o-1]=arguments[o];return Promise.resolve(e.run.apply(e,tN([t],i)))},c=new Be,d=this.getId()+":"+n;if(c.add(ca.registerCommand(d,l)),a){var h={command:{id:d,title:i},when:o,group:a,order:u};c.add(bf.appendMenuItem(7,h))}if(Array.isArray(r))for(var p=0,f=r;p<f.length;p++){var g=f[p];c.add(this._standaloneKeybindingService.addDynamicKeybinding(d,g,l,s))}var m=new VL(d,i,i,o,l,this._contextKeyService);return this._actions[n]=m,c.add(We((function(){delete t._actions[n]}))),c},t=JD([eN(2,In),eN(3,Pn),eN(4,la),eN(5,qh),eN(6,XD),eN(7,fg),eN(8,ap),eN(9,gx)],t)}(Fx),sN=function(e){function t(t,n,i,o,r,s,a,u,l,c,d,h,p){var f=this;Hp(h,n,!1);var g=c.registerEditorContainer(t);"string"==typeof(n=n||{}).theme&&c.setTheme(n.theme);var m,v=n.model;if(delete n.model,(f=e.call(this,t,n,o,r,s,a,u,c,d,p)||this)._contextViewService=l,f._configurationService=h,f._register(i),f._register(g),void 0===v?(m=self.monaco.editor.createModel(n.value||"",n.language||"text/plain"),f._ownsModel=!0):(m=v,f._ownsModel=!1),f._attachModel(m),m){var _={oldModelUrl:null,newModelUrl:m.uri};f._onDidChangeModel.fire(_)}return f}return QD(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.updateOptions=function(t){Hp(this._configurationService,t,!1),e.prototype.updateOptions.call(this,t)},t.prototype._attachModel=function(t){e.prototype._attachModel.call(this,t),this._modelData&&this._contextViewService.setContainer(this._modelData.view.domNode.domNode)},t.prototype._postDetachModelCleanup=function(t){e.prototype._postDetachModelCleanup.call(this,t),t&&this._ownsModel&&(t.dispose(),this._ownsModel=!1)},t=JD([eN(3,In),eN(4,Pn),eN(5,la),eN(6,qh),eN(7,XD),eN(8,xD),eN(9,YD),eN(10,ap),eN(11,wh),eN(12,gx)],t)}(rN),aN=function(e){function t(t,n,i,o,r,s,a,u,l,c,d,h,p,f,g){var m=this;Hp(h,n,!0);var v=c.registerEditorContainer(t);return"string"==typeof(n=n||{}).theme&&(n.theme=c.setTheme(n.theme)),(m=e.call(this,t,n,g,u,r,o,l,c,d,p,f)||this)._contextViewService=a,m._configurationService=h,m._register(i),m._register(v),m._contextViewService.setContainer(m._containerDomElement),m}return QD(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.updateOptions=function(t){Hp(this._configurationService,t,!0),e.prototype.updateOptions.call(this,t)},t.prototype._createInnerEditor=function(e,t,n){return e.createInstance(rN,t,n)},t.prototype.getOriginalEditor=function(){return e.prototype.getOriginalEditor.call(this)},t.prototype.getModifiedEditor=function(){return e.prototype.getModifiedEditor.call(this)},t.prototype.addCommand=function(e,t,n){return this.getModifiedEditor().addCommand(e,t,n)},t.prototype.createContextKey=function(e,t){return this.getModifiedEditor().createContextKey(e,t)},t.prototype.addAction=function(e){return this.getModifiedEditor().addAction(e)},t=JD([eN(3,In),eN(4,qh),eN(5,XD),eN(6,xD),eN(7,el),eN(8,Pn),eN(9,YD),eN(10,ap),eN(11,wh),eN(12,DD),eN(13,OD),eN(14,Tn($D))],t)}(FD),uN=Mn("IWorkspaceEditService"),lN=Mn("modeService"),cN=function(){function e(e){this._languageIdentifier=e}return e.prototype.getId=function(){return this._languageIdentifier.language},e}(),dN=[],hN=[],pN=[];function fN(e,t){void 0===t&&(t=!1);var n=function(e){return{id:e.id,mime:e.mime,filename:e.filename,extension:e.extension,filepattern:e.filepattern,firstline:e.firstline,userConfigured:e.userConfigured,filenameLowercase:e.filename?e.filename.toLowerCase():void 0,extensionLowercase:e.extension?e.extension.toLowerCase():void 0,filepatternLowercase:e.filepattern?e.filepattern.toLowerCase():void 0,filepatternOnPath:!!e.filepattern&&e.filepattern.indexOf(hs.sep)>=0}}(e);dN.push(n),n.userConfigured?pN.push(n):hN.push(n),t&&!n.userConfigured&&dN.forEach((function(e){e.mime===n.mime||e.userConfigured||(n.extension&&e.extension===n.extension&&console.warn("Overwriting extension <<"+n.extension+">> to now point to mime <<"+n.mime+">>"),n.filename&&e.filename===n.filename&&console.warn("Overwriting filename <<"+n.filename+">> to now point to mime <<"+n.mime+">>"),n.filepattern&&e.filepattern===n.filepattern&&console.warn("Overwriting filepattern <<"+n.filepattern+">> to now point to mime <<"+n.mime+">>"),n.firstline&&e.firstline===n.firstline&&console.warn("Overwriting firstline <<"+n.firstline+">> to now point to mime <<"+n.mime+">>"))}))}function gN(e,t){var n;if(e)switch(e.scheme){case Ci.file:n=e.fsPath;break;case Ci.data:n=bs.parseMetaData(e).get(bs.META_DATA_LABEL);break;default:n=e.path}if(!n)return["application/unknown"];n=n.toLowerCase();var i=vs(n),o=mN(n,i,pN);if(o)return[o,"text/plain"];var r=mN(n,i,hN);if(r)return[r,"text/plain"];if(t){var s=function(e){qr(e)&&(e=e.substr(1));if(e.length>0)for(var t=dN.length-1;t>=0;t--){var n=dN[t];if(n.firstline){var i=e.match(n.firstline);if(i&&i.length>0)return n.mime}}return null}(t);if(s)return[s,"text/plain"]}return["application/unknown"]}function mN(e,t,n){for(var i=null,o=null,r=null,s=n.length-1;s>=0;s--){var a=n[s];if(t===a.filenameLowercase){i=a;break}if(a.filepattern&&(!o||a.filepattern.length>o.filepattern.length)){var u=a.filepatternOnPath?e:t;uu(a.filepatternLowercase,u)&&(o=a)}a.extension&&(!r||a.extension.length>r.extension.length)&&_r(t,a.extensionLowercase)&&(r=a)}return i?i.mime:o?o.mime:r?r.mime:null}var vN=new(function(){function e(){this._onDidChangeLanguages=new nt,this.onDidChangeLanguages=this._onDidChangeLanguages.event,this._languages=[],this._dynamicLanguages=[]}return e.prototype.registerLanguage=function(e){this._languages.push(e),this._onDidChangeLanguages.fire(void 0)},e.prototype.getLanguages=function(){return[].concat(this._languages).concat(this._dynamicLanguages)},e}());Td.add("editor.modesRegistry",vN);var _N=new bu("plaintext",1);vN.registerLanguage({id:"plaintext",extensions:[".txt",".gitignore"],aliases:[r("plainText.alias","Plain Text"),"text"],mimetypes:["text/plain"]}),Ol.register(_N,{brackets:[["(",")"],["[","]"],["{","}"]],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],folding:{offSide:!0}});var yN=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),bN=Object.prototype.hasOwnProperty,wN=function(e){function t(t,n){void 0===t&&(t=!0),void 0===n&&(n=!1);var i=e.call(this)||this;return i._onDidChange=i._register(new nt),i.onDidChange=i._onDidChange.event,i._warnOnOverwrite=n,i._nextLanguageId2=1,i._languageIdToLanguage=[],i._languageToLanguageId=Object.create(null),i._languages={},i._mimeTypesMap={},i._nameMap={},i._lowercaseNameMap={},t&&(i._initializeFromRegistry(),i._register(vN.onDidChangeLanguages((function(e){return i._initializeFromRegistry()})))),i}return yN(t,e),t.prototype._initializeFromRegistry=function(){this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={};var e=vN.getLanguages();this._registerLanguages(e)},t.prototype._registerLanguages=function(e){for(var t=this,n=0,i=e;n<i.length;n++){var o=i[n];this._registerLanguage(o)}this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},Object.keys(this._languages).forEach((function(e){var n=t._languages[e];n.name&&(t._nameMap[n.name]=n.identifier),n.aliases.forEach((function(e){t._lowercaseNameMap[e.toLowerCase()]=n.identifier})),n.mimetypes.forEach((function(e){t._mimeTypesMap[e]=n.identifier}))})),Td.as(Ad).registerOverrideIdentifiers(vN.getLanguages().map((function(e){return e.id}))),this._onDidChange.fire()},t.prototype._getLanguageId=function(e){if(this._languageToLanguageId[e])return this._languageToLanguageId[e];var t=this._nextLanguageId2++;return this._languageIdToLanguage[t]=e,this._languageToLanguageId[e]=t,t},t.prototype._registerLanguage=function(e){var t,n=e.id;if(bN.call(this._languages,n))t=this._languages[n];else{var i=this._getLanguageId(n);t={identifier:new bu(n,i),name:null,mimetypes:[],aliases:[],extensions:[],filenames:[],configurationFiles:[]},this._languages[n]=t}this._mergeLanguage(t,e)},t.prototype._mergeLanguage=function(e,t){var n,i,o=t.id,r=null;if(Array.isArray(t.mimetypes)&&t.mimetypes.length>0&&((n=e.mimetypes).push.apply(n,t.mimetypes),r=t.mimetypes[0]),r||(r="text/x-"+o,e.mimetypes.push(r)),Array.isArray(t.extensions))for(var s=0,a=t.extensions;s<a.length;s++){var u=a[s];fN({id:o,mime:r,extension:u},this._warnOnOverwrite),e.extensions.push(u)}if(Array.isArray(t.filenames))for(var l=0,c=t.filenames;l<c.length;l++){var d=c[l];fN({id:o,mime:r,filename:d},this._warnOnOverwrite),e.filenames.push(d)}if(Array.isArray(t.filenamePatterns))for(var h=0,p=t.filenamePatterns;h<p.length;h++){fN({id:o,mime:r,filepattern:p[h]},this._warnOnOverwrite)}if("string"==typeof t.firstLine&&t.firstLine.length>0){var f=t.firstLine;"^"!==f.charAt(0)&&(f="^"+f);try{var g=new RegExp(f);"^"!==(i=g).source&&"^$"!==i.source&&"$"!==i.source&&"^\\s*$"!==i.source&&i.exec("")&&0===i.lastIndex||fN({id:o,mime:r,firstline:g},this._warnOnOverwrite)}catch(e){De(e)}}e.aliases.push(o);var m=null;if(void 0!==t.aliases&&Array.isArray(t.aliases)&&(m=0===t.aliases.length?[null]:t.aliases),null!==m)for(var v=0,_=m;v<_.length;v++){var y=_[v];y&&0!==y.length&&e.aliases.push(y)}var b=null!==m&&m.length>0;if(b&&null===m[0]);else{var w=(b?m[0]:null)||o;!b&&e.name||(e.name=w)}t.configuration&&e.configurationFiles.push(t.configuration)},t.prototype.isRegisteredMode=function(e){return!!bN.call(this._mimeTypesMap,e)||bN.call(this._languages,e)},t.prototype.getModeIdForLanguageNameLowercase=function(e){return bN.call(this._lowercaseNameMap,e)?this._lowercaseNameMap[e].language:null},t.prototype.extractModeIds=function(e){var t=this;return e?e.split(",").map((function(e){return e.trim()})).map((function(e){return bN.call(t._mimeTypesMap,e)?t._mimeTypesMap[e].language:e})).filter((function(e){return bN.call(t._languages,e)})):[]},t.prototype.getLanguageIdentifier=function(e){if("vs.editor.nullMode"===e||0===e)return $u;var t;if("string"==typeof e)t=e;else if(!(t=this._languageIdToLanguage[e]))return null;return bN.call(this._languages,t)?this._languages[t].identifier:null},t.prototype.getModeIdsFromFilepathOrFirstLine=function(e,t){if(!e&&!t)return[];var n=gN(e,t);return this.extractModeIds(n.join(","))},t}(He),CN=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),SN=function(e){function t(t,n){var i=e.call(this)||this;return i._onDidChange=i._register(new nt),i.onDidChange=i._onDidChange.event,i._selector=n,i.languageIdentifier=i._selector(),i._register(t((function(){return i._evaluate()}))),i}return CN(t,e),t.prototype._evaluate=function(){var e=this._selector();e.id!==this.languageIdentifier.id&&(this.languageIdentifier=e,this._onDidChange.fire(this.languageIdentifier))},t}(He),LN=function(){function e(e){var t=this;void 0===e&&(e=!1),this._onDidCreateMode=new nt,this.onDidCreateMode=this._onDidCreateMode.event,this._onLanguagesMaybeChanged=new nt,this.onLanguagesMaybeChanged=this._onLanguagesMaybeChanged.event,this._instantiatedModes={},this._registry=new wN(!0,e),this._registry.onDidChange((function(){return t._onLanguagesMaybeChanged.fire()}))}return e.prototype.isRegisteredMode=function(e){return this._registry.isRegisteredMode(e)},e.prototype.getModeIdForLanguageName=function(e){return this._registry.getModeIdForLanguageNameLowercase(e)},e.prototype.getModeIdByFilepathOrFirstLine=function(e,t){return Ai(this._registry.getModeIdsFromFilepathOrFirstLine(e,t),null)},e.prototype.getModeId=function(e){return Ai(this._registry.extractModeIds(e),null)},e.prototype.getLanguageIdentifier=function(e){return this._registry.getLanguageIdentifier(e)},e.prototype.create=function(e){var t=this;return new SN(this.onLanguagesMaybeChanged,(function(){var n=t.getModeId(e);return t._createModeAndGetLanguageIdentifier(n)}))},e.prototype.createByFilepathOrFirstLine=function(e,t){var n=this;return new SN(this.onLanguagesMaybeChanged,(function(){var i=n.getModeIdByFilepathOrFirstLine(e,t);return n._createModeAndGetLanguageIdentifier(i)}))},e.prototype._createModeAndGetLanguageIdentifier=function(e){var t=this.getLanguageIdentifier(e||"plaintext")||$u;return this._getOrCreateMode(t.language),t},e.prototype.triggerMode=function(e){var t=this.getModeId(e);this._getOrCreateMode(t||"plaintext")},e.prototype._getOrCreateMode=function(e){if(!this._instantiatedModes.hasOwnProperty(e)){var t=this.getLanguageIdentifier(e)||$u;this._instantiatedModes[e]=new cN(t),this._onDidCreateMode.fire(this._instantiatedModes[e])}return this._instantiatedModes[e]},e}(),xN=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),DN=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},NN=function(e,t){return function(n,i){t(n,i,e)}};function kN(e){return e.toString()}var EN=function(){function e(e,t,n){this._modelEventListeners=new Be,this.model=e,this._languageSelection=null,this._languageSelectionListener=null,this._modelEventListeners.add(e.onWillDispose((function(){return t(e)}))),this._modelEventListeners.add(e.onDidChangeLanguage((function(t){return n(e,t)})))}return e.prototype._disposeLanguageSelection=function(){this._languageSelectionListener&&(this._languageSelectionListener.dispose(),this._languageSelectionListener=null),this._languageSelection&&(this._languageSelection.dispose(),this._languageSelection=null)},e.prototype.dispose=function(){this._modelEventListeners.dispose(),this._disposeLanguageSelection()},e.prototype.setLanguage=function(e){var t=this;this._disposeLanguageSelection(),this._languageSelection=e,this._languageSelectionListener=this._languageSelection.onDidChange((function(){return t.model.setMode(e.languageIdentifier)})),this.model.setMode(e.languageIdentifier)},e}(),IN=y||_?1:2,ON=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r._onModelAdded=r._register(new nt),r.onModelAdded=r._onModelAdded.event,r._onModelRemoved=r._register(new nt),r.onModelRemoved=r._onModelRemoved.event,r._onModelModeChanged=r._register(new nt),r.onModelModeChanged=r._onModelModeChanged.event,r._configurationService=t,r._resourcePropertiesService=n,r._models={},r._modelCreationOptionsByLanguageAndResource=Object.create(null),r._configurationServiceSubscription=r._configurationService.onDidChangeConfiguration((function(e){return r._updateModelOptions()})),r._updateModelOptions(),r._register(new MN(r,i,t,o)),r}return xN(t,e),t._readModelOptions=function(e,t){var n=me;if(e.editor&&void 0!==e.editor.tabSize){var i=parseInt(e.editor.tabSize,10);isNaN(i)||(n=i),n<1&&(n=1)}var o=n;if(e.editor&&void 0!==e.editor.indentSize&&"tabSize"!==e.editor.indentSize){var r=parseInt(e.editor.indentSize,10);isNaN(r)||(o=r),o<1&&(o=1)}var s=_e;e.editor&&void 0!==e.editor.insertSpaces&&(s="false"!==e.editor.insertSpaces&&Boolean(e.editor.insertSpaces));var a=IN,u=e.eol;"\r\n"===u?a=2:"\n"===u&&(a=1);var l=be;e.editor&&void 0!==e.editor.trimAutoWhitespace&&(l="false"!==e.editor.trimAutoWhitespace&&Boolean(e.editor.trimAutoWhitespace));var c=ye;e.editor&&void 0!==e.editor.detectIndentation&&(c="false"!==e.editor.detectIndentation&&Boolean(e.editor.detectIndentation));var d=we;return e.editor&&void 0!==e.editor.largeFileOptimizations&&(d="false"!==e.editor.largeFileOptimizations&&Boolean(e.editor.largeFileOptimizations)),{isForSimpleWidget:t,tabSize:n,indentSize:o,insertSpaces:s,detectIndentation:c,defaultEOL:a,trimAutoWhitespace:l,largeFileOptimizations:d}},t.prototype.getCreationOptions=function(e,n,i){var o=this._modelCreationOptionsByLanguageAndResource[e+n];if(!o){var r=this._configurationService.getValue("editor",{overrideIdentifier:e,resource:n}),s=this._resourcePropertiesService.getEOL(n,e);o=t._readModelOptions({editor:r,eol:s},i),this._modelCreationOptionsByLanguageAndResource[e+n]=o}return o},t.prototype._updateModelOptions=function(){var e=this._modelCreationOptionsByLanguageAndResource;this._modelCreationOptionsByLanguageAndResource=Object.create(null);for(var n=Object.keys(this._models),i=0,o=n.length;i<o;i++){var r=n[i],s=this._models[r],a=s.model.getLanguageIdentifier().language,u=s.model.uri,l=e[a+u],c=this.getCreationOptions(a,u,s.model.isForSimpleWidget);t._setModelOptionsForModel(s.model,c,l)}},t._setModelOptionsForModel=function(e,t,n){n&&n.defaultEOL!==t.defaultEOL&&1===e.getLineCount()&&e.setEOL(1===t.defaultEOL?0:1),n&&n.detectIndentation===t.detectIndentation&&n.insertSpaces===t.insertSpaces&&n.tabSize===t.tabSize&&n.indentSize===t.indentSize&&n.trimAutoWhitespace===t.trimAutoWhitespace||(t.detectIndentation?(e.detectIndentation(t.insertSpaces,t.tabSize),e.updateOptions({trimAutoWhitespace:t.trimAutoWhitespace})):e.updateOptions({insertSpaces:t.insertSpaces,tabSize:t.tabSize,indentSize:t.indentSize,trimAutoWhitespace:t.trimAutoWhitespace}))},t.prototype.dispose=function(){this._configurationServiceSubscription.dispose(),e.prototype.dispose.call(this)},t.prototype._createModelData=function(e,t,n,i){var o=this,r=this.getCreationOptions(t.language,n,i),s=new Cv(e,r,t,n),a=kN(s.uri);if(this._models[a])throw new Error("ModelService: Cannot add model because it already exists!");var u=new EN(s,(function(e){return o._onWillDispose(e)}),(function(e,t){return o._onDidChangeLanguage(e,t)}));return this._models[a]=u,u},t.prototype.createModel=function(e,t,n,i){var o;return void 0===i&&(i=!1),t?(o=this._createModelData(e,t.languageIdentifier,n,i),this.setMode(o.model,t)):o=this._createModelData(e,_N,n,i),this._onModelAdded.fire(o.model),o.model},t.prototype.setMode=function(e,t){if(t){var n=this._models[kN(e.uri)];n&&n.setLanguage(t)}},t.prototype.getModels=function(){for(var e=[],t=Object.keys(this._models),n=0,i=t.length;n<i;n++){var o=t[n];e.push(this._models[o].model)}return e},t.prototype.getModel=function(e){var t=kN(e),n=this._models[t];return n?n.model:null},t.prototype._onWillDispose=function(e){var t=kN(e.uri),n=this._models[t];delete this._models[t],n.dispose(),delete this._modelCreationOptionsByLanguageAndResource[e.getLanguageIdentifier().language+e.uri],this._onModelRemoved.fire(e)},t.prototype._onDidChangeLanguage=function(e,n){var i=n.oldLanguage,o=e.getLanguageIdentifier().language,r=this.getCreationOptions(i,e.uri,e.isForSimpleWidget),s=this.getCreationOptions(o,e.uri,e.isForSimpleWidget);t._setModelOptionsForModel(e,s,r),this._onModelModeChanged.fire({model:e,oldModeId:i})},t=DN([NN(0,wh),NN(1,_c),NN(2,fg),NN(3,yc)],t)}(He),MN=function(e){function t(n,i,o,r){var s=e.call(this)||this;s._configurationService=o,s._watchers=Object.create(null),s._semanticStyling=s._register(new TN(i,r));var a=function(e){var n=o.getValue(t.SETTING_ID,{overrideIdentifier:e.getLanguageIdentifier().language,resource:e.uri});return n&&n.enabled},u=function(e){s._watchers[e.uri.toString()]=new WN(e,i,s._semanticStyling)},l=function(e,t){t.dispose(),delete s._watchers[e.uri.toString()]};return s._register(n.onModelAdded((function(e){a(e)&&u(e)}))),s._register(n.onModelRemoved((function(e){var t=s._watchers[e.uri.toString()];t&&l(e,t)}))),s._configurationService.onDidChangeConfiguration((function(e){if(e.affectsConfiguration(t.SETTING_ID))for(var i=0,o=n.getModels();i<o.length;i++){var r=o[i],c=s._watchers[r.uri.toString()];a(r)?c||u(r):c&&l(r,c)}})),s}return xN(t,e),t.SETTING_ID="editor.semanticHighlighting",t}(He),TN=function(e){function t(t,n){var i=e.call(this)||this;return i._themeService=t,i._logService=n,i._caches=new WeakMap,i._themeService&&i._register(i._themeService.onThemeChange((function(){i._caches=new WeakMap}))),i}return xN(t,e),t.prototype.get=function(e){return this._caches.has(e)||this._caches.set(e,new AN(e.getLegend(),this._themeService,this._logService)),this._caches.get(e)},t}(He),PN=function(e,t,n){this.tokenTypeIndex=e,this.tokenModifierSet=t,this.metadata=n,this.next=null},RN=function(){function e(){this._elementsCount=0,this._currentLengthIndex=0,this._currentLength=e._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1<e._SIZES.length?2/3*this._currentLength:0),this._elements=[],e._nullOutEntries(this._elements,this._currentLength)}return e._nullOutEntries=function(e,t){for(var n=0;n<t;n++)e[n]=null},e.prototype._hashFunc=function(e,t){return((e<<5)-e+t|0)%this._currentLength},e.prototype.get=function(e,t){for(var n=this._hashFunc(e,t),i=this._elements[n];i;){if(i.tokenTypeIndex===e&&i.tokenModifierSet===t)return i;i=i.next}return null},e.prototype.add=function(t,n,i){if(this._elementsCount++,0!==this._growCount&&this._elementsCount>=this._growCount){var o=this._elements;this._currentLengthIndex++,this._currentLength=e._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1<e._SIZES.length?2/3*this._currentLength:0),this._elements=[],e._nullOutEntries(this._elements,this._currentLength);for(var r=0,s=o;r<s.length;r++)for(var a=s[r];a;){var u=a.next;a.next=null,this._add(a),a=u}}this._add(new PN(t,n,i))},e.prototype._add=function(e){var t=this._hashFunc(e.tokenTypeIndex,e.tokenModifierSet);e.next=this._elements[t],this._elements[t]=e},e._SIZES=[3,7,13,31,61,127,251,509,1021,2039,4093,8191,16381,32749,65521,131071,262139,524287,1048573,2097143],e}(),AN=function(){function e(e,t,n){this._legend=e,this._themeService=t,this._logService=n,this._hashTable=new RN}return e.prototype.getMetadata=function(e,t){var n,i=this._hashTable.get(e,t);if(i)n=i.metadata;else{for(var o=this._legend.tokenTypes[e],r=[],s=t,a=0;s>0&&a<this._legend.tokenModifiers.length;a++)1&s&&r.push(this._legend.tokenModifiers[a]),s>>=1;var u=this._themeService.getTheme().getTokenStyleMetadata(o,r);if(void 0===u)n=2147483647;else{if(n=0,void 0!==u.italic)n|=1|(u.italic?1:0)<<11;if(void 0!==u.bold)n|=2|(u.bold?2:0)<<11;if(void 0!==u.underline)n|=4|(u.underline?4:0)<<11;if(u.foreground)n|=8|u.foreground<<14;0===n&&(n=2147483647)}this._hashTable.add(e,t,n)}if(this._logService.getLevel()===mc.Trace){var l=this._legend.tokenTypes[e],c=t?" "+this._legend.tokenModifiers.filter((function(e,n){return t&1<<n})).join(" "):"";this._logService.trace("tokenStyleMetadata "+(i?"[CACHED] ":"")+l+c+": foreground "+wu.getForeground(n)+", fontStyle "+wu.getFontStyle(n).toString(2))}return n},e}(),FN=function(){function e(e,t,n){this._provider=e,this.resultId=t,this.data=n}return e.prototype.dispose=function(){this._provider.releaseDocumentSemanticTokens(this.resultId)},e}(),WN=function(e){function t(t,n,i){var o=e.call(this)||this;return o._isDisposed=!1,o._model=t,o._semanticStyling=i,o._fetchSemanticTokens=o._register(new wi((function(){return o._fetchSemanticTokensNow()}),300)),o._currentResponse=null,o._currentRequestCancellationTokenSource=null,o._register(o._model.onDidChangeContent((function(e){o._fetchSemanticTokens.isScheduled()||o._fetchSemanticTokens.schedule()}))),o._register(Gu.onDidChange((function(e){return o._fetchSemanticTokens.schedule()}))),n&&o._register(n.onThemeChange((function(e){o._setSemanticTokens(null,null,null,[]),o._fetchSemanticTokens.schedule()}))),o._fetchSemanticTokens.schedule(0),o}return xN(t,e),t.prototype.dispose=function(){this._currentResponse&&(this._currentResponse.dispose(),this._currentResponse=null),this._currentRequestCancellationTokenSource&&(this._currentRequestCancellationTokenSource.cancel(),this._currentRequestCancellationTokenSource=null),this._setSemanticTokens(null,null,null,[]),this._isDisposed=!0,e.prototype.dispose.call(this)},t.prototype._fetchSemanticTokensNow=function(){var e=this;if(!this._currentRequestCancellationTokenSource){var t=this._getSemanticColoringProvider();if(t){this._currentRequestCancellationTokenSource=new ct;var n=[],i=this._model.onDidChangeContent((function(e){n.push(e)})),o=this._semanticStyling.get(t),r=this._currentResponse&&this._currentResponse.resultId||null;Promise.resolve(t.provideDocumentSemanticTokens(this._model,r,this._currentRequestCancellationTokenSource.token)).then((function(r){e._currentRequestCancellationTokenSource=null,i.dispose(),e._setSemanticTokens(t,r||null,o,n)}),(function(t){t&&"string"==typeof t.message&&-1!==t.message.indexOf("busy")||De(t),e._currentRequestCancellationTokenSource=null,i.dispose(),n.length>0&&(e._fetchSemanticTokens.isScheduled()||e._fetchSemanticTokens.schedule())}))}}},t._isSemanticTokens=function(e){return e&&!!e.data},t._isSemanticTokensEdits=function(e){return e&&Array.isArray(e.edits)},t._copy=function(e,t,n,i,o){for(var r=0;r<o;r++)n[i+r]=e[t+r]},t.prototype._setSemanticTokens=function(e,n,i,o){var r=this._currentResponse;if(this._currentResponse&&(this._currentResponse.dispose(),this._currentResponse=null),this._isDisposed)e&&n&&e.releaseDocumentSemanticTokens(n.resultId);else if(e&&n&&i){if(t._isSemanticTokensEdits(n)){if(!r)return void this._model.setSemanticTokens(null);if(0===n.edits.length)n={resultId:n.resultId,data:r.data};else{for(var s=0,a=0,u=n.edits;a<u.length;a++){s+=((f=u[a]).data?f.data.length:0)-f.deleteCount}for(var l=r.data,c=new Uint32Array(l.length+s),d=l.length,h=c.length,p=n.edits.length-1;p>=0;p--){var f,g=d-((f=n.edits[p]).start+f.deleteCount);g>0&&(t._copy(l,d-g,c,h-g,g),h-=g),f.data&&(t._copy(f.data,0,c,h-f.data.length,f.data.length),h-=f.data.length),d=f.start}d>0&&t._copy(l,0,c,0,d),n={resultId:n.resultId,data:c}}}if(t._isSemanticTokens(n)){this._currentResponse=new FN(e,n.resultId,n.data);l=n.data;for(var m=n.data.length/5|0,v=Math.max(Math.ceil(m/1024),400),_=[],y=0,b=1,w=0;y<m;){var C=y,S=Math.min(C+v,m);if(S<m){for(var L=S;L-1>C&&0===l[5*L];)L--;if(L-1===C){for(var x=S;x+1<m&&0===l[5*x];)x++;S=x}else S=L}c=new Uint32Array(4*(S-C));for(var D=0,N=0;y<S;){var k=5*y,E=l[k],I=l[k+1],O=b+E,M=0===E?w+I:I,T=l[k+2],P=l[k+3],R=l[k+4],A=i.getMetadata(P,R);2147483647!==A&&(0===N&&(N=O),c[D]=O-N,c[D+1]=M,c[D+2]=M+T,c[D+3]=A,D+=4),b=O,w=M,y++}D!==c.length&&(c=c.subarray(0,D));var F=new iv(N,new tv(c));_.push(F)}if(o.length>0){for(var W=0,V=o;W<V.length;W++)for(var B=V[W],H=0,z=_;H<z.length;H++)for(var j=z[H],U=0,K=B.changes;U<K.length;U++){var q=K[U];j.applyEdit(q.range,q.text)}this._fetchSemanticTokens.isScheduled()||this._fetchSemanticTokens.schedule()}this._model.setSemanticTokens(_)}else this._model.setSemanticTokens(null)}else this._model.setSemanticTokens(null)},t.prototype._getSemanticColoringProvider=function(){var e=Gu.ordered(this._model);return e.length>0?e[0]:null},t}(He),VN=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),BN=function(e){function t(){var t=e.call(this)||this;return t._onCodeEditorAdd=t._register(new nt),t.onCodeEditorAdd=t._onCodeEditorAdd.event,t._onCodeEditorRemove=t._register(new nt),t.onCodeEditorRemove=t._onCodeEditorRemove.event,t._onDiffEditorAdd=t._register(new nt),t._onDiffEditorRemove=t._register(new nt),t._codeEditors=Object.create(null),t._diffEditors=Object.create(null),t}return VN(t,e),t.prototype.addCodeEditor=function(e){this._codeEditors[e.getId()]=e,this._onCodeEditorAdd.fire(e)},t.prototype.removeCodeEditor=function(e){delete this._codeEditors[e.getId()]&&this._onCodeEditorRemove.fire(e)},t.prototype.listCodeEditors=function(){var e=this;return Object.keys(this._codeEditors).map((function(t){return e._codeEditors[t]}))},t.prototype.addDiffEditor=function(e){this._diffEditors[e.getId()]=e,this._onDiffEditorAdd.fire(e)},t.prototype.removeDiffEditor=function(e){delete this._diffEditors[e.getId()]&&this._onDiffEditorRemove.fire(e)},t.prototype.listDiffEditors=function(){var e=this;return Object.keys(this._diffEditors).map((function(t){return e._diffEditors[t]}))},t.prototype.getFocusedCodeEditor=function(){for(var e=null,t=0,n=this.listCodeEditors();t<n.length;t++){var i=n[t];if(i.hasTextFocus())return i;i.hasWidgetFocus()&&(e=i)}return e},t}(He),HN=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),zN=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},jN=function(e,t){return function(n,i){t(n,i,e)}},UN=function(){function e(e,t,n){this._parent=e,this._editorId=t,this.styleSheet=n,this._refCount=0}return e.prototype.ref=function(){this._refCount++},e.prototype.unref=function(){var e;this._refCount--,0===this._refCount&&(null===(e=this.styleSheet.parentNode)||void 0===e||e.removeChild(this.styleSheet),this._parent._removeEditorStyleSheets(this._editorId))},e}(),KN=function(){function e(e){this.styleSheet=e}return e.prototype.ref=function(){},e.prototype.unref=function(){},e}(),qN=function(e){function t(t,n){void 0===n&&(n=null);var i=e.call(this)||this;return i._decorationOptionProviders=new Map,i._editorStyleSheets=new Map,i._globalStyleSheet=n?new KN(n):null,i._themeService=t,i}return HN(t,e),t.prototype._getOrCreateGlobalStyleSheet=function(){return this._globalStyleSheet||(this._globalStyleSheet=new KN(zo())),this._globalStyleSheet},t.prototype._getOrCreateStyleSheet=function(e){if(!e)return this._getOrCreateGlobalStyleSheet();var t=e.getContainerDomNode();if(!Bo(t))return this._getOrCreateGlobalStyleSheet();var n=e.getId();if(!this._editorStyleSheets.has(n)){var i=new UN(this,n,zo(t));this._editorStyleSheets.set(n,i)}return this._editorStyleSheets.get(n)},t.prototype._removeEditorStyleSheets=function(e){this._editorStyleSheets.delete(e)},t.prototype.registerDecorationType=function(e,t,n,i){var o=this._decorationOptionProviders.get(e);if(!o){var r=this._getOrCreateStyleSheet(i),s={styleSheet:r.styleSheet,key:e,parentTypeKey:n,options:t||Object.create(null)};o=n?new GN(this._themeService,r,s):new ZN(this._themeService,r,s),this._decorationOptionProviders.set(e,o)}o.refCount++},t.prototype.removeDecorationType=function(e){var t=this._decorationOptionProviders.get(e);t&&(t.refCount--,t.refCount<=0&&(this._decorationOptionProviders.delete(e),t.dispose(),this.listCodeEditors().forEach((function(t){return t.removeDecorations(e)}))))},t.prototype.resolveDecorationOptions=function(e,t){var n=this._decorationOptionProviders.get(e);if(!n)throw new Error("Unknown decoration type key: "+e);return n.getOptions(this,t)},t=zN([jN(0,fg)],t)}(BN),GN=function(){function e(e,t,n){this._styleSheet=t,this._styleSheet.ref(),this._parentTypeKey=n.parentTypeKey,this.refCount=0,this._beforeContentRules=new XN(3,n,e),this._afterContentRules=new XN(4,n,e)}return e.prototype.getOptions=function(e,t){var n=e.resolveDecorationOptions(this._parentTypeKey,!0);return this._beforeContentRules&&(n.beforeContentClassName=this._beforeContentRules.className),this._afterContentRules&&(n.afterContentClassName=this._afterContentRules.className),n},e.prototype.dispose=function(){this._beforeContentRules&&(this._beforeContentRules.dispose(),this._beforeContentRules=null),this._afterContentRules&&(this._afterContentRules.dispose(),this._afterContentRules=null),this._styleSheet.unref()},e}(),ZN=function(){function e(e,t,n){var i=this;this._disposables=new Be,this._styleSheet=t,this._styleSheet.ref(),this.refCount=0;var o=function(t){var o=new XN(t,n,e);if(i._disposables.add(o),o.hasContent)return o.className};this.className=o(0);var r,s=(r=new XN(1,n,e),i._disposables.add(r),r.hasContent?{className:r.className,hasLetterSpacing:r.hasLetterSpacing}:null);s&&(this.inlineClassName=s.className,this.inlineClassNameAffectsLetterSpacing=s.hasLetterSpacing),this.beforeContentClassName=o(3),this.afterContentClassName=o(4),this.glyphMarginClassName=o(2);var a=n.options;this.isWholeLine=Boolean(a.isWholeLine),this.stickiness=a.rangeBehavior;var u=a.light&&a.light.overviewRulerColor||a.overviewRulerColor,l=a.dark&&a.dark.overviewRulerColor||a.overviewRulerColor;void 0===u&&void 0===l||(this.overviewRuler={color:u||l,darkColor:l||u,position:a.overviewRulerLane||Va.Center})}return e.prototype.getOptions=function(e,t){return t?{inlineClassName:this.inlineClassName,beforeContentClassName:this.beforeContentClassName,afterContentClassName:this.afterContentClassName,className:this.className,glyphMarginClassName:this.glyphMarginClassName,isWholeLine:this.isWholeLine,overviewRuler:this.overviewRuler,stickiness:this.stickiness}:this},e.prototype.dispose=function(){this._disposables.dispose(),this._styleSheet.unref()},e}(),YN={color:"color:{0} !important;",opacity:"opacity:{0};",backgroundColor:"background-color:{0};",outline:"outline:{0};",outlineColor:"outline-color:{0};",outlineStyle:"outline-style:{0};",outlineWidth:"outline-width:{0};",border:"border:{0};",borderColor:"border-color:{0};",borderRadius:"border-radius:{0};",borderSpacing:"border-spacing:{0};",borderStyle:"border-style:{0};",borderWidth:"border-width:{0};",fontStyle:"font-style:{0};",fontWeight:"font-weight:{0};",textDecoration:"text-decoration:{0};",cursor:"cursor:{0};",letterSpacing:"letter-spacing:{0};",gutterIconPath:"background:{0} center center no-repeat;",gutterIconSize:"background-size:{0};",contentText:"content:'{0}';",contentIconPath:"content:{0};",margin:"margin:{0};",width:"width:{0};",height:"height:{0};"},XN=function(){function e(e,t,n){var i=this;this._theme=n.getTheme(),this._ruleType=e,this._providerArgs=t,this._usesThemeColors=!1,this._hasContent=!1,this._hasLetterSpacing=!1;var o=$N.getClassName(this._providerArgs.key,e);this._providerArgs.parentTypeKey&&(o=o+" "+$N.getClassName(this._providerArgs.parentTypeKey,e)),this._className=o,this._unThemedSelector=$N.getSelector(this._providerArgs.key,this._providerArgs.parentTypeKey,e),this._buildCSS(),this._usesThemeColors?this._themeListener=n.onThemeChange((function(e){i._theme=n.getTheme(),i._removeCSS(),i._buildCSS()})):this._themeListener=null}return e.prototype.dispose=function(){this._hasContent&&(this._removeCSS(),this._hasContent=!1),this._themeListener&&(this._themeListener.dispose(),this._themeListener=null)},Object.defineProperty(e.prototype,"hasContent",{get:function(){return this._hasContent},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasLetterSpacing",{get:function(){return this._hasLetterSpacing},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"className",{get:function(){return this._className},enumerable:!0,configurable:!0}),e.prototype._buildCSS=function(){var e,t,n,i=this._providerArgs.options;switch(this._ruleType){case 0:e=this.getCSSTextForModelDecorationClassName(i),t=this.getCSSTextForModelDecorationClassName(i.light),n=this.getCSSTextForModelDecorationClassName(i.dark);break;case 1:e=this.getCSSTextForModelDecorationInlineClassName(i),t=this.getCSSTextForModelDecorationInlineClassName(i.light),n=this.getCSSTextForModelDecorationInlineClassName(i.dark);break;case 2:e=this.getCSSTextForModelDecorationGlyphMarginClassName(i),t=this.getCSSTextForModelDecorationGlyphMarginClassName(i.light),n=this.getCSSTextForModelDecorationGlyphMarginClassName(i.dark);break;case 3:e=this.getCSSTextForModelDecorationContentClassName(i.before),t=this.getCSSTextForModelDecorationContentClassName(i.light&&i.light.before),n=this.getCSSTextForModelDecorationContentClassName(i.dark&&i.dark.before);break;case 4:e=this.getCSSTextForModelDecorationContentClassName(i.after),t=this.getCSSTextForModelDecorationContentClassName(i.light&&i.light.after),n=this.getCSSTextForModelDecorationContentClassName(i.dark&&i.dark.after);break;default:throw new Error("Unknown rule type: "+this._ruleType)}var o=this._providerArgs.styleSheet.sheet,r=!1;e.length>0&&(o.insertRule(this._unThemedSelector+" {"+e+"}",0),r=!0),t.length>0&&(o.insertRule(".vs"+this._unThemedSelector+" {"+t+"}",0),r=!0),n.length>0&&(o.insertRule(".vs-dark"+this._unThemedSelector+", .hc-black"+this._unThemedSelector+" {"+n+"}",0),r=!0),this._hasContent=r},e.prototype._removeCSS=function(){Ko(this._unThemedSelector,this._providerArgs.styleSheet)},e.prototype.getCSSTextForModelDecorationClassName=function(e){if(!e)return"";var t=[];return this.collectCSSText(e,["backgroundColor"],t),this.collectCSSText(e,["outline","outlineColor","outlineStyle","outlineWidth"],t),this.collectBorderSettingsCSSText(e,t),t.join("")},e.prototype.getCSSTextForModelDecorationInlineClassName=function(e){if(!e)return"";var t=[];return this.collectCSSText(e,["fontStyle","fontWeight","textDecoration","cursor","color","opacity","letterSpacing"],t),e.letterSpacing&&(this._hasLetterSpacing=!0),t.join("")},e.prototype.getCSSTextForModelDecorationContentClassName=function(e){if(!e)return"";var t=[];if(void 0!==e){if(this.collectBorderSettingsCSSText(e,t),void 0!==e.contentIconPath&&t.push(pr(YN.contentIconPath,ur(Et.revive(e.contentIconPath)))),"string"==typeof e.contentText){var n=e.contentText.match(/^.*$/m)[0].replace(/['\\]/g,"\\$&");t.push(pr(YN.contentText,n))}this.collectCSSText(e,["fontStyle","fontWeight","textDecoration","color","opacity","backgroundColor","margin"],t),this.collectCSSText(e,["width","height"],t)&&t.push("display:inline-block;")}return t.join("")},e.prototype.getCSSTextForModelDecorationGlyphMarginClassName=function(e){if(!e)return"";var t=[];return void 0!==e.gutterIconPath&&(t.push(pr(YN.gutterIconPath,ur(Et.revive(e.gutterIconPath)))),void 0!==e.gutterIconSize&&t.push(pr(YN.gutterIconSize,e.gutterIconSize))),t.join("")},e.prototype.collectBorderSettingsCSSText=function(e,t){return!!this.collectCSSText(e,["border","borderColor","borderRadius","borderSpacing","borderStyle","borderWidth"],t)&&(t.push(pr("box-sizing: border-box;")),!0)},e.prototype.collectCSSText=function(e,t,n){for(var i=n.length,o=0,r=t;o<r.length;o++){var s=r[o],a=this.resolveValue(e[s]);"string"==typeof a&&n.push(pr(YN[s],a))}return n.length!==i},e.prototype.resolveValue=function(e){if((n=e)&&"string"==typeof n.id){this._usesThemeColors=!0;var t=this._theme.getColor(e.id);return t?t.toString():"transparent"}var n;return e},e}(),$N=function(){function e(){}return e.getClassName=function(e,t){return"ced-"+e+"-"+t},e.getSelector=function(e,t,n){var i=".monaco-editor ."+this.getClassName(e,n);return t&&(i=i+"."+this.getClassName(t,n)),3===n?i+="::before":4===n&&(i+="::after"),i},e}(),QN=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),JN=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return QN(t,e),t.prototype.getActiveCodeEditor=function(){return null},t.prototype.openCodeEditor=function(e,t,n){return t?Promise.resolve(this.doOpenEditor(t,e)):Promise.resolve(null)},t.prototype.doOpenEditor=function(e,t){if(!this.findModel(e,t.resource)){if(t.resource){var n=t.resource.scheme;if(n===Ci.http||n===Ci.https)return sr(t.resource.toString()),e}return null}var i=t.options?t.options.selection:null;if(i)if("number"==typeof i.endLineNumber&&"number"==typeof i.endColumn)e.setSelection(i),e.revealRangeInCenter(i,1);else{var o={lineNumber:i.startLineNumber,column:i.startColumn};e.setPosition(o),e.revealPositionInCenter(o,1)}return e},t.prototype.findModel=function(e,t){var n=e.getModel();return n&&n.uri.toString()!==t.toString()?null:n},t}(qN),ek=function(e,t,n,i,o){this.token=e,this.index=t,this.fontStyle=n,this.foreground=i,this.background=o};function tk(e,t){e.sort((function(e,t){var n=function(e,t){if(e<t)return-1;if(e>t)return 1;return 0}(e.token,t.token);return 0!==n?n:e.index-t.index}));for(var n=0,i="000000",o="ffffff";e.length>=1&&""===e[0].token;){var r=e.shift();-1!==r.fontStyle&&(n=r.fontStyle),null!==r.foreground&&(i=r.foreground),null!==r.background&&(o=r.background)}for(var s=new ik,a=0,u=t;a<u.length;a++){var l=u[a];s.getId(l)}for(var c=s.getId(i),d=s.getId(o),h=new lk(n,c,d),p=new ck(h),f=0,g=e.length;f<g;f++){var m=e[f];p.insert(m.token,m.fontStyle,s.getId(m.foreground),s.getId(m.background))}return new ok(s,p)}var nk=/^#?([0-9A-Fa-f]{6})([0-9A-Fa-f]{2})?$/,ik=function(){function e(){this._lastColorId=0,this._id2color=[],this._color2id=new Map}return e.prototype.getId=function(e){if(null===e)return 0;var t=e.match(nk);if(!t)throw new Error("Illegal value for token color: "+e);e=t[1].toUpperCase();var n=this._color2id.get(e);return n||(n=++this._lastColorId,this._color2id.set(e,n),this._id2color[n]=mv.fromHex("#"+e),n)},e.prototype.getColorMap=function(){return this._id2color.slice(0)},e}(),ok=function(){function e(e,t){this._colorMap=e,this._root=t,this._cache=new Map}return e.createFromRawTokenTheme=function(e,t){return this.createFromParsedTokenTheme(function(e){if(!e||!Array.isArray(e))return[];for(var t=[],n=0,i=0,o=e.length;i<o;i++){var r=e[i],s=-1;if("string"==typeof r.fontStyle){s=0;for(var a=r.fontStyle.split(" "),u=0,l=a.length;u<l;u++){switch(a[u]){case"italic":s|=1;break;case"bold":s|=2;break;case"underline":s|=4}}}var c=null;"string"==typeof r.foreground&&(c=r.foreground);var d=null;"string"==typeof r.background&&(d=r.background),t[n++]=new ek(r.token||"",i,s,c,d)}return t}(e),t)},e.createFromParsedTokenTheme=function(e,t){return tk(e,t)},e.prototype.getColorMap=function(){return this._colorMap.getColorMap()},e.prototype._match=function(e){return this._root.match(e)},e.prototype.match=function(e,t){var n=this._cache.get(t);if(void 0===n){var i=this._match(t),o=function(e){var t=e.match(rk);if(!t)return 0;switch(t[1]){case"comment":return 1;case"string":return 2;case"regex":case"regexp":return 4}throw new Error("Unexpected match for standard token type!")}(t);n=(i.metadata|o<<8)>>>0,this._cache.set(t,n)}return(n|e<<0)>>>0},e}(),rk=/\b(comment|string|regex|regexp)\b/;var sk,ak,uk,lk=function(){function e(e,t,n){this._fontStyle=e,this._foreground=t,this._background=n,this.metadata=(this._fontStyle<<11|this._foreground<<14|this._background<<23)>>>0}return e.prototype.clone=function(){return new e(this._fontStyle,this._foreground,this._background)},e.prototype.acceptOverwrite=function(e,t,n){-1!==e&&(this._fontStyle=e),0!==t&&(this._foreground=t),0!==n&&(this._background=n),this.metadata=(this._fontStyle<<11|this._foreground<<14|this._background<<23)>>>0},e}(),ck=function(){function e(e){this._mainRule=e,this._children=new Map}return e.prototype.match=function(e){if(""===e)return this._mainRule;var t,n,i=e.indexOf(".");-1===i?(t=e,n=""):(t=e.substring(0,i),n=e.substring(i+1));var o=this._children.get(t);return void 0!==o?o.match(n):this._mainRule},e.prototype.insert=function(t,n,i,o){if(""!==t){var r,s,a=t.indexOf(".");-1===a?(r=t,s=""):(r=t.substring(0,a),s=t.substring(a+1));var u=this._children.get(r);void 0===u&&(u=new e(this._mainRule.clone()),this._children.set(r,u)),u.insert(s,n,i,o)}else this._mainRule.acceptOverwrite(n,i,o)},e}();var dk={base:"vs",inherit:!1,rules:[{token:"",foreground:"000000",background:"fffffe"},{token:"invalid",foreground:"cd3131"},{token:"emphasis",fontStyle:"italic"},{token:"strong",fontStyle:"bold"},{token:"variable",foreground:"001188"},{token:"variable.predefined",foreground:"4864AA"},{token:"constant",foreground:"dd0000"},{token:"comment",foreground:"008000"},{token:"number",foreground:"098658"},{token:"number.hex",foreground:"3030c0"},{token:"regexp",foreground:"800000"},{token:"annotation",foreground:"808080"},{token:"type",foreground:"008080"},{token:"delimiter",foreground:"000000"},{token:"delimiter.html",foreground:"383838"},{token:"delimiter.xml",foreground:"0000FF"},{token:"tag",foreground:"800000"},{token:"tag.id.pug",foreground:"4F76AC"},{token:"tag.class.pug",foreground:"4F76AC"},{token:"meta.scss",foreground:"800000"},{token:"metatag",foreground:"e00000"},{token:"metatag.content.html",foreground:"FF0000"},{token:"metatag.html",foreground:"808080"},{token:"metatag.xml",foreground:"808080"},{token:"metatag.php",fontStyle:"bold"},{token:"key",foreground:"863B00"},{token:"string.key.json",foreground:"A31515"},{token:"string.value.json",foreground:"0451A5"},{token:"attribute.name",foreground:"FF0000"},{token:"attribute.value",foreground:"0451A5"},{token:"attribute.value.number",foreground:"098658"},{token:"attribute.value.unit",foreground:"098658"},{token:"attribute.value.html",foreground:"0000FF"},{token:"attribute.value.xml",foreground:"0000FF"},{token:"string",foreground:"A31515"},{token:"string.html",foreground:"0000FF"},{token:"string.sql",foreground:"FF0000"},{token:"string.yaml",foreground:"0451A5"},{token:"keyword",foreground:"0000FF"},{token:"keyword.json",foreground:"0451A5"},{token:"keyword.flow",foreground:"AF00DB"},{token:"keyword.flow.scss",foreground:"0000FF"},{token:"operator.scss",foreground:"666666"},{token:"operator.sql",foreground:"778899"},{token:"operator.swift",foreground:"666666"},{token:"predefined.sql",foreground:"FF00FF"}],colors:(sk={},sk[my]="#FFFFFE",sk[vy]="#000000",sk[Ly]="#E5EBF1",sk[Kb]="#D3D3D3",sk[qb]="#939393",sk[xy]="#ADD6FF4D",sk)},hk={base:"vs-dark",inherit:!1,rules:[{token:"",foreground:"D4D4D4",background:"1E1E1E"},{token:"invalid",foreground:"f44747"},{token:"emphasis",fontStyle:"italic"},{token:"strong",fontStyle:"bold"},{token:"variable",foreground:"74B0DF"},{token:"variable.predefined",foreground:"4864AA"},{token:"variable.parameter",foreground:"9CDCFE"},{token:"constant",foreground:"569CD6"},{token:"comment",foreground:"608B4E"},{token:"number",foreground:"B5CEA8"},{token:"number.hex",foreground:"5BB498"},{token:"regexp",foreground:"B46695"},{token:"annotation",foreground:"cc6666"},{token:"type",foreground:"3DC9B0"},{token:"delimiter",foreground:"DCDCDC"},{token:"delimiter.html",foreground:"808080"},{token:"delimiter.xml",foreground:"808080"},{token:"tag",foreground:"569CD6"},{token:"tag.id.pug",foreground:"4F76AC"},{token:"tag.class.pug",foreground:"4F76AC"},{token:"meta.scss",foreground:"A79873"},{token:"meta.tag",foreground:"CE9178"},{token:"metatag",foreground:"DD6A6F"},{token:"metatag.content.html",foreground:"9CDCFE"},{token:"metatag.html",foreground:"569CD6"},{token:"metatag.xml",foreground:"569CD6"},{token:"metatag.php",fontStyle:"bold"},{token:"key",foreground:"9CDCFE"},{token:"string.key.json",foreground:"9CDCFE"},{token:"string.value.json",foreground:"CE9178"},{token:"attribute.name",foreground:"9CDCFE"},{token:"attribute.value",foreground:"CE9178"},{token:"attribute.value.number.css",foreground:"B5CEA8"},{token:"attribute.value.unit.css",foreground:"B5CEA8"},{token:"attribute.value.hex.css",foreground:"D4D4D4"},{token:"string",foreground:"CE9178"},{token:"string.sql",foreground:"FF0000"},{token:"keyword",foreground:"569CD6"},{token:"keyword.flow",foreground:"C586C0"},{token:"keyword.json",foreground:"CE9178"},{token:"keyword.flow.scss",foreground:"569CD6"},{token:"operator.scss",foreground:"909090"},{token:"operator.sql",foreground:"778899"},{token:"operator.swift",foreground:"909090"},{token:"predefined.sql",foreground:"FF00FF"}],colors:(ak={},ak[my]="#1E1E1E",ak[vy]="#D4D4D4",ak[Ly]="#3A3D41",ak[Kb]="#404040",ak[qb]="#707070",ak[xy]="#ADD6FF26",ak)},pk={base:"hc-black",inherit:!1,rules:[{token:"",foreground:"FFFFFF",background:"000000"},{token:"invalid",foreground:"f44747"},{token:"emphasis",fontStyle:"italic"},{token:"strong",fontStyle:"bold"},{token:"variable",foreground:"1AEBFF"},{token:"variable.parameter",foreground:"9CDCFE"},{token:"constant",foreground:"569CD6"},{token:"comment",foreground:"608B4E"},{token:"number",foreground:"FFFFFF"},{token:"regexp",foreground:"C0C0C0"},{token:"annotation",foreground:"569CD6"},{token:"type",foreground:"3DC9B0"},{token:"delimiter",foreground:"FFFF00"},{token:"delimiter.html",foreground:"FFFF00"},{token:"tag",foreground:"569CD6"},{token:"tag.id.pug",foreground:"4F76AC"},{token:"tag.class.pug",foreground:"4F76AC"},{token:"meta",foreground:"D4D4D4"},{token:"meta.tag",foreground:"CE9178"},{token:"metatag",foreground:"569CD6"},{token:"metatag.content.html",foreground:"1AEBFF"},{token:"metatag.html",foreground:"569CD6"},{token:"metatag.xml",foreground:"569CD6"},{token:"metatag.php",fontStyle:"bold"},{token:"key",foreground:"9CDCFE"},{token:"string.key",foreground:"9CDCFE"},{token:"string.value",foreground:"CE9178"},{token:"attribute.name",foreground:"569CD6"},{token:"attribute.value",foreground:"3FF23F"},{token:"string",foreground:"CE9178"},{token:"string.sql",foreground:"FF0000"},{token:"keyword",foreground:"569CD6"},{token:"keyword.flow",foreground:"C586C0"},{token:"operator.sql",foreground:"778899"},{token:"operator.swift",foreground:"909090"},{token:"predefined.sql",foreground:"FF00FF"}],colors:(uk={},uk[my]="#000000",uk[vy]="#FFFFFF",uk[Kb]="#FFFFFF",uk[qb]="#FFFFFF",uk)},fk=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),gk=Td.as(L_),mk=Td.as(vg),vk=function(){function e(e,t){this.themeData=t;var n=t.base;e.length>0?(this.id=n+" "+e,this.themeName=e):(this.id=n,this.themeName=n),this.colors=null,this.defaultColors=Object.create(null),this._tokenTheme=null}return Object.defineProperty(e.prototype,"base",{get:function(){return this.themeData.base},enumerable:!0,configurable:!0}),e.prototype.notifyBaseUpdated=function(){this.themeData.inherit&&(this.colors=null,this._tokenTheme=null)},e.prototype.getColors=function(){if(!this.colors){var e=new Map;for(var t in this.themeData.colors)e.set(t,mv.fromHex(this.themeData.colors[t]));if(this.themeData.inherit){var n=yk(this.themeData.base);for(var t in n.colors)e.has(t)||e.set(t,mv.fromHex(n.colors[t]))}this.colors=e}return this.colors},e.prototype.getColor=function(e,t){var n=this.getColors().get(e);return n||(!1!==t?this.getDefault(e):void 0)},e.prototype.getDefault=function(e){var t=this.defaultColors[e];return t||(t=gk.resolveDefaultColor(e,this),this.defaultColors[e]=t,t)},e.prototype.defines=function(e){return Object.prototype.hasOwnProperty.call(this.getColors(),e)},Object.defineProperty(e.prototype,"type",{get:function(){switch(this.base){case"vs":return"light";case"hc-black":return"hc";default:return"dark"}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"tokenTheme",{get:function(){if(!this._tokenTheme){var e=[],t=[];if(this.themeData.inherit){var n=yk(this.themeData.base);e=n.rules,n.encodedTokensColors&&(t=n.encodedTokensColors)}e=e.concat(this.themeData.rules),this.themeData.encodedTokensColors&&(t=this.themeData.encodedTokensColors),this._tokenTheme=ok.createFromRawTokenTheme(e,t)}return this._tokenTheme},enumerable:!0,configurable:!0}),e.prototype.getTokenStyleMetadata=function(e,t){},e}();function _k(e){return"vs"===e||"vs-dark"===e||"hc-black"===e}function yk(e){switch(e){case"vs":return dk;case"vs-dark":return hk;case"hc-black":return pk}}function bk(e){var t=yk(e);return new vk(e,t)}var wk=function(e){function t(){var t=e.call(this)||this;return t._onThemeChange=t._register(new nt),t.onThemeChange=t._onThemeChange.event,t._environment=Object.create(null),t._knownThemes=new Map,t._knownThemes.set("vs",bk("vs")),t._knownThemes.set("vs-dark",bk("vs-dark")),t._knownThemes.set("hc-black",bk("hc-black")),t._css="",t._globalStyleElement=null,t._styleElements=[],t.setTheme("vs"),t}return fk(t,e),t.prototype.registerEditorContainer=function(e){return Bo(e)?this._registerShadowDomContainer(e):this._registerRegularEditorContainer()},t.prototype._registerRegularEditorContainer=function(){return this._globalStyleElement||(this._globalStyleElement=zo(),this._globalStyleElement.className="monaco-colors",this._globalStyleElement.innerHTML=this._css,this._styleElements.push(this._globalStyleElement)),He.None},t.prototype._registerShadowDomContainer=function(e){var t=this,n=zo(e);return n.className="monaco-colors",n.innerHTML=this._css,this._styleElements.push(n),{dispose:function(){for(var e=0;e<t._styleElements.length;e++)if(t._styleElements[e]===n)return void t._styleElements.splice(e,1)}}},t.prototype.defineTheme=function(e,t){if(!/^[a-z0-9\-]+$/i.test(e))throw new Error("Illegal theme name!");if(!_k(t.base)&&!_k(e))throw new Error("Illegal theme base!");this._knownThemes.set(e,new vk(e,t)),_k(e)&&this._knownThemes.forEach((function(t){t.base===e&&t.notifyBaseUpdated()})),this._theme&&this._theme.themeName===e&&this.setTheme(e)},t.prototype.getTheme=function(){return this._theme},t.prototype.setTheme=function(e){var t,n=this;if(t=this._knownThemes.has(e)?this._knownThemes.get(e):this._knownThemes.get("vs"),this._theme===t)return t.id;this._theme=t;var i=[],o={},r={addRule:function(e){o[e]||(i.push(e),o[e]=!0)}};mk.getThemingParticipants().forEach((function(e){return e(t,r,n._environment)}));var s=t.tokenTheme.getColorMap();return r.addRule(function(e){for(var t=[],n=1,i=e.length;n<i;n++){var o=e[n];t[n]=".mtk"+n+" { color: "+o+"; }"}return t.push(".mtki { font-style: italic; }"),t.push(".mtkb { font-weight: bold; }"),t.push(".mtku { text-decoration: underline; text-underline-position: under; }"),t.join("\n")}(s)),this._css=i.join("\n"),this._styleElements.forEach((function(e){return e.innerHTML=n._css})),Yu.setColorMap(s),this._onThemeChange.fire(t),t.id},t.prototype.getIconTheme=function(){return{hasFileIcons:!1,hasFolderIcons:!1,hidesExplorerArrows:!1}},t}(He),Ck=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Sk=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Lk=function(e,t){return function(n,i){t(n,i,e)}},xk=function(){function e(e,t){this._id=e,this._parent=t,this._value=Object.create(null),this._value._contextId=e}return e.prototype.setValue=function(e,t){return this._value[e]!==t&&(this._value[e]=t,!0)},e.prototype.removeValue=function(e){return e in this._value&&(delete this._value[e],!0)},e.prototype.getValue=function(e){var t=this._value[e];return void 0===t&&this._parent?this._parent.getValue(e):t},e}(),Dk=function(e){function t(){return e.call(this,-1,null)||this}return Ck(t,e),t.prototype.setValue=function(e,t){return!1},t.prototype.removeValue=function(e){return!1},t.prototype.getValue=function(e){},t.INSTANCE=new t,t}(xk),Nk=function(e){function t(t,n,i){var o=e.call(this,t,null)||this;return o._configurationService=n,o._values=new Map,o._listener=o._configurationService.onDidChangeConfiguration((function(e){if(6===e.source){var t=ea(o._values);o._values.clear(),i.fire(new Ik(t))}else{for(var n=[],r=0,s=e.affectedKeys;r<s.length;r++){var a="config."+s[r];o._values.has(a)&&(o._values.delete(a),n.push(a))}i.fire(new Ik(n))}})),o}return Ck(t,e),t.prototype.dispose=function(){this._listener.dispose()},t.prototype.getValue=function(n){if(0!==n.indexOf(t._keyPrefix))return e.prototype.getValue.call(this,n);if(this._values.has(n))return this._values.get(n);var i=n.substr(t._keyPrefix.length),o=this._configurationService.getValue(i),r=void 0;switch(typeof o){case"number":case"boolean":case"string":r=o}return this._values.set(n,r),r},t.prototype.setValue=function(t,n){return e.prototype.setValue.call(this,t,n)},t.prototype.removeValue=function(t){return e.prototype.removeValue.call(this,t)},t._keyPrefix="config.",t}(xk),kk=function(){function e(e,t,n){this._service=e,this._key=t,this._defaultValue=n,this.reset()}return e.prototype.set=function(e){this._service.setContext(this._key,e)},e.prototype.reset=function(){void 0===this._defaultValue?this._service.removeContext(this._key):this._service.setContext(this._key,this._defaultValue)},e.prototype.get=function(){return this._service.getContextKeyValue(this._key)},e}(),Ek=function(){function e(e){this.key=e}return e.prototype.affectsSome=function(e){return e.has(this.key)},e}(),Ik=function(){function e(e){this.keys=e}return e.prototype.affectsSome=function(e){for(var t=0,n=this.keys;t<n.length;t++){var i=n[t];if(e.has(i))return!0}return!1},e}(),Ok=function(){function e(e){this.events=e}return e.prototype.affectsSome=function(e){for(var t=0,n=this.events;t<n.length;t++){if(n[t].affectsSome(e))return!0}return!1},e}(),Mk=function(){function e(e){this._onDidChangeContext=new it({merge:function(e){return new Ok(e)}}),this._isDisposed=!1,this._myContextId=e}return e.prototype.createKey=function(e,t){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new kk(this,e,t)},Object.defineProperty(e.prototype,"onDidChangeContext",{get:function(){return this._onDidChangeContext.event},enumerable:!0,configurable:!0}),e.prototype.bufferChangeEvents=function(e){this._onDidChangeContext.pause();try{e()}finally{this._onDidChangeContext.resume()}},e.prototype.createScoped=function(e){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new Pk(this,e)},e.prototype.contextMatchesRules=function(e){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");var t=this.getContextValuesContainer(this._myContextId);return Gh.contextMatchesRules(t,e)},e.prototype.getContextKeyValue=function(e){if(!this._isDisposed)return this.getContextValuesContainer(this._myContextId).getValue(e)},e.prototype.setContext=function(e,t){if(!this._isDisposed){var n=this.getContextValuesContainer(this._myContextId);n&&n.setValue(e,t)&&this._onDidChangeContext.fire(new Ek(e))}},e.prototype.removeContext=function(e){this._isDisposed||this.getContextValuesContainer(this._myContextId).removeValue(e)&&this._onDidChangeContext.fire(new Ek(e))},e.prototype.getContext=function(e){return this._isDisposed?Dk.INSTANCE:this.getContextValuesContainer(function(e){for(;e;){if(e.hasAttribute("data-keybinding-context")){var t=e.getAttribute("data-keybinding-context");return t?parseInt(t,10):NaN}e=e.parentElement}return 0}(e))},e}(),Tk=function(e){function t(t){var n=e.call(this,0)||this;n._contexts=new Map,n._toDispose=new Be,n._lastContextId=0;var i=new Nk(n._myContextId,t,n._onDidChangeContext);return n._contexts.set(n._myContextId,i),n._toDispose.add(i),n}return Ck(t,e),t.prototype.dispose=function(){this._isDisposed=!0,this._toDispose.dispose()},t.prototype.getContextValuesContainer=function(e){return this._isDisposed?Dk.INSTANCE:this._contexts.get(e)||Dk.INSTANCE},t.prototype.createChildContext=function(e){if(void 0===e&&(e=this._myContextId),this._isDisposed)throw new Error("ContextKeyService has been disposed");var t=++this._lastContextId;return this._contexts.set(t,new xk(t,this.getContextValuesContainer(e))),t},t.prototype.disposeContext=function(e){this._isDisposed||this._contexts.delete(e)},t=Sk([Lk(0,wh)],t)}(Mk),Pk=function(e){function t(t,n){var i=e.call(this,t.createChildContext())||this;return i._parent=t,n&&(i._domNode=n,i._domNode.setAttribute("data-keybinding-context",String(i._myContextId))),i}return Ck(t,e),t.prototype.dispose=function(){this._isDisposed=!0,this._parent.disposeContext(this._myContextId),this._domNode&&(this._domNode.removeAttribute("data-keybinding-context"),this._domNode=void 0)},Object.defineProperty(t.prototype,"onDidChangeContext",{get:function(){return Ge.any(this._parent.onDidChangeContext,this._onDidChangeContext.event)},enumerable:!0,configurable:!0}),t.prototype.getContextValuesContainer=function(e){return this._isDisposed?Dk.INSTANCE:this._parent.getContextValuesContainer(e)},t.prototype.createChildContext=function(e){if(void 0===e&&(e=this._myContextId),this._isDisposed)throw new Error("ScopedContextKeyService has been disposed");return this._parent.createChildContext(e)},t.prototype.disposeContext=function(e){this._isDisposed||this._parent.disposeContext(e)},t}(Mk);ca.registerCommand("setContext",(function(e,t,n){e.get(qh).createKey(String(t),n)}));n(393),n(394);var Rk,Ak=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Fk=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},Wk=/\(&([^\s&])\)|(^|[^&])&([^\s&])/,Vk=/(&)?(&)([^\s&])/g;!function(e){e[e.Right=0]="Right",e[e.Left=1]="Left"}(Rk||(Rk={}));var Bk=function(e){function t(t,n,i){var o=e.call(this,i||"submenu",t,"",!0)||this;return o.entries=n,o}return Ak(t,e),t}(df),Hk=function(e){function t(t,n,i){void 0===i&&(i={});var o=this;no(t,"monaco-menu-container"),t.setAttribute("role","presentation");var r=document.createElement("div");no(r,"monaco-menu"),r.setAttribute("role","presentation"),(o=e.call(this,r,{orientation:2,actionViewItemProvider:function(e){return o.doGetActionViewItem(e,i,s)},context:i.context,actionRunner:i.actionRunner,ariaLabel:i.ariaLabel,triggerKeys:{keys:Fk([3],_?[10]:[]),keyDown:!0}})||this).menuElement=r,o.actionsList.setAttribute("role","menu"),o.actionsList.tabIndex=0,o.menuDisposables=o._register(new Be),uo(r,qo.KEY_DOWN,(function(e){new ni(e).equals(2)&&e.preventDefault()})),i.enableMnemonics&&o.menuDisposables.add(uo(r,qo.KEY_DOWN,(function(e){var t=e.key.toLocaleLowerCase();if(o.mnemonics.has(t)){Go(e,!0);var n=o.mnemonics.get(t);if(1===n.length&&(n[0]instanceof jk&&n[0].container&&o.focusItemByElement(n[0].container),n[0].onClick(e)),n.length>1){var i=n.shift();i&&i.container&&(o.focusItemByElement(i.container),n.push(i)),o.mnemonics.set(t,n)}}}))),y&&o._register(uo(r,qo.KEY_DOWN,(function(e){var t=new ni(e);t.equals(14)||t.equals(11)?(o.focusedItem=o.viewItems.length-1,o.focusNext(),Go(e,!0)):(t.equals(13)||t.equals(12))&&(o.focusedItem=0,o.focusPrevious(),Go(e,!0))}))),o._register(uo(o.domNode,qo.MOUSE_OUT,(function(e){Fo(e.relatedTarget,o.domNode)||(o.focusedItem=void 0,o.updateFocus(),e.stopPropagation())}))),o._register(uo(o.actionsList,qo.MOUSE_OVER,(function(e){var t=e.target;if(t&&Fo(t,o.actionsList)&&t!==o.actionsList){for(;t.parentElement!==o.actionsList&&null!==t.parentElement;)t=t.parentElement;if(to(t,"action-item")){var n=o.focusedItem;o.setFocusedItem(t),n!==o.focusedItem&&o.updateFocus()}}})));var s={parent:o};o.mnemonics=new Map,o.scrollableElement=o._register(new gS(r,{alwaysConsumeMouseWheel:!0,horizontal:2,vertical:3,verticalScrollbarSize:7,handleMouseWheel:!0,useShadows:!0}));var a=o.scrollableElement.getDomNode();return a.style.position="",o._register(uo(a,qo.MOUSE_UP,(function(e){e.preventDefault()}))),r.style.maxHeight=Math.max(10,window.innerHeight-t.getBoundingClientRect().top-30)+"px",o.push(n,{icon:!0,label:!0,isMenu:!0}),t.appendChild(o.scrollableElement.getDomNode()),o.scrollableElement.scanDomNode(),o.viewItems.filter((function(e){return!(e instanceof Uk)})).forEach((function(e,t,n){e.updatePositionInSet(t+1,n.length)})),o}return Ak(t,e),t.prototype.style=function(e){var t=this.getContainer(),n=e.foregroundColor?""+e.foregroundColor:"",i=e.backgroundColor?""+e.backgroundColor:"",o=e.borderColor?"1px solid "+e.borderColor:"",r=e.shadowColor?"0 2px 4px "+e.shadowColor:"";t.style.border=o,this.domNode.style.color=n,this.domNode.style.backgroundColor=i,t.style.boxShadow=r,this.viewItems&&this.viewItems.forEach((function(t){(t instanceof zk||t instanceof Uk)&&t.style(e)}))},t.prototype.getContainer=function(){return this.scrollableElement.getDomNode()},Object.defineProperty(t.prototype,"onScroll",{get:function(){return this.scrollableElement.onScroll},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"scrollOffset",{get:function(){return this.menuElement.scrollTop},enumerable:!0,configurable:!0}),t.prototype.focusItemByElement=function(e){var t=this.focusedItem;this.setFocusedItem(e),t!==this.focusedItem&&this.updateFocus()},t.prototype.setFocusedItem=function(e){for(var t=0;t<this.actionsList.children.length;t++){if(e===this.actionsList.children[t]){this.focusedItem=t;break}}},t.prototype.updateFocus=function(t){e.prototype.updateFocus.call(this,t,!0),void 0!==this.focusedItem&&this.scrollableElement.setScrollPosition({scrollTop:Math.round(this.menuElement.scrollTop)})},t.prototype.doGetActionViewItem=function(e,t,n){if(e instanceof fD)return new Uk(t.context,e,{icon:!0});if(e instanceof Bk){var i=new jk(e,e.entries,n,t);if(t.enableMnemonics)if((u=i.getMnemonic())&&i.isEnabled()){var o=[];this.mnemonics.has(u)&&(o=this.mnemonics.get(u)),o.push(i),this.mnemonics.set(u,o)}return i}var r={enableMnemonics:t.enableMnemonics};if(t.getKeyBinding){var s=t.getKeyBinding(e);if(s){var a=s.getLabel();a&&(r.keybinding=a)}}var u;i=new zk(t.context,e,r);if(t.enableMnemonics&&(u=i.getMnemonic())&&i.isEnabled()){o=[];this.mnemonics.has(u)&&(o=this.mnemonics.get(u)),o.push(i),this.mnemonics.set(u,o)}return i},t}(vD),zk=function(e){function t(t,n,i){void 0===i&&(i={});var o=this;if(i.isMenu=!0,(o=e.call(this,n,n,i)||this).options=i,o.options.icon=void 0!==i.icon&&i.icon,o.options.label=void 0===i.label||i.label,o.cssClass="",o.options.label&&i.enableMnemonics){var r=o.getAction().label;if(r){var s=Wk.exec(r);s&&(o.mnemonic=(s[1]?s[1]:s[3]).toLocaleLowerCase())}}return o.runOnceToEnableMouseUp=new wi((function(){o.element&&o._register(uo(o.element,qo.MOUSE_UP,(function(e){e.defaultPrevented||(Go(e,!0),o.onClick(e))})))}),100),o._register(o.runOnceToEnableMouseUp),o}return Ak(t,e),t.prototype.render=function(t){e.prototype.render.call(this,t),this.element&&(this.container=t,this.item=Xo(this.element,er("a.action-menu-item")),this._action.id===fD.ID?this.item.setAttribute("role","presentation"):(this.item.setAttribute("role","menuitem"),this.mnemonic&&this.item.setAttribute("aria-keyshortcuts",""+this.mnemonic)),this.check=Xo(this.item,er("span.menu-item-check.codicon.codicon-check")),this.check.setAttribute("role","none"),this.label=Xo(this.item,er("span.action-label")),this.options.label&&this.options.keybinding&&(Xo(this.item,er("span.keybinding")).textContent=this.options.keybinding),this.runOnceToEnableMouseUp.schedule(),this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked())},t.prototype.blur=function(){e.prototype.blur.call(this),this.applyStyle()},t.prototype.focus=function(){e.prototype.focus.call(this),this.item&&this.item.focus(),this.applyStyle()},t.prototype.updatePositionInSet=function(e,t){this.item&&(this.item.setAttribute("aria-posinset",""+e),this.item.setAttribute("aria-setsize",""+t))},t.prototype.updateLabel=function(){if(this.options.label){var e=this.getAction().label;if(e){var t=function(e){var t=Wk,n=t.exec(e);if(!n)return e;var i=!n[1];return e.replace(t,i?"$2$3":"").trim()}(e);this.options.enableMnemonics||(e=t),this.label&&this.label.setAttribute("aria-label",t.replace(/&&/g,"&"));var n=Wk.exec(e);if(n){e=fr(e),Vk.lastIndex=0;for(var i=Vk.exec(e);i&&i[1];)i=Vk.exec(e);i&&(e=e.substr(0,i.index)+'<u aria-hidden="true">'+i[3]+"</u>"+e.substr(i.index+i[0].length)),e=e.replace(/&&/g,"&"),this.item&&this.item.setAttribute("aria-keyshortcuts",(n[1]?n[1]:n[3]).toLocaleLowerCase())}else e=e.replace(/&&/g,"&")}this.label&&(this.label.innerHTML=e.trim())}},t.prototype.updateTooltip=function(){var e=null;this.getAction().tooltip?e=this.getAction().tooltip:!this.options.label&&this.getAction().label&&this.options.icon&&(e=this.getAction().label,this.options.keybinding&&(e=r({key:"titleLabel",comment:["action title","action keybinding"]},"{0} ({1})",e,this.options.keybinding))),e&&this.item&&(this.item.title=e)},t.prototype.updateClass=function(){this.cssClass&&this.item&&ro(this.item,this.cssClass),this.options.icon&&this.label?(this.cssClass=this.getAction().class||"",no(this.label,"icon"),this.cssClass&&io(this.label,this.cssClass),this.updateEnabled()):this.label&&oo(this.label,"icon")},t.prototype.updateEnabled=function(){this.getAction().enabled?(this.element&&oo(this.element,"disabled"),this.item&&(oo(this.item,"disabled"),this.item.tabIndex=0)):(this.element&&no(this.element,"disabled"),this.item&&(no(this.item,"disabled"),ir(this.item)))},t.prototype.updateChecked=function(){this.item&&(this.getAction().checked?(no(this.item,"checked"),this.item.setAttribute("role","menuitemcheckbox"),this.item.setAttribute("aria-checked","true")):(oo(this.item,"checked"),this.item.setAttribute("role","menuitem"),this.item.setAttribute("aria-checked","false")))},t.prototype.getMnemonic=function(){return this.mnemonic},t.prototype.applyStyle=function(){if(this.menuStyle){var e=this.element&&to(this.element,"focused"),t=e&&this.menuStyle.selectionForegroundColor?this.menuStyle.selectionForegroundColor:this.menuStyle.foregroundColor,n=e&&this.menuStyle.selectionBackgroundColor?this.menuStyle.selectionBackgroundColor:void 0,i=e&&this.menuStyle.selectionBorderColor?"thin solid "+this.menuStyle.selectionBorderColor:"";this.item&&(this.item.style.color=t?t.toString():"",this.item.style.backgroundColor=n?n.toString():""),this.check&&(this.check.style.color=t?t.toString():""),this.container&&(this.container.style.border=i)}},t.prototype.style=function(e){this.menuStyle=e,this.applyStyle()},t}(pD),jk=function(e){function t(t,n,i,o){var r=e.call(this,t,t,o)||this;return r.submenuActions=n,r.parentData=i,r.submenuOptions=o,r.mysubmenu=null,r.submenuDisposables=r._register(new Be),r.mouseOver=!1,r.expandDirection=o&&void 0!==o.expandDirection?o.expandDirection:Rk.Right,r.showScheduler=new wi((function(){r.mouseOver&&(r.cleanupExistingSubmenu(!1),r.createSubmenu(!1))}),250),r.hideScheduler=new wi((function(){r.element&&!Fo(document.activeElement,r.element)&&r.parentData.submenu===r.mysubmenu&&(r.parentData.parent.focus(!1),r.cleanupExistingSubmenu(!0))}),750),r}return Ak(t,e),t.prototype.render=function(t){var n=this;e.prototype.render.call(this,t),this.element&&(this.item&&(no(this.item,"monaco-submenu-item"),this.item.setAttribute("aria-haspopup","true"),this.updateAriaExpanded("false"),this.submenuIndicator=Xo(this.item,er("span.submenu-indicator.codicon.codicon-chevron-right")),this.submenuIndicator.setAttribute("aria-hidden","true")),this._register(uo(this.element,qo.KEY_UP,(function(e){var t=new ni(e);(t.equals(17)||t.equals(3))&&(Go(e,!0),n.createSubmenu(!0))}))),this._register(uo(this.element,qo.KEY_DOWN,(function(e){var t=new ni(e);document.activeElement===n.item&&(t.equals(17)||t.equals(3))&&Go(e,!0)}))),this._register(uo(this.element,qo.MOUSE_OVER,(function(e){n.mouseOver||(n.mouseOver=!0,n.showScheduler.schedule())}))),this._register(uo(this.element,qo.MOUSE_LEAVE,(function(e){n.mouseOver=!1}))),this._register(uo(this.element,qo.FOCUS_OUT,(function(e){n.element&&!Fo(document.activeElement,n.element)&&n.hideScheduler.schedule()}))),this._register(this.parentData.parent.onScroll((function(){n.parentData.parent.focus(!1),n.cleanupExistingSubmenu(!1)}))))},t.prototype.onClick=function(e){Go(e,!0),this.cleanupExistingSubmenu(!1),this.createSubmenu(!0)},t.prototype.cleanupExistingSubmenu=function(e){this.parentData.submenu&&(e||this.parentData.submenu!==this.mysubmenu)&&(this.parentData.submenu.dispose(),this.parentData.submenu=void 0,this.updateAriaExpanded("false"),this.submenuContainer&&(this.submenuDisposables.clear(),this.submenuContainer=void 0))},t.prototype.createSubmenu=function(e){var t=this;if(void 0===e&&(e=!0),this.element)if(this.parentData.submenu)this.parentData.submenu.focus(!1);else{this.updateAriaExpanded("true"),this.submenuContainer=Xo(this.element,er("div.monaco-submenu")),io(this.submenuContainer,"menubar-menu-items-holder","context-view");var n=getComputedStyle(this.parentData.parent.domNode),i=parseFloat(n.paddingTop||"0")||0;this.submenuContainer.style.top=this.element.offsetTop-this.parentData.parent.scrollOffset-i+"px",this.parentData.submenu=new Hk(this.submenuContainer,this.submenuActions,this.submenuOptions),this.menuStyle&&this.parentData.submenu.style(this.menuStyle);var o=this.element.getBoundingClientRect(),r=this.submenuContainer.getBoundingClientRect();this.expandDirection===Rk.Right?window.innerWidth<=o.right+r.width?(this.submenuContainer.style.left="10px",this.submenuContainer.style.top=this.element.offsetTop-this.parentData.parent.scrollOffset+o.height+"px"):(this.submenuContainer.style.left=this.element.offsetWidth+"px",this.submenuContainer.style.top=this.element.offsetTop-this.parentData.parent.scrollOffset-i+"px"):this.expandDirection===Rk.Left&&(this.submenuContainer.style.right=this.element.offsetWidth+"px",this.submenuContainer.style.left="auto",this.submenuContainer.style.top=this.element.offsetTop-this.parentData.parent.scrollOffset-i+"px"),this.submenuDisposables.add(uo(this.submenuContainer,qo.KEY_UP,(function(e){new ni(e).equals(15)&&(Go(e,!0),t.parentData.parent.focus(),t.cleanupExistingSubmenu(!0))}))),this.submenuDisposables.add(uo(this.submenuContainer,qo.KEY_DOWN,(function(e){new ni(e).equals(15)&&Go(e,!0)}))),this.submenuDisposables.add(this.parentData.submenu.onDidCancel((function(){t.parentData.parent.focus(),t.cleanupExistingSubmenu(!0)}))),this.parentData.submenu.focus(e),this.mysubmenu=this.parentData.submenu}},t.prototype.updateAriaExpanded=function(e){var t;this.item&&(null===(t=this.item)||void 0===t||t.setAttribute("aria-expanded",e))},t.prototype.applyStyle=function(){if(e.prototype.applyStyle.call(this),this.menuStyle){var t=this.element&&to(this.element,"focused")&&this.menuStyle.selectionForegroundColor?this.menuStyle.selectionForegroundColor:this.menuStyle.foregroundColor;this.submenuIndicator&&(this.submenuIndicator.style.color=t?""+t:""),this.parentData.submenu&&this.parentData.submenu.style(this.menuStyle)}},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.hideScheduler.dispose(),this.mysubmenu&&(this.mysubmenu.dispose(),this.mysubmenu=null),this.submenuContainer&&(this.submenuContainer=void 0)},t}(zk),Uk=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Ak(t,e),t.prototype.style=function(e){this.label&&(this.label.style.borderBottomColor=e.separatorColor?""+e.separatorColor:"")},t}(gD);var Kk=function(){return(Kk=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function qk(e,t,n){function i(i){var o=function(e,t){var n=Object.create(null);for(var i in t){var o=t[i];o&&(n[i]=Tb(o,e))}return n}(e.getTheme(),t);"function"==typeof n?n(o):n.style(o)}return i(e.getTheme()),e.onThemeChange(i)}function Gk(e,t,n){return qk(t,Kk(Kk({},Zk),n||{}),e)}var Zk={listFocusBackground:Zy,listFocusForeground:Yy,listActiveSelectionBackground:Eb(Xy,.1),listActiveSelectionForeground:$y,listFocusAndSelectionBackground:Xy,listFocusAndSelectionForeground:$y,listInactiveSelectionBackground:Qy,listInactiveSelectionForeground:Jy,listInactiveFocusBackground:eb,listHoverBackground:tb,listHoverForeground:nb,listDropBackground:ib,listFocusOutline:T_,listSelectionOutline:T_,listHoverOutline:T_,listFilterWidgetBackground:rb,listFilterWidgetOutline:sb,listFilterWidgetNoMatchesOutline:ab,listMatchesShadow:A_,treeIndentGuidesStroke:ub},Yk={shadowColor:A_,borderColor:lb,foregroundColor:cb,backgroundColor:db,selectionForegroundColor:hb,selectionBackgroundColor:pb,selectionBorderColor:fb,separatorColor:gb};var Xk,$k=function(){function e(e,t,n,i,o){this.contextViewService=e,this.telemetryService=t,this.notificationService=n,this.keybindingService=i,this.themeService=o,this.focusToReturn=null,this.block=null,this.options={blockMouse:!0}}return e.prototype.configure=function(e){this.options=e},e.prototype.showContextMenu=function(e){var t,n=this,i=e.getActions();i.length&&(this.focusToReturn=document.activeElement,this.contextViewService.showContextView({getAnchor:function(){return e.getAnchor()},canRelayout:!1,anchorAlignment:e.anchorAlignment,render:function(o){var r=e.getMenuClassName?e.getMenuClassName():"";r&&(o.className+=" "+r),n.options.blockMouse&&(n.block=o.appendChild(er(".context-view-block")));var s,a,u=new Be,l=e.actionRunner||new hf;return l.onDidBeforeRun(n.onActionRun,n,u),l.onDidRun(n.onDidActionRun,n,u),t=new Hk(o,i,{actionViewItemProvider:e.getActionViewItem,context:e.getActionsContext?e.getActionsContext():null,actionRunner:l,getKeyBinding:e.getKeyBinding?e.getKeyBinding:function(e){return n.keybindingService.lookupKeybinding(e.id)}}),u.add((s=t,qk(n.themeService,Kk(Kk({},Yk),a),s))),t.onDidCancel((function(){return n.contextViewService.hideContextView(!0)}),null,u),t.onDidBlur((function(){return n.contextViewService.hideContextView(!0)}),null,u),Xn(window,qo.BLUR)((function(){n.contextViewService.hideContextView(!0)}),null,u),Xn(window,qo.MOUSE_DOWN)((function(e){if(!e.defaultPrevented){var t=new li(e),i=t.target;if(!t.rightButton){for(;i;){if(i===o)return;i=i.parentElement}n.contextViewService.hideContextView(!0)}}}),null,u),Fe(u,t)},focus:function(){t&&t.focus(!!e.autoSelectFirstItem)},onHide:function(t){e.onHide&&e.onHide(!!t),n.block&&(Xi(n.block),n.block=null),n.focusToReturn&&n.focusToReturn.focus()}}))},e.prototype.onActionRun=function(e){this.telemetryService&&this.telemetryService.publicLog2("workbenchActionExecuted",{id:e.action.id,from:"contextMenu"}),this.contextViewService.hideContextView(!1),this.focusToReturn&&this.focusToReturn.focus()},e.prototype.onDidActionRun=function(e){e.error&&this.notificationService&&this.notificationService.error(e.error)},e}(),Qk=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Jk=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},eE=function(e,t){return function(n,i){t(n,i,e)}},tE=function(e){function t(t,n,i,o,r){var s=e.call(this)||this;return s._onDidContextMenu=s._register(new nt),s.contextMenuHandler=new $k(i,t,n,o,r),s}return Qk(t,e),t.prototype.configure=function(e){this.contextMenuHandler.configure(e)},t.prototype.showContextMenu=function(e){this.contextMenuHandler.showContextMenu(e),this._onDidContextMenu.fire()},t=Jk([eE(0,Lf),eE(1,ap),eE(2,xD),eE(3,XD),eE(4,fg)],t)}(He);n(395);!function(e){function t(e,t){if(e.start>=t.end||t.start>=e.end)return{start:0,end:0};var n=Math.max(e.start,t.start),i=Math.min(e.end,t.end);return i-n<=0?{start:0,end:0}:{start:n,end:i}}function n(e){return e.end-e.start<=0}e.intersect=t,e.isEmpty=n,e.intersects=function(e,i){return!n(t(e,i))},e.relativeComplement=function(e,t){var i=[],o={start:e.start,end:Math.min(t.start,e.end)},r={start:Math.max(t.end,e.start),end:e.end};return n(o)||i.push(o),n(r)||i.push(r),i}}(Xk||(Xk={}));var nE=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function iE(e,t,n){var i=n.offset+n.size;return 0===n.position?t<=e-i?i:t<=n.offset?n.offset-t:Math.max(e-t,0):t<=n.offset?n.offset-t:t<=e-i?i:0}var oE=function(e){function t(t){var n=e.call(this)||this;return n.container=null,n.delegate=null,n.toDisposeOnClean=He.None,n.toDisposeOnSetContainer=He.None,n.view=er(".context-view"),nr(n.view),n.setContainer(t),n._register(We((function(){return n.setContainer(null)}))),n}return nE(t,e),t.prototype.setContainer=function(e){var n=this;if(this.container&&(this.toDisposeOnSetContainer.dispose(),this.container.removeChild(this.view),this.container=null),e){this.container=e,this.container.appendChild(this.view);var i=new Be;t.BUBBLE_UP_EVENTS.forEach((function(e){i.add(co(n.container,e,(function(e){n.onDOMEvent(e,!1)})))})),t.BUBBLE_DOWN_EVENTS.forEach((function(e){i.add(co(n.container,e,(function(e){n.onDOMEvent(e,!0)}),!0))})),this.toDisposeOnSetContainer=i}},t.prototype.show=function(e){this.isVisible()&&this.hide(),Yi(this.view),this.view.className="context-view",this.view.style.top="0px",this.view.style.left="0px",tr(this.view),this.toDisposeOnClean=e.render(this.view)||He.None,this.delegate=e,this.doLayout(),this.delegate.focus&&this.delegate.focus()},t.prototype.layout=function(){this.isVisible()&&(!1!==this.delegate.canRelayout||C&&Ki.pointerEvents?(this.delegate.layout&&this.delegate.layout(),this.doLayout()):this.hide())},t.prototype.doLayout=function(){if(this.isVisible()){var e,t,n=this.delegate.getAnchor();if(t=n,"object"==typeof HTMLElement?t instanceof HTMLElement:t&&"object"==typeof t&&1===t.nodeType&&"string"==typeof t.nodeName){var i=Oo(n);e={top:i.top,left:i.left,width:i.width,height:i.height}}else e={top:n.y,left:n.x,width:n.width||1,height:n.height||2};var o,r=To(this.view),s=Ao(this.view),a=this.delegate.anchorPosition||0,u=this.delegate.anchorAlignment||0,l={offset:e.top-window.pageYOffset,size:e.height,position:0===a?0:1};o=0===u?{offset:e.left,size:0,position:0}:{offset:e.left+e.width,size:0,position:1};var c=iE(window.innerHeight,s,l)+window.pageYOffset;Xk.intersects({start:c,end:c+s},{start:l.offset,end:l.offset+l.size})&&(o.size=e.width,1===u&&(o.offset=e.left));var d=iE(window.innerWidth,r,o);ro(this.view,"top","bottom","left","right"),no(this.view,0===a?"bottom":"top"),no(this.view,0===u?"left":"right");var h=Oo(this.container);this.view.style.top=c-h.top+"px",this.view.style.left=d-h.left+"px",this.view.style.width="initial"}},t.prototype.hide=function(e){var t=this.delegate;this.delegate=null,(null==t?void 0:t.onHide)&&t.onHide(e),this.toDisposeOnClean.dispose(),nr(this.view)},t.prototype.isVisible=function(){return!!this.delegate},t.prototype.onDOMEvent=function(e,t){this.delegate&&(this.delegate.onDOMEvent?this.delegate.onDOMEvent(e,document.activeElement):t&&!Fo(e.target,this.container)&&this.hide())},t.prototype.dispose=function(){this.hide(),e.prototype.dispose.call(this)},t.BUBBLE_UP_EVENTS=["click","keydown","focus","blur"],t.BUBBLE_DOWN_EVENTS=["click"],t}(He),rE=Mn("layoutService"),sE=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),aE=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},uE=function(e,t){return function(n,i){t(n,i,e)}},lE=function(e){function t(t){var n=e.call(this)||this;return n.layoutService=t,n.contextView=n._register(new oE(t.container)),n.layout(),n._register(t.onLayout((function(){return n.layout()}))),n}return sE(t,e),t.prototype.setContainer=function(e){this.contextView.setContainer(e)},t.prototype.showContextView=function(e){this.contextView.show(e)},t.prototype.layout=function(){this.contextView.layout()},t.prototype.hideContextView=function(e){this.contextView.hide(e)},t=aE([uE(0,rE)],t)}(He),cE=Mn("dialogService");var dE,hE=function(){function e(e){this._hashFn=e,this._nodes=Object.create(null)}return e.prototype.roots=function(){var e=[];return Qd(this._nodes,(function(t){Us(t.value.outgoing)&&e.push(t.value)})),e},e.prototype.insertEdge=function(e,t){var n=this.lookupOrInsertNode(e),i=this.lookupOrInsertNode(t);n.outgoing[this._hashFn(t)]=i,i.incoming[this._hashFn(e)]=n},e.prototype.removeNode=function(e){var t=this._hashFn(e);delete this._nodes[t],Qd(this._nodes,(function(e){delete e.value.outgoing[t],delete e.value.incoming[t]}))},e.prototype.lookupOrInsertNode=function(e){var t=this._hashFn(e),n=this._nodes[t];return n||(n=function(e){return{data:e,incoming:Object.create(null),outgoing:Object.create(null)}}(e),this._nodes[t]=n),n},e.prototype.isEmpty=function(){for(var e in this._nodes)return!1;return!0},e.prototype.toString=function(){var e=[];return Qd(this._nodes,(function(t){e.push(t.key+", (incoming)["+Object.keys(t.value.incoming).join(", ")+"], (outgoing)["+Object.keys(t.value.outgoing).join(",")+"]")})),e.join("\n")},e}(),pE=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),fE=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},gE="function"==typeof Proxy,mE=function(e){function t(t){var n=e.call(this,"cyclic dependency between services")||this;return n.message=t.toString(),n}return pE(t,e),t}(Error),vE=function(){function e(e,t,n){void 0===e&&(e=new fx),void 0===t&&(t=!1),this._services=e,this._strict=t,this._parent=n,this._services.set(In,this)}return e.prototype.createChild=function(t){return new e(t,this._strict,this)},e.prototype.invokeFunction=function(e){for(var t=this,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];var o=_E.traceInvocation(e),r=!1;try{var s={get:function(e,n){if(r)throw Me("service accessor is only valid during the invocation of its target method");var i=t._getOrCreateServiceInstance(e,o);if(!i&&n!==Tn)throw new Error("[invokeFunction] unknown service '"+e+"'");return i}};return e.apply(void 0,fE([s],n))}finally{r=!0,o.stop()}},e.prototype.createInstance=function(e){for(var t,n,i=[],o=1;o<arguments.length;o++)i[o-1]=arguments[o];return e instanceof Xx?(t=_E.traceCreation(e.ctor),n=this._createInstance(e.ctor,e.staticArguments.concat(i),t)):(t=_E.traceCreation(e),n=this._createInstance(e,i,t)),t.stop(),n},e.prototype._createInstance=function(e,t,n){void 0===t&&(t=[]);for(var i=En.getServiceDependencies(e).sort((function(e,t){return e.index-t.index})),o=[],r=0,s=i;r<s.length;r++){var a=s[r],u=this._getOrCreateServiceInstance(a.id,n);if(!u&&this._strict&&!a.optional)throw new Error("[createInstance] "+e.name+" depends on UNKNOWN service "+a.id+".");o.push(u)}var l=i.length>0?i[0].index:t.length;if(t.length!==l){console.warn("[createInstance] First service dependency of "+e.name+" at position "+(l+1)+" conflicts with "+t.length+" static arguments");var c=l-t.length;t=c>0?t.concat(new Array(c)):t.slice(0,l)}return new(e.bind.apply(e,fE([void 0],fE(t,o))))},e.prototype._setServiceInstance=function(e,t){if(this._services.get(e)instanceof Xx)this._services.set(e,t);else{if(!this._parent)throw new Error("illegalState - setting UNKNOWN service instance");this._parent._setServiceInstance(e,t)}},e.prototype._getServiceInstanceOrDescriptor=function(e){var t=this._services.get(e);return!t&&this._parent?this._parent._getServiceInstanceOrDescriptor(e):t},e.prototype._getOrCreateServiceInstance=function(e,t){var n=this._getServiceInstanceOrDescriptor(e);return n instanceof Xx?this._createAndCacheServiceInstance(e,n,t.branch(e,!0)):(t.branch(e,!1),n)},e.prototype._createAndCacheServiceInstance=function(e,t,n){for(var i=new hE((function(e){return e.id.toString()})),o=0,r=[{id:e,desc:t,_trace:n}];r.length;){var s=r.pop();if(i.lookupOrInsertNode(s),o++>150)throw new mE(i);for(var a=0,u=En.getServiceDependencies(s.desc.ctor);a<u.length;a++){var l=u[a],c=this._getServiceInstanceOrDescriptor(l.id);if(c||l.optional||console.warn("[createInstance] "+e+" depends on "+l.id+" which is NOT registered."),c instanceof Xx){var d={id:l.id,desc:c,_trace:s._trace.branch(l.id,!0)};i.insertEdge(s,d),r.push(d)}}}for(;;){var h=i.roots();if(0===h.length){if(!i.isEmpty())throw new mE(i);break}for(var p=0,f=h;p<f.length;p++){var g=f[p].data,m=this._createServiceInstanceWithOwner(g.id,g.desc.ctor,g.desc.staticArguments,g.desc.supportsDelayedInstantiation,g._trace);this._setServiceInstance(g.id,m),i.removeNode(g)}}return this._getServiceInstanceOrDescriptor(e)},e.prototype._createServiceInstanceWithOwner=function(e,t,n,i,o){if(void 0===n&&(n=[]),this._services.get(e)instanceof Xx)return this._createServiceInstance(t,n,i,o);if(this._parent)return this._parent._createServiceInstanceWithOwner(e,t,n,i,o);throw new Error("illegalState - creating UNKNOWN service instance "+t.name)},e.prototype._createServiceInstance=function(e,t,n,i){var o=this;if(void 0===t&&(t=[]),n&&gE){var r=new Si((function(){return o._createInstance(e,t,i)}));return new Proxy(Object.create(null),{get:function(e,t){if(t in e)return e[t];var n=r.getValue(),i=n[t];return"function"!=typeof i||(i=i.bind(n),e[t]=i),i},set:function(e,t,n){return r.getValue()[t]=n,!0}})}return this._createInstance(e,t,i)},e}(),_E=function(){function e(e,t){this.type=e,this.name=t,this._start=Date.now(),this._dep=[]}return e.traceInvocation=function(t){return e._None},e.traceCreation=function(t){return e._None},e.prototype.branch=function(t,n){var i=new e(2,t.toString());return this._dep.push([t,n,i]),i},e.prototype.stop=function(){var t=Date.now()-this._start;e._totals+=t;var n=!1;var i=[(0===this.type?"CREATE":"CALL")+" "+this.name,""+function e(t,i){for(var o=[],r=new Array(t+1).join("\t"),s=0,a=i._dep;s<a.length;s++){var u=a[s],l=u[0],c=u[1],d=u[2];if(c&&d){n=!0,o.push(r+"CREATES -> "+l);var h=e(t+1,d);h&&o.push(h)}else o.push(r+"uses -> "+l)}return o.join("\n")}(1,this),"DONE, took "+t.toFixed(2)+"ms (grand total "+e._totals.toFixed(2)+"ms)"];(t>2||n)&&console.log(i.join("\n"))},e._None=new(function(e){function t(){return e.call(this,-1,null)||this}return pE(t,e),t.prototype.stop=function(){},t.prototype.branch=function(){return this},t}(e)),e._totals=0,e}(),yE=Mn("label"),bE=(n(396),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}());!function(e){e.TREE="tree",e.FORM="form"}(dE||(dE={}));var wE=function(e){function t(t,n){return e.call(this,"ListError ["+t+"] "+n)||this}return bE(t,e),t}(Error);function CE(e,t){for(var n=[],i=0,o=t;i<o.length;i++){var r=o[i];if(!(e.start>=r.range.end)){if(e.end<r.range.start)break;var s=Xk.intersect(e,r.range);Xk.isEmpty(s)||n.push({range:s,size:r.size})}}return n}function SE(e,t){return{start:e.start+t,end:e.end+t}}function LE(e){for(var t=[],n=null,i=0,o=e;i<o.length;i++){var r=o[i],s=r.range.start,a=r.range.end,u=r.size;n&&u===n.size?n.range.end=a:(n={range:{start:s,end:a},size:u},t.push(n))}return t}var xE=function(){function e(){this.groups=[],this._size=0}return e.prototype.splice=function(e,t,n){void 0===n&&(n=[]);var i=n.length-t,o=CE({start:0,end:e},this.groups),r=CE({start:e+t,end:Number.POSITIVE_INFINITY},this.groups).map((function(e){return{range:SE(e.range,i),size:e.size}})),s=n.map((function(t,n){return{range:{start:e+n,end:e+n+1},size:t.size}}));this.groups=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return LE(e.reduce((function(e,t){return e.concat(t)}),[]))}(o,s,r),this._size=this.groups.reduce((function(e,t){return e+t.size*(t.range.end-t.range.start)}),0)},Object.defineProperty(e.prototype,"count",{get:function(){var e=this.groups.length;return e?this.groups[e-1].range.end:0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"size",{get:function(){return this._size},enumerable:!0,configurable:!0}),e.prototype.indexAt=function(e){if(e<0)return-1;for(var t=0,n=0,i=0,o=this.groups;i<o.length;i++){var r=o[i],s=r.range.end-r.range.start,a=n+s*r.size;if(e<a)return t+Math.floor((e-n)/r.size);t+=s,n=a}return t},e.prototype.indexAfter=function(e){return Math.min(this.indexAt(e)+1,this.count)},e.prototype.positionAt=function(e){if(e<0)return-1;for(var t=0,n=0,i=0,o=this.groups;i<o.length;i++){var r=o[i],s=r.range.end-r.range.start,a=n+s;if(e<a)return t+(e-n)*r.size;t+=s*r.size,n=a}return-1},e}();var DE=function(){function e(e){this.renderers=e,this.cache=new Map}return e.prototype.alloc=function(e){var t=this.getTemplateCache(e).pop();if(!t){var n=er(".monaco-list-row");t={domNode:n,templateId:e,templateData:this.getRenderer(e).renderTemplate(n)}}return t},e.prototype.release=function(e){e&&this.releaseRow(e)},e.prototype.releaseRow=function(e){var t=e.domNode,n=e.templateId;t&&(oo(t,"scrolling"),function(e){try{e.parentElement&&e.parentElement.removeChild(e)}catch(e){}}(t)),this.getTemplateCache(n).push(e)},e.prototype.getTemplateCache=function(e){var t=this.cache.get(e);return t||(t=[],this.cache.set(e,t)),t},e.prototype.dispose=function(){var e=this;this.cache.forEach((function(t,n){for(var i=0,o=t;i<o.length;i++){var r=o[i];e.getRenderer(n).disposeTemplate(r.templateData),r.domNode=null,r.templateData=null}})),this.cache.clear()},e.prototype.getRenderer=function(e){var t=this.renderers.get(e);if(!t)throw new Error("No renderer found for "+e);return t},e}(),NE=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},kE=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},EE={useShadows:!0,verticalScrollMode:1,setRowLineHeight:!0,supportDynamicHeights:!1,dnd:{getDragElements:function(e){return[e]},getDragURI:function(){return null},onDragStart:function(){},onDragOver:function(){return!1},drop:function(){}},horizontalScrolling:!1},IE=function(){function e(e){this.elements=e}return e.prototype.update=function(){},e.prototype.getData=function(){return this.elements},e}(),OE=function(){function e(e){this.elements=e}return e.prototype.update=function(){},e.prototype.getData=function(){return this.elements},e}(),ME=function(){function e(){this.types=[],this.files=[]}return e.prototype.update=function(e){var t;if(e.types&&(t=this.types).splice.apply(t,kE([0,this.types.length],e.types)),e.files){this.files.splice(0,this.files.length);for(var n=0;n<e.files.length;n++){var i=e.files.item(n);i&&(i.size||i.type)&&this.files.push(i)}}},e.prototype.getData=function(){return{types:this.types,files:this.files}},e}();var TE=function(){function e(t,n,i,o){var r=this;if(void 0===o&&(o=EE),this.virtualDelegate=n,this.domId="list_id_"+ ++e.InstanceCount,this.renderers=new Map,this.renderWidth=0,this._scrollHeight=0,this.scrollableElementUpdateDisposable=null,this.scrollableElementWidthDelayer=new fi(50),this.splicing=!1,this.dragOverAnimationStopDisposable=He.None,this.dragOverMouseY=0,this.canDrop=!1,this.currentDragFeedbackDisposable=He.None,this.onDragLeaveTimeout=He.None,this.disposables=new Be,this._onDidChangeContentHeight=new nt,o.horizontalScrolling&&o.supportDynamicHeights)throw new Error("Horizontal scrolling and dynamic heights not supported simultaneously");this.items=[],this.itemId=0,this.rangeMap=new xE;for(var s=0,a=i;s<a.length;s++){var u=a[s];this.renderers.set(u.templateId,u)}this.cache=this.disposables.add(new DE(this.renderers)),this.lastRenderTop=0,this.lastRenderHeight=0,this.domNode=document.createElement("div"),this.domNode.className="monaco-list",no(this.domNode,this.domId),this.domNode.tabIndex=0,so(this.domNode,"mouse-support","boolean"!=typeof o.mouseSupport||o.mouseSupport),this.horizontalScrolling=Ia(o,(function(e){return e.horizontalScrolling}),EE.horizontalScrolling),so(this.domNode,"horizontal-scrolling",this.horizontalScrolling),this.additionalScrollHeight=void 0===o.additionalScrollHeight?0:o.additionalScrollHeight,this.ariaProvider=o.ariaProvider||{getSetSize:function(e,t,n){return n},getPosInSet:function(e,t){return t+1}},this.rowsContainer=document.createElement("div"),this.rowsContainer.className="monaco-list-rows",this.rowsContainer.style.transform="translate3d(0px, 0px, 0px)",this.disposables.add(jf.addTarget(this.rowsContainer)),this.scrollableElement=this.disposables.add(new pS(this.rowsContainer,{alwaysConsumeMouseWheel:!0,horizontal:this.horizontalScrolling?1:2,vertical:Ia(o,(function(e){return e.verticalScrollMode}),EE.verticalScrollMode),useShadows:Ia(o,(function(e){return e.useShadows}),EE.useShadows)})),this.domNode.appendChild(this.scrollableElement.getDomNode()),t.appendChild(this.domNode),this.scrollableElement.onScroll(this.onScroll,this,this.disposables),Xn(this.rowsContainer,Bf.Change)(this.onTouchChange,this,this.disposables),Xn(this.scrollableElement.getDomNode(),"scroll")((function(e){return e.target.scrollTop=0}),null,this.disposables),Ge.map(Xn(this.domNode,"dragover"),(function(e){return r.toDragEvent(e)}))(this.onDragOver,this,this.disposables),Ge.map(Xn(this.domNode,"drop"),(function(e){return r.toDragEvent(e)}))(this.onDrop,this,this.disposables),Xn(this.domNode,"dragleave")(this.onDragLeave,this,this.disposables),Xn(window,"dragend")(this.onDragEnd,this,this.disposables),this.setRowLineHeight=Ia(o,(function(e){return e.setRowLineHeight}),EE.setRowLineHeight),this.supportDynamicHeights=Ia(o,(function(e){return e.supportDynamicHeights}),EE.supportDynamicHeights),this.dnd=Ia(o,(function(e){return e.dnd}),EE.dnd),this.layout()}return Object.defineProperty(e.prototype,"contentHeight",{get:function(){return this.rangeMap.size},enumerable:!0,configurable:!0}),e.prototype.splice=function(e,t,n){if(void 0===n&&(n=[]),this.splicing)throw new Error("Can't run recursive splices.");this.splicing=!0;try{return this._splice(e,t,n)}finally{this.splicing=!1,this._onDidChangeContentHeight.fire(this.contentHeight)}},e.prototype._splice=function(e,t,n){var i,o=this;void 0===n&&(n=[]);for(var r=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),s={start:e,end:e+t},a=Xk.intersect(r,s),u=a.start;u<a.end;u++)this.removeItemFromDOM(u);var l,c={start:e+t,end:this.items.length},d=Xk.intersect(c,r),h=Xk.relativeComplement(c,r),p=n.map((function(e){return{id:String(o.itemId++),element:e,templateId:o.virtualDelegate.getTemplateId(e),size:o.virtualDelegate.getHeight(e),width:void 0,hasDynamicHeight:!!o.virtualDelegate.hasDynamicHeight&&o.virtualDelegate.hasDynamicHeight(e),lastDynamicHeightWidth:void 0,row:null,uri:void 0,dropTarget:!1,dragStartDisposable:He.None}}));0===e&&t>=this.items.length?(this.rangeMap=new xE,this.rangeMap.splice(0,0,p),this.items=p,l=[]):(this.rangeMap.splice(e,t,p),l=(i=this.items).splice.apply(i,kE([e,t],p)));var f=n.length-t,g=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),m=SE(d,f),v=Xk.intersect(g,m);for(u=v.start;u<v.end;u++)this.updateItemInDOM(this.items[u],u);for(var _=0,y=Xk.relativeComplement(m,g);_<y.length;_++)for(u=(D=y[_]).start;u<D.end;u++)this.removeItemFromDOM(u);for(var b=h.map((function(e){return SE(e,f)})),w={start:e,end:e+n.length},C=kE([w],b).map((function(e){return Xk.intersect(g,e)})),S=this.getNextToLastElement(C),L=0,x=C;L<x.length;L++){var D;for(u=(D=x[L]).start;u<D.end;u++)this.insertItemInDOM(u,S)}return this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight),l.map((function(e){return e.element}))},e.prototype.eventuallyUpdateScrollDimensions=function(){var e=this;this._scrollHeight=this.contentHeight,this.rowsContainer.style.height=this._scrollHeight+"px",this.scrollableElementUpdateDisposable||(this.scrollableElementUpdateDisposable=mo((function(){e.scrollableElement.setScrollDimensions({scrollHeight:e.scrollHeight}),e.updateScrollWidth(),e.scrollableElementUpdateDisposable=null})))},e.prototype.eventuallyUpdateScrollWidth=function(){var e=this;this.horizontalScrolling&&this.scrollableElementWidthDelayer.trigger((function(){return e.updateScrollWidth()}))},e.prototype.updateScrollWidth=function(){if(this.horizontalScrolling){0===this.items.length&&this.scrollableElement.setScrollDimensions({scrollWidth:0});for(var e=0,t=0,n=this.items;t<n.length;t++){var i=n[t];void 0!==i.width&&(e=Math.max(e,i.width))}this.scrollWidth=e,this.scrollableElement.setScrollDimensions({scrollWidth:e+10})}},e.prototype.rerender=function(){if(this.supportDynamicHeights){for(var e=0,t=this.items;e<t.length;e++){t[e].lastDynamicHeightWidth=void 0}this._rerender(this.lastRenderTop,this.lastRenderHeight)}},Object.defineProperty(e.prototype,"length",{get:function(){return this.items.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"renderHeight",{get:function(){return this.scrollableElement.getScrollDimensions().height},enumerable:!0,configurable:!0}),e.prototype.element=function(e){return this.items[e].element},e.prototype.domElement=function(e){var t=this.items[e].row;return t&&t.domNode},e.prototype.elementHeight=function(e){return this.items[e].size},e.prototype.elementTop=function(e){return this.rangeMap.positionAt(e)},e.prototype.indexAt=function(e){return this.rangeMap.indexAt(e)},e.prototype.indexAfter=function(e){return this.rangeMap.indexAfter(e)},e.prototype.layout=function(e,t){var n={height:"number"==typeof e?e:Ro(this.domNode)};this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,n.scrollHeight=this.scrollHeight),this.scrollableElement.setScrollDimensions(n),void 0!==t&&(this.renderWidth=t,this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight),this.horizontalScrolling&&this.scrollableElement.setScrollDimensions({width:"number"==typeof t?t:Po(this.domNode)}))},e.prototype.render=function(e,t,n,i){for(var o=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),r=this.getRenderRange(e,t),s=Xk.relativeComplement(r,o),a=Xk.relativeComplement(o,r),u=this.getNextToLastElement(s),l=0,c=s;l<c.length;l++)for(var d=(f=c[l]).start;d<f.end;d++)this.insertItemInDOM(d,u);for(var h=0,p=a;h<p.length;h++){var f;for(d=(f=p[h]).start;d<f.end;d++)this.removeItemFromDOM(d)}this.rowsContainer.style.left="-"+n+"px",this.rowsContainer.style.top="-"+e+"px",this.horizontalScrolling&&(this.rowsContainer.style.width=Math.max(i,this.renderWidth)+"px"),this.lastRenderTop=e,this.lastRenderHeight=t},e.prototype.insertItemInDOM=function(e,t){var n=this,i=this.items[e];if(!i.row){i.row=this.cache.alloc(i.templateId);var o=this.ariaProvider.getRole?this.ariaProvider.getRole(i.element):"treeitem";i.row.domNode.setAttribute("role",o);var r=this.ariaProvider.isChecked?this.ariaProvider.isChecked(i.element):void 0;void 0!==r&&i.row.domNode.setAttribute("aria-checked",String(r))}i.row.domNode.parentElement||(t?this.rowsContainer.insertBefore(i.row.domNode,t):this.rowsContainer.appendChild(i.row.domNode)),this.updateItemInDOM(i,e);var s=this.renderers.get(i.templateId);if(!s)throw new Error("No renderer found for template id "+i.templateId);s&&s.renderElement(i.element,e,i.row.templateData,i.size);var a=this.dnd.getDragURI(i.element);if(i.dragStartDisposable.dispose(),i.row.domNode.draggable=!!a,a){var u=Xn(i.row.domNode,"dragstart");i.dragStartDisposable=u((function(e){return n.onDragStart(i.element,a,e)}))}this.horizontalScrolling&&(this.measureItemWidth(i),this.eventuallyUpdateScrollWidth())},e.prototype.measureItemWidth=function(e){if(e.row&&e.row.domNode){e.row.domNode.style.width=zn?"-moz-fit-content":"fit-content",e.width=Po(e.row.domNode);var t=window.getComputedStyle(e.row.domNode);t.paddingLeft&&(e.width+=parseFloat(t.paddingLeft)),t.paddingRight&&(e.width+=parseFloat(t.paddingRight)),e.row.domNode.style.width=""}},e.prototype.updateItemInDOM=function(e,t){e.row.domNode.style.top=this.elementTop(t)+"px",e.row.domNode.style.height=e.size+"px",this.setRowLineHeight&&(e.row.domNode.style.lineHeight=e.size+"px"),e.row.domNode.setAttribute("data-index",""+t),e.row.domNode.setAttribute("data-last-element",t===this.length-1?"true":"false"),e.row.domNode.setAttribute("aria-setsize",String(this.ariaProvider.getSetSize(e.element,t,this.length))),e.row.domNode.setAttribute("aria-posinset",String(this.ariaProvider.getPosInSet(e.element,t))),e.row.domNode.setAttribute("id",this.getElementDomId(t)),so(e.row.domNode,"drop-target",e.dropTarget)},e.prototype.removeItemFromDOM=function(e){var t=this.items[e];t.dragStartDisposable.dispose();var n=this.renderers.get(t.templateId);n&&n.disposeElement&&n.disposeElement(t.element,e,t.row.templateData,t.size),this.cache.release(t.row),t.row=null,this.horizontalScrolling&&this.eventuallyUpdateScrollWidth()},e.prototype.getScrollTop=function(){return this.scrollableElement.getScrollPosition().scrollTop},e.prototype.setScrollTop=function(e){this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),this.scrollableElement.setScrollPosition({scrollTop:e})},Object.defineProperty(e.prototype,"scrollTop",{get:function(){return this.getScrollTop()},set:function(e){this.setScrollTop(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"scrollHeight",{get:function(){return this._scrollHeight+(this.horizontalScrolling?10:0)+this.additionalScrollHeight},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMouseClick",{get:function(){var e=this;return Ge.map(Xn(this.domNode,"click"),(function(t){return e.toMouseEvent(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMouseDblClick",{get:function(){var e=this;return Ge.map(Xn(this.domNode,"dblclick"),(function(t){return e.toMouseEvent(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMouseMiddleClick",{get:function(){var e=this;return Ge.filter(Ge.map(Xn(this.domNode,"auxclick"),(function(t){return e.toMouseEvent(t)})),(function(e){return 1===e.browserEvent.button}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMouseDown",{get:function(){var e=this;return Ge.map(Xn(this.domNode,"mousedown"),(function(t){return e.toMouseEvent(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onContextMenu",{get:function(){var e=this;return Ge.map(Xn(this.domNode,"contextmenu"),(function(t){return e.toMouseEvent(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onTouchStart",{get:function(){var e=this;return Ge.map(Xn(this.domNode,"touchstart"),(function(t){return e.toTouchEvent(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onTap",{get:function(){var e=this;return Ge.map(Xn(this.rowsContainer,Bf.Tap),(function(t){return e.toGestureEvent(t)}))},enumerable:!0,configurable:!0}),e.prototype.toMouseEvent=function(e){var t=this.getItemIndexFromEventTarget(e.target||null),n=void 0===t?void 0:this.items[t];return{browserEvent:e,index:t,element:n&&n.element}},e.prototype.toTouchEvent=function(e){var t=this.getItemIndexFromEventTarget(e.target||null),n=void 0===t?void 0:this.items[t];return{browserEvent:e,index:t,element:n&&n.element}},e.prototype.toGestureEvent=function(e){var t=this.getItemIndexFromEventTarget(e.initialTarget||null),n=void 0===t?void 0:this.items[t];return{browserEvent:e,index:t,element:n&&n.element}},e.prototype.toDragEvent=function(e){var t=this.getItemIndexFromEventTarget(e.target||null),n=void 0===t?void 0:this.items[t];return{browserEvent:e,index:t,element:n&&n.element}},e.prototype.onScroll=function(e){try{this.render(e.scrollTop,e.height,e.scrollLeft,e.scrollWidth),this.supportDynamicHeights&&this._rerender(e.scrollTop,e.height)}catch(t){throw console.error("Got bad scroll event:",e),t}},e.prototype.onTouchChange=function(e){e.preventDefault(),e.stopPropagation(),this.scrollTop-=e.translationY},e.prototype.onDragStart=function(e,t,n){if(n.dataTransfer){var i=this.dnd.getDragElements(e);if(n.dataTransfer.effectAllowed="copyMove",n.dataTransfer.setData(uD,JSON.stringify([t])),n.dataTransfer.setDragImage){var o=void 0;this.dnd.getDragLabel&&(o=this.dnd.getDragLabel(i,n)),void 0===o&&(o=String(i.length));var r=er(".monaco-drag-image");r.textContent=o,document.body.appendChild(r),n.dataTransfer.setDragImage(r,-10,-10),setTimeout((function(){return document.body.removeChild(r)}),0)}this.currentDragData=new IE(i),dD.CurrentDragAndDropData=new OE(i),this.dnd.onDragStart&&this.dnd.onDragStart(this.currentDragData,n)}},e.prototype.onDragOver=function(e){var t=this;if(e.browserEvent.preventDefault(),this.onDragLeaveTimeout.dispose(),dD.CurrentDragAndDropData&&"vscode-ui"===dD.CurrentDragAndDropData.getData())return!1;if(this.setupDragAndDropScrollTopAnimation(e.browserEvent),!e.browserEvent.dataTransfer)return!1;if(!this.currentDragData)if(dD.CurrentDragAndDropData)this.currentDragData=dD.CurrentDragAndDropData;else{if(!e.browserEvent.dataTransfer.types)return!1;this.currentDragData=new ME}var n,i,o,r=this.dnd.onDragOver(this.currentDragData,e.element,e.index,e.browserEvent);if(this.canDrop="boolean"==typeof r?r:r.accept,!this.canDrop)return this.currentDragFeedback=void 0,this.currentDragFeedbackDisposable.dispose(),!1;if(e.browserEvent.dataTransfer.dropEffect="boolean"!=typeof r&&0===r.effect?"copy":"move",n=-1===(n=Mi(n="boolean"!=typeof r&&r.feedback?r.feedback:void 0===e.index?[-1]:[e.index]).filter((function(e){return e>=-1&&e<t.length})).sort((function(e,t){return e-t})))[0]?[-1]:n,i=this.currentDragFeedback,o=n,Array.isArray(i)&&Array.isArray(o)?xi(i,o):i===o)return!0;if(this.currentDragFeedback=n,this.currentDragFeedbackDisposable.dispose(),-1===n[0])no(this.domNode,"drop-target"),no(this.rowsContainer,"drop-target"),this.currentDragFeedbackDisposable=We((function(){oo(t.domNode,"drop-target"),oo(t.rowsContainer,"drop-target")}));else{for(var s=0,a=n;s<a.length;s++){var u=a[s],l=this.items[u];l.dropTarget=!0,l.row&&l.row.domNode&&no(l.row.domNode,"drop-target")}this.currentDragFeedbackDisposable=We((function(){for(var e=0,i=n;e<i.length;e++){var o=i[e],r=t.items[o];r.dropTarget=!1,r.row&&r.row.domNode&&oo(r.row.domNode,"drop-target")}}))}return!0},e.prototype.onDragLeave=function(){var e=this;this.onDragLeaveTimeout.dispose(),this.onDragLeaveTimeout=mi((function(){return e.clearDragOverFeedback()}),100)},e.prototype.onDrop=function(e){if(this.canDrop){var t=this.currentDragData;this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.currentDragData=void 0,dD.CurrentDragAndDropData=void 0,t&&e.browserEvent.dataTransfer&&(e.browserEvent.preventDefault(),t.update(e.browserEvent.dataTransfer),this.dnd.drop(t,e.element,e.index,e.browserEvent))}},e.prototype.onDragEnd=function(e){this.canDrop=!1,this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.currentDragData=void 0,dD.CurrentDragAndDropData=void 0,this.dnd.onDragEnd&&this.dnd.onDragEnd(e)},e.prototype.clearDragOverFeedback=function(){this.currentDragFeedback=void 0,this.currentDragFeedbackDisposable.dispose(),this.currentDragFeedbackDisposable=He.None},e.prototype.setupDragAndDropScrollTopAnimation=function(e){var t,n,i,o=this;if(!this.dragOverAnimationDisposable){var r=Io(this.domNode).top;this.dragOverAnimationDisposable=(t=this.animateDragAndDropScrollTop.bind(this,r),n=function(){t(),i=mo(n)},i=mo(n),We((function(){return i.dispose()})))}this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationStopDisposable=mi((function(){o.dragOverAnimationDisposable&&(o.dragOverAnimationDisposable.dispose(),o.dragOverAnimationDisposable=void 0)}),1e3),this.dragOverMouseY=e.pageY},e.prototype.animateDragAndDropScrollTop=function(e){if(void 0!==this.dragOverMouseY){var t=this.dragOverMouseY-e,n=this.renderHeight-35;t<35?this.scrollTop+=Math.max(-14,Math.floor(.3*(t-35))):t>n&&(this.scrollTop+=Math.min(14,Math.floor(.3*(t-n))))}},e.prototype.teardownDragAndDropScrollTopAnimation=function(){this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)},e.prototype.getItemIndexFromEventTarget=function(e){for(var t=e;t instanceof HTMLElement&&t!==this.rowsContainer;){var n=t.getAttribute("data-index");if(n){var i=Number(n);if(!isNaN(i))return i}t=t.parentElement}},e.prototype.getRenderRange=function(e,t){return{start:this.rangeMap.indexAt(e),end:this.rangeMap.indexAfter(e+t-1)}},e.prototype._rerender=function(e,t){var n,i,o=this.getRenderRange(e,t);e===this.elementTop(o.start)?(n=o.start,i=0):o.end-o.start>1&&(n=o.start+1,i=this.elementTop(n)-e);for(var r=0;;){for(var s=this.getRenderRange(e,t),a=!1,u=s.start;u<s.end;u++){var l=this.probeDynamicHeight(u);0!==l&&this.rangeMap.splice(u,1,[this.items[u]]),r+=l,a=a||0!==l}if(!a){0!==r&&this.eventuallyUpdateScrollDimensions();for(var c=0,d=Xk.relativeComplement(o,s);c<d.length;c++)for(u=(f=d[c]).start;u<f.end;u++)this.items[u].row&&this.removeItemFromDOM(u);for(var h=0,p=Xk.relativeComplement(s,o);h<p.length;h++){var f;for(u=(f=p[h]).start;u<f.end;u++){var g=u+1,m=g<this.items.length?this.items[g].row:null,v=m?m.domNode:null;this.insertItemInDOM(u,v)}}for(u=s.start;u<s.end;u++)this.items[u].row&&this.updateItemInDOM(this.items[u],u);return"number"==typeof n&&(this.scrollTop=this.elementTop(n)-i),void this._onDidChangeContentHeight.fire(this.contentHeight)}}},e.prototype.probeDynamicHeight=function(e){var t=this.items[e];if(!t.hasDynamicHeight||t.lastDynamicHeightWidth===this.renderWidth)return 0;var n=t.size,i=this.cache.alloc(t.templateId);i.domNode.style.height="",this.rowsContainer.appendChild(i.domNode);var o=this.renderers.get(t.templateId);return o&&(o.renderElement(t.element,e,i.templateData,void 0),o.disposeElement&&o.disposeElement(t.element,e,i.templateData,void 0)),t.size=i.domNode.offsetHeight,this.virtualDelegate.setDynamicHeight&&this.virtualDelegate.setDynamicHeight(t.element,t.size),t.lastDynamicHeightWidth=this.renderWidth,this.rowsContainer.removeChild(i.domNode),this.cache.release(i),t.size-n},e.prototype.getNextToLastElement=function(e){var t=e[e.length-1];if(!t)return null;var n=this.items[t.end];return n&&n.row?n.row.domNode:null},e.prototype.getElementDomId=function(e){return this.domId+"_"+e},e.prototype.dispose=function(){if(this.items){for(var e=0,t=this.items;e<t.length;e++){var n=t[e];if(n.row){var i=this.renderers.get(n.row.templateId);i&&i.disposeTemplate(n.row.templateData)}}this.items=[]}this.domNode&&this.domNode.parentNode&&this.domNode.parentNode.removeChild(this.domNode),Ae(this.disposables)},e.InstanceCount=0,NE([Vf],e.prototype,"onMouseClick",null),NE([Vf],e.prototype,"onMouseDblClick",null),NE([Vf],e.prototype,"onMouseMiddleClick",null),NE([Vf],e.prototype,"onMouseDown",null),NE([Vf],e.prototype,"onContextMenu",null),NE([Vf],e.prototype,"onTouchStart",null),NE([Vf],e.prototype,"onTap",null),e}(),PE=function(){function e(e){this.spliceables=e}return e.prototype.splice=function(e,t,n){this.spliceables.forEach((function(i){return i.splice(e,t,n)}))},e}();function RE(e,t,n){return Math.min(Math.max(e,t),n)}function AE(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(t,n){for(var i=0,o=e.length;i<o;i++){var r=e[i](t,n);if(r)return r}return null}}var FE=function(e,t,n){if(!n||n.length<t.length)return null;var i;i=e?Or(n,t):0===n.indexOf(t);if(!i)return null;return t.length>0?[{start:0,end:t.length}]:[]}.bind(void 0,!0);function WE(e){return 97<=e&&e<=122}function VE(e){return 65<=e&&e<=90}function BE(e){return 48<=e&&e<=57}function HE(e){return 32===e||9===e||10===e||13===e}var zE=new Set;function jE(e){return WE(e)||VE(e)||BE(e)}function UE(e,t){return 0===t.length?t=[e]:e.end===t[0].start?t[0].start=e.start:t.unshift(e),t}function KE(e,t){for(var n=t;n<e.length;n++){var i=e.charCodeAt(n);if(VE(i)||BE(i)||n>0&&!jE(e.charCodeAt(n-1)))return n}return e.length}function qE(e,t,n,i){if(n===e.length)return[];if(i===t.length)return null;if(e[n]!==t[i].toLowerCase())return null;var o=null,r=i+1;for(o=qE(e,t,n+1,i+1);!o&&(r=KE(t,r))<t.length;)o=qE(e,t,n+1,r),r++;return null===o?null:UE({start:i,end:i+1},o)}function GE(e,t){if(!t)return null;if(0===(t=t.trim()).length)return null;if(!function(e){for(var t=0,n=0,i=0,o=0,r=0;r<e.length;r++)VE(i=e.charCodeAt(r))&&t++,WE(i)&&n++,HE(i)&&o++;return 0!==t&&0!==n||0!==o?t<=5:e.length<=30}(e))return null;if(t.length>60)return null;var n=function(e){for(var t=0,n=0,i=0,o=0,r=0,s=0;s<e.length;s++)VE(r=e.charCodeAt(s))&&t++,WE(r)&&n++,jE(r)&&i++,BE(r)&&o++;return{upperPercent:t/e.length,lowerPercent:n/e.length,alphaPercent:i/e.length,numericPercent:o/e.length}}(t);if(!function(e){var t=e.upperPercent,n=e.lowerPercent,i=e.alphaPercent,o=e.numericPercent;return n>.2&&t<.8&&i>.6&&o<.2}(n)){if(!function(e){var t=e.upperPercent;return 0===e.lowerPercent&&t>.6}(n))return null;t=t.toLowerCase()}var i=null,o=0;for(e=e.toLowerCase();o<t.length&&null===(i=qE(e,t,0,o));)o=KE(t,o+1);return i}"`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?".split("").forEach((function(e){return zE.add(e.charCodeAt(0))}));var ZE=AE(FE,GE,(function(e,t){var n=t.toLowerCase().indexOf(e.toLowerCase());return-1===n?null:[{start:n,end:n+e.length}]})),YE=AE(FE,GE,(function(e,t){return function e(t,n,i,o){if(i===t.length)return[];if(o===n.length)return null;if(t[i]===n[o]){var r;return(r=e(t,n,i+1,o+1))?UE({start:o,end:o+1},r):null}return e(t,n,i,o+1)}(e.toLowerCase(),t.toLowerCase(),0,0)})),XE=new aa(1e4);function $E(e,t,n){if(void 0===n&&(n=!1),"string"!=typeof e||"string"!=typeof t)return null;var i=XE.get(e);i||(i=new RegExp(e.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*"),"i"),XE.set(e,i));var o=i.exec(t);return o?[{start:o.index,end:o.index+o[0].length}]:n?YE(e,t):ZE(e,t)}function QE(e,t,n,i,o,r){var s=uI(e,t,0,i,o,0,!0);if(s)return s;for(var a=0,u=0,l=r,c=0;c<t.length&&c<eI;++c){var d=o.indexOf(t.charAt(c),l);if(d>=0)u+=1,a+=Math.pow(2,d),l=d+1;else if(0!==a)break}return[u,a,r]}function JE(e){if(void 0===e)return[];for(var t=e[1].toString(2),n=[],i=e[2];i<eI;i++)if("1"===t[t.length-(i+1)]){var o=n[n.length-1];o&&o.end===i?o.end=i+1:n.push({start:i,end:i+1})}return n}var eI=128;function tI(){for(var e=[],t=[0],n=1;n<=eI;n++)t.push(-n);for(n=0;n<=eI;n++){var i=t.slice(0);i[0]=-n,e.push(i)}return e}var nI,iI=tI(),oI=tI(),rI=tI();function sI(e,t){if(t<0||t>=e.length)return!1;switch(e.charCodeAt(t)){case 95:case 45:case 46:case 32:case 47:case 92:case 39:case 34:case 58:case 36:return!0;default:return!1}}function aI(e,t,n){return t[e]!==n[e]}function uI(e,t,n,i,o,r,s){var a=e.length>eI?eI:e.length,u=i.length>eI?eI:i.length;if(!(n>=a||r>=u||a-n>u-r)&&function(e,t,n,i,o,r){for(;t<n&&o<r;)e[t]===i[o]&&(t+=1),o+=1;return t===n}(t,n,a,o,r,u)){var l=1,c=1,d=n,h=r;for(l=1,d=n;d<a;l++,d++)for(c=1,h=r;h<u;c++,h++){var p=lI(e,t,d,n,i,o,h);oI[l][c]=p;var f=iI[l-1][c-1]+(p>1?1:p),g=iI[l-1][c]+-1,m=iI[l][c-1]+-1;m>=g?m>f?(iI[l][c]=m,rI[l][c]=4):m===f?(iI[l][c]=m,rI[l][c]=6):(iI[l][c]=f,rI[l][c]=2):g>f?(iI[l][c]=g,rI[l][c]=1):g===f?(iI[l][c]=g,rI[l][c]=3):(iI[l][c]=f,rI[l][c]=2)}if(cI=0,hI=-100,pI=r,fI=s,function e(t,n,i,o,r){if(cI>=10||i<-25)return;var s=0;for(;t>0&&n>0;){var a=oI[t][n],u=rI[t][n];if(4===u)n-=1,r?i-=5:0!==o&&(i-=1),r=!1,s=0;else{if(!(2&u))return;if(4&u&&e(t,n-1,0!==o?i-1:i,o,r),i+=a,t-=1,n-=1,r=!0,o+=Math.pow(2,n+pI),1===a){if(s+=1,0===t&&!fI)return}else i+=1+s*(a-1),s=0}}cI+=1,(i-=n>=3?9:3*n)>hI&&(hI=i,dI=o)}(l-1,c-1,a===u?1:0,0,!1),0!==cI)return[hI,dI,r]}}function lI(e,t,n,i,o,r,s){return t[n]!==r[s]?-1:s===n-i?e[n]===o[s]?7:5:!aI(s,o,r)||0!==s&&aI(s-1,o,r)?!sI(r,s)||0!==s&&sI(r,s-1)?sI(r,s-1)||function(e,t){if(t<0||t>=e.length)return!1;switch(e.charCodeAt(t)){case 32:case 9:return!0;default:return!1}}(r,s-1)?5:1:5:e[n]===o[s]?7:5}!function(e){e.Default=Object.freeze([-100,0,0]),e.isDefault=function(e){return!e||-100===e[0]&&0===e[1]&&0===e[2]}}(nI||(nI={}));var cI=0,dI=0,hI=0,pI=0,fI=!1;function gI(e,t,n,i,o,r,s){return function(e,t,n,i,o,r,s,a){var u=uI(e,t,n,i,o,r,a);if(u&&!s)return u;if(e.length>=3)for(var l=Math.min(7,e.length-1),c=n+1;c<l;c++){var d=mI(e,c);if(d){var h=uI(d,d.toLowerCase(),n,i,o,r,a);h&&(h[0]-=3,(!u||h[0]>u[0])&&(u=h))}}return u}(e,t,n,i,o,r,!0,s)}function mI(e,t){if(!(t+1>=e.length)){var n=e[t],i=e[t+1];if(n!==i)return e.slice(0,t)+i+n+e.slice(t+2)}}var vI=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),_I=function(){return(_I=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},yI=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},bI=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},wI=function(){function e(e){this.trait=e,this.renderedElements=[]}return Object.defineProperty(e.prototype,"templateId",{get:function(){return"template:"+this.trait.trait},enumerable:!0,configurable:!0}),e.prototype.renderTemplate=function(e){return e},e.prototype.renderElement=function(e,t,n){var i=Pi(this.renderedElements,(function(e){return e.templateData===n}));if(i>=0){var o=this.renderedElements[i];this.trait.unrender(n),o.index=t}else{o={index:t,templateData:n};this.renderedElements.push(o)}this.trait.renderIndex(t,n)},e.prototype.splice=function(e,t,n){for(var i=[],o=0,r=this.renderedElements;o<r.length;o++){var s=r[o];s.index<e?i.push(s):s.index>=e+t&&i.push({index:s.index+n-t,templateData:s.templateData})}this.renderedElements=i},e.prototype.renderIndexes=function(e){for(var t=0,n=this.renderedElements;t<n.length;t++){var i=n[t],o=i.index,r=i.templateData;e.indexOf(o)>-1&&this.trait.renderIndex(o,r)}},e.prototype.disposeTemplate=function(e){var t=Pi(this.renderedElements,(function(t){return t.templateData===e}));t<0||this.renderedElements.splice(t,1)},e}(),CI=function(){function e(e){this._trait=e,this.indexes=[],this.sortedIndexes=[],this._onChange=new nt,this.onChange=this._onChange.event}return Object.defineProperty(e.prototype,"trait",{get:function(){return this._trait},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"renderer",{get:function(){return new wI(this)},enumerable:!0,configurable:!0}),e.prototype.splice=function(e,t,n){var i=n.length-t,o=e+t,r=bI(this.sortedIndexes.filter((function(t){return t<e})),n.map((function(t,n){return t?n+e:-1})).filter((function(e){return-1!==e})),this.sortedIndexes.filter((function(e){return e>=o})).map((function(e){return e+i})));this.renderer.splice(e,t,n.length),this._set(r,r)},e.prototype.renderIndex=function(e,t){so(t,this._trait,this.contains(e))},e.prototype.unrender=function(e){oo(e,this._trait)},e.prototype.set=function(e,t){return this._set(e,bI(e).sort(HI),t)},e.prototype._set=function(e,t,n){var i=this.indexes,o=this.sortedIndexes;this.indexes=e,this.sortedIndexes=t;var r=BI(o,e);return this.renderer.renderIndexes(r),this._onChange.fire({indexes:e,browserEvent:n}),i},e.prototype.get=function(){return this.indexes},e.prototype.contains=function(e){return Di(this.sortedIndexes,e,HI)>=0},e.prototype.dispose=function(){Ae(this._onChange)},yI([Vf],e.prototype,"renderer",null),e}(),SI=function(e){function t(){return e.call(this,"focused")||this}return vI(t,e),t.prototype.renderIndex=function(t,n){e.prototype.renderIndex.call(this,t,n),this.contains(t)?n.setAttribute("aria-selected","true"):n.removeAttribute("aria-selected")},t}(CI),LI=function(){function e(e,t,n){this.trait=e,this.view=t,this.identityProvider=n}return e.prototype.splice=function(e,t,n){var i=this;if(!this.identityProvider)return this.trait.splice(e,t,n.map((function(){return!1})));var o=this.trait.get().map((function(e){return i.identityProvider.getId(i.view.element(e)).toString()})),r=n.map((function(e){return o.indexOf(i.identityProvider.getId(e).toString())>-1}));this.trait.splice(e,t,r)},e}();function xI(e){return"INPUT"===e.tagName||"TEXTAREA"===e.tagName}var DI,NI=function(){function e(e,t,n){this.list=e,this.view=t,this.disposables=new Be;var i=!1!==n.multipleSelectionSupport;this.openController=n.openController||RI;var o=Ge.chain(Xn(t.domNode,"keydown")).filter((function(e){return!xI(e.target)})).map((function(e){return new ni(e)}));o.filter((function(e){return 3===e.keyCode})).on(this.onEnter,this,this.disposables),o.filter((function(e){return 16===e.keyCode})).on(this.onUpArrow,this,this.disposables),o.filter((function(e){return 18===e.keyCode})).on(this.onDownArrow,this,this.disposables),o.filter((function(e){return 11===e.keyCode})).on(this.onPageUpArrow,this,this.disposables),o.filter((function(e){return 12===e.keyCode})).on(this.onPageDownArrow,this,this.disposables),o.filter((function(e){return 9===e.keyCode})).on(this.onEscape,this,this.disposables),i&&o.filter((function(e){return(_?e.metaKey:e.ctrlKey)&&31===e.keyCode})).on(this.onCtrlA,this,this.disposables)}return e.prototype.onEnter=function(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection(this.list.getFocus(),e.browserEvent),this.openController.shouldOpen(e.browserEvent)&&this.list.open(this.list.getFocus(),e.browserEvent)},e.prototype.onUpArrow=function(e){e.preventDefault(),e.stopPropagation(),this.list.focusPrevious(1,!1,e.browserEvent),this.list.reveal(this.list.getFocus()[0]),this.view.domNode.focus()},e.prototype.onDownArrow=function(e){e.preventDefault(),e.stopPropagation(),this.list.focusNext(1,!1,e.browserEvent),this.list.reveal(this.list.getFocus()[0]),this.view.domNode.focus()},e.prototype.onPageUpArrow=function(e){e.preventDefault(),e.stopPropagation(),this.list.focusPreviousPage(e.browserEvent),this.list.reveal(this.list.getFocus()[0]),this.view.domNode.focus()},e.prototype.onPageDownArrow=function(e){e.preventDefault(),e.stopPropagation(),this.list.focusNextPage(e.browserEvent),this.list.reveal(this.list.getFocus()[0]),this.view.domNode.focus()},e.prototype.onCtrlA=function(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection(Wi(this.list.length),e.browserEvent),this.view.domNode.focus()},e.prototype.onEscape=function(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection([],e.browserEvent),this.view.domNode.focus()},e.prototype.dispose=function(){this.disposables.dispose()},e}();!function(e){e[e.Idle=0]="Idle",e[e.Typing=1]="Typing"}(DI||(DI={}));var kI=new(function(){function e(){}return e.prototype.mightProducePrintableCharacter=function(e){return!(e.ctrlKey||e.metaKey||e.altKey)&&(e.keyCode>=31&&e.keyCode<=56||e.keyCode>=21&&e.keyCode<=30||e.keyCode>=93&&e.keyCode<=102||e.keyCode>=80&&e.keyCode<=90)},e}()),EI=function(){function e(e,t,n,i){this.list=e,this.view=t,this.keyboardNavigationLabelProvider=n,this.delegate=i,this.enabled=!1,this.state=DI.Idle,this.automaticKeyboardNavigation=!0,this.triggered=!1,this.enabledDisposables=new Be,this.disposables=new Be,this.updateOptions(e.options)}return e.prototype.updateOptions=function(e){void 0===e.enableKeyboardNavigation||!!e.enableKeyboardNavigation?this.enable():this.disable(),void 0!==e.automaticKeyboardNavigation&&(this.automaticKeyboardNavigation=e.automaticKeyboardNavigation)},e.prototype.enable=function(){var e=this;if(!this.enabled){var t=Ge.chain(Xn(this.view.domNode,"keydown")).filter((function(e){return!xI(e.target)})).filter((function(){return e.automaticKeyboardNavigation||e.triggered})).map((function(e){return new ni(e)})).filter((function(t){return e.delegate.mightProducePrintableCharacter(t)})).forEach((function(e){e.stopPropagation(),e.preventDefault()})).map((function(e){return e.browserEvent.key})).event,n=Ge.debounce(t,(function(){return null}),800);Ge.reduce(Ge.any(t,n),(function(e,t){return null===t?null:(e||"")+t}))(this.onInput,this,this.enabledDisposables),this.enabled=!0,this.triggered=!1}},e.prototype.disable=function(){this.enabled&&(this.enabledDisposables.clear(),this.enabled=!1,this.triggered=!1)},e.prototype.onInput=function(e){if(!e)return this.state=DI.Idle,void(this.triggered=!1);var t=this.list.getFocus(),n=t.length>0?t[0]:0,i=this.state===DI.Idle?1:0;this.state=DI.Typing;for(var o=0;o<this.list.length;o++){var r=(n+o+i)%this.list.length,s=this.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(this.view.element(r)),a=s&&s.toString();if(void 0===a||FE(e,a))return this.list.setFocus([r]),void this.list.reveal(r)}},e.prototype.dispose=function(){this.disable(),this.enabledDisposables.dispose(),this.disposables.dispose()},e}(),II=function(){function e(e,t){this.list=e,this.view=t,this.disposables=new Be,Ge.chain(Xn(t.domNode,"keydown")).filter((function(e){return!xI(e.target)})).map((function(e){return new ni(e)})).filter((function(e){return!(2!==e.keyCode||e.ctrlKey||e.metaKey||e.shiftKey||e.altKey)})).on(this.onTab,this,this.disposables)}return e.prototype.onTab=function(e){if(e.target===this.view.domNode){var t=this.list.getFocus();if(0!==t.length){var n=this.view.domElement(t[0]);if(n){var i=n.querySelector("[tabIndex]");if(i&&i instanceof HTMLElement&&-1!==i.tabIndex){var o=window.getComputedStyle(i);"hidden"!==o.visibility&&"none"!==o.display&&(e.preventDefault(),e.stopPropagation(),i.focus())}}}}},e.prototype.dispose=function(){this.disposables.dispose()},e}();function OI(e){return _?e.browserEvent.metaKey:e.browserEvent.ctrlKey}function MI(e){return e.browserEvent.shiftKey}function TI(e){return e instanceof MouseEvent&&2===e.button}var PI={isSelectionSingleChangeEvent:OI,isSelectionRangeChangeEvent:MI},RI={shouldOpen:function(e){return!(e instanceof MouseEvent)||!TI(e)}},AI=function(){function e(e){this.list=e,this.disposables=new Be,this.multipleSelectionSupport=!(!1===e.options.multipleSelectionSupport),this.multipleSelectionSupport&&(this.multipleSelectionController=e.options.multipleSelectionController||PI),this.openController=e.options.openController||RI,this.mouseSupport=void 0===e.options.mouseSupport||!!e.options.mouseSupport,this.mouseSupport&&(e.onMouseDown(this.onMouseDown,this,this.disposables),e.onContextMenu(this.onContextMenu,this,this.disposables),e.onMouseDblClick(this.onDoubleClick,this,this.disposables),e.onTouchStart(this.onMouseDown,this,this.disposables),this.disposables.add(jf.addTarget(e.getHTMLElement()))),e.onMouseClick(this.onPointer,this,this.disposables),e.onMouseMiddleClick(this.onPointer,this,this.disposables),e.onTap(this.onPointer,this,this.disposables)}return e.prototype.isSelectionSingleChangeEvent=function(e){return this.multipleSelectionController?this.multipleSelectionController.isSelectionSingleChangeEvent(e):_?e.browserEvent.metaKey:e.browserEvent.ctrlKey},e.prototype.isSelectionRangeChangeEvent=function(e){return this.multipleSelectionController?this.multipleSelectionController.isSelectionRangeChangeEvent(e):e.browserEvent.shiftKey},e.prototype.isSelectionChangeEvent=function(e){return this.isSelectionSingleChangeEvent(e)||this.isSelectionRangeChangeEvent(e)},e.prototype.onMouseDown=function(e){document.activeElement!==e.browserEvent.target&&this.list.domFocus()},e.prototype.onContextMenu=function(e){var t=void 0===e.index?[]:[e.index];this.list.setFocus(t,e.browserEvent)},e.prototype.onPointer=function(e){if(this.mouseSupport&&!xI(e.browserEvent.target)){var t=this.list.getFocus()[0],n=this.list.getSelection();t=void 0===t?n[0]:t;var i=e.index;if(void 0===i)return this.list.setFocus([],e.browserEvent),void this.list.setSelection([],e.browserEvent);if(this.multipleSelectionSupport&&this.isSelectionRangeChangeEvent(e))return this.changeSelection(e,t);if(this.multipleSelectionSupport&&this.isSelectionChangeEvent(e))return this.changeSelection(e,t);this.list.setFocus([i],e.browserEvent),TI(e.browserEvent)||(this.list.setSelection([i],e.browserEvent),this.openController.shouldOpen(e.browserEvent)&&this.list.open([i],e.browserEvent))}},e.prototype.onDoubleClick=function(e){if(!(xI(e.browserEvent.target)||this.multipleSelectionSupport&&this.isSelectionChangeEvent(e))){var t=this.list.getFocus();this.list.setSelection(t,e.browserEvent),this.list.pin(t)}},e.prototype.changeSelection=function(e,t){var n=e.index;if(this.isSelectionRangeChangeEvent(e)&&void 0!==t){var i=Wi(Math.min(t,n),Math.max(t,n)+1),o=function(e,t){var n=e.indexOf(t);if(-1===n)return[];var i=[],o=n-1;for(;o>=0&&e[o]===t-(n-o);)i.push(e[o--]);i.reverse(),o=n;for(;o<e.length&&e[o]===t+(o-n);)i.push(e[o++]);return i}(BI(s=this.list.getSelection(),[t]),t);if(0===o.length)return;var r=BI(i,function(e,t){var n=[],i=0,o=0;for(;i<e.length||o<t.length;)if(i>=e.length)n.push(t[o++]);else if(o>=t.length)n.push(e[i++]);else{if(e[i]===t[o]){i++,o++;continue}e[i]<t[o]?n.push(e[i++]):o++}return n}(s,o));this.list.setSelection(r,e.browserEvent)}else if(this.isSelectionSingleChangeEvent(e)){var s;r=(s=this.list.getSelection()).filter((function(e){return e!==n}));this.list.setFocus([n]),s.length===r.length?this.list.setSelection(bI(r,[n]),e.browserEvent):this.list.setSelection(r,e.browserEvent)}},e.prototype.dispose=function(){this.disposables.dispose()},e}(),FI=function(){function e(e,t){this.styleElement=e,this.selectorSuffix=t}return e.prototype.style=function(e){var t=this.selectorSuffix&&"."+this.selectorSuffix,n=[];e.listBackground&&(e.listBackground.isOpaque()?n.push(".monaco-list"+t+" .monaco-list-rows { background: "+e.listBackground+"; }"):_||console.warn("List with id '"+this.selectorSuffix+"' was styled with a non-opaque background color. This will break sub-pixel antialiasing.")),e.listFocusBackground&&(n.push(".monaco-list"+t+":focus .monaco-list-row.focused { background-color: "+e.listFocusBackground+"; }"),n.push(".monaco-list"+t+":focus .monaco-list-row.focused:hover { background-color: "+e.listFocusBackground+"; }")),e.listFocusForeground&&n.push(".monaco-list"+t+":focus .monaco-list-row.focused { color: "+e.listFocusForeground+"; }"),e.listActiveSelectionBackground&&(n.push(".monaco-list"+t+":focus .monaco-list-row.selected { background-color: "+e.listActiveSelectionBackground+"; }"),n.push(".monaco-list"+t+":focus .monaco-list-row.selected:hover { background-color: "+e.listActiveSelectionBackground+"; }")),e.listActiveSelectionForeground&&n.push(".monaco-list"+t+":focus .monaco-list-row.selected { color: "+e.listActiveSelectionForeground+"; }"),e.listFocusAndSelectionBackground&&n.push("\n\t\t\t\t.monaco-drag-image,\n\t\t\t\t.monaco-list"+t+":focus .monaco-list-row.selected.focused { background-color: "+e.listFocusAndSelectionBackground+"; }\n\t\t\t"),e.listFocusAndSelectionForeground&&n.push("\n\t\t\t\t.monaco-drag-image,\n\t\t\t\t.monaco-list"+t+":focus .monaco-list-row.selected.focused { color: "+e.listFocusAndSelectionForeground+"; }\n\t\t\t"),e.listInactiveFocusBackground&&(n.push(".monaco-list"+t+" .monaco-list-row.focused { background-color: "+e.listInactiveFocusBackground+"; }"),n.push(".monaco-list"+t+" .monaco-list-row.focused:hover { background-color: "+e.listInactiveFocusBackground+"; }")),e.listInactiveSelectionBackground&&(n.push(".monaco-list"+t+" .monaco-list-row.selected { background-color: "+e.listInactiveSelectionBackground+"; }"),n.push(".monaco-list"+t+" .monaco-list-row.selected:hover { background-color: "+e.listInactiveSelectionBackground+"; }")),e.listInactiveSelectionForeground&&n.push(".monaco-list"+t+" .monaco-list-row.selected { color: "+e.listInactiveSelectionForeground+"; }"),e.listHoverBackground&&n.push(".monaco-list"+t+":not(.drop-target) .monaco-list-row:hover:not(.selected):not(.focused) { background-color: "+e.listHoverBackground+"; }"),e.listHoverForeground&&n.push(".monaco-list"+t+" .monaco-list-row:hover:not(.selected):not(.focused) { color: "+e.listHoverForeground+"; }"),e.listSelectionOutline&&n.push(".monaco-list"+t+" .monaco-list-row.selected { outline: 1px dotted "+e.listSelectionOutline+"; outline-offset: -1px; }"),e.listFocusOutline&&n.push("\n\t\t\t\t.monaco-drag-image,\n\t\t\t\t.monaco-list"+t+":focus .monaco-list-row.focused { outline: 1px solid "+e.listFocusOutline+"; outline-offset: -1px; }\n\t\t\t"),e.listInactiveFocusOutline&&n.push(".monaco-list"+t+" .monaco-list-row.focused { outline: 1px dotted "+e.listInactiveFocusOutline+"; outline-offset: -1px; }"),e.listHoverOutline&&n.push(".monaco-list"+t+" .monaco-list-row:hover { outline: 1px dashed "+e.listHoverOutline+"; outline-offset: -1px; }"),e.listDropBackground&&n.push("\n\t\t\t\t.monaco-list"+t+".drop-target,\n\t\t\t\t.monaco-list"+t+" .monaco-list-rows.drop-target,\n\t\t\t\t.monaco-list"+t+" .monaco-list-row.drop-target { background-color: "+e.listDropBackground+" !important; color: inherit !important; }\n\t\t\t"),e.listFilterWidgetBackground&&n.push(".monaco-list-type-filter { background-color: "+e.listFilterWidgetBackground+" }"),e.listFilterWidgetOutline&&n.push(".monaco-list-type-filter { border: 1px solid "+e.listFilterWidgetOutline+"; }"),e.listFilterWidgetNoMatchesOutline&&n.push(".monaco-list-type-filter.no-matches { border: 1px solid "+e.listFilterWidgetNoMatchesOutline+"; }"),e.listMatchesShadow&&n.push(".monaco-list-type-filter { box-shadow: 1px 1px 1px "+e.listMatchesShadow+"; }");var i=n.join("\n");i!==this.styleElement.innerHTML&&(this.styleElement.innerHTML=i)},e}(),WI={listFocusBackground:mv.fromHex("#7FB0D0"),listActiveSelectionBackground:mv.fromHex("#0E639C"),listActiveSelectionForeground:mv.fromHex("#FFFFFF"),listFocusAndSelectionBackground:mv.fromHex("#094771"),listFocusAndSelectionForeground:mv.fromHex("#FFFFFF"),listInactiveSelectionBackground:mv.fromHex("#3F3F46"),listHoverBackground:mv.fromHex("#2A2D2E"),listDropBackground:mv.fromHex("#383B3D"),treeIndentGuidesStroke:mv.fromHex("#a9a9a9")},VI={keyboardSupport:!0,mouseSupport:!0,multipleSelectionSupport:!0,dnd:{getDragURI:function(){return null},onDragStart:function(){},onDragOver:function(){return!1},drop:function(){}},ariaRootRole:dE.TREE};function BI(e,t){for(var n=[],i=0,o=0;i<e.length||o<t.length;)if(i>=e.length)n.push(t[o++]);else if(o>=t.length)n.push(e[i++]);else{if(e[i]===t[o]){n.push(e[i]),i++,o++;continue}e[i]<t[o]?n.push(e[i++]):n.push(t[o++])}return n}var HI=function(e,t){return e-t},zI=function(){function e(e,t){this._templateId=e,this.renderers=t}return Object.defineProperty(e.prototype,"templateId",{get:function(){return this._templateId},enumerable:!0,configurable:!0}),e.prototype.renderTemplate=function(e){return this.renderers.map((function(t){return t.renderTemplate(e)}))},e.prototype.renderElement=function(e,t,n,i){for(var o=0,r=0,s=this.renderers;r<s.length;r++){s[r].renderElement(e,t,n[o++],i)}},e.prototype.disposeElement=function(e,t,n,i){for(var o=0,r=0,s=this.renderers;r<s.length;r++){var a=s[r];a.disposeElement&&a.disposeElement(e,t,n[o],i),o+=1}},e.prototype.disposeTemplate=function(e){for(var t=0,n=0,i=this.renderers;n<i.length;n++){i[n].disposeTemplate(e[t++])}},e}(),jI=function(){function e(e){this.accessibilityProvider=e,this.templateId="a18n"}return e.prototype.renderTemplate=function(e){return e},e.prototype.renderElement=function(e,t,n){var i=this.accessibilityProvider.getAriaLabel(e);i?n.setAttribute("aria-label",i):n.removeAttribute("aria-label");var o=this.accessibilityProvider.getAriaLevel&&this.accessibilityProvider.getAriaLevel(e);"number"==typeof o?n.setAttribute("aria-level",""+o):n.removeAttribute("aria-level")},e.prototype.disposeTemplate=function(e){},e}(),UI=function(){function e(e,t){this.list=e,this.dnd=t}return e.prototype.getDragElements=function(e){var t=this.list.getSelectedElements();return t.indexOf(e)>-1?t:[e]},e.prototype.getDragURI=function(e){return this.dnd.getDragURI(e)},e.prototype.getDragLabel=function(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e,t)},e.prototype.onDragStart=function(e,t){this.dnd.onDragStart&&this.dnd.onDragStart(e,t)},e.prototype.onDragOver=function(e,t,n,i){return this.dnd.onDragOver(e,t,n,i)},e.prototype.onDragEnd=function(e){this.dnd.onDragEnd&&this.dnd.onDragEnd(e)},e.prototype.drop=function(e,t,n,i){this.dnd.drop(e,t,n,i)},e}(),KI=function(){function e(e,t,n,i,o){void 0===o&&(o=VI),this.user=e,this._options=o,this.eventBufferer=new rt,this.disposables=new Be,this._onDidOpen=new nt,this.onDidOpen=this._onDidOpen.event,this._onDidPin=new nt,this.didJustPressContextMenuKey=!1,this._onDidDispose=new nt,this.onDidDispose=this._onDidDispose.event,this.focus=new SI,this.selection=new CI("selected"),ka(o,WI,!1);var s=[this.focus.renderer,this.selection.renderer];this.accessibilityProvider=o.accessibilityProvider,this.accessibilityProvider&&(s.push(new jI(this.accessibilityProvider)),this.accessibilityProvider.onDidChangeActiveDescendant&&this.accessibilityProvider.onDidChangeActiveDescendant(this.onDidChangeActiveDescendant,this,this.disposables)),i=i.map((function(e){return new zI(e.templateId,bI(s,[e]))}));var a=_I(_I({},o),{dnd:o.dnd&&new UI(this,o.dnd)});if(this.view=new TE(t,n,i,a),"string"!=typeof o.ariaRole?this.view.domNode.setAttribute("role",dE.TREE):this.view.domNode.setAttribute("role",o.ariaRole),o.styleController)this.styleController=o.styleController(this.view.domId);else{var u=zo(this.view.domNode);this.styleController=new FI(u,this.view.domId)}if(this.spliceable=new PE([new LI(this.focus,this.view,o.identityProvider),new LI(this.selection,this.view,o.identityProvider),this.view]),this.disposables.add(this.focus),this.disposables.add(this.selection),this.disposables.add(this.view),this.disposables.add(this._onDidDispose),this.onDidFocus=Ge.map(Xn(this.view.domNode,"focus",!0),(function(){return null})),this.onDidBlur=Ge.map(Xn(this.view.domNode,"blur",!0),(function(){return null})),this.disposables.add(new II(this,this.view)),"boolean"!=typeof o.keyboardSupport||o.keyboardSupport){var l=new NI(this,this.view,o);this.disposables.add(l)}if(o.keyboardNavigationLabelProvider){var c=o.keyboardNavigationDelegate||kI;this.typeLabelController=new EI(this,this.view,o.keyboardNavigationLabelProvider,c),this.disposables.add(this.typeLabelController)}this.disposables.add(this.createMouseController(o)),this.onFocusChange(this._onFocusChange,this,this.disposables),this.onSelectionChange(this._onSelectionChange,this,this.disposables),o.ariaLabel&&this.view.domNode.setAttribute("aria-label",r("aria list","{0}. Use the navigation keys to navigate.",o.ariaLabel))}return Object.defineProperty(e.prototype,"onFocusChange",{get:function(){var e=this;return Ge.map(this.eventBufferer.wrapEvent(this.focus.onChange),(function(t){return e.toListEvent(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onSelectionChange",{get:function(){var e=this;return Ge.map(this.eventBufferer.wrapEvent(this.selection.onChange),(function(t){return e.toListEvent(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"domId",{get:function(){return this.view.domId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMouseClick",{get:function(){return this.view.onMouseClick},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMouseDblClick",{get:function(){return this.view.onMouseDblClick},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMouseMiddleClick",{get:function(){return this.view.onMouseMiddleClick},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMouseDown",{get:function(){return this.view.onMouseDown},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onTouchStart",{get:function(){return this.view.onTouchStart},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onTap",{get:function(){return this.view.onTap},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onContextMenu",{get:function(){var e=this,t=Ge.chain(Xn(this.view.domNode,"keydown")).map((function(e){return new ni(e)})).filter((function(t){return e.didJustPressContextMenuKey=58===t.keyCode||t.shiftKey&&68===t.keyCode})).filter((function(e){return e.preventDefault(),e.stopPropagation(),!1})).event,n=Ge.chain(Xn(this.view.domNode,"keyup")).filter((function(){var t=e.didJustPressContextMenuKey;return e.didJustPressContextMenuKey=!1,t})).filter((function(){return e.getFocus().length>0&&!!e.view.domElement(e.getFocus()[0])})).map((function(t){var n=e.getFocus()[0];return{index:n,element:e.view.element(n),anchor:e.view.domElement(n),browserEvent:t}})).event,i=Ge.chain(this.view.onContextMenu).filter((function(){return!e.didJustPressContextMenuKey})).map((function(e){var t=e.element,n=e.index,i=e.browserEvent;return{element:t,index:n,anchor:{x:i.clientX+1,y:i.clientY},browserEvent:i}})).event;return Ge.any(t,n,i)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onKeyDown",{get:function(){return Xn(this.view.domNode,"keydown")},enumerable:!0,configurable:!0}),e.prototype.createMouseController=function(e){return new AI(this)},e.prototype.updateOptions=function(e){void 0===e&&(e={}),this._options=_I(_I({},this._options),e),this.typeLabelController&&this.typeLabelController.updateOptions(this._options)},Object.defineProperty(e.prototype,"options",{get:function(){return this._options},enumerable:!0,configurable:!0}),e.prototype.splice=function(e,t,n){var i=this;if(void 0===n&&(n=[]),e<0||e>this.view.length)throw new wE(this.user,"Invalid start index: "+e);if(t<0)throw new wE(this.user,"Invalid delete count: "+t);0===t&&0===n.length||this.eventBufferer.bufferEvents((function(){return i.spliceable.splice(e,t,n)}))},e.prototype.rerender=function(){this.view.rerender()},e.prototype.element=function(e){return this.view.element(e)},Object.defineProperty(e.prototype,"length",{get:function(){return this.view.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"contentHeight",{get:function(){return this.view.contentHeight},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"scrollTop",{get:function(){return this.view.getScrollTop()},set:function(e){this.view.setScrollTop(e)},enumerable:!0,configurable:!0}),e.prototype.domFocus=function(){this.view.domNode.focus()},e.prototype.layout=function(e,t){this.view.layout(e,t)},e.prototype.setSelection=function(e,t){for(var n=0,i=e;n<i.length;n++){var o=i[n];if(o<0||o>=this.length)throw new wE(this.user,"Invalid index "+o)}this.selection.set(e,t)},e.prototype.getSelection=function(){return this.selection.get()},e.prototype.getSelectedElements=function(){var e=this;return this.getSelection().map((function(t){return e.view.element(t)}))},e.prototype.setFocus=function(e,t){for(var n=0,i=e;n<i.length;n++){var o=i[n];if(o<0||o>=this.length)throw new wE(this.user,"Invalid index "+o)}this.focus.set(e,t)},e.prototype.focusNext=function(e,t,n,i){if(void 0===e&&(e=1),void 0===t&&(t=!1),0!==this.length){var o=this.focus.get(),r=this.findNextIndex(o.length>0?o[0]+e:0,t,i);r>-1&&this.setFocus([r],n)}},e.prototype.focusPrevious=function(e,t,n,i){if(void 0===e&&(e=1),void 0===t&&(t=!1),0!==this.length){var o=this.focus.get(),r=this.findPreviousIndex(o.length>0?o[0]-e:0,t,i);r>-1&&this.setFocus([r],n)}},e.prototype.focusNextPage=function(e,t){var n=this,i=this.view.indexAt(this.view.getScrollTop()+this.view.renderHeight);i=0===i?0:i-1;var o=this.view.element(i),r=this.getFocusedElements()[0];if(r!==o){var s=this.findPreviousIndex(i,!1,t);s>-1&&r!==this.view.element(s)?this.setFocus([s],e):this.setFocus([i],e)}else{var a=this.view.getScrollTop();this.view.setScrollTop(a+this.view.renderHeight-this.view.elementHeight(i)),this.view.getScrollTop()!==a&&setTimeout((function(){return n.focusNextPage(e,t)}),0)}},e.prototype.focusPreviousPage=function(e,t){var n,i=this,o=this.view.getScrollTop();n=0===o?this.view.indexAt(o):this.view.indexAfter(o-1);var r=this.view.element(n),s=this.getFocusedElements()[0];if(s!==r){var a=this.findNextIndex(n,!1,t);a>-1&&s!==this.view.element(a)?this.setFocus([a],e):this.setFocus([n],e)}else{var u=o;this.view.setScrollTop(o-this.view.renderHeight),this.view.getScrollTop()!==u&&setTimeout((function(){return i.focusPreviousPage(e,t)}),0)}},e.prototype.focusLast=function(e,t){if(0!==this.length){var n=this.findPreviousIndex(this.length-1,!1,t);n>-1&&this.setFocus([n],e)}},e.prototype.focusFirst=function(e,t){if(0!==this.length){var n=this.findNextIndex(0,!1,t);n>-1&&this.setFocus([n],e)}},e.prototype.findNextIndex=function(e,t,n){void 0===t&&(t=!1);for(var i=0;i<this.length;i++){if(e>=this.length&&!t)return-1;if(e%=this.length,!n||n(this.element(e)))return e;e++}return-1},e.prototype.findPreviousIndex=function(e,t,n){void 0===t&&(t=!1);for(var i=0;i<this.length;i++){if(e<0&&!t)return-1;if(e=(this.length+e%this.length)%this.length,!n||n(this.element(e)))return e;e--}return-1},e.prototype.getFocus=function(){return this.focus.get()},e.prototype.getFocusedElements=function(){var e=this;return this.getFocus().map((function(t){return e.view.element(t)}))},e.prototype.reveal=function(e,t){if(e<0||e>=this.length)throw new wE(this.user,"Invalid index "+e);var n=this.view.getScrollTop(),i=this.view.elementTop(e),o=this.view.elementHeight(e);if(Ws(t)){var r=o-this.view.renderHeight;this.view.setScrollTop(r*RE(t,0,1)+i)}else{var s=i+o,a=n+this.view.renderHeight;i<n&&s>=a||(i<n?this.view.setScrollTop(i):s>=a&&this.view.setScrollTop(s-this.view.renderHeight))}},e.prototype.getRelativeTop=function(e){if(e<0||e>=this.length)throw new wE(this.user,"Invalid index "+e);var t=this.view.getScrollTop(),n=this.view.elementTop(e),i=this.view.elementHeight(e);if(n<t||n+i>t+this.view.renderHeight)return null;var o=i-this.view.renderHeight;return Math.abs((t-n)/o)},e.prototype.getHTMLElement=function(){return this.view.domNode},e.prototype.open=function(e,t){for(var n=this,i=0,o=e;i<o.length;i++){var r=o[i];if(r<0||r>=this.length)throw new wE(this.user,"Invalid index "+r)}this._onDidOpen.fire({indexes:e,elements:e.map((function(e){return n.view.element(e)})),browserEvent:t})},e.prototype.pin=function(e,t){for(var n=this,i=0,o=e;i<o.length;i++){var r=o[i];if(r<0||r>=this.length)throw new wE(this.user,"Invalid index "+r)}this._onDidPin.fire({indexes:e,elements:e.map((function(e){return n.view.element(e)})),browserEvent:t})},e.prototype.style=function(e){this.styleController.style(e)},e.prototype.toListEvent=function(e){var t=this,n=e.indexes,i=e.browserEvent;return{indexes:n,elements:n.map((function(e){return t.view.element(e)})),browserEvent:i}},e.prototype._onFocusChange=function(){var e=this.focus.get();so(this.view.domNode,"element-focused",e.length>0),this.onDidChangeActiveDescendant()},e.prototype.onDidChangeActiveDescendant=function(){var e,t=this.focus.get();if(t.length>0){var n=void 0;(null===(e=this.accessibilityProvider)||void 0===e?void 0:e.getActiveDescendantId)&&(n=this.accessibilityProvider.getActiveDescendantId(this.view.element(t[0]))),this.view.domNode.setAttribute("aria-activedescendant",n||this.view.getElementDomId(t[0]))}else this.view.domNode.removeAttribute("aria-activedescendant")},e.prototype._onSelectionChange=function(){var e=this.selection.get();so(this.view.domNode,"selection-none",0===e.length),so(this.view.domNode,"selection-single",1===e.length),so(this.view.domNode,"selection-multiple",e.length>1)},e.prototype.dispose=function(){this._onDidDispose.fire(),this.disposables.dispose(),this._onDidOpen.dispose(),this._onDidPin.dispose(),this._onDidDispose.dispose()},yI([Vf],e.prototype,"onFocusChange",null),yI([Vf],e.prototype,"onSelectionChange",null),yI([Vf],e.prototype,"onContextMenu",null),e}(),qI=(n(397),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),GI=function(e){function t(t,n){return e.call(this,"TreeError ["+t+"] "+n)||this}return qI(t,e),t}(Error),ZI=function(){function e(e){this.fn=e,this._map=new WeakMap}return e.prototype.map=function(e){var t=this._map.get(e);return t||(t=this.fn(e),this._map.set(e,t)),t},e}(),YI=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i};function XI(e){return"object"==typeof e&&"visibility"in e&&"data"in e}function $I(e){switch(e){case!0:return 1;case!1:return 0;default:return e}}function QI(e){return"boolean"==typeof e.collapsible}var JI=function(){function e(e,t,n,i){void 0===i&&(i={}),this.user=e,this.list=t,this.rootRef=[],this.eventBufferer=new rt,this._onDidChangeCollapseState=new nt,this.onDidChangeCollapseState=this.eventBufferer.wrapEvent(this._onDidChangeCollapseState.event),this._onDidChangeRenderNodeCount=new nt,this.onDidChangeRenderNodeCount=this.eventBufferer.wrapEvent(this._onDidChangeRenderNodeCount.event),this._onDidSplice=new nt,this.onDidSplice=this._onDidSplice.event,this.collapseByDefault=void 0!==i.collapseByDefault&&i.collapseByDefault,this.filter=i.filter,this.autoExpandSingleChildren=void 0!==i.autoExpandSingleChildren&&i.autoExpandSingleChildren,this.root={parent:void 0,element:n,children:[],depth:0,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:!1,collapsed:!1,renderNodeCount:0,visible:!0,filterData:void 0}}return e.prototype.splice=function(e,t,n,i,o){var r,s=this;if(0===e.length)throw new GI(this.user,"Invalid tree location");for(var a=this.getParentNodeWithListIndex(e),u=a.parentNode,l=a.listIndex,c=a.revealed,d=a.visible,h=[],p=Ve.map(Ve.from(n),(function(e){return s.createTreeNode(e,u,u.visible?1:0,c,h,i)})),f=e[e.length-1],g=0,m=f;m>=0&&m<u.children.length;m--){if((L=u.children[m]).visible){g=L.visibleChildIndex;break}}var v=[],_=0,y=0;Ve.forEach(p,(function(e){v.push(e),y+=e.renderNodeCount,e.visible&&(e.visibleChildIndex=g+_++)}));for(var b=(r=u.children).splice.apply(r,YI([f,t],v)),w=0,C=0,S=b;C<S.length;C++){(L=S[C]).visible&&w++}if(0!==w)for(m=f+v.length;m<u.children.length;m++){var L;(L=u.children[m]).visible&&(L.visibleChildIndex-=w)}if(u.visibleChildrenCount+=_-w,c&&d){var x=b.reduce((function(e,t){return e+(t.visible?t.renderNodeCount:0)}),0);this._updateAncestorsRenderNodeCount(u,y-x),this.list.splice(l,x,h)}if(b.length>0&&o){var D=function(e){o(e),e.children.forEach(D)};b.forEach(D)}this._onDidSplice.fire({insertedNodes:v,deletedNodes:b})},e.prototype.rerender=function(e){if(0===e.length)throw new GI(this.user,"Invalid tree location");var t=this.getTreeNodeWithListIndex(e),n=t.node,i=t.listIndex;t.revealed&&this.list.splice(i,1,[n])},e.prototype.has=function(e){return this.hasTreeNode(e)},e.prototype.getListIndex=function(e){var t=this.getTreeNodeWithListIndex(e),n=t.listIndex,i=t.visible,o=t.revealed;return i&&o?n:-1},e.prototype.getListRenderCount=function(e){return this.getTreeNode(e).renderNodeCount},e.prototype.isCollapsible=function(e){return this.getTreeNode(e).collapsible},e.prototype.setCollapsible=function(e,t){var n=this,i=this.getTreeNode(e);void 0===t&&(t=!i.collapsible);var o={collapsible:t};return this.eventBufferer.bufferEvents((function(){return n._setCollapseState(e,o)}))},e.prototype.isCollapsed=function(e){return this.getTreeNode(e).collapsed},e.prototype.setCollapsed=function(e,t,n){var i=this,o=this.getTreeNode(e);void 0===t&&(t=!o.collapsed);var r={collapsed:t,recursive:n||!1};return this.eventBufferer.bufferEvents((function(){return i._setCollapseState(e,r)}))},e.prototype._setCollapseState=function(e,t){var n=this.getTreeNodeWithListIndex(e),i=n.node,o=n.listIndex,r=n.revealed,s=this._setListNodeCollapseState(i,o,r,t);if(i!==this.root&&this.autoExpandSingleChildren&&s&&!QI(t)&&i.collapsible&&!i.collapsed&&!t.recursive){for(var a=-1,u=0;u<i.children.length;u++){if(i.children[u].visible){if(a>-1){a=-1;break}a=u}}a>-1&&this._setCollapseState(YI(e,[a]),t)}return s},e.prototype._setListNodeCollapseState=function(e,t,n,i){var o=this._setNodeCollapseState(e,i,!1);if(!n||!e.visible||!o)return o;var r=e.renderNodeCount,s=this.updateNodeAfterCollapseChange(e),a=r-(-1===t?0:1);return this.list.splice(t+1,a,s.slice(1)),o},e.prototype._setNodeCollapseState=function(e,t,n){var i;if(e===this.root?i=!1:(QI(t)?(i=e.collapsible!==t.collapsible,e.collapsible=t.collapsible):e.collapsible?(i=e.collapsed!==t.collapsed,e.collapsed=t.collapsed):i=!1,i&&this._onDidChangeCollapseState.fire({node:e,deep:n})),!QI(t)&&t.recursive)for(var o=0,r=e.children;o<r.length;o++){var s=r[o];i=this._setNodeCollapseState(s,t,!0)||i}return i},e.prototype.expandTo=function(e){var t=this;this.eventBufferer.bufferEvents((function(){for(var n=t.getTreeNode(e);n.parent;)n=n.parent,e=e.slice(0,e.length-1),n.collapsed&&t._setCollapseState(e,{collapsed:!1,recursive:!1})}))},e.prototype.refilter=function(){var e=this.root.renderNodeCount,t=this.updateNodeAfterFilterChange(this.root);this.list.splice(0,e,t)},e.prototype.createTreeNode=function(e,t,n,i,o,r){var s=this,a={parent:t,element:e.element,children:[],depth:t.depth+1,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:"boolean"==typeof e.collapsible?e.collapsible:void 0!==e.collapsed,collapsed:void 0===e.collapsed?this.collapseByDefault:e.collapsed,renderNodeCount:1,visible:!0,filterData:void 0},u=this._filterNode(a,n);i&&o.push(a);var l=Ve.from(e.children),c=i&&0!==u&&!a.collapsed,d=Ve.map(l,(function(e){return s.createTreeNode(e,a,u,c,o,r)})),h=0,p=1;return Ve.forEach(d,(function(e){a.children.push(e),p+=e.renderNodeCount,e.visible&&(e.visibleChildIndex=h++)})),a.collapsible=a.collapsible||a.children.length>0,a.visibleChildrenCount=h,a.visible=2===u?h>0:1===u,a.visible?a.collapsed||(a.renderNodeCount=p):(a.renderNodeCount=0,i&&o.pop()),r&&r(a),a},e.prototype.updateNodeAfterCollapseChange=function(e){var t=e.renderNodeCount,n=[];return this._updateNodeAfterCollapseChange(e,n),this._updateAncestorsRenderNodeCount(e.parent,n.length-t),n},e.prototype._updateNodeAfterCollapseChange=function(e,t){if(!1===e.visible)return 0;if(t.push(e),e.renderNodeCount=1,!e.collapsed)for(var n=0,i=e.children;n<i.length;n++){var o=i[n];e.renderNodeCount+=this._updateNodeAfterCollapseChange(o,t)}return this._onDidChangeRenderNodeCount.fire(e),e.renderNodeCount},e.prototype.updateNodeAfterFilterChange=function(e){var t=e.renderNodeCount,n=[];return this._updateNodeAfterFilterChange(e,e.visible?1:0,n),this._updateAncestorsRenderNodeCount(e.parent,n.length-t),n},e.prototype._updateNodeAfterFilterChange=function(e,t,n,i){var o;if(void 0===i&&(i=!0),e!==this.root){if(0===(o=this._filterNode(e,t)))return e.visible=!1,e.renderNodeCount=0,!1;i&&n.push(e)}var r=n.length;e.renderNodeCount=e===this.root?0:1;var s=!1;if(e.collapsed&&0===o)e.visibleChildrenCount=0;else{for(var a=0,u=0,l=e.children;u<l.length;u++){var c=l[u];s=this._updateNodeAfterFilterChange(c,o,n,i&&!e.collapsed)||s,c.visible&&(c.visibleChildIndex=a++)}e.visibleChildrenCount=a}return e!==this.root&&(e.visible=2===o?s:1===o),e.visible?e.collapsed||(e.renderNodeCount+=n.length-r):(e.renderNodeCount=0,i&&n.pop()),this._onDidChangeRenderNodeCount.fire(e),e.visible},e.prototype._updateAncestorsRenderNodeCount=function(e,t){if(0!==t)for(;e;)e.renderNodeCount+=t,this._onDidChangeRenderNodeCount.fire(e),e=e.parent},e.prototype._filterNode=function(e,t){var n=this.filter?this.filter.filter(e.element,t):1;return"boolean"==typeof n?(e.filterData=void 0,n?1:0):XI(n)?(e.filterData=n.data,$I(n.visibility)):(e.filterData=void 0,$I(n))},e.prototype.hasTreeNode=function(e,t){if(void 0===t&&(t=this.root),!e||0===e.length)return!0;var n=e[0],i=e.slice(1);return!(n<0||n>t.children.length)&&this.hasTreeNode(i,t.children[n])},e.prototype.getTreeNode=function(e,t){if(void 0===t&&(t=this.root),!e||0===e.length)return t;var n=e[0],i=e.slice(1);if(n<0||n>t.children.length)throw new GI(this.user,"Invalid tree location");return this.getTreeNode(i,t.children[n])},e.prototype.getTreeNodeWithListIndex=function(e){if(0===e.length)return{node:this.root,listIndex:-1,revealed:!0,visible:!1};var t=this.getParentNodeWithListIndex(e),n=t.parentNode,i=t.listIndex,o=t.revealed,r=t.visible,s=e[e.length-1];if(s<0||s>n.children.length)throw new GI(this.user,"Invalid tree location");var a=n.children[s];return{node:a,listIndex:i,revealed:o,visible:r&&a.visible}},e.prototype.getParentNodeWithListIndex=function(e,t,n,i,o){void 0===t&&(t=this.root),void 0===n&&(n=0),void 0===i&&(i=!0),void 0===o&&(o=!0);var r=e[0],s=e.slice(1);if(r<0||r>t.children.length)throw new GI(this.user,"Invalid tree location");for(var a=0;a<r;a++)n+=t.children[a].renderNodeCount;return i=i&&!t.collapsed,o=o&&t.visible,0===s.length?{parentNode:t,listIndex:n,revealed:i,visible:o}:this.getParentNodeWithListIndex(s,t.children[r],n+1,i,o)},e.prototype.getNode=function(e){return void 0===e&&(e=[]),this.getTreeNode(e)},e.prototype.getNodeLocation=function(e){for(var t=[],n=e;n.parent;)t.push(n.parent.children.indexOf(n)),n=n.parent;return t.reverse()},e.prototype.getParentNodeLocation=function(e){return 0===e.length?void 0:1===e.length?[]:function(e){if(0===e.length)throw new Error("Invalid tail call");return[e.slice(0,e.length-1),e[e.length-1]]}(e)[0]},e}(),eO=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),tO=function(){return(tO=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},nO=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},iO=function(e){function t(t){var n=e.call(this,t.elements.map((function(e){return e.element})))||this;return n.data=t,n}return eO(t,e),t}(IE);function oO(e){return e instanceof IE?new iO(e):e}var rO=function(){function e(e,t){this.modelProvider=e,this.dnd=t,this.autoExpandDisposable=He.None}return e.prototype.getDragURI=function(e){return this.dnd.getDragURI(e.element)},e.prototype.getDragLabel=function(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e.map((function(e){return e.element})),t)},e.prototype.onDragStart=function(e,t){this.dnd.onDragStart&&this.dnd.onDragStart(oO(e),t)},e.prototype.onDragOver=function(e,t,n,i,o){var r=this;void 0===o&&(o=!0);var s=this.dnd.onDragOver(oO(e),t&&t.element,n,i),a=this.autoExpandNode!==t;if(a&&(this.autoExpandDisposable.dispose(),this.autoExpandNode=t),void 0===t)return s;if(a&&"boolean"!=typeof s&&s.autoExpand&&(this.autoExpandDisposable=mi((function(){var e=r.modelProvider(),n=e.getNodeLocation(t);e.isCollapsed(n)&&e.setCollapsed(n,!1),r.autoExpandNode=void 0}),500)),"boolean"==typeof s||!s.accept||void 0===s.bubble||s.feedback)return o?s:{accept:"boolean"==typeof s?s:s.accept,effect:"boolean"==typeof s?void 0:s.effect,feedback:[n]};if(1===s.bubble){var u=this.modelProvider(),l=u.getNodeLocation(t),c=u.getParentNodeLocation(l),d=u.getNode(c),h=c&&u.getListIndex(c);return this.onDragOver(e,d,h,i,!1)}var p=this.modelProvider(),f=p.getNodeLocation(t),g=p.getListIndex(f),m=p.getListRenderCount(f);return tO(tO({},s),{feedback:Wi(g,g+m)})},e.prototype.drop=function(e,t,n,i){this.autoExpandDisposable.dispose(),this.autoExpandNode=void 0,this.dnd.drop(oO(e),t&&t.element,n,i)},e.prototype.onDragEnd=function(e){this.dnd.onDragEnd&&this.dnd.onDragEnd(e)},e}();var sO,aO=function(){function e(e){this.delegate=e}return e.prototype.getHeight=function(e){return this.delegate.getHeight(e.element)},e.prototype.getTemplateId=function(e){return this.delegate.getTemplateId(e.element)},e.prototype.hasDynamicHeight=function(e){return!!this.delegate.hasDynamicHeight&&this.delegate.hasDynamicHeight(e.element)},e.prototype.setDynamicHeight=function(e,t){this.delegate.setDynamicHeight&&this.delegate.setDynamicHeight(e.element,t)},e}();!function(e){e.None="none",e.OnHover="onHover",e.Always="always"}(sO||(sO={}));var uO=function(){function e(e,t){var n=this;void 0===t&&(t=[]),this._elements=t,this.onDidChange=Ge.forEach(e,(function(e){return n._elements=e}))}return Object.defineProperty(e.prototype,"elements",{get:function(){return this._elements},enumerable:!0,configurable:!0}),e}(),lO=function(){function e(t,n,i,o,r){void 0===r&&(r={}),this.renderer=t,this.modelProvider=n,this.activeNodes=o,this.renderedElements=new Map,this.renderedNodes=new Map,this.indent=e.DefaultIndent,this.hideTwistiesOfChildlessElements=!1,this.shouldRenderIndentGuides=!1,this.renderedIndentGuides=new Jd,this.activeIndentNodes=new Set,this.indentGuidesDisposable=He.None,this.disposables=new Be,this.templateId=t.templateId,this.updateOptions(r),Ge.map(i,(function(e){return e.node}))(this.onDidChangeNodeTwistieState,this,this.disposables),t.onDidChangeTwistieState&&t.onDidChangeTwistieState(this.onDidChangeTwistieState,this,this.disposables)}return e.prototype.updateOptions=function(e){if(void 0===e&&(e={}),void 0!==e.indent&&(this.indent=RE(e.indent,0,40)),void 0!==e.renderIndentGuides){var t=e.renderIndentGuides!==sO.None;if(t!==this.shouldRenderIndentGuides&&(this.shouldRenderIndentGuides=t,this.indentGuidesDisposable.dispose(),t)){var n=new Be;this.activeNodes.onDidChange(this._onDidChangeActiveNodes,this,n),this.indentGuidesDisposable=n,this._onDidChangeActiveNodes(this.activeNodes.elements)}}void 0!==e.hideTwistiesOfChildlessElements&&(this.hideTwistiesOfChildlessElements=e.hideTwistiesOfChildlessElements)},e.prototype.renderTemplate=function(e){var t=Xo(e,er(".monaco-tl-row")),n=Xo(t,er(".monaco-tl-indent")),i=Xo(t,er(".monaco-tl-twistie")),o=Xo(t,er(".monaco-tl-contents")),r=this.renderer.renderTemplate(o);return{container:e,indent:n,twistie:i,indentGuidesDisposable:He.None,templateData:r}},e.prototype.renderElement=function(t,n,i,o){"number"==typeof o&&(this.renderedNodes.set(t,{templateData:i,height:o}),this.renderedElements.set(t.element,t));var r=e.DefaultIndent+(t.depth-1)*this.indent;i.twistie.style.paddingLeft=r+"px",i.indent.style.width=r+this.indent-16+"px",this.renderTwistie(t,i),"number"==typeof o&&this.renderIndentGuides(t,i),this.renderer.renderElement(t,n,i.templateData,o)},e.prototype.disposeElement=function(e,t,n,i){n.indentGuidesDisposable.dispose(),this.renderer.disposeElement&&this.renderer.disposeElement(e,t,n.templateData,i),"number"==typeof i&&(this.renderedNodes.delete(e),this.renderedElements.delete(e.element))},e.prototype.disposeTemplate=function(e){this.renderer.disposeTemplate(e.templateData)},e.prototype.onDidChangeTwistieState=function(e){var t=this.renderedElements.get(e);t&&this.onDidChangeNodeTwistieState(t)},e.prototype.onDidChangeNodeTwistieState=function(e){var t=this.renderedNodes.get(e);t&&(this.renderTwistie(e,t.templateData),this._onDidChangeActiveNodes(this.activeNodes.elements),this.renderIndentGuides(e,t.templateData))},e.prototype.renderTwistie=function(e,t){this.renderer.renderTwistie&&this.renderer.renderTwistie(e.element,t.twistie),e.collapsible&&(!this.hideTwistiesOfChildlessElements||e.visibleChildrenCount>0)?(io(t.twistie,"codicon","codicon-chevron-down","collapsible"),so(t.twistie,"collapsed",e.collapsed)):ro(t.twistie,"codicon","codicon-chevron-down","collapsible","collapsed"),e.collapsible?t.container.setAttribute("aria-expanded",String(!e.collapsed)):t.container.removeAttribute("aria-expanded")},e.prototype.renderIndentGuides=function(e,t){var n=this;if(Yi(t.indent),t.indentGuidesDisposable.dispose(),this.shouldRenderIndentGuides){for(var i=new Be,o=this.modelProvider(),r=e,s=function(){var e=o.getNodeLocation(r),s=o.getParentNodeLocation(e);if(!s)return"break";var u=o.getNode(s),l=er(".indent-guide",{style:"width: "+a.indent+"px"});a.activeIndentNodes.has(u)&&no(l,"active"),0===t.indent.childElementCount?t.indent.appendChild(l):t.indent.insertBefore(l,t.indent.firstElementChild),a.renderedIndentGuides.add(u,l),i.add(We((function(){return n.renderedIndentGuides.delete(u,l)}))),r=u},a=this;;){if("break"===s())break}t.indentGuidesDisposable=i}},e.prototype._onDidChangeActiveNodes=function(e){var t=this;if(this.shouldRenderIndentGuides){var n=new Set,i=this.modelProvider();e.forEach((function(e){var t=i.getNodeLocation(e);try{var o=i.getParentNodeLocation(t);e.collapsible&&e.children.length>0&&!e.collapsed?n.add(e):o&&n.add(i.getNode(o))}catch(e){}})),this.activeIndentNodes.forEach((function(e){n.has(e)||t.renderedIndentGuides.forEach(e,(function(e){return oo(e,"active")}))})),n.forEach((function(e){t.activeIndentNodes.has(e)||t.renderedIndentGuides.forEach(e,(function(e){return no(e,"active")}))})),this.activeIndentNodes=n}},e.prototype.dispose=function(){this.renderedNodes.clear(),this.renderedElements.clear(),this.indentGuidesDisposable.dispose(),Ae(this.disposables)},e.DefaultIndent=8,e}(),cO=function(){function e(e,t,n){this.tree=e,this.keyboardNavigationLabelProvider=t,this._filter=n,this._totalCount=0,this._matchCount=0,this._pattern="",this._lowercasePattern="",this.disposables=new Be,e.onWillRefilter(this.reset,this,this.disposables)}return Object.defineProperty(e.prototype,"totalCount",{get:function(){return this._totalCount},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"matchCount",{get:function(){return this._matchCount},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"pattern",{set:function(e){this._pattern=e,this._lowercasePattern=e.toLowerCase()},enumerable:!0,configurable:!0}),e.prototype.filter=function(e,t){if(this._filter){var n=this._filter.filter(e,t);if(this.tree.options.simpleKeyboardNavigation)return n;if(0===("boolean"==typeof n?n?1:0:XI(n)?$I(n.visibility):n))return!1}if(this._totalCount++,this.tree.options.simpleKeyboardNavigation||!this._pattern)return this._matchCount++,{data:nI.Default,visibility:!0};var i=this.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(e),o=i&&i.toString();if(void 0===o)return{data:nI.Default,visibility:!0};var r=uI(this._pattern,this._lowercasePattern,0,o,o.toLowerCase(),0,!0);return r?(this._matchCount++,{data:r,visibility:!0}):this.tree.options.filterOnType?2:{data:nI.Default,visibility:!0}},e.prototype.reset=function(){this._totalCount=0,this._matchCount=0},e.prototype.dispose=function(){Ae(this.disposables)},e}(),dO=function(){function e(e,t,n,i,o){this.tree=e,this.view=n,this.filter=i,this.keyboardNavigationDelegate=o,this._enabled=!1,this._pattern="",this._empty=!1,this._onDidChangeEmptyState=new nt,this.positionClassName="ne",this.automaticKeyboardNavigation=!0,this.triggered=!1,this._onDidChangePattern=new nt,this.enabledDisposables=new Be,this.disposables=new Be,this.domNode=er(".monaco-list-type-filter."+this.positionClassName),this.domNode.draggable=!0,Xn(this.domNode,"dragstart")(this.onDragStart,this,this.disposables),this.messageDomNode=Xo(n.getHTMLElement(),er(".monaco-list-type-filter-message")),this.labelDomNode=Xo(this.domNode,er("span.label"));var s=Xo(this.domNode,er(".controls"));this._filterOnType=!!e.options.filterOnType,this.filterOnTypeDomNode=Xo(s,er("input.filter.codicon.codicon-list-selection")),this.filterOnTypeDomNode.type="checkbox",this.filterOnTypeDomNode.checked=this._filterOnType,this.filterOnTypeDomNode.tabIndex=-1,this.updateFilterOnTypeTitle(),Xn(this.filterOnTypeDomNode,"input")(this.onDidChangeFilterOnType,this,this.disposables),this.clearDomNode=Xo(s,er("button.clear.codicon.codicon-close")),this.clearDomNode.tabIndex=-1,this.clearDomNode.title=r("clear","Clear"),this.keyboardNavigationEventFilter=e.options.keyboardNavigationEventFilter,t.onDidSplice(this.onDidSpliceModel,this,this.disposables),this.updateOptions(e.options)}return Object.defineProperty(e.prototype,"enabled",{get:function(){return this._enabled},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"pattern",{get:function(){return this._pattern},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"filterOnType",{get:function(){return this._filterOnType},enumerable:!0,configurable:!0}),e.prototype.updateOptions=function(e){e.simpleKeyboardNavigation?this.disable():this.enable(),void 0!==e.filterOnType&&(this._filterOnType=!!e.filterOnType,this.filterOnTypeDomNode.checked=this._filterOnType),void 0!==e.automaticKeyboardNavigation&&(this.automaticKeyboardNavigation=e.automaticKeyboardNavigation),this.tree.refilter(),this.render(),this.automaticKeyboardNavigation||this.onEventOrInput("")},e.prototype.enable=function(){var e=this;if(!this._enabled){var t=Ge.chain(Xn(this.view.getHTMLElement(),"keydown")).filter((function(t){return!hO(t.target)||t.target===e.filterOnTypeDomNode})).filter((function(e){return"Dead"!==e.key&&!/^Media/.test(e.key)})).map((function(e){return new ni(e)})).filter(this.keyboardNavigationEventFilter||function(){return!0}).filter((function(){return e.automaticKeyboardNavigation||e.triggered})).filter((function(t){return e.keyboardNavigationDelegate.mightProducePrintableCharacter(t)||(e.pattern.length>0||e.triggered)&&(9===t.keyCode||1===t.keyCode)&&!t.altKey&&!t.ctrlKey&&!t.metaKey||1===t.keyCode&&(_?t.altKey&&!t.metaKey:t.ctrlKey)&&!t.shiftKey})).forEach((function(e){e.stopPropagation(),e.preventDefault()})).event,n=Xn(this.clearDomNode,"click");Ge.chain(Ge.any(t,n)).event(this.onEventOrInput,this,this.enabledDisposables),this.filter.pattern="",this.tree.refilter(),this.render(),this._enabled=!0,this.triggered=!1}},e.prototype.disable=function(){this._enabled&&(this.domNode.remove(),this.enabledDisposables.clear(),this.tree.refilter(),this.render(),this._enabled=!1,this.triggered=!1)},e.prototype.onEventOrInput=function(e){"string"==typeof e?this.onInput(e):e instanceof MouseEvent||9===e.keyCode||1===e.keyCode&&(_?e.altKey:e.ctrlKey)?this.onInput(""):1===e.keyCode?this.onInput(0===this.pattern.length?"":this.pattern.substr(0,this.pattern.length-1)):this.onInput(this.pattern+e.browserEvent.key)},e.prototype.onInput=function(e){var t=this.view.getHTMLElement();e&&!this.domNode.parentElement?t.append(this.domNode):!e&&this.domNode.parentElement&&(this.domNode.remove(),this.tree.domFocus()),this._pattern=e,this._onDidChangePattern.fire(e),this.filter.pattern=e,this.tree.refilter(),e&&this.tree.focusNext(0,!0,void 0,(function(e){return!nI.isDefault(e.filterData)}));var n=this.tree.getFocus();if(n.length>0){var i=n[0];null===this.tree.getRelativeTop(i)&&this.tree.reveal(i,.5)}this.render(),e||(this.triggered=!1)},e.prototype.onDragStart=function(){var e=this,t=this.view.getHTMLElement(),n=Oo(t).left,i=t.clientWidth,o=i/2,r=this.domNode.clientWidth,s=new Be,a=this.positionClassName,u=function(){switch(a){case"nw":e.domNode.style.top="4px",e.domNode.style.left="4px";break;case"ne":e.domNode.style.top="4px",e.domNode.style.left=i-r-6+"px"}};u(),oo(this.domNode,a),no(this.domNode,"dragging"),s.add(We((function(){return oo(e.domNode,"dragging")}))),Xn(document,"dragover")((function(e){e.preventDefault();var t=e.screenX-n;e.dataTransfer&&(e.dataTransfer.dropEffect="none"),a=t<o?"nw":"ne",u()}),null,s),Xn(this.domNode,"dragend")((function(){e.positionClassName=a,e.domNode.className="monaco-list-type-filter "+e.positionClassName,e.domNode.style.top="",e.domNode.style.left="",Ae(s)}),null,s),dD.CurrentDragAndDropData=new cD("vscode-ui"),s.add(We((function(){return dD.CurrentDragAndDropData=void 0})))},e.prototype.onDidSpliceModel=function(){this._enabled&&0!==this.pattern.length&&(this.tree.refilter(),this.render())},e.prototype.onDidChangeFilterOnType=function(){this.tree.updateOptions({filterOnType:this.filterOnTypeDomNode.checked}),this.tree.refilter(),this.tree.domFocus(),this.render(),this.updateFilterOnTypeTitle()},e.prototype.updateFilterOnTypeTitle=function(){this.filterOnType?this.filterOnTypeDomNode.title=r("disable filter on type","Disable Filter on Type"):this.filterOnTypeDomNode.title=r("enable filter on type","Enable Filter on Type")},e.prototype.render=function(){var e=this.filter.totalCount>0&&0===this.filter.matchCount;this.pattern&&this.tree.options.filterOnType&&e?(this.messageDomNode.textContent=r("empty","No elements found"),this._empty=!0):(this.messageDomNode.innerHTML="",this._empty=!1),so(this.domNode,"no-matches",e),this.domNode.title=r("found","Matched {0} out of {1} elements",this.filter.matchCount,this.filter.totalCount),this.labelDomNode.textContent=this.pattern.length>16?"…"+this.pattern.substr(this.pattern.length-16):this.pattern,this._onDidChangeEmptyState.fire(this._empty)},e.prototype.shouldAllowFocus=function(e){return!(this.enabled&&this.pattern&&!this.filterOnType)||(this.filter.totalCount>0&&this.filter.matchCount<=1||!nI.isDefault(e.filterData))},e.prototype.dispose=function(){this._enabled&&(this.domNode.remove(),this.enabledDisposables.dispose(),this._enabled=!1,this.triggered=!1),this._onDidChangePattern.dispose(),Ae(this.disposables)},e}();function hO(e){return"INPUT"===e.tagName||"TEXTAREA"===e.tagName}function pO(e){return{elements:e.elements.map((function(e){return e.element})),browserEvent:e.browserEvent}}function fO(e,t){t(e),e.children.forEach((function(e){return fO(e,t)}))}var gO=function(){function e(e){this.identityProvider=e,this.nodes=[],this._onDidChange=new nt,this.onDidChange=this._onDidChange.event}return Object.defineProperty(e.prototype,"nodeSet",{get:function(){return this._nodeSet||(this._nodeSet=this.createNodeSet()),this._nodeSet},enumerable:!0,configurable:!0}),e.prototype.set=function(e,t){xi(this.nodes,e)||this._set(e,!1,t)},e.prototype._set=function(e,t,n){if(this.nodes=nO(e),this.elements=void 0,this._nodeSet=void 0,!t){var i=this;this._onDidChange.fire({get elements(){return i.get()},browserEvent:n})}},e.prototype.get=function(){return this.elements||(this.elements=this.nodes.map((function(e){return e.element}))),nO(this.elements)},e.prototype.getNodes=function(){return this.nodes},e.prototype.has=function(e){return this.nodeSet.has(e)},e.prototype.onDidModelSplice=function(e){var t=this,n=e.insertedNodes,i=e.deletedNodes;if(!this.identityProvider){var o=this.createNodeSet(),r=function(e){return o.delete(e)};return i.forEach((function(e){return fO(e,r)})),void this.set(Js(o))}var s=new Set,a=function(e){return s.add(t.identityProvider.getId(e.element).toString())};i.forEach((function(e){return fO(e,a)}));var u=new Map,l=function(e){return u.set(t.identityProvider.getId(e.element).toString(),e)};n.forEach((function(e){return fO(e,l)}));for(var c=[],d=0,h=this.nodes;d<h.length;d++){var p=h[d],f=this.identityProvider.getId(p.element).toString();if(s.has(f)){var g=u.get(f);g&&c.push(g)}else c.push(p)}this._set(c,!0)},e.prototype.createNodeSet=function(){for(var e=new Set,t=0,n=this.nodes;t<n.length;t++){var i=n[t];e.add(i)}return e},e}(),mO=function(e){function t(t,n){var i=e.call(this,t)||this;return i.tree=n,i}return eO(t,e),t.prototype.onPointer=function(t){if(!hO(t.browserEvent.target)){var n=t.element;if(!n)return e.prototype.onPointer.call(this,t);if(this.isSelectionRangeChangeEvent(t)||this.isSelectionSingleChangeEvent(t))return e.prototype.onPointer.call(this,t);var i=to(t.browserEvent.target,"monaco-tl-twistie");if(!this.tree.openOnSingleClick&&2!==t.browserEvent.detail&&!i)return e.prototype.onPointer.call(this,t);var o=!1;if((o="function"==typeof this.tree.expandOnlyOnTwistieClick?this.tree.expandOnlyOnTwistieClick(n.element):!!this.tree.expandOnlyOnTwistieClick)&&!i)return e.prototype.onPointer.call(this,t);if(n.collapsible){var r=this.tree.model,s=r.getNodeLocation(n),a=t.browserEvent.altKey;if(r.setCollapsed(s,void 0,a),o&&i)return}e.prototype.onPointer.call(this,t)}},t.prototype.onDoubleClick=function(t){to(t.browserEvent.target,"monaco-tl-twistie")||e.prototype.onDoubleClick.call(this,t)},t}(AI),vO=function(e){function t(t,n,i,o,r,s,a){var u=e.call(this,t,n,i,o,a)||this;return u.focusTrait=r,u.selectionTrait=s,u}return eO(t,e),t.prototype.createMouseController=function(e){return new mO(this,e.tree)},t.prototype.splice=function(t,n,i){var o=this;if(void 0===i&&(i=[]),e.prototype.splice.call(this,t,n,i),0!==i.length){var r=[],s=[];i.forEach((function(e,n){o.focusTrait.has(e)&&r.push(t+n),o.selectionTrait.has(e)&&s.push(t+n)})),r.length>0&&e.prototype.setFocus.call(this,Ti(nO(e.prototype.getFocus.call(this),r))),s.length>0&&e.prototype.setSelection.call(this,Ti(nO(e.prototype.getSelection.call(this),s)))}},t.prototype.setFocus=function(t,n,i){var o=this;void 0===i&&(i=!1),e.prototype.setFocus.call(this,t,n),i||this.focusTrait.set(t.map((function(e){return o.element(e)})),n)},t.prototype.setSelection=function(t,n,i){var o=this;void 0===i&&(i=!1),e.prototype.setSelection.call(this,t,n),i||this.selectionTrait.set(t.map((function(e){return o.element(e)})),n)},t}(KI),_O=function(){function e(e,t,n,i,o){var r=this;void 0===o&&(o={}),this._options=o,this.eventBufferer=new rt,this.disposables=new Be,this._onWillRefilter=new nt,this.onWillRefilter=this._onWillRefilter.event,this._onDidUpdateOptions=new nt;var s,a,u,l=new aO(n),c=new st,d=new st,h=new uO(d.event);this.renderers=i.map((function(e){return new lO(e,(function(){return r.model}),c.event,h,o)}));for(var p=0,f=this.renderers;p<f.length;p++){var g=f[p];this.disposables.add(g)}o.keyboardNavigationLabelProvider&&(s=new cO(this,o.keyboardNavigationLabelProvider,o.filter),o=tO(tO({},o),{filter:s}),this.disposables.add(s)),this.focus=new gO(o.identityProvider),this.selection=new gO(o.identityProvider),this.view=new vO(e,t,l,this.renderers,this.focus,this.selection,tO(tO({},(a=function(){return r.model},(u=o)&&tO(tO({},u),{identityProvider:u.identityProvider&&{getId:function(e){return u.identityProvider.getId(e.element)}},dnd:u.dnd&&new rO(a,u.dnd),multipleSelectionController:u.multipleSelectionController&&{isSelectionSingleChangeEvent:function(e){return u.multipleSelectionController.isSelectionSingleChangeEvent(tO(tO({},e),{element:e.element}))},isSelectionRangeChangeEvent:function(e){return u.multipleSelectionController.isSelectionRangeChangeEvent(tO(tO({},e),{element:e.element}))}},accessibilityProvider:u.accessibilityProvider&&tO(tO({},u.accessibilityProvider),{getAriaLabel:function(e){return u.accessibilityProvider.getAriaLabel(e.element)},getAriaLevel:function(e){return e.depth},getActiveDescendantId:u.accessibilityProvider.getActiveDescendantId&&function(e){return u.accessibilityProvider.getActiveDescendantId(e.element)}}),keyboardNavigationLabelProvider:u.keyboardNavigationLabelProvider&&tO(tO({},u.keyboardNavigationLabelProvider),{getKeyboardNavigationLabel:function(e){return u.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(e.element)}}),enableKeyboardNavigation:u.simpleKeyboardNavigation,ariaProvider:{getSetSize:function(e){var t=a(),n=t.getNodeLocation(e),i=t.getParentNodeLocation(n);return t.getNode(i).visibleChildrenCount},getPosInSet:function(e){return e.visibleChildIndex+1},isChecked:u.ariaProvider&&u.ariaProvider.isChecked?function(e){return u.ariaProvider.isChecked(e.element)}:void 0,getRole:u.ariaProvider&&u.ariaProvider.getRole?function(e){return u.ariaProvider.getRole(e.element)}:void 0}}))),{tree:this})),this.model=this.createModel(e,this.view,o),c.input=this.model.onDidChangeCollapseState;var m=Ge.forEach(this.model.onDidSplice,(function(e){r.eventBufferer.bufferEvents((function(){r.focus.onDidModelSplice(e),r.selection.onDidModelSplice(e)}))}));if(m((function(){return null}),null,this.disposables),d.input=Ge.chain(Ge.any(m,this.focus.onDidChange,this.selection.onDidChange)).debounce((function(){return null}),0).map((function(){for(var e=new Set,t=0,n=r.focus.getNodes();t<n.length;t++){var i=n[t];e.add(i)}for(var o=0,s=r.selection.getNodes();o<s.length;o++){i=s[o];e.add(i)}return function(e){var t=[];return e.forEach((function(e){return t.push(e)})),t}(e)})).event,!1!==o.keyboardSupport){var v=Ge.chain(this.view.onKeyDown).filter((function(e){return!hO(e.target)})).map((function(e){return new ni(e)}));v.filter((function(e){return 15===e.keyCode})).on(this.onLeftArrow,this,this.disposables),v.filter((function(e){return 17===e.keyCode})).on(this.onRightArrow,this,this.disposables),v.filter((function(e){return 10===e.keyCode})).on(this.onSpace,this,this.disposables)}if(o.keyboardNavigationLabelProvider){var _=o.keyboardNavigationDelegate||kI;this.typeFilterController=new dO(this,this.model,this.view,s,_),this.focusNavigationFilter=function(e){return r.typeFilterController.shouldAllowFocus(e)},this.disposables.add(this.typeFilterController)}this.styleElement=zo(this.view.getHTMLElement()),so(this.getHTMLElement(),"always",this._options.renderIndentGuides===sO.Always)}return Object.defineProperty(e.prototype,"onDidChangeFocus",{get:function(){return this.eventBufferer.wrapEvent(this.focus.onDidChange)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidChangeSelection",{get:function(){return this.eventBufferer.wrapEvent(this.selection.onDidChange)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidOpen",{get:function(){return Ge.map(this.view.onDidOpen,pO)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidFocus",{get:function(){return this.view.onDidFocus},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidChangeCollapseState",{get:function(){return this.model.onDidChangeCollapseState},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"openOnSingleClick",{get:function(){return void 0===this._options.openOnSingleClick||this._options.openOnSingleClick},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"expandOnlyOnTwistieClick",{get:function(){return void 0!==this._options.expandOnlyOnTwistieClick&&this._options.expandOnlyOnTwistieClick},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidDispose",{get:function(){return this.view.onDidDispose},enumerable:!0,configurable:!0}),e.prototype.updateOptions=function(e){void 0===e&&(e={}),this._options=tO(tO({},this._options),e);for(var t=0,n=this.renderers;t<n.length;t++){n[t].updateOptions(e)}this.view.updateOptions({enableKeyboardNavigation:this._options.simpleKeyboardNavigation,automaticKeyboardNavigation:this._options.automaticKeyboardNavigation}),this.typeFilterController&&this.typeFilterController.updateOptions(this._options),this._onDidUpdateOptions.fire(this._options),so(this.getHTMLElement(),"always",this._options.renderIndentGuides===sO.Always)},Object.defineProperty(e.prototype,"options",{get:function(){return this._options},enumerable:!0,configurable:!0}),e.prototype.getHTMLElement=function(){return this.view.getHTMLElement()},Object.defineProperty(e.prototype,"scrollTop",{get:function(){return this.view.scrollTop},set:function(e){this.view.scrollTop=e},enumerable:!0,configurable:!0}),e.prototype.domFocus=function(){this.view.domFocus()},e.prototype.layout=function(e,t){this.view.layout(e,t)},e.prototype.style=function(e){var t="."+this.view.domId,n=[];e.treeIndentGuidesStroke&&(n.push(".monaco-list"+t+":hover .monaco-tl-indent > .indent-guide, .monaco-list"+t+".always .monaco-tl-indent > .indent-guide { border-color: "+e.treeIndentGuidesStroke.transparent(.4)+"; }"),n.push(".monaco-list"+t+" .monaco-tl-indent > .indent-guide.active { border-color: "+e.treeIndentGuidesStroke+"; }"));var i=n.join("\n");i!==this.styleElement.innerHTML&&(this.styleElement.innerHTML=i),this.view.style(e)},e.prototype.collapse=function(e,t){return void 0===t&&(t=!1),this.model.setCollapsed(e,!0,t)},e.prototype.expand=function(e,t){return void 0===t&&(t=!1),this.model.setCollapsed(e,!1,t)},e.prototype.isCollapsible=function(e){return this.model.isCollapsible(e)},e.prototype.setCollapsible=function(e,t){return this.model.setCollapsible(e,t)},e.prototype.isCollapsed=function(e){return this.model.isCollapsed(e)},e.prototype.refilter=function(){this._onWillRefilter.fire(void 0),this.model.refilter()},e.prototype.setSelection=function(e,t){var n=this,i=e.map((function(e){return n.model.getNode(e)}));this.selection.set(i,t);var o=e.map((function(e){return n.model.getListIndex(e)})).filter((function(e){return e>-1}));this.view.setSelection(o,t,!0)},e.prototype.getSelection=function(){return this.selection.get()},e.prototype.setFocus=function(e,t){var n=this,i=e.map((function(e){return n.model.getNode(e)}));this.focus.set(i,t);var o=e.map((function(e){return n.model.getListIndex(e)})).filter((function(e){return e>-1}));this.view.setFocus(o,t,!0)},e.prototype.focusNext=function(e,t,n,i){void 0===e&&(e=1),void 0===t&&(t=!1),void 0===i&&(i=this.focusNavigationFilter),this.view.focusNext(e,t,n,i)},e.prototype.getFocus=function(){return this.focus.get()},e.prototype.reveal=function(e,t){this.model.expandTo(e);var n=this.model.getListIndex(e);-1!==n&&this.view.reveal(n,t)},e.prototype.getRelativeTop=function(e){var t=this.model.getListIndex(e);return-1===t?null:this.view.getRelativeTop(t)},e.prototype.onLeftArrow=function(e){e.preventDefault(),e.stopPropagation();var t=this.view.getFocusedElements();if(0!==t.length){var n=t[0],i=this.model.getNodeLocation(n);if(!this.model.setCollapsed(i,!0)){var o=this.model.getParentNodeLocation(i);if(!o)return;var r=this.model.getListIndex(o);this.view.reveal(r),this.view.setFocus([r])}}},e.prototype.onRightArrow=function(e){e.preventDefault(),e.stopPropagation();var t=this.view.getFocusedElements();if(0!==t.length){var n=t[0],i=this.model.getNodeLocation(n);if(!this.model.setCollapsed(i,!1)){if(!n.children.some((function(e){return e.visible})))return;var o=this.view.getFocus()[0]+1;this.view.reveal(o),this.view.setFocus([o])}}},e.prototype.onSpace=function(e){e.preventDefault(),e.stopPropagation();var t=this.view.getFocusedElements();if(0!==t.length){var n=t[0],i=this.model.getNodeLocation(n),o=e.browserEvent.altKey;this.model.setCollapsed(i,void 0,o)}},e.prototype.dispose=function(){Ae(this.disposables),this.view.dispose()},e}(),yO=function(){return(yO=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},bO=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},wO=function(){function e(e,t,n){void 0===n&&(n={}),this.user=e,this.nodes=new Map,this.nodesByIdentity=new Map,this.model=new JI(e,t,null,n),this.onDidSplice=this.model.onDidSplice,this.onDidChangeCollapseState=this.model.onDidChangeCollapseState,this.onDidChangeRenderNodeCount=this.model.onDidChangeRenderNodeCount,n.sorter&&(this.sorter={compare:function(e,t){return n.sorter.compare(e.element,t.element)}}),this.identityProvider=n.identityProvider}return e.prototype.setChildren=function(e,t,n,i){var o=this.getElementLocation(e);this._setChildren(o,this.preserveCollapseState(t),n,i)},e.prototype._setChildren=function(e,t,n,i){var o=this,r=new Set,s=new Set;this.model.splice(bO(e,[0]),Number.MAX_VALUE,t,(function(e){if(r.add(e.element),o.nodes.set(e.element,e),o.identityProvider){var t=o.identityProvider.getId(e.element).toString();s.add(t),o.nodesByIdentity.set(t,e)}n&&n(e)}),(function(e){if(r.has(e.element)||o.nodes.delete(e.element),o.identityProvider){var t=o.identityProvider.getId(e.element).toString();s.has(t)||o.nodesByIdentity.delete(t)}i&&i(e)}))},e.prototype.preserveCollapseState=function(e){var t,n=this,i=e?(t=e,Array.isArray(t)?Ve.fromArray(t):t||Ve.empty()):Ve.empty();return this.sorter&&(i=Ve.fromArray(Ni(Ve.collect(i),this.sorter.compare.bind(this.sorter)))),Ve.map(i,(function(e){var t=n.nodes.get(e.element);if(!t&&n.identityProvider){var i=n.identityProvider.getId(e.element).toString();t=n.nodesByIdentity.get(i)}if(!t)return yO(yO({},e),{children:n.preserveCollapseState(e.children)});var o="boolean"==typeof e.collapsible?e.collapsible:t.collapsible,r=void 0!==e.collapsed?e.collapsed:t.collapsed;return yO(yO({},e),{collapsible:o,collapsed:r,children:n.preserveCollapseState(e.children)})}))},e.prototype.rerender=function(e){var t=this.getElementLocation(e);this.model.rerender(t)},e.prototype.has=function(e){return this.nodes.has(e)},e.prototype.getListIndex=function(e){var t=this.getElementLocation(e);return this.model.getListIndex(t)},e.prototype.getListRenderCount=function(e){var t=this.getElementLocation(e);return this.model.getListRenderCount(t)},e.prototype.isCollapsible=function(e){var t=this.getElementLocation(e);return this.model.isCollapsible(t)},e.prototype.setCollapsible=function(e,t){var n=this.getElementLocation(e);return this.model.setCollapsible(n,t)},e.prototype.isCollapsed=function(e){var t=this.getElementLocation(e);return this.model.isCollapsed(t)},e.prototype.setCollapsed=function(e,t,n){var i=this.getElementLocation(e);return this.model.setCollapsed(i,t,n)},e.prototype.expandTo=function(e){var t=this.getElementLocation(e);this.model.expandTo(t)},e.prototype.refilter=function(){this.model.refilter()},e.prototype.getNode=function(e){if(void 0===e&&(e=null),null===e)return this.model.getNode(this.model.rootRef);var t=this.nodes.get(e);if(!t)throw new GI(this.user,"Tree element not found: "+e);return t},e.prototype.getNodeLocation=function(e){return e.element},e.prototype.getParentNodeLocation=function(e){if(null===e)throw new GI(this.user,"Invalid getParentNodeLocation call");var t=this.nodes.get(e);if(!t)throw new GI(this.user,"Tree element not found: "+e);var n=this.model.getNodeLocation(t),i=this.model.getParentNodeLocation(n);return this.model.getNode(i).element},e.prototype.getElementLocation=function(e){if(null===e)return[];var t=this.nodes.get(e);if(!t)throw new GI(this.user,"Tree element not found: "+e);return this.model.getNodeLocation(t)},e}(),CO=function(){return(CO=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function SO(e){return{element:{elements:[e.element],incompressible:e.incompressible||!1},children:Ve.map(Ve.from(e.children),SO),collapsible:e.collapsible,collapsed:e.collapsed}}function LO(e){for(var t,n,i=[e.element],o=e.incompressible||!1;t=Ve.from(e.children),1===(n=Ve.collect(t,2)).length&&!(e=n[0]).incompressible;)i.push(e.element);return{element:{elements:i,incompressible:o},children:Ve.map(Ve.concat(Ve.fromArray(n),t),LO),collapsible:e.collapsible,collapsed:e.collapsed}}function xO(e){return function e(t,n){var i;return void 0===n&&(n=0),i=n<t.element.elements.length-1?Ve.single(e(t,n+1)):Ve.map(Ve.from(t.children),(function(t){return e(t,0)})),0===n&&t.element.incompressible?{element:t.element.elements[n],children:i,incompressible:!0,collapsible:t.collapsible,collapsed:t.collapsed}:{element:t.element.elements[n],children:i,collapsible:t.collapsible,collapsed:t.collapsed}}(e,0)}var DO=function(){function e(e,t,n){void 0===n&&(n={}),this.user=e,this.nodes=new Map,this.model=new wO(e,t,n),this.enabled=void 0===n.compressionEnabled||n.compressionEnabled}return Object.defineProperty(e.prototype,"onDidSplice",{get:function(){return this.model.onDidSplice},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidChangeCollapseState",{get:function(){return this.model.onDidChangeCollapseState},enumerable:!0,configurable:!0}),e.prototype.setChildren=function(e,t){if(null!==e){var n=this.nodes.get(e);if(!n)throw new Error("Unknown compressed tree node");var i=this.model.getNode(n),o=this.model.getParentNodeLocation(n),r=this.model.getNode(o),s=function e(t,n,i){return t.element===n?CO(CO({},t),{children:i}):CO(CO({},t),{children:Ve.map(Ve.from(t.children),(function(t){return e(t,n,i)}))})}(xO(i),e,Ve.from(t)),a=(this.enabled?LO:SO)(s),u=r.children.map((function(e){return e===i?a:e}));this._setChildren(r.element,u)}else{var l=Ve.map(Ve.from(t),this.enabled?LO:SO);this._setChildren(null,l)}},e.prototype.setCompressionEnabled=function(e){if(e!==this.enabled){this.enabled=e;var t=this.model.getNode(),n=Ve.from(t.children),i=Ve.map(n,xO),o=Ve.map(i,e?LO:SO);this._setChildren(null,o)}},e.prototype._setChildren=function(e,t){var n=this,i=new Set;this.model.setChildren(e,t,(function(e){for(var t=0,o=e.element.elements;t<o.length;t++){var r=o[t];i.add(r),n.nodes.set(r,e.element)}}),(function(e){for(var t=0,o=e.element.elements;t<o.length;t++){var r=o[t];i.has(r)||n.nodes.delete(r)}}))},e.prototype.has=function(e){return this.nodes.has(e)},e.prototype.getListIndex=function(e){var t=this.getCompressedNode(e);return this.model.getListIndex(t)},e.prototype.getListRenderCount=function(e){var t=this.getCompressedNode(e);return this.model.getListRenderCount(t)},e.prototype.getNode=function(e){if(void 0===e)return this.model.getNode();var t=this.getCompressedNode(e);return this.model.getNode(t)},e.prototype.getNodeLocation=function(e){var t=this.model.getNodeLocation(e);return null===t?null:t.elements[t.elements.length-1]},e.prototype.getParentNodeLocation=function(e){var t=this.getCompressedNode(e),n=this.model.getParentNodeLocation(t);return null===n?null:n.elements[n.elements.length-1]},e.prototype.isCollapsible=function(e){var t=this.getCompressedNode(e);return this.model.isCollapsible(t)},e.prototype.setCollapsible=function(e,t){var n=this.getCompressedNode(e);return this.model.setCollapsible(n,t)},e.prototype.isCollapsed=function(e){var t=this.getCompressedNode(e);return this.model.isCollapsed(t)},e.prototype.setCollapsed=function(e,t,n){var i=this.getCompressedNode(e);return this.model.setCollapsed(i,t,n)},e.prototype.expandTo=function(e){var t=this.getCompressedNode(e);this.model.expandTo(t)},e.prototype.rerender=function(e){var t=this.getCompressedNode(e);this.model.rerender(t)},e.prototype.refilter=function(){this.model.refilter()},e.prototype.getCompressedNode=function(e){if(null===e)return null;var t=this.nodes.get(e);if(!t)throw new GI(this.user,"Tree element not found: "+e);return t},e}(),NO=function(e){return e[e.length-1]},kO=function(){function e(e,t){this.unwrapper=e,this.node=t}return Object.defineProperty(e.prototype,"element",{get:function(){return null===this.node.element?null:this.unwrapper(this.node.element)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"children",{get:function(){var t=this;return this.node.children.map((function(n){return new e(t.unwrapper,n)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"depth",{get:function(){return this.node.depth},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visibleChildrenCount",{get:function(){return this.node.visibleChildrenCount},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visibleChildIndex",{get:function(){return this.node.visibleChildIndex},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"collapsible",{get:function(){return this.node.collapsible},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"collapsed",{get:function(){return this.node.collapsed},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visible",{get:function(){return this.node.visible},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"filterData",{get:function(){return this.node.filterData},enumerable:!0,configurable:!0}),e}();var EO=function(){function e(e,t,n){var i=this;void 0===n&&(n={}),this.elementMapper=n.elementMapper||NO;var o=function(e){return i.elementMapper(e.elements)};this.nodeMapper=new ZI((function(e){return new kO(o,e)})),this.model=new DO(e,function(e,t){return{splice:function(n,i,o){t.splice(n,i,o.map((function(t){return e.map(t)})))}}}(this.nodeMapper,t),function(e,t){return CO(CO({},t),{sorter:t.sorter&&{compare:function(e,n){return t.sorter.compare(e.elements[0],n.elements[0])}},identityProvider:t.identityProvider&&{getId:function(n){return t.identityProvider.getId(e(n))}},filter:t.filter&&{filter:function(n,i){return t.filter.filter(e(n),i)}}})}(o,n))}return Object.defineProperty(e.prototype,"onDidSplice",{get:function(){var e=this;return Ge.map(this.model.onDidSplice,(function(t){var n=t.insertedNodes,i=t.deletedNodes;return{insertedNodes:n.map((function(t){return e.nodeMapper.map(t)})),deletedNodes:i.map((function(t){return e.nodeMapper.map(t)}))}}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidChangeCollapseState",{get:function(){var e=this;return Ge.map(this.model.onDidChangeCollapseState,(function(t){var n=t.node,i=t.deep;return{node:e.nodeMapper.map(n),deep:i}}))},enumerable:!0,configurable:!0}),e.prototype.setChildren=function(e,t){this.model.setChildren(e,t)},e.prototype.setCompressionEnabled=function(e){this.model.setCompressionEnabled(e)},e.prototype.has=function(e){return this.model.has(e)},e.prototype.getListIndex=function(e){return this.model.getListIndex(e)},e.prototype.getListRenderCount=function(e){return this.model.getListRenderCount(e)},e.prototype.getNode=function(e){return this.nodeMapper.map(this.model.getNode(e))},e.prototype.getNodeLocation=function(e){return e.element},e.prototype.getParentNodeLocation=function(e){return this.model.getParentNodeLocation(e)},e.prototype.isCollapsible=function(e){return this.model.isCollapsible(e)},e.prototype.setCollapsible=function(e,t){return this.model.setCollapsible(e,t)},e.prototype.isCollapsed=function(e){return this.model.isCollapsed(e)},e.prototype.setCollapsed=function(e,t,n){return this.model.setCollapsed(e,t,n)},e.prototype.expandTo=function(e){return this.model.expandTo(e)},e.prototype.rerender=function(e){return this.model.rerender(e)},e.prototype.refilter=function(){return this.model.refilter()},e.prototype.getCompressedTreeNode=function(e){return void 0===e&&(e=null),this.model.getNode(e)},e}(),IO=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),OO=function(){return(OO=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},MO=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},TO=function(e){function t(t,n,i,o,r){return void 0===r&&(r={}),e.call(this,t,n,i,o,r)||this}return IO(t,e),Object.defineProperty(t.prototype,"onDidChangeCollapseState",{get:function(){return this.model.onDidChangeCollapseState},enumerable:!0,configurable:!0}),t.prototype.setChildren=function(e,t){this.model.setChildren(e,t)},t.prototype.rerender=function(e){void 0!==e?this.model.rerender(e):this.view.rerender()},t.prototype.hasElement=function(e){return this.model.has(e)},t.prototype.createModel=function(e,t,n){return new wO(e,t,n)},t}(_O),PO=function(){function e(e,t){this._compressedTreeNodeProvider=e,this.renderer=t,this.templateId=t.templateId,t.onDidChangeTwistieState&&(this.onDidChangeTwistieState=t.onDidChangeTwistieState)}return Object.defineProperty(e.prototype,"compressedTreeNodeProvider",{get:function(){return this._compressedTreeNodeProvider()},enumerable:!0,configurable:!0}),e.prototype.renderTemplate=function(e){return{compressedTreeNode:void 0,data:this.renderer.renderTemplate(e)}},e.prototype.renderElement=function(e,t,n,i){var o=this.compressedTreeNodeProvider.getCompressedTreeNode(e.element);1===o.element.elements.length?(n.compressedTreeNode=void 0,this.renderer.renderElement(e,t,n.data,i)):(n.compressedTreeNode=o,this.renderer.renderCompressedElements(o,t,n.data,i))},e.prototype.disposeElement=function(e,t,n,i){n.compressedTreeNode?this.renderer.disposeCompressedElements&&this.renderer.disposeCompressedElements(n.compressedTreeNode,t,n.data,i):this.renderer.disposeElement&&this.renderer.disposeElement(e,t,n.data,i)},e.prototype.disposeTemplate=function(e){this.renderer.disposeTemplate(e.data)},e.prototype.renderTwistie=function(e,t){this.renderer.renderTwistie&&this.renderer.renderTwistie(e,t)},MO([Vf],e.prototype,"compressedTreeNodeProvider",null),e}();var RO=function(e){function t(t,n,i,o,r){void 0===r&&(r={});var s=this,a=function(){return s},u=o.map((function(e){return new PO(a,e)}));return s=e.call(this,t,n,i,u,function(e,t){return t&&OO(OO({},t),{keyboardNavigationLabelProvider:t.keyboardNavigationLabelProvider&&{getKeyboardNavigationLabel:function(n){var i;try{i=e().getCompressedTreeNode(n)}catch(e){return t.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(n)}return 1===i.element.elements.length?t.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(n):t.keyboardNavigationLabelProvider.getCompressedNodeKeyboardNavigationLabel(i.element.elements)}}})}(a,r))||this}return IO(t,e),t.prototype.setChildren=function(e,t){this.model.setChildren(e,t)},t.prototype.createModel=function(e,t,n){return new EO(e,t,n)},t.prototype.updateOptions=function(t){void 0===t&&(t={}),e.prototype.updateOptions.call(this,t),void 0!==t.compressionEnabled&&this.model.setCompressionEnabled(t.compressionEnabled)},t.prototype.getCompressedTreeNode=function(e){return void 0===e&&(e=null),this.model.getCompressedTreeNode(e)},t}(TO),AO=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),FO=function(){return(FO=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},WO=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},VO=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},BO=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i};function HO(e){return FO(FO({},e),{children:[],refreshPromise:void 0,stale:!0,slow:!1,collapsedByDefault:void 0})}function zO(e,t){return!!t.parent&&(t.parent===e||zO(e,t.parent))}var jO=function(){function e(e){this.node=e}return Object.defineProperty(e.prototype,"element",{get:function(){return this.node.element.element},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"children",{get:function(){return this.node.children.map((function(t){return new e(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"depth",{get:function(){return this.node.depth},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visibleChildrenCount",{get:function(){return this.node.visibleChildrenCount},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visibleChildIndex",{get:function(){return this.node.visibleChildIndex},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"collapsible",{get:function(){return this.node.collapsible},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"collapsed",{get:function(){return this.node.collapsed},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visible",{get:function(){return this.node.visible},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"filterData",{get:function(){return this.node.filterData},enumerable:!0,configurable:!0}),e}(),UO=function(){function e(e,t,n){this.renderer=e,this.nodeMapper=t,this.onDidChangeTwistieState=n,this.renderedNodes=new Map,this.templateId=e.templateId}return e.prototype.renderTemplate=function(e){return{templateData:this.renderer.renderTemplate(e)}},e.prototype.renderElement=function(e,t,n,i){this.renderer.renderElement(this.nodeMapper.map(e),t,n.templateData,i)},e.prototype.renderTwistie=function(e,t){return so(t,"codicon-loading",e.slow),!1},e.prototype.disposeElement=function(e,t,n,i){this.renderer.disposeElement&&this.renderer.disposeElement(this.nodeMapper.map(e),t,n.templateData,i)},e.prototype.disposeTemplate=function(e){this.renderer.disposeTemplate(e.templateData)},e.prototype.dispose=function(){this.renderedNodes.clear()},e}();function KO(e){return{browserEvent:e.browserEvent,elements:e.elements.map((function(e){return e.element}))}}var qO=function(e){function t(t){var n=e.call(this,t.elements.map((function(e){return e.element})))||this;return n.data=t,n}return AO(t,e),t}(IE);function GO(e){return e instanceof IE?new qO(e):e}var ZO=function(){function e(e){this.dnd=e}return e.prototype.getDragURI=function(e){return this.dnd.getDragURI(e.element)},e.prototype.getDragLabel=function(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e.map((function(e){return e.element})),t)},e.prototype.onDragStart=function(e,t){this.dnd.onDragStart&&this.dnd.onDragStart(GO(e),t)},e.prototype.onDragOver=function(e,t,n,i,o){return void 0===o&&(o=!0),this.dnd.onDragOver(GO(e),t&&t.element,n,i)},e.prototype.drop=function(e,t,n,i){this.dnd.drop(GO(e),t&&t.element,n,i)},e.prototype.onDragEnd=function(e){this.dnd.onDragEnd&&this.dnd.onDragEnd(e)},e}();function YO(e){return e&&FO(FO({},e),{collapseByDefault:!0,identityProvider:e.identityProvider&&{getId:function(t){return e.identityProvider.getId(t.element)}},dnd:e.dnd&&new ZO(e.dnd),multipleSelectionController:e.multipleSelectionController&&{isSelectionSingleChangeEvent:function(t){return e.multipleSelectionController.isSelectionSingleChangeEvent(FO(FO({},t),{element:t.element}))},isSelectionRangeChangeEvent:function(t){return e.multipleSelectionController.isSelectionRangeChangeEvent(FO(FO({},t),{element:t.element}))}},accessibilityProvider:e.accessibilityProvider&&FO(FO({},e.accessibilityProvider),{getAriaLabel:function(t){return e.accessibilityProvider.getAriaLabel(t.element)},getAriaLevel:e.accessibilityProvider.getAriaLevel&&function(t){return e.accessibilityProvider.getAriaLevel(t.element)},getActiveDescendantId:e.accessibilityProvider.getActiveDescendantId&&function(t){return e.accessibilityProvider.getActiveDescendantId(t.element)}}),filter:e.filter&&{filter:function(t,n){return e.filter.filter(t.element,n)}},keyboardNavigationLabelProvider:e.keyboardNavigationLabelProvider&&FO(FO({},e.keyboardNavigationLabelProvider),{getKeyboardNavigationLabel:function(t){return e.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(t.element)}}),sorter:void 0,expandOnlyOnTwistieClick:void 0===e.expandOnlyOnTwistieClick?void 0:"function"!=typeof e.expandOnlyOnTwistieClick?e.expandOnlyOnTwistieClick:function(t){return e.expandOnlyOnTwistieClick(t.element)},ariaProvider:e.ariaProvider&&{getPosInSet:function(t,n){return e.ariaProvider.getPosInSet(t.element,n)},getSetSize:function(t,n,i){return e.ariaProvider.getSetSize(t.element,n,i)},getRole:e.ariaProvider.getRole?function(t){return e.ariaProvider.getRole(t.element)}:void 0,isChecked:e.ariaProvider.isChecked?function(t){var n;return(null===(n=e.ariaProvider)||void 0===n?void 0:n.isChecked)(t.element)}:void 0},additionalScrollHeight:e.additionalScrollHeight})}function XO(e,t){t(e),e.children.forEach((function(e){return XO(e,t)}))}var $O=function(){function e(e,t,n,i,o,r){void 0===r&&(r={}),this.user=e,this.dataSource=o,this.nodes=new Map,this.subTreeRefreshPromises=new Map,this.refreshPromises=new Map,this._onDidRender=new nt,this._onDidChangeNodeSlowState=new nt,this.nodeMapper=new ZI((function(e){return new jO(e)})),this.disposables=new Be,this.identityProvider=r.identityProvider,this.autoExpandSingleChildren=void 0!==r.autoExpandSingleChildren&&r.autoExpandSingleChildren,this.sorter=r.sorter,this.collapseByDefault=r.collapseByDefault,this.tree=this.createTree(e,t,n,i,r),this.root=HO({element:void 0,parent:null,hasChildren:!0}),this.identityProvider&&(this.root=FO(FO({},this.root),{id:null})),this.nodes.set(null,this.root),this.tree.onDidChangeCollapseState(this._onDidChangeCollapseState,this,this.disposables)}return Object.defineProperty(e.prototype,"onDidChangeFocus",{get:function(){return Ge.map(this.tree.onDidChangeFocus,KO)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidChangeSelection",{get:function(){return Ge.map(this.tree.onDidChangeSelection,KO)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidOpen",{get:function(){return Ge.map(this.tree.onDidOpen,KO)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidFocus",{get:function(){return this.tree.onDidFocus},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidDispose",{get:function(){return this.tree.onDidDispose},enumerable:!0,configurable:!0}),e.prototype.createTree=function(e,t,n,i,o){var r=this,s=new aO(n),a=i.map((function(e){return new UO(e,r.nodeMapper,r._onDidChangeNodeSlowState.event)})),u=YO(o)||{};return new TO(e,t,s,a,u)},e.prototype.updateOptions=function(e){void 0===e&&(e={}),this.tree.updateOptions(e)},e.prototype.getHTMLElement=function(){return this.tree.getHTMLElement()},Object.defineProperty(e.prototype,"scrollTop",{get:function(){return this.tree.scrollTop},set:function(e){this.tree.scrollTop=e},enumerable:!0,configurable:!0}),e.prototype.domFocus=function(){this.tree.domFocus()},e.prototype.layout=function(e,t){this.tree.layout(e,t)},e.prototype.style=function(e){this.tree.style(e)},e.prototype.getInput=function(){return this.root.element},e.prototype.setInput=function(e,t){return WO(this,void 0,void 0,(function(){var n;return VO(this,(function(i){switch(i.label){case 0:return this.refreshPromises.forEach((function(e){return e.cancel()})),this.refreshPromises.clear(),this.root.element=e,n=t&&{viewState:t,focus:[],selection:[]},[4,this._updateChildren(e,!0,!1,n)];case 1:return i.sent(),n&&(this.tree.setFocus(n.focus),this.tree.setSelection(n.selection)),t&&"number"==typeof t.scrollTop&&(this.scrollTop=t.scrollTop),[2]}}))}))},e.prototype._updateChildren=function(e,t,n,i){return void 0===e&&(e=this.root.element),void 0===t&&(t=!0),void 0===n&&(n=!1),WO(this,void 0,void 0,(function(){var o;return VO(this,(function(r){switch(r.label){case 0:if(void 0===this.root.element)throw new GI(this.user,"Tree input not set");return this.root.refreshPromise?[4,this.root.refreshPromise]:[3,3];case 1:return r.sent(),[4,Ge.toPromise(this._onDidRender.event)];case 2:r.sent(),r.label=3;case 3:return o=this.getDataNode(e),[4,this.refreshAndRenderNode(o,t,i)];case 4:if(r.sent(),n)try{this.tree.rerender(o)}catch(e){}return[2]}}))}))},e.prototype.rerender=function(e){if(void 0!==e&&e!==this.root.element){var t=this.getDataNode(e);this.tree.rerender(t)}else this.tree.rerender()},e.prototype.collapse=function(e,t){void 0===t&&(t=!1);var n=this.getDataNode(e);return this.tree.collapse(n===this.root?null:n,t)},e.prototype.expand=function(e,t){return void 0===t&&(t=!1),WO(this,void 0,void 0,(function(){var n,i;return VO(this,(function(o){switch(o.label){case 0:if(void 0===this.root.element)throw new GI(this.user,"Tree input not set");return this.root.refreshPromise?[4,this.root.refreshPromise]:[3,3];case 1:return o.sent(),[4,Ge.toPromise(this._onDidRender.event)];case 2:o.sent(),o.label=3;case 3:return n=this.getDataNode(e),this.tree.hasElement(n)&&!this.tree.isCollapsible(n)?[2,!1]:n.refreshPromise?[4,this.root.refreshPromise]:[3,6];case 4:return o.sent(),[4,Ge.toPromise(this._onDidRender.event)];case 5:o.sent(),o.label=6;case 6:return n===this.root||n.refreshPromise||this.tree.isCollapsed(n)?(i=this.tree.expand(n===this.root?null:n,t),n.refreshPromise?[4,this.root.refreshPromise]:[3,9]):[2,!1];case 7:return o.sent(),[4,Ge.toPromise(this._onDidRender.event)];case 8:o.sent(),o.label=9;case 9:return[2,i]}}))}))},e.prototype.setSelection=function(e,t){var n=this,i=e.map((function(e){return n.getDataNode(e)}));this.tree.setSelection(i,t)},e.prototype.getSelection=function(){return this.tree.getSelection().map((function(e){return e.element}))},e.prototype.setFocus=function(e,t){var n=this,i=e.map((function(e){return n.getDataNode(e)}));this.tree.setFocus(i,t)},e.prototype.getFocus=function(){return this.tree.getFocus().map((function(e){return e.element}))},e.prototype.reveal=function(e,t){this.tree.reveal(this.getDataNode(e),t)},e.prototype.getDataNode=function(e){var t=this.nodes.get(e===this.root.element?null:e);if(!t)throw new GI(this.user,"Data tree node not found: "+e);return t},e.prototype.refreshAndRenderNode=function(e,t,n){return WO(this,void 0,void 0,(function(){return VO(this,(function(i){switch(i.label){case 0:return[4,this.refreshNode(e,t,n)];case 1:return i.sent(),this.render(e,n),[2]}}))}))},e.prototype.refreshNode=function(e,t,n){return WO(this,void 0,void 0,(function(){var i,o=this;return VO(this,(function(r){return this.subTreeRefreshPromises.forEach((function(r,s){!i&&function(e,t){return e===t||zO(e,t)||zO(t,e)}(s,e)&&(i=r.then((function(){return o.refreshNode(e,t,n)})))})),i?[2,i]:[2,this.doRefreshSubTree(e,t,n)]}))}))},e.prototype.doRefreshSubTree=function(e,t,n){return WO(this,void 0,void 0,(function(){var i,o,r=this;return VO(this,(function(s){switch(s.label){case 0:e.refreshPromise=new Promise((function(e){return i=e})),this.subTreeRefreshPromises.set(e,e.refreshPromise),e.refreshPromise.finally((function(){e.refreshPromise=void 0,r.subTreeRefreshPromises.delete(e)})),s.label=1;case 1:return s.trys.push([1,,4,5]),[4,this.doRefreshNode(e,t,n)];case 2:return o=s.sent(),e.stale=!1,[4,Promise.all(o.map((function(e){return r.doRefreshSubTree(e,t,n)})))];case 3:return s.sent(),[3,5];case 4:return i(),[7];case 5:return[2]}}))}))},e.prototype.doRefreshNode=function(e,t,n){return WO(this,void 0,void 0,(function(){var i,o,r,s,a=this;return VO(this,(function(u){switch(u.label){case 0:e.hasChildren=!!this.dataSource.hasChildren(e.element),e.hasChildren?((o=gi(800)).then((function(){e.slow=!0,a._onDidChangeNodeSlowState.fire(e)}),(function(e){return null})),i=this.doGetChildren(e).finally((function(){return o.cancel()}))):i=Promise.resolve([]),u.label=1;case 1:return u.trys.push([1,3,4,5]),[4,i];case 2:return r=u.sent(),[2,this.setChildren(e,r,t,n)];case 3:if(s=u.sent(),e!==this.root&&this.tree.collapse(e===this.root?null:e),Ee(s))return[2,[]];throw s;case 4:return e.slow&&(e.slow=!1,this._onDidChangeNodeSlowState.fire(e)),[7];case 5:return[2]}}))}))},e.prototype.doGetChildren=function(e){var t=this,n=this.refreshPromises.get(e);return n||(n=hi((function(){return WO(t,void 0,void 0,(function(){var t;return VO(this,(function(n){switch(n.label){case 0:return[4,this.dataSource.getChildren(e.element)];case 1:return t=n.sent(),[2,this.processChildren(t)]}}))}))})),this.refreshPromises.set(e,n),n.finally((function(){return t.refreshPromises.delete(e)})))},e.prototype._onDidChangeCollapseState=function(e){var t=e.node,n=e.deep;!t.collapsed&&t.element.stale&&(n?this.collapse(t.element.element):this.refreshAndRenderNode(t.element,!1).catch(De))},e.prototype.setChildren=function(e,t,n,i){var o,r=this;if(0===e.children.length&&0===t.length)return[];for(var s=new Map,a=new Map,u=0,l=e.children;u<l.length;u++){var c=l[u];if(s.set(c.element,c),this.identityProvider){var d=this.tree.isCollapsed(c);a.set(c.id,{node:c,collapsed:d})}}for(var h=[],p=t.map((function(t){var o=!!r.dataSource.hasChildren(t);if(!r.identityProvider){var u=HO({element:t,parent:e,hasChildren:o});return o&&r.collapseByDefault&&!r.collapseByDefault(t)&&(u.collapsedByDefault=!1,h.push(u)),u}var l=r.identityProvider.getId(t).toString(),c=a.get(l);if(c){u=c.node;return s.delete(u.element),r.nodes.delete(u.element),r.nodes.set(t,u),u.element=t,u.hasChildren=o,n?c.collapsed?(u.children.forEach((function(e){return XO(e,(function(e){return r.nodes.delete(e.element)}))})),u.children.splice(0,u.children.length),u.stale=!0):h.push(u):o&&r.collapseByDefault&&!r.collapseByDefault(t)&&(u.collapsedByDefault=!1,h.push(u)),u}var d=HO({element:t,parent:e,id:l,hasChildren:o});return i&&i.viewState.focus&&i.viewState.focus.indexOf(l)>-1&&i.focus.push(d),i&&i.viewState.selection&&i.viewState.selection.indexOf(l)>-1&&i.selection.push(d),i&&i.viewState.expanded&&i.viewState.expanded.indexOf(l)>-1?h.push(d):o&&r.collapseByDefault&&!r.collapseByDefault(t)&&(d.collapsedByDefault=!1,h.push(d)),d})),f=0,g=Js(s);f<g.length;f++){XO(g[f],(function(e){return r.nodes.delete(e.element)}))}for(var m=0,v=p;m<v.length;m++){c=v[m];this.nodes.set(c.element,c)}return(o=e.children).splice.apply(o,BO([0,e.children.length],p)),e!==this.root&&this.autoExpandSingleChildren&&1===p.length&&0===h.length&&(p[0].collapsedByDefault=!1,h.push(p[0])),h},e.prototype.render=function(e,t){var n=this,i=e.children.map((function(e){return n.asTreeElement(e,t)}));this.tree.setChildren(e===this.root?null:e,i),e!==this.root&&this.tree.setCollapsible(e,e.hasChildren),this._onDidRender.fire()},e.prototype.asTreeElement=function(e,t){var n,i=this;return e.stale?{element:e,collapsible:e.hasChildren,collapsed:!0}:(n=!(t&&t.viewState.expanded&&e.id&&t.viewState.expanded.indexOf(e.id)>-1)&&e.collapsedByDefault,e.collapsedByDefault=void 0,{element:e,children:e.hasChildren?Ve.map(Ve.fromArray(e.children),(function(e){return i.asTreeElement(e,t)})):[],collapsible:e.hasChildren,collapsed:n})},e.prototype.processChildren=function(e){return this.sorter&&e.sort(this.sorter.compare.bind(this.sorter)),e},e.prototype.dispose=function(){this.disposables.dispose()},e}(),QO=function(){function e(e){this.node=e}return Object.defineProperty(e.prototype,"element",{get:function(){return{elements:this.node.element.elements.map((function(e){return e.element})),incompressible:this.node.element.incompressible}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"children",{get:function(){return this.node.children.map((function(t){return new e(t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"depth",{get:function(){return this.node.depth},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visibleChildrenCount",{get:function(){return this.node.visibleChildrenCount},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visibleChildIndex",{get:function(){return this.node.visibleChildIndex},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"collapsible",{get:function(){return this.node.collapsible},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"collapsed",{get:function(){return this.node.collapsed},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visible",{get:function(){return this.node.visible},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"filterData",{get:function(){return this.node.filterData},enumerable:!0,configurable:!0}),e}(),JO=function(){function e(e,t,n,i){this.renderer=e,this.nodeMapper=t,this.compressibleNodeMapperProvider=n,this.onDidChangeTwistieState=i,this.renderedNodes=new Map,this.disposables=[],this.templateId=e.templateId}return e.prototype.renderTemplate=function(e){return{templateData:this.renderer.renderTemplate(e)}},e.prototype.renderElement=function(e,t,n,i){this.renderer.renderElement(this.nodeMapper.map(e),t,n.templateData,i)},e.prototype.renderCompressedElements=function(e,t,n,i){this.renderer.renderCompressedElements(this.compressibleNodeMapperProvider().map(e),t,n.templateData,i)},e.prototype.renderTwistie=function(e,t){return so(t,"codicon-loading",e.slow),!1},e.prototype.disposeElement=function(e,t,n,i){this.renderer.disposeElement&&this.renderer.disposeElement(this.nodeMapper.map(e),t,n.templateData,i)},e.prototype.disposeCompressedElements=function(e,t,n,i){this.renderer.disposeCompressedElements&&this.renderer.disposeCompressedElements(this.compressibleNodeMapperProvider().map(e),t,n.templateData,i)},e.prototype.disposeTemplate=function(e){this.renderer.disposeTemplate(e.templateData)},e.prototype.dispose=function(){this.renderedNodes.clear(),this.disposables=Ae(this.disposables)},e}();var eM=function(e){function t(t,n,i,o,r,s,a){void 0===a&&(a={});var u=e.call(this,t,n,i,r,s,a)||this;return u.compressionDelegate=o,u.compressibleNodeMapper=new ZI((function(e){return new QO(e)})),u.filter=a.filter,u}return AO(t,e),t.prototype.createTree=function(e,t,n,i,o){var r=this,s=new aO(n),a=i.map((function(e){return new JO(e,r.nodeMapper,(function(){return r.compressibleNodeMapper}),r._onDidChangeNodeSlowState.event)})),u=function(e){var t=e&&YO(e);return t&&FO(FO({},t),{keyboardNavigationLabelProvider:t.keyboardNavigationLabelProvider&&FO(FO({},t.keyboardNavigationLabelProvider),{getCompressedNodeKeyboardNavigationLabel:function(t){return e.keyboardNavigationLabelProvider.getCompressedNodeKeyboardNavigationLabel(t.map((function(e){return e.element})))}})})}(o)||{};return new RO(e,t,s,a,u)},t.prototype.asTreeElement=function(t,n){return FO({incompressible:this.compressionDelegate.isIncompressible(t.element)},e.prototype.asTreeElement.call(this,t,n))},t.prototype.updateOptions=function(e){void 0===e&&(e={}),this.tree.updateOptions(e)},t.prototype.render=function(t,n){var i=this;if(!this.identityProvider)return e.prototype.render.call(this,t,n);var o=function(e){return i.identityProvider.getId(e).toString()},r=function(e){for(var t=new Set,n=0,r=e;n<r.length;n++){var s=r[n],a=i.tree.getCompressedTreeNode(s===i.root?null:s);if(a.element)for(var u=0,l=a.element.elements;u<l.length;u++){var c=l[u];t.add(o(c.element))}}return t},s=r(this.tree.getSelection()),a=r(this.tree.getFocus());e.prototype.render.call(this,t,n);var u=this.getSelection(),l=!1,c=this.getFocus(),d=!1,h=function(e){var t=e.element;if(t)for(var n=0;n<t.elements.length;n++){var i=o(t.elements[n].element),r=t.elements[t.elements.length-1].element;s.has(i)&&-1===u.indexOf(r)&&(u.push(r),l=!0),a.has(i)&&-1===c.indexOf(r)&&(c.push(r),d=!0)}e.children.forEach(h)};h(this.tree.getCompressedTreeNode(t===this.root?null:t)),l&&this.setSelection(u),d&&this.setFocus(c)},t.prototype.processChildren=function(t){var n=this;return this.filter&&(t=t.filter((function(e){var t,i=n.filter.filter(e,1),o="boolean"==typeof(t=i)?t?1:0:XI(t)?$I(t.visibility):$I(t);if(2===o)throw new Error("Recursive tree visibility not supported in async data compressed trees");return 1===o}))),e.prototype.processChildren.call(this,t)},t}($O);var tM,nM=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),iM=function(e){function t(t,n,i,o,r,s){void 0===s&&(s={});var a=e.call(this,t,n,i,o,s)||this;return a.user=t,a.dataSource=r,a.identityProvider=s.identityProvider,a}return nM(t,e),t.prototype.createModel=function(e,t,n){return new wO(e,t,n)},t}(_O),oM=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),rM=function(){return(rM=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},sM=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},aM=function(e,t){return function(n,i){t(n,i,e)}},uM=Mn("listService"),lM=function(){function e(e){this._themeService=e,this.disposables=new Be,this.lists=[],this._lastFocusedWidget=void 0,this._hasCreatedStyleController=!1}return Object.defineProperty(e.prototype,"lastFocusedList",{get:function(){return this._lastFocusedWidget},enumerable:!0,configurable:!0}),e.prototype.register=function(e,t){var n=this;if(!this._hasCreatedStyleController){this._hasCreatedStyleController=!0;var i=new FI(zo(),"");this.disposables.add(Gk(i,this._themeService))}if(this.lists.some((function(t){return t.widget===e})))throw new Error("Cannot register the same widget multiple times");var o={widget:e,extraContextKeys:t};return this.lists.push(o),e.getHTMLElement()===document.activeElement&&(this._lastFocusedWidget=e),Fe(e.onDidFocus((function(){return n._lastFocusedWidget=e})),We((function(){return n.lists.splice(n.lists.indexOf(o),1)})),e.onDidDispose((function(){n.lists=n.lists.filter((function(e){return e!==o})),n._lastFocusedWidget===e&&(n._lastFocusedWidget=void 0)})))},e.prototype.dispose=function(){this.disposables.dispose()},e=sM([aM(0,fg)],e)}(),cM=new Kh("listFocus",!0),dM=new Kh("listSupportsMultiselect",!0),hM=Rh.and(cM,Rh.not("inputFocus")),pM=new Kh("listHasSelectionOrFocus",!1),fM=new Kh("listDoubleSelection",!1),gM=new Kh("listMultiSelection",!1),mM=new Kh("listSupportsKeyboardNavigation",!0),vM=new Kh("listAutomaticKeyboardNavigation",!0),_M=!1;var yM="workbench.tree.indent";function bM(e){return"alt"===e.getValue("workbench.list.multiSelectModifier")}function wM(e){return"doubleClick"!==e.getValue("workbench.list.openMode")}var CM=function(e){function t(t){var n=e.call(this)||this;return n.configurationService=t,n.useAltAsMultipleSelectionModifier=bM(t),n.registerListeners(),n}return oM(t,e),t.prototype.registerListeners=function(){var e=this;this._register(this.configurationService.onDidChangeConfiguration((function(t){t.affectsConfiguration("workbench.list.multiSelectModifier")&&(e.useAltAsMultipleSelectionModifier=bM(e.configurationService))})))},t.prototype.isSelectionSingleChangeEvent=function(e){return this.useAltAsMultipleSelectionModifier?e.browserEvent.altKey:OI(e)},t.prototype.isSelectionRangeChangeEvent=function(e){return MI(e)},t}(He),SM=function(e){function t(t,n){var i=e.call(this)||this;return i.configurationService=t,i.existingOpenController=n,i.openOnSingleClick=wM(t),i.registerListeners(),i}return oM(t,e),t.prototype.registerListeners=function(){var e=this;this._register(this.configurationService.onDidChangeConfiguration((function(t){t.affectsConfiguration("workbench.list.openMode")&&(e.openOnSingleClick=wM(e.configurationService))})))},t.prototype.shouldOpen=function(e){if(e instanceof MouseEvent){var t=0===e.button,n=2===e.detail;return!(t&&!this.openOnSingleClick&&!n)&&(!(!t&&1!==e.button)&&(!this.existingOpenController||this.existingOpenController.shouldOpen(e)))}return!this.existingOpenController||this.existingOpenController.shouldOpen(e)},t}(He);function LM(e,t){var n=!1;return function(i){if(n)return n=!1,!1;var o=t.softDispatch(i,e);return o&&o.enterChord?(n=!0,!1):(n=!1,!0)}}(function(e){function t(t,n,i,o,r,s,a,u,l,c,d){var h=this,p=DM(n,r,s,l,c,d),f=p.options,g=p.getAutomaticKeyboardNavigation,m=p.disposable;return(h=e.call(this,t,n,i,o,f)||this).disposables.add(m),h.internals=new EM(h,f,g,r.overrideStyles,s,a,u,l,d),h.disposables.add(h.internals),h}oM(t,e),t=sM([aM(5,qh),aM(6,uM),aM(7,fg),aM(8,wh),aM(9,XD),aM(10,gx)],t)})(TO),function(e){function t(t,n,i,o,r,s,a,u,l,c,d,h){var p=this,f=DM(n,s,a,c,d,h),g=f.options,m=f.getAutomaticKeyboardNavigation,v=f.disposable;return(p=e.call(this,t,n,i,o,r,g)||this).disposables.add(v),p.internals=new EM(p,g,m,s.overrideStyles,a,u,l,c,h),p.disposables.add(p.internals),p}oM(t,e),t.prototype.updateOptions=function(t){void 0===t&&(t={}),e.prototype.updateOptions.call(this,t),t.overrideStyles&&this.internals.updateStyleOverrides(t.overrideStyles)},t=sM([aM(6,qh),aM(7,uM),aM(8,fg),aM(9,wh),aM(10,XD),aM(11,gx)],t)}(iM);var xM=function(e){function t(t,n,i,o,r,s,a,u,l,c,d,h){var p=this,f=DM(n,s,a,c,d,h),g=f.options,m=f.getAutomaticKeyboardNavigation,v=f.disposable;return(p=e.call(this,t,n,i,o,r,g)||this).disposables.add(v),p.internals=new EM(p,g,m,s.overrideStyles,a,u,l,c,h),p.disposables.add(p.internals),p}return oM(t,e),t.prototype.updateOptions=function(t){void 0===t&&(t={}),e.prototype.updateOptions.call(this,t),t.overrideStyles&&this.internals.updateStyleOverrides(t.overrideStyles)},t=sM([aM(6,qh),aM(7,uM),aM(8,fg),aM(9,wh),aM(10,XD),aM(11,gx)],t)}($O);!function(e){function t(t,n,i,o,r,s,a,u,l,c,d,h,p){var f=this,g=DM(n,a,u,d,h,p),m=g.options,v=g.getAutomaticKeyboardNavigation,_=g.disposable;return(f=e.call(this,t,n,i,o,r,s,m)||this).disposables.add(_),f.internals=new EM(f,m,v,a.overrideStyles,u,l,c,d,p),f.disposables.add(f.internals),f}oM(t,e),t=sM([aM(7,qh),aM(8,uM),aM(9,fg),aM(10,wh),aM(11,XD),aM(12,gx)],t)}(eM);function DM(e,t,n,i,o,r){mM.bindTo(n),_M||(vM.bindTo(n),_M=!0);var s=function(){var e=n.getContextKeyValue("listAutomaticKeyboardNavigation");return e&&(e=i.getValue("workbench.list.automaticKeyboardNavigation")),e},a=r.isScreenReaderOptimized()?"simple":i.getValue("workbench.list.keyboardNavigation"),u=void 0!==t.horizontalScrolling?t.horizontalScrolling:function(e){return function(e,t,n){var i=e.inspect(t),o=e.inspect(n);return void 0!==i.userValue||void 0!==i.workspaceValue||void 0!==i.workspaceFolderValue?i.value:void 0!==o.userValue||void 0!==o.workspaceValue||void 0!==o.workspaceFolderValue?o.value:i.defaultValue}(e,"workbench.list.horizontalScrolling","workbench.tree.horizontalScrolling")}(i),l=wM(i),c=function(e,t,n){var i=new Be,o=rM({},e);if(!1!==e.multipleSelectionSupport&&!e.multipleSelectionController){var r=new CM(t);o.multipleSelectionController=r,i.add(r)}var s=new SM(t,e.openController);return o.openController=s,i.add(s),o.keyboardNavigationDelegate={mightProducePrintableCharacter:function(e){return n.mightProducePrintableCharacter(e)}},[o,i]}(t,i,o),d=c[0],h=c[1],p=t.additionalScrollHeight;return{getAutomaticKeyboardNavigation:s,disposable:h,options:rM(rM({keyboardSupport:!1},d),{indent:i.getValue(yM),renderIndentGuides:i.getValue("workbench.tree.renderIndentGuides"),automaticKeyboardNavigation:s(),simpleKeyboardNavigation:"simple"===a,filterOnType:"filter"===a,horizontalScrolling:u,openOnSingleClick:l,keyboardNavigationEventFilter:LM(e,o),additionalScrollHeight:p,hideTwistiesOfChildlessElements:t.hideTwistiesOfChildlessElements})}}var NM,kM,EM=function(){function e(e,t,n,i,o,r,s,a,u){var l=this;this.tree=e,this.themeService=s,this.disposables=[],this.contextKeyService=function(e,t){var n=e.createScoped(t.getHTMLElement());return cM.bindTo(n),n}(o,e),dM.bindTo(this.contextKeyService).set(!(!1===t.multipleSelectionSupport)),this.hasSelectionOrFocus=pM.bindTo(this.contextKeyService),this.hasDoubleSelection=fM.bindTo(this.contextKeyService),this.hasMultiSelection=gM.bindTo(this.contextKeyService),this._useAltAsMultipleSelectionModifier=bM(a);var c=new Set;c.add("listAutomaticKeyboardNavigation");var d=function(){var t=u.isScreenReaderOptimized()?"simple":a.getValue("workbench.list.keyboardNavigation");e.updateOptions({simpleKeyboardNavigation:"simple"===t,filterOnType:"filter"===t})};this.updateStyleOverrides(i),this.disposables.push(this.contextKeyService,r.register(e),e.onDidChangeSelection((function(){var t=e.getSelection(),n=e.getFocus();l.hasSelectionOrFocus.set(t.length>0||n.length>0),l.hasMultiSelection.set(t.length>1),l.hasDoubleSelection.set(2===t.length)})),e.onDidChangeFocus((function(){var t=e.getSelection(),n=e.getFocus();l.hasSelectionOrFocus.set(t.length>0||n.length>0)})),a.onDidChangeConfiguration((function(t){if(t.affectsConfiguration("workbench.list.openMode")&&e.updateOptions({openOnSingleClick:wM(a)}),t.affectsConfiguration("workbench.list.multiSelectModifier")&&(l._useAltAsMultipleSelectionModifier=bM(a)),t.affectsConfiguration(yM)){var i=a.getValue(yM);e.updateOptions({indent:i})}if(t.affectsConfiguration("workbench.tree.renderIndentGuides")){var o=a.getValue("workbench.tree.renderIndentGuides");e.updateOptions({renderIndentGuides:o})}t.affectsConfiguration("workbench.list.keyboardNavigation")&&d(),t.affectsConfiguration("workbench.list.automaticKeyboardNavigation")&&e.updateOptions({automaticKeyboardNavigation:n()})})),this.contextKeyService.onDidChangeContext((function(t){t.affectsSome(c)&&e.updateOptions({automaticKeyboardNavigation:n()})})),u.onDidChangeScreenReaderOptimized((function(){return d()})))}return e.prototype.updateStyleOverrides=function(e){Ae(this.styler),this.styler=e?Gk(this.tree,this.themeService,e):He.None},e.prototype.dispose=function(){this.disposables=Ae(this.disposables),this.styler=Ae(this.styler)},e=sM([aM(4,qh),aM(5,uM),aM(6,fg),aM(7,wh),aM(8,gx)],e)}();Td.as(Ad).registerConfiguration({id:"workbench",order:7,title:r("workbenchConfigurationTitle","Workbench"),type:"object",properties:(tM={},tM["workbench.list.multiSelectModifier"]={type:"string",enum:["ctrlCmd","alt"],enumDescriptions:[r("multiSelectModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),r("multiSelectModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],default:"ctrlCmd",description:r({key:"multiSelectModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add an item in trees and lists to a multi-selection with the mouse (for example in the explorer, open editors and scm view). The 'Open to Side' mouse gestures - if supported - will adapt such that they do not conflict with the multiselect modifier.")},tM["workbench.list.openMode"]={type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:r({key:"openModeModifier",comment:["`singleClick` and `doubleClick` refers to a value the setting can take and should not be localized."]},"Controls how to open items in trees and lists using the mouse (if supported). For parents with children in trees, this setting will control if a single click expands the parent or a double click. Note that some trees and lists might choose to ignore this setting if it is not applicable. ")},tM["workbench.list.horizontalScrolling"]={type:"boolean",default:!1,description:r("horizontalScrolling setting","Controls whether lists and trees support horizontal scrolling in the workbench.")},tM["workbench.tree.horizontalScrolling"]={type:"boolean",default:!1,description:r("tree horizontalScrolling setting","Controls whether trees support horizontal scrolling in the workbench."),deprecationMessage:r("deprecated","This setting is deprecated, please use '{0}' instead.","workbench.list.horizontalScrolling")},tM[yM]={type:"number",default:8,minimum:0,maximum:40,description:r("tree indent setting","Controls tree indentation in pixels.")},tM["workbench.tree.renderIndentGuides"]={type:"string",enum:["none","onHover","always"],default:"onHover",description:r("render tree indent guides","Controls whether the tree should render indent guides.")},tM["workbench.list.keyboardNavigation"]={type:"string",enum:["simple","highlight","filter"],enumDescriptions:[r("keyboardNavigationSettingKey.simple","Simple keyboard navigation focuses elements which match the keyboard input. Matching is done only on prefixes."),r("keyboardNavigationSettingKey.highlight","Highlight keyboard navigation highlights elements which match the keyboard input. Further up and down navigation will traverse only the highlighted elements."),r("keyboardNavigationSettingKey.filter","Filter keyboard navigation will filter out and hide all the elements which do not match the keyboard input.")],default:"highlight",description:r("keyboardNavigationSettingKey","Controls the keyboard navigation style for lists and trees in the workbench. Can be simple, highlight and filter.")},tM["workbench.list.automaticKeyboardNavigation"]={type:"boolean",default:!0,markdownDescription:r("automatic keyboard navigation setting","Controls whether keyboard navigation in lists and trees is automatically triggered simply by typing. If set to `false`, keyboard navigation is only triggered when executing the `list.toggleKeyboardNavigation` command, for which you can assign a keyboard shortcut.")},tM)}),function(e){e[e.Hint=1]="Hint",e[e.Info=2]="Info",e[e.Warning=4]="Warning",e[e.Error=8]="Error"}(NM||(NM={})),function(e){e.compare=function(e,t){return t-e};var t=Object.create(null);t[e.Error]=r("sev.error","Error"),t[e.Warning]=r("sev.warning","Warning"),t[e.Info]=r("sev.info","Info"),e.toString=function(e){return t[e]||""},e.fromSeverity=function(t){switch(t){case Od.Error:return e.Error;case Od.Warning:return e.Warning;case Od.Info:return e.Info;case Od.Ignore:return e.Hint}},e.toSeverity=function(t){switch(t){case e.Error:return Od.Error;case e.Warning:return Od.Warning;case e.Info:return Od.Info;case e.Hint:return Od.Ignore}}}(NM||(NM={})),function(e){function t(e,t){var n=[""];return e.source?n.push(e.source.replace("¦","¦")):n.push(""),e.code?"string"==typeof e.code?n.push(e.code.replace("¦","¦")):n.push(e.code.value.replace("¦","¦")):n.push(""),void 0!==e.severity&&null!==e.severity?n.push(NM.toString(e.severity)):n.push(""),e.message&&t?n.push(e.message.replace("¦","¦")):n.push(""),void 0!==e.startLineNumber&&null!==e.startLineNumber?n.push(e.startLineNumber.toString()):n.push(""),void 0!==e.startColumn&&null!==e.startColumn?n.push(e.startColumn.toString()):n.push(""),void 0!==e.endLineNumber&&null!==e.endLineNumber?n.push(e.endLineNumber.toString()):n.push(""),void 0!==e.endColumn&&null!==e.endColumn?n.push(e.endColumn.toString()):n.push(""),n.push(""),n.join("¦")}e.makeKey=function(e){return t(e,!0)},e.makeKeyOptionalMessage=t}(kM||(kM={}));var IM,OM,MM=Mn("markerService");(OM=IM||(IM={})).get=function(e,t,n){if(e[t])return e[t][n]},OM.set=function(e,t,n,i){e[t]||(e[t]=Object.create(null)),e[t][n]=i},OM.remove=function(e,t,n){return!(!e[t]||!e[t][n]||(delete e[t][n],Us(e[t])&&delete e[t],0))};var TM,PM=function(){function e(e){this.errors=0,this.infos=0,this.warnings=0,this.unknowns=0,this._data=Object.create(null),this._service=e,this._subscription=e.onMarkerChanged(this._update,this)}return e.prototype.dispose=function(){this._subscription.dispose(),this._data=void 0},e.prototype._update=function(e){if(this._data)for(var t=0,n=e;t<n.length;t++){var i=n[t],o=i.toString(),r=this._data[o];r&&this._substract(r);var s=this._resourceStats(i);this._add(s),this._data[o]=s}},e.prototype._resourceStats=function(e){var t={errors:0,warnings:0,infos:0,unknowns:0};if(e.scheme===Ci.inMemory||e.scheme===Ci.walkThrough||e.scheme===Ci.walkThroughSnippet)return t;for(var n=0,i=this._service.read({resource:e});n<i.length;n++){var o=i[n].severity;o===NM.Error?t.errors+=1:o===NM.Warning?t.warnings+=1:o===NM.Info?t.infos+=1:t.unknowns+=1}return t},e.prototype._substract=function(e){this.errors-=e.errors,this.warnings-=e.warnings,this.infos-=e.infos,this.unknowns-=e.unknowns},e.prototype._add=function(e){this.errors+=e.errors,this.warnings+=e.warnings,this.infos+=e.infos,this.unknowns+=e.unknowns},e}(),RM=function(){function e(){this._onMarkerChanged=new nt,this._onMarkerChangedEvent=Ge.debounce(this._onMarkerChanged.event,e._debouncer,0),this._byResource=Object.create(null),this._byOwner=Object.create(null),this._stats=new PM(this)}return e.prototype.dispose=function(){this._stats.dispose()},Object.defineProperty(e.prototype,"onMarkerChanged",{get:function(){return this._onMarkerChangedEvent},enumerable:!0,configurable:!0}),e.prototype.remove=function(e,t){for(var n=0,i=t||[];n<i.length;n++){var o=i[n];this.changeOne(e,o,[])}},e.prototype.changeOne=function(t,n,i){if(Ii(i)){var o=IM.remove(this._byResource,n.toString(),t),r=IM.remove(this._byOwner,t,n.toString());if(o!==r)throw new Error("invalid marker service state");o&&r&&this._onMarkerChanged.fire([n])}else{for(var s=[],a=0,u=i;a<u.length;a++){var l=u[a],c=e._toMarker(t,n,l);c&&s.push(c)}IM.set(this._byResource,n.toString(),t,s),IM.set(this._byOwner,t,n.toString(),s),this._onMarkerChanged.fire([n])}},e._toMarker=function(e,t,n){var i=n.code,o=n.severity,r=n.message,s=n.source,a=n.startLineNumber,u=n.startColumn,l=n.endLineNumber,c=n.endColumn,d=n.relatedInformation,h=n.tags;if(r)return{resource:t,owner:e,code:i,severity:o,message:r,source:s,startLineNumber:a=a>0?a:1,startColumn:u=u>0?u:1,endLineNumber:l=l>=a?l:a,endColumn:c=c>0?c:u,relatedInformation:d,tags:h}},e.prototype.read=function(t){void 0===t&&(t=Object.create(null));var n=t.owner,i=t.resource,o=t.severities,r=t.take;if((!r||r<0)&&(r=-1),n&&i){if(y=IM.get(this._byResource,i.toString(),n)){for(var s=[],a=0,u=y;a<u.length;a++){var l=u[a];if(e._accept(l,o)){var c=s.push(l);if(r>0&&c===r)break}}return s}return[]}if(n||i){var d=n?this._byOwner[n]:i?this._byResource[i.toString()]:void 0;if(!d)return[];s=[];for(var h in d)for(var p=0,f=d[h];p<f.length;p++){y=f[p];if(e._accept(y,o)){c=s.push(y);if(r>0&&c===r)return s}}return s}var s=[];for(var g in this._byResource)for(var m in this._byResource[g])for(var v=0,_=this._byResource[g][m];v<_.length;v++){var y=_[v];if(e._accept(y,o)){var c=s.push(y);if(r>0&&c===r)return s}}return s},e._accept=function(e,t){return void 0===t||(t&e.severity)===e.severity},e._debouncer=function(t,n){t||(e._dedupeMap=Object.create(null),t=[]);for(var i=0,o=n;i<o.length;i++){var r=o[i];void 0===e._dedupeMap[r.toString()]&&(e._dedupeMap[r.toString()]=!0,t.push(r))}return t},e}(),AM=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),FM=Mn("storageService");!function(e){e[e.NONE=0]="NONE",e[e.SHUTDOWN=1]="SHUTDOWN"}(TM||(TM={}));var WM=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._onDidChangeStorage=t._register(new nt),t.onDidChangeStorage=t._onDidChangeStorage.event,t._onWillSaveState=t._register(new nt),t.onWillSaveState=t._onWillSaveState.event,t.globalCache=new Map,t.workspaceCache=new Map,t}return AM(t,e),t.prototype.getCache=function(e){return 0===e?this.globalCache:this.workspaceCache},t.prototype.get=function(e,t,n){var i=this.getCache(t).get(e);return Hs(i)?n:i},t.prototype.getBoolean=function(e,t,n){var i=this.getCache(t).get(e);return Hs(i)?n:"true"===i},t.prototype.store=function(e,t,n){if(Hs(t))return this.remove(e,n);var i=String(t);return this.getCache(n).get(e)===i||(this.getCache(n).set(e,i),this._onDidChangeStorage.fire({scope:n,key:e})),Promise.resolve()},t.prototype.remove=function(e,t){return this.getCache(t).delete(e)?(this._onDidChangeStorage.fire({scope:t,key:e}),Promise.resolve()):Promise.resolve()},t}(He),VM=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},BM=function(e,t){return function(n,i){t(n,i,e)}},HM=function(){function e(e){this._commandService=e}return e.prototype.createMenu=function(e,t){return new zM(e,this._commandService,t)},e=VM([BM(0,la)],e)}(),zM=function(){function e(e,t,n){var i=this;this._id=e,this._commandService=t,this._contextKeyService=n,this._onDidChange=new nt,this._dispoables=new Be,this._menuGroups=[],this._contextKeys=new Set,this._build(),this._dispoables.add(Ge.debounce(Ge.filter(bf.onDidChangeMenu,(function(e){return e===i._id})),(function(){}),50)(this._build,this)),this._dispoables.add(Ge.debounce(this._contextKeyService.onDidChangeContext,(function(e,t){return e||t.affectsSome(i._contextKeys)}),50)((function(e){return e&&i._onDidChange.fire(void 0)}),this))}return e.prototype.dispose=function(){this._dispoables.dispose(),this._onDidChange.dispose()},e.prototype._build=function(){this._menuGroups.length=0,this._contextKeys.clear();var t,n=bf.getMenuItems(this._id);n.sort(e._compareMenuItems);for(var i=0,o=n;i<o.length;i++){var r=o[i],s=r.group||"";t&&t[0]===s||(t=[s,[]],this._menuGroups.push(t)),t[1].push(r),e._fillInKbExprKeys(r.when,this._contextKeys),vf(r)&&r.command.precondition&&e._fillInKbExprKeys(r.command.precondition,this._contextKeys),vf(r)&&r.command.toggled&&e._fillInKbExprKeys(r.command.toggled,this._contextKeys)}this._onDidChange.fire(this)},e.prototype.getActions=function(e){for(var t=[],n=0,i=this._menuGroups;n<i.length;n++){for(var o=i[n],r=o[0],s=[],a=0,u=o[1];a<u.length;a++){var l=u[a];if(this._contextKeyService.contextMatchesRules(l.when)){var c=vf(l)?new Sf(l.command,l.alt,e,this._contextKeyService,this._commandService):new Cf(l);s.push(c)}}s.length>0&&t.push([r,s])}return t},e._fillInKbExprKeys=function(e,t){if(e)for(var n=0,i=e.keys();n<i.length;n++){var o=i[n];t.add(o)}},e._compareMenuItems=function(t,n){var i=t.group,o=n.group;if(i!==o){if(!i)return 1;if(!o)return-1;if("navigation"===i)return-1;if("navigation"===o)return 1;var r=i.localeCompare(o);if(0!==r)return r}var s=t.order||0,a=n.order||0;return s<a?-1:s>a?1:e._compareTitles(vf(t)?t.command.title:t.title,vf(n)?n.command.title:n.title)},e._compareTitles=function(e,t){var n="string"==typeof e?e:e.value,i="string"==typeof t?t:t.value;return n.localeCompare(i)},e=VM([BM(1,la),BM(2,qh)],e)}(),jM=Mn("markerDecorationsService"),UM=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),KM=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},qM=function(e,t){return function(n,i){t(n,i,e)}};function GM(e){return e.toString()}var ZM,YM=function(e){function t(t){var n=e.call(this)||this;return n.model=t,n._markersData=new Map,n._register(We((function(){n.model.deltaDecorations(ea(n._markersData),[]),n._markersData.clear()}))),n}return UM(t,e),t.prototype.update=function(e,t){var n=ea(this._markersData);this._markersData.clear();for(var i=this.model.deltaDecorations(n,t),o=0;o<i.length;o++)this._markersData.set(i[o],e[o])},t.prototype.getMarker=function(e){return this._markersData.get(e.id)},t}(He),XM=function(e){function t(t,n){var i=e.call(this)||this;return i._markerService=n,i._onDidChangeMarker=i._register(new nt),i._markerDecorations=new Map,t.getModels().forEach((function(e){return i._onModelAdded(e)})),i._register(t.onModelAdded(i._onModelAdded,i)),i._register(t.onModelRemoved(i._onModelRemoved,i)),i._register(i._markerService.onMarkerChanged(i._handleMarkerChange,i)),i}return UM(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._markerDecorations.forEach((function(e){return e.dispose()})),this._markerDecorations.clear()},t.prototype.getMarker=function(e,t){var n=this._markerDecorations.get(GM(e.uri));return n?$s(n.getMarker(t)):null},t.prototype._handleMarkerChange=function(e){var t=this;e.forEach((function(e){var n=t._markerDecorations.get(GM(e));n&&t._updateDecorations(n)}))},t.prototype._onModelAdded=function(e){var t=new YM(e);this._markerDecorations.set(GM(e.uri),t),this._updateDecorations(t)},t.prototype._onModelRemoved=function(e){var t=this,n=this._markerDecorations.get(GM(e.uri));n&&(n.dispose(),this._markerDecorations.delete(GM(e.uri))),e.uri.scheme!==Ci.inMemory&&e.uri.scheme!==Ci.internal&&e.uri.scheme!==Ci.vscode||this._markerService&&this._markerService.read({resource:e.uri}).map((function(e){return e.owner})).forEach((function(n){return t._markerService.remove(n,[e.uri])}))},t.prototype._updateDecorations=function(e){var t=this,n=this._markerService.read({resource:e.model.uri,take:500}),i=n.map((function(n){return{range:t._createDecorationRange(e.model,n),options:t._createDecorationOption(n)}}));e.update(n,i),this._onDidChangeMarker.fire(e.model)},t.prototype._createDecorationRange=function(e,t){var n=wn.lift(t);if(t.severity!==NM.Hint||this._hasMarkerTag(t,1)||this._hasMarkerTag(t,2)||(n=n.setEndPosition(n.startLineNumber,n.startColumn+2)),(n=e.validateRange(n)).isEmpty()){var i=e.getWordAtPosition(n.getStartPosition());if(i)n=new wn(n.startLineNumber,i.startColumn,n.endLineNumber,i.endColumn);else{var o=e.getLineLastNonWhitespaceColumn(n.startLineNumber)||e.getLineMaxColumn(n.startLineNumber);1===o||(n=n.endColumn>=o?new wn(n.startLineNumber,o-1,n.endLineNumber,o):new wn(n.startLineNumber,n.startColumn,n.endLineNumber,n.endColumn+1))}}else if(t.endColumn===Number.MAX_VALUE&&1===t.startColumn&&n.startLineNumber===n.endLineNumber){var r=e.getLineFirstNonWhitespaceColumn(t.startLineNumber);r<n.endColumn&&(n=new wn(n.startLineNumber,r,n.endLineNumber,n.endColumn),t.startColumn=r)}return n},t.prototype._createDecorationOption=function(e){var t,n,i,o=void 0,r=void 0;switch(e.severity){case NM.Hint:t=this._hasMarkerTag(e,2)?void 0:this._hasMarkerTag(e,1)?"squiggly-unnecessary":"squiggly-hint",n=0;break;case NM.Warning:t="squiggly-warning",o=gg(rw),n=20,i={color:gg(xb),position:Ba.Inline};break;case NM.Info:t="squiggly-info",o=gg(sw),n=10;break;case NM.Error:default:t="squiggly-error",o=gg(ow),n=30,i={color:gg(Lb),position:Ba.Inline}}return e.tags&&(-1!==e.tags.indexOf(1)&&(r="squiggly-inline-unnecessary"),-1!==e.tags.indexOf(2)&&(r="squiggly-inline-deprecated")),{stickiness:1,className:t,showIfCollapsed:!0,overviewRuler:{color:o,position:Va.Right},minimap:i,zIndex:n,inlineClassName:r}},t.prototype._hasMarkerTag=function(e,t){return!!e.tags&&e.tags.indexOf(t)>=0},t=KM([qM(0,du),qM(1,MM)],t)}(He),$M=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),QM=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},JM=function(e,t){return function(n,i){t(n,i,e)}},eT=function(e){function t(t,n){var i=e.call(this)||this;i._contextKeyService=t,i._configurationService=n,i._accessibilitySupport=0,i._onDidChangeScreenReaderOptimized=new nt,i._accessibilityModeEnabledContext=mx.bindTo(i._contextKeyService);var o=function(){return i._accessibilityModeEnabledContext.set(i.isScreenReaderOptimized())};return i._register(i._configurationService.onDidChangeConfiguration((function(e){e.affectsConfiguration("editor.accessibilitySupport")&&(o(),i._onDidChangeScreenReaderOptimized.fire())}))),o(),i.onDidChangeScreenReaderOptimized((function(){return o()})),i}return $M(t,e),Object.defineProperty(t.prototype,"onDidChangeScreenReaderOptimized",{get:function(){return this._onDidChangeScreenReaderOptimized.event},enumerable:!0,configurable:!0}),t.prototype.isScreenReaderOptimized=function(){var e=this._configurationService.getValue("editor.accessibilitySupport");return"on"===e||"auto"===e&&2===this._accessibilitySupport},t.prototype.getAccessibilitySupport=function(){return this._accessibilitySupport},t=QM([JM(0,qh),JM(1,wh)],t)}(He),tT=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();!function(e){var t=new fx,n=function(){function e(e,t){this._serviceId=e,this._factory=t,this._value=null}return Object.defineProperty(e.prototype,"id",{get:function(){return this._serviceId},enumerable:!0,configurable:!0}),e.prototype.get=function(e){if(!this._value){if(e&&(this._value=e[this._serviceId.toString()]),this._value||(this._value=this._factory(e)),!this._value)throw new Error("Service "+this._serviceId+" is missing!");t.set(this._serviceId,this._value)}return this._value},e}();e.LazyStaticService=n;var i=[];function o(e,t){var o=new n(e,t);return i.push(o),o}e.init=function(e){for(var t=new fx,n=0,o=$x;n<o.length;n++){var r=o[n],s=r[0],a=r[1];t.set(s,a)}for(var u in e)e.hasOwnProperty(u)&&t.set(Mn(u),e[u]);i.forEach((function(n){return t.set(n.id,n.get(e))}));var l=new vE(t,!0);return t.set(In,l),[t,l]},e.instantiationService=o(In,(function(){return new vE(t,!0)}));var r=new Ap;e.configurationService=o(wh,(function(){return r})),e.resourceConfigurationService=o(vc,(function(){return new Fp(r)})),e.resourcePropertiesService=o(_c,(function(){return new Wp(r)})),e.contextService=o(lp,(function(){return new Bp})),e.labelService=o(yE,(function(){return new qp})),e.telemetryService=o(Lf,(function(){return new Vp})),e.dialogService=o(cE,(function(){return new Op})),e.notificationService=o(ap,(function(){return new Mp})),e.markerService=o(MM,(function(){return new RM})),e.modeService=o(lN,(function(e){return new LN})),e.standaloneThemeService=o(YD,(function(){return new wk})),e.logService=o(yc,(function(){return new bc})),e.modelService=o(du,(function(t){return new ON(e.configurationService.get(t),e.resourcePropertiesService.get(t),e.standaloneThemeService.get(t),e.logService.get(t))})),e.markerDecorationsService=o(jM,(function(t){return new XM(e.modelService.get(t),e.markerService.get(t))})),e.codeEditorService=o(Pn,(function(t){return new JN(e.standaloneThemeService.get(t))})),e.editorProgressService=o(OD,(function(){return new Ip})),e.storageService=o(FM,(function(){return new WM})),e.editorWorkerService=o(el,(function(t){return new Ec(e.modelService.get(t),e.resourceConfigurationService.get(t),e.logService.get(t))}))}(ZM||(ZM={}));var nT=function(e){function t(t,n){var i=e.call(this)||this,o=ZM.init(n),r=o[0],s=o[1];i._serviceCollection=r,i._instantiationService=s;var a=i.get(wh),u=i.get(ap),l=i.get(Lf),c=i.get(fg),d=function(e,t){var o=null;return n&&(o=n[e.toString()]),o||(o=t()),i._serviceCollection.set(e,o),o},h=d(qh,(function(){return i._register(new Tk(a))}));d(gx,(function(){return new eT(h,a)})),d(uM,(function(){return new lM(c)}));var p=d(la,(function(){return new Tp(i._instantiationService)})),f=d(XD,(function(){return i._register(new Pp(h,p,l,u,t))})),g=d(rE,(function(){return new Gp(t)})),m=d(xD,(function(){return i._register(new lE(g))}));return d(DD,(function(){var e=new tE(l,u,m,f,c);return e.configure({blockMouse:!1}),i._register(e)})),d(yf,(function(){return new HM(p)})),d(uN,(function(){return new Kp(ZM.modelService.get(du))})),i}return tT(t,e),t.prototype.get=function(e){var t=this._serviceCollection.get(e);if(!t)throw new Error("Missing service "+e);return t},t.prototype.set=function(e,t){this._serviceCollection.set(e,t)},t.prototype.has=function(e){return this._serviceCollection.has(e)},t}(He);function iT(e,t,n){var i=new nT(e,t),o=null;i.has(tl)||(o=new Ep(ZM.modelService.get()),i.set(tl,o)),i.has(pa)||i.set(pa,new Sa(i.get(Pn),i.get(la)));var r=n(i);return o&&o.setEditor(r),r}function oT(e,t,n){return iT(e,n||{},(function(n){return new sN(e,t,n,n.get(In),n.get(Pn),n.get(la),n.get(qh),n.get(XD),n.get(xD),n.get(YD),n.get(ap),n.get(wh),n.get(gx))}))}function rT(e){return ZM.codeEditorService.get().onCodeEditorAdd((function(t){e(t)}))}function sT(e,t,n){return iT(e,n||{},(function(n){return new aN(e,t,n,n.get(In),n.get(qh),n.get(XD),n.get(xD),n.get(el),n.get(Pn),n.get(YD),n.get(ap),n.get(wh),n.get(DD),n.get(OD),null)}))}function aT(e,t){return new Ta(e,t)}function uT(e,t,n){return ZM.modelService.get().createModel(e,t,n)}function lT(e,t,n){if(e=e||"",!t){var i=e.indexOf("\n"),o=e;return-1!==i&&(o=e.substring(0,i)),uT(e,ZM.modeService.get().createByFilepathOrFirstLine(n||null,o),n)}return uT(e,ZM.modeService.get().create(t),n)}function cT(e,t){ZM.modelService.get().setMode(e,ZM.modeService.get().create(t))}function dT(e,t,n){e&&ZM.markerService.get().changeOne(t,e.uri,n)}function hT(e){return ZM.markerService.get().read(e)}function pT(e){return ZM.modelService.get().getModel(e)}function fT(){return ZM.modelService.get().getModels()}function gT(e){return ZM.modelService.get().onModelAdded(e)}function mT(e){return ZM.modelService.get().onModelRemoved(e)}function vT(e){return ZM.modelService.get().onModelModeChanged((function(t){e({model:t.model,oldLanguage:t.oldModeId})}))}function _T(e){return function(e,t){return new Wc(e,t)}(ZM.modelService.get(),e)}function yT(e,t){return kd.colorizeElement(ZM.standaloneThemeService.get(),ZM.modeService.get(),e,t)}function bT(e,t,n){return kd.colorize(ZM.modeService.get(),e,t,n)}function wT(e,t,n){return void 0===n&&(n=4),kd.colorizeModelLine(e,t,n)}function CT(e,t){ZM.modeService.get().triggerMode(t);for(var n=function(e){var t=Yu.get(e);return t||{getInitialState:function(){return Xu},tokenize:function(t,n,i){return Qu(e,0,n,i)}}}(t),i=e.split(/\r\n|\r|\n/),o=[],r=n.getInitialState(),s=0,a=i.length;s<a;s++){var u=i[s],l=n.tokenize(u,r,0);o[s]=l.tokens,r=l.endState}return o}function ST(e,t){ZM.standaloneThemeService.get().defineTheme(e,t)}function LT(e){ZM.standaloneThemeService.get().setTheme(e)}function xT(){sf.INSTANCE.clearCache()}function DT(e,t){return"boolean"==typeof e?e:t}function NT(e,t){return"string"==typeof e?e:t}function kT(e,t){void 0===t&&(t=!1),t&&(e=e.map((function(e){return e.toLowerCase()})));var n=function(e){for(var t={},n=0,i=e;n<i.length;n++){t[i[n]]=!0}return t}(e);return t?function(e){return void 0!==n[e.toLowerCase()]&&n.hasOwnProperty(e.toLowerCase())}:function(e){return void 0!==n[e]&&n.hasOwnProperty(e)}}function ET(e,t){for(var n=0;t.indexOf("@")>=0&&n<5;)n++,t=t.replace(/@(\w+)/g,(function(n,i){var o="";if("string"==typeof e[i])o=e[i];else{if(!(e[i]&&e[i]instanceof RegExp))throw void 0===e[i]?fd(e,"language definition does not contain attribute '"+i+"', used at: "+t):fd(e,"attribute reference '"+i+"' must be a string, used at: "+t);o=e[i].source}return dd(o)?"":"(?:"+o+")"}));return new RegExp(t,e.ignoreCase?"i":"")}function IT(e,t,n,i){var o=-1,r=n,s=n.match(/^\$(([sS]?)(\d\d?)|#)(.*)$/);s&&(s[3]&&(o=parseInt(s[3]),s[2]&&(o+=100)),r=s[4]);var a,u="~",l=r;if(r&&0!==r.length?/^\w*$/.test(l)?u="==":(s=r.match(/^(@|!@|~|!~|==|!=)(.*)$/))&&(u=s[1],l=s[2]):(u="!=",l=""),"~"!==u&&"!~"!==u||!/^(\w|\|)*$/.test(l))if("@"===u||"!@"===u){var c=e[l];if(!c)throw fd(e,"the @ match target '"+l+"' is not defined, in rule: "+t);if(!function(e,t){if(!t)return!1;if(!Array.isArray(t))return!1;for(var n=0,i=t;n<i.length;n++){if(!e(i[n]))return!1}return!0}((function(e){return"string"==typeof e}),c))throw fd(e,"the @ match target '"+l+"' must be an array of strings, in rule: "+t);var d=kT(c,e.ignoreCase);a=function(e){return"@"===u?d(e):!d(e)}}else if("~"===u||"!~"===u)if(l.indexOf("$")<0){var h=ET(e,"^"+l+"$");a=function(e){return"~"===u?h.test(e):!h.test(e)}}else a=function(t,n,i,o){return ET(e,"^"+gd(e,l,n,i,o)+"$").test(t)};else if(l.indexOf("$")<0){var p=hd(e,l);a=function(e){return"=="===u?e===p:e!==p}}else{var f=hd(e,l);a=function(t,n,i,o,r){var s=gd(e,f,n,i,o);return"=="===u?t===s:t!==s}}else{var g=kT(l.split("|"),e.ignoreCase);a=function(e){return"~"===u?g(e):!g(e)}}return-1===o?{name:n,value:i,test:function(e,t,n,i){return a(e,e,t,n,i)}}:{name:n,value:i,test:function(e,t,n,i){var r=function(e,t,n,i){if(i<0)return e;if(i<t.length)return t[i];if(i>=100){i-=100;var o=n.split(".");if(o.unshift(n),i<o.length)return o[i]}return null}(e,t,n,o);return a(r||"",e,t,n,i)}}}var OT=function(){function e(e){this.regex=new RegExp(""),this.action={token:""},this.matchOnlyAtLineStart=!1,this.name="",this.name=e}return e.prototype.setRegex=function(e,t){var n;if("string"==typeof t)n=t;else{if(!(t instanceof RegExp))throw fd(e,"rules must start with a match string or regular expression: "+this.name);n=t.source}this.matchOnlyAtLineStart=n.length>0&&"^"===n[0],this.name=this.name+": "+n,this.regex=ET(e,"^(?:"+(this.matchOnlyAtLineStart?n.substr(1):n)+")")},e.prototype.setAction=function(e,t){this.action=function e(t,n,i){if(i){if("string"==typeof i)return i;if(i.token||""===i.token){if("string"!=typeof i.token)throw fd(t,"a 'token' attribute must be of type string, in rule: "+n);var o={token:i.token};if(i.token.indexOf("$")>=0&&(o.tokenSubst=!0),"string"==typeof i.bracket)if("@open"===i.bracket)o.bracket=1;else{if("@close"!==i.bracket)throw fd(t,"a 'bracket' attribute must be either '@open' or '@close', in rule: "+n);o.bracket=-1}if(i.next){if("string"!=typeof i.next)throw fd(t,"the next state must be a string value in rule: "+n);var r=i.next;if(!/^(@pop|@push|@popall)$/.test(r)&&("@"===r[0]&&(r=r.substr(1)),r.indexOf("$")<0&&!function(e,t){for(var n=t;n&&n.length>0;){if(e.stateNames[n])return!0;var i=n.lastIndexOf(".");n=i<0?null:n.substr(0,i)}return!1}(t,gd(t,r,"",[],""))))throw fd(t,"the next state '"+i.next+"' is not defined in rule: "+n);o.next=r}return"number"==typeof i.goBack&&(o.goBack=i.goBack),"string"==typeof i.switchTo&&(o.switchTo=i.switchTo),"string"==typeof i.log&&(o.log=i.log),"string"==typeof i.nextEmbedded&&(o.nextEmbedded=i.nextEmbedded,t.usesEmbedded=!0),o}if(Array.isArray(i)){for(var s=[],a=0,u=i.length;a<u;a++)s[a]=e(t,n,i[a]);return{group:s}}if(i.cases){var l=[];for(var c in i.cases)if(i.cases.hasOwnProperty(c)){var d=e(t,n,i.cases[c]);"@default"===c||"@"===c||""===c?l.push({test:void 0,value:d,name:c}):"@eos"===c?l.push({test:function(e,t,n,i){return i},value:d,name:c}):l.push(IT(t,n,c,d))}var h=t.defaultToken;return{test:function(e,t,n,i){for(var o=0,r=l;o<r.length;o++){var s=r[o];if(!s.test||s.test(e,t,n,i))return s.value}return h}}}throw fd(t,"an action must be a string, an object with a 'token' or 'cases' attribute, or an array of actions; in rule: "+n)}return{token:""}}(e,this.name,t)},e}();function MT(e){vN.registerLanguage(e)}function TT(){var e=[];return e=e.concat(vN.getLanguages())}function PT(e){var t=ZM.modeService.get().getLanguageIdentifier(e);return t?t.id:0}function RT(e,t){var n=ZM.modeService.get().onDidCreateMode((function(i){i.getId()===e&&(n.dispose(),t())}));return n}function AT(e,t){var n=ZM.modeService.get().getLanguageIdentifier(e);if(!n)throw new Error("Cannot set configuration for unknown language "+e);return Ol.register(n,t)}var FT=function(){function e(e){this._actual=e}return e.prototype.getInitialState=function(){return this._actual.getInitialState()},e.prototype.tokenize=function(e,t,n){throw new Error("Not supported!")},e.prototype.tokenize2=function(e,t){var n=this._actual.tokenizeEncoded(e,t);return new Dn(n.tokens,n.endState)},e}(),WT=function(){function e(e,t,n){this._standaloneThemeService=e,this._languageIdentifier=t,this._actual=n}return e.prototype.getInitialState=function(){return this._actual.getInitialState()},e.prototype._toClassicTokens=function(e,t,n){for(var i=[],o=0,r=0,s=e.length;r<s;r++){var a=e[r],u=a.startIndex;0===r?u=0:u<o&&(u=o),i[r]=new Ln(u+n,a.scopes,t),o=u}return i},e.prototype.tokenize=function(e,t,n){var i,o=this._actual.tokenize(e,t),r=this._toClassicTokens(o.tokens,this._languageIdentifier.language,n);return i=o.endState.equals(t)?t:o.endState,new xn(r,i)},e.prototype._toBinaryTokens=function(e,t){for(var n=this._languageIdentifier.id,i=this._standaloneThemeService.getTheme().tokenTheme,o=[],r=0,s=0,a=0,u=e.length;a<u;a++){var l=e[a],c=i.match(n,l.scopes);if(!(r>0&&o[r-1]===c)){var d=l.startIndex;0===a?d=0:d<s&&(d=s),o[r++]=d+t,o[r++]=c,s=d}}var h=new Uint32Array(r);for(a=0;a<r;a++)h[a]=o[a];return h},e.prototype.tokenize2=function(e,t,n){var i,o=this._actual.tokenize(e,t),r=this._toBinaryTokens(o.tokens,n);return i=o.endState.equals(t)?t:o.endState,new Dn(r,i)},e}();function VT(e){return e&&"function"==typeof e.then}function BT(e,t){var n=ZM.modeService.get().getLanguageIdentifier(e);if(!n)throw new Error("Cannot set tokens provider for unknown language "+e);var i=function(e){return function(e){return"tokenizeEncoded"in e}(e)?new FT(e):new WT(ZM.standaloneThemeService.get(),n,e)};return VT(t)?Yu.registerPromise(e,t.then((function(e){return i(e)}))):Yu.register(e,i(t))}function HT(e,t){var n=function(t){return function(e,t,n,i){return new Ld(e,t,n,i)}(ZM.modeService.get(),ZM.standaloneThemeService.get(),e,function(e,t){if(!t||"object"!=typeof t)throw new Error("Monarch: expecting a language definition object");var n={};n.languageId=e,n.noThrow=!1,n.maxStack=100,n.start="string"==typeof t.start?t.start:null,n.ignoreCase=DT(t.ignoreCase,!1),n.tokenPostfix=NT(t.tokenPostfix,"."+n.languageId),n.defaultToken=NT(t.defaultToken,"source"),n.usesEmbedded=!1;var i=t;function o(e,r,s){for(var a=0,u=s;a<u.length;a++){var l=u[a],c=l.include;if(c){if("string"!=typeof c)throw fd(n,"an 'include' attribute must be a string at: "+e);if("@"===c[0]&&(c=c.substr(1)),!t.tokenizer[c])throw fd(n,"include target '"+c+"' is not defined at: "+e);o(e+"."+c,r,t.tokenizer[c])}else{var d=new OT(e);if(Array.isArray(l)&&l.length>=1&&l.length<=3)if(d.setRegex(i,l[0]),l.length>=3)if("string"==typeof l[1])d.setAction(i,{token:l[1],next:l[2]});else{if("object"!=typeof l[1])throw fd(n,"a next state as the last element of a rule can only be given if the action is either an object or a string, at: "+e);var h=l[1];h.next=l[2],d.setAction(i,h)}else d.setAction(i,l[1]);else{if(!l.regex)throw fd(n,"a rule must either be an array, or an object with a 'regex' or 'include' field at: "+e);l.name&&"string"==typeof l.name&&(d.name=l.name),l.matchOnlyAtStart&&(d.matchOnlyAtLineStart=DT(l.matchOnlyAtLineStart,!1)),d.setRegex(i,l.regex),d.setAction(i,l.action)}r.push(d)}}}if(i.languageId=e,i.ignoreCase=n.ignoreCase,i.noThrow=n.noThrow,i.usesEmbedded=n.usesEmbedded,i.stateNames=t.tokenizer,i.defaultToken=n.defaultToken,!t.tokenizer||"object"!=typeof t.tokenizer)throw fd(n,"a language definition must define the 'tokenizer' attribute as an object");for(var r in n.tokenizer=[],t.tokenizer)if(t.tokenizer.hasOwnProperty(r)){n.start||(n.start=r);var s=t.tokenizer[r];n.tokenizer[r]=new Array,o("tokenizer."+r,n.tokenizer[r],s)}if(n.usesEmbedded=i.usesEmbedded,t.brackets){if(!Array.isArray(t.brackets))throw fd(n,"the 'brackets' attribute must be defined as an array")}else t.brackets=[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}];for(var a=[],u=0,l=t.brackets;u<l.length;u++){var c=l[u];if(c&&Array.isArray(c)&&3===c.length&&(c={token:c[2],open:c[0],close:c[1]}),c.open===c.close)throw fd(n,"open and close brackets in a 'brackets' attribute must be different: "+c.open+"\n hint: use the 'bracket' attribute if matching on equal brackets is required.");if("string"!=typeof c.open||"string"!=typeof c.token||"string"!=typeof c.close)throw fd(n,"every element in the 'brackets' array must be a '{open,close,token}' object or array");a.push({token:c.token+n.tokenPostfix,open:hd(n,c.open),close:hd(n,c.close)})}return n.brackets=a,n.noThrow=!0,n}(e,t))};return VT(t)?Yu.registerPromise(e,t.then((function(e){return n(e)}))):Yu.register(e,n(t))}function zT(e,t){return Nu.register(e,t)}function jT(e,t){return ku.register(e,t)}function UT(e,t){return Iu.register(e,t)}function KT(e,t){return Ou.register(e,{provideHover:function(e,n,i){var o=e.getWordAtPosition(n);return Promise.resolve(t.provideHover(e,n,i)).then((function(e){if(e)return!e.range&&o&&(e.range=new wn(n.lineNumber,o.startColumn,n.lineNumber,o.endColumn)),e.range||(e.range=new wn(n.lineNumber,n.column,n.lineNumber,n.column)),e}))}})}function qT(e,t){return Mu.register(e,t)}function GT(e,t){return Tu.register(e,t)}function ZT(e,t){return Pu.register(e,t)}function YT(e,t){return Au.register(e,t)}function XT(e,t){return Fu.register(e,t)}function $T(e,t){return Wu.register(e,t)}function QT(e,t){return Vu.register(e,{provideCodeActions:function(e,n,i,o){var r=ZM.markerService.get().read({resource:e.uri}).filter((function(e){return wn.areIntersectingOrTouching(e,n)}));return t.provideCodeActions(e,n,{markers:r,only:i.only},o)}})}function JT(e,t){return Bu.register(e,t)}function eP(e,t){return Hu.register(e,t)}function tP(e,t){return zu.register(e,t)}function nP(e,t){return ju.register(e,t)}function iP(e,t){return Eu.register(e,t)}function oP(e,t){return Uu.register(e,t)}function rP(e,t){return qu.register(e,t)}function sP(e,t){return Ru.register(e,t)}function aP(e,t){return Ku.register(e,t)}function uP(e,t){return Gu.register(e,t)}function lP(e,t){return Zu.register(e,t)}var cP=self;Le.wrappingIndent.defaultValue=0,Le.glyphMargin.defaultValue=!1,Le.autoIndent.defaultValue=3,Le.overviewRulerLanes.defaultValue=2;var dP=kn();dP.editor={create:oT,onDidCreateEditor:rT,createDiffEditor:sT,createDiffNavigator:aT,createModel:lT,setModelLanguage:cT,setModelMarkers:dT,getModelMarkers:hT,getModels:fT,getModel:pT,onDidCreateModel:gT,onWillDisposeModel:mT,onDidChangeModelLanguage:vT,createWebWorker:_T,colorizeElement:yT,colorize:bT,colorizeModelLine:wT,tokenize:CT,defineTheme:ST,setTheme:LT,remeasureFonts:xT,AccessibilitySupport:Vt,ContentWidgetPositionPreference:Ut,CursorChangeReason:Kt,DefaultEndOfLine:qt,EditorAutoIndentStrategy:Zt,EditorOption:Yt,EndOfLinePreference:Xt,EndOfLineSequence:$t,MinimapPosition:on,MouseTargetType:rn,OverlayWidgetPositionPreference:sn,OverviewRulerLane:an,RenderLineNumbersType:un,RenderMinimap:ln,ScrollbarVisibility:dn,ScrollType:cn,TextEditorCursorBlinkingStyle:mn,TextEditorCursorStyle:vn,TrackedRangeStickiness:_n,WrappingIndent:yn,ConfigurationChangedEvent:M,BareFontInfo:Fa,FontInfo:Wa,TextModelResolvedOptions:ja,FindMatch:Ua,EditorType:Ha,EditorOptions:Le},dP.languages={register:MT,getLanguages:TT,onLanguage:RT,getEncodedLanguageId:PT,setLanguageConfiguration:AT,setTokensProvider:BT,setMonarchTokensProvider:HT,registerReferenceProvider:zT,registerRenameProvider:jT,registerCompletionItemProvider:iP,registerSignatureHelpProvider:UT,registerHoverProvider:KT,registerDocumentSymbolProvider:qT,registerDocumentHighlightProvider:GT,registerDefinitionProvider:ZT,registerImplementationProvider:YT,registerTypeDefinitionProvider:XT,registerCodeLensProvider:$T,registerCodeActionProvider:QT,registerDocumentFormattingEditProvider:JT,registerDocumentRangeFormattingEditProvider:eP,registerOnTypeFormattingEditProvider:tP,registerLinkProvider:nP,registerColorProvider:oP,registerFoldingRangeProvider:rP,registerDeclarationProvider:sP,registerSelectionRangeProvider:aP,registerDocumentSemanticTokensProvider:uP,registerDocumentRangeSemanticTokensProvider:lP,DocumentHighlightKind:Gt,CompletionItemKind:Ht,CompletionItemTag:zt,CompletionItemInsertTextRule:Bt,SymbolKind:fn,SymbolTag:gn,IndentAction:Qt,CompletionTriggerKind:jt,SignatureHelpTriggerKind:pn,FoldingRangeKind:Du};var hP=dP.CancellationTokenSource,pP=dP.Emitter,fP=dP.KeyCode,gP=dP.KeyMod,mP=dP.Position,vP=dP.Range,_P=dP.Selection,yP=dP.SelectionDirection,bP=dP.MarkerSeverity,wP=dP.MarkerTag,CP=dP.Uri,SP=dP.Token,LP=dP.editor,xP=dP.languages;cP.monaco=dP,void 0!==cP.require&&"function"==typeof cP.require.config&&cP.require.config({ignoreDuplicateModules:["vscode-languageserver-types","vscode-languageserver-types/main","vscode-nls","vscode-nls/vscode-nls","jsonc-parser","jsonc-parser/main","vscode-uri","vscode-uri/index","vs/basic-languages/typescript/typescript"]});var DP,NP,kP,EP,IP,OP=monaco.Emitter,MP=function(){function e(e,t){this._onDidChange=new OP,this._onDidExtraLibsChange=new OP,this._extraLibs=Object.create(null),this._eagerModelSync=!1,this.setCompilerOptions(e),this.setDiagnosticsOptions(t),this._onDidExtraLibsChangeTimeout=-1}return Object.defineProperty(e.prototype,"onDidChange",{get:function(){return this._onDidChange.event},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onDidExtraLibsChange",{get:function(){return this._onDidExtraLibsChange.event},enumerable:!0,configurable:!0}),e.prototype.getExtraLibs=function(){return this._extraLibs},e.prototype.addExtraLib=function(e,t){var n,i=this;if(n=void 0===t?"ts:extralib-"+Math.random().toString(36).substring(2,15):t,this._extraLibs[n]&&this._extraLibs[n].content===e)return{dispose:function(){}};var o=1;return this._extraLibs[n]&&(o=this._extraLibs[n].version+1),this._extraLibs[n]={content:e,version:o},this._fireOnDidExtraLibsChangeSoon(),{dispose:function(){var e=i._extraLibs[n];e&&e.version===o&&(delete i._extraLibs[n],i._fireOnDidExtraLibsChangeSoon())}}},e.prototype.setExtraLibs=function(e){if(this._extraLibs=Object.create(null),e&&e.length>0)for(var t=0,n=e;t<n.length;t++){var i=n[t],o=i.filePath||"ts:extralib-"+Math.random().toString(36).substring(2,15),r=i.content;this._extraLibs[o]={content:r,version:1}}this._fireOnDidExtraLibsChangeSoon()},e.prototype._fireOnDidExtraLibsChangeSoon=function(){var e=this;-1===this._onDidExtraLibsChangeTimeout&&(this._onDidExtraLibsChangeTimeout=setTimeout((function(){e._onDidExtraLibsChangeTimeout=-1,e._onDidExtraLibsChange.fire(void 0)}),0))},e.prototype.getCompilerOptions=function(){return this._compilerOptions},e.prototype.setCompilerOptions=function(e){this._compilerOptions=e||Object.create(null),this._onDidChange.fire(void 0)},e.prototype.getDiagnosticsOptions=function(){return this._diagnosticsOptions},e.prototype.setDiagnosticsOptions=function(e){this._diagnosticsOptions=e||Object.create(null),this._onDidChange.fire(void 0)},e.prototype.setMaximumWorkerIdleTime=function(e){},e.prototype.setEagerModelSync=function(e){this._eagerModelSync=e},e.prototype.getEagerModelSync=function(){return this._eagerModelSync},e}();!function(e){e[e.None=0]="None",e[e.CommonJS=1]="CommonJS",e[e.AMD=2]="AMD",e[e.UMD=3]="UMD",e[e.System=4]="System",e[e.ES2015=5]="ES2015",e[e.ESNext=99]="ESNext"}(DP||(DP={})),function(e){e[e.None=0]="None",e[e.Preserve=1]="Preserve",e[e.React=2]="React",e[e.ReactNative=3]="ReactNative"}(NP||(NP={})),function(e){e[e.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",e[e.LineFeed=1]="LineFeed"}(kP||(kP={})),function(e){e[e.ES3=0]="ES3",e[e.ES5=1]="ES5",e[e.ES2015=2]="ES2015",e[e.ES2016=3]="ES2016",e[e.ES2017=4]="ES2017",e[e.ES2018=5]="ES2018",e[e.ES2019=6]="ES2019",e[e.ES2020=7]="ES2020",e[e.ESNext=99]="ESNext",e[e.JSON=100]="JSON",e[e.Latest=99]="Latest"}(EP||(EP={})),function(e){e[e.Classic=1]="Classic",e[e.NodeJs=2]="NodeJs"}(IP||(IP={}));var TP=new MP({allowNonTsExtensions:!0,target:EP.Latest},{noSemanticValidation:!1,noSyntaxValidation:!1}),PP=new MP({allowNonTsExtensions:!0,allowJs:!0,target:EP.Latest},{noSemanticValidation:!0,noSyntaxValidation:!1});function RP(){return FP().then((function(e){return e.getTypeScriptWorker()}))}function AP(){return FP().then((function(e){return e.getJavaScriptWorker()}))}function FP(){return n.e(106).then(n.bind(null,545))}monaco.languages.typescript={ModuleKind:DP,JsxEmit:NP,NewLineKind:kP,ScriptTarget:EP,ModuleResolutionKind:IP,typescriptVersion:"3.7.5",typescriptDefaults:TP,javascriptDefaults:PP,getTypeScriptWorker:RP,getJavaScriptWorker:AP},monaco.languages.onLanguage("typescript",(function(){return FP().then((function(e){return e.setupTypeScript(TP)}))})),monaco.languages.onLanguage("javascript",(function(){return FP().then((function(e){return e.setupJavaScript(PP)}))}));var WP=monaco.Emitter,VP=function(){function e(e,t,n){this._onDidChange=new WP,this._languageId=e,this.setDiagnosticsOptions(t),this.setModeConfiguration(n)}return Object.defineProperty(e.prototype,"onDidChange",{get:function(){return this._onDidChange.event},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"modeConfiguration",{get:function(){return this._modeConfiguration},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"diagnosticsOptions",{get:function(){return this._diagnosticsOptions},enumerable:!0,configurable:!0}),e.prototype.setDiagnosticsOptions=function(e){this._diagnosticsOptions=e||Object.create(null),this._onDidChange.fire(this)},e.prototype.setModeConfiguration=function(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)},e}(),BP={validate:!0,lint:{compatibleVendorPrefixes:"ignore",vendorPrefix:"warning",duplicateProperties:"warning",emptyRules:"warning",importStatement:"ignore",boxModel:"ignore",universalSelector:"ignore",zeroUnits:"ignore",fontFaceProperties:"warning",hexColorLength:"error",argumentsInColorFunction:"error",unknownProperties:"warning",ieHack:"ignore",unknownVendorSpecificProperties:"ignore",propertyIgnoredDueToDisplay:"warning",important:"ignore",float:"ignore",idSelector:"ignore"}},HP={completionItems:!0,hovers:!0,documentSymbols:!0,definitions:!0,references:!0,documentHighlights:!0,rename:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0},zP=new VP("css",BP,HP),jP=new VP("scss",BP,HP),UP=new VP("less",BP,HP);function KP(){return n.e(103).then(n.bind(null,504))}monaco.languages.css={cssDefaults:zP,lessDefaults:UP,scssDefaults:jP},monaco.languages.onLanguage("less",(function(){KP().then((function(e){return e.setupMode(UP)}))})),monaco.languages.onLanguage("scss",(function(){KP().then((function(e){return e.setupMode(jP)}))})),monaco.languages.onLanguage("css",(function(){KP().then((function(e){return e.setupMode(zP)}))}));var qP=monaco.Emitter,GP=new(function(){function e(e,t,n){this._onDidChange=new qP,this._languageId=e,this.setDiagnosticsOptions(t),this.setModeConfiguration(n)}return Object.defineProperty(e.prototype,"onDidChange",{get:function(){return this._onDidChange.event},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"modeConfiguration",{get:function(){return this._modeConfiguration},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"diagnosticsOptions",{get:function(){return this._diagnosticsOptions},enumerable:!0,configurable:!0}),e.prototype.setDiagnosticsOptions=function(e){this._diagnosticsOptions=e||Object.create(null),this._onDidChange.fire(this)},e.prototype.setModeConfiguration=function(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)},e}())("json",{validate:!0,allowComments:!0,schemas:[],enableSchemaRequest:!1},{documentFormattingEdits:!0,documentRangeFormattingEdits:!0,completionItems:!0,hovers:!0,documentSymbols:!0,tokens:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0});monaco.languages.json={jsonDefaults:GP},monaco.languages.register({id:"json",extensions:[".json",".bowerrc",".jshintrc",".jscsrc",".eslintrc",".babelrc",".har"],aliases:["JSON","json"],mimetypes:["application/json"]}),monaco.languages.onLanguage("json",(function(){n.e(105).then(n.bind(null,506)).then((function(e){return e.setupMode(GP)}))}));var ZP=monaco.Emitter,YP=function(){function e(e,t,n){this._onDidChange=new ZP,this._languageId=e,this.setOptions(t),this.setModeConfiguration(n)}return Object.defineProperty(e.prototype,"onDidChange",{get:function(){return this._onDidChange.event},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"options",{get:function(){return this._options},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"modeConfiguration",{get:function(){return this._modeConfiguration},enumerable:!0,configurable:!0}),e.prototype.setOptions=function(e){this._options=e||Object.create(null),this._onDidChange.fire(this)},e.prototype.setModeConfiguration=function(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)},e}(),XP={tabSize:4,insertSpaces:!1,wrapLineLength:120,unformatted:'default": "a, abbr, acronym, b, bdo, big, br, button, cite, code, dfn, em, i, img, input, kbd, label, map, object, q, samp, select, small, span, strong, sub, sup, textarea, tt, var',contentUnformatted:"pre",indentInnerHtml:!1,preserveNewLines:!0,maxPreserveNewLines:null,indentHandlebars:!1,endWithNewline:!1,extraLiners:"head, body, /html",wrapAttributes:"auto"},$P={format:XP,suggest:{html5:!0}},QP={format:XP,suggest:{html5:!0,razor:!0}};function JP(e){return{completionItems:!0,hovers:!0,documentSymbols:!0,links:!0,documentHighlights:!0,rename:!0,colors:!0,foldingRanges:!0,selectionRanges:!0,diagnostics:e===eR,documentFormattingEdits:e===eR,documentRangeFormattingEdits:e===eR}}var eR="html",tR=new YP(eR,{format:XP,suggest:{html5:!0,angular1:!0,ionic:!0}},JP(eR)),nR=new YP("handlebars",$P,JP("handlebars")),iR=new YP("razor",QP,JP("razor"));function oR(){return n.e(104).then(n.bind(null,505))}monaco.languages.html={htmlDefaults:tR,razorDefaults:iR,handlebarDefaults:nR},monaco.languages.onLanguage(eR,(function(){oR().then((function(e){return e.setupMode(tR)}))})),monaco.languages.onLanguage("handlebars",(function(){oR().then((function(e){return e.setupMode(nR)}))})),monaco.languages.onLanguage("razor",(function(){oR().then((function(e){return e.setupMode(iR)}))}));var rR="undefined"==typeof monaco?self.monaco:monaco,sR={},aR={},uR=function(){function e(e){var t=this;this._languageId=e,this._loadingTriggered=!1,this._lazyLoadPromise=new Promise((function(e,n){t._lazyLoadPromiseResolve=e,t._lazyLoadPromiseReject=n}))}return e.getOrCreate=function(t){return aR[t]||(aR[t]=new e(t)),aR[t]},e.prototype.whenLoaded=function(){return this._lazyLoadPromise},e.prototype.load=function(){var e=this;return this._loadingTriggered||(this._loadingTriggered=!0,sR[this._languageId].loader().then((function(t){return e._lazyLoadPromiseResolve(t)}),(function(t){return e._lazyLoadPromiseReject(t)}))),this._lazyLoadPromise},e}();function lR(e){var t=e.id;sR[t]=e,rR.languages.register(e);var n=uR.getOrCreate(t);rR.languages.setMonarchTokensProvider(t,n.whenLoaded().then((function(e){return e.language}))),rR.languages.onLanguage(t,(function(){n.load().then((function(e){rR.languages.setLanguageConfiguration(t,e.conf)}))}))}lR({id:"abap",extensions:[".abap"],aliases:["abap","ABAP"],loader:function(){return n.e(45).then(n.bind(null,444))}}),lR({id:"apex",extensions:[".cls"],aliases:["Apex","apex"],mimetypes:["text/x-apex-source","text/x-apex"],loader:function(){return n.e(46).then(n.bind(null,445))}}),lR({id:"azcli",extensions:[".azcli"],aliases:["Azure CLI","azcli"],loader:function(){return n.e(47).then(n.bind(null,446))}}),lR({id:"bat",extensions:[".bat",".cmd"],aliases:["Batch","bat"],loader:function(){return n.e(48).then(n.bind(null,447))}}),lR({id:"cameligo",extensions:[".mligo"],aliases:["Cameligo"],loader:function(){return n.e(49).then(n.bind(null,448))}}),lR({id:"clojure",extensions:[".clj",".cljs",".cljc",".edn"],aliases:["clojure","Clojure"],loader:function(){return n.e(50).then(n.bind(null,449))}}),lR({id:"coffeescript",extensions:[".coffee"],aliases:["CoffeeScript","coffeescript","coffee"],mimetypes:["text/x-coffeescript","text/coffeescript"],loader:function(){return n.e(51).then(n.bind(null,450))}}),lR({id:"c",extensions:[".c",".h"],aliases:["C","c"],loader:function(){return n.e(1).then(n.bind(null,451))}}),lR({id:"cpp",extensions:[".cpp",".cc",".cxx",".hpp",".hh",".hxx"],aliases:["C++","Cpp","cpp"],loader:function(){return n.e(1).then(n.bind(null,451))}}),lR({id:"csharp",extensions:[".cs",".csx",".cake"],aliases:["C#","csharp"],loader:function(){return n.e(52).then(n.bind(null,452))}}),lR({id:"csp",extensions:[],aliases:["CSP","csp"],loader:function(){return n.e(53).then(n.bind(null,453))}}),lR({id:"css",extensions:[".css"],aliases:["CSS","css"],mimetypes:["text/css"],loader:function(){return n.e(54).then(n.bind(null,454))}}),lR({id:"dockerfile",extensions:[".dockerfile"],filenames:["Dockerfile"],aliases:["Dockerfile"],loader:function(){return n.e(55).then(n.bind(null,455))}}),lR({id:"fsharp",extensions:[".fs",".fsi",".ml",".mli",".fsx",".fsscript"],aliases:["F#","FSharp","fsharp"],loader:function(){return n.e(56).then(n.bind(null,456))}}),lR({id:"go",extensions:[".go"],aliases:["Go"],loader:function(){return n.e(57).then(n.bind(null,457))}}),lR({id:"graphql",extensions:[".graphql",".gql"],aliases:["GraphQL","graphql","gql"],mimetypes:["application/graphql"],loader:function(){return n.e(58).then(n.bind(null,458))}}),lR({id:"handlebars",extensions:[".handlebars",".hbs"],aliases:["Handlebars","handlebars"],mimetypes:["text/x-handlebars-template"],loader:function(){return n.e(59).then(n.bind(null,459))}}),lR({id:"html",extensions:[".html",".htm",".shtml",".xhtml",".mdoc",".jsp",".asp",".aspx",".jshtm"],aliases:["HTML","htm","html","xhtml"],mimetypes:["text/html","text/x-jshtm","text/template","text/ng-template"],loader:function(){return n.e(60).then(n.bind(null,460))}}),lR({id:"ini",extensions:[".ini",".properties",".gitconfig"],filenames:["config",".gitattributes",".gitconfig",".editorconfig"],aliases:["Ini","ini"],loader:function(){return n.e(61).then(n.bind(null,461))}}),lR({id:"java",extensions:[".java",".jav"],aliases:["Java","java"],mimetypes:["text/x-java-source","text/x-java"],loader:function(){return n.e(62).then(n.bind(null,462))}}),lR({id:"javascript",extensions:[".js",".es6",".jsx"],firstLine:"^#!.*\\bnode",filenames:["jakefile"],aliases:["JavaScript","javascript","js"],mimetypes:["text/javascript"],loader:function(){return n.e(10).then(n.bind(null,463))}}),lR({id:"kotlin",extensions:[".kt"],aliases:["Kotlin","kotlin"],mimetypes:["text/x-kotlin-source","text/x-kotlin"],loader:function(){return n.e(63).then(n.bind(null,464))}}),lR({id:"less",extensions:[".less"],aliases:["Less","less"],mimetypes:["text/x-less","text/less"],loader:function(){return n.e(64).then(n.bind(null,465))}}),lR({id:"lua",extensions:[".lua"],aliases:["Lua","lua"],loader:function(){return n.e(65).then(n.bind(null,466))}}),lR({id:"markdown",extensions:[".md",".markdown",".mdown",".mkdn",".mkd",".mdwn",".mdtxt",".mdtext"],aliases:["Markdown","markdown"],loader:function(){return n.e(66).then(n.bind(null,467))}}),lR({id:"mips",extensions:[".s"],aliases:["MIPS","MIPS-V"],mimetypes:["text/x-mips","text/mips","text/plaintext"],loader:function(){return n.e(67).then(n.bind(null,468))}}),lR({id:"msdax",extensions:[".dax",".msdax"],aliases:["DAX","MSDAX"],loader:function(){return n.e(68).then(n.bind(null,469))}}),lR({id:"mysql",extensions:[],aliases:["MySQL","mysql"],loader:function(){return n.e(69).then(n.bind(null,470))}}),lR({id:"objective-c",extensions:[".m"],aliases:["Objective-C"],loader:function(){return n.e(70).then(n.bind(null,471))}}),lR({id:"pascal",extensions:[".pas",".p",".pp"],aliases:["Pascal","pas"],mimetypes:["text/x-pascal-source","text/x-pascal"],loader:function(){return n.e(71).then(n.bind(null,472))}}),lR({id:"pascaligo",extensions:[".ligo"],aliases:["Pascaligo","ligo"],loader:function(){return n.e(72).then(n.bind(null,473))}}),lR({id:"perl",extensions:[".pl"],aliases:["Perl","pl"],loader:function(){return n.e(73).then(n.bind(null,474))}}),lR({id:"pgsql",extensions:[],aliases:["PostgreSQL","postgres","pg","postgre"],loader:function(){return n.e(74).then(n.bind(null,475))}}),lR({id:"php",extensions:[".php",".php4",".php5",".phtml",".ctp"],aliases:["PHP","php"],mimetypes:["application/x-php"],loader:function(){return n.e(75).then(n.bind(null,476))}}),lR({id:"postiats",extensions:[".dats",".sats",".hats"],aliases:["ATS","ATS/Postiats"],loader:function(){return n.e(76).then(n.bind(null,477))}}),lR({id:"powerquery",extensions:[".pq",".pqm"],aliases:["PQ","M","Power Query","Power Query M"],loader:function(){return n.e(77).then(n.bind(null,478))}}),lR({id:"powershell",extensions:[".ps1",".psm1",".psd1"],aliases:["PowerShell","powershell","ps","ps1"],loader:function(){return n.e(78).then(n.bind(null,479))}}),lR({id:"pug",extensions:[".jade",".pug"],aliases:["Pug","Jade","jade"],loader:function(){return n.e(79).then(n.bind(null,480))}}),lR({id:"python",extensions:[".py",".rpy",".pyw",".cpy",".gyp",".gypi"],aliases:["Python","py"],firstLine:"^#!/.*\\bpython[0-9.-]*\\b",loader:function(){return n.e(80).then(n.bind(null,481))}}),lR({id:"r",extensions:[".r",".rhistory",".rprofile",".rt"],aliases:["R","r"],loader:function(){return n.e(81).then(n.bind(null,482))}}),lR({id:"razor",extensions:[".cshtml"],aliases:["Razor","razor"],mimetypes:["text/x-cshtml"],loader:function(){return n.e(82).then(n.bind(null,483))}}),lR({id:"redis",extensions:[".redis"],aliases:["redis"],loader:function(){return n.e(83).then(n.bind(null,484))}}),lR({id:"redshift",extensions:[],aliases:["Redshift","redshift"],loader:function(){return n.e(84).then(n.bind(null,485))}}),lR({id:"restructuredtext",extensions:[".rst"],aliases:["reStructuredText","restructuredtext"],loader:function(){return n.e(85).then(n.bind(null,486))}}),lR({id:"ruby",extensions:[".rb",".rbx",".rjs",".gemspec",".pp"],filenames:["rakefile"],aliases:["Ruby","rb"],loader:function(){return n.e(86).then(n.bind(null,487))}}),lR({id:"rust",extensions:[".rs",".rlib"],aliases:["Rust","rust"],loader:function(){return n.e(87).then(n.bind(null,488))}}),lR({id:"sb",extensions:[".sb"],aliases:["Small Basic","sb"],loader:function(){return n.e(88).then(n.bind(null,489))}}),lR({id:"scheme",extensions:[".scm",".ss",".sch",".rkt"],aliases:["scheme","Scheme"],loader:function(){return n.e(89).then(n.bind(null,490))}}),lR({id:"scss",extensions:[".scss"],aliases:["Sass","sass","scss"],mimetypes:["text/x-scss","text/scss"],loader:function(){return n.e(90).then(n.bind(null,491))}}),lR({id:"shell",extensions:[".sh",".bash"],aliases:["Shell","sh"],loader:function(){return n.e(91).then(n.bind(null,492))}}),lR({id:"sol",extensions:[".sol"],aliases:["sol","solidity","Solidity"],loader:function(){return n.e(92).then(n.bind(null,493))}}),lR({id:"aes",extensions:[".aes"],aliases:["aes","sophia","Sophia"],loader:function(){return n.e(93).then(n.bind(null,494))}}),lR({id:"sql",extensions:[".sql"],aliases:["SQL"],loader:function(){return n.e(94).then(n.bind(null,495))}}),lR({id:"st",extensions:[".st",".iecst",".iecplc",".lc3lib"],aliases:["StructuredText","scl","stl"],loader:function(){return n.e(95).then(n.bind(null,496))}}),lR({id:"swift",aliases:["Swift","swift"],extensions:[".swift"],mimetypes:["text/swift"],loader:function(){return n.e(96).then(n.bind(null,497))}}),lR({id:"tcl",extensions:[".tcl"],aliases:["tcl","Tcl","tcltk","TclTk","tcl/tk","Tcl/Tk"],loader:function(){return n.e(97).then(n.bind(null,498))}}),lR({id:"twig",extensions:[".twig"],aliases:["Twig","twig"],mimetypes:["text/x-twig"],loader:function(){return n.e(98).then(n.bind(null,499))}}),lR({id:"typescript",extensions:[".ts",".tsx"],aliases:["TypeScript","ts","typescript"],mimetypes:["text/typescript"],loader:function(){return n.e(99).then(n.bind(null,335))}}),lR({id:"vb",extensions:[".vb"],aliases:["Visual Basic","vb"],loader:function(){return n.e(100).then(n.bind(null,500))}}),lR({id:"xml",extensions:[".xml",".dtd",".ascx",".csproj",".config",".wxi",".wxl",".wxs",".xaml",".svg",".svgz",".opf",".xsl"],firstLine:"(\\<\\?xml.*)|(\\<svg)|(\\<\\!doctype\\s+svg)",aliases:["XML","xml"],mimetypes:["text/xml","application/xml","application/xaml+xml","application/xml-dtd"],loader:function(){return n.e(101).then(n.bind(null,501))}}),lR({id:"yaml",extensions:[".yaml",".yml"],aliases:["YAML","yaml","YML","yml"],mimetypes:["application/x-yaml"],loader:function(){return n.e(102).then(n.bind(null,502))}});n(398);var cR=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),dR=D_("editorOverviewRuler.bracketMatchForeground",{dark:"#A0A0A0",light:"#A0A0A0",hc:"#A0A0A0"},r("overviewRulerBracketMatchForeground","Overview ruler marker color for matching brackets.")),hR=function(e){function t(){return e.call(this,{id:"editor.action.jumpToBracket",label:r("smartSelect.jumpBracket","Go to Bracket"),alias:"Go to Bracket",precondition:void 0,kbOpts:{kbExpr:eC.editorTextFocus,primary:3160,weight:100}})||this}return cR(t,e),t.prototype.run=function(e,t){var n=gR.get(t);n&&n.jumpToBracket()},t}(kf),pR=function(e){function t(){return e.call(this,{id:"editor.action.selectToBracket",label:r("smartSelect.selectToBracket","Select to Bracket"),alias:"Select to Bracket",precondition:void 0,description:{description:"Select to Bracket",args:[{name:"args",schema:{type:"object",properties:{selectBrackets:{type:"boolean",default:!0}}}}]}})||this}return cR(t,e),t.prototype.run=function(e,t,n){var i=gR.get(t);if(i){var o=!0;n&&!1===n.selectBrackets&&(o=!1),i.selectToBracket(o)}},t}(kf),fR=function(e,t,n){this.position=e,this.brackets=t,this.options=n},gR=function(e){function t(t){var n=e.call(this)||this;return n._editor=t,n._lastBracketsData=[],n._lastVersionId=0,n._decorations=[],n._updateBracketsSoon=n._register(new wi((function(){return n._updateBrackets()}),50)),n._matchBrackets=n._editor.getOption(53),n._updateBracketsSoon.schedule(),n._register(t.onDidChangeCursorPosition((function(e){"never"!==n._matchBrackets&&n._updateBracketsSoon.schedule()}))),n._register(t.onDidChangeModelContent((function(e){n._updateBracketsSoon.schedule()}))),n._register(t.onDidChangeModel((function(e){n._lastBracketsData=[],n._decorations=[],n._updateBracketsSoon.schedule()}))),n._register(t.onDidChangeModelLanguageConfiguration((function(e){n._lastBracketsData=[],n._updateBracketsSoon.schedule()}))),n._register(t.onDidChangeConfiguration((function(e){e.hasChanged(53)&&(n._matchBrackets=n._editor.getOption(53),n._decorations=n._editor.deltaDecorations(n._decorations,[]),n._lastBracketsData=[],n._lastVersionId=0,n._updateBracketsSoon.schedule())}))),n}return cR(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.jumpToBracket=function(){if(this._editor.hasModel()){var e=this._editor.getModel(),t=this._editor.getSelections().map((function(t){var n=t.getStartPosition(),i=e.matchBracket(n),o=null;if(i)i[0].containsPosition(n)?o=i[1].getStartPosition():i[1].containsPosition(n)&&(o=i[0].getStartPosition());else{var r=e.findEnclosingBrackets(n);if(r)o=r[0].getStartPosition();else{var s=e.findNextBracket(n);s&&s.range&&(o=s.range.getStartPosition())}}return o?new Sn(o.lineNumber,o.column,o.lineNumber,o.column):new Sn(n.lineNumber,n.column,n.lineNumber,n.column)}));this._editor.setSelections(t),this._editor.revealRange(t[0])}},t.prototype.selectToBracket=function(e){if(this._editor.hasModel()){var t=this._editor.getModel(),n=[];this._editor.getSelections().forEach((function(i){var o=i.getStartPosition(),r=t.matchBracket(o);if(!r&&!(r=t.findEnclosingBrackets(o))){var s=t.findNextBracket(o);s&&s.range&&(r=t.matchBracket(s.range.getStartPosition()))}var a=null,u=null;if(r){r.sort(wn.compareRangesUsingStarts);var l=r[0],c=r[1];a=e?l.getStartPosition():l.getEndPosition(),u=e?c.getEndPosition():c.getStartPosition()}a&&u&&n.push(new Sn(a.lineNumber,a.column,u.lineNumber,u.column))})),n.length>0&&(this._editor.setSelections(n),this._editor.revealRange(n[0]))}},t.prototype._updateBrackets=function(){if("never"!==this._matchBrackets){this._recomputeBrackets();for(var e=[],t=0,n=0,i=this._lastBracketsData;n<i.length;n++){var o=i[n],r=o.brackets;r&&(e[t++]={range:r[0],options:o.options},e[t++]={range:r[1],options:o.options})}this._decorations=this._editor.deltaDecorations(this._decorations,e)}},t.prototype._recomputeBrackets=function(){if(!this._editor.hasModel())return this._lastBracketsData=[],void(this._lastVersionId=0);var e=this._editor.getSelections();if(e.length>100)return this._lastBracketsData=[],void(this._lastVersionId=0);var n=this._editor.getModel(),i=n.getVersionId(),o=[];this._lastVersionId===i&&(o=this._lastBracketsData);for(var r=[],s=0,a=0,u=e.length;a<u;a++){var l=e[a];l.isEmpty()&&(r[s++]=l.getStartPosition())}r.length>1&&r.sort(bn.compare);var c=[],d=0,h=0,p=o.length;for(a=0,u=r.length;a<u;a++){for(var f=r[a];h<p&&o[h].position.isBefore(f);)h++;if(h<p&&o[h].position.equals(f))c[d++]=o[h];else{var g=n.matchBracket(f),m=t._DECORATION_OPTIONS_WITH_OVERVIEW_RULER;g||"always"!==this._matchBrackets||(g=n.findEnclosingBrackets(f,20),m=t._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER),c[d++]=new fR(f,g,m)}}this._lastBracketsData=c,this._lastVersionId=i},t.ID="editor.contrib.bracketMatchingController",t._DECORATION_OPTIONS_WITH_OVERVIEW_RULER=kv.register({stickiness:1,className:"bracket-match",overviewRuler:{color:gg(dR),position:Va.Center}}),t._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER=kv.register({stickiness:1,className:"bracket-match"}),t}(He);Pf(gR.ID,gR),Tf(pR),Tf(hR),yg((function(e,t){var n=e.getColor(Qb);n&&t.addRule(".monaco-editor .bracket-match { background-color: "+n+"; }");var i=e.getColor(Jb);i&&t.addRule(".monaco-editor .bracket-match { border: 1px solid "+i+"; }")})),bf.appendMenuItem(19,{group:"5_infile_nav",command:{id:"editor.action.jumpToBracket",title:r({key:"miGoToBracket",comment:["&& denotes a mnemonic"]},"Go to &&Bracket")},order:2});var mR=function(){function e(e,t){this._selection=e,this._isMovingLeft=t,this._cutStartIndex=-1,this._cutEndIndex=-1,this._moved=!1,this._selectionId=null}return e.prototype.getEditOperations=function(e,t){var n=this._selection;if(this._selectionId=t.trackSelection(n),n.startLineNumber===n.endLineNumber&&(!this._isMovingLeft||0!==n.startColumn)&&(this._isMovingLeft||n.endColumn!==e.getLineMaxColumn(n.startLineNumber))){var i,o,r,s=n.selectionStartLineNumber,a=e.getLineContent(s);this._isMovingLeft?(i=a.substring(0,n.startColumn-2),o=a.substring(n.startColumn-1,n.endColumn-1),r=a.substring(n.startColumn-2,n.startColumn-1)+a.substring(n.endColumn-1)):(i=a.substring(0,n.startColumn-1)+a.substring(n.endColumn-1,n.endColumn),o=a.substring(n.startColumn-1,n.endColumn-1),r=a.substring(n.endColumn));var u=i+o+r;t.addEditOperation(new wn(s,1,s,e.getLineMaxColumn(s)),null),t.addEditOperation(new wn(s,1,s,1),u),this._cutStartIndex=n.startColumn+(this._isMovingLeft?-1:1),this._cutEndIndex=this._cutStartIndex+n.endColumn-n.startColumn,this._moved=!0}},e.prototype.computeCursorState=function(e,t){var n=t.getTrackedSelection(this._selectionId);return this._moved&&(n=(n=n.setStartPosition(n.startLineNumber,this._cutStartIndex)).setEndPosition(n.startLineNumber,this._cutEndIndex)),n},e}(),vR=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),_R=function(e){function t(t,n){var i=e.call(this,n)||this;return i.left=t,i}return vR(t,e),t.prototype.run=function(e,t){if(t.hasModel()){for(var n=[],i=0,o=t.getSelections();i<o.length;i++){var r=o[i];n.push(new mR(r,this.left))}t.pushUndoStop(),t.executeCommands(this.id,n),t.pushUndoStop()}},t}(kf),yR=function(e){function t(){return e.call(this,!0,{id:"editor.action.moveCarretLeftAction",label:r("caret.moveLeft","Move Caret Left"),alias:"Move Caret Left",precondition:eC.writable})||this}return vR(t,e),t}(_R),bR=function(e){function t(){return e.call(this,!1,{id:"editor.action.moveCarretRightAction",label:r("caret.moveRight","Move Caret Right"),alias:"Move Caret Right",precondition:eC.writable})||this}return vR(t,e),t}(_R);Tf(yR),Tf(bR);var wR=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Tf(function(e){function t(){return e.call(this,{id:"editor.action.transposeLetters",label:r("transposeLetters.label","Transpose Letters"),alias:"Transpose Letters",precondition:eC.writable,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:306},weight:100}})||this}return wR(t,e),t.prototype.run=function(e,t){if(t.hasModel()){for(var n=t.getModel(),i=[],o=0,r=t.getSelections();o<r.length;o++){var s=r[o];if(s.isEmpty()){var a=s.startLineNumber,u=s.startColumn,l=n.getLineMaxColumn(a);if(1!==a||1!==u&&(2!==u||2!==l)){var c=u===l?s.getPosition():jw.rightPosition(n,s.getPosition().lineNumber,s.getPosition().column),d=jw.leftPosition(n,c.lineNumber,c.column),h=jw.leftPosition(n,d.lineNumber,d.column),p=n.getValueInRange(wn.fromPositions(h,d)),f=n.getValueInRange(wn.fromPositions(d,c)),g=wn.fromPositions(h,c);i.push(new Fw(g,f+p))}}}i.length>0&&(t.pushUndoStop(),t.executeCommands(this.id,i),t.pushUndoStop())}},t}(kf));n(399);var CR=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),SR=b||document.queryCommandSupported("cut"),LR=b||document.queryCommandSupported("copy"),xR=LR&&!Hn,DR=b||!Un&&document.queryCommandSupported("paste"),NR=function(e){function t(t,n){var i=e.call(this,n)||this;return i.browserCommand=t,i}return CR(t,e),t.prototype.runCommand=function(e,t){var n=e.get(Pn).getFocusedCodeEditor();n&&n.hasTextFocus()?n.trigger("keyboard",this.id,t):document.execCommand(this.browserCommand)},t.prototype.run=function(e,t){t.focus(),document.execCommand(this.browserCommand)},t}(kf),kR=function(e){function t(){var t={kbExpr:eC.textInputFocus,primary:2102,win:{primary:2102,secondary:[1044]},weight:100};return b||(t=void 0),e.call(this,"cut",{id:"editor.action.clipboardCutAction",label:r("actions.clipboard.cutLabel","Cut"),alias:"Cut",precondition:eC.writable,kbOpts:t,contextMenuOpts:{group:"9_cutcopypaste",order:1},menuOpts:{menuId:17,group:"2_ccp",title:r({key:"miCut",comment:["&& denotes a mnemonic"]},"Cu&&t"),order:1}})||this}return CR(t,e),t.prototype.run=function(t,n){n.hasModel()&&(!n.getOption(25)&&n.getSelection().isEmpty()||e.prototype.run.call(this,t,n))},t}(NR),ER=function(e){function t(){var t={kbExpr:eC.textInputFocus,primary:2081,win:{primary:2081,secondary:[2067]},weight:100};return b||(t=void 0),e.call(this,"copy",{id:"editor.action.clipboardCopyAction",label:r("actions.clipboard.copyLabel","Copy"),alias:"Copy",precondition:void 0,kbOpts:t,contextMenuOpts:{group:"9_cutcopypaste",order:2},menuOpts:{menuId:17,group:"2_ccp",title:r({key:"miCopy",comment:["&& denotes a mnemonic"]},"&&Copy"),order:2}})||this}return CR(t,e),t.prototype.run=function(t,n){n.hasModel()&&(!n.getOption(25)&&n.getSelection().isEmpty()||e.prototype.run.call(this,t,n))},t}(NR),IR=function(e){function t(){var t={kbExpr:eC.textInputFocus,primary:2100,win:{primary:2100,secondary:[1043]},weight:100};return b||(t=void 0),e.call(this,"paste",{id:"editor.action.clipboardPasteAction",label:r("actions.clipboard.pasteLabel","Paste"),alias:"Paste",precondition:eC.writable,kbOpts:t,contextMenuOpts:{group:"9_cutcopypaste",order:3},menuOpts:{menuId:17,group:"2_ccp",title:r({key:"miPaste",comment:["&& denotes a mnemonic"]},"&&Paste"),order:3}})||this}return CR(t,e),t}(NR),OR=function(e){function t(){return e.call(this,"copy",{id:"editor.action.clipboardCopyWithSyntaxHighlightingAction",label:r("actions.clipboard.copyWithSyntaxHighlightingLabel","Copy With Syntax Highlighting"),alias:"Copy With Syntax Highlighting",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:0,weight:100}})||this}return CR(t,e),t.prototype.run=function(t,n){n.hasModel()&&(!n.getOption(25)&&n.getSelection().isEmpty()||(v_.forceCopyWithSyntaxHighlighting=!0,e.prototype.run.call(this,t,n),v_.forceCopyWithSyntaxHighlighting=!1))},t}(NR);SR&&Tf(kR),LR&&Tf(ER),DR&&Tf(IR),xR&&Tf(OR);var MR=function(){function e(e){this.executor=e,this._didRun=!1}return e.prototype.getValue=function(){if(!this._didRun)try{this._value=this.executor()}catch(e){this._error=e}finally{this._didRun=!0}if(this._error)throw this._error;return this._value},Object.defineProperty(e.prototype,"rawValue",{get:function(){return this._value},enumerable:!0,configurable:!0}),e}(),TR=function(){function e(e){this.value=e}return e.prototype.equals=function(e){return this.value===e.value},e.prototype.contains=function(t){return this.equals(t)||""===this.value||vr(t.value,this.value+e.sep)},e.prototype.intersects=function(e){return this.contains(e)||e.contains(this)},e.prototype.append=function(t){return new e(this.value+e.sep+t)},e.sep=".",e.None=new e("@@none@@"),e.Empty=new e(""),e.QuickFix=new e("quickfix"),e.Refactor=new e("refactor"),e.Source=new e("source"),e.SourceOrganizeImports=e.Source.append("organizeImports"),e.SourceFixAll=e.Source.append("fixAll"),e}();function PR(e,t,n){return!!t.contains(e)&&(!n||!t.contains(n))}var RR=function(){function e(e,t,n){this.kind=e,this.apply=t,this.preferred=n}return e.fromUser=function(t,n){return t&&"object"==typeof t?new e(e.getKindFromUser(t,n.kind),e.getApplyFromUser(t,n.apply),e.getPreferredUser(t)):new e(n.kind,n.apply,!1)},e.getApplyFromUser=function(e,t){switch("string"==typeof e.apply?e.apply.toLowerCase():""){case"first":return"first";case"never":return"never";case"ifsingle":return"ifSingle";default:return t}},e.getKindFromUser=function(e,t){return"string"==typeof e.kind?new TR(e.kind):t},e.getPreferredUser=function(e){return"boolean"==typeof e.preferred&&e.preferred},e}(),AR=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),FR=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},WR=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},VR=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},BR=function(e){function t(n,i){var o=e.call(this)||this;return o._register(i),o.allActions=Ni(VR(n),t.codeActionsComparator),o.validActions=o.allActions.filter((function(e){return!e.disabled})),o}return AR(t,e),t.codeActionsComparator=function(e,t){return Oi(e.diagnostics)?Oi(t.diagnostics)?e.diagnostics[0].message.localeCompare(t.diagnostics[0].message):-1:Oi(t.diagnostics)?1:0},Object.defineProperty(t.prototype,"hasAutoFix",{get:function(){return this.validActions.some((function(e){return!!e.kind&&TR.QuickFix.contains(new TR(e.kind))&&!!e.isPreferred}))},enumerable:!0,configurable:!0}),t}(He);function HR(e,t,n,i){var o,r=this,s=n.filter||{},a={only:null===(o=s.include)||void 0===o?void 0:o.value,trigger:n.type},u=new sD(e,i),l=function(e,t){return Vu.all(e).filter((function(e){return!e.providedCodeActionKinds||e.providedCodeActionKinds.some((function(e){return function(e,t){return!(e.include&&!e.include.intersects(t))&&((!e.excludes||!e.excludes.some((function(n){return PR(t,n,e.include)})))&&!(!e.includeSourceActions&&TR.Source.contains(t)))}(t,new TR(e))}))}))}(e,s),c=new Be,d=l.map((function(n){return FR(r,void 0,void 0,(function(){var i,o;return WR(this,(function(r){switch(r.label){case 0:return r.trys.push([0,2,,3]),[4,n.provideCodeActions(e,t,a,u.token)];case 1:return i=r.sent(),u.token.isCancellationRequested||!i?[2,[]]:(c.add(i),[2,i.actions.filter((function(e){return e&&function(e,t){var n=t.kind?new TR(t.kind):void 0;return!!(!e.include||n&&e.include.contains(n))&&(!(e.excludes&&n&&e.excludes.some((function(t){return PR(n,t,e.include)})))&&(!(!e.includeSourceActions&&n&&TR.Source.contains(n))&&!(e.onlyIncludePreferredActions&&!t.isPreferred)))}(s,e)}))]);case 2:if(Ee(o=r.sent()))throw o;return Ne(o),[2,[]];case 3:return[2]}}))}))})),h=Vu.onDidChange((function(){xi(Vu.all(e),l)||u.cancel()}));return Promise.all(d).then(Fi).then((function(e){return new BR(e,c)})).finally((function(){h.dispose(),u.dispose()}))}Ef("_executeCodeActionProvider",(function(e,t){return FR(this,void 0,void 0,(function(){var n,i,o,r,s,a;return WR(this,(function(u){switch(u.label){case 0:if(n=t.resource,i=t.rangeOrSelection,o=t.kind,!(n instanceof Et))throw Oe();if(!(r=e.get(du).getModel(n)))throw Oe();if(!(s=Sn.isISelection(i)?Sn.liftSelection(i):wn.isIRange(i)?r.validateRange(i):void 0))throw Oe();return[4,HR(r,s,{type:2,filter:{includeSourceActions:!0,include:o&&o.value?new TR(o.value):void 0}},et.None)];case 1:return a=u.sent(),setTimeout((function(){return a.dispose()}),100),[2,a.validActions]}}))}))}));n(400);var zR=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),jR=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},UR=function(e,t){return function(n,i){t(n,i,e)}},KR=function(e){function t(n,i){var o=e.call(this)||this;return o.closeTimeout=3e3,o._messageWidget=o._register(new ze),o._messageListeners=o._register(new Be),o._editor=n,o._visible=t.MESSAGE_VISIBLE.bindTo(i),o._register(o._editor.onDidAttemptReadOnlyEdit((function(){return o._onDidAttemptReadOnlyEdit()}))),o}return zR(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.dispose=function(){e.prototype.dispose.call(this),this._visible.reset()},t.prototype.showMessage=function(e,t){var n,i=this;Zp(e),this._visible.set(!0),this._messageWidget.clear(),this._messageListeners.clear(),this._messageWidget.value=new qR(this._editor,t,e),this._messageListeners.add(this._editor.onDidBlurEditorText((function(){return i.closeMessage()}))),this._messageListeners.add(this._editor.onDidChangeCursorPosition((function(){return i.closeMessage()}))),this._messageListeners.add(this._editor.onDidDispose((function(){return i.closeMessage()}))),this._messageListeners.add(this._editor.onDidChangeModel((function(){return i.closeMessage()}))),this._messageListeners.add(new yi((function(){return i.closeMessage()}),this.closeTimeout)),this._messageListeners.add(this._editor.onMouseMove((function(e){e.target.position&&(n?n.containsPosition(e.target.position)||i.closeMessage():n=new wn(t.lineNumber-3,1,e.target.position.lineNumber+3,1))})))},t.prototype.closeMessage=function(){this._visible.reset(),this._messageListeners.clear(),this._messageWidget.value&&this._messageListeners.add(qR.fadeOut(this._messageWidget.value))},t.prototype._onDidAttemptReadOnlyEdit=function(){this._editor.hasModel()&&this.showMessage(r("editor.readonly","Cannot edit in read-only editor"),this._editor.getPosition())},t.ID="editor.contrib.messageController",t.MESSAGE_VISIBLE=new Kh("messageVisible",!1),t=jR([UR(1,qh)],t)}(He);Mf(new(Nf.bindToContribution(KR.get))({id:"leaveEditorMessage",precondition:KR.MESSAGE_VISIBLE,handler:function(e){return e.closeMessage()},kbOpts:{weight:130,primary:9}}));var qR=function(){function e(e,t,n){var i=t.lineNumber,o=t.column;this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._editor=e,this._editor.revealLinesInCenterIfOutsideViewport(i,i,0),this._position={lineNumber:i,column:o-1},this._domNode=document.createElement("div"),this._domNode.classList.add("monaco-editor-overlaymessage");var r=document.createElement("div");r.classList.add("message"),r.textContent=n,this._domNode.appendChild(r);var s=document.createElement("div");s.classList.add("anchor"),this._domNode.appendChild(s),this._editor.addContentWidget(this),this._domNode.classList.add("fadeIn")}return e.fadeOut=function(e){var t,n=function(){e.dispose(),clearTimeout(t),e.getDomNode().removeEventListener("animationend",n)};return t=setTimeout(n,110),e.getDomNode().addEventListener("animationend",n),e.getDomNode().classList.add("fadeOut"),{dispose:n}},e.prototype.dispose=function(){this._editor.removeContentWidget(this)},e.prototype.getId=function(){return"messageoverlay"},e.prototype.getDomNode=function(){return this._domNode},e.prototype.getPosition=function(){return{position:this._position,preference:[1,2]}},e}();Pf(KR.ID,KR),yg((function(e,t){var n=e.getColor(U_);if(n){var i="hc"===e.type?2:1;t.addRule(".monaco-editor .monaco-editor-overlaymessage .anchor { border-top-color: "+n+"; }"),t.addRule(".monaco-editor .monaco-editor-overlaymessage .message { border: "+i+"px solid "+n+"; }")}var o=e.getColor(z_);o&&t.addRule(".monaco-editor .monaco-editor-overlaymessage .message { background-color: "+o+"; }");var r=e.getColor(j_);r&&t.addRule(".monaco-editor .monaco-editor-overlaymessage .message { color: "+r+"; }")}));var GR,ZR=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),YR=function(){return(YR=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},XR=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},$R=function(e,t){return function(n,i){t(n,i,e)}},QR=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},JR=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},eA=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},tA=function(e){function t(t,n){var i=e.call(this,t.command?t.command.id:t.title,t.title,void 0,!t.disabled,n)||this;return i.action=t,i}return ZR(t,e),t}(df),nA=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r._editor=t,r._delegate=n,r._contextMenuService=i,r._visible=!1,r._showingActions=r._register(new ze),r._keybindingResolver=new iA({getKeybindings:function(){return o.getKeybindings()}}),r}return ZR(t,e),Object.defineProperty(t.prototype,"isVisible",{get:function(){return this._visible},enumerable:!0,configurable:!0}),t.prototype.show=function(e,t,n,i){return QR(this,void 0,void 0,(function(){var o,r,s,a,u=this;return JR(this,(function(l){if(!(o=i.includeDisabledActions?t.allActions:t.validActions).length)return this._visible=!1,[2];if(!this._editor.getDomNode())throw this._visible=!1,Ie();return this._visible=!0,this._showingActions.value=t,r=this.getMenuActions(e,o),s=bn.isIPosition(n)?this._toCoords(n):n||{x:0,y:0},a=this._keybindingResolver.getResolver(),this._contextMenuService.showContextMenu({getAnchor:function(){return s},getActions:function(){return r},onHide:function(){u._visible=!1,u._editor.focus()},autoSelectFirstItem:!0,getKeyBinding:function(e){return e instanceof tA?a(e.action):void 0}}),[2]}))}))},t.prototype.getMenuActions=function(e,t){var n,i,o=this,r=function(e){return new tA(e,(function(){return o._delegate.onSelectCodeAction(e)}))},s=t.map(r),a=this._editor.getModel();if(a&&s.length)for(var u=0,l=Vu.all(a);u<l.length;u++){var c=l[u];if(c._getAdditionalMenuItems){var d=c._getAdditionalMenuItems({trigger:e.type,only:null===(i=null===(n=e.filter)||void 0===n?void 0:n.include)||void 0===i?void 0:i.value},t);d.length&&s.push.apply(s,eA([new fD],d.map((function(e){return r({title:e.title,command:e})}))))}}return s},t.prototype._toCoords=function(e){if(!this._editor.hasModel())return{x:0,y:0};this._editor.revealPosition(e,1),this._editor.render();var t=this._editor.getScrolledVisiblePosition(e),n=Oo(this._editor.getDomNode());return{x:n.left+t.left,y:n.top+t.top+t.height}},t=XR([$R(2,DD),$R(3,XD)],t)}(He),iA=function(){function e(e){this._keybindingProvider=e}return e.prototype.getResolver=function(){var t=this,n=new MR((function(){return t._keybindingProvider.getKeybindings().filter((function(t){return e.codeActionCommands.indexOf(t.command)>=0})).filter((function(e){return e.resolvedKeybinding})).map((function(e){var t=e.commandArgs;return"editor.action.organizeImports"===e.command?t={kind:TR.SourceOrganizeImports.value}:"editor.action.fixAll"===e.command&&(t={kind:TR.SourceFixAll.value}),YR({resolvedKeybinding:e.resolvedKeybinding},RR.fromUser(t,{kind:TR.None,apply:"never"}))}))}));return function(e){if(e.kind){var i=t.bestKeybindingForCodeAction(e,n.getValue());return null==i?void 0:i.resolvedKeybinding}}},e.prototype.bestKeybindingForCodeAction=function(e,t){if(e.kind){var n=new TR(e.kind);return t.filter((function(e){return e.kind.contains(n)})).filter((function(t){return!t.preferred||e.isPreferred})).reduceRight((function(e,t){return e?e.kind.contains(t.kind)?t:e:t}),void 0)}},e.codeActionCommands=["editor.action.refactor","editor.action.codeAction","editor.action.sourceAction","editor.action.organizeImports","editor.action.fixAll"],e}(),oA=(n(401),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),rA=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},sA=function(e,t){return function(n,i){t(n,i,e)}};!function(e){e.Hidden={type:0};var t=function(e,t,n,i){this.actions=e,this.trigger=t,this.editorPosition=n,this.widgetPosition=i,this.type=1};e.Showing=t}(GR||(GR={}));var aA=function(e){function t(t,n,i,o){var r,s=e.call(this)||this;return s._editor=t,s._quickFixActionId=n,s._preferredFixActionId=i,s._keybindingService=o,s._onClick=s._register(new nt),s.onClick=s._onClick.event,s._state=GR.Hidden,s._domNode=document.createElement("div"),s._domNode.className="codicon codicon-lightbulb",s._editor.addContentWidget(s),s._register(s._editor.onDidChangeModelContent((function(e){var t=s._editor.getModel();(1!==s.state.type||!t||s.state.editorPosition.lineNumber>=t.getLineCount())&&s.hide()}))),jf.ignoreTarget(s._domNode),s._register(ho(s._domNode,lo((function(e){if(1===s.state.type){s._editor.focus(),e.preventDefault();var t=Oo(s._domNode),n=t.top,i=t.height,o=s._editor.getOption(49),r=Math.floor(o/3);null!==s.state.widgetPosition.position&&s.state.widgetPosition.position.lineNumber<s.state.editorPosition.lineNumber&&(r+=o),s._onClick.fire({x:e.posx,y:n+i+r,actions:s.state.actions,trigger:s.state.trigger})}})),r)),s._register(uo(s._domNode,"mouseenter",(function(e){if(1==(1&e.buttons)){s.hide();var t=new Kf;t.startMonitoring(e.target,e.buttons,Uf,(function(){}),(function(){t.dispose()}))}}))),s._register(s._editor.onDidChangeConfiguration((function(e){e.hasChanged(47)&&!s._editor.getOption(47).enabled&&s.hide()}))),s._updateLightBulbTitle(),s._register(s._keybindingService.onDidUpdateKeybindings(s._updateLightBulbTitle,s)),s}return oA(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._editor.removeContentWidget(this)},t.prototype.getId=function(){return"LightBulbWidget"},t.prototype.getDomNode=function(){return this._domNode},t.prototype.getPosition=function(){return 1===this._state.type?this._state.widgetPosition:null},t.prototype.update=function(e,n,i){var o=this;if(e.validActions.length<=0)return this.hide();var r=this._editor.getOptions();if(!r.get(47).enabled)return this.hide();var s=i.lineNumber,a=i.column,u=this._editor.getModel();if(!u)return this.hide();var l=u.getOptions().tabSize,c=r.get(34),d=u.getLineContent(s),h=Cv.computeIndentLevel(d,l),p=function(e){return e>2&&o._editor.getTopForLineNumber(e)===o._editor.getTopForLineNumber(e-1)},f=s;if(!(c.spaceWidth*h>22))if(s>1&&!p(s-1))f-=1;else if(p(s+1)){if(a*c.spaceWidth<22)return this.hide()}else f+=1;this.state=new GR.Showing(e,n,i,{position:{lineNumber:f,column:1},preference:t._posPref}),so(this._domNode,"codicon-lightbulb-autofix",e.hasAutoFix),this._editor.layoutContentWidget(this)},t.prototype.hide=function(){this.state=GR.Hidden,this._editor.layoutContentWidget(this)},Object.defineProperty(t.prototype,"state",{get:function(){return this._state},set:function(e){this._state=e,this._updateLightBulbTitle()},enumerable:!0,configurable:!0}),t.prototype._updateLightBulbTitle=function(){if(1===this.state.type&&this.state.actions.hasAutoFix){var e=this._keybindingService.lookupKeybinding(this._preferredFixActionId);if(e)return void(this.title=r("prefferedQuickFixWithKb","Show Fixes. Preferred Fix Available ({0})",e.getLabel()))}var t=this._keybindingService.lookupKeybinding(this._quickFixActionId);this.title=t?r("quickFixWithKb","Show Fixes ({0})",t.getLabel()):r("quickFix","Show Fixes")},Object.defineProperty(t.prototype,"title",{set:function(e){this._domNode.title=e},enumerable:!0,configurable:!0}),t._posPref=[0],t=rA([sA(3,XD)],t)}(He);yg((function(e,t){var n=e.getColor(Vy);n&&t.addRule("\n\t\t.monaco-editor .contentWidgets .codicon-lightbulb {\n\t\t\tcolor: "+n+";\n\t\t}");var i=e.getColor(By);i&&t.addRule("\n\t\t.monaco-editor .contentWidgets .codicon-lightbulb-autofix {\n\t\t\tcolor: "+i+";\n\t\t}")}));var uA,lA=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),cA=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},dA=function(e,t){return function(n,i){t(n,i,e)}},hA=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},pA=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},fA=function(e){function t(t,n,i,o,r){var s=e.call(this)||this;return s._editor=t,s.delegate=o,s._activeCodeActions=s._register(new ze),s._codeActionWidget=new MR((function(){return s._register(r.createInstance(nA,s._editor,{onSelectCodeAction:function(e){return hA(s,void 0,void 0,(function(){return pA(this,(function(t){return this.delegate.applyCodeAction(e,!0),[2]}))}))}}))})),s._lightBulbWidget=new MR((function(){var e=s._register(r.createInstance(aA,s._editor,n,i));return s._register(e.onClick((function(e){return s.showCodeActionList(e.trigger,e.actions,e,{includeDisabledActions:!1})}))),e})),s}return lA(t,e),t.prototype.update=function(e){var t,n,i;return hA(this,void 0,void 0,(function(){var o,r,s,a;return pA(this,(function(u){switch(u.label){case 0:if(1!==e.type)return null===(t=this._lightBulbWidget.rawValue)||void 0===t||t.hide(),[2];u.label=1;case 1:return u.trys.push([1,3,,4]),[4,e.actions];case 2:return o=u.sent(),[3,4];case 3:return De(u.sent()),[2];case 4:if(this._lightBulbWidget.getValue().update(o,e.trigger,e.position),2!==e.trigger.type)return[3,11];if(!(null===(n=e.trigger.filter)||void 0===n?void 0:n.include))return[3,10];if(!(r=this.tryGetValidActionToApply(e.trigger,o)))return[3,9];u.label=5;case 5:return u.trys.push([5,,7,8]),[4,this.delegate.applyCodeAction(r,!1)];case 6:return u.sent(),[3,8];case 7:return o.dispose(),[7];case 8:return[2];case 9:if(e.trigger.context&&(s=this.getInvalidActionThatWouldHaveBeenApplied(e.trigger,o))&&s.disabled)return KR.get(this._editor).showMessage(s.disabled,e.trigger.context.position),o.dispose(),[2];u.label=10;case 10:return a=!!(null===(i=e.trigger.filter)||void 0===i?void 0:i.include),!e.trigger.context||o.allActions.length&&(a||o.validActions.length)?(this._activeCodeActions.value=o,this._codeActionWidget.getValue().show(e.trigger,o,e.position,{includeDisabledActions:a}),[3,12]):(KR.get(this._editor).showMessage(e.trigger.context.notAvailableMessage,e.trigger.context.position),this._activeCodeActions.value=o,o.dispose(),[2]);case 11:this._codeActionWidget.getValue().isVisible?o.dispose():this._activeCodeActions.value=o,u.label=12;case 12:return[2]}}))}))},t.prototype.getInvalidActionThatWouldHaveBeenApplied=function(e,t){if(t.allActions.length)return"first"===e.autoApply&&0===t.validActions.length||"ifSingle"===e.autoApply&&1===t.allActions.length?zi(t.allActions,(function(e){return e.disabled})):void 0},t.prototype.tryGetValidActionToApply=function(e,t){if(t.validActions.length)return"first"===e.autoApply&&t.validActions.length>0||"ifSingle"===e.autoApply&&1===t.validActions.length?t.validActions[0]:void 0},t.prototype.showCodeActionList=function(e,t,n,i){return hA(this,void 0,void 0,(function(){return pA(this,(function(o){return this._codeActionWidget.getValue().show(e,t,n,i),[2]}))}))},t=cA([dA(4,In)],t)}(He),gA=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),mA=new Kh("supportedCodeAction",""),vA=function(e){function t(t,n,i,o){void 0===o&&(o=250);var r=e.call(this)||this;return r._editor=t,r._markerService=n,r._signalChange=i,r._delay=o,r._autoTriggerTimer=r._register(new yi),r._register(r._markerService.onMarkerChanged((function(e){return r._onMarkerChanges(e)}))),r._register(r._editor.onDidChangeCursorPosition((function(){return r._onCursorChange()}))),r}return gA(t,e),t.prototype.trigger=function(e){var t=this._getRangeOfSelectionUnlessWhitespaceEnclosed(e);return this._createEventAndSignalChange(e,t)},t.prototype._onMarkerChanges=function(e){var t=this,n=this._editor.getModel();n&&e.some((function(e){return xs(e,n.uri)}))&&this._autoTriggerTimer.cancelAndSet((function(){t.trigger({type:1})}),this._delay)},t.prototype._onCursorChange=function(){var e=this;this._autoTriggerTimer.cancelAndSet((function(){e.trigger({type:1})}),this._delay)},t.prototype._getRangeOfMarker=function(e){var t=this._editor.getModel();if(t)for(var n=0,i=this._markerService.read({resource:t.uri});n<i.length;n++){var o=i[n],r=t.validateRange(o);if(wn.intersectRanges(r,e))return wn.lift(r)}},t.prototype._getRangeOfSelectionUnlessWhitespaceEnclosed=function(e){if(this._editor.hasModel()){var t=this._editor.getModel(),n=this._editor.getSelection();if(n.isEmpty()&&1===e.type){var i=n.getPosition(),o=i.lineNumber,r=i.column,s=t.getLineContent(o);if(0===s.length)return;if(1===r){if(/\s/.test(s[0]))return}else if(r===t.getLineMaxColumn(o)){if(/\s/.test(s[s.length-1]))return}else if(/\s/.test(s[r-2])&&/\s/.test(s[r-1]))return}return n}},t.prototype._createEventAndSignalChange=function(e,t){var n=this._editor.getModel();if(t&&n){var i=this._getRangeOfMarker(t),o=i?i.getStartPosition():t.getStartPosition(),r={trigger:e,selection:t,position:o};return this._signalChange(r),r}this._signalChange(void 0)},t}(He);!function(e){e.Empty={type:0};var t=function(e,t,n,i){this.trigger=e,this.rangeOrSelection=t,this.position=n,this.actions=i,this.type=1};e.Triggered=t}(uA||(uA={}));var _A=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r._editor=t,r._markerService=n,r._progressService=o,r._codeActionOracle=r._register(new ze),r._state=uA.Empty,r._onDidChangeState=r._register(new nt),r.onDidChangeState=r._onDidChangeState.event,r._supportedCodeActions=mA.bindTo(i),r._register(r._editor.onDidChangeModel((function(){return r._update()}))),r._register(r._editor.onDidChangeModelLanguage((function(){return r._update()}))),r._register(Vu.onDidChange((function(){return r._update()}))),r._update(),r}return gA(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this.setState(uA.Empty,!0)},t.prototype._update=function(){var e=this;this._codeActionOracle.value=void 0,this.setState(uA.Empty);var t=this._editor.getModel();if(t&&Vu.has(t)&&!this._editor.getOption(68)){for(var n=[],i=0,o=Vu.all(t);i<o.length;i++){var r=o[i];Array.isArray(r.providedCodeActionKinds)&&n.push.apply(n,r.providedCodeActionKinds)}this._supportedCodeActions.set(n.join(" ")),this._codeActionOracle.value=new vA(this._editor,this._markerService,(function(n){if(n){var i=hi((function(e){return HR(t,n.selection,n.trigger,e)}));e._progressService&&2===n.trigger.type&&e._progressService.showWhile(i,250),e.setState(new uA.Triggered(n.trigger,n.selection,n.position,i))}else e.setState(uA.Empty)}),void 0),this._codeActionOracle.value.trigger({type:1})}else this._supportedCodeActions.reset()},t.prototype.trigger=function(e){this._codeActionOracle.value&&this._codeActionOracle.value.trigger(e)},t.prototype.setState=function(e,t){e!==this._state&&(1===this._state.type&&this._state.actions.cancel(),this._state=e,t||this._onDidChangeState.fire(e))},t}(He),yA=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),bA=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},wA=function(e,t){return function(n,i){t(n,i,e)}},CA=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},SA=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},LA=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i};function xA(e){return Rh.regex(mA.keys()[0],new RegExp("(\\s|^)"+gr(e.value)+"\\b"))}var DA={type:"object",required:["kind"],defaultSnippets:[{body:{kind:""}}],properties:{kind:{type:"string",description:r("args.schema.kind","Kind of the code action to run.")},apply:{type:"string",description:r("args.schema.apply","Controls when the returned actions are applied."),default:"ifSingle",enum:["first","ifSingle","never"],enumDescriptions:[r("args.schema.apply.first","Always apply the first returned code action."),r("args.schema.apply.ifSingle","Apply the first returned code action if it is the only one."),r("args.schema.apply.never","Do not apply the returned code actions.")]},preferred:{type:"boolean",default:!1,description:r("args.schema.preferred","Controls if only preferred code actions should be returned.")}}},NA=function(e){function t(t,n,i,o,r){var s=e.call(this)||this;return s._instantiationService=r,s._editor=t,s._model=s._register(new _A(s._editor,n,i,o)),s._register(s._model.onDidChangeState((function(e){return s.update(e)}))),s._ui=new MR((function(){return s._register(new fA(t,IA.Id,AA.Id,{applyCodeAction:function(e,t){return CA(s,void 0,void 0,(function(){return SA(this,(function(n){switch(n.label){case 0:return n.trys.push([0,,2,3]),[4,this._applyCodeAction(e)];case 1:return n.sent(),[3,3];case 2:return t&&this._trigger({type:1,filter:{}}),[7];case 3:return[2]}}))}))}},s._instantiationService))})),s}return yA(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.update=function(e){this._ui.getValue().update(e)},t.prototype.showCodeActions=function(e,t,n){return this._ui.getValue().showCodeActionList(e,t,n,{includeDisabledActions:!1})},t.prototype.manualTriggerAtCurrentPosition=function(e,t,n){if(this._editor.hasModel()){KR.get(this._editor).closeMessage();var i=this._editor.getPosition();this._trigger({type:2,filter:t,autoApply:n,context:{notAvailableMessage:e,position:i}})}},t.prototype._trigger=function(e){return this._model.trigger(e)},t.prototype._applyCodeAction=function(e){return this._instantiationService.invokeFunction(kA,e,this._editor)},t.ID="editor.contrib.quickFixController",t=bA([wA(1,MM),wA(2,qh),wA(3,OD),wA(4,In)],t)}(He);function kA(e,t,n){return CA(this,void 0,void 0,(function(){var i,o,s,a,u,l;return SA(this,(function(c){switch(c.label){case 0:return i=e.get(uN),o=e.get(la),s=e.get(Lf),a=e.get(ap),s.publicLog2("codeAction.applyCodeAction",{codeActionTitle:t.title,codeActionKind:t.kind,codeActionIsPreferred:!!t.isPreferred}),t.edit?[4,i.apply(t.edit,{editor:n})]:[3,2];case 1:c.sent(),c.label=2;case 2:if(!t.command)return[3,6];c.label=3;case 3:return c.trys.push([3,5,,6]),[4,o.executeCommand.apply(o,LA([t.command.id],t.command.arguments||[]))];case 4:return c.sent(),[3,6];case 5:return u=c.sent(),l="string"==typeof(d=u)?d:d instanceof Error&&"string"==typeof d.message?d.message:void 0,a.error("string"==typeof l?l:r("applyCodeActionFailed","An unknown error occurred while applying the code action")),[3,6];case 6:return[2]}var d}))}))}function EA(e,t,n,i){if(e.hasModel()){var o=NA.get(e);o&&o.manualTriggerAtCurrentPosition(t,n,i)}}var IA=function(e){function t(){return e.call(this,{id:t.Id,label:r("quickfix.trigger.label","Quick Fix..."),alias:"Quick Fix...",precondition:Rh.and(eC.writable,eC.hasCodeActionsProvider),kbOpts:{kbExpr:eC.editorTextFocus,primary:2132,weight:100}})||this}return yA(t,e),t.prototype.run=function(e,t){return EA(t,r("editor.action.quickFix.noneMessage","No code actions available"),void 0,void 0)},t.Id="editor.action.quickFix",t}(kf),OA=function(e){function t(){return e.call(this,{id:"editor.action.codeAction",precondition:Rh.and(eC.writable,eC.hasCodeActionsProvider),description:{description:"Trigger a code action",args:[{name:"args",schema:DA}]}})||this}return yA(t,e),t.prototype.runEditorCommand=function(e,t,n){var i=RR.fromUser(n,{kind:TR.Empty,apply:"ifSingle"});return EA(t,"string"==typeof(null==n?void 0:n.kind)?i.preferred?r("editor.action.codeAction.noneMessage.preferred.kind","No preferred code actions for '{0}' available",n.kind):r("editor.action.codeAction.noneMessage.kind","No code actions for '{0}' available",n.kind):i.preferred?r("editor.action.codeAction.noneMessage.preferred","No preferred code actions available"):r("editor.action.codeAction.noneMessage","No code actions available"),{include:i.kind,includeSourceActions:!0,onlyIncludePreferredActions:i.preferred},i.apply)},t}(Nf),MA=function(e){function t(){return e.call(this,{id:"editor.action.refactor",label:r("refactor.label","Refactor..."),alias:"Refactor...",precondition:Rh.and(eC.writable,eC.hasCodeActionsProvider),kbOpts:{kbExpr:eC.editorTextFocus,primary:3120,mac:{primary:1328},weight:100},contextMenuOpts:{group:"1_modification",order:2,when:Rh.and(eC.writable,xA(TR.Refactor))},description:{description:"Refactor...",args:[{name:"args",schema:DA}]}})||this}return yA(t,e),t.prototype.run=function(e,t,n){var i=RR.fromUser(n,{kind:TR.Refactor,apply:"never"});return EA(t,"string"==typeof(null==n?void 0:n.kind)?i.preferred?r("editor.action.refactor.noneMessage.preferred.kind","No preferred refactorings for '{0}' available",n.kind):r("editor.action.refactor.noneMessage.kind","No refactorings for '{0}' available",n.kind):i.preferred?r("editor.action.refactor.noneMessage.preferred","No preferred refactorings available"):r("editor.action.refactor.noneMessage","No refactorings available"),{include:TR.Refactor.contains(i.kind)?i.kind:TR.None,onlyIncludePreferredActions:i.preferred},i.apply)},t}(kf),TA=function(e){function t(){return e.call(this,{id:"editor.action.sourceAction",label:r("source.label","Source Action..."),alias:"Source Action...",precondition:Rh.and(eC.writable,eC.hasCodeActionsProvider),contextMenuOpts:{group:"1_modification",order:2.1,when:Rh.and(eC.writable,xA(TR.Source))},description:{description:"Source Action...",args:[{name:"args",schema:DA}]}})||this}return yA(t,e),t.prototype.run=function(e,t,n){var i=RR.fromUser(n,{kind:TR.Source,apply:"never"});return EA(t,"string"==typeof(null==n?void 0:n.kind)?i.preferred?r("editor.action.source.noneMessage.preferred.kind","No preferred source actions for '{0}' available",n.kind):r("editor.action.source.noneMessage.kind","No source actions for '{0}' available",n.kind):i.preferred?r("editor.action.source.noneMessage.preferred","No preferred source actions available"):r("editor.action.source.noneMessage","No source actions available"),{include:TR.Source.contains(i.kind)?i.kind:TR.None,includeSourceActions:!0,onlyIncludePreferredActions:i.preferred},i.apply)},t}(kf),PA=function(e){function t(){return e.call(this,{id:"editor.action.organizeImports",label:r("organizeImports.label","Organize Imports"),alias:"Organize Imports",precondition:Rh.and(eC.writable,xA(TR.SourceOrganizeImports)),kbOpts:{kbExpr:eC.editorTextFocus,primary:1581,weight:100}})||this}return yA(t,e),t.prototype.run=function(e,t){return EA(t,r("editor.action.organize.noneMessage","No organize imports action available"),{include:TR.SourceOrganizeImports,includeSourceActions:!0},"ifSingle")},t}(kf),RA=function(e){function t(){return e.call(this,{id:"editor.action.fixAll",label:r("fixAll.label","Fix All"),alias:"Fix All",precondition:Rh.and(eC.writable,xA(TR.SourceFixAll))})||this}return yA(t,e),t.prototype.run=function(e,t){return EA(t,r("fixAll.noneMessage","No fix all action available"),{include:TR.SourceFixAll,includeSourceActions:!0},"ifSingle")},t}(kf),AA=function(e){function t(){return e.call(this,{id:t.Id,label:r("autoFix.label","Auto Fix..."),alias:"Auto Fix...",precondition:Rh.and(eC.writable,xA(TR.QuickFix)),kbOpts:{kbExpr:eC.editorTextFocus,primary:1620,mac:{primary:2644},weight:100}})||this}return yA(t,e),t.prototype.run=function(e,t){return EA(t,r("editor.action.autoFix.noneMessage","No auto fixes available"),{include:TR.QuickFix,onlyIncludePreferredActions:!0},"ifSingle")},t.Id="editor.action.autoFix",t}(kf);Pf(NA.ID,NA),Tf(IA),Tf(MA),Tf(TA),Tf(PA),Tf(AA),Tf(RA),Mf(new OA);var FA=function(){function e(){this.lenses=[],this._disposables=new Be}return e.prototype.dispose=function(){this._disposables.dispose()},e.prototype.add=function(e,t){this._disposables.add(e);for(var n=0,i=e.lenses;n<i.length;n++){var o=i[n];this.lenses.push({symbol:o,provider:t})}},e}();function WA(e,t){var n=Wu.ordered(e),i=new Map,o=new FA,r=n.map((function(n,r){return i.set(n,r),Promise.resolve(n.provideCodeLenses(e,t)).then((function(e){return e&&o.add(e,n)})).catch(Ne)}));return Promise.all(r).then((function(){return o.lenses=Ni(o.lenses,(function(e,t){return e.symbol.range.startLineNumber<t.symbol.range.startLineNumber?-1:e.symbol.range.startLineNumber>t.symbol.range.startLineNumber?1:i.get(e.provider)<i.get(t.provider)?-1:i.get(e.provider)>i.get(t.provider)?1:e.symbol.range.startColumn<t.symbol.range.startColumn?-1:e.symbol.range.startColumn>t.symbol.range.startColumn?1:0})),o}))}Ef("_executeCodeLensProvider",(function(e,t){var n=t.resource,i=t.itemResolveCount;if(!(n instanceof Et))throw Oe();var o=e.get(du).getModel(n);if(!o)throw Oe();var r=[],s=new Be;return WA(o,et.None).then((function(e){s.add(e);for(var t=[],n=function(e){void 0===i||Boolean(e.symbol.command)?r.push(e.symbol):i-- >0&&e.provider.resolveCodeLens&&t.push(Promise.resolve(e.provider.resolveCodeLens(o,e.symbol,et.None)).then((function(t){return r.push(t||e.symbol)})))},a=0,u=e.lenses;a<u.length;a++){n(u[a])}return Promise.all(t)})).then((function(){return r})).finally((function(){setTimeout((function(){return s.dispose()}),100)}))}));n(402);var VA=/(\\)?\$\([a-z0-9\-]+?(?:~[a-z0-9\-]*?)?\)/gi;var BA=/\\\$\([a-z0-9\-]+?(?:~[a-z0-9\-]*?)?\)/gi;var HA=/(\\)?\$\((([a-z0-9\-]+?)(?:~([a-z0-9\-]*?))?)\)/gi;function zA(e){return e.replace(HA,(function(e,t,n,i,o){return t?"$("+n+")":'<span class="codicon codicon-'+i+(o?" codicon-animation-"+o:"")+'"></span>'}))}var jA=function(){function e(e,t){this.afterLineNumber=e,this._onHeight=t,this.heightInLines=1,this.suppressMouseDown=!0,this.domNode=document.createElement("div")}return e.prototype.onComputedHeight=function(e){void 0===this._lastHeight?this._lastHeight=e:this._lastHeight!==e&&(this._lastHeight=e,this._onHeight())},e}(),UA=function(){function e(t,n,i){this.allowEditorOverflow=!1,this.suppressMouseDown=!0,this._commands=new Map,this._isEmpty=!0,this._editor=t,this._id="codelens.widget-"+e._idPool++,this.updatePosition(i),this._domNode=document.createElement("span"),this._domNode.className="codelens-decoration "+n}return e.prototype.withCommands=function(e,t){this._commands.clear();for(var n="",i=!1,o=0;o<e.length;o++){var r=e[o];if(r&&(i=!0,r.command)){var s=zA(fr(r.command.title));r.command.id?(n+="<a id="+o+">"+s+"</a>",this._commands.set(String(o),r.command)):n+="<span>"+s+"</span>",o+1<e.length&&(n+="<span> | </span>")}}i?(n||(n=" "),this._domNode.innerHTML=n,this._isEmpty&&t&&no(this._domNode,"fadein"),this._isEmpty=!1):this._domNode.innerHTML="<span>no commands</span>"},e.prototype.getCommand=function(e){return e.parentElement===this._domNode?this._commands.get(e.id):void 0},e.prototype.getId=function(){return this._id},e.prototype.getDomNode=function(){return this._domNode},e.prototype.updatePosition=function(e){var t=this._editor.getModel().getLineFirstNonWhitespaceColumn(e);this._widgetPosition={position:{lineNumber:e,column:t},preference:[1]}},e.prototype.getPosition=function(){return this._widgetPosition||null},e._idPool=0,e}(),KA=function(){function e(){this._removeDecorations=[],this._addDecorations=[],this._addDecorationsCallbacks=[]}return e.prototype.addDecoration=function(e,t){this._addDecorations.push(e),this._addDecorationsCallbacks.push(t)},e.prototype.removeDecoration=function(e){this._removeDecorations.push(e)},e.prototype.commit=function(e){for(var t=e.deltaDecorations(this._removeDecorations,this._addDecorations),n=0,i=t.length;n<i;n++)this._addDecorationsCallbacks[n](t[n])},e}(),qA=function(){function e(e,t,n,i,o,r){var s,a=this;this._isDisposed=!1,this._editor=t,this._className=n,this._data=e,this._decorationIds=[];var u=[];this._data.forEach((function(e,t){e.symbol.command&&u.push(e.symbol),i.addDecoration({range:e.symbol.range,options:kv.EMPTY},(function(e){return a._decorationIds[t]=e})),s=s?wn.plusRange(s,e.symbol.range):wn.lift(e.symbol.range)})),this._viewZone=new jA(s.startLineNumber-1,r),this._viewZoneId=o.addZone(this._viewZone),u.length>0&&(this._createContentWidgetIfNecessary(),this._contentWidget.withCommands(u,!1))}return e.prototype._createContentWidgetIfNecessary=function(){this._contentWidget||(this._contentWidget=new UA(this._editor,this._className,this._viewZone.afterLineNumber+1),this._editor.addContentWidget(this._contentWidget))},e.prototype.dispose=function(e,t){this._decorationIds.forEach(e.removeDecoration,e),this._decorationIds=[],t&&t.removeZone(this._viewZoneId),this._contentWidget&&(this._editor.removeContentWidget(this._contentWidget),this._contentWidget=void 0),this._isDisposed=!0},e.prototype.isDisposed=function(){return this._isDisposed},e.prototype.isValid=function(){var e=this;return this._decorationIds.some((function(t,n){var i=e._editor.getModel().getDecorationRange(t),o=e._data[n].symbol;return!(!i||wn.isEmpty(o.range)!==i.isEmpty())}))},e.prototype.updateCodeLensSymbols=function(e,t){var n=this;this._decorationIds.forEach(t.removeDecoration,t),this._decorationIds=[],this._data=e,this._data.forEach((function(e,i){t.addDecoration({range:e.symbol.range,options:kv.EMPTY},(function(e){return n._decorationIds[i]=e}))}))},e.prototype.computeIfNecessary=function(e){if(!this._viewZone.domNode.hasAttribute("monaco-visible-view-zone"))return null;for(var t=0;t<this._decorationIds.length;t++){var n=e.getDecorationRange(this._decorationIds[t]);n&&(this._data[t].symbol.range=n)}return this._data},e.prototype.updateCommands=function(e){this._createContentWidgetIfNecessary(),this._contentWidget.withCommands(e,!0);for(var t=0;t<this._data.length;t++){var n=e[t];if(n){var i=this._data[t].symbol;i.command=n.command||i.command}}},e.prototype.getCommand=function(e){var t;return null===(t=this._contentWidget)||void 0===t?void 0:t.getCommand(e)},e.prototype.getLineNumber=function(){var e=this._editor.getModel().getDecorationRange(this._decorationIds[0]);return e?e.startLineNumber:-1},e.prototype.update=function(e){if(this.isValid()){var t=this._editor.getModel().getDecorationRange(this._decorationIds[0]);t&&(this._viewZone.afterLineNumber=t.startLineNumber-1,e.layoutZone(this._viewZoneId),this._contentWidget&&(this._contentWidget.updatePosition(t.startLineNumber),this._editor.layoutContentWidget(this._contentWidget)))}},e}();yg((function(e,t){var n=e.getColor($b);n&&(t.addRule(".monaco-editor .codelens-decoration { color: "+n+"; }"),t.addRule(".monaco-editor .codelens-decoration .codicon { color: "+n+"; }"));var i=e.getColor(Wy);i&&(t.addRule(".monaco-editor .codelens-decoration > a:hover { color: "+i+" !important; }"),t.addRule(".monaco-editor .codelens-decoration > a:hover .codicon { color: "+i+" !important; }"))}));var GA=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},ZA=function(e,t){return function(n,i){t(n,i,e)}},YA=Mn("ICodeLensCache"),XA=function(e,t){this.lineCount=e,this.data=t},$A=function(){function e(e){var t=this;this._fakeProvider=new(function(){function e(){}return e.prototype.provideCodeLenses=function(){throw new Error("not supported")},e}()),this._cache=new aa(20,.75);_i((function(){return e.remove("codelens/cache",1)}));var n="codelens/cache2",i=e.get(n,1,"{}");this._deserialize(i),Te(e.onWillSaveState)((function(i){i.reason===TM.SHUTDOWN&&e.store(n,t._serialize(),1)}))}return e.prototype.put=function(e,t){var n=t.lenses.map((function(e){var t;return{range:e.symbol.range,command:e.symbol.command&&{id:"",title:null===(t=e.symbol.command)||void 0===t?void 0:t.title}}})),i=new FA;i.add({lenses:n,dispose:function(){}},this._fakeProvider);var o=new XA(e.getLineCount(),i);this._cache.set(e.uri.toString(),o)},e.prototype.get=function(e){var t=this._cache.get(e.uri.toString());return t&&t.lineCount===e.getLineCount()?t.data:void 0},e.prototype.delete=function(e){this._cache.delete(e.uri.toString())},e.prototype._serialize=function(){var e=Object.create(null);return this._cache.forEach((function(t,n){for(var i=new Set,o=0,r=t.data.lenses;o<r.length;o++){var s=r[o];i.add(s.symbol.range.startLineNumber)}e[n]={lineCount:t.lineCount,lines:Js(i)}})),JSON.stringify(e)},e.prototype._deserialize=function(e){try{var t=JSON.parse(e);for(var n in t){for(var i=t[n],o=[],r=0,s=i.lines;r<s.length;r++){var a=s[r];o.push({range:new wn(a,1,a,11)})}var u=new FA;u.add({lenses:o,dispose:function(){}},this._fakeProvider),this._cache.set(n,new XA(i.lineCount,u))}}catch(e){}},e=GA([ZA(0,FM)],e)}();Qx(YA,$A);var QA=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},JA=function(e,t){return function(n,i){t(n,i,e)}},eF=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},tF=function(){function e(e,t,n,i){var o=this;this._editor=e,this._commandService=t,this._notificationService=n,this._codeLensCache=i,this._globalToDispose=new Be,this._localToDispose=new Be,this._lenses=[],this._oldCodeLensModels=new Be,this._modelChangeCounter=0,this._isEnabled=this._editor.getOption(11),this._globalToDispose.add(this._editor.onDidChangeModel((function(){return o._onModelChange()}))),this._globalToDispose.add(this._editor.onDidChangeModelLanguage((function(){return o._onModelChange()}))),this._globalToDispose.add(this._editor.onDidChangeConfiguration((function(){var e=o._isEnabled;o._isEnabled=o._editor.getOption(11),e!==o._isEnabled&&o._onModelChange()}))),this._globalToDispose.add(Wu.onDidChange(this._onModelChange,this)),this._globalToDispose.add(this._editor.onDidChangeConfiguration((function(e){e.hasChanged(34)&&o._updateLensStyle()}))),this._onModelChange(),this._styleClassName=Tl(this._editor.getId()).toString(16),this._styleElement=zo(Bo(this._editor.getContainerDomNode())?this._editor.getContainerDomNode():void 0),this._updateLensStyle()}return e.prototype.dispose=function(){this._localDispose(),this._globalToDispose.dispose(),this._oldCodeLensModels.dispose(),Ae(this._currentCodeLensModel)},e.prototype._updateLensStyle=function(){var e=this._editor.getOptions(),t=e.get(34),n=e.get(49),i=Math.round(1.1*n),o=Math.round(.9*t.fontSize),r="\n\t\t.monaco-editor .codelens-decoration."+this._styleClassName+" { height: "+i+"px; line-height: "+n+"px; font-size: "+o+"px; padding-right: "+Math.round(.45*t.fontSize)+"px;}\n\t\t.monaco-editor .codelens-decoration."+this._styleClassName+" > a > .codicon { line-height: "+n+"px; font-size: "+o+"px; }\n\t\t";this._styleElement.innerHTML=r},e.prototype._localDispose=function(){this._currentFindCodeLensSymbolsPromise&&(this._currentFindCodeLensSymbolsPromise.cancel(),this._currentFindCodeLensSymbolsPromise=void 0,this._modelChangeCounter++),this._currentResolveCodeLensSymbolsPromise&&(this._currentResolveCodeLensSymbolsPromise.cancel(),this._currentResolveCodeLensSymbolsPromise=void 0),this._localToDispose.clear(),this._oldCodeLensModels.clear(),Ae(this._currentCodeLensModel)},e.prototype._onModelChange=function(){var e=this;this._localDispose();var t=this._editor.getModel();if(t&&this._isEnabled){var n=this._codeLensCache.get(t);if(n&&this._renderCodeLensSymbols(n),Wu.has(t)){for(var i=0,o=Wu.all(t);i<o.length;i++){var r=o[i];if("function"==typeof r.onDidChange){var s=r.onDidChange((function(){return u.schedule()}));this._localToDispose.add(s)}}var a=this._detectVisibleLenses=new wi((function(){return e._onViewportChanged()}),250),u=new wi((function(){var n=++e._modelChangeCounter;e._currentFindCodeLensSymbolsPromise&&e._currentFindCodeLensSymbolsPromise.cancel(),e._currentFindCodeLensSymbolsPromise=hi((function(e){return WA(t,e)})),e._currentFindCodeLensSymbolsPromise.then((function(i){n===e._modelChangeCounter&&(e._currentCodeLensModel&&e._oldCodeLensModels.add(e._currentCodeLensModel),e._currentCodeLensModel=i,e._codeLensCache.put(t,i),e._renderCodeLensSymbols(i),a.schedule())}),De)}),250);this._localToDispose.add(u),this._localToDispose.add(a),this._localToDispose.add(this._editor.onDidChangeModelContent((function(){e._editor.changeDecorations((function(t){e._editor.changeViewZones((function(n){var i=[],o=-1;e._lenses.forEach((function(e){e.isValid()&&o!==e.getLineNumber()?(e.update(n),o=e.getLineNumber()):i.push(e)}));var r=new KA;i.forEach((function(t){t.dispose(r,n),e._lenses.splice(e._lenses.indexOf(t),1)})),r.commit(t)}))})),a.schedule(),u.schedule()}))),this._localToDispose.add(this._editor.onDidScrollChange((function(t){t.scrollTopChanged&&e._lenses.length>0&&a.schedule()}))),this._localToDispose.add(this._editor.onDidLayoutChange((function(){a.schedule()}))),this._localToDispose.add(We((function(){if(e._editor.getModel()){var t=aD.capture(e._editor);e._editor.changeDecorations((function(t){e._editor.changeViewZones((function(n){e._disposeAllLenses(t,n)}))})),t.restore(e._editor)}else e._disposeAllLenses(void 0,void 0)}))),this._localToDispose.add(this._editor.onMouseUp((function(t){var n;if(9===t.target.type){var i=t.target.element;if("SPAN"===(null==i?void 0:i.tagName)&&(i=i.parentElement),"A"===(null==i?void 0:i.tagName))for(var o=0,r=e._lenses;o<r.length;o++){var s=r[o].getCommand(i);if(s){(n=e._commandService).executeCommand.apply(n,eF([s.id],s.arguments||[])).catch((function(t){return e._notificationService.error(t)}));break}}}}))),u.schedule()}else n&&this._localToDispose.add(mi((function(){var i=e._codeLensCache.get(t);n===i&&(e._codeLensCache.delete(t),e._onModelChange())}),3e4))}},e.prototype._disposeAllLenses=function(e,t){for(var n=new KA,i=0,o=this._lenses;i<o.length;i++){o[i].dispose(n,t)}e&&n.commit(e),this._lenses=[]},e.prototype._renderCodeLensSymbols=function(e){var t=this;if(this._editor.hasModel()){for(var n,i=this._editor.getModel().getLineCount(),o=[],r=0,s=e.lenses;r<s.length;r++){var a=s[r],u=a.symbol.range.startLineNumber;u<1||u>i||(n&&n[n.length-1].symbol.range.startLineNumber===u?n.push(a):(n=[a],o.push(n)))}var l=aD.capture(this._editor);this._editor.changeDecorations((function(e){t._editor.changeViewZones((function(n){for(var i=new KA,r=0,s=0;s<o.length&&r<t._lenses.length;){var a=o[s][0].symbol.range.startLineNumber,u=t._lenses[r].getLineNumber();u<a?(t._lenses[r].dispose(i,n),t._lenses.splice(r,1)):u===a?(t._lenses[r].updateCodeLensSymbols(o[s],i),s++,r++):(t._lenses.splice(r,0,new qA(o[s],t._editor,t._styleClassName,i,n,(function(){return t._detectVisibleLenses&&t._detectVisibleLenses.schedule()}))),r++,s++)}for(;r<t._lenses.length;)t._lenses[r].dispose(i,n),t._lenses.splice(r,1);for(;s<o.length;)t._lenses.push(new qA(o[s],t._editor,t._styleClassName,i,n,(function(){return t._detectVisibleLenses&&t._detectVisibleLenses.schedule()}))),s++;i.commit(e)}))})),l.restore(this._editor)}},e.prototype._onViewportChanged=function(){var e=this;this._currentResolveCodeLensSymbolsPromise&&(this._currentResolveCodeLensSymbolsPromise.cancel(),this._currentResolveCodeLensSymbolsPromise=void 0);var t=this._editor.getModel();if(t){var n=[],i=[];if(this._lenses.forEach((function(e){var o=e.computeIfNecessary(t);o&&(n.push(o),i.push(e))})),0!==n.length){var o=hi((function(e){var o=n.map((function(n,o){var r=new Array(n.length),s=n.map((function(n,i){return n.symbol.command||"function"!=typeof n.provider.resolveCodeLens?(r[i]=n.symbol,Promise.resolve(void 0)):Promise.resolve(n.provider.resolveCodeLens(t,n.symbol,e)).then((function(e){r[i]=e}),Ne)}));return Promise.all(s).then((function(){e.isCancellationRequested||i[o].isDisposed()||i[o].updateCommands(r)}))}));return Promise.all(o)}));this._currentResolveCodeLensSymbolsPromise=o,this._currentResolveCodeLensSymbolsPromise.then((function(){e._currentCodeLensModel&&e._codeLensCache.put(t,e._currentCodeLensModel),e._oldCodeLensModels.clear(),o===e._currentResolveCodeLensSymbolsPromise&&(e._currentResolveCodeLensSymbolsPromise=void 0)}),(function(t){De(t),o===e._currentResolveCodeLensSymbolsPromise&&(e._currentResolveCodeLensSymbolsPromise=void 0)}))}}},e.ID="css.editor.codeLens",e=QA([JA(1,la),JA(2,ap),JA(3,YA)],e)}();function nF(e,t,n,i){return Promise.resolve(n.provideColorPresentations(e,t,i))}Pf(tF.ID,tF),Ef("_executeDocumentColorProvider",(function(e,t){var n=t.resource;if(!(n instanceof Et))throw Oe();var i=e.get(du).getModel(n);if(!i)throw Oe();var o=[],r=Uu.ordered(i).reverse().map((function(e){return Promise.resolve(e.provideDocumentColors(i,et.None)).then((function(e){if(Array.isArray(e))for(var t=0,n=e;t<n.length;t++){var i=n[t];o.push({range:i.range,color:[i.color.red,i.color.green,i.color.blue,i.color.alpha]})}}))}));return Promise.all(r).then((function(){return o}))})),Ef("_executeColorPresentationProvider",(function(e,t){var n=t.resource,i=t.color,o=t.range;if(!(n instanceof Et&&Array.isArray(i)&&4===i.length&&wn.isIRange(o)))throw Oe();var r=i[0],s=i[1],a=i[2],u=i[3],l=e.get(du).getModel(n);if(!l)throw Oe();var c={range:o,color:{red:r,green:s,blue:a,alpha:u}},d=[],h=Uu.ordered(l).reverse().map((function(e){return Promise.resolve(e.provideColorPresentations(l,c,et.None)).then((function(e){Array.isArray(e)&&d.push.apply(d,e)}))}));return Promise.all(h).then((function(){return d}))}));var iF=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),oF=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},rF=function(e,t){return function(n,i){t(n,i,e)}},sF=function(e){function t(t,n,i){var o=e.call(this)||this;return o._editor=t,o._codeEditorService=n,o._configurationService=i,o._localToDispose=o._register(new Be),o._decorationsIds=[],o._colorDatas=new Map,o._colorDecoratorIds=[],o._decorationsTypes=new Set,o._register(t.onDidChangeModel((function(e){o._isEnabled=o.isEnabled(),o.onModelChanged()}))),o._register(t.onDidChangeModelLanguage((function(e){return o.onModelChanged()}))),o._register(Uu.onDidChange((function(e){return o.onModelChanged()}))),o._register(t.onDidChangeConfiguration((function(e){var t=o._isEnabled;o._isEnabled=o.isEnabled(),t!==o._isEnabled&&(o._isEnabled?o.onModelChanged():o.removeAllDecorations())}))),o._timeoutTimer=null,o._computePromise=null,o._isEnabled=o.isEnabled(),o.onModelChanged(),o}return iF(t,e),t.prototype.isEnabled=function(){var e=this._editor.getModel();if(!e)return!1;var t=e.getLanguageIdentifier(),n=this._configurationService.getValue(t.language);if(n){var i=n.colorDecorators;if(i&&void 0!==i.enable&&!i.enable)return i.enable}return this._editor.getOption(12)},t.get=function(e){return e.getContribution(this.ID)},t.prototype.dispose=function(){this.stop(),this.removeAllDecorations(),e.prototype.dispose.call(this)},t.prototype.onModelChanged=function(){var e=this;if(this.stop(),this._isEnabled){var n=this._editor.getModel();n&&Uu.has(n)&&(this._localToDispose.add(this._editor.onDidChangeModelContent((function(n){e._timeoutTimer||(e._timeoutTimer=new yi,e._timeoutTimer.cancelAndSet((function(){e._timeoutTimer=null,e.beginCompute()}),t.RECOMPUTE_TIME))}))),this.beginCompute())}},t.prototype.beginCompute=function(){var e=this;this._computePromise=hi((function(t){var n=e._editor.getModel();return n?function(e,t){var n=[],i=Uu.ordered(e).reverse().map((function(i){return Promise.resolve(i.provideDocumentColors(e,t)).then((function(e){if(Array.isArray(e))for(var t=0,o=e;t<o.length;t++){var r=o[t];n.push({colorInfo:r,provider:i})}}))}));return Promise.all(i).then((function(){return n}))}(n,t):Promise.resolve([])})),this._computePromise.then((function(t){e.updateDecorations(t),e.updateColorDecorators(t),e._computePromise=null}),De)},t.prototype.stop=function(){this._timeoutTimer&&(this._timeoutTimer.cancel(),this._timeoutTimer=null),this._computePromise&&(this._computePromise.cancel(),this._computePromise=null),this._localToDispose.clear()},t.prototype.updateDecorations=function(e){var t=this,n=e.map((function(e){return{range:{startLineNumber:e.colorInfo.range.startLineNumber,startColumn:e.colorInfo.range.startColumn,endLineNumber:e.colorInfo.range.endLineNumber,endColumn:e.colorInfo.range.endColumn},options:kv.EMPTY}}));this._decorationsIds=this._editor.deltaDecorations(this._decorationsIds,n),this._colorDatas=new Map,this._decorationsIds.forEach((function(n,i){return t._colorDatas.set(n,e[i])}))},t.prototype.updateColorDecorators=function(e){for(var t=this,n=[],i={},o=0;o<e.length&&n.length<500;o++){var r=e[o].colorInfo.color,s=r.red,a=r.green,u=r.blue,l=r.alpha,c=new pv(Math.round(255*s),Math.round(255*a),Math.round(255*u),l),d=Tl(c).toString(16),h="rgba("+c.r+", "+c.g+", "+c.b+", "+c.a+")",p="colorBox-"+d;this._decorationsTypes.has(p)||i[p]||this._codeEditorService.registerDecorationType(p,{before:{contentText:" ",border:"solid 0.1em #000",margin:"0.1em 0.2em 0 0.2em",width:"0.8em",height:"0.8em",backgroundColor:h},dark:{before:{border:"solid 0.1em #eee"}}},void 0,this._editor),i[p]=!0,n.push({range:{startLineNumber:e[o].colorInfo.range.startLineNumber,startColumn:e[o].colorInfo.range.startColumn,endLineNumber:e[o].colorInfo.range.endLineNumber,endColumn:e[o].colorInfo.range.endColumn},options:this._codeEditorService.resolveDecorationOptions(p,!0)})}this._decorationsTypes.forEach((function(e){i[e]||t._codeEditorService.removeDecorationType(e)})),this._colorDecoratorIds=this._editor.deltaDecorations(this._colorDecoratorIds,n)},t.prototype.removeAllDecorations=function(){var e=this;this._decorationsIds=this._editor.deltaDecorations(this._decorationsIds,[]),this._colorDecoratorIds=this._editor.deltaDecorations(this._colorDecoratorIds,[]),this._decorationsTypes.forEach((function(t){e._codeEditorService.removeDecorationType(t)}))},t.prototype.getColorData=function(e){var t=this,n=this._editor.getModel();if(!n)return null;var i=n.getDecorationsInRange(wn.fromPositions(e,e)).filter((function(e){return t._colorDatas.has(e.id)}));return 0===i.length?null:this._colorDatas.get(i[0].id)},t.ID="editor.contrib.colorDetector",t.RECOMPUTE_TIME=1e3,t=oF([rF(1,Pn),rF(2,wh)],t)}(He);Pf(sF.ID,sF);var aF=function(){function e(e,t){this._selection=e,this._insertSpace=t,this._usedEndToken=null}return e._haystackHasNeedleAtOffset=function(e,t,n){if(n<0)return!1;var i=t.length;if(n+i>e.length)return!1;for(var o=0;o<i;o++){var r=e.charCodeAt(n+o),s=t.charCodeAt(o);if(r!==s&&!(r>=65&&r<=90&&r+32===s||s>=65&&s<=90&&s+32===r))return!1}return!0},e.prototype._createOperationsForBlockComment=function(t,n,i,o,r,s){var a,u=t.startLineNumber,l=t.startColumn,c=t.endLineNumber,d=t.endColumn,h=r.getLineContent(u),p=r.getLineContent(c),f=h.lastIndexOf(n,l-1+n.length),g=p.indexOf(i,d-1-i.length);if(-1!==f&&-1!==g)if(u===c){h.substring(f+n.length,g).indexOf(i)>=0&&(f=-1,g=-1)}else{var m=h.substring(f+n.length),v=p.substring(0,g);(m.indexOf(i)>=0||v.indexOf(i)>=0)&&(f=-1,g=-1)}-1!==f&&-1!==g?(o&&f+n.length<h.length&&32===h.charCodeAt(f+n.length)&&(n+=" "),o&&g>0&&32===p.charCodeAt(g-1)&&(i=" "+i,g-=1),a=e._createRemoveBlockCommentOperations(new wn(u,f+n.length+1,c,g+1),n,i)):(a=e._createAddBlockCommentOperations(t,n,i,this._insertSpace),this._usedEndToken=1===a.length?i:null);for(var _=0,y=a;_<y.length;_++){var b=y[_];s.addTrackedEditOperation(b.range,b.text)}},e._createRemoveBlockCommentOperations=function(e,t,n){var i=[];return wn.isEmpty(e)?i.push(bh.delete(new wn(e.startLineNumber,e.startColumn-t.length,e.endLineNumber,e.endColumn+n.length))):(i.push(bh.delete(new wn(e.startLineNumber,e.startColumn-t.length,e.startLineNumber,e.startColumn))),i.push(bh.delete(new wn(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn+n.length)))),i},e._createAddBlockCommentOperations=function(e,t,n,i){var o=[];return wn.isEmpty(e)?o.push(bh.replace(new wn(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),t+" "+n)):(o.push(bh.insert(new bn(e.startLineNumber,e.startColumn),t+(i?" ":""))),o.push(bh.insert(new bn(e.endLineNumber,e.endColumn),(i?" ":"")+n))),o},e.prototype.getEditOperations=function(e,t){var n=this._selection.startLineNumber,i=this._selection.startColumn;e.tokenizeIfCheap(n);var o=e.getLanguageIdAtPosition(n,i),r=Ol.getComments(o);r&&r.blockCommentStartToken&&r.blockCommentEndToken&&this._createOperationsForBlockComment(this._selection,r.blockCommentStartToken,r.blockCommentEndToken,this._insertSpace,e,t)},e.prototype.computeCursorState=function(e,t){var n=t.getInverseEditOperations();if(2===n.length){var i=n[0],o=n[1];return new Sn(i.range.endLineNumber,i.range.endColumn,o.range.startLineNumber,o.range.startColumn)}var r=n[0].range,s=this._usedEndToken?-this._usedEndToken.length-1:0;return new Sn(r.endLineNumber,r.endColumn+s,r.endLineNumber,r.endColumn+s)},e}(),uF=function(){function e(e,t,n,i){this._selection=e,this._tabSize=t,this._type=n,this._insertSpace=i,this._selectionId=null,this._deltaColumn=0,this._moveEndPositionDown=!1}return e._gatherPreflightCommentStrings=function(e,t,n){e.tokenizeIfCheap(t);var i=e.getLanguageIdAtPosition(t,1),o=Ol.getComments(i),r=o?o.lineCommentToken:null;if(!r)return null;for(var s=[],a=0,u=n-t+1;a<u;a++)s[a]={ignore:!1,commentStr:r,commentStrOffset:0,commentStrLength:r.length};return s},e._analyzeLines=function(e,t,n,i,o){var r,s=!0;r=0===e||1!==e;for(var a=0,u=i.length;a<u;a++){var l=i[a],c=o+a,d=n.getLineContent(c),h=wr(d);if(-1!==h){if(s=!1,l.ignore=!1,l.commentStrOffset=h,r&&!aF._haystackHasNeedleAtOffset(d,l.commentStr,h)&&(0===e?r=!1:1===e||(l.ignore=!0)),r&&t){var p=h+l.commentStrLength;p<d.length&&32===d.charCodeAt(p)&&(l.commentStrLength+=1)}}else l.ignore=!0,l.commentStrOffset=d.length}if(0===e&&s){r=!1;for(a=0,u=i.length;a<u;a++)i[a].ignore=!1}return{supported:!0,shouldRemoveComments:r,lines:i}},e._gatherPreflightData=function(t,n,i,o,r){var s=e._gatherPreflightCommentStrings(i,o,r);return null===s?{supported:!1}:e._analyzeLines(t,n,i,s,o)},e.prototype._executeLineComments=function(t,n,i,o){var r;i.shouldRemoveComments?r=e._createRemoveLineCommentsOperations(i.lines,o.startLineNumber):(e._normalizeInsertionPoint(t,i.lines,o.startLineNumber,this._tabSize),r=this._createAddLineCommentsOperations(i.lines,o.startLineNumber));for(var s=new bn(o.positionLineNumber,o.positionColumn),a=0,u=r.length;a<u;a++){if(n.addEditOperation(r[a].range,r[a].text),r[a].range.isEmpty()&&r[a].range.getStartPosition().equals(s))t.getLineContent(s.lineNumber).length+1===s.column&&(this._deltaColumn=(r[a].text||"").length)}this._selectionId=n.trackSelection(o)},e.prototype._attemptRemoveBlockComment=function(e,t,n,i){var o=t.startLineNumber,r=t.endLineNumber,s=i.length+Math.max(e.getLineFirstNonWhitespaceColumn(t.startLineNumber),t.startColumn),a=e.getLineContent(o).lastIndexOf(n,s-1),u=e.getLineContent(r).indexOf(i,t.endColumn-1-n.length);return-1!==a&&-1===u&&(u=e.getLineContent(o).indexOf(i,a+n.length),r=o),-1===a&&-1!==u&&(a=e.getLineContent(r).lastIndexOf(n,u),o=r),!t.isEmpty()||-1!==a&&-1!==u||-1!==(a=e.getLineContent(o).indexOf(n))&&(u=e.getLineContent(o).indexOf(i,a+n.length)),-1!==a&&32===e.getLineContent(o).charCodeAt(a+n.length)&&(n+=" "),-1!==u&&32===e.getLineContent(r).charCodeAt(u-1)&&(i=" "+i,u-=1),-1!==a&&-1!==u?aF._createRemoveBlockCommentOperations(new wn(o,a+n.length+1,r,u+1),n,i):null},e.prototype._executeBlockComment=function(e,t,n){e.tokenizeIfCheap(n.startLineNumber);var i=e.getLanguageIdAtPosition(n.startLineNumber,1),o=Ol.getComments(i);if(o&&o.blockCommentStartToken&&o.blockCommentEndToken){var r=o.blockCommentStartToken,s=o.blockCommentEndToken,a=this._attemptRemoveBlockComment(e,n,r,s);if(!a){if(n.isEmpty()){var u=e.getLineContent(n.startLineNumber),l=wr(u);-1===l&&(l=u.length),a=aF._createAddBlockCommentOperations(new wn(n.startLineNumber,l+1,n.startLineNumber,u.length+1),r,s,this._insertSpace)}else a=aF._createAddBlockCommentOperations(new wn(n.startLineNumber,e.getLineFirstNonWhitespaceColumn(n.startLineNumber),n.endLineNumber,e.getLineMaxColumn(n.endLineNumber)),r,s,this._insertSpace);1===a.length&&(this._deltaColumn=r.length+1)}this._selectionId=t.trackSelection(n);for(var c=0,d=a;c<d.length;c++){var h=d[c];t.addEditOperation(h.range,h.text)}}},e.prototype.getEditOperations=function(t,n){var i=this._selection;this._moveEndPositionDown=!1,i.startLineNumber<i.endLineNumber&&1===i.endColumn&&(this._moveEndPositionDown=!0,i=i.setEndPosition(i.endLineNumber-1,t.getLineMaxColumn(i.endLineNumber-1)));var o=e._gatherPreflightData(this._type,this._insertSpace,t,i.startLineNumber,i.endLineNumber);return o.supported?this._executeLineComments(t,n,o,i):this._executeBlockComment(t,n,i)},e.prototype.computeCursorState=function(e,t){var n=t.getTrackedSelection(this._selectionId);return this._moveEndPositionDown&&(n=n.setEndPosition(n.endLineNumber+1,1)),new Sn(n.selectionStartLineNumber,n.selectionStartColumn+this._deltaColumn,n.positionLineNumber,n.positionColumn+this._deltaColumn)},e._createRemoveLineCommentsOperations=function(e,t){for(var n=[],i=0,o=e.length;i<o;i++){var r=e[i];r.ignore||n.push(bh.delete(new wn(t+i,r.commentStrOffset+1,t+i,r.commentStrOffset+r.commentStrLength+1)))}return n},e.prototype._createAddLineCommentsOperations=function(e,t){for(var n=[],i=this._insertSpace?" ":"",o=0,r=e.length;o<r;o++){var s=e[o];s.ignore||n.push(bh.insert(new bn(t+o,s.commentStrOffset+1),s.commentStr+i))}return n},e.nextVisibleColumn=function(e,t,n,i){return n?e+(t-e%t):e+i},e._normalizeInsertionPoint=function(t,n,i,o){for(var r,s,a=1073741824,u=0,l=n.length;u<l;u++)if(!n[u].ignore){for(var c=t.getLineContent(i+u),d=0,h=0,p=n[u].commentStrOffset;d<a&&h<p;h++)d=e.nextVisibleColumn(d,o,9===c.charCodeAt(h),1);d<a&&(a=d)}a=Math.floor(a/o)*o;for(u=0,l=n.length;u<l;u++)if(!n[u].ignore){c=t.getLineContent(i+u),d=0;for(r=0,s=n[u].commentStrOffset;d<a&&r<s;r++)d=e.nextVisibleColumn(d,o,9===c.charCodeAt(r),1);n[u].commentStrOffset=d>a?r-1:r}},e}(),lF=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),cF=function(e){function t(t,n){var i=e.call(this,n)||this;return i._type=t,i}return lF(t,e),t.prototype.run=function(e,t){if(t.hasModel()){for(var n=t.getModel(),i=[],o=t.getSelections(),r=n.getOptions(),s=t.getOption(13),a=0,u=o;a<u.length;a++){var l=u[a];i.push(new uF(l,r.tabSize,this._type,s.insertSpace))}t.pushUndoStop(),t.executeCommands(this.id,i),t.pushUndoStop()}},t}(kf),dF=function(e){function t(){return e.call(this,0,{id:"editor.action.commentLine",label:r("comment.line","Toggle Line Comment"),alias:"Toggle Line Comment",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:2133,weight:100},menuOpts:{menuId:17,group:"5_insert",title:r({key:"miToggleLineComment",comment:["&& denotes a mnemonic"]},"&&Toggle Line Comment"),order:1}})||this}return lF(t,e),t}(cF),hF=function(e){function t(){return e.call(this,1,{id:"editor.action.addCommentLine",label:r("comment.line.add","Add Line Comment"),alias:"Add Line Comment",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2081),weight:100}})||this}return lF(t,e),t}(cF),pF=function(e){function t(){return e.call(this,2,{id:"editor.action.removeCommentLine",label:r("comment.line.remove","Remove Line Comment"),alias:"Remove Line Comment",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2099),weight:100}})||this}return lF(t,e),t}(cF),fF=function(e){function t(){return e.call(this,{id:"editor.action.blockComment",label:r("comment.block","Toggle Block Comment"),alias:"Toggle Block Comment",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:1567,linux:{primary:3103},weight:100},menuOpts:{menuId:17,group:"5_insert",title:r({key:"miToggleBlockComment",comment:["&& denotes a mnemonic"]},"Toggle &&Block Comment"),order:2}})||this}return lF(t,e),t.prototype.run=function(e,t){if(t.hasModel()){for(var n=t.getOption(13),i=[],o=0,r=t.getSelections();o<r.length;o++){var s=r[o];i.push(new aF(s,n.insertSpace))}t.pushUndoStop(),t.executeCommands(this.id,i),t.pushUndoStop()}},t}(kf);Tf(dF),Tf(hF),Tf(pF),Tf(fF);var gF=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),mF=function(e){function t(t,n){var i=e.call(this,t,n,"contextsubmenu")||this;return i.entries=n,i}return gF(t,e),t}(Bk),vF=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),_F=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},yF=function(e,t){return function(n,i){t(n,i,e)}},bF=function(){function e(e,t,n,i,o,r){var s=this;this._contextMenuService=t,this._contextViewService=n,this._contextKeyService=i,this._keybindingService=o,this._menuService=r,this._toDispose=new Be,this._contextMenuIsBeingShownCount=0,this._editor=e,this._toDispose.add(this._editor.onContextMenu((function(e){return s._onContextMenu(e)}))),this._toDispose.add(this._editor.onMouseWheel((function(e){s._contextMenuIsBeingShownCount>0&&s._contextViewService.hideContextView()}))),this._toDispose.add(this._editor.onKeyDown((function(e){58===e.keyCode&&(e.preventDefault(),e.stopPropagation(),s.showContextMenu())})))}return e.get=function(t){return t.getContribution(e.ID)},e.prototype._onContextMenu=function(e){if(this._editor.hasModel()){if(!this._editor.getOption(14))return this._editor.focus(),void(e.target.position&&!this._editor.getSelection().containsPosition(e.target.position)&&this._editor.setPosition(e.target.position));if(12!==e.target.type&&(e.event.preventDefault(),6===e.target.type||7===e.target.type||1===e.target.type)){if(this._editor.focus(),e.target.position){for(var t=!1,n=0,i=this._editor.getSelections();n<i.length;n++){if(i[n].containsPosition(e.target.position)){t=!0;break}}t||this._editor.setPosition(e.target.position)}var o=null;1!==e.target.type&&(o={x:e.event.posx-1,width:2,y:e.event.posy-1,height:2}),this.showContextMenu(o)}}},e.prototype.showContextMenu=function(e){if(this._editor.getOption(14)&&this._editor.hasModel())if(this._contextMenuService){var t=this._getMenuActions(this._editor.getModel(),7);t.length>0&&this._doShowContextMenu(t,e)}else this._editor.focus()},e.prototype._getMenuActions=function(e,t){var n=[],i=this._menuService.createMenu(t,this._contextKeyService),o=i.getActions({arg:e.uri});i.dispose();for(var r=0,s=o;r<s.length;r++){for(var a=0,u=0,l=s[r][1];u<l.length;u++){var c=l[u];if(c instanceof Cf){var d=this._getMenuActions(e,c.item.submenu);d.length>0&&(n.push(new mF(c.label,d)),a++)}else n.push(c),a++}a&&n.push(new fD)}return n.length&&n.pop(),n},e.prototype._doShowContextMenu=function(e,t){var n=this;if(void 0===t&&(t=null),this._editor.hasModel()){var i=this._editor.getOption(44);if(this._editor.updateOptions({hover:{enabled:!1}}),!t){this._editor.revealPosition(this._editor.getPosition(),1),this._editor.render();var o=this._editor.getScrolledVisiblePosition(this._editor.getPosition()),r=Oo(this._editor.getDomNode()),s=r.left+o.left,a=r.top+o.top+o.height;t={x:s,y:a}}this._contextMenuIsBeingShownCount++,this._contextMenuService.showContextMenu({getAnchor:function(){return t},getActions:function(){return e},getActionViewItem:function(e){var t=n._keybindingFor(e);if(t)return new gD(e,e,{label:!0,keybinding:t.getLabel(),isMenu:!0});var i=e;return"function"==typeof i.getActionViewItem?i.getActionViewItem():new gD(e,e,{icon:!0,label:!0,isMenu:!0})},getKeyBinding:function(e){return n._keybindingFor(e)},onHide:function(e){n._contextMenuIsBeingShownCount--,n._editor.focus(),n._editor.updateOptions({hover:i})}})}},e.prototype._keybindingFor=function(e){return this._keybindingService.lookupKeybinding(e.id)},e.prototype.dispose=function(){this._contextMenuIsBeingShownCount>0&&this._contextViewService.hideContextView(),this._toDispose.dispose()},e.ID="editor.contrib.contextmenu",e=_F([yF(1,DD),yF(2,xD),yF(3,qh),yF(4,XD),yF(5,yf)],e)}(),wF=function(e){function t(){return e.call(this,{id:"editor.action.showContextMenu",label:r("action.showContextMenu.label","Show Editor Context Menu"),alias:"Show Editor Context Menu",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:1092,weight:100}})||this}return vF(t,e),t.prototype.run=function(e,t){bF.get(t).showContextMenu()},t}(kf);Pf(bF.ID,bF),Tf(wF);var CF=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),SF=function(){function e(e){this.selections=e}return e.prototype.equals=function(e){var t=this.selections.length;if(t!==e.selections.length)return!1;for(var n=0;n<t;n++)if(!this.selections[n].equalsSelection(e.selections[n]))return!1;return!0},e}(),LF=function(e,t,n){this.cursorState=e,this.scrollTop=t,this.scrollLeft=n},xF=function(e){function t(t){var n=e.call(this)||this;return n._editor=t,n._isCursorUndoRedo=!1,n._undoStack=[],n._redoStack=[],n._register(t.onDidChangeModel((function(e){n._undoStack=[],n._redoStack=[]}))),n._register(t.onDidChangeModelContent((function(e){n._undoStack=[],n._redoStack=[]}))),n._register(t.onDidChangeCursorSelection((function(e){if(!n._isCursorUndoRedo&&e.oldSelections&&e.oldModelVersionId===e.modelVersionId){var i=new SF(e.oldSelections);n._undoStack.length>0&&n._undoStack[n._undoStack.length-1].cursorState.equals(i)||(n._undoStack.push(new LF(i,t.getScrollTop(),t.getScrollLeft())),n._redoStack=[],n._undoStack.length>50&&n._undoStack.shift())}}))),n}return CF(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.cursorUndo=function(){this._editor.hasModel()&&0!==this._undoStack.length&&(this._redoStack.push(new LF(new SF(this._editor.getSelections()),this._editor.getScrollTop(),this._editor.getScrollLeft())),this._applyState(this._undoStack.pop()))},t.prototype.cursorRedo=function(){this._editor.hasModel()&&0!==this._redoStack.length&&(this._undoStack.push(new LF(new SF(this._editor.getSelections()),this._editor.getScrollTop(),this._editor.getScrollLeft())),this._applyState(this._redoStack.pop()))},t.prototype._applyState=function(e){this._isCursorUndoRedo=!0,this._editor.setSelections(e.cursorState.selections),this._editor.setScrollPosition({scrollTop:e.scrollTop,scrollLeft:e.scrollLeft}),this._isCursorUndoRedo=!1},t.ID="editor.contrib.cursorUndoRedoController",t}(He),DF=function(e){function t(){return e.call(this,{id:"cursorUndo",label:r("cursor.undo","Cursor Undo"),alias:"Cursor Undo",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:2099,weight:100}})||this}return CF(t,e),t.prototype.run=function(e,t,n){xF.get(t).cursorUndo()},t}(kf),NF=function(e){function t(){return e.call(this,{id:"cursorRedo",label:r("cursor.redo","Cursor Redo"),alias:"Cursor Redo",precondition:void 0})||this}return CF(t,e),t.prototype.run=function(e,t,n){xF.get(t).cursorRedo()},t}(kf);Pf(xF.ID,xF),Tf(DF),Tf(NF);n(403);var kF=function(){function e(e,t,n){this.selection=e,this.targetPosition=t,this.copy=n,this.targetSelection=null}return e.prototype.getEditOperations=function(e,t){var n=e.getValueInRange(this.selection);this.copy||t.addEditOperation(this.selection,null),t.addEditOperation(new wn(this.targetPosition.lineNumber,this.targetPosition.column,this.targetPosition.lineNumber,this.targetPosition.column),n),!this.selection.containsPosition(this.targetPosition)||this.copy&&(this.selection.getEndPosition().equals(this.targetPosition)||this.selection.getStartPosition().equals(this.targetPosition))?this.copy?this.targetSelection=new Sn(this.targetPosition.lineNumber,this.targetPosition.column,this.selection.endLineNumber-this.selection.startLineNumber+this.targetPosition.lineNumber,this.selection.startLineNumber===this.selection.endLineNumber?this.targetPosition.column+this.selection.endColumn-this.selection.startColumn:this.selection.endColumn):this.targetPosition.lineNumber>this.selection.endLineNumber?this.targetSelection=new Sn(this.targetPosition.lineNumber-this.selection.endLineNumber+this.selection.startLineNumber,this.targetPosition.column,this.targetPosition.lineNumber,this.selection.startLineNumber===this.selection.endLineNumber?this.targetPosition.column+this.selection.endColumn-this.selection.startColumn:this.selection.endColumn):this.targetPosition.lineNumber<this.selection.endLineNumber?this.targetSelection=new Sn(this.targetPosition.lineNumber,this.targetPosition.column,this.targetPosition.lineNumber+this.selection.endLineNumber-this.selection.startLineNumber,this.selection.startLineNumber===this.selection.endLineNumber?this.targetPosition.column+this.selection.endColumn-this.selection.startColumn:this.selection.endColumn):this.selection.endColumn<=this.targetPosition.column?this.targetSelection=new Sn(this.targetPosition.lineNumber-this.selection.endLineNumber+this.selection.startLineNumber,(this.selection.startLineNumber,this.selection.endLineNumber,this.targetPosition.column-this.selection.endColumn+this.selection.startColumn),this.targetPosition.lineNumber,this.selection.startLineNumber===this.selection.endLineNumber?this.targetPosition.column:this.selection.endColumn):this.targetSelection=new Sn(this.targetPosition.lineNumber-this.selection.endLineNumber+this.selection.startLineNumber,this.targetPosition.column,this.targetPosition.lineNumber,this.targetPosition.column+this.selection.endColumn-this.selection.startColumn):this.targetSelection=this.selection},e.prototype.computeCursorState=function(e,t){return this.targetSelection},e}(),EF=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function IF(e){return _?e.altKey:e.ctrlKey}var OF=function(e){function t(t){var n=e.call(this)||this;return n._editor=t,n._register(n._editor.onMouseDown((function(e){return n._onEditorMouseDown(e)}))),n._register(n._editor.onMouseUp((function(e){return n._onEditorMouseUp(e)}))),n._register(n._editor.onMouseDrag((function(e){return n._onEditorMouseDrag(e)}))),n._register(n._editor.onMouseDrop((function(e){return n._onEditorMouseDrop(e)}))),n._register(n._editor.onKeyDown((function(e){return n.onEditorKeyDown(e)}))),n._register(n._editor.onKeyUp((function(e){return n.onEditorKeyUp(e)}))),n._register(n._editor.onDidBlurEditorWidget((function(){return n.onEditorBlur()}))),n._dndDecorationIds=[],n._mouseDown=!1,n._modifierPressed=!1,n._dragSelection=null,n}return EF(t,e),t.prototype.onEditorBlur=function(){this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1,this._modifierPressed=!1},t.prototype.onEditorKeyDown=function(e){this._editor.getOption(24)&&(IF(e)&&(this._modifierPressed=!0),this._mouseDown&&IF(e)&&this._editor.updateOptions({mouseStyle:"copy"}))},t.prototype.onEditorKeyUp=function(e){this._editor.getOption(24)&&(IF(e)&&(this._modifierPressed=!1),this._mouseDown&&e.keyCode===t.TRIGGER_KEY_VALUE&&this._editor.updateOptions({mouseStyle:"default"}))},t.prototype._onEditorMouseDown=function(e){this._mouseDown=!0},t.prototype._onEditorMouseUp=function(e){this._mouseDown=!1,this._editor.updateOptions({mouseStyle:"text"})},t.prototype._onEditorMouseDrag=function(e){var t=e.target;if(null===this._dragSelection){var n=(this._editor.getSelections()||[]).filter((function(e){return t.position&&e.containsPosition(t.position)}));if(1!==n.length)return;this._dragSelection=n[0]}IF(e.event)?this._editor.updateOptions({mouseStyle:"copy"}):this._editor.updateOptions({mouseStyle:"default"}),t.position&&(this._dragSelection.containsPosition(t.position)?this._removeDecoration():this.showAt(t.position))},t.prototype._onEditorMouseDrop=function(e){if(e.target&&(this._hitContent(e.target)||this._hitMargin(e.target))&&e.target.position){var n=new bn(e.target.position.lineNumber,e.target.position.column);if(null===this._dragSelection){var i=null;if(e.event.shiftKey){var o=this._editor.getSelection();if(o){var r=o.selectionStartLineNumber,s=o.selectionStartColumn;i=[new Sn(r,s,n.lineNumber,n.column)]}}else i=(this._editor.getSelections()||[]).map((function(e){return e.containsPosition(n)?new Sn(n.lineNumber,n.column,n.lineNumber,n.column):e}));this._editor.setSelections(i||[],"mouse")}else(!this._dragSelection.containsPosition(n)||(IF(e.event)||this._modifierPressed)&&(this._dragSelection.getEndPosition().equals(n)||this._dragSelection.getStartPosition().equals(n)))&&(this._editor.pushUndoStop(),this._editor.executeCommand(t.ID,new kF(this._dragSelection,n,IF(e.event)||this._modifierPressed)),this._editor.pushUndoStop())}this._editor.updateOptions({mouseStyle:"text"}),this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1},t.prototype.showAt=function(e){var n=[{range:new wn(e.lineNumber,e.column,e.lineNumber,e.column),options:t._DECORATION_OPTIONS}];this._dndDecorationIds=this._editor.deltaDecorations(this._dndDecorationIds,n),this._editor.revealPosition(e,1)},t.prototype._removeDecoration=function(){this._dndDecorationIds=this._editor.deltaDecorations(this._dndDecorationIds,[])},t.prototype._hitContent=function(e){return 6===e.type||7===e.type},t.prototype._hitMargin=function(e){return 2===e.type||3===e.type||4===e.type},t.prototype.dispose=function(){this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1,this._modifierPressed=!1,e.prototype.dispose.call(this)},t.ID="editor.contrib.dragAndDrop",t.TRIGGER_KEY_VALUE=_?6:5,t._DECORATION_OPTIONS=kv.register({className:"dnd-target"}),t}(He);Pf(OF.ID,OF);var MF=function(){function e(e){this._editor=e,this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationId=null,this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null,this._startPosition=this._editor.getPosition()}return e.prototype.dispose=function(){this._editor.deltaDecorations(this._allDecorations(),[]),this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationId=null,this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null},e.prototype.reset=function(){this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationId=null,this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null},e.prototype.getCount=function(){return this._decorations.length},e.prototype.getFindScope=function(){return this._findScopeDecorationId?this._editor.getModel().getDecorationRange(this._findScopeDecorationId):null},e.prototype.getStartPosition=function(){return this._startPosition},e.prototype.setStartPosition=function(e){this._startPosition=e,this.setCurrentFindMatch(null)},e.prototype._getDecorationIndex=function(e){var t=this._decorations.indexOf(e);return t>=0?t+1:1},e.prototype.getCurrentMatchesPosition=function(t){for(var n=0,i=this._editor.getModel().getDecorationsInRange(t);n<i.length;n++){var o=i[n],r=o.options;if(r===e._FIND_MATCH_DECORATION||r===e._CURRENT_FIND_MATCH_DECORATION)return this._getDecorationIndex(o.id)}return 1},e.prototype.setCurrentFindMatch=function(t){var n=this,i=null,o=0;if(t)for(var r=0,s=this._decorations.length;r<s;r++){var a=this._editor.getModel().getDecorationRange(this._decorations[r]);if(t.equalsRange(a)){i=this._decorations[r],o=r+1;break}}return null===this._highlightedDecorationId&&null===i||this._editor.changeDecorations((function(t){if(null!==n._highlightedDecorationId&&(t.changeDecorationOptions(n._highlightedDecorationId,e._FIND_MATCH_DECORATION),n._highlightedDecorationId=null),null!==i&&(n._highlightedDecorationId=i,t.changeDecorationOptions(n._highlightedDecorationId,e._CURRENT_FIND_MATCH_DECORATION)),null!==n._rangeHighlightDecorationId&&(t.removeDecoration(n._rangeHighlightDecorationId),n._rangeHighlightDecorationId=null),null!==i){var o=n._editor.getModel().getDecorationRange(i);if(o.startLineNumber!==o.endLineNumber&&1===o.endColumn){var r=o.endLineNumber-1,s=n._editor.getModel().getLineMaxColumn(r);o=new wn(o.startLineNumber,o.startColumn,r,s)}n._rangeHighlightDecorationId=t.addDecoration(o,e._RANGE_HIGHLIGHT_DECORATION)}})),o},e.prototype.set=function(t,n){var i=this;this._editor.changeDecorations((function(o){var r=e._FIND_MATCH_DECORATION,s=[];if(t.length>1e3){r=e._FIND_MATCH_NO_OVERVIEW_DECORATION;for(var a=i._editor.getModel().getLineCount(),u=i._editor.getLayoutInfo().height/a,l=Math.max(2,Math.ceil(3/u)),c=t[0].range.startLineNumber,d=t[0].range.endLineNumber,h=1,p=t.length;h<p;h++){var f=t[h].range;d+l>=f.startLineNumber?f.endLineNumber>d&&(d=f.endLineNumber):(s.push({range:new wn(c,1,d,1),options:e._FIND_MATCH_ONLY_OVERVIEW_DECORATION}),c=f.startLineNumber,d=f.endLineNumber)}s.push({range:new wn(c,1,d,1),options:e._FIND_MATCH_ONLY_OVERVIEW_DECORATION})}var g=new Array(t.length);for(h=0,p=t.length;h<p;h++)g[h]={range:t[h].range,options:r};i._decorations=o.deltaDecorations(i._decorations,g),i._overviewRulerApproximateDecorations=o.deltaDecorations(i._overviewRulerApproximateDecorations,s),i._rangeHighlightDecorationId&&(o.removeDecoration(i._rangeHighlightDecorationId),i._rangeHighlightDecorationId=null),i._findScopeDecorationId&&(o.removeDecoration(i._findScopeDecorationId),i._findScopeDecorationId=null),n&&(i._findScopeDecorationId=o.addDecoration(n,e._FIND_SCOPE_DECORATION))}))},e.prototype.matchBeforePosition=function(e){if(0===this._decorations.length)return null;for(var t=this._decorations.length-1;t>=0;t--){var n=this._decorations[t],i=this._editor.getModel().getDecorationRange(n);if(i&&!(i.endLineNumber>e.lineNumber)){if(i.endLineNumber<e.lineNumber)return i;if(!(i.endColumn>e.column))return i}}return this._editor.getModel().getDecorationRange(this._decorations[this._decorations.length-1])},e.prototype.matchAfterPosition=function(e){if(0===this._decorations.length)return null;for(var t=0,n=this._decorations.length;t<n;t++){var i=this._decorations[t],o=this._editor.getModel().getDecorationRange(i);if(o&&!(o.startLineNumber<e.lineNumber)){if(o.startLineNumber>e.lineNumber)return o;if(!(o.startColumn<e.column))return o}}return this._editor.getModel().getDecorationRange(this._decorations[0])},e.prototype._allDecorations=function(){var e=[];return e=(e=e.concat(this._decorations)).concat(this._overviewRulerApproximateDecorations),this._findScopeDecorationId&&e.push(this._findScopeDecorationId),this._rangeHighlightDecorationId&&e.push(this._rangeHighlightDecorationId),e},e._CURRENT_FIND_MATCH_DECORATION=kv.register({stickiness:1,zIndex:13,className:"currentFindMatch",showIfCollapsed:!0,overviewRuler:{color:gg(bb),position:Va.Center},minimap:{color:gg(Cb),position:Ba.Inline}}),e._FIND_MATCH_DECORATION=kv.register({stickiness:1,className:"findMatch",showIfCollapsed:!0,overviewRuler:{color:gg(bb),position:Va.Center},minimap:{color:gg(Cb),position:Ba.Inline}}),e._FIND_MATCH_NO_OVERVIEW_DECORATION=kv.register({stickiness:1,className:"findMatch",showIfCollapsed:!0}),e._FIND_MATCH_ONLY_OVERVIEW_DECORATION=kv.register({stickiness:1,overviewRuler:{color:gg(bb),position:Va.Center}}),e._RANGE_HIGHLIGHT_DECORATION=kv.register({stickiness:1,className:"rangeHighlight",isWholeLine:!0}),e._FIND_SCOPE_DECORATION=kv.register({className:"findScope",isWholeLine:!0}),e}(),TF=function(){function e(e,t,n){this._editorSelection=e,this._ranges=t,this._replaceStrings=n,this._trackedEditorSelectionId=null}return e.prototype.getEditOperations=function(e,t){if(this._ranges.length>0){for(var n=[],i=0;i<this._ranges.length;i++)n.push({range:this._ranges[i],text:this._replaceStrings[i]});n.sort((function(e,t){return wn.compareRangesUsingStarts(e.range,t.range)}));var o=[],r=n[0];for(i=1;i<n.length;i++)r.range.endLineNumber===n[i].range.startLineNumber&&r.range.endColumn===n[i].range.startColumn?(r.range=r.range.plusRange(n[i].range),r.text=r.text+n[i].text):(o.push(r),r=n[i]);o.push(r);for(var s=0,a=o;s<a.length;s++){var u=a[s];t.addEditOperation(u.range,u.text)}}this._trackedEditorSelectionId=t.trackSelection(this._editorSelection)},e.prototype.computeCursorState=function(e,t){return t.getTrackedSelection(this._trackedEditorSelectionId)},e}();function PF(e,t){if(e&&""!==e[0]){var n=RF(e,t,"-"),i=RF(e,t,"_");return n&&!i?AF(e,t,"-"):!n&&i?AF(e,t,"_"):e[0].toUpperCase()===e[0]?t.toUpperCase():e[0].toLowerCase()===e[0]?t.toLowerCase():(o=e[0][0],void 0===r&&(r=!1),o&&(r&&(o=o.replace(/\\./g,"")),o.toLowerCase()!==o)?t[0].toUpperCase()+t.substr(1):t)}return t;var o,r}function RF(e,t,n){return-1!==e[0].indexOf(n)&&-1!==t.indexOf(n)&&e[0].split(n).length===t.split(n).length}function AF(e,t,n){var i=t.split(n),o=e[0].split(n),r="";return i.forEach((function(e,t){r+=PF([o[t]],e)+n})),r.slice(0,-1)}var FF=function(e){this.staticValue=e,this.kind=0},WF=function(e){this.pieces=e,this.kind=1},VF=function(){function e(e){e&&0!==e.length?1===e.length&&null!==e[0].staticValue?this._state=new FF(e[0].staticValue):this._state=new WF(e):this._state=new FF("")}return e.fromStaticValue=function(t){return new e([BF.staticValue(t)])},Object.defineProperty(e.prototype,"hasReplacementPatterns",{get:function(){return 1===this._state.kind},enumerable:!0,configurable:!0}),e.prototype.buildReplaceString=function(t,n){if(0===this._state.kind)return n?PF(t,this._state.staticValue):this._state.staticValue;for(var i="",o=0,r=this._state.pieces.length;o<r;o++){var s=this._state.pieces[o];null===s.staticValue?i+=e._substitute(s.matchIndex,t):i+=s.staticValue}return i},e._substitute=function(e,t){if(null===t)return"";if(0===e)return t[0];for(var n="";e>0;){if(e<t.length)return(t[e]||"")+n;n=String(e%10)+n,e=Math.floor(e/10)}return"$"+n},e}(),BF=function(){function e(e,t){this.staticValue=e,this.matchIndex=t}return e.staticValue=function(t){return new e(t,-1)},e.matchIndex=function(t){return new e(null,t)},e}(),HF=function(){function e(e){this._source=e,this._lastCharIndex=0,this._result=[],this._resultLen=0,this._currentStaticPiece=""}return e.prototype.emitUnchanged=function(e){this._emitStatic(this._source.substring(this._lastCharIndex,e)),this._lastCharIndex=e},e.prototype.emitStatic=function(e,t){this._emitStatic(e),this._lastCharIndex=t},e.prototype._emitStatic=function(e){0!==e.length&&(this._currentStaticPiece+=e)},e.prototype.emitMatchIndex=function(e,t){0!==this._currentStaticPiece.length&&(this._result[this._resultLen++]=BF.staticValue(this._currentStaticPiece),this._currentStaticPiece=""),this._result[this._resultLen++]=BF.matchIndex(e),this._lastCharIndex=t},e.prototype.finalize=function(){return this.emitUnchanged(this._source.length),0!==this._currentStaticPiece.length&&(this._result[this._resultLen++]=BF.staticValue(this._currentStaticPiece),this._currentStaticPiece=""),new VF(this._result)},e}();var zF=new Kh("findWidgetVisible",!1),jF=new Kh("findInputFocussed",!1),UF=new Kh("replaceInputFocussed",!1),KF={primary:545,mac:{primary:2593}},qF={primary:565,mac:{primary:2613}},GF={primary:560,mac:{primary:2608}},ZF={primary:554,mac:{primary:2602}},YF="actions.find",XF="actions.findWithSelection",$F="editor.action.nextMatchFindAction",QF="editor.action.previousMatchFindAction",JF="editor.action.nextSelectionMatchFindAction",eW="editor.action.previousSelectionMatchFindAction",tW="editor.action.startFindReplaceAction",nW="closeFindWidget",iW="toggleFindCaseSensitive",oW="toggleFindWholeWord",rW="toggleFindRegex",sW="toggleFindInSelection",aW="editor.action.replaceOne",uW="editor.action.replaceAll",lW="editor.action.selectAllMatches",cW=function(){function e(e,t){var n=this;this._toDispose=new Be,this._editor=e,this._state=t,this._isDisposed=!1,this._startSearchingTimer=new yi,this._decorations=new MF(e),this._toDispose.add(this._decorations),this._updateDecorationsScheduler=new wi((function(){return n.research(!1)}),100),this._toDispose.add(this._updateDecorationsScheduler),this._toDispose.add(this._editor.onDidChangeCursorPosition((function(e){3!==e.reason&&5!==e.reason&&6!==e.reason||n._decorations.setStartPosition(n._editor.getPosition())}))),this._ignoreModelContentChanged=!1,this._toDispose.add(this._editor.onDidChangeModelContent((function(e){n._ignoreModelContentChanged||(e.isFlush&&n._decorations.reset(),n._decorations.setStartPosition(n._editor.getPosition()),n._updateDecorationsScheduler.schedule())}))),this._toDispose.add(this._state.onFindReplaceStateChange((function(e){return n._onStateChanged(e)}))),this.research(!1,this._state.searchScope)}return e.prototype.dispose=function(){this._isDisposed=!0,Ae(this._startSearchingTimer),this._toDispose.dispose()},e.prototype._onStateChanged=function(e){var t=this;this._isDisposed||this._editor.hasModel()&&(e.searchString||e.isReplaceRevealed||e.isRegex||e.wholeWord||e.matchCase||e.searchScope)&&(this._editor.getModel().isTooLargeForSyncing()?(this._startSearchingTimer.cancel(),this._startSearchingTimer.setIfNotSet((function(){e.searchScope?t.research(e.moveCursor,t._state.searchScope):t.research(e.moveCursor)}),240)):e.searchScope?this.research(e.moveCursor,this._state.searchScope):this.research(e.moveCursor))},e._getSearchRange=function(e,t){return t||e.getFullModelRange()},e.prototype.research=function(e,t){var n=null;null!==(n=void 0!==t?t:this._decorations.getFindScope())&&n.startLineNumber!==n.endLineNumber&&(n=1===n.endColumn?new wn(n.startLineNumber,1,n.endLineNumber-1,this._editor.getModel().getLineMaxColumn(n.endLineNumber-1)):new wn(n.startLineNumber,1,n.endLineNumber,this._editor.getModel().getLineMaxColumn(n.endLineNumber)));var i=this._findMatches(n,!1,19999);this._decorations.set(i,n),this._state.changeMatchInfo(this._decorations.getCurrentMatchesPosition(this._editor.getSelection()),this._decorations.getCount(),void 0),e&&this._moveToNextMatch(this._decorations.getStartPosition())},e.prototype._hasMatches=function(){return this._state.matchesCount>0},e.prototype._cannotFind=function(){if(!this._hasMatches()){var e=this._decorations.getFindScope();return e&&this._editor.revealRangeInCenterIfOutsideViewport(e,0),!0}return!1},e.prototype._setCurrentFindMatch=function(e){var t=this._decorations.setCurrentFindMatch(e);this._state.changeMatchInfo(t,this._decorations.getCount(),e),this._editor.setSelection(e),this._editor.revealRangeInCenterIfOutsideViewport(e,0)},e.prototype._prevSearchPosition=function(e){var t=this._state.isRegex&&(this._state.searchString.indexOf("^")>=0||this._state.searchString.indexOf("$")>=0),n=e.lineNumber,i=e.column,o=this._editor.getModel();return t||1===i?(1===n?n=o.getLineCount():n--,i=o.getLineMaxColumn(n)):i--,new bn(n,i)},e.prototype._moveToPrevMatch=function(t,n){if(void 0===n&&(n=!1),this._decorations.getCount()<19999){var i=this._decorations.matchBeforePosition(t);return i&&i.isEmpty()&&i.getStartPosition().equals(t)&&(t=this._prevSearchPosition(t),i=this._decorations.matchBeforePosition(t)),void(i&&this._setCurrentFindMatch(i))}if(!this._cannotFind()){var o=this._decorations.getFindScope(),r=e._getSearchRange(this._editor.getModel(),o);r.getEndPosition().isBefore(t)&&(t=r.getEndPosition()),t.isBefore(r.getStartPosition())&&(t=r.getEndPosition());var s=t.lineNumber,a=t.column,u=this._editor.getModel(),l=new bn(s,a),c=u.findPreviousMatch(this._state.searchString,l,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(96):null,!1);if(c&&c.range.isEmpty()&&c.range.getStartPosition().equals(l)&&(l=this._prevSearchPosition(l),c=u.findPreviousMatch(this._state.searchString,l,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(96):null,!1)),c)return n||r.containsRange(c.range)?void this._setCurrentFindMatch(c.range):this._moveToPrevMatch(c.range.getStartPosition(),!0)}},e.prototype.moveToPrevMatch=function(){this._moveToPrevMatch(this._editor.getSelection().getStartPosition())},e.prototype._nextSearchPosition=function(e){var t=this._state.isRegex&&(this._state.searchString.indexOf("^")>=0||this._state.searchString.indexOf("$")>=0),n=e.lineNumber,i=e.column,o=this._editor.getModel();return t||i===o.getLineMaxColumn(n)?(n===o.getLineCount()?n=1:n++,i=1):i++,new bn(n,i)},e.prototype._moveToNextMatch=function(e){if(this._decorations.getCount()<19999){var t=this._decorations.matchAfterPosition(e);return t&&t.isEmpty()&&t.getStartPosition().equals(e)&&(e=this._nextSearchPosition(e),t=this._decorations.matchAfterPosition(e)),void(t&&this._setCurrentFindMatch(t))}var n=this._getNextMatch(e,!1,!0);n&&this._setCurrentFindMatch(n.range)},e.prototype._getNextMatch=function(t,n,i,o){if(void 0===o&&(o=!1),this._cannotFind())return null;var r=this._decorations.getFindScope(),s=e._getSearchRange(this._editor.getModel(),r);s.getEndPosition().isBefore(t)&&(t=s.getStartPosition()),t.isBefore(s.getStartPosition())&&(t=s.getStartPosition());var a=t.lineNumber,u=t.column,l=this._editor.getModel(),c=new bn(a,u),d=l.findNextMatch(this._state.searchString,c,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(96):null,n);return i&&d&&d.range.isEmpty()&&d.range.getStartPosition().equals(c)&&(c=this._nextSearchPosition(c),d=l.findNextMatch(this._state.searchString,c,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(96):null,n)),d?o||s.containsRange(d.range)?d:this._getNextMatch(d.range.getEndPosition(),n,i,!0):null},e.prototype.moveToNextMatch=function(){this._moveToNextMatch(this._editor.getSelection().getEndPosition())},e.prototype._getReplacePattern=function(){return this._state.isRegex?function(e){if(!e||0===e.length)return new VF(null);for(var t=new HF(e),n=0,i=e.length;n<i;n++){var o=e.charCodeAt(n);if(92!==o){if(36===o){if(++n>=i)break;if(36===(a=e.charCodeAt(n))){t.emitUnchanged(n-1),t.emitStatic("$",n+1);continue}if(48===a||38===a){t.emitUnchanged(n-1),t.emitMatchIndex(0,n+1);continue}if(49<=a&&a<=57){var r=a-48;if(n+1<i){var s=e.charCodeAt(n+1);if(48<=s&&s<=57){n++,r=10*r+(s-48),t.emitUnchanged(n-2),t.emitMatchIndex(r,n+1);continue}}t.emitUnchanged(n-1),t.emitMatchIndex(r,n+1);continue}}}else{if(++n>=i)break;var a;switch(a=e.charCodeAt(n)){case 92:t.emitUnchanged(n-1),t.emitStatic("\\",n+1);break;case 110:t.emitUnchanged(n-1),t.emitStatic("\n",n+1);break;case 116:t.emitUnchanged(n-1),t.emitStatic("\t",n+1)}}}return t.finalize()}(this._state.replaceString):VF.fromStaticValue(this._state.replaceString)},e.prototype.replace=function(){if(this._hasMatches()){var e=this._getReplacePattern(),t=this._editor.getSelection(),n=this._getNextMatch(t.getStartPosition(),!0,!1);if(n)if(t.equalsRange(n.range)){var i=e.buildReplaceString(n.matches,this._state.preserveCase),o=new Fw(t,i);this._executeEditorCommand("replace",o),this._decorations.setStartPosition(new bn(t.startLineNumber,t.startColumn+i.length)),this.research(!0)}else this._decorations.setStartPosition(this._editor.getPosition()),this._setCurrentFindMatch(n.range)}},e.prototype._findMatches=function(t,n,i){var o=e._getSearchRange(this._editor.getModel(),t);return this._editor.getModel().findMatches(this._state.searchString,o,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(96):null,n,i)},e.prototype.replaceAll=function(){if(this._hasMatches()){var e=this._decorations.getFindScope();null===e&&this._state.matchesCount>=19999?this._largeReplaceAll():this._regularReplaceAll(e),this.research(!1)}},e.prototype._largeReplaceAll=function(){var e=new Nm(this._state.searchString,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(96):null).parseSearchRequest();if(e){var t=e.regex;if(!t.multiline){var n="mu";t.ignoreCase&&(n+="i"),t.global&&(n+="g"),t=new RegExp(t.source,n)}var i,o=this._editor.getModel(),r=o.getValue(1),s=o.getFullModelRange(),a=this._getReplacePattern(),u=this._state.preserveCase;i=a.hasReplacementPatterns||u?r.replace(t,(function(){return a.buildReplaceString(arguments,u)})):r.replace(t,a.buildReplaceString(null,u));var l=new Hw(s,i,this._editor.getSelection());this._executeEditorCommand("replaceAll",l)}},e.prototype._regularReplaceAll=function(e){for(var t=this._getReplacePattern(),n=this._findMatches(e,t.hasReplacementPatterns||this._state.preserveCase,1073741824),i=[],o=0,r=n.length;o<r;o++)i[o]=t.buildReplaceString(n[o].matches,this._state.preserveCase);var s=new TF(this._editor.getSelection(),n.map((function(e){return e.range})),i);this._executeEditorCommand("replaceAll",s)},e.prototype.selectAllMatches=function(){if(this._hasMatches()){for(var e=this._decorations.getFindScope(),t=this._findMatches(e,!1,1073741824).map((function(e){return new Sn(e.range.startLineNumber,e.range.startColumn,e.range.endLineNumber,e.range.endColumn)})),n=this._editor.getSelection(),i=0,o=t.length;i<o;i++){if(t[i].equalsRange(n)){t=[n].concat(t.slice(0,i)).concat(t.slice(i+1));break}}this._editor.setSelections(t)}},e.prototype._executeEditorCommand=function(e,t){try{this._ignoreModelContentChanged=!0,this._editor.pushUndoStop(),this._editor.executeCommand(e,t),this._editor.pushUndoStop()}finally{this._ignoreModelContentChanged=!1}},e}(),dW=(n(404),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),hW={inputActiveOptionBorder:mv.fromHex("#007ACC00"),inputActiveOptionBackground:mv.fromHex("#0E639C50")},pW=function(e){function t(t){var n=e.call(this)||this;return n._onChange=n._register(new nt),n.onChange=n._onChange.event,n._onKeyDown=n._register(new nt),n.onKeyDown=n._onKeyDown.event,n._opts=xa(t),ka(n._opts,hW,!1),n._checked=n._opts.isChecked,n.domNode=document.createElement("div"),n.domNode.title=n._opts.title,n.domNode.className="monaco-custom-checkbox codicon "+(n._opts.actionClassName||"")+" "+(n._checked?"checked":"unchecked"),n.domNode.tabIndex=0,n.domNode.setAttribute("role","checkbox"),n.domNode.setAttribute("aria-checked",String(n._checked)),n.domNode.setAttribute("aria-label",n._opts.title),n.applyStyles(),n.onclick(n.domNode,(function(e){n.checked=!n._checked,n._onChange.fire(!1),e.preventDefault()})),n.ignoreGesture(n.domNode),n.onkeydown(n.domNode,(function(e){if(10===e.keyCode||3===e.keyCode)return n.checked=!n._checked,n._onChange.fire(!0),void e.preventDefault();n._onKeyDown.fire(e)})),n}return dW(t,e),Object.defineProperty(t.prototype,"enabled",{get:function(){return"true"!==this.domNode.getAttribute("aria-disabled")},enumerable:!0,configurable:!0}),t.prototype.focus=function(){this.domNode.focus()},Object.defineProperty(t.prototype,"checked",{get:function(){return this._checked},set:function(e){this._checked=e,this.domNode.setAttribute("aria-checked",String(this._checked)),this._checked?this.domNode.classList.add("checked"):this.domNode.classList.remove("checked"),this.applyStyles()},enumerable:!0,configurable:!0}),t.prototype.width=function(){return 22},t.prototype.style=function(e){e.inputActiveOptionBorder&&(this._opts.inputActiveOptionBorder=e.inputActiveOptionBorder),e.inputActiveOptionBackground&&(this._opts.inputActiveOptionBackground=e.inputActiveOptionBackground),this.applyStyles()},t.prototype.applyStyles=function(){this.domNode&&(this.domNode.style.borderColor=this._checked&&this._opts.inputActiveOptionBorder?this._opts.inputActiveOptionBorder.toString():"transparent",this.domNode.style.backgroundColor=this._checked&&this._opts.inputActiveOptionBackground?this._opts.inputActiveOptionBackground.toString():"transparent")},t.prototype.enable=function(){this.domNode.tabIndex=0,this.domNode.setAttribute("aria-disabled",String(!1))},t.prototype.disable=function(){ir(this.domNode),this.domNode.setAttribute("aria-disabled",String(!0))},t}(KC),fW=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),gW=r("caseDescription","Match Case"),mW=r("wordsDescription","Match Whole Word"),vW=r("regexDescription","Use Regular Expression"),_W=function(e){function t(t){return e.call(this,{actionClassName:"codicon-case-sensitive",title:gW+t.appendTitle,isChecked:t.isChecked,inputActiveOptionBorder:t.inputActiveOptionBorder,inputActiveOptionBackground:t.inputActiveOptionBackground})||this}return fW(t,e),t}(pW),yW=function(e){function t(t){return e.call(this,{actionClassName:"codicon-whole-word",title:mW+t.appendTitle,isChecked:t.isChecked,inputActiveOptionBorder:t.inputActiveOptionBorder,inputActiveOptionBackground:t.inputActiveOptionBackground})||this}return fW(t,e),t}(pW),bW=function(e){function t(t){return e.call(this,{actionClassName:"codicon-regex",title:vW+t.appendTitle,isChecked:t.isChecked,inputActiveOptionBorder:t.inputActiveOptionBorder,inputActiveOptionBackground:t.inputActiveOptionBackground})||this}return fW(t,e),t}(pW),wW=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),CW=function(e){function t(t,n,i,o){var r=e.call(this)||this;r._hideSoon=r._register(new wi((function(){return r._hide()}),2e3)),r._isVisible=!1,r._editor=t,r._state=n,r._keybindingService=i,r._domNode=document.createElement("div"),r._domNode.className="findOptionsWidget",r._domNode.style.display="none",r._domNode.style.top="10px",r._domNode.setAttribute("role","presentation"),r._domNode.setAttribute("aria-hidden","true");var s=o.getTheme().getColor(B_),a=o.getTheme().getColor(H_);return r.caseSensitive=r._register(new _W({appendTitle:r._keybindingLabelFor(iW),isChecked:r._state.matchCase,inputActiveOptionBorder:s,inputActiveOptionBackground:a})),r._domNode.appendChild(r.caseSensitive.domNode),r._register(r.caseSensitive.onChange((function(){r._state.change({matchCase:r.caseSensitive.checked},!1)}))),r.wholeWords=r._register(new yW({appendTitle:r._keybindingLabelFor(oW),isChecked:r._state.wholeWord,inputActiveOptionBorder:s,inputActiveOptionBackground:a})),r._domNode.appendChild(r.wholeWords.domNode),r._register(r.wholeWords.onChange((function(){r._state.change({wholeWord:r.wholeWords.checked},!1)}))),r.regex=r._register(new bW({appendTitle:r._keybindingLabelFor(rW),isChecked:r._state.isRegex,inputActiveOptionBorder:s,inputActiveOptionBackground:a})),r._domNode.appendChild(r.regex.domNode),r._register(r.regex.onChange((function(){r._state.change({isRegex:r.regex.checked},!1)}))),r._editor.addOverlayWidget(r),r._register(r._state.onFindReplaceStateChange((function(e){var t=!1;e.isRegex&&(r.regex.checked=r._state.isRegex,t=!0),e.wholeWord&&(r.wholeWords.checked=r._state.wholeWord,t=!0),e.matchCase&&(r.caseSensitive.checked=r._state.matchCase,t=!0),!r._state.isRevealed&&t&&r._revealTemporarily()}))),r._register(fo(r._domNode,(function(e){return r._onMouseOut()}))),r._register(uo(r._domNode,"mouseover",(function(e){return r._onMouseOver()}))),r._applyTheme(o.getTheme()),r._register(o.onThemeChange(r._applyTheme.bind(r))),r}return wW(t,e),t.prototype._keybindingLabelFor=function(e){var t=this._keybindingService.lookupKeybinding(e);return t?" ("+t.getLabel()+")":""},t.prototype.dispose=function(){this._editor.removeOverlayWidget(this),e.prototype.dispose.call(this)},t.prototype.getId=function(){return t.ID},t.prototype.getDomNode=function(){return this._domNode},t.prototype.getPosition=function(){return{preference:0}},t.prototype.highlightFindOptions=function(){this._revealTemporarily()},t.prototype._revealTemporarily=function(){this._show(),this._hideSoon.schedule()},t.prototype._onMouseOut=function(){this._hideSoon.schedule()},t.prototype._onMouseOver=function(){this._hideSoon.cancel()},t.prototype._show=function(){this._isVisible||(this._isVisible=!0,this._domNode.style.display="block")},t.prototype._hide=function(){this._isVisible&&(this._isVisible=!1,this._domNode.style.display="none")},t.prototype._applyTheme=function(e){var t={inputActiveOptionBorder:e.getColor(B_),inputActiveOptionBackground:e.getColor(H_)};this.caseSensitive.style(t),this.wholeWords.style(t),this.regex.style(t)},t.ID="editor.contrib.findOptionsWidget",t}(KC);yg((function(e,t){var n=e.getColor(_y);n&&t.addRule(".monaco-editor .findOptionsWidget { background-color: "+n+"; }");var i=e.getColor(yy);i&&t.addRule(".monaco-editor .findOptionsWidget { color: "+i+"; }");var o=e.getColor(A_);o&&t.addRule(".monaco-editor .findOptionsWidget { box-shadow: 0 2px 8px "+o+"; }");var r=e.getColor(M_);r&&t.addRule(".monaco-editor .findOptionsWidget { border: 2px solid "+r+"; }")}));var SW=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function LW(e,t){return 1===e||2!==e&&t}var xW=function(e){function t(){var t=e.call(this)||this;return t._onFindReplaceStateChange=t._register(new nt),t.onFindReplaceStateChange=t._onFindReplaceStateChange.event,t._searchString="",t._replaceString="",t._isRevealed=!1,t._isReplaceRevealed=!1,t._isRegex=!1,t._isRegexOverride=0,t._wholeWord=!1,t._wholeWordOverride=0,t._matchCase=!1,t._matchCaseOverride=0,t._preserveCase=!1,t._preserveCaseOverride=0,t._searchScope=null,t._matchesPosition=0,t._matchesCount=0,t._currentMatch=null,t}return SW(t,e),Object.defineProperty(t.prototype,"searchString",{get:function(){return this._searchString},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"replaceString",{get:function(){return this._replaceString},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isRevealed",{get:function(){return this._isRevealed},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isReplaceRevealed",{get:function(){return this._isReplaceRevealed},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isRegex",{get:function(){return LW(this._isRegexOverride,this._isRegex)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"wholeWord",{get:function(){return LW(this._wholeWordOverride,this._wholeWord)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"matchCase",{get:function(){return LW(this._matchCaseOverride,this._matchCase)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"preserveCase",{get:function(){return LW(this._preserveCaseOverride,this._preserveCase)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"actualIsRegex",{get:function(){return this._isRegex},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"actualWholeWord",{get:function(){return this._wholeWord},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"actualMatchCase",{get:function(){return this._matchCase},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"actualPreserveCase",{get:function(){return this._preserveCase},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"searchScope",{get:function(){return this._searchScope},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"matchesPosition",{get:function(){return this._matchesPosition},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"matchesCount",{get:function(){return this._matchesCount},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"currentMatch",{get:function(){return this._currentMatch},enumerable:!0,configurable:!0}),t.prototype.changeMatchInfo=function(e,t,n){var i={moveCursor:!1,updateHistory:!1,searchString:!1,replaceString:!1,isRevealed:!1,isReplaceRevealed:!1,isRegex:!1,wholeWord:!1,matchCase:!1,preserveCase:!1,searchScope:!1,matchesPosition:!1,matchesCount:!1,currentMatch:!1},o=!1;0===t&&(e=0),e>t&&(e=t),this._matchesPosition!==e&&(this._matchesPosition=e,i.matchesPosition=!0,o=!0),this._matchesCount!==t&&(this._matchesCount=t,i.matchesCount=!0,o=!0),void 0!==n&&(wn.equalsRange(this._currentMatch,n)||(this._currentMatch=n,i.currentMatch=!0,o=!0)),o&&this._onFindReplaceStateChange.fire(i)},t.prototype.change=function(e,t,n){void 0===n&&(n=!0);var i={moveCursor:t,updateHistory:n,searchString:!1,replaceString:!1,isRevealed:!1,isReplaceRevealed:!1,isRegex:!1,wholeWord:!1,matchCase:!1,preserveCase:!1,searchScope:!1,matchesPosition:!1,matchesCount:!1,currentMatch:!1},o=!1,r=this.isRegex,s=this.wholeWord,a=this.matchCase,u=this.preserveCase;void 0!==e.searchString&&this._searchString!==e.searchString&&(this._searchString=e.searchString,i.searchString=!0,o=!0),void 0!==e.replaceString&&this._replaceString!==e.replaceString&&(this._replaceString=e.replaceString,i.replaceString=!0,o=!0),void 0!==e.isRevealed&&this._isRevealed!==e.isRevealed&&(this._isRevealed=e.isRevealed,i.isRevealed=!0,o=!0),void 0!==e.isReplaceRevealed&&this._isReplaceRevealed!==e.isReplaceRevealed&&(this._isReplaceRevealed=e.isReplaceRevealed,i.isReplaceRevealed=!0,o=!0),void 0!==e.isRegex&&(this._isRegex=e.isRegex),void 0!==e.wholeWord&&(this._wholeWord=e.wholeWord),void 0!==e.matchCase&&(this._matchCase=e.matchCase),void 0!==e.preserveCase&&(this._preserveCase=e.preserveCase),void 0!==e.searchScope&&(wn.equalsRange(this._searchScope,e.searchScope)||(this._searchScope=e.searchScope,i.searchScope=!0,o=!0)),this._isRegexOverride=void 0!==e.isRegexOverride?e.isRegexOverride:0,this._wholeWordOverride=void 0!==e.wholeWordOverride?e.wholeWordOverride:0,this._matchCaseOverride=void 0!==e.matchCaseOverride?e.matchCaseOverride:0,this._preserveCaseOverride=void 0!==e.preserveCaseOverride?e.preserveCaseOverride:0,r!==this.isRegex&&(o=!0,i.isRegex=!0),s!==this.wholeWord&&(o=!0,i.wholeWord=!0),a!==this.matchCase&&(o=!0,i.matchCase=!0),u!==this.preserveCase&&(o=!0,i.preserveCase=!0),o&&this._onFindReplaceStateChange.fire(i)},t}(He);n(405),n(330),n(406);function DW(e,t){void 0===t&&(t={});var n=NW(t);return function e(t,n,i){var o;if(2===n.type)o=document.createTextNode(n.content||"");else if(3===n.type)o=document.createElement("b");else if(4===n.type)o=document.createElement("i");else if(5===n.type&&i){var r=document.createElement("a");r.href="#",i.disposeables.add(co(r,"click",(function(e){i.callback(String(n.index),e)}))),o=r}else 7===n.type?o=document.createElement("br"):1===n.type&&(o=t);o&&t!==o&&t.appendChild(o);o&&Array.isArray(n.children)&&n.children.forEach((function(t){e(o,t,i)}))}(n,function(e){var t={type:1,children:[]},n=0,i=t,o=[],r=new kW(e);for(;!r.eos();){var s=r.next(),a="\\"===s&&0!==EW(r.peek());if(a&&(s=r.next()),a||0===EW(s)||s!==r.peek())if("\n"===s)2===i.type&&(i=o.pop()),i.children.push({type:7});else if(2!==i.type){var u={type:2,content:s};i.children.push(u),o.push(i),i=u}else i.content+=s;else{r.advance(),2===i.type&&(i=o.pop());var l=EW(s);if(i.type===l||5===i.type&&6===l)i=o.pop();else{var c={type:l,children:[]};5===l&&(c.index=n,n++),i.children.push(c),o.push(i),i=c}}}2===i.type&&(i=o.pop());o.length;return t}(e),t.actionHandler),n}function NW(e){var t=e.inline?"span":"div",n=document.createElement(t);return e.className&&(n.className=e.className),n}var kW=function(){function e(e){this.source=e,this.index=0}return e.prototype.eos=function(){return this.index>=this.source.length},e.prototype.next=function(){var e=this.peek();return this.advance(),e},e.prototype.peek=function(){return this.source[this.index]},e.prototype.advance=function(){this.index++},e}();function EW(e){switch(e){case"*":return 3;case"_":return 4;case"[":return 5;case"]":return 6;default:return 0}}var IW=function(){function e(e,t){void 0===e&&(e=[]),void 0===t&&(t=10),this._initialize(e),this._limit=t,this._onChange()}return e.prototype.add=function(e){this._history.delete(e),this._history.add(e),this._onChange()},e.prototype.next=function(){return this._navigator.next()},e.prototype.previous=function(){return this._navigator.previous()},e.prototype.current=function(){return this._navigator.current()},e.prototype.parent=function(){return null},e.prototype.first=function(){return this._navigator.first()},e.prototype.last=function(){return this._navigator.last()},e.prototype.has=function(e){return this._history.has(e)},e.prototype._onChange=function(){this._reduceToLimit();var e=this._elements;this._navigator=new Ye(e,0,e.length,e.length)},e.prototype._reduceToLimit=function(){var e=this._elements;e.length>this._limit&&this._initialize(e.slice(e.length-this._limit))},e.prototype._initialize=function(e){this._history=new Set;for(var t=0,n=e;t<n.length;t++){var i=n[t];this._history.add(i)}},Object.defineProperty(e.prototype,"_elements",{get:function(){var e=[];return this._history.forEach((function(t){return e.push(t)})),e},enumerable:!0,configurable:!0}),e}(),OW=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),MW=er,TW={inputBackground:mv.fromHex("#3C3C3C"),inputForeground:mv.fromHex("#CCCCCC"),inputValidationInfoBorder:mv.fromHex("#55AAFF"),inputValidationInfoBackground:mv.fromHex("#063B49"),inputValidationWarningBorder:mv.fromHex("#B89500"),inputValidationWarningBackground:mv.fromHex("#352A05"),inputValidationErrorBorder:mv.fromHex("#BE1100"),inputValidationErrorBackground:mv.fromHex("#5A1D1D")},PW=function(e){function t(t,n,i){var o=e.call(this)||this;o.state="idle",o.maxHeight=Number.POSITIVE_INFINITY,o._onDidChange=o._register(new nt),o.onDidChange=o._onDidChange.event,o._onDidHeightChange=o._register(new nt),o.onDidHeightChange=o._onDidHeightChange.event,o.contextViewProvider=n,o.options=i||Object.create(null),ka(o.options,TW,!1),o.message=null,o.placeholder=o.options.placeholder||"",o.ariaLabel=o.options.ariaLabel||"",o.inputBackground=o.options.inputBackground,o.inputForeground=o.options.inputForeground,o.inputBorder=o.options.inputBorder,o.inputValidationInfoBorder=o.options.inputValidationInfoBorder,o.inputValidationInfoBackground=o.options.inputValidationInfoBackground,o.inputValidationInfoForeground=o.options.inputValidationInfoForeground,o.inputValidationWarningBorder=o.options.inputValidationWarningBorder,o.inputValidationWarningBackground=o.options.inputValidationWarningBackground,o.inputValidationWarningForeground=o.options.inputValidationWarningForeground,o.inputValidationErrorBorder=o.options.inputValidationErrorBorder,o.inputValidationErrorBackground=o.options.inputValidationErrorBackground,o.inputValidationErrorForeground=o.options.inputValidationErrorForeground,o.options.validationOptions&&(o.validation=o.options.validationOptions.validation),o.element=Xo(t,MW(".monaco-inputbox.idle"));var r=o.options.flexibleHeight?"textarea":"input",s=Xo(o.element,MW(".wrapper"));if(o.input=Xo(s,MW(r+".input.empty")),o.input.setAttribute("autocorrect","off"),o.input.setAttribute("autocapitalize","off"),o.input.setAttribute("spellcheck","false"),o.onfocus(o.input,(function(){return no(o.element,"synthetic-focus")})),o.onblur(o.input,(function(){return oo(o.element,"synthetic-focus")})),o.options.flexibleHeight){o.maxHeight="number"==typeof o.options.flexibleMaxHeight?o.options.flexibleMaxHeight:Number.POSITIVE_INFINITY,o.mirror=Xo(s,MW("div.mirror")),o.mirror.innerHTML=" ",o.scrollableElement=new pS(o.element,{vertical:1}),o.options.flexibleWidth&&(o.input.setAttribute("wrap","off"),o.mirror.style.whiteSpace="pre",o.mirror.style.wordWrap="initial"),Xo(t,o.scrollableElement.getDomNode()),o._register(o.scrollableElement),o._register(o.scrollableElement.onScroll((function(e){return o.input.scrollTop=e.scrollTop})));var a=Ge.filter(Xn(document,"selectionchange"),(function(){var e=document.getSelection();return(null==e?void 0:e.anchorNode)===s}));o._register(a(o.updateScrollDimensions,o)),o._register(o.onDidHeightChange(o.updateScrollDimensions,o))}else o.input.type=o.options.type||"text",o.input.setAttribute("wrap","off");return o.ariaLabel&&o.input.setAttribute("aria-label",o.ariaLabel),o.placeholder&&o.setPlaceHolder(o.placeholder),o.oninput(o.input,(function(){return o.onValueChange()})),o.onblur(o.input,(function(){return o.onBlur()})),o.onfocus(o.input,(function(){return o.onFocus()})),o.placeholder&&Vn&&o.onclick(o.input,(function(e){Go(e,!0),o.input.focus()})),o.ignoreGesture(o.input),setTimeout((function(){return o.updateMirror()}),0),o.options.actions&&(o.actionbar=o._register(new vD(o.element)),o.actionbar.push(o.options.actions,{icon:!0,label:!1})),o.applyStyles(),o}return OW(t,e),t.prototype.onBlur=function(){this._hideMessage()},t.prototype.onFocus=function(){this._showMessage()},t.prototype.setPlaceHolder=function(e){this.placeholder=e,this.input.setAttribute("placeholder",e),this.input.title=e},t.prototype.setAriaLabel=function(e){this.ariaLabel=e,e?this.input.setAttribute("aria-label",this.ariaLabel):this.input.removeAttribute("aria-label")},Object.defineProperty(t.prototype,"inputElement",{get:function(){return this.input},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"value",{get:function(){return this.input.value},set:function(e){this.input.value!==e&&(this.input.value=e,this.onValueChange())},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"height",{get:function(){return"number"==typeof this.cachedHeight?this.cachedHeight:Ao(this.element)},enumerable:!0,configurable:!0}),t.prototype.focus=function(){this.input.focus()},t.prototype.blur=function(){this.input.blur()},t.prototype.hasFocus=function(){return document.activeElement===this.input},t.prototype.select=function(e){void 0===e&&(e=null),this.input.select(),e&&this.input.setSelectionRange(e.start,e.end)},t.prototype.enable=function(){this.input.removeAttribute("disabled")},t.prototype.disable=function(){this.blur(),this.input.disabled=!0,this._hideMessage()},Object.defineProperty(t.prototype,"width",{get:function(){return To(this.input)},set:function(e){if(this.options.flexibleHeight&&this.options.flexibleWidth){var t=0;if(this.mirror)t=(parseFloat(this.mirror.style.paddingLeft||"")||0)+(parseFloat(this.mirror.style.paddingRight||"")||0);this.input.style.width=e-t+"px"}else this.input.style.width=e+"px";this.mirror&&(this.mirror.style.width=e+"px")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paddingRight",{set:function(e){this.options.flexibleHeight&&this.options.flexibleWidth?this.input.style.width="calc(100% - "+e+"px)":this.input.style.paddingRight=e+"px",this.mirror&&(this.mirror.style.paddingRight=e+"px")},enumerable:!0,configurable:!0}),t.prototype.updateScrollDimensions=function(){if("number"==typeof this.cachedContentHeight&&"number"==typeof this.cachedHeight&&this.scrollableElement){var e=this.cachedContentHeight,t=this.cachedHeight,n=this.input.scrollTop;this.scrollableElement.setScrollDimensions({scrollHeight:e,height:t}),this.scrollableElement.setScrollPosition({scrollTop:n})}},t.prototype.showMessage=function(e,t){this.message=e,oo(this.element,"idle"),oo(this.element,"info"),oo(this.element,"warning"),oo(this.element,"error"),no(this.element,this.classForType(e.type));var n=this.stylesForType(this.message.type);this.element.style.border=n.border?"1px solid "+n.border:"",Zp(3===e.type?r("alertErrorMessage","Error: {0}",e.content):2===e.type?r("alertWarningMessage","Warning: {0}",e.content):r("alertInfoMessage","Info: {0}",e.content)),(this.hasFocus()||t)&&this._showMessage()},t.prototype.hideMessage=function(){this.message=null,oo(this.element,"info"),oo(this.element,"warning"),oo(this.element,"error"),no(this.element,"idle"),this._hideMessage(),this.applyStyles()},t.prototype.validate=function(){var e=null;return this.validation&&((e=this.validation(this.value))?(this.inputElement.setAttribute("aria-invalid","true"),this.showMessage(e)):this.inputElement.hasAttribute("aria-invalid")&&(this.inputElement.removeAttribute("aria-invalid"),this.hideMessage())),!e},t.prototype.stylesForType=function(e){switch(e){case 1:return{border:this.inputValidationInfoBorder,background:this.inputValidationInfoBackground,foreground:this.inputValidationInfoForeground};case 2:return{border:this.inputValidationWarningBorder,background:this.inputValidationWarningBackground,foreground:this.inputValidationWarningForeground};default:return{border:this.inputValidationErrorBorder,background:this.inputValidationErrorBackground,foreground:this.inputValidationErrorForeground}}},t.prototype.classForType=function(e){switch(e){case 1:return"info";case 2:return"warning";default:return"error"}},t.prototype._showMessage=function(){var e=this;if(this.contextViewProvider&&this.message){var t,n=function(){return t.style.width=To(e.element)+"px"};this.contextViewProvider.showContextView({getAnchor:function(){return e.element},anchorAlignment:1,render:function(i){if(!e.message)return null;t=Xo(i,MW(".monaco-inputbox-container")),n();var o={inline:!0,className:"monaco-inputbox-message"},r=e.message.formatContent?DW(e.message.content,o):function(e,t){void 0===t&&(t={});var n=NW(t);return n.textContent=e,n}(e.message.content,o);no(r,e.classForType(e.message.type));var s=e.stylesForType(e.message.type);return r.style.backgroundColor=s.background?s.background.toString():"",r.style.color=s.foreground?s.foreground.toString():"",r.style.border=s.border?"1px solid "+s.border:"",Xo(t,r),null},onHide:function(){e.state="closed"},layout:n}),this.state="open"}},t.prototype._hideMessage=function(){this.contextViewProvider&&("open"===this.state&&this.contextViewProvider.hideContextView(),this.state="idle")},t.prototype.onValueChange=function(){this._onDidChange.fire(this.value),this.validate(),this.updateMirror(),so(this.input,"empty",!this.value),"open"===this.state&&this.contextViewProvider&&this.contextViewProvider.layout()},t.prototype.updateMirror=function(){if(this.mirror){var e=this.value,t=10===e.charCodeAt(e.length-1)?" ":"";e+t?this.mirror.textContent=e+t:this.mirror.innerHTML=" ",this.layout()}},t.prototype.style=function(e){this.inputBackground=e.inputBackground,this.inputForeground=e.inputForeground,this.inputBorder=e.inputBorder,this.inputValidationInfoBackground=e.inputValidationInfoBackground,this.inputValidationInfoForeground=e.inputValidationInfoForeground,this.inputValidationInfoBorder=e.inputValidationInfoBorder,this.inputValidationWarningBackground=e.inputValidationWarningBackground,this.inputValidationWarningForeground=e.inputValidationWarningForeground,this.inputValidationWarningBorder=e.inputValidationWarningBorder,this.inputValidationErrorBackground=e.inputValidationErrorBackground,this.inputValidationErrorForeground=e.inputValidationErrorForeground,this.inputValidationErrorBorder=e.inputValidationErrorBorder,this.applyStyles()},t.prototype.applyStyles=function(){var e=this.inputBackground?this.inputBackground.toString():"",t=this.inputForeground?this.inputForeground.toString():"",n=this.inputBorder?this.inputBorder.toString():"";this.element.style.backgroundColor=e,this.element.style.color=t,this.input.style.backgroundColor=e,this.input.style.color=t,this.element.style.borderWidth=n?"1px":"",this.element.style.borderStyle=n?"solid":"",this.element.style.borderColor=n},t.prototype.layout=function(){if(this.mirror){var e=this.cachedContentHeight;this.cachedContentHeight=Ao(this.mirror),e!==this.cachedContentHeight&&(this.cachedHeight=Math.min(this.cachedContentHeight,this.maxHeight),this.input.style.height=this.cachedHeight+"px",this._onDidHeightChange.fire(this.cachedContentHeight))}},t.prototype.insertAtCursor=function(e){var t=this.inputElement,n=t.selectionStart,i=t.selectionEnd,o=t.value;null!==n&&null!==i&&(this.value=o.substr(0,n)+e+o.substr(i),t.setSelectionRange(n+1,n+1),this.layout())},t.prototype.dispose=function(){this._hideMessage(),this.message=null,this.actionbar&&this.actionbar.dispose(),e.prototype.dispose.call(this)},t}(KC),RW=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;return o.history=new IW(i.history,100),o}return OW(t,e),t.prototype.addToHistory=function(){this.value&&this.value!==this.getCurrentValue()&&this.history.add(this.value)},t.prototype.showNextValue=function(){this.history.has(this.value)||this.addToHistory();var e=this.getNextValue();e&&(e=e===this.value?this.getNextValue():e),e&&(this.value=e,Yp(this.value))},t.prototype.showPreviousValue=function(){this.history.has(this.value)||this.addToHistory();var e=this.getPreviousValue();e&&(e=e===this.value?this.getPreviousValue():e),e&&(this.value=e,Yp(this.value))},t.prototype.getCurrentValue=function(){var e=this.history.current();return e||(e=this.history.last(),this.history.next()),e},t.prototype.getPreviousValue=function(){return this.history.previous()||this.history.first()},t.prototype.getNextValue=function(){return this.history.next()||this.history.last()},t}(PW),AW=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),FW=r("defaultLabel","input"),WW=function(e){function t(t,n,i,o){var r=e.call(this)||this;r._showOptionButtons=i,r.fixFocusOnOptionClickEnabled=!0,r._onDidOptionChange=r._register(new nt),r.onDidOptionChange=r._onDidOptionChange.event,r._onKeyDown=r._register(new nt),r.onKeyDown=r._onKeyDown.event,r._onMouseDown=r._register(new nt),r.onMouseDown=r._onMouseDown.event,r._onInput=r._register(new nt),r._onKeyUp=r._register(new nt),r._onCaseSensitiveKeyDown=r._register(new nt),r.onCaseSensitiveKeyDown=r._onCaseSensitiveKeyDown.event,r._onRegexKeyDown=r._register(new nt),r.onRegexKeyDown=r._onRegexKeyDown.event,r._lastHighlightFindOptions=0,r.contextViewProvider=n,r.placeholder=o.placeholder||"",r.validation=o.validation,r.label=o.label||FW,r.inputActiveOptionBorder=o.inputActiveOptionBorder,r.inputActiveOptionBackground=o.inputActiveOptionBackground,r.inputBackground=o.inputBackground,r.inputForeground=o.inputForeground,r.inputBorder=o.inputBorder,r.inputValidationInfoBorder=o.inputValidationInfoBorder,r.inputValidationInfoBackground=o.inputValidationInfoBackground,r.inputValidationInfoForeground=o.inputValidationInfoForeground,r.inputValidationWarningBorder=o.inputValidationWarningBorder,r.inputValidationWarningBackground=o.inputValidationWarningBackground,r.inputValidationWarningForeground=o.inputValidationWarningForeground,r.inputValidationErrorBorder=o.inputValidationErrorBorder,r.inputValidationErrorBackground=o.inputValidationErrorBackground,r.inputValidationErrorForeground=o.inputValidationErrorForeground;var s=o.appendCaseSensitiveLabel||"",a=o.appendWholeWordsLabel||"",u=o.appendRegexLabel||"",l=o.history||[],c=!!o.flexibleHeight,d=!!o.flexibleWidth,h=o.flexibleMaxHeight;r.domNode=document.createElement("div"),no(r.domNode,"monaco-findInput"),r.inputBox=r._register(new RW(r.domNode,r.contextViewProvider,{placeholder:r.placeholder||"",ariaLabel:r.label||"",validationOptions:{validation:r.validation},inputBackground:r.inputBackground,inputForeground:r.inputForeground,inputBorder:r.inputBorder,inputValidationInfoBackground:r.inputValidationInfoBackground,inputValidationInfoForeground:r.inputValidationInfoForeground,inputValidationInfoBorder:r.inputValidationInfoBorder,inputValidationWarningBackground:r.inputValidationWarningBackground,inputValidationWarningForeground:r.inputValidationWarningForeground,inputValidationWarningBorder:r.inputValidationWarningBorder,inputValidationErrorBackground:r.inputValidationErrorBackground,inputValidationErrorForeground:r.inputValidationErrorForeground,inputValidationErrorBorder:r.inputValidationErrorBorder,history:l,flexibleHeight:c,flexibleWidth:d,flexibleMaxHeight:h})),r.regex=r._register(new bW({appendTitle:u,isChecked:!1,inputActiveOptionBorder:r.inputActiveOptionBorder,inputActiveOptionBackground:r.inputActiveOptionBackground})),r._register(r.regex.onChange((function(e){r._onDidOptionChange.fire(e),!e&&r.fixFocusOnOptionClickEnabled&&r.inputBox.focus(),r.validate()}))),r._register(r.regex.onKeyDown((function(e){r._onRegexKeyDown.fire(e)}))),r.wholeWords=r._register(new yW({appendTitle:a,isChecked:!1,inputActiveOptionBorder:r.inputActiveOptionBorder,inputActiveOptionBackground:r.inputActiveOptionBackground})),r._register(r.wholeWords.onChange((function(e){r._onDidOptionChange.fire(e),!e&&r.fixFocusOnOptionClickEnabled&&r.inputBox.focus(),r.validate()}))),r.caseSensitive=r._register(new _W({appendTitle:s,isChecked:!1,inputActiveOptionBorder:r.inputActiveOptionBorder,inputActiveOptionBackground:r.inputActiveOptionBackground})),r._register(r.caseSensitive.onChange((function(e){r._onDidOptionChange.fire(e),!e&&r.fixFocusOnOptionClickEnabled&&r.inputBox.focus(),r.validate()}))),r._register(r.caseSensitive.onKeyDown((function(e){r._onCaseSensitiveKeyDown.fire(e)}))),r._showOptionButtons&&(r.inputBox.paddingRight=r.caseSensitive.width()+r.wholeWords.width()+r.regex.width());var p=[r.caseSensitive.domNode,r.wholeWords.domNode,r.regex.domNode];r.onkeydown(r.domNode,(function(e){if(e.equals(15)||e.equals(17)||e.equals(9)){var t=p.indexOf(document.activeElement);if(t>=0){var n=-1;e.equals(17)?n=(t+1)%p.length:e.equals(15)&&(n=0===t?p.length-1:t-1),e.equals(9)?p[t].blur():n>=0&&p[n].focus(),Go(e,!0)}}}));var f=document.createElement("div");return f.className="controls",f.style.display=r._showOptionButtons?"block":"none",f.appendChild(r.caseSensitive.domNode),f.appendChild(r.wholeWords.domNode),f.appendChild(r.regex.domNode),r.domNode.appendChild(f),t&&t.appendChild(r.domNode),r.onkeydown(r.inputBox.inputElement,(function(e){return r._onKeyDown.fire(e)})),r.onkeyup(r.inputBox.inputElement,(function(e){return r._onKeyUp.fire(e)})),r.oninput(r.inputBox.inputElement,(function(e){return r._onInput.fire()})),r.onmousedown(r.inputBox.inputElement,(function(e){return r._onMouseDown.fire(e)})),r}return AW(t,e),t.prototype.enable=function(){oo(this.domNode,"disabled"),this.inputBox.enable(),this.regex.enable(),this.wholeWords.enable(),this.caseSensitive.enable()},t.prototype.disable=function(){no(this.domNode,"disabled"),this.inputBox.disable(),this.regex.disable(),this.wholeWords.disable(),this.caseSensitive.disable()},t.prototype.setFocusInputOnOptionClick=function(e){this.fixFocusOnOptionClickEnabled=e},t.prototype.setEnabled=function(e){e?this.enable():this.disable()},t.prototype.getValue=function(){return this.inputBox.value},t.prototype.setValue=function(e){this.inputBox.value!==e&&(this.inputBox.value=e)},t.prototype.style=function(e){this.inputActiveOptionBorder=e.inputActiveOptionBorder,this.inputActiveOptionBackground=e.inputActiveOptionBackground,this.inputBackground=e.inputBackground,this.inputForeground=e.inputForeground,this.inputBorder=e.inputBorder,this.inputValidationInfoBackground=e.inputValidationInfoBackground,this.inputValidationInfoForeground=e.inputValidationInfoForeground,this.inputValidationInfoBorder=e.inputValidationInfoBorder,this.inputValidationWarningBackground=e.inputValidationWarningBackground,this.inputValidationWarningForeground=e.inputValidationWarningForeground,this.inputValidationWarningBorder=e.inputValidationWarningBorder,this.inputValidationErrorBackground=e.inputValidationErrorBackground,this.inputValidationErrorForeground=e.inputValidationErrorForeground,this.inputValidationErrorBorder=e.inputValidationErrorBorder,this.applyStyles()},t.prototype.applyStyles=function(){if(this.domNode){var e={inputActiveOptionBorder:this.inputActiveOptionBorder,inputActiveOptionBackground:this.inputActiveOptionBackground};this.regex.style(e),this.wholeWords.style(e),this.caseSensitive.style(e);var t={inputBackground:this.inputBackground,inputForeground:this.inputForeground,inputBorder:this.inputBorder,inputValidationInfoBackground:this.inputValidationInfoBackground,inputValidationInfoForeground:this.inputValidationInfoForeground,inputValidationInfoBorder:this.inputValidationInfoBorder,inputValidationWarningBackground:this.inputValidationWarningBackground,inputValidationWarningForeground:this.inputValidationWarningForeground,inputValidationWarningBorder:this.inputValidationWarningBorder,inputValidationErrorBackground:this.inputValidationErrorBackground,inputValidationErrorForeground:this.inputValidationErrorForeground,inputValidationErrorBorder:this.inputValidationErrorBorder};this.inputBox.style(t)}},t.prototype.select=function(){this.inputBox.select()},t.prototype.focus=function(){this.inputBox.focus()},t.prototype.getCaseSensitive=function(){return this.caseSensitive.checked},t.prototype.setCaseSensitive=function(e){this.caseSensitive.checked=e},t.prototype.getWholeWords=function(){return this.wholeWords.checked},t.prototype.setWholeWords=function(e){this.wholeWords.checked=e},t.prototype.getRegex=function(){return this.regex.checked},t.prototype.setRegex=function(e){this.regex.checked=e,this.validate()},t.prototype.focusOnCaseSensitive=function(){this.caseSensitive.focus()},t.prototype.highlightFindOptions=function(){oo(this.domNode,"highlight-"+this._lastHighlightFindOptions),this._lastHighlightFindOptions=1-this._lastHighlightFindOptions,no(this.domNode,"highlight-"+this._lastHighlightFindOptions)},t.prototype.validate=function(){this.inputBox.validate()},t.prototype.clearMessage=function(){this.inputBox.hideMessage()},t}(KC),VW=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),BW=r("defaultLabel","input"),HW=r("label.preserveCaseCheckbox","Preserve Case"),zW=function(e){function t(t){return e.call(this,{actionClassName:"codicon-preserve-case",title:HW+t.appendTitle,isChecked:t.isChecked,inputActiveOptionBorder:t.inputActiveOptionBorder,inputActiveOptionBackground:t.inputActiveOptionBackground})||this}return VW(t,e),t}(pW),jW=function(e){function t(t,n,i,o){var r=e.call(this)||this;r._showOptionButtons=i,r.fixFocusOnOptionClickEnabled=!0,r.cachedOptionsWidth=0,r._onDidOptionChange=r._register(new nt),r.onDidOptionChange=r._onDidOptionChange.event,r._onKeyDown=r._register(new nt),r.onKeyDown=r._onKeyDown.event,r._onMouseDown=r._register(new nt),r._onInput=r._register(new nt),r._onKeyUp=r._register(new nt),r._onPreserveCaseKeyDown=r._register(new nt),r.onPreserveCaseKeyDown=r._onPreserveCaseKeyDown.event,r.contextViewProvider=n,r.placeholder=o.placeholder||"",r.validation=o.validation,r.label=o.label||BW,r.inputActiveOptionBorder=o.inputActiveOptionBorder,r.inputActiveOptionBackground=o.inputActiveOptionBackground,r.inputBackground=o.inputBackground,r.inputForeground=o.inputForeground,r.inputBorder=o.inputBorder,r.inputValidationInfoBorder=o.inputValidationInfoBorder,r.inputValidationInfoBackground=o.inputValidationInfoBackground,r.inputValidationInfoForeground=o.inputValidationInfoForeground,r.inputValidationWarningBorder=o.inputValidationWarningBorder,r.inputValidationWarningBackground=o.inputValidationWarningBackground,r.inputValidationWarningForeground=o.inputValidationWarningForeground,r.inputValidationErrorBorder=o.inputValidationErrorBorder,r.inputValidationErrorBackground=o.inputValidationErrorBackground,r.inputValidationErrorForeground=o.inputValidationErrorForeground;var s=o.history||[],a=!!o.flexibleHeight,u=!!o.flexibleWidth,l=o.flexibleMaxHeight;r.domNode=document.createElement("div"),no(r.domNode,"monaco-findInput"),r.inputBox=r._register(new RW(r.domNode,r.contextViewProvider,{ariaLabel:r.label||"",placeholder:r.placeholder||"",validationOptions:{validation:r.validation},inputBackground:r.inputBackground,inputForeground:r.inputForeground,inputBorder:r.inputBorder,inputValidationInfoBackground:r.inputValidationInfoBackground,inputValidationInfoForeground:r.inputValidationInfoForeground,inputValidationInfoBorder:r.inputValidationInfoBorder,inputValidationWarningBackground:r.inputValidationWarningBackground,inputValidationWarningForeground:r.inputValidationWarningForeground,inputValidationWarningBorder:r.inputValidationWarningBorder,inputValidationErrorBackground:r.inputValidationErrorBackground,inputValidationErrorForeground:r.inputValidationErrorForeground,inputValidationErrorBorder:r.inputValidationErrorBorder,history:s,flexibleHeight:a,flexibleWidth:u,flexibleMaxHeight:l})),r.preserveCase=r._register(new zW({appendTitle:"",isChecked:!1,inputActiveOptionBorder:r.inputActiveOptionBorder,inputActiveOptionBackground:r.inputActiveOptionBackground})),r._register(r.preserveCase.onChange((function(e){r._onDidOptionChange.fire(e),!e&&r.fixFocusOnOptionClickEnabled&&r.inputBox.focus(),r.validate()}))),r._register(r.preserveCase.onKeyDown((function(e){r._onPreserveCaseKeyDown.fire(e)}))),r._showOptionButtons?r.cachedOptionsWidth=r.preserveCase.width():r.cachedOptionsWidth=0;var c=[r.preserveCase.domNode];r.onkeydown(r.domNode,(function(e){if(e.equals(15)||e.equals(17)||e.equals(9)){var t=c.indexOf(document.activeElement);if(t>=0){var n=-1;e.equals(17)?n=(t+1)%c.length:e.equals(15)&&(n=0===t?c.length-1:t-1),e.equals(9)?c[t].blur():n>=0&&c[n].focus(),Go(e,!0)}}}));var d=document.createElement("div");return d.className="controls",d.style.display=r._showOptionButtons?"block":"none",d.appendChild(r.preserveCase.domNode),r.domNode.appendChild(d),t&&t.appendChild(r.domNode),r.onkeydown(r.inputBox.inputElement,(function(e){return r._onKeyDown.fire(e)})),r.onkeyup(r.inputBox.inputElement,(function(e){return r._onKeyUp.fire(e)})),r.oninput(r.inputBox.inputElement,(function(e){return r._onInput.fire()})),r.onmousedown(r.inputBox.inputElement,(function(e){return r._onMouseDown.fire(e)})),r}return VW(t,e),t.prototype.enable=function(){oo(this.domNode,"disabled"),this.inputBox.enable(),this.preserveCase.enable()},t.prototype.disable=function(){no(this.domNode,"disabled"),this.inputBox.disable(),this.preserveCase.disable()},t.prototype.setEnabled=function(e){e?this.enable():this.disable()},t.prototype.style=function(e){this.inputActiveOptionBorder=e.inputActiveOptionBorder,this.inputActiveOptionBackground=e.inputActiveOptionBackground,this.inputBackground=e.inputBackground,this.inputForeground=e.inputForeground,this.inputBorder=e.inputBorder,this.inputValidationInfoBackground=e.inputValidationInfoBackground,this.inputValidationInfoForeground=e.inputValidationInfoForeground,this.inputValidationInfoBorder=e.inputValidationInfoBorder,this.inputValidationWarningBackground=e.inputValidationWarningBackground,this.inputValidationWarningForeground=e.inputValidationWarningForeground,this.inputValidationWarningBorder=e.inputValidationWarningBorder,this.inputValidationErrorBackground=e.inputValidationErrorBackground,this.inputValidationErrorForeground=e.inputValidationErrorForeground,this.inputValidationErrorBorder=e.inputValidationErrorBorder,this.applyStyles()},t.prototype.applyStyles=function(){if(this.domNode){var e={inputActiveOptionBorder:this.inputActiveOptionBorder,inputActiveOptionBackground:this.inputActiveOptionBackground};this.preserveCase.style(e);var t={inputBackground:this.inputBackground,inputForeground:this.inputForeground,inputBorder:this.inputBorder,inputValidationInfoBackground:this.inputValidationInfoBackground,inputValidationInfoForeground:this.inputValidationInfoForeground,inputValidationInfoBorder:this.inputValidationInfoBorder,inputValidationWarningBackground:this.inputValidationWarningBackground,inputValidationWarningForeground:this.inputValidationWarningForeground,inputValidationWarningBorder:this.inputValidationWarningBorder,inputValidationErrorBackground:this.inputValidationErrorBackground,inputValidationErrorForeground:this.inputValidationErrorForeground,inputValidationErrorBorder:this.inputValidationErrorBorder};this.inputBox.style(t)}},t.prototype.select=function(){this.inputBox.select()},t.prototype.focus=function(){this.inputBox.focus()},t.prototype.getPreserveCase=function(){return this.preserveCase.checked},t.prototype.setPreserveCase=function(e){this.preserveCase.checked=e},t.prototype.focusOnPreserve=function(){this.preserveCase.focus()},t.prototype.validate=function(){this.inputBox&&this.inputBox.validate()},Object.defineProperty(t.prototype,"width",{set:function(e){this.inputBox.paddingRight=this.cachedOptionsWidth,this.inputBox.width=e,this.domNode.style.width=e+"px"},enumerable:!0,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t}(KC),UW=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),KW=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},qW=function(e,t){return function(n,i){t(n,i,e)}};function GW(e,t){return e.getContext(document.activeElement).getValue(t)}function ZW(e,t){var n=function(e,t){return e.createScoped(t.target)}(e,t);return function(e,t,n){new Kh(n,t).bindTo(e)}(n,t,"historyNavigationWidget"),{scopedContextKeyService:n,historyNavigationEnablement:new Kh("historyNavigationEnabled",!0).bindTo(n)}}var YW=function(e){function t(t,n,i,o,r){void 0===r&&(r=!1);var s=e.call(this,t,n,r,i)||this;return s._register(ZW(o,{target:s.inputBox.element,historyNavigator:s.inputBox}).scopedContextKeyService),s}return UW(t,e),t=KW([qW(3,qh)],t)}(WW),XW=function(e){function t(t,n,i,o,r){void 0===r&&(r=!1);var s=e.call(this,t,n,r,i)||this;return s._register(ZW(o,{target:s.inputBox.element,historyNavigator:s.inputBox}).scopedContextKeyService),s}return UW(t,e),t=KW([qW(3,qh)],t)}(jW);Zh.registerCommandAndKeybindingRule({id:"history.showPrevious",weight:200,when:Rh.and(Rh.has("historyNavigationWidget"),Rh.equals("historyNavigationEnabled",!0)),primary:16,secondary:[528],handler:function(e,t){var n=GW(e.get(qh),"historyNavigationWidget");n&&n.historyNavigator.showPreviousValue()}}),Zh.registerCommandAndKeybindingRule({id:"history.showNext",weight:200,when:Rh.and(Rh.has("historyNavigationWidget"),Rh.equals("historyNavigationEnabled",!0)),primary:18,secondary:[530],handler:function(e,t){var n=GW(e.get(qh),"historyNavigationWidget");n&&n.historyNavigator.showNextValue()}});var $W=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),QW=r("label.find","Find"),JW=r("placeholder.find","Find"),eV=r("label.previousMatchButton","Previous match"),tV=r("label.nextMatchButton","Next match"),nV=r("label.toggleSelectionFind","Find in selection"),iV=r("label.closeButton","Close"),oV=r("label.replace","Replace"),rV=r("placeholder.replace","Replace"),sV=r("label.replaceButton","Replace"),aV=r("label.replaceAllButton","Replace All"),uV=r("label.toggleReplaceButton","Toggle Replace mode"),lV=r("title.matchesCountLimit","Only the first {0} results are highlighted, but all find operations work on the entire text.",19999),cV=r("label.matchesLocation","{0} of {1}"),dV=r("label.noResults","No Results"),hV=69,pV=_?256:2048,fV=function(e){this.afterLineNumber=e,this.heightInPx=33,this.suppressMouseDown=!1,this.domNode=document.createElement("div"),this.domNode.className="dock-find-viewzone"};function gV(e,t,n){var i=!!t.match(/\n/);n&&i&&n.selectionStart>0&&e.stopPropagation()}function mV(e,t,n){var i=!!t.match(/\n/);n&&i&&n.selectionEnd<n.value.length&&e.stopPropagation()}var vV=function(e){function t(t,n,i,o,r,s,a,u,l){var c=e.call(this)||this;return c._cachedHeight=null,c._codeEditor=t,c._controller=n,c._state=i,c._contextViewProvider=o,c._keybindingService=r,c._contextKeyService=s,c._storageService=u,c._notificationService=l,c._ctrlEnterReplaceAllWarningPrompted=!!u.getBoolean("ctrlEnterReplaceAll.windows.donotask",0),c._isVisible=!1,c._isReplaceVisible=!1,c._ignoreChangeEvent=!1,c._updateHistoryDelayer=new fi(500),c._register(We((function(){return c._updateHistoryDelayer.cancel()}))),c._register(c._state.onFindReplaceStateChange((function(e){return c._onStateChanged(e)}))),c._buildDomNode(),c._updateButtons(),c._tryUpdateWidgetWidth(),c._findInput.inputBox.layout(),c._register(c._codeEditor.onDidChangeConfiguration((function(e){if(e.hasChanged(68)&&(c._codeEditor.getOption(68)&&c._state.change({isReplaceRevealed:!1},!1),c._updateButtons()),e.hasChanged(107)&&c._tryUpdateWidgetWidth(),e.hasChanged(2)&&c.updateAccessibilitySupport(),e.hasChanged(28)){var t=c._codeEditor.getOption(28).addExtraSpaceOnTop;t&&!c._viewZone&&(c._viewZone=new fV(0),c._showViewZone()),!t&&c._viewZone&&c._removeViewZone()}}))),c.updateAccessibilitySupport(),c._register(c._codeEditor.onDidChangeCursorSelection((function(){c._isVisible&&c._updateToggleSelectionFindButton()}))),c._register(c._codeEditor.onDidFocusEditorWidget((function(){if(c._isVisible){var e=c._controller.getGlobalBufferTerm();e&&e!==c._state.searchString&&(c._state.change({searchString:e},!0),c._findInput.select())}}))),c._findInputFocused=jF.bindTo(s),c._findFocusTracker=c._register(Yo(c._findInput.inputBox.inputElement)),c._register(c._findFocusTracker.onDidFocus((function(){c._findInputFocused.set(!0),c._updateSearchScope()}))),c._register(c._findFocusTracker.onDidBlur((function(){c._findInputFocused.set(!1)}))),c._replaceInputFocused=UF.bindTo(s),c._replaceFocusTracker=c._register(Yo(c._replaceInput.inputBox.inputElement)),c._register(c._replaceFocusTracker.onDidFocus((function(){c._replaceInputFocused.set(!0),c._updateSearchScope()}))),c._register(c._replaceFocusTracker.onDidBlur((function(){c._replaceInputFocused.set(!1)}))),c._codeEditor.addOverlayWidget(c),c._codeEditor.getOption(28).addExtraSpaceOnTop&&(c._viewZone=new fV(0)),c._applyTheme(a.getTheme()),c._register(a.onThemeChange(c._applyTheme.bind(c))),c._register(c._codeEditor.onDidChangeModel((function(){c._isVisible&&(c._viewZoneId=void 0)}))),c._register(c._codeEditor.onDidScrollChange((function(e){e.scrollTopChanged?c._layoutViewZone():setTimeout((function(){c._layoutViewZone()}),0)}))),c}return $W(t,e),t.prototype.getId=function(){return t.ID},t.prototype.getDomNode=function(){return this._domNode},t.prototype.getPosition=function(){return this._isVisible?{preference:0}:null},t.prototype._onStateChanged=function(e){if(e.searchString){try{this._ignoreChangeEvent=!0,this._findInput.setValue(this._state.searchString)}finally{this._ignoreChangeEvent=!1}this._updateButtons()}if(e.replaceString&&(this._replaceInput.inputBox.value=this._state.replaceString),e.isRevealed&&(this._state.isRevealed?this._reveal():this._hide(!0)),e.isReplaceRevealed&&(this._state.isReplaceRevealed?this._codeEditor.getOption(68)||this._isReplaceVisible||(this._isReplaceVisible=!0,this._replaceInput.width=To(this._findInput.domNode),this._updateButtons(),this._replaceInput.inputBox.layout()):this._isReplaceVisible&&(this._isReplaceVisible=!1,this._updateButtons())),(e.isRevealed||e.isReplaceRevealed)&&(this._state.isRevealed||this._state.isReplaceRevealed)&&this._tryUpdateHeight()&&this._showViewZone(),e.isRegex&&this._findInput.setRegex(this._state.isRegex),e.wholeWord&&this._findInput.setWholeWords(this._state.wholeWord),e.matchCase&&this._findInput.setCaseSensitive(this._state.matchCase),e.searchScope&&(this._state.searchScope?this._toggleSelectionFind.checked=!0:this._toggleSelectionFind.checked=!1,this._updateToggleSelectionFindButton()),e.searchString||e.matchesCount||e.matchesPosition){var t=this._state.searchString.length>0&&0===this._state.matchesCount;so(this._domNode,"no-results",t),this._updateMatchesCount(),this._updateButtons()}(e.searchString||e.currentMatch)&&this._layoutViewZone(),e.updateHistory&&this._delayedUpdateHistory()},t.prototype._delayedUpdateHistory=function(){this._updateHistoryDelayer.trigger(this._updateHistory.bind(this))},t.prototype._updateHistory=function(){this._state.searchString&&this._findInput.inputBox.addToHistory(),this._state.replaceString&&this._replaceInput.inputBox.addToHistory()},t.prototype._updateMatchesCount=function(){var e;if(this._matchesCount.style.minWidth=hV+"px",this._state.matchesCount>=19999?this._matchesCount.title=lV:this._matchesCount.title="",this._matchesCount.firstChild&&this._matchesCount.removeChild(this._matchesCount.firstChild),this._state.matchesCount>0){var t=String(this._state.matchesCount);this._state.matchesCount>=19999&&(t+="+");var n=String(this._state.matchesPosition);"0"===n&&(n="?"),e=pr(cV,n,t)}else e=dV;this._matchesCount.appendChild(document.createTextNode(e)),Zp(this._getAriaLabel(e,this._state.currentMatch,this._state.searchString),!0),hV=Math.max(hV,this._matchesCount.clientWidth)},t.prototype._getAriaLabel=function(e,t,n){return e===dV?""===n?r("ariaSearchNoResultEmpty","{0} found",e):r("ariaSearchNoResult","{0} found for {1}",e,n):t?r("ariaSearchNoResultWithLineNum","{0} found for {1} at {2}",e,n,t.startLineNumber+":"+t.startColumn):r("ariaSearchNoResultWithLineNumNoCurrentMatch","{0} found for {1}",e,n)},t.prototype._updateToggleSelectionFindButton=function(){var e=this._codeEditor.getSelection(),t=!!e&&(e.startLineNumber!==e.endLineNumber||e.startColumn!==e.endColumn),n=this._toggleSelectionFind.checked;this._isVisible&&(n||t)?this._toggleSelectionFind.enable():this._toggleSelectionFind.disable()},t.prototype._updateButtons=function(){this._findInput.setEnabled(this._isVisible),this._replaceInput.setEnabled(this._isVisible&&this._isReplaceVisible),this._updateToggleSelectionFindButton(),this._closeBtn.setEnabled(this._isVisible);var e=this._state.searchString.length>0,t=!!this._state.matchesCount;this._prevBtn.setEnabled(this._isVisible&&e&&t),this._nextBtn.setEnabled(this._isVisible&&e&&t),this._replaceBtn.setEnabled(this._isVisible&&this._isReplaceVisible&&e),this._replaceAllBtn.setEnabled(this._isVisible&&this._isReplaceVisible&&e),so(this._domNode,"replaceToggled",this._isReplaceVisible),this._toggleReplaceBtn.toggleClass("codicon-chevron-right",!this._isReplaceVisible),this._toggleReplaceBtn.toggleClass("codicon-chevron-down",this._isReplaceVisible),this._toggleReplaceBtn.setExpanded(this._isReplaceVisible);var n=!this._codeEditor.getOption(68);this._toggleReplaceBtn.setEnabled(this._isVisible&&n)},t.prototype._reveal=function(){var e=this;if(!this._isVisible){this._isVisible=!0;var t=this._codeEditor.getSelection();switch(this._codeEditor.getOption(28).autoFindInSelection){case"always":this._toggleSelectionFind.checked=!0;break;case"never":this._toggleSelectionFind.checked=!1;break;case"multiline":var n=!!t&&t.startLineNumber!==t.endLineNumber;this._toggleSelectionFind.checked=n}this._tryUpdateWidgetWidth(),this._updateButtons(),setTimeout((function(){no(e._domNode,"visible"),e._domNode.setAttribute("aria-hidden","false")}),0),setTimeout((function(){e._findInput.validate()}),200),this._codeEditor.layoutOverlayWidget(this);var i=!0;if(this._codeEditor.getOption(28).seedSearchStringFromSelection&&t){var o=this._codeEditor.getDomNode();if(o){var r=Oo(o),s=this._codeEditor.getScrolledVisiblePosition(t.getStartPosition()),a=r.left+(s?s.left:0),u=s?s.top:0;if(this._viewZone&&u<this._viewZone.heightInPx){t.endLineNumber>t.startLineNumber&&(i=!1);var l=Io(this._domNode).left;a>l&&(i=!1);var c=this._codeEditor.getScrolledVisiblePosition(t.getEndPosition());r.left+(c?c.left:0)>l&&(i=!1)}}}this._showViewZone(i)}},t.prototype._hide=function(e){this._isVisible&&(this._isVisible=!1,this._updateButtons(),oo(this._domNode,"visible"),this._domNode.setAttribute("aria-hidden","true"),this._findInput.clearMessage(),e&&this._codeEditor.focus(),this._codeEditor.layoutOverlayWidget(this),this._removeViewZone())},t.prototype._layoutViewZone=function(){var e=this;if(this._codeEditor.getOption(28).addExtraSpaceOnTop){if(this._isVisible){var t=this._viewZone;void 0===this._viewZoneId&&t&&this._codeEditor.changeViewZones((function(n){t.heightInPx=e._getHeight(),e._viewZoneId=n.addZone(t),e._codeEditor.setScrollTop(e._codeEditor.getScrollTop()+t.heightInPx)}))}}else this._removeViewZone()},t.prototype._showViewZone=function(e){var t=this;if((void 0===e&&(e=!0),this._isVisible)&&this._codeEditor.getOption(28).addExtraSpaceOnTop){void 0===this._viewZone&&(this._viewZone=new fV(0));var n=this._viewZone;this._codeEditor.changeViewZones((function(i){if(void 0!==t._viewZoneId){var o=t._getHeight();if(o===n.heightInPx)return;var r=o-n.heightInPx;return n.heightInPx=o,i.layoutZone(t._viewZoneId),void(e&&t._codeEditor.setScrollTop(t._codeEditor.getScrollTop()+r))}r=t._getHeight();n.heightInPx=r,t._viewZoneId=i.addZone(n),e&&t._codeEditor.setScrollTop(t._codeEditor.getScrollTop()+r)}))}},t.prototype._removeViewZone=function(){var e=this;this._codeEditor.changeViewZones((function(t){void 0!==e._viewZoneId&&(t.removeZone(e._viewZoneId),e._viewZoneId=void 0,e._viewZone&&(e._codeEditor.setScrollTop(e._codeEditor.getScrollTop()-e._viewZone.heightInPx),e._viewZone=void 0))}))},t.prototype._applyTheme=function(e){var t={inputActiveOptionBorder:e.getColor(B_),inputActiveOptionBackground:e.getColor(H_),inputBackground:e.getColor(F_),inputForeground:e.getColor(W_),inputBorder:e.getColor(V_),inputValidationInfoBackground:e.getColor(z_),inputValidationInfoForeground:e.getColor(j_),inputValidationInfoBorder:e.getColor(U_),inputValidationWarningBackground:e.getColor(K_),inputValidationWarningForeground:e.getColor(q_),inputValidationWarningBorder:e.getColor(G_),inputValidationErrorBackground:e.getColor(Z_),inputValidationErrorForeground:e.getColor(Y_),inputValidationErrorBorder:e.getColor(X_)};this._findInput.style(t),this._replaceInput.style(t),this._toggleSelectionFind.style(t)},t.prototype._tryUpdateWidgetWidth=function(){if(this._isVisible&&$i(this._domNode)){var e=this._codeEditor.getLayoutInfo();if(e.contentWidth<=0)no(this._domNode,"hiddenEditor");else{to(this._domNode,"hiddenEditor")&&oo(this._domNode,"hiddenEditor");var t=e.width,n=e.minimapWidth,i=!1,o=!1,r=!1;if(this._resized)if(To(this._domNode)>419)return this._domNode.style.maxWidth=t-28-n-15+"px",void(this._replaceInput.width=To(this._findInput.domNode));if(447+n>=t&&(o=!0),447+n-hV>=t&&(r=!0),447+n-hV>=t+50&&(i=!0),so(this._domNode,"collapsed-find-widget",i),so(this._domNode,"narrow-find-widget",r),so(this._domNode,"reduced-find-widget",o),r||i||(this._domNode.style.maxWidth=t-28-n-15+"px"),this._resized){this._findInput.inputBox.layout();var s=this._findInput.inputBox.element.clientWidth;s>0&&(this._replaceInput.width=s)}else this._isReplaceVisible&&(this._replaceInput.width=To(this._findInput.domNode))}}},t.prototype._getHeight=function(){var e=0;return e+=4,e+=this._findInput.inputBox.height+2,this._isReplaceVisible&&(e+=4,e+=this._replaceInput.inputBox.height+2),e+=4},t.prototype._tryUpdateHeight=function(){var e=this._getHeight();return(null===this._cachedHeight||this._cachedHeight!==e)&&(this._cachedHeight=e,this._domNode.style.height=e+"px",!0)},t.prototype.focusFindInput=function(){this._findInput.select(),this._findInput.focus()},t.prototype.focusReplaceInput=function(){this._replaceInput.select(),this._replaceInput.focus()},t.prototype.highlightFindOptions=function(){this._findInput.highlightFindOptions()},t.prototype._updateSearchScope=function(){if(this._codeEditor.hasModel()&&this._toggleSelectionFind.checked){var e=this._codeEditor.getSelection();1===e.endColumn&&e.endLineNumber>e.startLineNumber&&(e=e.setEndPosition(e.endLineNumber-1,this._codeEditor.getModel().getLineMaxColumn(e.endLineNumber-1)));var t=this._state.currentMatch;e.startLineNumber!==e.endLineNumber&&(wn.equalsRange(e,t)||this._state.change({searchScope:e},!0))}},t.prototype._onFindInputMouseDown=function(e){e.middleButton&&e.stopPropagation()},t.prototype._onFindInputKeyDown=function(e){return e.equals(3|pV)?(this._findInput.inputBox.insertAtCursor("\n"),void e.preventDefault()):e.equals(2)?(this._isReplaceVisible?this._replaceInput.focus():this._findInput.focusOnCaseSensitive(),void e.preventDefault()):e.equals(2066)?(this._codeEditor.focus(),void e.preventDefault()):e.equals(16)?gV(e,this._findInput.getValue(),this._findInput.domNode.querySelector("textarea")):e.equals(18)?mV(e,this._findInput.getValue(),this._findInput.domNode.querySelector("textarea")):void 0},t.prototype._onReplaceInputKeyDown=function(e){return e.equals(3|pV)?(v&&b&&!this._ctrlEnterReplaceAllWarningPrompted&&(this._notificationService.info(r("ctrlEnter.keybindingChanged","Ctrl+Enter now inserts line break instead of replacing all. You can modify the keybinding for editor.action.replaceAll to override this behavior.")),this._ctrlEnterReplaceAllWarningPrompted=!0,this._storageService.store("ctrlEnterReplaceAll.windows.donotask",!0,0)),this._replaceInput.inputBox.insertAtCursor("\n"),void e.preventDefault()):e.equals(2)?(this._findInput.focusOnCaseSensitive(),void e.preventDefault()):e.equals(1026)?(this._findInput.focus(),void e.preventDefault()):e.equals(2066)?(this._codeEditor.focus(),void e.preventDefault()):e.equals(16)?gV(e,this._replaceInput.inputBox.value,this._replaceInput.inputBox.element.querySelector("textarea")):e.equals(18)?mV(e,this._replaceInput.inputBox.value,this._replaceInput.inputBox.element.querySelector("textarea")):void 0},t.prototype.getHorizontalSashTop=function(e){return 0},t.prototype.getHorizontalSashLeft=function(e){return 0},t.prototype.getHorizontalSashWidth=function(e){return 500},t.prototype._keybindingLabelFor=function(e){var t=this._keybindingService.lookupKeybinding(e);return t?" ("+t.getLabel()+")":""},t.prototype._buildDomNode=function(){var e=this;this._findInput=this._register(new YW(null,this._contextViewProvider,{width:221,label:QW,placeholder:JW,appendCaseSensitiveLabel:this._keybindingLabelFor(iW),appendWholeWordsLabel:this._keybindingLabelFor(oW),appendRegexLabel:this._keybindingLabelFor(rW),validation:function(t){if(0===t.length||!e._findInput.getRegex())return null;try{return new RegExp(t),null}catch(e){return{content:e.message}}},flexibleHeight:!0,flexibleWidth:!0,flexibleMaxHeight:118},this._contextKeyService,!0)),this._findInput.setRegex(!!this._state.isRegex),this._findInput.setCaseSensitive(!!this._state.matchCase),this._findInput.setWholeWords(!!this._state.wholeWord),this._register(this._findInput.onKeyDown((function(t){return e._onFindInputKeyDown(t)}))),this._register(this._findInput.inputBox.onDidChange((function(){e._ignoreChangeEvent||e._state.change({searchString:e._findInput.getValue()},!0)}))),this._register(this._findInput.onDidOptionChange((function(){e._state.change({isRegex:e._findInput.getRegex(),wholeWord:e._findInput.getWholeWords(),matchCase:e._findInput.getCaseSensitive()},!0)}))),this._register(this._findInput.onCaseSensitiveKeyDown((function(t){t.equals(1026)&&e._isReplaceVisible&&(e._replaceInput.focus(),t.preventDefault())}))),this._register(this._findInput.onRegexKeyDown((function(t){t.equals(2)&&e._isReplaceVisible&&(e._replaceInput.focusOnPreserve(),t.preventDefault())}))),this._register(this._findInput.inputBox.onDidHeightChange((function(t){e._tryUpdateHeight()&&e._showViewZone()}))),y&&this._register(this._findInput.onMouseDown((function(t){return e._onFindInputMouseDown(t)}))),this._matchesCount=document.createElement("div"),this._matchesCount.className="matchesCount",this._updateMatchesCount(),this._prevBtn=this._register(new _V({label:eV+this._keybindingLabelFor(QF),className:"codicon codicon-arrow-up",onTrigger:function(){e._codeEditor.getAction(QF).run().then(void 0,De)}})),this._nextBtn=this._register(new _V({label:tV+this._keybindingLabelFor($F),className:"codicon codicon-arrow-down",onTrigger:function(){e._codeEditor.getAction($F).run().then(void 0,De)}}));var t=document.createElement("div");t.className="find-part",t.appendChild(this._findInput.domNode);var n=document.createElement("div");n.className="find-actions",t.appendChild(n),n.appendChild(this._matchesCount),n.appendChild(this._prevBtn.domNode),n.appendChild(this._nextBtn.domNode),this._toggleSelectionFind=this._register(new pW({actionClassName:"codicon codicon-selection",title:nV+this._keybindingLabelFor(sW),isChecked:!1})),this._register(this._toggleSelectionFind.onChange((function(){if(e._toggleSelectionFind.checked){if(e._codeEditor.hasModel()){var t=e._codeEditor.getSelection();1===t.endColumn&&t.endLineNumber>t.startLineNumber&&(t=t.setEndPosition(t.endLineNumber-1,e._codeEditor.getModel().getLineMaxColumn(t.endLineNumber-1))),t.isEmpty()||e._state.change({searchScope:t},!0)}}else e._state.change({searchScope:null},!0)}))),n.appendChild(this._toggleSelectionFind.domNode),this._closeBtn=this._register(new _V({label:iV+this._keybindingLabelFor(nW),className:"codicon codicon-close",onTrigger:function(){e._state.change({isRevealed:!1,searchScope:null},!1)},onKeyDown:function(t){t.equals(2)&&e._isReplaceVisible&&(e._replaceBtn.isEnabled()?e._replaceBtn.focus():e._codeEditor.focus(),t.preventDefault())}})),n.appendChild(this._closeBtn.domNode),this._replaceInput=this._register(new XW(null,void 0,{label:oV,placeholder:rV,history:[],flexibleHeight:!0,flexibleWidth:!0,flexibleMaxHeight:118},this._contextKeyService,!0)),this._replaceInput.setPreserveCase(!!this._state.preserveCase),this._register(this._replaceInput.onKeyDown((function(t){return e._onReplaceInputKeyDown(t)}))),this._register(this._replaceInput.inputBox.onDidChange((function(){e._state.change({replaceString:e._replaceInput.inputBox.value},!1)}))),this._register(this._replaceInput.inputBox.onDidHeightChange((function(t){e._isReplaceVisible&&e._tryUpdateHeight()&&e._showViewZone()}))),this._register(this._replaceInput.onDidOptionChange((function(){e._state.change({preserveCase:e._replaceInput.getPreserveCase()},!0)}))),this._register(this._replaceInput.onPreserveCaseKeyDown((function(t){t.equals(2)&&(e._prevBtn.isEnabled()?e._prevBtn.focus():e._nextBtn.isEnabled()?e._nextBtn.focus():e._toggleSelectionFind.enabled?e._toggleSelectionFind.focus():e._closeBtn.isEnabled()&&e._closeBtn.focus(),t.preventDefault())}))),this._replaceBtn=this._register(new _V({label:sV+this._keybindingLabelFor(aW),className:"codicon codicon-replace",onTrigger:function(){e._controller.replace()},onKeyDown:function(t){t.equals(1026)&&(e._closeBtn.focus(),t.preventDefault())}})),this._replaceAllBtn=this._register(new _V({label:aV+this._keybindingLabelFor(uW),className:"codicon codicon-replace-all",onTrigger:function(){e._controller.replaceAll()}}));var i=document.createElement("div");i.className="replace-part",i.appendChild(this._replaceInput.domNode);var o=document.createElement("div");o.className="replace-actions",i.appendChild(o),o.appendChild(this._replaceBtn.domNode),o.appendChild(this._replaceAllBtn.domNode),this._toggleReplaceBtn=this._register(new _V({label:uV,className:"codicon toggle left",onTrigger:function(){e._state.change({isReplaceRevealed:!e._isReplaceVisible},!1),e._isReplaceVisible&&(e._replaceInput.width=To(e._findInput.domNode),e._replaceInput.inputBox.layout()),e._showViewZone()}})),this._toggleReplaceBtn.toggleClass("codicon-chevron-down",this._isReplaceVisible),this._toggleReplaceBtn.toggleClass("codicon-chevron-right",!this._isReplaceVisible),this._toggleReplaceBtn.setExpanded(this._isReplaceVisible),this._domNode=document.createElement("div"),this._domNode.className="editor-widget find-widget",this._domNode.setAttribute("aria-hidden","true"),this._domNode.style.width="419px",this._domNode.appendChild(this._toggleReplaceBtn.domNode),this._domNode.appendChild(t),this._domNode.appendChild(i),this._resizeSash=new Yx(this._domNode,this,{orientation:0}),this._resized=!1;var r=419;this._register(this._resizeSash.onDidStart((function(){r=To(e._domNode)}))),this._register(this._resizeSash.onDidChange((function(t){e._resized=!0;var n=r+t.startX-t.currentX;n<419||(n>(parseFloat(No(e._domNode).maxWidth)||0)||(e._domNode.style.width=n+"px",e._isReplaceVisible&&(e._replaceInput.width=To(e._findInput.domNode)),e._findInput.inputBox.layout(),e._tryUpdateHeight()))}))),this._register(this._resizeSash.onDidReset((function(){var t=To(e._domNode);if(!(t<419)){var n=419;if(!e._resized||419===t){var i=e._codeEditor.getLayoutInfo();n=i.width-28-i.minimapWidth-15,e._resized=!0}e._domNode.style.width=n+"px",e._isReplaceVisible&&(e._replaceInput.width=To(e._findInput.domNode)),e._findInput.inputBox.layout()}})))},t.prototype.updateAccessibilitySupport=function(){var e=this._codeEditor.getOption(2);this._findInput.setFocusInputOnOptionClick(2!==e)},t.ID="editor.contrib.findWidget",t}(KC),_V=function(e){function t(t){var n=e.call(this)||this;return n._opts=t,n._domNode=document.createElement("div"),n._domNode.title=n._opts.label,n._domNode.tabIndex=0,n._domNode.className="button "+n._opts.className,n._domNode.setAttribute("role","button"),n._domNode.setAttribute("aria-label",n._opts.label),n.onclick(n._domNode,(function(e){n._opts.onTrigger(),e.preventDefault()})),n.onkeydown(n._domNode,(function(e){if(e.equals(10)||e.equals(3))return n._opts.onTrigger(),void e.preventDefault();n._opts.onKeyDown&&n._opts.onKeyDown(e)})),n}return $W(t,e),Object.defineProperty(t.prototype,"domNode",{get:function(){return this._domNode},enumerable:!0,configurable:!0}),t.prototype.isEnabled=function(){return this._domNode.tabIndex>=0},t.prototype.focus=function(){this._domNode.focus()},t.prototype.setEnabled=function(e){so(this._domNode,"disabled",!e),this._domNode.setAttribute("aria-disabled",String(!e)),this._domNode.tabIndex=e?0:-1},t.prototype.setExpanded=function(e){this._domNode.setAttribute("aria-expanded",String(!!e))},t.prototype.toggleClass=function(e,t){so(this._domNode,e,t)},t}(KC);yg((function(e,t){var n=function(e,n){n&&t.addRule(".monaco-editor "+e+" { background-color: "+n+"; }")};n(".findMatch",e.getColor(ky)),n(".currentFindMatch",e.getColor(Ny)),n(".findScope",e.getColor(Ey)),n(".find-widget",e.getColor(_y));var i=e.getColor(A_);i&&t.addRule(".monaco-editor .find-widget { box-shadow: 0 2px 8px "+i+"; }");var o=e.getColor(Oy);o&&t.addRule(".monaco-editor .findMatch { border: 1px "+("hc"===e.type?"dotted":"solid")+" "+o+"; box-sizing: border-box; }");var r=e.getColor(Iy);r&&t.addRule(".monaco-editor .currentFindMatch { border: 2px solid "+r+"; padding: 1px; box-sizing: border-box; }");var s=e.getColor(My);s&&t.addRule(".monaco-editor .findScope { border: 1px "+("hc"===e.type?"dashed":"solid")+" "+s+"; }");var a=e.getColor(M_);a&&t.addRule(".monaco-editor .find-widget { border: 1px solid "+a+"; }");var u=e.getColor(yy);u&&t.addRule(".monaco-editor .find-widget { color: "+u+"; }");var l=e.getColor(I_);l&&t.addRule(".monaco-editor .find-widget.no-results .matchesCount { color: "+l+"; }");var c=e.getColor(wy);if(c)t.addRule(".monaco-editor .find-widget .monaco-sash { background-color: "+c+"; width: 3px !important; margin-left: -4px;}");else{var d=e.getColor(by);d&&t.addRule(".monaco-editor .find-widget .monaco-sash { background-color: "+d+"; width: 3px !important; margin-left: -4px;}")}var h=e.getColor(O_);h&&t.addRule(".monaco-editor .find-widget .monaco-inputbox.synthetic-focus { outline-color: "+h+"; }")}));var yV=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),bV=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},wV=function(e,t){return function(n,i){t(n,i,e)}};function CV(e){if(!e.hasModel())return null;var t=e.getSelection();if(t.startLineNumber===t.endLineNumber)if(t.isEmpty()){var n=e.getModel().getWordAtPosition(t.getStartPosition());if(n)return n.word}else if(e.getModel().getValueLengthInRange(t)<524288)return e.getModel().getValueInRange(t);return null}var SV=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r._editor=t,r._findWidgetVisible=zF.bindTo(n),r._contextKeyService=n,r._storageService=i,r._clipboardService=o,r._updateHistoryDelayer=new fi(500),r._state=r._register(new xW),r.loadQueryState(),r._register(r._state.onFindReplaceStateChange((function(e){return r._onStateChanged(e)}))),r._model=null,r._register(r._editor.onDidChangeModel((function(){var e=r._editor.getModel()&&r._state.isRevealed;r.disposeModel(),r._state.change({searchScope:null,matchCase:r._storageService.getBoolean("editor.matchCase",1,!1),wholeWord:r._storageService.getBoolean("editor.wholeWord",1,!1),isRegex:r._storageService.getBoolean("editor.isRegex",1,!1),preserveCase:r._storageService.getBoolean("editor.preserveCase",1,!1)},!1),e&&r._start({forceRevealReplace:!1,seedSearchStringFromSelection:!1,seedSearchStringFromGlobalClipboard:!1,shouldFocus:0,shouldAnimate:!1,updateSearchScope:!1})}))),r}return yV(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.dispose=function(){this.disposeModel(),e.prototype.dispose.call(this)},t.prototype.disposeModel=function(){this._model&&(this._model.dispose(),this._model=null)},t.prototype._onStateChanged=function(e){this.saveQueryState(e),e.isRevealed&&(this._state.isRevealed?this._findWidgetVisible.set(!0):(this._findWidgetVisible.reset(),this.disposeModel())),e.searchString&&this.setGlobalBufferTerm(this._state.searchString)},t.prototype.saveQueryState=function(e){e.isRegex&&this._storageService.store("editor.isRegex",this._state.actualIsRegex,1),e.wholeWord&&this._storageService.store("editor.wholeWord",this._state.actualWholeWord,1),e.matchCase&&this._storageService.store("editor.matchCase",this._state.actualMatchCase,1),e.preserveCase&&this._storageService.store("editor.preserveCase",this._state.actualPreserveCase,1)},t.prototype.loadQueryState=function(){this._state.change({matchCase:this._storageService.getBoolean("editor.matchCase",1,this._state.matchCase),wholeWord:this._storageService.getBoolean("editor.wholeWord",1,this._state.wholeWord),isRegex:this._storageService.getBoolean("editor.isRegex",1,this._state.isRegex),preserveCase:this._storageService.getBoolean("editor.preserveCase",1,this._state.preserveCase)},!1)},t.prototype.isFindInputFocused=function(){return!!jF.getValue(this._contextKeyService)},t.prototype.getState=function(){return this._state},t.prototype.closeFindWidget=function(){this._state.change({isRevealed:!1,searchScope:null},!1),this._editor.focus()},t.prototype.toggleCaseSensitive=function(){this._state.change({matchCase:!this._state.matchCase},!1),this._state.isRevealed||this.highlightFindOptions()},t.prototype.toggleWholeWords=function(){this._state.change({wholeWord:!this._state.wholeWord},!1),this._state.isRevealed||this.highlightFindOptions()},t.prototype.toggleRegex=function(){this._state.change({isRegex:!this._state.isRegex},!1),this._state.isRevealed||this.highlightFindOptions()},t.prototype.toggleSearchScope=function(){if(this._state.searchScope)this._state.change({searchScope:null},!0);else if(this._editor.hasModel()){var e=this._editor.getSelection();1===e.endColumn&&e.endLineNumber>e.startLineNumber&&(e=e.setEndPosition(e.endLineNumber-1,this._editor.getModel().getLineMaxColumn(e.endLineNumber-1))),e.isEmpty()||this._state.change({searchScope:e},!0)}},t.prototype.setSearchString=function(e){this._state.isRegex&&(e=gr(e)),this._state.change({searchString:e},!1)},t.prototype.highlightFindOptions=function(){},t.prototype._start=function(e){if(this.disposeModel(),this._editor.hasModel()){var t,n={isRevealed:!0};if(e.seedSearchStringFromSelection)(t=CV(this._editor))&&(this._state.isRegex?n.searchString=gr(t):n.searchString=t);if(!n.searchString&&e.seedSearchStringFromGlobalClipboard)(t=this.getGlobalBufferTerm())&&(n.searchString=t);if(e.forceRevealReplace?n.isReplaceRevealed=!0:this._findWidgetVisible.get()||(n.isReplaceRevealed=!1),e.updateSearchScope){var i=this._editor.getSelection();i.isEmpty()||(n.searchScope=i)}this._state.change(n,!1),this._model||(this._model=new cW(this._editor,this._state))}},t.prototype.start=function(e){this._start(e)},t.prototype.moveToNextMatch=function(){return!!this._model&&(this._model.moveToNextMatch(),!0)},t.prototype.moveToPrevMatch=function(){return!!this._model&&(this._model.moveToPrevMatch(),!0)},t.prototype.replace=function(){return!!this._model&&(this._model.replace(),!0)},t.prototype.replaceAll=function(){return!!this._model&&(this._model.replaceAll(),!0)},t.prototype.selectAllMatches=function(){return!!this._model&&(this._model.selectAllMatches(),this._editor.focus(),!0)},t.prototype.getGlobalBufferTerm=function(){return this._editor.getOption(28).globalFindClipboard&&this._clipboardService&&this._editor.hasModel()&&!this._editor.getModel().isTooLargeForSyncing()?this._clipboardService.readFindText():""},t.prototype.setGlobalBufferTerm=function(e){this._editor.getOption(28).globalFindClipboard&&this._clipboardService&&this._editor.hasModel()&&!this._editor.getModel().isTooLargeForSyncing()&&this._clipboardService.writeFindText(e)},t.ID="editor.contrib.findController",t=bV([wV(1,qh),wV(2,FM),wV(3,$D)],t)}(He),LV=function(e){function t(t,n,i,o,r,s,a,u){var l=e.call(this,t,i,a,u)||this;return l._contextViewService=n,l._keybindingService=o,l._themeService=r,l._notificationService=s,l._widget=null,l._findOptionsWidget=null,l}return yV(t,e),t.prototype._start=function(t){this._widget||this._createFindWidget();var n=this._editor.getSelection(),i=!1;switch(this._editor.getOption(28).autoFindInSelection){case"always":i=!0;break;case"never":i=!1;break;case"multiline":i=!!n&&n.startLineNumber!==n.endLineNumber}t.updateSearchScope=i,e.prototype._start.call(this,t),2===t.shouldFocus?this._widget.focusReplaceInput():1===t.shouldFocus&&this._widget.focusFindInput()},t.prototype.highlightFindOptions=function(){this._widget||this._createFindWidget(),this._state.isRevealed?this._widget.highlightFindOptions():this._findOptionsWidget.highlightFindOptions()},t.prototype._createFindWidget=function(){this._widget=this._register(new vV(this._editor,this,this._state,this._contextViewService,this._keybindingService,this._contextKeyService,this._themeService,this._storageService,this._notificationService)),this._findOptionsWidget=this._register(new CW(this._editor,this._state,this._keybindingService,this._themeService))},t=bV([wV(1,xD),wV(2,qh),wV(3,XD),wV(4,fg),wV(5,ap),wV(6,FM),wV(7,Tn($D))],t)}(SV),xV=function(e){function t(){return e.call(this,{id:YF,label:r("startFindAction","Find"),alias:"Find",precondition:void 0,kbOpts:{kbExpr:null,primary:2084,weight:100},menuOpts:{menuId:17,group:"3_find",title:r({key:"miFind",comment:["&& denotes a mnemonic"]},"&&Find"),order:1}})||this}return yV(t,e),t.prototype.run=function(e,t){var n=SV.get(t);n&&n.start({forceRevealReplace:!1,seedSearchStringFromSelection:t.getOption(28).seedSearchStringFromSelection,seedSearchStringFromGlobalClipboard:t.getOption(28).globalFindClipboard,shouldFocus:1,shouldAnimate:!0,updateSearchScope:!1})},t}(kf),DV=function(e){function t(){return e.call(this,{id:XF,label:r("startFindWithSelectionAction","Find With Selection"),alias:"Find With Selection",precondition:void 0,kbOpts:{kbExpr:null,primary:0,mac:{primary:2083},weight:100}})||this}return yV(t,e),t.prototype.run=function(e,t){var n=SV.get(t);n&&(n.start({forceRevealReplace:!1,seedSearchStringFromSelection:!0,seedSearchStringFromGlobalClipboard:!1,shouldFocus:0,shouldAnimate:!0,updateSearchScope:!1}),n.setGlobalBufferTerm(n.getState().searchString))},t}(kf),NV=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return yV(t,e),t.prototype.run=function(e,t){var n=SV.get(t);n&&!this._run(n)&&(n.start({forceRevealReplace:!1,seedSearchStringFromSelection:0===n.getState().searchString.length&&t.getOption(28).seedSearchStringFromSelection,seedSearchStringFromGlobalClipboard:!0,shouldFocus:0,shouldAnimate:!0,updateSearchScope:!1}),this._run(n))},t}(kf),kV=function(e){function t(){return e.call(this,{id:$F,label:r("findNextMatchAction","Find Next"),alias:"Find Next",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:61,mac:{primary:2085,secondary:[61]},weight:100}})||this}return yV(t,e),t.prototype._run=function(e){return e.moveToNextMatch()},t}(NV),EV=function(e){function t(){return e.call(this,{id:$F,label:r("findNextMatchAction","Find Next"),alias:"Find Next",precondition:void 0,kbOpts:{kbExpr:Rh.and(eC.focus,jF),primary:3,weight:100}})||this}return yV(t,e),t.prototype._run=function(e){return e.moveToNextMatch()},t}(NV),IV=function(e){function t(){return e.call(this,{id:QF,label:r("findPreviousMatchAction","Find Previous"),alias:"Find Previous",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:1085,mac:{primary:3109,secondary:[1085]},weight:100}})||this}return yV(t,e),t.prototype._run=function(e){return e.moveToPrevMatch()},t}(NV),OV=function(e){function t(){return e.call(this,{id:QF,label:r("findPreviousMatchAction","Find Previous"),alias:"Find Previous",precondition:void 0,kbOpts:{kbExpr:Rh.and(eC.focus,jF),primary:1027,weight:100}})||this}return yV(t,e),t.prototype._run=function(e){return e.moveToPrevMatch()},t}(NV),MV=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return yV(t,e),t.prototype.run=function(e,t){var n=SV.get(t);if(n){var i=CV(t);i&&n.setSearchString(i),this._run(n)||(n.start({forceRevealReplace:!1,seedSearchStringFromSelection:t.getOption(28).seedSearchStringFromSelection,seedSearchStringFromGlobalClipboard:!1,shouldFocus:0,shouldAnimate:!0,updateSearchScope:!1}),this._run(n))}},t}(kf),TV=function(e){function t(){return e.call(this,{id:JF,label:r("nextSelectionMatchFindAction","Find Next Selection"),alias:"Find Next Selection",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:2109,weight:100}})||this}return yV(t,e),t.prototype._run=function(e){return e.moveToNextMatch()},t}(MV),PV=function(e){function t(){return e.call(this,{id:eW,label:r("previousSelectionMatchFindAction","Find Previous Selection"),alias:"Find Previous Selection",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:3133,weight:100}})||this}return yV(t,e),t.prototype._run=function(e){return e.moveToPrevMatch()},t}(MV),RV=function(e){function t(){return e.call(this,{id:tW,label:r("startReplace","Replace"),alias:"Replace",precondition:void 0,kbOpts:{kbExpr:null,primary:2086,mac:{primary:2596},weight:100},menuOpts:{menuId:17,group:"3_find",title:r({key:"miReplace",comment:["&& denotes a mnemonic"]},"&&Replace"),order:2}})||this}return yV(t,e),t.prototype.run=function(e,t){if(t.hasModel()&&!t.getOption(68)){var n=SV.get(t),i=t.getSelection(),o=n.isFindInputFocused(),r=!i.isEmpty()&&i.startLineNumber===i.endLineNumber&&t.getOption(28).seedSearchStringFromSelection&&!o,s=o||r?2:1;n&&n.start({forceRevealReplace:!0,seedSearchStringFromSelection:r,seedSearchStringFromGlobalClipboard:t.getOption(28).seedSearchStringFromSelection,shouldFocus:s,shouldAnimate:!0,updateSearchScope:!1})}},t}(kf);Pf(SV.ID,LV),Tf(xV),Tf(DV),Tf(kV),Tf(EV),Tf(IV),Tf(OV),Tf(TV),Tf(PV),Tf(RV);var AV=Nf.bindToContribution(SV.get);Mf(new AV({id:nW,precondition:zF,handler:function(e){return e.closeFindWidget()},kbOpts:{weight:105,kbExpr:eC.focus,primary:9,secondary:[1033]}})),Mf(new AV({id:iW,precondition:void 0,handler:function(e){return e.toggleCaseSensitive()},kbOpts:{weight:105,kbExpr:eC.focus,primary:KF.primary,mac:KF.mac,win:KF.win,linux:KF.linux}})),Mf(new AV({id:oW,precondition:void 0,handler:function(e){return e.toggleWholeWords()},kbOpts:{weight:105,kbExpr:eC.focus,primary:qF.primary,mac:qF.mac,win:qF.win,linux:qF.linux}})),Mf(new AV({id:rW,precondition:void 0,handler:function(e){return e.toggleRegex()},kbOpts:{weight:105,kbExpr:eC.focus,primary:GF.primary,mac:GF.mac,win:GF.win,linux:GF.linux}})),Mf(new AV({id:sW,precondition:void 0,handler:function(e){return e.toggleSearchScope()},kbOpts:{weight:105,kbExpr:eC.focus,primary:ZF.primary,mac:ZF.mac,win:ZF.win,linux:ZF.linux}})),Mf(new AV({id:aW,precondition:zF,handler:function(e){return e.replace()},kbOpts:{weight:105,kbExpr:eC.focus,primary:3094}})),Mf(new AV({id:aW,precondition:zF,handler:function(e){return e.replace()},kbOpts:{weight:105,kbExpr:Rh.and(eC.focus,UF),primary:3}})),Mf(new AV({id:uW,precondition:zF,handler:function(e){return e.replaceAll()},kbOpts:{weight:105,kbExpr:eC.focus,primary:2563}})),Mf(new AV({id:uW,precondition:zF,handler:function(e){return e.replaceAll()},kbOpts:{weight:105,kbExpr:Rh.and(eC.focus,UF),primary:void 0,mac:{primary:2051}}})),Mf(new AV({id:lW,precondition:zF,handler:function(e){return e.selectAllMatches()},kbOpts:{weight:105,kbExpr:eC.focus,primary:515}}));n(407);var FV=function(){function e(e,t,n){if(e.length!==t.length||e.length>65535)throw new Error("invalid startIndexes or endIndexes size");this._startIndexes=e,this._endIndexes=t,this._collapseStates=new Uint32Array(Math.ceil(e.length/32)),this._types=n,this._parentsComputed=!1}return e.prototype.ensureParentIndices=function(){var e=this;if(!this._parentsComputed){this._parentsComputed=!0;for(var t=[],n=function(n,i){var o=t[t.length-1];return e.getStartLineNumber(o)<=n&&e.getEndLineNumber(o)>=i},i=0,o=this._startIndexes.length;i<o;i++){var r=this._startIndexes[i],s=this._endIndexes[i];if(r>16777215||s>16777215)throw new Error("startLineNumber or endLineNumber must not exceed 16777215");for(;t.length>0&&!n(r,s);)t.pop();var a=t.length>0?t[t.length-1]:-1;t.push(i),this._startIndexes[i]=r+((255&a)<<24),this._endIndexes[i]=s+((65280&a)<<16)}}},Object.defineProperty(e.prototype,"length",{get:function(){return this._startIndexes.length},enumerable:!0,configurable:!0}),e.prototype.getStartLineNumber=function(e){return 16777215&this._startIndexes[e]},e.prototype.getEndLineNumber=function(e){return 16777215&this._endIndexes[e]},e.prototype.getType=function(e){return this._types?this._types[e]:void 0},e.prototype.hasTypes=function(){return!!this._types},e.prototype.isCollapsed=function(e){var t=e/32|0,n=e%32;return 0!=(this._collapseStates[t]&1<<n)},e.prototype.setCollapsed=function(e,t){var n=e/32|0,i=e%32,o=this._collapseStates[n];this._collapseStates[n]=t?o|1<<i:o&~(1<<i)},e.prototype.toRegion=function(e){return new WV(this,e)},e.prototype.getParentIndex=function(e){this.ensureParentIndices();var t=((4278190080&this._startIndexes[e])>>>24)+((4278190080&this._endIndexes[e])>>>16);return 65535===t?-1:t},e.prototype.contains=function(e,t){return this.getStartLineNumber(e)<=t&&this.getEndLineNumber(e)>=t},e.prototype.findIndex=function(e){var t=0,n=this._startIndexes.length;if(0===n)return-1;for(;t<n;){var i=Math.floor((t+n)/2);e<this.getStartLineNumber(i)?n=i:t=i+1}return t-1},e.prototype.findRange=function(e){var t=this.findIndex(e);if(t>=0){if(this.getEndLineNumber(t)>=e)return t;for(t=this.getParentIndex(t);-1!==t;){if(this.contains(t,e))return t;t=this.getParentIndex(t)}}return-1},e.prototype.toString=function(){for(var e=[],t=0;t<this.length;t++)e[t]="["+(this.isCollapsed(t)?"+":"-")+"] "+this.getStartLineNumber(t)+"/"+this.getEndLineNumber(t);return e.join(", ")},e}(),WV=function(){function e(e,t){this.ranges=e,this.index=t}return Object.defineProperty(e.prototype,"startLineNumber",{get:function(){return this.ranges.getStartLineNumber(this.index)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"endLineNumber",{get:function(){return this.ranges.getEndLineNumber(this.index)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"regionIndex",{get:function(){return this.index},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"parentIndex",{get:function(){return this.ranges.getParentIndex(this.index)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isCollapsed",{get:function(){return this.ranges.isCollapsed(this.index)},enumerable:!0,configurable:!0}),e.prototype.containedBy=function(e){return e.startLineNumber<=this.startLineNumber&&e.endLineNumber>=this.endLineNumber},e.prototype.containsLine=function(e){return this.startLineNumber<=e&&e<=this.endLineNumber},e}(),VV=function(){function e(e,t){this._updateEventEmitter=new nt,this.onDidChange=this._updateEventEmitter.event,this._textModel=e,this._decorationProvider=t,this._regions=new FV(new Uint32Array(0),new Uint32Array(0)),this._editorDecorationIds=[],this._isInitialized=!1}return Object.defineProperty(e.prototype,"regions",{get:function(){return this._regions},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"textModel",{get:function(){return this._textModel},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isInitialized",{get:function(){return this._isInitialized},enumerable:!0,configurable:!0}),e.prototype.toggleCollapseState=function(e){var t=this;if(e.length){var n={};this._decorationProvider.changeDecorations((function(i){for(var o=0,r=e;o<r.length;o++){var s=r[o].regionIndex,a=t._editorDecorationIds[s];if(a&&!n[a]){n[a]=!0;var u=!t._regions.isCollapsed(s);t._regions.setCollapsed(s,u),i.changeDecorationOptions(a,t._decorationProvider.getDecorationOption(u))}}})),this._updateEventEmitter.fire({model:this,collapseStateChanged:e})}},e.prototype.update=function(e,t){var n=this;void 0===t&&(t=[]);for(var i=[],o=function(o,r){var s=e.getStartLineNumber(o);r&&function(e,n){for(var i=0,o=t;i<o.length;i++){var r=o[i];if(e<r&&r<=n)return!0}return!1}(s,e.getEndLineNumber(o))&&(r=!1),e.setCollapsed(o,r);var a=n._textModel.getLineMaxColumn(s),u={startLineNumber:s,startColumn:a,endLineNumber:s,endColumn:a};i.push({range:u,options:n._decorationProvider.getDecorationOption(r)})},r=0,s=function(){for(;r<n._regions.length;){var e=n._regions.isCollapsed(r);if(r++,e)return r-1}return-1},a=0,u=s();-1!==u&&a<e.length;){var l=this._textModel.getDecorationRange(this._editorDecorationIds[u]);if(l){var c=l.startLineNumber;if(this._textModel.getLineMaxColumn(c)===l.startColumn)for(;a<e.length;){var d=e.getStartLineNumber(a);if(!(c>=d))break;o(a,c===d),a++}}u=s()}for(;a<e.length;)o(a,!1),a++;this._editorDecorationIds=this._decorationProvider.deltaDecorations(this._editorDecorationIds,i),this._regions=e,this._isInitialized=!0,this._updateEventEmitter.fire({model:this})},e.prototype.getMemento=function(){for(var e=[],t=0;t<this._regions.length;t++)if(this._regions.isCollapsed(t)){var n=this._textModel.getDecorationRange(this._editorDecorationIds[t]);if(n){var i=n.startLineNumber,o=n.endLineNumber+this._regions.getEndLineNumber(t)-this._regions.getStartLineNumber(t);e.push({startLineNumber:i,endLineNumber:o})}}if(e.length>0)return e},e.prototype.applyMemento=function(e){if(Array.isArray(e)){for(var t=[],n=0,i=e;n<i.length;n++){var o=i[n],r=this.getRegionAtLine(o.startLineNumber);r&&!r.isCollapsed&&t.push(r)}this.toggleCollapseState(t)}},e.prototype.dispose=function(){this._decorationProvider.deltaDecorations(this._editorDecorationIds,[])},e.prototype.getAllRegionsAtLine=function(e,t){var n=[];if(this._regions)for(var i=this._regions.findRange(e),o=1;i>=0;){var r=this._regions.toRegion(i);t&&!t(r,o)||n.push(r),o++,i=r.parentIndex}return n},e.prototype.getRegionAtLine=function(e){if(this._regions){var t=this._regions.findRange(e);if(t>=0)return this._regions.toRegion(t)}return null},e.prototype.getRegionsInside=function(e,t){var n=[],i=e?e.regionIndex+1:0,o=e?e.endLineNumber:Number.MAX_VALUE;if(t&&2===t.length)for(var r=[],s=i,a=this._regions.length;s<a;s++){var u=this._regions.toRegion(s);if(!(this._regions.getStartLineNumber(s)<o))break;for(;r.length>0&&!u.containedBy(r[r.length-1]);)r.pop();r.push(u),t(u,r.length)&&n.push(u)}else for(s=i,a=this._regions.length;s<a;s++){u=this._regions.toRegion(s);if(!(this._regions.getStartLineNumber(s)<o))break;t&&!t(u)||n.push(u)}return n},e}();function BV(e,t,n,i){void 0===n&&(n=Number.MAX_VALUE);var o=[];if(i&&i.length>0)for(var r=0,s=i;r<s.length;r++){var a=s[r],u=e.getRegionAtLine(a);if(u&&(u.isCollapsed!==t&&o.push(u),n>1)){var l=e.getRegionsInside(u,(function(e,i){return e.isCollapsed!==t&&i<n}));o.push.apply(o,l)}}else{l=e.getRegionsInside(null,(function(e,i){return e.isCollapsed!==t&&i<n}));o.push.apply(o,l)}e.toggleCollapseState(o)}function HV(e,t,n,i){for(var o=[],r=0,s=i;r<s.length;r++){var a=s[r],u=e.getAllRegionsAtLine(a,(function(e,i){return e.isCollapsed!==t&&i<=n}));o.push.apply(o,u)}e.toggleCollapseState(o)}function zV(e,t,n){for(var i=e.textModel,o=e.regions,r=[],s=o.length-1;s>=0;s--)if(n!==o.isCollapsed(s)){var a=o.getStartLineNumber(s);t.test(i.getLineContent(a))&&r.push(o.toRegion(s))}e.toggleCollapseState(r)}function jV(e,t,n){for(var i=e.regions,o=[],r=i.length-1;r>=0;r--)n!==i.isCollapsed(r)&&t===i.getType(r)&&o.push(i.toRegion(r));e.toggleCollapseState(o)}var UV=function(){function e(e){this.editor=e,this.autoHideFoldingControls=!0,this.showFoldingHighlights=!0}return e.prototype.getDecorationOption=function(t){return t?this.showFoldingHighlights?e.COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION:e.COLLAPSED_VISUAL_DECORATION:this.autoHideFoldingControls?e.EXPANDED_AUTO_HIDE_VISUAL_DECORATION:e.EXPANDED_VISUAL_DECORATION},e.prototype.deltaDecorations=function(e,t){return this.editor.deltaDecorations(e,t)},e.prototype.changeDecorations=function(e){return this.editor.changeDecorations(e)},e.COLLAPSED_VISUAL_DECORATION=kv.register({stickiness:1,afterContentClassName:"inline-folded",linesDecorationsClassName:"codicon codicon-chevron-right"}),e.COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION=kv.register({stickiness:1,afterContentClassName:"inline-folded",className:"folded-background",isWholeLine:!0,linesDecorationsClassName:"codicon codicon-chevron-right"}),e.EXPANDED_AUTO_HIDE_VISUAL_DECORATION=kv.register({stickiness:1,linesDecorationsClassName:"codicon codicon-chevron-down"}),e.EXPANDED_VISUAL_DECORATION=kv.register({stickiness:1,linesDecorationsClassName:"codicon codicon-chevron-down alwaysShowFoldIcons"}),e}(),KV=function(){function e(e){var t=this;this._updateEventEmitter=new nt,this._foldingModel=e,this._foldingModelListener=e.onDidChange((function(e){return t.updateHiddenRanges()})),this._hiddenRanges=[],e.regions.length&&this.updateHiddenRanges()}return Object.defineProperty(e.prototype,"onDidChange",{get:function(){return this._updateEventEmitter.event},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hiddenRanges",{get:function(){return this._hiddenRanges},enumerable:!0,configurable:!0}),e.prototype.updateHiddenRanges=function(){for(var e=!1,t=[],n=0,i=0,o=Number.MAX_VALUE,r=-1,s=this._foldingModel.regions;n<s.length;n++)if(s.isCollapsed(n)){var a=s.getStartLineNumber(n)+1,u=s.getEndLineNumber(n);o<=a&&u<=r||(!e&&i<this._hiddenRanges.length&&this._hiddenRanges[i].startLineNumber===a&&this._hiddenRanges[i].endLineNumber===u?(t.push(this._hiddenRanges[i]),i++):(e=!0,t.push(new wn(a,1,u,1))),o=a,r=u)}(e||i<this._hiddenRanges.length)&&this.applyHiddenRanges(t)},e.prototype.applyMemento=function(e){if(!Array.isArray(e)||0===e.length)return!1;for(var t=[],n=0,i=e;n<i.length;n++){var o=i[n];if(!o.startLineNumber||!o.endLineNumber)return!1;t.push(new wn(o.startLineNumber+1,1,o.endLineNumber,1))}return this.applyHiddenRanges(t),!0},e.prototype.getMemento=function(){return this._hiddenRanges.map((function(e){return{startLineNumber:e.startLineNumber-1,endLineNumber:e.endLineNumber}}))},e.prototype.applyHiddenRanges=function(e){this._hiddenRanges=e,this._updateEventEmitter.fire(e)},e.prototype.hasRanges=function(){return this._hiddenRanges.length>0},e.prototype.isHidden=function(e){return null!==qV(this._hiddenRanges,e)},e.prototype.adjustSelections=function(e){for(var t=this,n=!1,i=this._foldingModel.textModel,o=null,r=function(e){return o&&function(e,t){return e>=t.startLineNumber&&e<=t.endLineNumber}(e,o)||(o=qV(t._hiddenRanges,e)),o?o.startLineNumber-1:null},s=0,a=e.length;s<a;s++){var u=e[s],l=r(u.startLineNumber);l&&(u=u.setStartPosition(l,i.getLineMaxColumn(l)),n=!0);var c=r(u.endLineNumber);c&&(u=u.setEndPosition(c,i.getLineMaxColumn(c)),n=!0),e[s]=u}return n},e.prototype.dispose=function(){this.hiddenRanges.length>0&&(this._hiddenRanges=[],this._updateEventEmitter.fire(this._hiddenRanges)),this._foldingModelListener&&(this._foldingModelListener.dispose(),this._foldingModelListener=null)},e}();function qV(e,t){var n=function(e,t){var n=0,i=e.length;if(0===i)return 0;for(;n<i;){var o=Math.floor((n+i)/2);t(e[o])?i=o:n=o+1}return n}(e,(function(e){return t<e.startLineNumber}))-1;return n>=0&&e[n].endLineNumber>=t?e[n]:null}var GV=function(){function e(e){this.editorModel=e,this.id="indent"}return e.prototype.dispose=function(){},e.prototype.compute=function(e){var t=Ol.getFoldingRules(this.editorModel.getLanguageIdentifier().id),n=t&&!!t.offSide,i=t&&t.markers;return Promise.resolve(function(e,t,n,i){void 0===i&&(i=5e3);var o=e.getOptions().tabSize,r=new ZV(i),s=void 0;n&&(s=new RegExp("("+n.start.source+")|(?:"+n.end.source+")"));var a=[],u=e.getLineCount()+1;a.push({indent:-1,endAbove:u,line:u});for(var l=e.getLineCount();l>0;l--){var c=e.getLineContent(l),d=Cv.computeIndentLevel(c,o),h=a[a.length-1];if(-1!==d){var p=void 0;if(s&&(p=c.match(s))){if(!p[1]){a.push({indent:-2,endAbove:l,line:l});continue}for(var f=a.length-1;f>0&&-2!==a[f].indent;)f--;if(f>0){a.length=f+1,h=a[f],r.insertFirst(l,h.line,d),h.line=l,h.indent=d,h.endAbove=l;continue}}if(h.indent>d){do{a.pop(),h=a[a.length-1]}while(h.indent>d);var g=h.endAbove-1;g-l>=1&&r.insertFirst(l,g,d)}h.indent===d?h.endAbove=l:a.push({indent:d,endAbove:l,line:l})}else t&&(h.endAbove=l)}return r.toIndentRanges(e)}(this.editorModel,n,i))},e}(),ZV=function(){function e(e){this._startIndexes=[],this._endIndexes=[],this._indentOccurrences=[],this._length=0,this._foldingRangesLimit=e}return e.prototype.insertFirst=function(e,t,n){if(!(e>16777215||t>16777215)){var i=this._length;this._startIndexes[i]=e,this._endIndexes[i]=t,this._length++,n<1e3&&(this._indentOccurrences[n]=(this._indentOccurrences[n]||0)+1)}},e.prototype.toIndentRanges=function(e){if(this._length<=this._foldingRangesLimit){for(var t=new Uint32Array(this._length),n=new Uint32Array(this._length),i=this._length-1,o=0;i>=0;i--,o++)t[o]=this._startIndexes[i],n[o]=this._endIndexes[i];return new FV(t,n)}var r=0,s=this._indentOccurrences.length;for(i=0;i<this._indentOccurrences.length;i++){var a=this._indentOccurrences[i];if(a){if(a+r>this._foldingRangesLimit){s=i;break}r+=a}}var u=e.getOptions().tabSize;for(t=new Uint32Array(this._foldingRangesLimit),n=new Uint32Array(this._foldingRangesLimit),i=this._length-1,o=0;i>=0;i--){var l=this._startIndexes[i],c=e.getLineContent(l),d=Cv.computeIndentLevel(c,u);(d<s||d===s&&r++<this._foldingRangesLimit)&&(t[o]=l,n[o]=this._endIndexes[i],o++)}return new FV(t,n)},e}();var YV={},XV=function(){function e(e,t,n){void 0===n&&(n=5e3),this.editorModel=e,this.providers=t,this.limit=n,this.id="syntax"}return e.prototype.compute=function(e){var t=this;return function(e,t,n){var i=null,o=e.map((function(e,o){return Promise.resolve(e.provideFoldingRanges(t,YV,n)).then((function(e){if(!n.isCancellationRequested&&Array.isArray(e)){Array.isArray(i)||(i=[]);for(var r=t.getLineCount(),s=0,a=e;s<a.length;s++){var u=a[s];u.start>0&&u.end>u.start&&u.end<=r&&i.push({start:u.start,end:u.end,rank:o,kind:u.kind})}}}),Ne)}));return Promise.all(o).then((function(e){return i}))}(this.providers,this.editorModel,e).then((function(e){return e?QV(e,t.limit):null}))},e.prototype.dispose=function(){},e}();var $V=function(){function e(e){this._startIndexes=[],this._endIndexes=[],this._nestingLevels=[],this._nestingLevelCounts=[],this._types=[],this._length=0,this._foldingRangesLimit=e}return e.prototype.add=function(e,t,n,i){if(!(e>16777215||t>16777215)){var o=this._length;this._startIndexes[o]=e,this._endIndexes[o]=t,this._nestingLevels[o]=i,this._types[o]=n,this._length++,i<30&&(this._nestingLevelCounts[i]=(this._nestingLevelCounts[i]||0)+1)}},e.prototype.toIndentRanges=function(){if(this._length<=this._foldingRangesLimit){for(var e=new Uint32Array(this._length),t=new Uint32Array(this._length),n=0;n<this._length;n++)e[n]=this._startIndexes[n],t[n]=this._endIndexes[n];return new FV(e,t,this._types)}var i=0,o=this._nestingLevelCounts.length;for(n=0;n<this._nestingLevelCounts.length;n++){var r=this._nestingLevelCounts[n];if(r){if(r+i>this._foldingRangesLimit){o=n;break}i+=r}}e=new Uint32Array(this._foldingRangesLimit),t=new Uint32Array(this._foldingRangesLimit);for(var s=[],a=(n=0,0);n<this._length;n++){var u=this._nestingLevels[n];(u<o||u===o&&i++<this._foldingRangesLimit)&&(e[a]=this._startIndexes[n],t[a]=this._endIndexes[n],s[a]=this._types[n],a++)}return new FV(e,t,s)},e}();function QV(e,t){for(var n=e.sort((function(e,t){var n=e.start-t.start;return 0===n&&(n=e.rank-t.rank),n})),i=new $V(t),o=void 0,r=[],s=0,a=n;s<a.length;s++){var u=a[s];if(o){if(u.start>o.start)if(u.end<=o.end)r.push(o),o=u,i.add(u.start,u.end,u.kind&&u.kind.value,r.length);else{if(u.start>o.end){do{o=r.pop()}while(o&&u.start>o.end);o&&r.push(o),o=u}i.add(u.start,u.end,u.kind&&u.kind.value,r.length)}}else o=u,i.add(u.start,u.end,u.kind&&u.kind.value,r.length)}return i.toIndentRanges()}var JV=function(){function e(e,t,n,i){if(this.editorModel=e,this.id="init",t.length){this.decorationIds=e.deltaDecorations([],t.map((function(t){return{range:{startLineNumber:t.startLineNumber,startColumn:0,endLineNumber:t.endLineNumber,endColumn:e.getLineLength(t.endLineNumber)},options:{stickiness:1}}}))),this.timeout=setTimeout(n,i)}}return e.prototype.dispose=function(){this.decorationIds&&(this.editorModel.deltaDecorations(this.decorationIds,[]),this.decorationIds=void 0),"number"==typeof this.timeout&&(clearTimeout(this.timeout),this.timeout=void 0)},e.prototype.compute=function(e){var t=[];if(this.decorationIds)for(var n=0,i=this.decorationIds;n<i.length;n++){var o=i[n],r=this.editorModel.getDecorationRange(o);r&&t.push({start:r.startLineNumber,end:r.endLineNumber,rank:1})}return Promise.resolve(QV(t,Number.MAX_VALUE))},e}(),eB=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),tB=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},nB=function(e,t){return function(n,i){t(n,i,e)}},iB=new Kh("foldingEnabled",!1),oB=function(e){function t(t,n){var i=e.call(this)||this;i.contextKeyService=n,i.localToDispose=i._register(new Be),i.editor=t;var o=i.editor.getOptions();return i._isEnabled=o.get(30),i._useFoldingProviders="indentation"!==o.get(31),i.foldingModel=null,i.hiddenRangeModel=null,i.rangeProvider=null,i.foldingRegionPromise=null,i.foldingStateMemento=null,i.foldingModelPromise=null,i.updateScheduler=null,i.cursorChangedScheduler=null,i.mouseDownInfo=null,i.foldingDecorationProvider=new UV(t),i.foldingDecorationProvider.autoHideFoldingControls="mouseover"===o.get(84),i.foldingDecorationProvider.showFoldingHighlights=o.get(32),i.foldingEnabled=iB.bindTo(i.contextKeyService),i.foldingEnabled.set(i._isEnabled),i._register(i.editor.onDidChangeModel((function(){return i.onModelChanged()}))),i._register(i.editor.onDidChangeConfiguration((function(e){if(e.hasChanged(30)){var t=i.editor.getOptions();i._isEnabled=t.get(30),i.foldingEnabled.set(i._isEnabled),i.onModelChanged()}if(e.hasChanged(84)||e.hasChanged(32)){var n=i.editor.getOptions();i.foldingDecorationProvider.autoHideFoldingControls="mouseover"===n.get(84),i.foldingDecorationProvider.showFoldingHighlights=n.get(32),i.onModelContentChanged()}if(e.hasChanged(31)){var o=i.editor.getOptions();i._useFoldingProviders="indentation"!==o.get(31),i.onFoldingStrategyChanged()}}))),i.onModelChanged(),i}return eB(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.saveViewState=function(){var e=this.editor.getModel();if(!e||!this._isEnabled||e.isTooLargeForTokenization())return{};if(this.foldingModel){var t=this.foldingModel.isInitialized?this.foldingModel.getMemento():this.hiddenRangeModel.getMemento(),n=this.rangeProvider?this.rangeProvider.id:void 0;return{collapsedRegions:t,lineCount:e.getLineCount(),provider:n}}},t.prototype.restoreViewState=function(e){var t=this.editor.getModel();if(t&&this._isEnabled&&!t.isTooLargeForTokenization()&&this.hiddenRangeModel&&e&&e.collapsedRegions&&e.lineCount===t.getLineCount()){"syntax"!==e.provider&&"init"!==e.provider||(this.foldingStateMemento=e);var n=e.collapsedRegions;if(this.hiddenRangeModel.applyMemento(n)){var i=this.getFoldingModel();i&&i.then((function(e){e&&e.applyMemento(n)})).then(void 0,De)}}},t.prototype.onModelChanged=function(){var e=this;this.localToDispose.clear();var t=this.editor.getModel();this._isEnabled&&t&&!t.isTooLargeForTokenization()&&(this.foldingModel=new VV(t,this.foldingDecorationProvider),this.localToDispose.add(this.foldingModel),this.hiddenRangeModel=new KV(this.foldingModel),this.localToDispose.add(this.hiddenRangeModel),this.localToDispose.add(this.hiddenRangeModel.onDidChange((function(t){return e.onHiddenRangesChanges(t)}))),this.updateScheduler=new fi(200),this.cursorChangedScheduler=new wi((function(){return e.revealCursor()}),200),this.localToDispose.add(this.cursorChangedScheduler),this.localToDispose.add(qu.onDidChange((function(){return e.onFoldingStrategyChanged()}))),this.localToDispose.add(this.editor.onDidChangeModelLanguageConfiguration((function(){return e.onFoldingStrategyChanged()}))),this.localToDispose.add(this.editor.onDidChangeModelContent((function(){return e.onModelContentChanged()}))),this.localToDispose.add(this.editor.onDidChangeCursorPosition((function(){return e.onCursorPositionChanged()}))),this.localToDispose.add(this.editor.onMouseDown((function(t){return e.onEditorMouseDown(t)}))),this.localToDispose.add(this.editor.onMouseUp((function(t){return e.onEditorMouseUp(t)}))),this.localToDispose.add({dispose:function(){e.foldingRegionPromise&&(e.foldingRegionPromise.cancel(),e.foldingRegionPromise=null),e.updateScheduler&&e.updateScheduler.cancel(),e.updateScheduler=null,e.foldingModel=null,e.foldingModelPromise=null,e.hiddenRangeModel=null,e.cursorChangedScheduler=null,e.foldingStateMemento=null,e.rangeProvider&&e.rangeProvider.dispose(),e.rangeProvider=null}}),this.onModelContentChanged())},t.prototype.onFoldingStrategyChanged=function(){this.rangeProvider&&this.rangeProvider.dispose(),this.rangeProvider=null,this.onModelContentChanged()},t.prototype.getRangeProvider=function(e){var t=this;if(this.rangeProvider)return this.rangeProvider;if(this.rangeProvider=new GV(e),this._useFoldingProviders&&this.foldingModel){var n=qu.ordered(this.foldingModel.textModel);if(0===n.length&&this.foldingStateMemento&&this.foldingStateMemento.collapsedRegions)return this.rangeProvider=new JV(e,this.foldingStateMemento.collapsedRegions,(function(){t.foldingStateMemento=null,t.onFoldingStrategyChanged()}),3e4);n.length>0&&(this.rangeProvider=new XV(e,n))}return this.foldingStateMemento=null,this.rangeProvider},t.prototype.getFoldingModel=function(){return this.foldingModelPromise},t.prototype.onModelContentChanged=function(){var e=this;this.updateScheduler&&(this.foldingRegionPromise&&(this.foldingRegionPromise.cancel(),this.foldingRegionPromise=null),this.foldingModelPromise=this.updateScheduler.trigger((function(){var t=e.foldingModel;if(!t)return null;var n=e.foldingRegionPromise=hi((function(n){return e.getRangeProvider(t.textModel).compute(n)}));return n.then((function(i){if(i&&n===e.foldingRegionPromise){var o=e.editor.getSelections(),r=o?o.map((function(e){return e.startLineNumber})):[];t.update(i,r)}return t}))})).then(void 0,(function(e){return De(e),null})))},t.prototype.onHiddenRangesChanges=function(e){if(this.hiddenRangeModel&&e.length){var t=this.editor.getSelections();t&&this.hiddenRangeModel.adjustSelections(t)&&this.editor.setSelections(t)}this.editor.setHiddenAreas(e)},t.prototype.onCursorPositionChanged=function(){this.hiddenRangeModel&&this.hiddenRangeModel.hasRanges()&&this.cursorChangedScheduler.schedule()},t.prototype.revealCursor=function(){var e=this,t=this.getFoldingModel();t&&t.then((function(t){if(t){var n=e.editor.getSelections();if(n&&n.length>0){for(var i=[],o=function(n){var o=n.selectionStartLineNumber;e.hiddenRangeModel&&e.hiddenRangeModel.isHidden(o)&&i.push.apply(i,t.getAllRegionsAtLine(o,(function(e){return e.isCollapsed&&o>e.startLineNumber})))},r=0,s=n;r<s.length;r++){o(s[r])}i.length&&(t.toggleCollapseState(i),e.reveal(n[0].getPosition()))}}})).then(void 0,De)},t.prototype.onEditorMouseDown=function(e){if(this.mouseDownInfo=null,this.hiddenRangeModel&&e.target&&e.target.range&&(e.event.leftButton||e.event.middleButton)){var t=e.target.range,n=!1;switch(e.target.type){case 4:var i=e.target.detail,o=e.target.element.offsetLeft;if(i.offsetX-o<5)return;n=!0;break;case 6:if(this.hiddenRangeModel.hasRanges()){var r=this.editor.getModel();if(r&&t.startColumn===r.getLineMaxColumn(t.startLineNumber))break}return;default:return}this.mouseDownInfo={lineNumber:t.startLineNumber,iconClicked:n}}},t.prototype.onEditorMouseUp=function(e){var t=this,n=this.getFoldingModel();if(n&&this.mouseDownInfo&&e.target){var i=this.mouseDownInfo.lineNumber,o=this.mouseDownInfo.iconClicked,r=e.target.range;if(r&&r.startLineNumber===i){if(o){if(4!==e.target.type)return}else{var s=this.editor.getModel();if(!s||r.startColumn!==s.getLineMaxColumn(i))return}n.then((function(n){if(n){var r=n.getRegionAtLine(i);if(r&&r.startLineNumber===i){var s=r.isCollapsed;if(o||s){var a=[],u=e.event.middleButton||e.event.shiftKey;if(u)for(var l=0,c=n.getRegionsInside(r);l<c.length;l++){var d=c[l];d.isCollapsed===s&&a.push(d)}!s&&u&&0!==a.length||a.push(r),n.toggleCollapseState(a),t.reveal({lineNumber:i,column:1})}}}})).then(void 0,De)}}},t.prototype.reveal=function(e){this.editor.revealPositionInCenterIfOutsideViewport(e,0)},t.ID="editor.contrib.folding",t=tB([nB(1,qh)],t)}(He),rB=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return eB(t,e),t.prototype.runEditorCommand=function(e,t,n){var i=this,o=oB.get(t);if(o){var r=o.getFoldingModel();return r?(this.reportTelemetry(e,t),r.then((function(e){if(e){i.invoke(o,e,t,n);var r=t.getSelection();r&&o.reveal(r.getStartPosition())}}))):void 0}},t.prototype.getSelectedLines=function(e){var t=e.getSelections();return t?t.map((function(e){return e.startLineNumber})):[]},t.prototype.getLineNumbers=function(e,t){return e&&e.selectionLines?e.selectionLines.map((function(e){return e+1})):this.getSelectedLines(t)},t.prototype.run=function(e,t){},t}(kf);function sB(e){if(!Bs(e)){if(!Fs(e))return!1;var t=e;if(!Bs(t.levels)&&!Ws(t.levels))return!1;if(!Bs(t.direction)&&!As(t.direction))return!1;if(!(Bs(t.selectionLines)||Rs(t.selectionLines)&&t.selectionLines.every(Ws)))return!1}return!0}var aB,uB=function(e){function t(){return e.call(this,{id:"editor.unfold",label:r("unfoldAction.label","Unfold"),alias:"Unfold",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:3161,mac:{primary:2649},weight:100},description:{description:"Unfold the content in the editor",args:[{name:"Unfold editor argument",description:"Property-value pairs that can be passed through this argument:\n\t\t\t\t\t\t* 'levels': Number of levels to unfold. If not set, defaults to 1.\n\t\t\t\t\t\t* 'direction': If 'up', unfold given number of levels up otherwise unfolds down.\n\t\t\t\t\t\t* 'selectionLines': The start lines (0-based) of the editor selections to apply the unfold action to. If not set, the active selection(s) will be used.\n\t\t\t\t\t\t",constraint:sB,schema:{type:"object",properties:{levels:{type:"number",default:1},direction:{type:"string",enum:["up","down"],default:"down"},selectionLines:{type:"array",items:{type:"number"}}}}}]}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n,i){var o=i&&i.levels||1,r=this.getLineNumbers(i,n);i&&"up"===i.direction?HV(t,!1,o,r):BV(t,!1,o,r)},t}(rB),lB=function(e){function t(){return e.call(this,{id:"editor.unfoldRecursively",label:r("unFoldRecursivelyAction.label","Unfold Recursively"),alias:"Unfold Recursively",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2137),weight:100}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n,i){BV(t,!1,Number.MAX_VALUE,this.getSelectedLines(n))},t}(rB),cB=function(e){function t(){return e.call(this,{id:"editor.fold",label:r("foldAction.label","Fold"),alias:"Fold",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:3159,mac:{primary:2647},weight:100},description:{description:"Fold the content in the editor",args:[{name:"Fold editor argument",description:"Property-value pairs that can be passed through this argument:\n\t\t\t\t\t\t\t* 'levels': Number of levels to fold.\n\t\t\t\t\t\t\t* 'direction': If 'up', folds given number of levels up otherwise folds down.\n\t\t\t\t\t\t\t* 'selectionLines': The start lines (0-based) of the editor selections to apply the fold action to. If not set, the active selection(s) will be used.\n\t\t\t\t\t\t\tIf no levels or direction is set, folds the region at the locations or if already collapsed, the first uncollapsed parent instead.\n\t\t\t\t\t\t",constraint:sB,schema:{type:"object",properties:{levels:{type:"number"},direction:{type:"string",enum:["up","down"]},selectionLines:{type:"array",items:{type:"number"}}}}}]}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n,i){var o=this.getLineNumbers(i,n),r=i&&i.levels,s=i&&i.direction;"number"!=typeof r&&"string"!=typeof s?function(e,t,n){for(var i=[],o=0,r=n;o<r.length;o++){var s=r[o],a=e.getAllRegionsAtLine(s,(function(e){return e.isCollapsed!==t}));a.length>0&&i.push(a[0])}e.toggleCollapseState(i)}(t,!0,o):"up"===s?HV(t,!0,r||1,o):BV(t,!0,r||1,o)},t}(rB),dB=function(e){function t(){return e.call(this,{id:"editor.toggleFold",label:r("toggleFoldAction.label","Toggle Fold"),alias:"Toggle Fold",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2090),weight:100}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n){!function(e,t,n){for(var i=[],o=function(n){var o=e.getRegionAtLine(n);if(o){var r=!o.isCollapsed;if(i.push(o),t>1){var s=e.getRegionsInside(o,(function(e,n){return e.isCollapsed!==r&&n<t}));i.push.apply(i,s)}}},r=0,s=n;r<s.length;r++){o(s[r])}e.toggleCollapseState(i)}(t,1,this.getSelectedLines(n))},t}(rB),hB=function(e){function t(){return e.call(this,{id:"editor.foldRecursively",label:r("foldRecursivelyAction.label","Fold Recursively"),alias:"Fold Recursively",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2135),weight:100}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n){var i=this.getSelectedLines(n);BV(t,!0,Number.MAX_VALUE,i)},t}(rB),pB=function(e){function t(){return e.call(this,{id:"editor.foldAllBlockComments",label:r("foldAllBlockComments.label","Fold All Block Comments"),alias:"Fold All Block Comments",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2133),weight:100}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n){if(t.regions.hasTypes())jV(t,Du.Comment.value,!0);else{var i=n.getModel();if(!i)return;var o=Ol.getComments(i.getLanguageIdentifier().id);if(o&&o.blockCommentStartToken)zV(t,new RegExp("^\\s*"+gr(o.blockCommentStartToken)),!0)}},t}(rB),fB=function(e){function t(){return e.call(this,{id:"editor.foldAllMarkerRegions",label:r("foldAllMarkerRegions.label","Fold All Regions"),alias:"Fold All Regions",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2077),weight:100}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n){if(t.regions.hasTypes())jV(t,Du.Region.value,!0);else{var i=n.getModel();if(!i)return;var o=Ol.getFoldingRules(i.getLanguageIdentifier().id);if(o&&o.markers&&o.markers.start)zV(t,new RegExp(o.markers.start),!0)}},t}(rB),gB=function(e){function t(){return e.call(this,{id:"editor.unfoldAllMarkerRegions",label:r("unfoldAllMarkerRegions.label","Unfold All Regions"),alias:"Unfold All Regions",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2078),weight:100}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n){if(t.regions.hasTypes())jV(t,Du.Region.value,!1);else{var i=n.getModel();if(!i)return;var o=Ol.getFoldingRules(i.getLanguageIdentifier().id);if(o&&o.markers&&o.markers.start)zV(t,new RegExp(o.markers.start),!1)}},t}(rB),mB=function(e){function t(){return e.call(this,{id:"editor.foldAll",label:r("foldAllAction.label","Fold All"),alias:"Fold All",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2069),weight:100}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n){BV(t,!0)},t}(rB),vB=function(e){function t(){return e.call(this,{id:"editor.unfoldAll",label:r("unfoldAllAction.label","Unfold All"),alias:"Unfold All",precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2088),weight:100}})||this}return eB(t,e),t.prototype.invoke=function(e,t,n){BV(t,!1)},t}(rB),_B=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return eB(t,e),t.prototype.getFoldingLevel=function(){return parseInt(this.id.substr(t.ID_PREFIX.length))},t.prototype.invoke=function(e,t,n){!function(e,t,n,i){var o=e.getRegionsInside(null,(function(e,o){return o===t&&e.isCollapsed!==n&&!i.some((function(t){return e.containsLine(t)}))}));e.toggleCollapseState(o)}(t,this.getFoldingLevel(),!0,this.getSelectedLines(n))},t.ID_PREFIX="editor.foldLevel",t.ID=function(e){return t.ID_PREFIX+e},t}(rB);Pf(oB.ID,oB),Tf(uB),Tf(lB),Tf(cB),Tf(hB),Tf(mB),Tf(vB),Tf(pB),Tf(fB),Tf(gB),Tf(dB);for(var yB=1;yB<=7;yB++)aB=new _B({id:_B.ID(yB),label:r("foldLevelAction.label","Fold Level {0}",yB),alias:"Fold Level "+yB,precondition:iB,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2048|21+yB),weight:100}}),Rf.INSTANCE.registerEditorAction(aB);var bB=D_("editor.foldBackground",{light:Ib(Cy,.3),dark:Ib(Cy,.3),hc:null},r("editorSelectionBackground","Color of the editor selection."));yg((function(e,t){var n=e.getColor(bB);n&&t.addRule(".monaco-editor .folded-background { background-color: "+n+"; }")}));var wB=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),CB=function(e){function t(){return e.call(this,{id:"editor.action.fontZoomIn",label:r("EditorFontZoomIn.label","Editor Font Zoom In"),alias:"Editor Font Zoom In",precondition:void 0})||this}return wB(t,e),t.prototype.run=function(e,t){Pa.setZoomLevel(Pa.getZoomLevel()+1)},t}(kf),SB=function(e){function t(){return e.call(this,{id:"editor.action.fontZoomOut",label:r("EditorFontZoomOut.label","Editor Font Zoom Out"),alias:"Editor Font Zoom Out",precondition:void 0})||this}return wB(t,e),t.prototype.run=function(e,t){Pa.setZoomLevel(Pa.getZoomLevel()-1)},t}(kf),LB=function(e){function t(){return e.call(this,{id:"editor.action.fontZoomReset",label:r("EditorFontZoomReset.label","Editor Font Zoom Reset"),alias:"Editor Font Zoom Reset",precondition:void 0})||this}return wB(t,e),t.prototype.run=function(e,t){Pa.setZoomLevel(0)},t}(kf);Tf(CB),Tf(SB),Tf(LB);var xB=function(){function e(){}return e._handleEolEdits=function(e,t){for(var n=void 0,i=[],o=0,r=t;o<r.length;o++){var s=r[o];"number"==typeof s.eol&&(n=s.eol),s.range&&"string"==typeof s.text&&i.push(s)}return"number"==typeof n&&e.hasModel()&&e.getModel().pushEOL(n),i},e._isFullModelReplaceEdit=function(e,t){if(!e.hasModel())return!1;var n=e.getModel(),i=n.validateRange(t.range);return n.getFullModelRange().equalsRange(i)},e.execute=function(t,n){t.pushUndoStop();var i=e._handleEolEdits(t,n);1===i.length&&e._isFullModelReplaceEdit(t,i[0])?t.executeEdits("formatEditsCommand",i.map((function(e){return bh.replace(wn.lift(e.range),e.text)}))):t.executeEdits("formatEditsCommand",i.map((function(e){return bh.replaceMove(wn.lift(e.range),e.text)}))),t.pushUndoStop()},e}(),DB=function(){function e(e){this.value=e,this._lower=e.toLowerCase()}return e.toKey=function(e){return"string"==typeof e?e.toLowerCase():e._lower},e}(),NB=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},kB=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}};function EB(e){if((e=e.filter((function(e){return e.range}))).length){for(var t=e[0].range,n=1;n<e.length;n++)t=wn.plusRange(t,e[n].range);var i=t.startLineNumber,o=t.endLineNumber;i===o?1===e.length?Zp(r("hint11","Made 1 formatting edit on line {0}",i)):Zp(r("hintn1","Made {0} formatting edits on line {1}",e.length,i)):1===e.length?Zp(r("hint1n","Made 1 formatting edit between lines {0} and {1}",i,o)):Zp(r("hintnn","Made {0} formatting edits between lines {1} and {2}",e.length,i,o))}}function IB(e){for(var t=[],n=new Set,i=0,o=Bu.ordered(e);i<o.length;i++){var r=o[i];t.push(r),r.extensionId&&n.add(DB.toKey(r.extensionId))}for(var s=function(e){if(e.extensionId){if(n.has(DB.toKey(e.extensionId)))return"continue";n.add(DB.toKey(e.extensionId))}t.push({displayName:e.displayName,extensionId:e.extensionId,provideDocumentFormattingEdits:function(t,n,i){return e.provideDocumentRangeFormattingEdits(t,t.getFullModelRange(),n,i)}})},a=0,u=Hu.ordered(e);a<u.length;a++){s(r=u[a])}return t}var OB=function(){function e(){}return e.select=function(t,n,i){return NB(this,void 0,void 0,(function(){var o;return kB(this,(function(r){switch(r.label){case 0:return 0===t.length?[2,void 0]:(o=e._selectors.iterator().next().value)?[4,o(t,n,i)]:[3,2];case 1:return[2,r.sent()];case 2:return[2,t[0]]}}))}))},e._selectors=new Qe,e}();function MB(e,t,n,i,o){return NB(this,void 0,void 0,(function(){var r,s,a,u;return kB(this,(function(l){switch(l.label){case 0:return r=e.get(In),s=Md(t)?t.getModel():t,a=Hu.ordered(s),[4,OB.select(a,s,i)];case 1:return(u=l.sent())?[4,r.invokeFunction(TB,u,t,n,o)]:[3,3];case 2:l.sent(),l.label=3;case 3:return[2]}}))}))}function TB(e,t,n,i,o){return NB(this,void 0,void 0,(function(){var r,s,a,u,l,c,d;return kB(this,(function(h){switch(h.label){case 0:r=e.get(el),Md(n)?(s=n.getModel(),a=new rD(n,5,o)):(s=n,a=new sD(n,o)),h.label=1;case 1:return h.trys.push([1,,4,5]),[4,t.provideDocumentRangeFormattingEdits(s,i,s.getFormattingOptions(),a.token)];case 2:return l=h.sent(),[4,r.computeMoreMinimalEdits(s.uri,l)];case 3:return u=h.sent(),a.token.isCancellationRequested?[2,!0]:[3,5];case 4:return a.dispose(),[7];case 5:return u&&0!==u.length?(Md(n)?(xB.execute(n,u),EB(u),n.pushUndoStop(),n.revealPositionInCenterIfOutsideViewport(n.getPosition(),1)):(c=u[0].range,d=new Sn(c.startLineNumber,c.startColumn,c.endLineNumber,c.endColumn),s.pushEditOperations([d],u.map((function(e){return{text:e.text,range:wn.lift(e.range),forceMoveMarkers:!0}})),(function(e){for(var t=0,n=e;t<n.length;t++){var i=n[t].range;if(wn.areIntersectingOrTouching(i,d))return[new Sn(i.startLineNumber,i.startColumn,i.endLineNumber,i.endColumn)]}return null}))),[2,!0]):[2,!1]}}))}))}function PB(e,t,n,i){return NB(this,void 0,void 0,(function(){var o,r,s,a;return kB(this,(function(u){switch(u.label){case 0:return o=e.get(In),r=Md(t)?t.getModel():t,s=IB(r),[4,OB.select(s,r,n)];case 1:return(a=u.sent())?[4,o.invokeFunction(RB,a,t,n,i)]:[3,3];case 2:u.sent(),u.label=3;case 3:return[2]}}))}))}function RB(e,t,n,i,o){return NB(this,void 0,void 0,(function(){var r,s,a,u,l,c,d;return kB(this,(function(h){switch(h.label){case 0:r=e.get(el),Md(n)?(s=n.getModel(),a=new rD(n,5,o)):(s=n,a=new sD(n,o)),h.label=1;case 1:return h.trys.push([1,,4,5]),[4,t.provideDocumentFormattingEdits(s,s.getFormattingOptions(),a.token)];case 2:return l=h.sent(),[4,r.computeMoreMinimalEdits(s.uri,l)];case 3:return u=h.sent(),a.token.isCancellationRequested?[2,!0]:[3,5];case 4:return a.dispose(),[7];case 5:return u&&0!==u.length?(Md(n)?(xB.execute(n,u),2!==i&&(EB(u),n.pushUndoStop(),n.revealPositionInCenterIfOutsideViewport(n.getPosition(),1))):(c=u[0].range,d=new Sn(c.startLineNumber,c.startColumn,c.endLineNumber,c.endColumn),s.pushEditOperations([d],u.map((function(e){return{text:e.text,range:wn.lift(e.range),forceMoveMarkers:!0}})),(function(e){for(var t=0,n=e;t<n.length;t++){var i=n[t].range;if(wn.areIntersectingOrTouching(i,d))return[new Sn(i.startLineNumber,i.startColumn,i.endLineNumber,i.endColumn)]}return null}))),[2,!0]):[2,!1]}}))}))}function AB(e,t,n,i,o){return NB(this,void 0,void 0,(function(){var r,s,a,u,l;return kB(this,(function(c){switch(c.label){case 0:r=Hu.ordered(t),s=0,a=r,c.label=1;case 1:return s<a.length?(u=a[s],[4,Promise.resolve(u.provideDocumentRangeFormattingEdits(t,n,i,o)).catch(Ne)]):[3,5];case 2:return Oi(l=c.sent())?[4,e.computeMoreMinimalEdits(t.uri,l)]:[3,4];case 3:return[2,c.sent()];case 4:return s++,[3,1];case 5:return[2,void 0]}}))}))}function FB(e,t,n,i){return NB(this,void 0,void 0,(function(){var o,r,s,a,u;return kB(this,(function(l){switch(l.label){case 0:o=IB(t),r=0,s=o,l.label=1;case 1:return r<s.length?(a=s[r],[4,Promise.resolve(a.provideDocumentFormattingEdits(t,n,i)).catch(Ne)]):[3,5];case 2:return Oi(u=l.sent())?[4,e.computeMoreMinimalEdits(t.uri,u)]:[3,4];case 3:return[2,l.sent()];case 4:return r++,[3,1];case 5:return[2,void 0]}}))}))}function WB(e,t,n,i,o){var r=zu.ordered(t);return 0===r.length||r[0].autoFormatTriggerCharacters.indexOf(i)<0?Promise.resolve(void 0):Promise.resolve(r[0].provideOnTypeFormattingEdits(t,n,i,o,et.None)).catch(Ne).then((function(n){return e.computeMoreMinimalEdits(t.uri,n)}))}ca.registerCommand("_executeFormatRangeProvider",(function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=t[0],o=t[1],r=t[2];zs(Et.isUri(i)),zs(wn.isIRange(o));var s=e.get(du).getModel(i);if(!s)throw Oe("resource");return AB(e.get(el),s,wn.lift(o),r,et.None)})),ca.registerCommand("_executeFormatDocumentProvider",(function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=t[0],o=t[1];zs(Et.isUri(i));var r=e.get(du).getModel(i);if(!r)throw Oe("resource");return FB(e.get(el),r,o,et.None)})),ca.registerCommand("_executeFormatOnTypeProvider",(function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=t[0],o=t[1],r=t[2],s=t[3];zs(Et.isUri(i)),zs(bn.isIPosition(o)),zs("string"==typeof r);var a=e.get(du).getModel(i);if(!a)throw Oe("resource");return WB(e.get(el),a,bn.lift(o),r,s)}));var VB=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),BB=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},HB=function(e,t){return function(n,i){t(n,i,e)}},zB=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},jB=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},UB=function(){function e(e,t){var n=this;this._workerService=t,this._callOnDispose=new Be,this._callOnModel=new Be,this._editor=e,this._callOnDispose.add(e.onDidChangeConfiguration((function(){return n._update()}))),this._callOnDispose.add(e.onDidChangeModel((function(){return n._update()}))),this._callOnDispose.add(e.onDidChangeModelLanguage((function(){return n._update()}))),this._callOnDispose.add(zu.onDidChange(this._update,this))}return e.prototype.dispose=function(){this._callOnDispose.dispose(),this._callOnModel.dispose()},e.prototype._update=function(){var e=this;if(this._callOnModel.clear(),this._editor.getOption(39)&&this._editor.hasModel()){var t=this._editor.getModel(),n=zu.ordered(t)[0];if(n&&n.autoFormatTriggerCharacters){for(var i=new ic,o=0,r=n.autoFormatTriggerCharacters;o<r.length;o++){var s=r[o];i.add(s.charCodeAt(0))}this._callOnModel.add(this._editor.onDidType((function(t){var n=t.charCodeAt(t.length-1);i.has(n)&&e._trigger(String.fromCharCode(n))})))}}},e.prototype._trigger=function(e){var t=this;if(this._editor.hasModel()&&!(this._editor.getSelections().length>1)){var n=this._editor.getModel(),i=this._editor.getPosition(),o=!1,r=this._editor.onDidChangeModelContent((function(e){if(e.isFlush)return o=!0,void r.dispose();for(var t=0,n=e.changes.length;t<n;t++){if(e.changes[t].range.endLineNumber<=i.lineNumber)return o=!0,void r.dispose()}}));WB(this._workerService,n,i,e,n.getFormattingOptions()).then((function(e){r.dispose(),o||Oi(e)&&(xB.execute(t._editor,e),EB(e))}),(function(e){throw r.dispose(),e}))}},e.ID="editor.contrib.autoFormat",e=BB([HB(1,el)],e)}(),KB=function(){function e(e,t){var n=this;this.editor=e,this._instantiationService=t,this._callOnDispose=new Be,this._callOnModel=new Be,this._callOnDispose.add(e.onDidChangeConfiguration((function(){return n._update()}))),this._callOnDispose.add(e.onDidChangeModel((function(){return n._update()}))),this._callOnDispose.add(e.onDidChangeModelLanguage((function(){return n._update()}))),this._callOnDispose.add(Hu.onDidChange(this._update,this))}return e.prototype.dispose=function(){this._callOnDispose.dispose(),this._callOnModel.dispose()},e.prototype._update=function(){var e=this;this._callOnModel.clear(),this.editor.getOption(38)&&this.editor.hasModel()&&Hu.has(this.editor.getModel())&&this._callOnModel.add(this.editor.onDidPaste((function(t){var n=t.range;return e._trigger(n)})))},e.prototype._trigger=function(e){this.editor.hasModel()&&(this.editor.getSelections().length>1||this._instantiationService.invokeFunction(MB,this.editor,e,2,et.None).catch(De))},e.ID="editor.contrib.formatOnPaste",e=BB([HB(1,In)],e)}(),qB=function(e){function t(){return e.call(this,{id:"editor.action.formatDocument",label:r("formatDocument.label","Format Document"),alias:"Format Document",precondition:Rh.and(eC.writable,eC.hasDocumentFormattingProvider),kbOpts:{kbExpr:Rh.and(eC.editorTextFocus,eC.hasDocumentFormattingProvider),primary:1572,linux:{primary:3111},weight:100},contextMenuOpts:{when:eC.hasDocumentFormattingProvider,group:"1_modification",order:1.3}})||this}return VB(t,e),t.prototype.run=function(e,t){return zB(this,void 0,void 0,(function(){return jB(this,(function(n){switch(n.label){case 0:return t.hasModel()?[4,e.get(In).invokeFunction(PB,t,1,et.None)]:[3,2];case 1:n.sent(),n.label=2;case 2:return[2]}}))}))},t}(kf),GB=function(e){function t(){return e.call(this,{id:"editor.action.formatSelection",label:r("formatSelection.label","Format Selection"),alias:"Format Selection",precondition:Rh.and(eC.writable,eC.hasDocumentSelectionFormattingProvider),kbOpts:{kbExpr:Rh.and(eC.editorTextFocus,eC.hasDocumentSelectionFormattingProvider),primary:gt(2089,2084),weight:100},contextMenuOpts:{when:Rh.and(eC.hasDocumentSelectionFormattingProvider,eC.hasNonEmptySelection),group:"1_modification",order:1.31}})||this}return VB(t,e),t.prototype.run=function(e,t){return zB(this,void 0,void 0,(function(){var n,i,o;return jB(this,(function(r){switch(r.label){case 0:return t.hasModel()?(n=e.get(In),i=t.getModel(),(o=t.getSelection()).isEmpty()&&(o=new wn(o.startLineNumber,1,o.startLineNumber,i.getLineMaxColumn(o.startLineNumber))),[4,n.invokeFunction(MB,t,o,1,et.None)]):[2];case 1:return r.sent(),[2]}}))}))},t}(kf);Pf(UB.ID,UB),Pf(KB.ID,KB),Tf(qB),Tf(GB),ca.registerCommand("editor.action.format",(function(e){return zB(void 0,void 0,void 0,(function(){var t,n;return jB(this,(function(i){switch(i.label){case 0:return(t=e.get(Pn).getFocusedCodeEditor())&&t.hasModel()?(n=e.get(la),t.getSelection().isEmpty()?[4,n.executeCommand("editor.action.formatDocument")]:[3,2]):[2];case 1:return i.sent(),[3,4];case 2:return[4,n.executeCommand("editor.action.formatSelection")];case 3:i.sent(),i.label=4;case 4:return[2]}}))}))}));n(408);var ZB,YB,XB=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),$B=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},QB=function(e,t){return function(n,i){t(n,i,e)}},JB=function(e){function t(t,n,i,o,r,s,a,u,l,c){var d=e.call(this,t,i.getRawOptions(),{},o,r,s,a,u,l,c)||this;return d._parentEditor=i,d._overwriteOptions=n,e.prototype.updateOptions.call(d,d._overwriteOptions),d._register(i.onDidChangeConfiguration((function(e){return d._onParentConfigurationChanged(e)}))),d}return XB(t,e),t.prototype.getParentEditor=function(){return this._parentEditor},t.prototype._onParentConfigurationChanged=function(t){e.prototype.updateOptions.call(this,this._parentEditor.getRawOptions()),e.prototype.updateOptions.call(this,this._overwriteOptions)},t.prototype.updateOptions=function(t){ka(this._overwriteOptions,t,!0),e.prototype.updateOptions.call(this,this._overwriteOptions)},t=$B([QB(3,In),QB(4,Pn),QB(5,la),QB(6,qh),QB(7,fg),QB(8,ap),QB(9,gx)],t)}(Fx),eH=(n(409),function(){function e(e){this._prefix=e,this._lastId=0}return e.prototype.nextId=function(){return this._prefix+ ++this._lastId},e}()),tH=new eH("id#"),nH=new mv(new pv(0,122,204)),iH={showArrow:!0,showFrame:!0,className:"",frameColor:nH,arrowColor:nH,keepEditorSelection:!1},oH=function(){function e(e,t,n,i,o,r){this.id="",this.domNode=e,this.afterLineNumber=t,this.afterColumn=n,this.heightInLines=i,this._onDomNodeTop=o,this._onComputedHeight=r}return e.prototype.onDomNodeTop=function(e){this._onDomNodeTop(e)},e.prototype.onComputedHeight=function(e){this._onComputedHeight(e)},e}(),rH=function(){function e(e,t){this._id=e,this._domNode=t}return e.prototype.getId=function(){return this._id},e.prototype.getDomNode=function(){return this._domNode},e.prototype.getPosition=function(){return null},e}(),sH=function(){function e(t){this._editor=t,this._ruleName=e._IdGenerator.nextId(),this._decorations=[],this._color=null,this._height=-1}return e.prototype.dispose=function(){this.hide(),Ko(this._ruleName)},Object.defineProperty(e.prototype,"color",{set:function(e){this._color!==e&&(this._color=e,this._updateStyle())},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"height",{set:function(e){this._height!==e&&(this._height=e,this._updateStyle())},enumerable:!0,configurable:!0}),e.prototype._updateStyle=function(){var e,t,n;Ko(this._ruleName),e=".monaco-editor "+this._ruleName,t="border-style: solid; border-color: transparent; border-bottom-color: "+this._color+"; border-width: "+this._height+"px; bottom: -"+this._height+"px; margin-left: -"+this._height+"px; ",void 0===n&&(n=Uo()),n&&t&&n.sheet.insertRule(e+"{"+t+"}",0)},e.prototype.show=function(e){this._decorations=this._editor.deltaDecorations(this._decorations,[{range:wn.fromPositions(e),options:{className:this._ruleName,stickiness:1}}])},e.prototype.hide=function(){this._editor.deltaDecorations(this._decorations,[])},e._IdGenerator=new eH(".arrow-decoration-"),e}(),aH=function(){function e(e,t){var n=this;void 0===t&&(t={}),this._arrow=null,this._overlayWidget=null,this._resizeSash=null,this._positionMarkerId=[],this._viewZone=null,this._disposables=new Be,this.container=null,this._isShowing=!1,this.editor=e,this.options=xa(t),ka(this.options,iH,!1),this.domNode=document.createElement("div"),this.options.isAccessible||(this.domNode.setAttribute("aria-hidden","true"),this.domNode.setAttribute("role","presentation")),this._disposables.add(this.editor.onDidLayoutChange((function(e){var t=n._getWidth(e);n.domNode.style.width=t+"px",n.domNode.style.left=n._getLeft(e)+"px",n._onWidth(t)})))}return e.prototype.dispose=function(){var e=this;this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this._viewZone&&this.editor.changeViewZones((function(t){e._viewZone&&t.removeZone(e._viewZone.id),e._viewZone=null})),this.editor.deltaDecorations(this._positionMarkerId,[]),this._positionMarkerId=[],this._disposables.dispose()},e.prototype.create=function(){no(this.domNode,"zone-widget"),this.options.className&&no(this.domNode,this.options.className),this.container=document.createElement("div"),no(this.container,"zone-widget-container"),this.domNode.appendChild(this.container),this.options.showArrow&&(this._arrow=new sH(this.editor),this._disposables.add(this._arrow)),this._fillContainer(this.container),this._initSash(),this._applyStyles()},e.prototype.style=function(e){e.frameColor&&(this.options.frameColor=e.frameColor),e.arrowColor&&(this.options.arrowColor=e.arrowColor),this._applyStyles()},e.prototype._applyStyles=function(){if(this.container&&this.options.frameColor){var e=this.options.frameColor.toString();this.container.style.borderTopColor=e,this.container.style.borderBottomColor=e}if(this._arrow&&this.options.arrowColor){var t=this.options.arrowColor.toString();this._arrow.color=t}},e.prototype._getWidth=function(e){return e.width-e.minimapWidth-e.verticalScrollbarWidth},e.prototype._getLeft=function(e){return e.minimapWidth>0&&0===e.minimapLeft?e.minimapWidth:0},e.prototype._onViewZoneTop=function(e){this.domNode.style.top=e+"px"},e.prototype._onViewZoneHeight=function(e){if(this.domNode.style.height=e+"px",this.container){var t=e-this._decoratingElementsHeight();this.container.style.height=t+"px";var n=this.editor.getLayoutInfo();this._doLayout(t,this._getWidth(n))}this._resizeSash&&this._resizeSash.layout()},Object.defineProperty(e.prototype,"position",{get:function(){var e=this._positionMarkerId[0];if(e){var t=this.editor.getModel();if(t){var n=t.getDecorationRange(e);if(n)return n.getStartPosition()}}},enumerable:!0,configurable:!0}),e.prototype.show=function(e,t){var n=wn.isIRange(e)?wn.lift(e):wn.fromPositions(e);this._isShowing=!0,this._showImpl(n,t),this._isShowing=!1,this._positionMarkerId=this.editor.deltaDecorations(this._positionMarkerId,[{range:n,options:kv.EMPTY}])},e.prototype.hide=function(){var e=this;this._viewZone&&(this.editor.changeViewZones((function(t){e._viewZone&&t.removeZone(e._viewZone.id)})),this._viewZone=null),this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this._arrow&&this._arrow.hide()},e.prototype._decoratingElementsHeight=function(){var e=this.editor.getOption(49),t=0;this.options.showArrow&&(t+=2*Math.round(e/3));this.options.showFrame&&(t+=2*Math.round(e/9));return t},e.prototype._showImpl=function(e,t){var n=this,i=e.getStartPosition(),o=this.editor.getLayoutInfo(),r=this._getWidth(o);this.domNode.style.width=r+"px",this.domNode.style.left=this._getLeft(o)+"px";var s=document.createElement("div");s.style.overflow="hidden";var a=this.editor.getOption(49),u=this.editor.getLayoutInfo().height/a*.8;t>=u&&(t=u);var l=0,c=0;if(this._arrow&&this.options.showArrow&&(l=Math.round(a/3),this._arrow.height=l,this._arrow.show(i)),this.options.showFrame&&(c=Math.round(a/9)),this.editor.changeViewZones((function(e){n._viewZone&&e.removeZone(n._viewZone.id),n._overlayWidget&&(n.editor.removeOverlayWidget(n._overlayWidget),n._overlayWidget=null),n.domNode.style.top="-1000px",n._viewZone=new oH(s,i.lineNumber,i.column,t,(function(e){return n._onViewZoneTop(e)}),(function(e){return n._onViewZoneHeight(e)})),n._viewZone.id=e.addZone(n._viewZone),n._overlayWidget=new rH("vs.editor.contrib.zoneWidget"+n._viewZone.id,n.domNode),n.editor.addOverlayWidget(n._overlayWidget)})),this.container&&this.options.showFrame){var d=this.options.frameWidth?this.options.frameWidth:c;this.container.style.borderTopWidth=d+"px",this.container.style.borderBottomWidth=d+"px"}var h=t*a-this._decoratingElementsHeight();this.container&&(this.container.style.top=l+"px",this.container.style.height=h+"px",this.container.style.overflow="hidden"),this._doLayout(h,r),this.options.keepEditorSelection||this.editor.setSelection(e);var p=this.editor.getModel();if(p){var f=e.endLineNumber+1;f<=p.getLineCount()?this.revealLine(f,!1):this.revealLine(p.getLineCount(),!0)}},e.prototype.revealLine=function(e,t){t?this.editor.revealLineInCenter(e,0):this.editor.revealLine(e,0)},e.prototype.setCssClass=function(e,t){this.container&&(t&&this.container.classList.remove(t),no(this.container,e))},e.prototype._onWidth=function(e){},e.prototype._doLayout=function(e,t){},e.prototype._relayout=function(e){var t=this;this._viewZone&&this._viewZone.heightInLines!==e&&this.editor.changeViewZones((function(n){t._viewZone&&(t._viewZone.heightInLines=e,n.layoutZone(t._viewZone.id))}))},e.prototype._initSash=function(){var e,t=this;this._resizeSash||(this._resizeSash=this._disposables.add(new Yx(this.domNode,this,{orientation:1})),this.options.isResizeable||(this._resizeSash.hide(),this._resizeSash.state=0),this._disposables.add(this._resizeSash.onDidStart((function(n){t._viewZone&&(e={startY:n.startY,heightInLines:t._viewZone.heightInLines})}))),this._disposables.add(this._resizeSash.onDidEnd((function(){e=void 0}))),this._disposables.add(this._resizeSash.onDidChange((function(n){if(e){var i=(n.currentY-e.startY)/t.editor.getOption(49),o=i<0?Math.ceil(i):Math.floor(i),r=e.heightInLines+o;r>5&&r<35&&t._relayout(r)}}))))},e.prototype.getHorizontalSashLeft=function(){return 0},e.prototype.getHorizontalSashTop=function(){return(null===this.domNode.style.height?0:parseInt(this.domNode.style.height))-this._decoratingElementsHeight()/2},e.prototype.getHorizontalSashWidth=function(){var e=this.editor.getLayoutInfo();return e.width-e.minimapWidth},e}(),uH=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),lH=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},cH=function(e,t){return function(n,i){t(n,i,e)}},dH=Mn("IPeekViewService");Qx(dH,function(){function e(){this._widgets=new Map}return e.prototype.addExclusiveWidget=function(e,t){var n=this,i=this._widgets.get(e);i&&(i.listener.dispose(),i.widget.dispose());this._widgets.set(e,{widget:t,listener:t.onDidClose((function(){var i=n._widgets.get(e);i&&i.widget===t&&(i.listener.dispose(),n._widgets.delete(e))}))})},e}()),(YB=ZB||(ZB={})).inPeekEditor=new Kh("inReferenceSearchEditor",!0),YB.notInPeekEditor=YB.inPeekEditor.toNegated();var hH=function(){function e(e,t){e instanceof JB&&ZB.inPeekEditor.bindTo(t)}return e.prototype.dispose=function(){},e.ID="editor.contrib.referenceController",e=lH([cH(1,qh)],e)}();Pf(hH.ID,hH);var pH={headerBackgroundColor:mv.white,primaryHeadingColor:mv.fromHex("#333333"),secondaryHeadingColor:mv.fromHex("#6c6c6cb3")},fH=function(e){function t(t,n){void 0===n&&(n={});var i=e.call(this,t,n)||this;return i._onDidClose=new nt,i.onDidClose=i._onDidClose.event,ka(i.options,pH,!1),i}return uH(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._onDidClose.fire(this)},t.prototype.style=function(t){var n=this.options;t.headerBackgroundColor&&(n.headerBackgroundColor=t.headerBackgroundColor),t.primaryHeadingColor&&(n.primaryHeadingColor=t.primaryHeadingColor),t.secondaryHeadingColor&&(n.secondaryHeadingColor=t.secondaryHeadingColor),e.prototype.style.call(this,t)},t.prototype._applyStyles=function(){e.prototype._applyStyles.call(this);var t=this.options;this._headElement&&t.headerBackgroundColor&&(this._headElement.style.backgroundColor=t.headerBackgroundColor.toString()),this._primaryHeading&&t.primaryHeadingColor&&(this._primaryHeading.style.color=t.primaryHeadingColor.toString()),this._secondaryHeading&&t.secondaryHeadingColor&&(this._secondaryHeading.style.color=t.secondaryHeadingColor.toString()),this._bodyElement&&t.frameColor&&(this._bodyElement.style.borderColor=t.frameColor.toString())},t.prototype._fillContainer=function(e){this.setCssClass("peekview-widget"),this._headElement=er(".head"),this._bodyElement=er(".body"),this._fillHead(this._headElement),this._fillBody(this._bodyElement),e.appendChild(this._headElement),e.appendChild(this._bodyElement)},t.prototype._fillHead=function(e){var t=this,n=er(".peekview-title");Xo(this._headElement,n),co(n,"click",(function(e){return t._onTitleClick(e)})),this._fillTitleIcon(n),this._primaryHeading=er("span.filename"),this._secondaryHeading=er("span.dirname"),this._metaHeading=er("span.meta"),Xo(n,this._primaryHeading,this._secondaryHeading,this._metaHeading);var i=er(".peekview-actions");Xo(this._headElement,i);var o=this._getActionBarOptions();this._actionbarWidget=new vD(i,o),this._disposables.add(this._actionbarWidget),this._actionbarWidget.push(new df("peekview.close",r("label.close","Close"),"codicon-close",!0,(function(){return t.dispose(),Promise.resolve()})),{label:!1,icon:!0})},t.prototype._fillTitleIcon=function(e){},t.prototype._getActionBarOptions=function(){return{}},t.prototype._onTitleClick=function(e){},t.prototype.setTitle=function(e,t){this._primaryHeading&&this._secondaryHeading&&(this._primaryHeading.innerHTML=fr(e),this._primaryHeading.setAttribute("aria-label",e),t?this._secondaryHeading.innerHTML=fr(t):Yi(this._secondaryHeading))},t.prototype.setMetaTitle=function(e){this._metaHeading&&(e?(this._metaHeading.innerHTML=fr(e),tr(this._metaHeading)):nr(this._metaHeading))},t.prototype._doLayout=function(e,t){if(!this._isShowing&&e<0)this.dispose();else{var n=Math.ceil(1.2*this.editor.getOption(49)),i=Math.round(e-(n+2));this._doLayoutHead(n,t),this._doLayoutBody(i,t)}},t.prototype._doLayoutHead=function(e,t){this._headElement&&(this._headElement.style.height=e+"px",this._headElement.style.lineHeight=this._headElement.style.height)},t.prototype._doLayoutBody=function(e,t){this._bodyElement&&(this._bodyElement.style.height=e+"px")},t}(aH),gH=D_("peekViewTitle.background",{dark:"#1E1E1E",light:"#FFFFFF",hc:"#0C141F"},r("peekViewTitleBackground","Background color of the peek view title area.")),mH=D_("peekViewTitleLabel.foreground",{dark:"#FFFFFF",light:"#333333",hc:"#FFFFFF"},r("peekViewTitleForeground","Color of the peek view title.")),vH=D_("peekViewTitleDescription.foreground",{dark:"#ccccccb3",light:"#616161e6",hc:"#FFFFFF99"},r("peekViewTitleInfoForeground","Color of the peek view title info.")),_H=D_("peekView.border",{dark:"#007acc",light:"#007acc",hc:M_},r("peekViewBorder","Color of the peek view borders and arrow.")),yH=D_("peekViewResult.background",{dark:"#252526",light:"#F3F3F3",hc:mv.black},r("peekViewResultsBackground","Background color of the peek view result list.")),bH=D_("peekViewResult.lineForeground",{dark:"#bbbbbb",light:"#646465",hc:mv.white},r("peekViewResultsMatchForeground","Foreground color for line nodes in the peek view result list.")),wH=D_("peekViewResult.fileForeground",{dark:mv.white,light:"#1E1E1E",hc:mv.white},r("peekViewResultsFileForeground","Foreground color for file nodes in the peek view result list.")),CH=D_("peekViewResult.selectionBackground",{dark:"#3399ff33",light:"#3399ff33",hc:null},r("peekViewResultsSelectionBackground","Background color of the selected entry in the peek view result list.")),SH=D_("peekViewResult.selectionForeground",{dark:mv.white,light:"#6C6C6C",hc:mv.white},r("peekViewResultsSelectionForeground","Foreground color of the selected entry in the peek view result list.")),LH=D_("peekViewEditor.background",{dark:"#001F33",light:"#F2F8FC",hc:mv.black},r("peekViewEditorBackground","Background color of the peek view editor.")),xH=D_("peekViewEditorGutter.background",{dark:LH,light:LH,hc:LH},r("peekViewEditorGutterBackground","Background color of the gutter in the peek view editor.")),DH=D_("peekViewResult.matchHighlightBackground",{dark:"#ea5c004d",light:"#ea5c004d",hc:null},r("peekViewResultsMatchHighlight","Match highlight color in the peek view result list.")),NH=D_("peekViewEditor.matchHighlightBackground",{dark:"#ff8f0099",light:"#f5d802de",hc:null},r("peekViewEditorMatchHighlight","Match highlight color in the peek view editor.")),kH=D_("peekViewEditor.matchHighlightBorder",{dark:null,light:null,hc:T_},r("peekViewEditorMatchHighlightBorder","Match highlight border in the peek view editor.")),EH=function(){function e(e,t,n,i){this.isProviderFirst=e,this.parent=t,this._range=n,this._rangeCallback=i,this.id=tH.nextId()}return Object.defineProperty(e.prototype,"uri",{get:function(){return this.parent.uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"range",{get:function(){return this._range},set:function(e){this._range=e,this._rangeCallback(this)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"ariaMessage",{get:function(){return r("aria.oneReference","symbol in {0} on line {1} at column {2}",Ds(this.uri),this.range.startLineNumber,this.range.startColumn)},enumerable:!0,configurable:!0}),e}(),IH=function(){function e(e){this._modelReference=e}return e.prototype.dispose=function(){this._modelReference.dispose()},e.prototype.preview=function(e,t){void 0===t&&(t=8);var n=this._modelReference.object.textEditorModel;if(n){var i=e.startLineNumber,o=e.startColumn,r=e.endLineNumber,s=e.endColumn,a=n.getWordUntilPosition({lineNumber:i,column:o-t}),u=new wn(i,a.startColumn,i,o),l=new wn(r,s,r,1073741824),c=n.getValueInRange(u).replace(/^\s+/,""),d=n.getValueInRange(e);return{value:c+d+n.getValueInRange(l).replace(/\s+$/,""),highlight:{start:c.length,end:c.length+d.length}}}},e}(),OH=function(){function e(e,t){this.parent=e,this.uri=t,this.children=[]}return e.prototype.dispose=function(){Ae(this._preview),this._preview=void 0},Object.defineProperty(e.prototype,"preview",{get:function(){return this._preview},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"failure",{get:function(){return this._loadFailure},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"ariaMessage",{get:function(){var e=this.children.length;return 1===e?r("aria.fileReferences.1","1 symbol in {0}, full path {1}",Ds(this.uri),this.uri.fsPath):r("aria.fileReferences.N","{0} symbols in {1}, full path {2}",e,Ds(this.uri),this.uri.fsPath)},enumerable:!0,configurable:!0}),e.prototype.resolve=function(e){var t=this;return this._resolved?Promise.resolve(this):Promise.resolve(e.createModelReference(this.uri).then((function(e){if(!e.object)throw e.dispose(),new Error;return t._preview=new IH(e),t._resolved=!0,t}),(function(e){return t.children.length=0,t._resolved=!0,t._loadFailure=e,t})))},e}(),MH=function(){function e(t,n){var i=this;this._disposables=new Be,this.groups=[],this.references=[],this._onDidChangeReferenceRange=new nt,this.onDidChangeReferenceRange=this._onDidChangeReferenceRange.event,this._links=t,this._title=n;var o,r=t[0];t.sort(e._compareReferences);for(var s=0,a=t;s<a.length;s++){var u=a[s];if(o&&o.uri.toString()===u.uri.toString()||(o=new OH(this,u.uri),this.groups.push(o)),0===o.children.length||!wn.equalsRange(u.range,o.children[o.children.length-1].range)){var l=new EH(r===u,o,u.targetSelectionRange||u.range,(function(e){return i._onDidChangeReferenceRange.fire(e)}));this.references.push(l),o.children.push(l)}}}return e.prototype.dispose=function(){Ae(this.groups),this._disposables.dispose(),this._onDidChangeReferenceRange.dispose(),this.groups.length=0},e.prototype.clone=function(){return new e(this._links,this._title)},Object.defineProperty(e.prototype,"title",{get:function(){return this._title},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isEmpty",{get:function(){return 0===this.groups.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"ariaMessage",{get:function(){return this.isEmpty?r("aria.result.0","No results found"):1===this.references.length?r("aria.result.1","Found 1 symbol in {0}",this.references[0].uri.fsPath):1===this.groups.length?r("aria.result.n1","Found {0} symbols in {1}",this.references.length,this.groups[0].uri.fsPath):r("aria.result.nm","Found {0} symbols in {1} files",this.references.length,this.groups.length)},enumerable:!0,configurable:!0}),e.prototype.nextOrPreviousReference=function(e,t){var n=e.parent,i=n.children.indexOf(e),o=n.children.length,r=n.parent.groups.length;return 1===r||t&&i+1<o||!t&&i>0?(i=t?(i+1)%o:(i+o-1)%o,n.children[i]):(i=n.parent.groups.indexOf(n),t?(i=(i+1)%r,n.parent.groups[i].children[0]):(i=(i+r-1)%r,n.parent.groups[i].children[n.parent.groups[i].children.length-1]))},e.prototype.nearestReference=function(e,t){var n=this.references.map((function(n,i){return{idx:i,prefixLen:Mr(n.uri.toString(),e.toString()),offsetDist:100*Math.abs(n.range.startLineNumber-t.lineNumber)+Math.abs(n.range.startColumn-t.column)}})).sort((function(e,t){return e.prefixLen>t.prefixLen?-1:e.prefixLen<t.prefixLen?1:e.offsetDist<t.offsetDist?-1:e.offsetDist>t.offsetDist?1:0}))[0];if(n)return this.references[n.idx]},e.prototype.referenceAt=function(e,t){for(var n=0,i=this.references;n<i.length;n++){var o=i[n];if(o.uri.toString()===e.toString()&&wn.containsPosition(o.range,t))return o}},e.prototype.firstReference=function(){for(var e=0,t=this.references;e<t.length;e++){var n=t[e];if(n.isProviderFirst)return n}return this.references[0]},e._compareReferences=function(e,t){return Lr(e.uri.toString(),t.uri.toString())||wn.compareRangesUsingStarts(e.range,t.range)},e}(),TH=(n(410),n(411),function(){function e(e,t){this.supportCodicons=t,this.text="",this.title="",this.highlights=[],this.didEverRender=!1,this.domNode=document.createElement("span"),this.domNode.className="monaco-highlighted-label",e.appendChild(this.domNode)}return Object.defineProperty(e.prototype,"element",{get:function(){return this.domNode},enumerable:!0,configurable:!0}),e.prototype.set=function(t,n,i,o){void 0===n&&(n=[]),void 0===i&&(i=""),t||(t=""),o&&(t=e.escapeNewLines(t,n)),this.didEverRender&&this.text===t&&this.title===i&&Ea(this.highlights,n)||(Array.isArray(n)||(n=[]),this.text=t,this.title=i,this.highlights=n,this.render())},e.prototype.render=function(){for(var e="",t=0,n=0,i=this.highlights;n<i.length;n++){var o=i[n];if(o.end!==o.start){if(t<o.start){e+="<span>";var r=this.text.substring(t,o.start);e+=this.supportCodicons?zA(fr(r)):fr(r),e+="</span>",t=o.end}o.extraClasses?e+='<span class="highlight '+o.extraClasses+'">':e+='<span class="highlight">';var s=this.text.substring(o.start,o.end);e+=this.supportCodicons?zA(fr(s)):fr(s),e+="</span>",t=o.end}}if(t<this.text.length){e+="<span>";s=this.text.substring(t);e+=this.supportCodicons?zA(fr(s)):fr(s),e+="</span>"}this.domNode.innerHTML=e,this.title?this.domNode.title=this.title:this.domNode.removeAttribute("title"),this.didEverRender=!0},e.escapeNewLines=function(e,t){var n=0,i=0;return e.replace(/\r\n|\r|\n/g,(function(e,o){i="\r\n"===e?-1:0,o+=n;for(var r=0,s=t;r<s.length;r++){var a=s[r];a.end<=o||(a.start>=o&&(a.start+=i),a.end>=o&&(a.end+=i))}return n+=i,"⏎"}))},e}()),PH=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),RH=function(){function e(e){this._element=e}return Object.defineProperty(e.prototype,"element",{get:function(){return this._element},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"textContent",{set:function(e){this.disposed||e===this._textContent||(this._textContent=e,this._element.textContent=e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"className",{set:function(e){this.disposed||e===this._className||(this._className=e,this._element.className=e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"title",{set:function(e){this.disposed||e===this._title||(this._title=e,this._title?this._element.title=e:this._element.removeAttribute("title"))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"empty",{set:function(e){this.disposed||e===this._empty||(this._empty=e,this._element.style.marginLeft=e?"0":"")},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){this.disposed=!0},e}(),AH=function(e){function t(t,n){var i=e.call(this)||this;i.domNode=i._register(new RH(Xo(t,er(".monaco-icon-label"))));var o=Xo(i.domNode.element,er(".monaco-icon-label-container")),r=Xo(o,er("span.monaco-icon-name-container"));return i.descriptionContainer=i._register(new RH(Xo(o,er("span.monaco-icon-description-container")))),(null==n?void 0:n.supportHighlights)?i.nameNode=new WH(r,!!n.supportCodicons):i.nameNode=new FH(r),(null==n?void 0:n.supportDescriptionHighlights)?i.descriptionNodeFactory=function(){return new TH(Xo(i.descriptionContainer.element,er("span.label-description")),!!n.supportCodicons)}:i.descriptionNodeFactory=function(){return i._register(new RH(Xo(i.descriptionContainer.element,er("span.label-description"))))},i}return PH(t,e),t.prototype.setLabel=function(e,t,n){var i=["monaco-icon-label"];n&&(n.extraClasses&&i.push.apply(i,n.extraClasses),n.italic&&i.push("italic")),this.domNode.className=i.join(" "),this.domNode.title=(null==n?void 0:n.title)||"",this.nameNode.setLabel(e,n),(t||this.descriptionNode)&&(this.descriptionNode||(this.descriptionNode=this.descriptionNodeFactory()),this.descriptionNode instanceof TH?(this.descriptionNode.set(t||"",n?n.descriptionMatches:void 0),(null==n?void 0:n.descriptionTitle)?this.descriptionNode.element.title=n.descriptionTitle:this.descriptionNode.element.removeAttribute("title")):(this.descriptionNode.textContent=t||"",this.descriptionNode.title=(null==n?void 0:n.descriptionTitle)||"",this.descriptionNode.empty=!t))},t}(He),FH=function(){function e(e){this.container=e,this.label=void 0,this.singleLabel=void 0}return e.prototype.setLabel=function(e,t){if(this.label!==e||!Ea(this.options,t))if(this.label=e,this.options=t,"string"==typeof e)this.singleLabel||(this.container.innerHTML="",oo(this.container,"multiple"),this.singleLabel=Xo(this.container,er("a.label-name",{id:null==t?void 0:t.domId}))),this.singleLabel.textContent=e;else{this.container.innerHTML="",no(this.container,"multiple"),this.singleLabel=void 0;for(var n=0;n<e.length;n++){var i=e[n],o=(null==t?void 0:t.domId)&&(null==t?void 0:t.domId)+"_"+n;Xo(this.container,er("a.label-name",{id:o,"data-icon-label-count":e.length,"data-icon-label-index":n},i)),n<e.length-1&&Xo(this.container,er("span.label-separator",void 0,(null==t?void 0:t.separator)||"/"))}}},e}();var WH=function(){function e(e,t){this.container=e,this.supportCodicons=t,this.label=void 0,this.singleLabel=void 0}return e.prototype.setLabel=function(e,t){if(this.label!==e||!Ea(this.options,t))if(this.label=e,this.options=t,"string"==typeof e)this.singleLabel||(this.container.innerHTML="",oo(this.container,"multiple"),this.singleLabel=new TH(Xo(this.container,er("a.label-name",{id:null==t?void 0:t.domId})),this.supportCodicons)),this.singleLabel.set(e,null==t?void 0:t.matches,null==t?void 0:t.title,null==t?void 0:t.labelEscapeNewLines);else{this.container.innerHTML="",no(this.container,"multiple"),this.singleLabel=void 0;for(var n=(null==t?void 0:t.separator)||"/",i=function(e,t,n){if(n){var i=0;return e.map((function(e){var o={start:i,end:i+e.length},r=n.map((function(e){return Xk.intersect(o,e)})).filter((function(e){return!Xk.isEmpty(e)})).map((function(e){var t=e.start,n=e.end;return{start:t-i,end:n-i}}));return i=o.end+t.length,r}))}}(e,n,null==t?void 0:t.matches),o=0;o<e.length;o++){var r=e[o],s=i?i[o]:void 0,a=er("a.label-name",{id:(null==t?void 0:t.domId)&&(null==t?void 0:t.domId)+"_"+o,"data-icon-label-count":e.length,"data-icon-label-index":o});new TH(Xo(this.container,a),this.supportCodicons).set(r,s,null==t?void 0:t.title,null==t?void 0:t.labelEscapeNewLines),o<e.length-1&&Xo(a,er("span.label-separator",void 0,n))}}},e}(),VH=(n(412),{badgeBackground:mv.fromHex("#4D4D4D"),badgeForeground:mv.fromHex("#FFFFFF")}),BH=function(){function e(e,t){this.count=0,this.options=t||Object.create(null),ka(this.options,VH,!1),this.badgeBackground=this.options.badgeBackground,this.badgeForeground=this.options.badgeForeground,this.badgeBorder=this.options.badgeBorder,this.element=Xo(e,er(".monaco-count-badge")),this.countFormat=this.options.countFormat||"{0}",this.titleFormat=this.options.titleFormat||"",this.setCount(this.options.count||0)}return e.prototype.setCount=function(e){this.count=e,this.render()},e.prototype.setTitleFormat=function(e){this.titleFormat=e,this.render()},e.prototype.render=function(){this.element.textContent=pr(this.countFormat,this.count),this.element.title=pr(this.titleFormat,this.count),this.applyStyles()},e.prototype.style=function(e){this.badgeBackground=e.badgeBackground,this.badgeForeground=e.badgeForeground,this.badgeBorder=e.badgeBorder,this.applyStyles()},e.prototype.applyStyles=function(){if(this.element){var e=this.badgeBackground?this.badgeBackground.toString():"",t=this.badgeForeground?this.badgeForeground.toString():"",n=this.badgeBorder?this.badgeBorder.toString():"";this.element.style.backgroundColor=e,this.element.style.color=t,this.element.style.borderWidth=n?"1px":"",this.element.style.borderStyle=n?"solid":"",this.element.style.borderColor=n}},e}();function HH(e,t,n){if("string"==typeof e&&(e=Et.file(e)),n){var i=n.getWorkspaceFolder(e);if(i){var o=n.getWorkspace().folders.length>1,r=void 0;if(r=xs(i.uri,e)?"":Es(i.uri,e),o){var s=i.name?i.name:Ds(i.uri);r=r?s+" • "+r:s}return r}}if(e.scheme!==Ci.file&&e.scheme!==Ci.untitled)return e.with({query:null,fragment:null}).toString(!0);if(jH(e.fsPath))return ps(UH(e.fsPath));var a=ps(e.fsPath);return!v&&t&&(a=function(e,t){if(v||!e||!t)return e;var n=KH.original===t?KH.normalized:void 0;n||(n=""+mr(t,hs.sep)+hs.sep,KH={original:t,normalized:n});(y?vr(e,n):Or(e,n))&&(e="~/"+e.substr(n.length));return e}(a,t.userHome)),a}function zH(e){if(e){"string"==typeof e&&(e=Et.file(e));var t=Ds(e)||(e.scheme===Ci.file?e.fsPath:e.path);return jH(t)?UH(t):t}}function jH(e){return!(!v||!e||":"!==e[1])}function UH(e){return jH(e)?e.charAt(0).toUpperCase()+e.slice(1):e}var KH=Object.create(null);var qH,GH,ZH=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),YH=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},XH=function(e,t){return function(n,i){t(n,i,e)}},$H=function(){function e(e){this._resolverService=e}return e.prototype.hasChildren=function(e){return e instanceof MH||e instanceof OH&&!e.failure},e.prototype.getChildren=function(e){if(e instanceof MH)return e.groups;if(e instanceof OH)return e.resolve(this._resolverService).then((function(e){return e.children}));throw new Error("bad tree")},e=YH([XH(0,tl)],e)}(),QH=function(){function e(){}return e.prototype.getHeight=function(){return 23},e.prototype.getTemplateId=function(e){return e instanceof OH?nz.id:oz.id},e}(),JH=function(){function e(e){this._keybindingService=e}return e.prototype.getKeyboardNavigationLabel=function(e){if(e instanceof EH){var t=e.parent.preview,n=t&&t.preview(e.range);if(n)return n.value}return Ds(e.uri)},e=YH([XH(0,XD)],e)}(),ez=function(){function e(){}return e.prototype.getId=function(e){return e instanceof EH?e.id:e.uri},e}(),tz=function(e){function t(t,n,i){var o=e.call(this)||this;o._uriLabel=n;var r=document.createElement("div");return no(r,"reference-file"),o.file=o._register(new AH(r,{supportHighlights:!0})),o.badge=new BH(Xo(r,er(".count"))),o._register(function(e,t,n){return qk(t,{badgeBackground:n&&n.badgeBackground||ty,badgeForeground:n&&n.badgeForeground||ny,badgeBorder:M_},e)}(o.badge,i)),t.appendChild(r),o}return ZH(t,e),t.prototype.set=function(e,t){var n=Ns(e.uri);this.file.setLabel(zH(e.uri),this._uriLabel.getUriLabel(n,{relative:!0}),{title:this._uriLabel.getUriLabel(e.uri),matches:t});var i=e.children.length;this.badge.setCount(i),e.failure?this.badge.setTitleFormat(r("referencesFailre","Failed to resolve file.")):i>1?this.badge.setTitleFormat(r("referencesCount","{0} references",i)):this.badge.setTitleFormat(r("referenceCount","{0} reference",i))},t=YH([XH(1,yE),XH(2,fg)],t)}(He),nz=function(){function e(t){this._instantiationService=t,this.templateId=e.id}return e.prototype.renderTemplate=function(e){return this._instantiationService.createInstance(tz,e)},e.prototype.renderElement=function(e,t,n){n.set(e.element,JE(e.filterData))},e.prototype.disposeTemplate=function(e){e.dispose()},e.id="FileReferencesRenderer",e=YH([XH(0,In)],e)}(),iz=function(){function e(e){this.label=new TH(e,!1)}return e.prototype.set=function(e,t){var n=e.parent.preview,i=n&&n.preview(e.range);if(i){var o=i.value,r=i.highlight;t&&!nI.isDefault(t)?(so(this.label.element,"referenceMatch",!1),this.label.set(o,JE(t))):(so(this.label.element,"referenceMatch",!0),this.label.set(o,[r]))}else this.label.set(Ds(e.uri)+":"+(e.range.startLineNumber+1)+":"+(e.range.startColumn+1))},e}(),oz=function(){function e(){this.templateId=e.id}return e.prototype.renderTemplate=function(e){return new iz(e)},e.prototype.renderElement=function(e,t,n){n.set(e.element,e.filterData)},e.prototype.disposeTemplate=function(){},e.id="OneReferenceRenderer",e}(),rz=function(){function e(){}return e.prototype.getAriaLabel=function(e){return e.ariaMessage},e}(),sz=(n(413),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),az=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},uz={separatorBorder:mv.transparent},lz=function(){function e(e,t,n,i){this.container=e,this.view=t,this.disposable=i,this._cachedVisibleSize=void 0,"number"==typeof n?(this._size=n,this._cachedVisibleSize=void 0,no(e,"visible")):(this._size=0,this._cachedVisibleSize=n.cachedVisibleSize)}return Object.defineProperty(e.prototype,"size",{get:function(){return this._size},set:function(e){this._size=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"visible",{get:function(){return void 0===this._cachedVisibleSize},enumerable:!0,configurable:!0}),e.prototype.setVisible=function(e,t){e!==this.visible&&(e?(this.size=RE(this._cachedVisibleSize,this.viewMinimumSize,this.viewMaximumSize),this._cachedVisibleSize=void 0):(this._cachedVisibleSize="number"==typeof t?t:this.size,this.size=0),so(this.container,"visible",e),this.view.setVisible&&this.view.setVisible(e))},Object.defineProperty(e.prototype,"minimumSize",{get:function(){return this.visible?this.view.minimumSize:0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"viewMinimumSize",{get:function(){return this.view.minimumSize},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"maximumSize",{get:function(){return this.visible?this.view.maximumSize:0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"viewMaximumSize",{get:function(){return this.view.maximumSize},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"priority",{get:function(){return this.view.priority},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"snap",{get:function(){return!!this.view.snap},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"enabled",{set:function(e){this.container.style.pointerEvents=e?null:"none"},enumerable:!0,configurable:!0}),e.prototype.layout=function(e,t){this.layoutContainer(e),this.view.layout(this.size,e,t)},e.prototype.dispose=function(){return this.disposable.dispose(),this.view},e}(),cz=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return sz(t,e),t.prototype.layoutContainer=function(e){this.container.style.top=e+"px",this.container.style.height=this.size+"px"},t}(lz),dz=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return sz(t,e),t.prototype.layoutContainer=function(e){this.container.style.left=e+"px",this.container.style.width=this.size+"px"},t}(lz);!function(e){e[e.Idle=0]="Idle",e[e.Busy=1]="Busy"}(qH||(qH={})),function(e){e.Distribute={type:"distribute"},e.Split=function(e){return{type:"split",index:e}},e.Invisible=function(e){return{type:"invisible",cachedVisibleSize:e}}}(GH||(GH={}));var hz=function(e){function t(t,n){void 0===n&&(n={});var i=e.call(this)||this;return i.size=0,i.contentSize=0,i.proportions=void 0,i.viewItems=[],i.sashItems=[],i.state=qH.Idle,i._onDidSashChange=i._register(new nt),i.onDidSashChange=i._onDidSashChange.event,i._onDidSashReset=i._register(new nt),i._startSnappingEnabled=!0,i._endSnappingEnabled=!0,i.orientation=Bs(n.orientation)?0:n.orientation,i.inverseAltBehavior=!!n.inverseAltBehavior,i.proportionalLayout=!!Bs(n.proportionalLayout)||!!n.proportionalLayout,i.el=document.createElement("div"),no(i.el,"monaco-split-view2"),no(i.el,0===i.orientation?"vertical":"horizontal"),t.appendChild(i.el),i.sashContainer=Xo(i.el,er(".sash-container")),i.viewContainer=Xo(i.el,er(".split-view-container")),i.style(n.styles||uz),n.descriptor&&(i.size=n.descriptor.size,n.descriptor.views.forEach((function(e,t){var n=Bs(e.visible)||e.visible?e.size:{type:"invisible",cachedVisibleSize:e.size},o=e.view;i.doAddView(o,n,t,!0)})),i.contentSize=i.viewItems.reduce((function(e,t){return e+t.size}),0),i.saveProportions()),i}return sz(t,e),Object.defineProperty(t.prototype,"orthogonalStartSash",{get:function(){return this._orthogonalStartSash},set:function(e){for(var t=0,n=this.sashItems;t<n.length;t++){n[t].sash.orthogonalStartSash=e}this._orthogonalStartSash=e},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"orthogonalEndSash",{get:function(){return this._orthogonalEndSash},set:function(e){for(var t=0,n=this.sashItems;t<n.length;t++){n[t].sash.orthogonalEndSash=e}this._orthogonalEndSash=e},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"startSnappingEnabled",{get:function(){return this._startSnappingEnabled},set:function(e){this._startSnappingEnabled!==e&&(this._startSnappingEnabled=e,this.updateSashEnablement())},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"endSnappingEnabled",{get:function(){return this._endSnappingEnabled},set:function(e){this._endSnappingEnabled!==e&&(this._endSnappingEnabled=e,this.updateSashEnablement())},enumerable:!0,configurable:!0}),t.prototype.style=function(e){e.separatorBorder.isTransparent()?(oo(this.el,"separator-border"),this.el.style.removeProperty("--separator-border")):(no(this.el,"separator-border"),this.el.style.setProperty("--separator-border",e.separatorBorder.toString()))},t.prototype.addView=function(e,t,n){void 0===n&&(n=this.viewItems.length),this.doAddView(e,t,n,!1)},t.prototype.layout=function(e,t){var n=this,i=Math.max(this.size,this.contentSize);if(this.size=e,this.layoutContext=t,this.proportions)for(var o=0;o<this.viewItems.length;o++){var r=this.viewItems[o];r.size=RE(Math.round(this.proportions[o]*e),r.minimumSize,r.maximumSize)}else{var s=Wi(this.viewItems.length),a=s.filter((function(e){return 1===n.viewItems[e].priority})),u=s.filter((function(e){return 2===n.viewItems[e].priority}));this.resize(this.viewItems.length-1,e-i,void 0,a,u)}this.distributeEmptySpace(),this.layoutViews()},t.prototype.saveProportions=function(){var e=this;this.proportionalLayout&&this.contentSize>0&&(this.proportions=this.viewItems.map((function(t){return t.size/e.contentSize})))},t.prototype.onSashStart=function(e){for(var t=this,n=e.sash,i=e.start,o=e.alt,r=0,s=this.viewItems;r<s.length;r++){s[r].enabled=!1}var a=Pi(this.sashItems,(function(e){return e.sash===n})),u=Fe(Xn(document.body,"keydown")((function(e){return l(t.sashDragState.current,e.altKey)})),Xn(document.body,"keyup")((function(){return l(t.sashDragState.current,!1)}))),l=function(e,n){var i,o,r=t.viewItems.map((function(e){return e.size})),s=Number.NEGATIVE_INFINITY,l=Number.POSITIVE_INFINITY;(t.inverseAltBehavior&&(n=!n),n)&&(a===t.sashItems.length-1?(s=((b=t.viewItems[a]).minimumSize-b.size)/2,l=(b.maximumSize-b.size)/2):(s=((b=t.viewItems[a+1]).size-b.maximumSize)/2,l=(b.size-b.minimumSize)/2));if(!n){var c=Wi(a,-1),d=Wi(a+1,t.viewItems.length),h=c.reduce((function(e,n){return e+(t.viewItems[n].minimumSize-r[n])}),0),p=c.reduce((function(e,n){return e+(t.viewItems[n].viewMaximumSize-r[n])}),0),f=0===d.length?Number.POSITIVE_INFINITY:d.reduce((function(e,n){return e+(r[n]-t.viewItems[n].minimumSize)}),0),g=0===d.length?Number.NEGATIVE_INFINITY:d.reduce((function(e,n){return e+(r[n]-t.viewItems[n].viewMaximumSize)}),0),m=Math.max(h,g),v=Math.min(f,p),_=t.findFirstSnapIndex(c),y=t.findFirstSnapIndex(d);if("number"==typeof _){var b=t.viewItems[_],w=Math.floor(b.viewMinimumSize/2);i={index:_,limitDelta:b.visible?m-w:m+w,size:b.size}}if("number"==typeof y){b=t.viewItems[y],w=Math.floor(b.viewMinimumSize/2);o={index:y,limitDelta:b.visible?v+w:v-w,size:b.size}}}t.sashDragState={start:e,current:e,index:a,sizes:r,minDelta:s,maxDelta:l,alt:n,snapBefore:i,snapAfter:o,disposable:u}};l(i,o)},t.prototype.onSashChange=function(e){var t=e.current,n=this.sashDragState,i=n.index,o=n.start,r=n.sizes,s=n.alt,a=n.minDelta,u=n.maxDelta,l=n.snapBefore,c=n.snapAfter;this.sashDragState.current=t;var d=t-o,h=this.resize(i,d,r,void 0,void 0,a,u,l,c);if(s){var p=i===this.sashItems.length-1,f=this.viewItems.map((function(e){return e.size})),g=p?i:i+1,m=this.viewItems[g],v=m.size-m.maximumSize,_=m.size-m.minimumSize,y=p?i-1:i+1;this.resize(y,-h,f,void 0,void 0,v,_)}this.distributeEmptySpace(),this.layoutViews()},t.prototype.onSashEnd=function(e){this._onDidSashChange.fire(e),this.sashDragState.disposable.dispose(),this.saveProportions();for(var t=0,n=this.viewItems;t<n.length;t++){n[t].enabled=!0}},t.prototype.onViewChange=function(e,t){var n=this.viewItems.indexOf(e);n<0||n>=this.viewItems.length||(t=RE(t="number"==typeof t?t:e.size,e.minimumSize,e.maximumSize),this.inverseAltBehavior&&n>0?(this.resize(n-1,Math.floor((e.size-t)/2)),this.distributeEmptySpace(),this.layoutViews()):(e.size=t,this.relayout([n],void 0)))},t.prototype.resizeView=function(e,t){var n=this;if(this.state!==qH.Idle)throw new Error("Cant modify splitview");if(this.state=qH.Busy,!(e<0||e>=this.viewItems.length)){var i=Wi(this.viewItems.length).filter((function(t){return t!==e})),o=az(i.filter((function(e){return 1===n.viewItems[e].priority})),[e]),r=i.filter((function(e){return 2===n.viewItems[e].priority})),s=this.viewItems[e];t=RE(t=Math.round(t),s.minimumSize,Math.min(s.maximumSize,this.size)),s.size=t,this.relayout(o,r),this.state=qH.Idle}},t.prototype.distributeViewSizes=function(){for(var e=this,t=[],n=0,i=0,o=this.viewItems;i<o.length;i++){(u=o[i]).maximumSize-u.minimumSize>0&&(t.push(u),n+=u.size)}for(var r=Math.floor(n/t.length),s=0,a=t;s<a.length;s++){var u;(u=a[s]).size=RE(r,u.minimumSize,u.maximumSize)}var l=Wi(this.viewItems.length),c=l.filter((function(t){return 1===e.viewItems[t].priority})),d=l.filter((function(t){return 2===e.viewItems[t].priority}));this.relayout(c,d)},t.prototype.getViewSize=function(e){return e<0||e>=this.viewItems.length?-1:this.viewItems[e].size},t.prototype.doAddView=function(e,t,n,i){var o=this;if(void 0===n&&(n=this.viewItems.length),this.state!==qH.Idle)throw new Error("Cant modify splitview");this.state=qH.Busy;var r=er(".split-view-view");n===this.viewItems.length?this.viewContainer.appendChild(r):this.viewContainer.insertBefore(r,this.viewContainer.children.item(n));var s,a=Fe(e.onDidChange((function(e){return o.onViewChange(l,e)})),We((function(){return o.viewContainer.removeChild(r)})));s="number"==typeof t?t:"split"===t.type?this.getViewSize(t.index)/2:"invisible"===t.type?{cachedVisibleSize:t.cachedVisibleSize}:e.minimumSize;var u,l=0===this.orientation?new cz(r,e,s,a):new dz(r,e,s,a);if(this.viewItems.splice(n,0,l),this.viewItems.length>1){var c=0===this.orientation?1:0,d=0===this.orientation?{getHorizontalSashTop:function(e){return o.getSashPosition(e)}}:{getVerticalSashLeft:function(e){return o.getSashPosition(e)}},h=new Yx(this.sashContainer,d,{orientation:c,orthogonalStartSash:this.orthogonalStartSash,orthogonalEndSash:this.orthogonalEndSash}),p=0===this.orientation?function(e){return{sash:h,start:e.startY,current:e.currentY,alt:e.altKey}}:function(e){return{sash:h,start:e.startX,current:e.currentX,alt:e.altKey}},f=Fe(Ge.map(h.onDidStart,p)(this.onSashStart,this),Ge.map(h.onDidChange,p)(this.onSashChange,this),Ge.map(h.onDidEnd,(function(){return Pi(o.sashItems,(function(e){return e.sash===h}))}))(this.onSashEnd,this),h.onDidReset((function(){var e=Pi(o.sashItems,(function(e){return e.sash===h})),t=Wi(e,-1),n=Wi(e+1,o.viewItems.length),i=o.findFirstSnapIndex(t),r=o.findFirstSnapIndex(n);("number"!=typeof i||o.viewItems[i].visible)&&("number"!=typeof r||o.viewItems[r].visible)&&o._onDidSashReset.fire(e)})),h),g={sash:h,disposable:f};this.sashItems.splice(n-1,0,g)}r.appendChild(e.element),"number"!=typeof t&&"split"===t.type&&(u=[t.index]),i||this.relayout([n],u),this.state=qH.Idle,i||"number"==typeof t||"distribute"!==t.type||this.distributeViewSizes()},t.prototype.relayout=function(e,t){var n=this.viewItems.reduce((function(e,t){return e+t.size}),0);this.resize(this.viewItems.length-1,this.size-n,void 0,e,t),this.distributeEmptySpace(),this.layoutViews(),this.saveProportions()},t.prototype.resize=function(e,t,n,i,o,r,s,a,u){var l=this;if(void 0===n&&(n=this.viewItems.map((function(e){return e.size}))),void 0===r&&(r=Number.NEGATIVE_INFINITY),void 0===s&&(s=Number.POSITIVE_INFINITY),e<0||e>=this.viewItems.length)return 0;var c=Wi(e,-1),d=Wi(e+1,this.viewItems.length);if(o)for(var h=0,p=o;h<p.length;h++){var f=p[h];Bi(c,f),Bi(d,f)}if(i)for(var g=0,m=i;g<m.length;g++){var v=m[g];Hi(c,v),Hi(d,v)}var _=c.map((function(e){return l.viewItems[e]})),y=c.map((function(e){return n[e]})),b=d.map((function(e){return l.viewItems[e]})),w=d.map((function(e){return n[e]})),C=c.reduce((function(e,t){return e+(l.viewItems[t].minimumSize-n[t])}),0),S=c.reduce((function(e,t){return e+(l.viewItems[t].maximumSize-n[t])}),0),L=0===d.length?Number.POSITIVE_INFINITY:d.reduce((function(e,t){return e+(n[t]-l.viewItems[t].minimumSize)}),0),x=0===d.length?Number.NEGATIVE_INFINITY:d.reduce((function(e,t){return e+(n[t]-l.viewItems[t].maximumSize)}),0),D=Math.max(C,x,r),N=Math.min(L,S,s),k=!1;if(a){var E=this.viewItems[a.index];k=(I=t>=a.limitDelta)!==E.visible,E.setVisible(I,a.size)}if(!k&&u){var I;E=this.viewItems[u.index];k=(I=t<u.limitDelta)!==E.visible,E.setVisible(I,u.size)}if(k)return this.resize(e,t,n,i,o,r,s);for(var O=0,M=t=RE(t,D,N);O<_.length;O++){var T=_[O];M-=(R=RE(y[O]+M,T.minimumSize,T.maximumSize))-y[O],T.size=R}O=0;for(var P=t;O<b.length;O++){var R;T=b[O];P+=(R=RE(w[O]-P,T.minimumSize,T.maximumSize))-w[O],T.size=R}return t},t.prototype.distributeEmptySpace=function(e){for(var t=this,n=this.viewItems.reduce((function(e,t){return e+t.size}),0),i=this.size-n,o=Wi(this.viewItems.length-1,-1),r=o.filter((function(e){return 1===t.viewItems[e].priority})),s=0,a=o.filter((function(e){return 2===t.viewItems[e].priority}));s<a.length;s++){Bi(o,a[s])}for(var u=0,l=r;u<l.length;u++){Hi(o,l[u])}"number"==typeof e&&Hi(o,e);for(var c=0;0!==i&&c<o.length;c++){var d=this.viewItems[o[c]],h=RE(d.size+i,d.minimumSize,d.maximumSize);i-=h-d.size,d.size=h}},t.prototype.layoutViews=function(){this.contentSize=this.viewItems.reduce((function(e,t){return e+t.size}),0);for(var e=0,t=0,n=this.viewItems;t<n.length;t++){var i=n[t];i.layout(e,this.layoutContext),e+=i.size}this.sashItems.forEach((function(e){return e.sash.layout()})),this.updateSashEnablement()},t.prototype.updateSashEnablement=function(){var e=!1,t=this.viewItems.map((function(t){return e=t.size-t.minimumSize>0||e}));e=!1;var n=this.viewItems.map((function(t){return e=t.maximumSize-t.size>0||e})),i=az(this.viewItems).reverse();e=!1;var o=i.map((function(t){return e=t.size-t.minimumSize>0||e})).reverse();e=!1;for(var r=i.map((function(t){return e=t.maximumSize-t.size>0||e})).reverse(),s=0,a=0;a<this.sashItems.length;a++){var u=this.sashItems[a].sash;s+=this.viewItems[a].size;var l=!(t[a]&&r[a+1]),c=!(n[a]&&o[a+1]);if(l&&c){var d=Wi(a,-1),h=Wi(a+1,this.viewItems.length),p=this.findFirstSnapIndex(d),f=this.findFirstSnapIndex(h),g="number"==typeof p&&!this.viewItems[p].visible,m="number"==typeof f&&!this.viewItems[f].visible;g&&o[a]&&(s>0||this.startSnappingEnabled)?u.state=1:m&&t[a]&&(s<this.contentSize||this.endSnappingEnabled)?u.state=2:u.state=0}else u.state=l&&!c?1:!l&&c?2:3}},t.prototype.getSashPosition=function(e){for(var t=0,n=0;n<this.sashItems.length;n++)if(t+=this.viewItems[n].size,this.sashItems[n].sash===e)return Math.min(t,this.contentSize-2);return 0},t.prototype.findFirstSnapIndex=function(e){for(var t=0,n=e;t<n.length;t++){var i=n[t];if((s=this.viewItems[i]).visible&&s.snap)return i}for(var o=0,r=e;o<r.length;o++){var s;i=r[o];if((s=this.viewItems[i]).visible&&s.maximumSize-s.minimumSize>0)return;if(!s.visible&&s.snap)return i}},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.viewItems.forEach((function(e){return e.dispose()})),this.viewItems=[],this.sashItems.forEach((function(e){return e.disposable.dispose()})),this.sashItems=[]},t}(He),pz=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),fz=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},gz=function(e,t){return function(n,i){t(n,i,e)}},mz=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},vz=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},_z=function(){function e(e,t){var n=this;this._editor=e,this._model=t,this._decorations=new Map,this._decorationIgnoreSet=new Set,this._callOnDispose=new Be,this._callOnModelChange=new Be,this._callOnDispose.add(this._editor.onDidChangeModel((function(){return n._onModelChanged()}))),this._onModelChanged()}return e.prototype.dispose=function(){this._callOnModelChange.dispose(),this._callOnDispose.dispose(),this.removeDecorations()},e.prototype._onModelChanged=function(){this._callOnModelChange.clear();var e=this._editor.getModel();if(e)for(var t=0,n=this._model.groups;t<n.length;t++){var i=n[t];if(xs(i.uri,e.uri))return void this._addDecorations(i)}},e.prototype._addDecorations=function(t){var n=this;if(this._editor.hasModel()){this._callOnModelChange.add(this._editor.getModel().onDidChangeDecorations((function(e){return n._onDecorationChanged()})));for(var i=[],o=[],r=0,s=t.children.length;r<s;r++){var a=t.children[r];this._decorationIgnoreSet.has(a.id)||(i.push({range:a.range,options:e.DecorationOptions}),o.push(r))}var u=this._editor.deltaDecorations([],i);for(r=0;r<u.length;r++)this._decorations.set(u[r],t.children[o[r]])}},e.prototype._onDecorationChanged=function(){var e=this,t=[],n=this._editor.getModel();if(n){this._decorations.forEach((function(i,o){var r=n.getDecorationRange(o);if(r){var s=!1;if(!wn.equalsRange(r,i.range))(wn.spansMultipleLines(r)||i.range.endColumn-i.range.startColumn!==r.endColumn-r.startColumn)&&(s=!0),s?(e._decorationIgnoreSet.add(i.id),t.push(o)):i.range=r}}));for(var i=0,o=t.length;i<o;i++)this._decorations.delete(t[i]);this._editor.deltaDecorations(t,[])}},e.prototype.removeDecorations=function(){var e=[];this._decorations.forEach((function(t,n){e.push(n)})),this._editor.deltaDecorations(e,[]),this._decorations.clear()},e.DecorationOptions=kv.register({stickiness:1,className:"reference-decoration"}),e}(),yz=function(){function e(){this.ratio=.7,this.heightInLines=18}return e.fromJSON=function(e){var t,n;try{var i=JSON.parse(e);t=i.ratio,n=i.heightInLines}catch(e){}return{ratio:t||.7,heightInLines:n||18}},e}(),bz=function(e){function t(t,n,i,o,r,s,a,u){var l=e.call(this,t,{showFrame:!1,showArrow:!0,isResizeable:!0,isAccessible:!0})||this;return l._defaultTreeKeyboardSupport=n,l.layoutData=i,l._textModelResolverService=r,l._instantiationService=s,l._peekViewService=a,l._uriLabel=u,l._disposeOnNewModel=new Be,l._callOnDispose=new Be,l._onDidSelectReference=new nt,l.onDidSelectReference=l._onDidSelectReference.event,l._dim={height:0,width:0},l._applyTheme(o.getTheme()),l._callOnDispose.add(o.onThemeChange(l._applyTheme.bind(l))),l._peekViewService.addExclusiveWidget(t,l),l.create(),l}return pz(t,e),t.prototype.dispose=function(){this.setModel(void 0),this._callOnDispose.dispose(),this._disposeOnNewModel.dispose(),Ae(this._preview),Ae(this._previewNotAvailableMessage),Ae(this._tree),Ae(this._previewModelReference),this._splitView.dispose(),e.prototype.dispose.call(this)},t.prototype._applyTheme=function(e){var t=e.getColor(_H)||mv.transparent;this.style({arrowColor:t,frameColor:t,headerBackgroundColor:e.getColor(gH)||mv.transparent,primaryHeadingColor:e.getColor(mH),secondaryHeadingColor:e.getColor(vH)})},t.prototype.show=function(t){this.editor.revealRangeInCenterIfOutsideViewport(t,0),e.prototype.show.call(this,t,this.layoutData.heightInLines||18)},t.prototype.focusOnReferenceTree=function(){this._tree.domFocus()},t.prototype.focusOnPreviewEditor=function(){this._preview.focus()},t.prototype.isPreviewEditorFocused=function(){return this._preview.hasTextFocus()},t.prototype._onTitleClick=function(e){this._preview&&this._preview.getModel()&&this._onDidSelectReference.fire({element:this._getFocusedReference(),kind:e.ctrlKey||e.metaKey||e.altKey?"side":"open",source:"title"})},t.prototype._fillBody=function(e){var t=this;this.setCssClass("reference-zone-widget"),this._messageContainer=Xo(e,er("div.messages")),nr(this._messageContainer),this._splitView=new hz(e,{orientation:1}),this._previewContainer=Xo(e,er("div.preview.inline"));this._preview=this._instantiationService.createInstance(JB,this._previewContainer,{scrollBeyondLastLine:!1,scrollbar:{verticalScrollbarSize:14,horizontal:"auto",useShadows:!0,verticalHasArrows:!1,horizontalHasArrows:!1,alwaysConsumeMouseWheel:!1},overviewRulerLanes:2,fixedOverflowWidgets:!0,minimap:{enabled:!1}},this.editor),nr(this._previewContainer),this._previewNotAvailableMessage=Cv.createFromString(r("missingPreviewMessage","no preview available")),this._treeContainer=Xo(e,er("div.ref-tree.inline"));var n={ariaLabel:r("treeAriaLabel","References"),keyboardSupport:this._defaultTreeKeyboardSupport,accessibilityProvider:new rz,keyboardNavigationLabelProvider:this._instantiationService.createInstance(JH),identityProvider:new ez,overrideStyles:{listBackground:yH}};this._tree=this._instantiationService.createInstance(xM,"ReferencesWidget",this._treeContainer,new QH,[this._instantiationService.createInstance(nz),this._instantiationService.createInstance(oz)],this._instantiationService.createInstance($H),n),this._splitView.addView({onDidChange:Ge.None,element:this._previewContainer,minimumSize:200,maximumSize:Number.MAX_VALUE,layout:function(e){t._preview.layout({height:t._dim.height,width:e})}},GH.Distribute),this._splitView.addView({onDidChange:Ge.None,element:this._treeContainer,minimumSize:100,maximumSize:Number.MAX_VALUE,layout:function(e){t._treeContainer.style.height=t._dim.height+"px",t._treeContainer.style.width=e+"px",t._tree.layout(t._dim.height,e)}},GH.Distribute),this._disposables.add(this._splitView.onDidSashChange((function(){t._dim.width&&(t.layoutData.ratio=t._splitView.getViewSize(0)/t._dim.width)}),void 0));var i=function(e,n){e instanceof EH&&("show"===n&&t._revealReference(e,!1),t._onDidSelectReference.fire({element:e,kind:n,source:"tree"}))};this._tree.onDidChangeFocus((function(e){i(e.elements[0],"show")})),this._tree.onDidOpen((function(e){e.browserEvent instanceof MouseEvent&&(e.browserEvent.ctrlKey||e.browserEvent.metaKey||e.browserEvent.altKey)?i(e.elements[0],"side"):e.browserEvent instanceof KeyboardEvent||e.browserEvent instanceof MouseEvent&&2===e.browserEvent.detail||2===e.browserEvent.tapCount?i(e.elements[0],"goto"):i(e.elements[0],"show")})),nr(this._treeContainer)},t.prototype._onWidth=function(e){this._dim&&this._doLayoutBody(this._dim.height,e)},t.prototype._doLayoutBody=function(t,n){e.prototype._doLayoutBody.call(this,t,n),this._dim={height:t,width:n},this.layoutData.heightInLines=this._viewZone?this._viewZone.heightInLines:this.layoutData.heightInLines,this._splitView.layout(n),this._splitView.resizeView(0,n*this.layoutData.ratio)},t.prototype.setSelection=function(e){var t=this;return this._revealReference(e,!0).then((function(){t._model&&(t._tree.setSelection([e]),t._tree.setFocus([e]))}))},t.prototype.setModel=function(e){return this._disposeOnNewModel.clear(),this._model=e,this._model?this._onNewModel():Promise.resolve()},t.prototype._onNewModel=function(){var e=this;return this._model?this._model.isEmpty?(this.setTitle(""),this._messageContainer.innerHTML=r("noResults","No results"),tr(this._messageContainer),Promise.resolve(void 0)):(nr(this._messageContainer),this._decorationsManager=new _z(this._preview,this._model),this._disposeOnNewModel.add(this._decorationsManager),this._disposeOnNewModel.add(this._model.onDidChangeReferenceRange((function(t){return e._tree.rerender(t)}))),this._disposeOnNewModel.add(this._preview.onMouseDown((function(t){var n=t.event,i=t.target;if(2===n.detail){var o=e._getFocusedReference();o&&e._onDidSelectReference.fire({element:{uri:o.uri,range:i.range},kind:n.ctrlKey||n.metaKey||n.altKey?"side":"open",source:"editor"})}}))),no(this.container,"results-loaded"),tr(this._treeContainer),tr(this._previewContainer),this._splitView.layout(this._dim.width),this.focusOnReferenceTree(),this._tree.setInput(1===this._model.groups.length?this._model.groups[0]:this._model)):Promise.resolve(void 0)},t.prototype._getFocusedReference=function(){var e=this._tree.getFocus()[0];return e instanceof EH?e:e instanceof OH&&e.children.length>0?e.children[0]:void 0},t.prototype._revealReference=function(e,t){return mz(this,void 0,void 0,(function(){var n,i,o,s,a;return vz(this,(function(u){switch(u.label){case 0:return this._revealedReference===e?[2]:(this._revealedReference=e,e.uri.scheme!==Ci.inMemory?this.setTitle(Ss(e.uri),this._uriLabel.getUriLabel(Ns(e.uri))):this.setTitle(r("peekView.alternateTitle","References")),n=this._textModelResolverService.createModelReference(e.uri),this._tree.getInput()!==e.parent?[3,1]:(this._tree.reveal(e),[3,3]));case 1:return t&&this._tree.reveal(e.parent),[4,this._tree.expand(e.parent)];case 2:u.sent(),this._tree.reveal(e),u.label=3;case 3:return[4,n];case 4:return i=u.sent(),this._model?(Ae(this._previewModelReference),(o=i.object)?(s=this._preview.getModel()===o.textEditorModel?0:1,a=wn.lift(e.range).collapseToStart(),this._previewModelReference=i,this._preview.setModel(o.textEditorModel),this._preview.setSelection(a),this._preview.revealRangeInCenter(a,s)):(this._preview.setModel(this._previewNotAvailableMessage),i.dispose()),[2]):(i.dispose(),[2])}}))}))},t=fz([gz(3,fg),gz(4,tl),gz(5,In),gz(6,dH),gz(7,yE)],t)}(fH);yg((function(e,t){var n=e.getColor(DH);n&&t.addRule(".monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight { background-color: "+n+"; }");var i=e.getColor(NH);i&&t.addRule(".monaco-editor .reference-zone-widget .preview .reference-decoration { background-color: "+i+"; }");var o=e.getColor(kH);o&&t.addRule(".monaco-editor .reference-zone-widget .preview .reference-decoration { border: 2px solid "+o+"; box-sizing: border-box; }");var r=e.getColor(T_);r&&t.addRule(".monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight { border: 1px dotted "+r+"; box-sizing: border-box; }");var s=e.getColor(yH);s&&t.addRule(".monaco-editor .reference-zone-widget .ref-tree { background-color: "+s+"; }");var a=e.getColor(bH);a&&t.addRule(".monaco-editor .reference-zone-widget .ref-tree { color: "+a+"; }");var u=e.getColor(wH);u&&t.addRule(".monaco-editor .reference-zone-widget .ref-tree .reference-file { color: "+u+"; }");var l=e.getColor(CH);l&&t.addRule(".monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows > .monaco-list-row.selected:not(.highlighted) { background-color: "+l+"; }");var c=e.getColor(SH);c&&t.addRule(".monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows > .monaco-list-row.selected:not(.highlighted) { color: "+c+" !important; }");var d=e.getColor(LH);d&&t.addRule(".monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background,.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input {\tbackground-color: "+d+";}");var h=e.getColor(xH);h&&t.addRule(".monaco-editor .reference-zone-widget .preview .monaco-editor .margin {\tbackground-color: "+h+";}")}));var wz=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Cz=function(e,t){return function(n,i){t(n,i,e)}},Sz=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},Lz=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},xz=new Kh("referenceSearchVisible",!1),Dz=function(){function e(e,t,n,i,o,r,s,a){this._defaultTreeKeyboardSupport=e,this._editor=t,this._editorService=i,this._notificationService=o,this._instantiationService=r,this._storageService=s,this._configurationService=a,this._disposables=new Be,this._requestIdPool=0,this._ignoreModelChangeEvent=!1,this._referenceSearchVisible=xz.bindTo(n)}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.dispose=function(){this._referenceSearchVisible.reset(),this._disposables.dispose(),Ae(this._widget),Ae(this._model),this._widget=void 0,this._model=void 0},e.prototype.toggleWidget=function(e,t,n){var i,o=this;if(this._widget&&(i=this._widget.position),this.closeWidget(),!i||!e.containsPosition(i)){this._peekMode=n,this._referenceSearchVisible.set(!0),this._disposables.add(this._editor.onDidChangeModelLanguage((function(){o.closeWidget()}))),this._disposables.add(this._editor.onDidChangeModel((function(){o._ignoreModelChangeEvent||o.closeWidget()})));var s=yz.fromJSON(this._storageService.get("peekViewLayout",0,"{}"));this._widget=this._instantiationService.createInstance(bz,this._editor,this._defaultTreeKeyboardSupport,s),this._widget.setTitle(r("labelLoading","Loading...")),this._widget.show(e),this._disposables.add(this._widget.onDidClose((function(){t.cancel(),o._widget&&(o._storageService.store("peekViewLayout",JSON.stringify(o._widget.layoutData),0),o._widget=void 0),o.closeWidget()}))),this._disposables.add(this._widget.onDidSelectReference((function(e){var t=e.element,i=e.kind;if(t)switch(i){case"open":"editor"===e.source&&o._configurationService.getValue("editor.stablePeek")||o.openReference(t,!1);break;case"side":o.openReference(t,!0);break;case"goto":n?o._gotoReference(t):o.openReference(t,!1)}})));var a=++this._requestIdPool;t.then((function(t){if(a===o._requestIdPool&&o._widget)return o._model&&o._model.dispose(),o._model=t,o._widget.setModel(o._model).then((function(){if(o._widget&&o._model&&o._editor.hasModel()){o._model.isEmpty?o._widget.setMetaTitle(""):o._widget.setMetaTitle(r("metaTitle.N","{0} ({1})",o._model.title,o._model.references.length));var t=o._editor.getModel().uri,n=new bn(e.startLineNumber,e.startColumn),i=o._model.nearestReference(t,n);if(i)return o._widget.setSelection(i).then((function(){o._widget&&"editor"===o._editor.getOption(65)&&o._widget.focusOnPreviewEditor()}))}}))}),(function(e){o._notificationService.error(e)}))}},e.prototype.changeFocusBetweenPreviewAndReferences=function(){this._widget&&(this._widget.isPreviewEditorFocused()?this._widget.focusOnReferenceTree():this._widget.focusOnPreviewEditor())},e.prototype.goToNextOrPreviousReference=function(e){return Sz(this,void 0,void 0,(function(){var t,n,i,o,r;return Lz(this,(function(s){switch(s.label){case 0:return this._editor.hasModel()&&this._model&&this._widget&&((t=this._widget.position)&&(n=this._model.nearestReference(this._editor.getModel().uri,t)))?(i=this._model.nextOrPreviousReference(n,e),o=this._editor.hasTextFocus(),r=this._widget.isPreviewEditorFocused(),[4,this._widget.setSelection(i)]):[2];case 1:return s.sent(),[4,this._gotoReference(i)];case 2:return s.sent(),o?this._editor.focus():this._widget&&r&&this._widget.focusOnPreviewEditor(),[2]}}))}))},e.prototype.closeWidget=function(e){void 0===e&&(e=!0),this._referenceSearchVisible.reset(),this._disposables.clear(),Ae(this._widget),Ae(this._model),this._widget=void 0,this._model=void 0,e&&this._editor.focus(),this._requestIdPool+=1},e.prototype._gotoReference=function(t){var n=this;this._widget&&this._widget.hide(),this._ignoreModelChangeEvent=!0;var i=wn.lift(t.range).collapseToStart();return this._editorService.openCodeEditor({resource:t.uri,options:{selection:i}},this._editor).then((function(t){var o;if(n._ignoreModelChangeEvent=!1,t&&n._widget)if(n._editor===t)n._widget.show(i),n._widget.focusOnReferenceTree();else{var r=e.get(t),s=n._model.clone();n.closeWidget(),t.focus(),r.toggleWidget(i,hi((function(e){return Promise.resolve(s)})),null!==(o=n._peekMode)&&void 0!==o&&o)}else n.closeWidget()}),(function(e){n._ignoreModelChangeEvent=!1,De(e)}))},e.prototype.openReference=function(e,t){t||this.closeWidget();var n=e.uri,i=e.range;this._editorService.openCodeEditor({resource:n,options:{selection:i}},this._editor,t)},e.ID="editor.contrib.referencesController",e=wz([Cz(2,qh),Cz(3,Pn),Cz(4,ap),Cz(5,In),Cz(6,FM),Cz(7,wh)],e)}();function Nz(e,t){var n=function(e){var t=e.get(Pn).getFocusedCodeEditor();return t instanceof JB?t.getParentEditor():t}(e);if(n){var i=Dz.get(n);i&&t(i)}}Zh.registerCommandAndKeybindingRule({id:"togglePeekWidgetFocus",weight:100,primary:gt(2089,60),when:Rh.or(xz,ZB.inPeekEditor),handler:function(e){Nz(e,(function(e){e.changeFocusBetweenPreviewAndReferences()}))}}),Zh.registerCommandAndKeybindingRule({id:"goToNextReference",weight:90,primary:62,secondary:[70],when:Rh.or(xz,ZB.inPeekEditor),handler:function(e){Nz(e,(function(e){e.goToNextOrPreviousReference(!0)}))}}),Zh.registerCommandAndKeybindingRule({id:"goToPreviousReference",weight:90,primary:1086,secondary:[1094],when:Rh.or(xz,ZB.inPeekEditor),handler:function(e){Nz(e,(function(e){e.goToNextOrPreviousReference(!1)}))}}),ca.registerCommandAlias("goToNextReferenceFromEmbeddedEditor","goToNextReference"),ca.registerCommandAlias("goToPreviousReferenceFromEmbeddedEditor","goToPreviousReference"),ca.registerCommandAlias("closeReferenceSearchEditor","closeReferenceSearch"),ca.registerCommand("closeReferenceSearch",(function(e){return Nz(e,(function(e){return e.closeWidget()}))})),Zh.registerKeybindingRule({id:"closeReferenceSearch",weight:-1,primary:9,secondary:[1033],when:Rh.and(ZB.inPeekEditor,Rh.not("config.editor.stablePeek"))}),Zh.registerKeybindingRule({id:"closeReferenceSearch",weight:250,primary:9,secondary:[1033],when:Rh.and(xz,Rh.not("config.editor.stablePeek"))}),Zh.registerCommandAndKeybindingRule({id:"openReferenceToSide",weight:100,primary:2051,mac:{primary:259},when:Rh.and(xz,hM),handler:function(e){var t,n=null===(t=e.get(uM).lastFocusedList)||void 0===t?void 0:t.getFocus();Array.isArray(n)&&n[0]instanceof EH&&Nz(e,(function(e){return e.openReference(n[0],!0)}))}}),ca.registerCommand("openReference",(function(e){var t,n=null===(t=e.get(uM).lastFocusedList)||void 0===t?void 0:t.getFocus();Array.isArray(n)&&n[0]instanceof EH&&Nz(e,(function(e){return e.openReference(n[0],!1)}))}));var kz=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},Ez=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}};function Iz(e,t,n,i){var o=n.ordered(e).map((function(n){return Promise.resolve(i(n,e,t)).then(void 0,(function(e){Ne(e)}))}));return Promise.all(o).then(Fi).then(Ei)}function Oz(e,t,n){return Iz(e,t,Pu,(function(e,t,i){return e.provideDefinition(t,i,n)}))}function Mz(e,t,n){return Iz(e,t,Ru,(function(e,t,i){return e.provideDeclaration(t,i,n)}))}function Tz(e,t,n){return Iz(e,t,Au,(function(e,t,i){return e.provideImplementation(t,i,n)}))}function Pz(e,t,n){return Iz(e,t,Fu,(function(e,t,i){return e.provideTypeDefinition(t,i,n)}))}function Rz(e,t,n,i){var o=this;return Iz(e,t,Nu,(function(e,t,r){return kz(o,void 0,void 0,(function(){var o,s;return Ez(this,(function(a){switch(a.label){case 0:return[4,e.provideReferences(t,r,{includeDeclaration:!0},i)];case 1:return o=a.sent(),n&&o&&2===o.length?[4,e.provideReferences(t,r,{includeDeclaration:!1},i)]:[2,o];case 2:return(s=a.sent())&&1===s.length?[2,s]:[2,o]}}))}))}))}Of("_executeDefinitionProvider",(function(e,t){return Oz(e,t,et.None)})),Of("_executeDeclarationProvider",(function(e,t){return Mz(e,t,et.None)})),Of("_executeImplementationProvider",(function(e,t){return Tz(e,t,et.None)})),Of("_executeTypeDefinitionProvider",(function(e,t){return Pz(e,t,et.None)})),Of("_executeReferenceProvider",(function(e,t){return Rz(e,t,!1,et.None)}));var Az=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Fz=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Wz=function(e,t){return function(n,i){t(n,i,e)}},Vz=new Kh("hasSymbols",!1),Bz=Mn("ISymbolNavigationService"),Hz=function(){function e(e,t,n,i){this._editorService=t,this._notificationService=n,this._keybindingService=i,this._currentModel=void 0,this._currentIdx=-1,this._ignoreEditorChange=!1,this._ctxHasSymbols=Vz.bindTo(e)}return e.prototype.reset=function(){this._ctxHasSymbols.reset(),Ae(this._currentState),Ae(this._currentMessage),this._currentModel=void 0,this._currentIdx=-1},e.prototype.put=function(e){var t=this,n=e.parent.parent;if(n.references.length<=1)this.reset();else{this._currentModel=n,this._currentIdx=n.references.indexOf(e),this._ctxHasSymbols.set(!0),this._showMessage();var i=new Xz(this._editorService),o=i.onDidChange((function(e){if(!t._ignoreEditorChange){var i=t._editorService.getActiveCodeEditor();if(i){var o=i.getModel(),r=i.getPosition();if(o&&r){for(var s=!1,a=!1,u=0,l=n.references;u<l.length;u++){var c=l[u];if(xs(c.uri,o.uri))s=!0,a=a||wn.containsPosition(c.range,r);else if(s)break}s&&a||t.reset()}}}}));this._currentState=Fe(i,o)}},e.prototype.revealNext=function(e){var t=this;if(!this._currentModel)return Promise.resolve();this._currentIdx+=1,this._currentIdx%=this._currentModel.references.length;var n=this._currentModel.references[this._currentIdx];return this._showMessage(),this._ignoreEditorChange=!0,this._editorService.openCodeEditor({resource:n.uri,options:{selection:wn.collapseToStart(n.range),revealInCenterIfOutsideViewport:!0}},e).finally((function(){t._ignoreEditorChange=!1}))},e.prototype._showMessage=function(){Ae(this._currentMessage);var e=this._keybindingService.lookupKeybinding("editor.gotoNextSymbolFromResult"),t=e?r("location.kb","Symbol {0} of {1}, {2} for next",this._currentIdx+1,this._currentModel.references.length,e.getLabel()):r("location","Symbol {0} of {1}",this._currentIdx+1,this._currentModel.references.length);this._currentMessage=this._notificationService.status(t)},e=Fz([Wz(0,qh),Wz(1,Pn),Wz(2,ap),Wz(3,XD)],e)}();Qx(Bz,Hz,!0),Mf(new(function(e){function t(){return e.call(this,{id:"editor.gotoNextSymbolFromResult",precondition:Vz,kbOpts:{weight:100,primary:70}})||this}return Az(t,e),t.prototype.runEditorCommand=function(e,t){return e.get(Bz).revealNext(t)},t}(Nf))),Zh.registerCommandAndKeybindingRule({id:"editor.gotoNextSymbolFromResult.cancel",weight:100,when:Vz,primary:9,handler:function(e){e.get(Bz).reset()}});var zz,jz,Uz,Kz,qz,Gz,Zz,Yz,Xz=function(){function e(e){this._listener=new Map,this._disposables=new Be,this._onDidChange=new nt,this.onDidChange=this._onDidChange.event,this._disposables.add(e.onCodeEditorRemove(this._onDidRemoveEditor,this)),this._disposables.add(e.onCodeEditorAdd(this._onDidAddEditor,this)),e.listCodeEditors().forEach(this._onDidAddEditor,this)}return e.prototype.dispose=function(){this._disposables.dispose(),this._onDidChange.dispose(),this._listener.forEach(Ae)},e.prototype._onDidAddEditor=function(e){var t=this;this._listener.set(e,Fe(e.onDidChangeCursorPosition((function(n){return t._onDidChange.fire({editor:e})})),e.onDidChangeModelContent((function(n){return t._onDidChange.fire({editor:e})}))))},e.prototype._onDidRemoveEditor=function(e){Ae(this._listener.get(e)),this._listener.delete(e)},e=Fz([Wz(0,Pn)],e)}(),$z=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Qz=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},Jz=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}};bf.appendMenuItem(7,{submenu:8,title:r("peek.submenu","Peek"),group:"navigation",order:100});var ej=function(e){function t(t,n){var i=e.call(this,n)||this;return i._configuration=t,i}return $z(t,e),t.prototype.run=function(e,t){var n=this;if(!t.hasModel())return Promise.resolve(void 0);var i=e.get(ap),o=e.get(Pn),r=e.get(OD),s=e.get(Bz),a=t.getModel(),u=t.getPosition(),l=new rD(t,5),c=pi(this._getLocationModel(a,u,l.token),l.token).then((function(e){return Qz(n,void 0,void 0,(function(){var n,i,r,c;return Jz(this,(function(d){if(!e||l.token.isCancellationRequested)return[2];if(Zp(e.ariaMessage),e.referenceAt(a.uri,u)&&(i=this._getAlternativeCommand(t))!==this.id&&(n=t.getAction(i)),0===(r=e.references.length))this._configuration.muteMessage||(c=a.getWordAtPosition(u),KR.get(t).showMessage(this._getNoResultFoundMessage(c),u));else{if(1!==r||!n)return[2,this._onResult(o,s,t,e)];n.run()}return[2]}))}))}),(function(e){i.error(e)})).finally((function(){l.dispose()}));return r.showWhile(c,250),c},t.prototype._onResult=function(e,t,n,i){return Qz(this,void 0,void 0,(function(){var o,r,s,a;return Jz(this,(function(u){switch(u.label){case 0:return o=this._getGoToPreference(n),n instanceof JB||!(this._configuration.openInPeek||"peek"===o&&i.references.length>1)?[3,1]:(this._openInPeek(n,i),[3,3]);case 1:return r=i.firstReference(),s=i.references.length>1&&"gotoAndPeek"===o,[4,this._openReference(n,e,r,this._configuration.openToSide,!s)];case 2:a=u.sent(),s&&a?this._openInPeek(a,i):i.dispose(),"goto"===o&&t.put(r),u.label=3;case 3:return[2]}}))}))},t.prototype._openReference=function(e,t,n,i,o){return Qz(this,void 0,void 0,(function(){var r,s,a,u;return Jz(this,(function(l){switch(l.label){case 0:return r=void 0,(c=n)&&Et.isUri(c.uri)&&wn.isIRange(c.range)&&(wn.isIRange(c.originSelectionRange)||wn.isIRange(c.targetSelectionRange))&&(r=n.targetSelectionRange),r||(r=n.range),[4,t.openCodeEditor({resource:n.uri,options:{selection:wn.collapseToStart(r),revealInCenterIfOutsideViewport:!0}},e,i)];case 1:return(s=l.sent())?(o&&(a=s.getModel(),u=s.deltaDecorations([],[{range:r,options:{className:"symbolHighlight"}}]),setTimeout((function(){s.getModel()===a&&s.deltaDecorations(u,[])}),350)),[2,s]):[2,void 0]}var c}))}))},t.prototype._openInPeek=function(e,t){var n=Dz.get(e);n&&e.hasModel()?n.toggleWidget(e.getSelection(),hi((function(e){return Promise.resolve(t)})),this._configuration.openInPeek):t.dispose()},t}(kf),tj=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return $z(t,e),t.prototype._getLocationModel=function(e,t,n){return Qz(this,void 0,void 0,(function(){var i;return Jz(this,(function(o){switch(o.label){case 0:return i=MH.bind,[4,Oz(e,t,n)];case 1:return[2,new(i.apply(MH,[void 0,o.sent(),r("def.title","Definitions")]))]}}))}))},t.prototype._getNoResultFoundMessage=function(e){return e&&e.word?r("noResultWord","No definition found for '{0}'",e.word):r("generic.noResults","No definition found")},t.prototype._getAlternativeCommand=function(e){return e.getOption(41).alternativeDefinitionCommand},t.prototype._getGoToPreference=function(e){return e.getOption(41).multipleDefinitions},t}(ej),nj=w&&!Yn?2118:70;Tf(((zz=function(e){function t(){var n=e.call(this,{openToSide:!1,openInPeek:!1,muteMessage:!1},{id:t.id,label:r("actions.goToDecl.label","Go to Definition"),alias:"Go to Definition",precondition:Rh.and(eC.hasDefinitionProvider,eC.isInEmbeddedEditor.toNegated()),kbOpts:{kbExpr:eC.editorTextFocus,primary:nj,weight:100},contextMenuOpts:{group:"navigation",order:1.1},menuOpts:{menuId:19,group:"4_symbol_nav",order:2,title:r({key:"miGotoDefinition",comment:["&& denotes a mnemonic"]},"Go to &&Definition")}})||this;return ca.registerCommandAlias("editor.action.goToDeclaration",t.id),n}return $z(t,e),t}(tj)).id="editor.action.revealDefinition",zz)),Tf(((jz=function(e){function t(){var n=e.call(this,{openToSide:!0,openInPeek:!1,muteMessage:!1},{id:t.id,label:r("actions.goToDeclToSide.label","Open Definition to the Side"),alias:"Open Definition to the Side",precondition:Rh.and(eC.hasDefinitionProvider,eC.isInEmbeddedEditor.toNegated()),kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,nj),weight:100}})||this;return ca.registerCommandAlias("editor.action.openDeclarationToTheSide",t.id),n}return $z(t,e),t}(tj)).id="editor.action.revealDefinitionAside",jz)),Tf(((Uz=function(e){function t(){var n=e.call(this,{openToSide:!1,openInPeek:!0,muteMessage:!1},{id:t.id,label:r("actions.previewDecl.label","Peek Definition"),alias:"Peek Definition",precondition:Rh.and(eC.hasDefinitionProvider,ZB.notInPeekEditor,eC.isInEmbeddedEditor.toNegated()),kbOpts:{kbExpr:eC.editorTextFocus,primary:582,linux:{primary:3140},weight:100},contextMenuOpts:{menuId:8,group:"peek",order:2}})||this;return ca.registerCommandAlias("editor.action.previewDeclaration",t.id),n}return $z(t,e),t}(tj)).id="editor.action.peekDefinition",Uz));var ij=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return $z(t,e),t.prototype._getLocationModel=function(e,t,n){return Qz(this,void 0,void 0,(function(){var i;return Jz(this,(function(o){switch(o.label){case 0:return i=MH.bind,[4,Mz(e,t,n)];case 1:return[2,new(i.apply(MH,[void 0,o.sent(),r("decl.title","Declarations")]))]}}))}))},t.prototype._getNoResultFoundMessage=function(e){return e&&e.word?r("decl.noResultWord","No declaration found for '{0}'",e.word):r("decl.generic.noResults","No declaration found")},t.prototype._getAlternativeCommand=function(e){return e.getOption(41).alternativeDeclarationCommand},t.prototype._getGoToPreference=function(e){return e.getOption(41).multipleDeclarations},t}(ej);Tf(((Kz=function(e){function t(){return e.call(this,{openToSide:!1,openInPeek:!1,muteMessage:!1},{id:t.id,label:r("actions.goToDeclaration.label","Go to Declaration"),alias:"Go to Declaration",precondition:Rh.and(eC.hasDeclarationProvider,eC.isInEmbeddedEditor.toNegated()),contextMenuOpts:{group:"navigation",order:1.3},menuOpts:{menuId:19,group:"4_symbol_nav",order:3,title:r({key:"miGotoDeclaration",comment:["&& denotes a mnemonic"]},"Go to &&Declaration")}})||this}return $z(t,e),t.prototype._getNoResultFoundMessage=function(e){return e&&e.word?r("decl.noResultWord","No declaration found for '{0}'",e.word):r("decl.generic.noResults","No declaration found")},t}(ij)).id="editor.action.revealDeclaration",Kz)),Tf(function(e){function t(){return e.call(this,{openToSide:!1,openInPeek:!0,muteMessage:!1},{id:"editor.action.peekDeclaration",label:r("actions.peekDecl.label","Peek Declaration"),alias:"Peek Declaration",precondition:Rh.and(eC.hasDeclarationProvider,ZB.notInPeekEditor,eC.isInEmbeddedEditor.toNegated()),contextMenuOpts:{menuId:8,group:"peek",order:3}})||this}return $z(t,e),t}(ij));var oj=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return $z(t,e),t.prototype._getLocationModel=function(e,t,n){return Qz(this,void 0,void 0,(function(){var i;return Jz(this,(function(o){switch(o.label){case 0:return i=MH.bind,[4,Pz(e,t,n)];case 1:return[2,new(i.apply(MH,[void 0,o.sent(),r("typedef.title","Type Definitions")]))]}}))}))},t.prototype._getNoResultFoundMessage=function(e){return e&&e.word?r("goToTypeDefinition.noResultWord","No type definition found for '{0}'",e.word):r("goToTypeDefinition.generic.noResults","No type definition found")},t.prototype._getAlternativeCommand=function(e){return e.getOption(41).alternativeTypeDefinitionCommand},t.prototype._getGoToPreference=function(e){return e.getOption(41).multipleTypeDefinitions},t}(ej);Tf(((qz=function(e){function t(){return e.call(this,{openToSide:!1,openInPeek:!1,muteMessage:!1},{id:t.ID,label:r("actions.goToTypeDefinition.label","Go to Type Definition"),alias:"Go to Type Definition",precondition:Rh.and(eC.hasTypeDefinitionProvider,eC.isInEmbeddedEditor.toNegated()),kbOpts:{kbExpr:eC.editorTextFocus,primary:0,weight:100},contextMenuOpts:{group:"navigation",order:1.4},menuOpts:{menuId:19,group:"4_symbol_nav",order:3,title:r({key:"miGotoTypeDefinition",comment:["&& denotes a mnemonic"]},"Go to &&Type Definition")}})||this}return $z(t,e),t}(oj)).ID="editor.action.goToTypeDefinition",qz)),Tf(((Gz=function(e){function t(){return e.call(this,{openToSide:!1,openInPeek:!0,muteMessage:!1},{id:t.ID,label:r("actions.peekTypeDefinition.label","Peek Type Definition"),alias:"Peek Type Definition",precondition:Rh.and(eC.hasTypeDefinitionProvider,ZB.notInPeekEditor,eC.isInEmbeddedEditor.toNegated()),contextMenuOpts:{menuId:8,group:"peek",order:4}})||this}return $z(t,e),t}(oj)).ID="editor.action.peekTypeDefinition",Gz));var rj=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return $z(t,e),t.prototype._getLocationModel=function(e,t,n){return Qz(this,void 0,void 0,(function(){var i;return Jz(this,(function(o){switch(o.label){case 0:return i=MH.bind,[4,Tz(e,t,n)];case 1:return[2,new(i.apply(MH,[void 0,o.sent(),r("impl.title","Implementations")]))]}}))}))},t.prototype._getNoResultFoundMessage=function(e){return e&&e.word?r("goToImplementation.noResultWord","No implementation found for '{0}'",e.word):r("goToImplementation.generic.noResults","No implementation found")},t.prototype._getAlternativeCommand=function(e){return e.getOption(41).alternativeImplementationCommand},t.prototype._getGoToPreference=function(e){return e.getOption(41).multipleImplementations},t}(ej);Tf(((Zz=function(e){function t(){return e.call(this,{openToSide:!1,openInPeek:!1,muteMessage:!1},{id:t.ID,label:r("actions.goToImplementation.label","Go to Implementations"),alias:"Go to Implementations",precondition:Rh.and(eC.hasImplementationProvider,eC.isInEmbeddedEditor.toNegated()),kbOpts:{kbExpr:eC.editorTextFocus,primary:2118,weight:100},menuOpts:{menuId:19,group:"4_symbol_nav",order:4,title:r({key:"miGotoImplementation",comment:["&& denotes a mnemonic"]},"Go to &&Implementations")},contextMenuOpts:{group:"navigation",order:1.45}})||this}return $z(t,e),t}(rj)).ID="editor.action.goToImplementation",Zz)),Tf(((Yz=function(e){function t(){return e.call(this,{openToSide:!1,openInPeek:!0,muteMessage:!1},{id:t.ID,label:r("actions.peekImplementation.label","Peek Implementations"),alias:"Peek Implementations",precondition:Rh.and(eC.hasImplementationProvider,ZB.notInPeekEditor,eC.isInEmbeddedEditor.toNegated()),kbOpts:{kbExpr:eC.editorTextFocus,primary:3142,weight:100},contextMenuOpts:{menuId:8,group:"peek",order:5}})||this}return $z(t,e),t}(rj)).ID="editor.action.peekImplementation",Yz));var sj=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return $z(t,e),t.prototype._getNoResultFoundMessage=function(e){return e?r("references.no","No references found for '{0}'",e.word):r("references.noGeneric","No references found")},t.prototype._getAlternativeCommand=function(e){return e.getOption(41).alternativeReferenceCommand},t.prototype._getGoToPreference=function(e){return e.getOption(41).multipleReferences},t}(ej);Tf(function(e){function t(){return e.call(this,{openToSide:!1,openInPeek:!1,muteMessage:!1},{id:"editor.action.goToReferences",label:r("goToReferences.label","Go to References"),alias:"Go to References",precondition:Rh.and(eC.hasReferenceProvider,ZB.notInPeekEditor,eC.isInEmbeddedEditor.toNegated()),kbOpts:{kbExpr:eC.editorTextFocus,primary:1094,weight:100},contextMenuOpts:{group:"navigation",order:1.45},menuOpts:{menuId:19,group:"4_symbol_nav",order:5,title:r({key:"miGotoReference",comment:["&& denotes a mnemonic"]},"Go to &&References")}})||this}return $z(t,e),t.prototype._getLocationModel=function(e,t,n){return Qz(this,void 0,void 0,(function(){var i;return Jz(this,(function(o){switch(o.label){case 0:return i=MH.bind,[4,Rz(e,t,!0,n)];case 1:return[2,new(i.apply(MH,[void 0,o.sent(),r("ref.title","References")]))]}}))}))},t}(sj)),Tf(function(e){function t(){return e.call(this,{openToSide:!1,openInPeek:!0,muteMessage:!1},{id:"editor.action.referenceSearch.trigger",label:r("references.action.label","Peek References"),alias:"Peek References",precondition:Rh.and(eC.hasReferenceProvider,ZB.notInPeekEditor,eC.isInEmbeddedEditor.toNegated()),contextMenuOpts:{menuId:8,group:"peek",order:6}})||this}return $z(t,e),t.prototype._getLocationModel=function(e,t,n){return Qz(this,void 0,void 0,(function(){var i;return Jz(this,(function(o){switch(o.label){case 0:return i=MH.bind,[4,Rz(e,t,!1,n)];case 1:return[2,new(i.apply(MH,[void 0,o.sent(),r("ref.title","References")]))]}}))}))},t}(sj));var aj=function(e){function t(t,n,i){var o=e.call(this,t,{id:"editor.action.goToLocation",label:r("label.generic","Go To Any Symbol"),alias:"Go To Any Symbol",precondition:Rh.and(ZB.notInPeekEditor,eC.isInEmbeddedEditor.toNegated())})||this;return o._references=n,o._gotoMultipleBehaviour=i,o}return $z(t,e),t.prototype._getLocationModel=function(e,t,n){return Qz(this,void 0,void 0,(function(){return Jz(this,(function(e){return[2,new MH(this._references,r("generic.title","Locations"))]}))}))},t.prototype._getNoResultFoundMessage=function(e){return e&&r("generic.noResult","No results for '{0}'",e.word)||""},t.prototype._getGoToPreference=function(e){var t;return null!==(t=this._gotoMultipleBehaviour)&&void 0!==t?t:e.getOption(41).multipleReferences},t.prototype._getAlternativeCommand=function(){return""},t}(ej);ca.registerCommand({id:"editor.action.goToLocations",description:{description:"Go to locations from a position in a file",args:[{name:"uri",description:"The text document in which to start",constraint:Et},{name:"position",description:"The position at which to start",constraint:bn.isIPosition},{name:"locations",description:"An array of locations.",constraint:Array},{name:"multiple",description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto"}]},handler:function(e,t,n,i,o,r){return Qz(void 0,void 0,void 0,(function(){var s,a;return Jz(this,(function(u){switch(u.label){case 0:return zs(Et.isUri(t)),zs(bn.isIPosition(n)),zs(Array.isArray(i)),zs(void 0===o||"string"==typeof o),zs(void 0===r||"boolean"==typeof r),[4,(s=e.get(Pn)).openCodeEditor({resource:t},s.getFocusedCodeEditor())];case 1:return Md(a=u.sent())?(a.setPosition(n),a.revealPositionInCenterIfOutsideViewport(n,0),[2,a.invokeWithinContext((function(e){var t=new aj({muteMessage:!0,openInPeek:Boolean(r),openToSide:!1},i,o);e.get(In).invokeFunction(t.run.bind(t),a)}))]):[2]}}))}))}}),ca.registerCommand({id:"editor.action.peekLocations",description:{description:"Peek locations from a position in a file",args:[{name:"uri",description:"The text document in which to start",constraint:Et},{name:"position",description:"The position at which to start",constraint:bn.isIPosition},{name:"locations",description:"An array of locations.",constraint:Array},{name:"multiple",description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto"}]},handler:function(e,t,n,i,o){return Qz(void 0,void 0,void 0,(function(){return Jz(this,(function(r){return e.get(la).executeCommand("editor.action.goToLocations",t,n,i,o,!0),[2]}))}))}}),ca.registerCommand({id:"editor.action.findReferences",handler:function(e,t,n){zs(Et.isUri(t)),zs(bn.isIPosition(n));var i=e.get(Pn);return i.openCodeEditor({resource:t},i.getFocusedCodeEditor()).then((function(e){if(Md(e)&&e.hasModel()){var t=Dz.get(e);if(t){var i=hi((function(t){return Rz(e.getModel(),bn.lift(n),!1,t).then((function(e){return new MH(e,r("ref.title","References"))}))})),o=new wn(n.lineNumber,n.column,n.lineNumber,n.column);return Promise.resolve(t.toggleWidget(o,i,!1))}}}))}}),ca.registerCommandAlias("editor.action.showReferences","editor.action.peekLocations");n(414);var uj=function(){function e(e,t){var n,i;void 0===e&&(e=""),void 0===t&&(t=!1),this._value=e,"boolean"==typeof t?(this._isTrusted=t,this._supportThemeIcons=!1):(this._isTrusted=null!==(n=t.isTrusted)&&void 0!==n&&n,this._supportThemeIcons=null!==(i=t.supportThemeIcons)&&void 0!==i&&i)}return Object.defineProperty(e.prototype,"value",{get:function(){return this._value},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isTrusted",{get:function(){return this._isTrusted},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"supportThemeIcons",{get:function(){return this._supportThemeIcons},enumerable:!0,configurable:!0}),e.prototype.appendText=function(e){var t;return this._value+=(this._supportThemeIcons?(t=e,t.replace(VA,(function(e,t){return t?e:"\\"+e}))):e).replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&").replace("\n","\n\n"),this},e.prototype.appendMarkdown=function(e){return this._value+=e,this},e.prototype.appendCodeblock=function(e,t){return this._value+="\n```",this._value+=e,this._value+="\n",this._value+=t,this._value+="\n```\n",this},e}();function lj(e){return cj(e)?!e.value:!Array.isArray(e)||e.every(lj)}function cj(e){return e instanceof uj||!(!e||"object"!=typeof e)&&!("string"!=typeof e.value||"boolean"!=typeof e.isTrusted&&void 0!==e.isTrusted||"boolean"!=typeof e.supportThemeIcons&&void 0!==e.supportThemeIcons)}function dj(e,t){return e===t||!(!e||!t)&&(e.value===t.value&&e.isTrusted===t.isTrusted&&e.supportThemeIcons===t.supportThemeIcons)}function hj(e){return e?e.replace(/\\([\\`*_{}[\]()#+\-.!])/g,"$1"):e}var pj=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();function fj(e,t){return!!e[t]}var gj=function(e,t){this.target=e.target,this.hasTriggerModifier=fj(e.event,t.triggerModifier),this.hasSideBySideModifier=fj(e.event,t.triggerSideBySideModifier),this.isNoneOrSingleMouseDown=Vn||e.event.detail<=1},mj=function(e,t){this.keyCodeIsTriggerKey=e.keyCode===t.triggerKey,this.keyCodeIsSideBySideKey=e.keyCode===t.triggerSideBySideKey,this.hasTriggerModifier=fj(e,t.triggerModifier)},vj=function(){function e(e,t,n,i){this.triggerKey=e,this.triggerModifier=t,this.triggerSideBySideKey=n,this.triggerSideBySideModifier=i}return e.prototype.equals=function(e){return this.triggerKey===e.triggerKey&&this.triggerModifier===e.triggerModifier&&this.triggerSideBySideKey===e.triggerSideBySideKey&&this.triggerSideBySideModifier===e.triggerSideBySideModifier},e}();function _j(e){return"altKey"===e?_?new vj(57,"metaKey",6,"altKey"):new vj(5,"ctrlKey",6,"altKey"):_?new vj(6,"altKey",57,"metaKey"):new vj(6,"altKey",5,"ctrlKey")}var yj=function(e){function t(t){var n=e.call(this)||this;return n._onMouseMoveOrRelevantKeyDown=n._register(new nt),n.onMouseMoveOrRelevantKeyDown=n._onMouseMoveOrRelevantKeyDown.event,n._onExecute=n._register(new nt),n.onExecute=n._onExecute.event,n._onCancel=n._register(new nt),n.onCancel=n._onCancel.event,n._editor=t,n._opts=_j(n._editor.getOption(59)),n.lastMouseMoveEvent=null,n.hasTriggerKeyOnMouseDown=!1,n._register(n._editor.onDidChangeConfiguration((function(e){if(e.hasChanged(59)){var t=_j(n._editor.getOption(59));if(n._opts.equals(t))return;n._opts=t,n.lastMouseMoveEvent=null,n.hasTriggerKeyOnMouseDown=!1,n._onCancel.fire()}}))),n._register(n._editor.onMouseMove((function(e){return n.onEditorMouseMove(new gj(e,n._opts))}))),n._register(n._editor.onMouseDown((function(e){return n.onEditorMouseDown(new gj(e,n._opts))}))),n._register(n._editor.onMouseUp((function(e){return n.onEditorMouseUp(new gj(e,n._opts))}))),n._register(n._editor.onKeyDown((function(e){return n.onEditorKeyDown(new mj(e,n._opts))}))),n._register(n._editor.onKeyUp((function(e){return n.onEditorKeyUp(new mj(e,n._opts))}))),n._register(n._editor.onMouseDrag((function(){return n.resetHandler()}))),n._register(n._editor.onDidChangeCursorSelection((function(e){return n.onDidChangeCursorSelection(e)}))),n._register(n._editor.onDidChangeModel((function(e){return n.resetHandler()}))),n._register(n._editor.onDidChangeModelContent((function(){return n.resetHandler()}))),n._register(n._editor.onDidScrollChange((function(e){(e.scrollTopChanged||e.scrollLeftChanged)&&n.resetHandler()}))),n}return pj(t,e),t.prototype.onDidChangeCursorSelection=function(e){e.selection&&e.selection.startColumn!==e.selection.endColumn&&this.resetHandler()},t.prototype.onEditorMouseMove=function(e){this.lastMouseMoveEvent=e,this._onMouseMoveOrRelevantKeyDown.fire([e,null])},t.prototype.onEditorMouseDown=function(e){this.hasTriggerKeyOnMouseDown=e.hasTriggerModifier},t.prototype.onEditorMouseUp=function(e){this.hasTriggerKeyOnMouseDown&&this._onExecute.fire(e)},t.prototype.onEditorKeyDown=function(e){this.lastMouseMoveEvent&&(e.keyCodeIsTriggerKey||e.keyCodeIsSideBySideKey&&e.hasTriggerModifier)?this._onMouseMoveOrRelevantKeyDown.fire([this.lastMouseMoveEvent,e]):e.hasTriggerModifier&&this._onCancel.fire()},t.prototype.onEditorKeyUp=function(e){e.keyCodeIsTriggerKey&&this._onCancel.fire()},t.prototype.resetHandler=function(){this.lastMouseMoveEvent=null,this.hasTriggerKeyOnMouseDown=!1,this._onCancel.fire()},t}(He),bj=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},wj=function(e,t){return function(n,i){t(n,i,e)}},Cj=function(){function e(e,t,n){var i=this;this.textModelResolverService=t,this.modeService=n,this.toUnhook=new Be,this.toUnhookForKeyboard=new Be,this.linkDecorations=[],this.currentWordAtPosition=null,this.previousPromise=null,this.editor=e;var o=new yj(e);this.toUnhook.add(o),this.toUnhook.add(o.onMouseMoveOrRelevantKeyDown((function(e){var t=e[0],n=e[1];i.startFindDefinitionFromMouse(t,Xs(n))}))),this.toUnhook.add(o.onExecute((function(e){i.isEnabled(e)&&i.gotoDefinition(e.target.position,e.hasSideBySideModifier).then((function(){i.removeLinkDecorations()}),(function(e){i.removeLinkDecorations(),De(e)}))}))),this.toUnhook.add(o.onCancel((function(){i.removeLinkDecorations(),i.currentWordAtPosition=null})))}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.startFindDefinitionFromCursor=function(e){var t=this;return this.startFindDefinition(e).then((function(){t.toUnhookForKeyboard.add(t.editor.onDidChangeCursorPosition((function(){t.currentWordAtPosition=null,t.removeLinkDecorations(),t.toUnhookForKeyboard.clear()}))),t.toUnhookForKeyboard.add(t.editor.onKeyDown((function(e){e&&(t.currentWordAtPosition=null,t.removeLinkDecorations(),t.toUnhookForKeyboard.clear())})))}))},e.prototype.startFindDefinitionFromMouse=function(e,t){if(!(9===e.target.type&&this.linkDecorations.length>0)){if(!this.editor.hasModel()||!this.isEnabled(e,t))return this.currentWordAtPosition=null,void this.removeLinkDecorations();var n=e.target.position;this.startFindDefinition(n)}},e.prototype.startFindDefinition=function(e){var t,n=this;this.toUnhookForKeyboard.clear();var i=e?null===(t=this.editor.getModel())||void 0===t?void 0:t.getWordAtPosition(e):null;if(!i)return this.currentWordAtPosition=null,this.removeLinkDecorations(),Promise.resolve(0);if(this.currentWordAtPosition&&this.currentWordAtPosition.startColumn===i.startColumn&&this.currentWordAtPosition.endColumn===i.endColumn&&this.currentWordAtPosition.word===i.word)return Promise.resolve(0);this.currentWordAtPosition=i;var o=new oD(this.editor,15);return this.previousPromise&&(this.previousPromise.cancel(),this.previousPromise=null),this.previousPromise=hi((function(t){return n.findDefinition(e,t)})),this.previousPromise.then((function(t){if(t&&t.length&&o.validate(n.editor))if(t.length>1)n.addDecoration(new wn(e.lineNumber,i.startColumn,e.lineNumber,i.endColumn),(new uj).appendText(r("multipleResults","Click to show {0} definitions.",t.length)));else{var s=t[0];if(!s.uri)return;n.textModelResolverService.createModelReference(s.uri).then((function(t){if(t.object&&t.object.textEditorModel){var o=t.object.textEditorModel,r=s.range.startLineNumber;if(r<1||r>o.getLineCount())t.dispose();else{var a,u=n.getPreviewValue(o,r,s);a=s.originSelectionRange?wn.lift(s.originSelectionRange):new wn(e.lineNumber,i.startColumn,e.lineNumber,i.endColumn);var l=n.modeService.getModeIdByFilepathOrFirstLine(o.uri);n.addDecoration(a,(new uj).appendCodeblock(l||"",u)),t.dispose()}}else t.dispose()}))}else n.removeLinkDecorations()})).then(void 0,De)},e.prototype.getPreviewValue=function(t,n,i){var o=i.targetSelectionRange?i.range:this.getPreviewRangeBasedOnBrackets(t,n);return o.endLineNumber-o.startLineNumber>=e.MAX_SOURCE_PREVIEW_LINES&&(o=this.getPreviewRangeBasedOnIndentation(t,n)),this.stripIndentationFromPreviewRange(t,n,o)},e.prototype.stripIndentationFromPreviewRange=function(e,t,n){for(var i=e.getLineFirstNonWhitespaceColumn(t),o=t+1;o<n.endLineNumber;o++){var r=e.getLineFirstNonWhitespaceColumn(o);i=Math.min(i,r)}return e.getValueInRange(n).replace(new RegExp("^\\s{"+(i-1)+"}","gm"),"").trim()},e.prototype.getPreviewRangeBasedOnIndentation=function(t,n){for(var i=t.getLineFirstNonWhitespaceColumn(n),o=Math.min(t.getLineCount(),n+e.MAX_SOURCE_PREVIEW_LINES),r=n+1;r<o;r++){if(i===t.getLineFirstNonWhitespaceColumn(r))break}return new wn(n,1,r+1,1)},e.prototype.getPreviewRangeBasedOnBrackets=function(t,n){for(var i=Math.min(t.getLineCount(),n+e.MAX_SOURCE_PREVIEW_LINES),o=[],r=!0,s=t.findNextBracket(new bn(n,1));null!==s;){if(0===o.length)o.push(s);else{var a=o[o.length-1];if(a.open[0]===s.open[0]&&a.isOpen&&!s.isOpen?o.pop():o.push(s),0===o.length){if(!r)return new wn(n,1,s.range.endLineNumber+1,1);r=!1}}var u=t.getLineMaxColumn(n),l=s.range.endLineNumber,c=s.range.endColumn;if(u===s.range.endColumn&&(l++,c=1),l>i)return new wn(n,1,i+1,1);s=t.findNextBracket(new bn(l,c))}return new wn(n,1,i+1,1)},e.prototype.addDecoration=function(e,t){var n={range:e,options:{inlineClassName:"goto-definition-link",hoverMessage:t}};this.linkDecorations=this.editor.deltaDecorations(this.linkDecorations,[n])},e.prototype.removeLinkDecorations=function(){this.linkDecorations.length>0&&(this.linkDecorations=this.editor.deltaDecorations(this.linkDecorations,[]))},e.prototype.isEnabled=function(e,t){return this.editor.hasModel()&&e.isNoneOrSingleMouseDown&&6===e.target.type&&(e.hasTriggerModifier||!!t&&t.keyCodeIsTriggerKey)&&Pu.has(this.editor.getModel())},e.prototype.findDefinition=function(e,t){var n=this.editor.getModel();return n?Oz(n,e,t):Promise.resolve(null)},e.prototype.gotoDefinition=function(e,t){var n=this;this.editor.setPosition(e);var i=new tj({openToSide:t,openInPeek:!1,muteMessage:!0},{alias:"",label:"",id:"",precondition:void 0});return this.editor.invokeWithinContext((function(e){return i.run(e,n.editor)}))},e.prototype.dispose=function(){this.toUnhook.dispose()},e.ID="editor.contrib.gotodefinitionatposition",e.MAX_SOURCE_PREVIEW_LINES=8,e=bj([wj(1,tl),wj(2,lN)],e)}();Pf(Cj.ID,Cj),yg((function(e,t){var n=e.getColor(Wy);n&&t.addRule(".monaco-editor .goto-definition-link { color: "+n+" !important; }")}));var Sj;n(415);(Sj||(Sj={})).className=function(e){switch(e){case Od.Ignore:return"severity-ignore codicon-info";case Od.Info:return"codicon-info";case Od.Warning:return"codicon-warning";case Od.Error:return"codicon-error"}return""},yg((function(e,t){var n=e.getColor(Db);n&&t.addRule("\n\t\t\t.monaco-editor .zone-widget .codicon-error,\n\t\t\t.markers-panel .marker-icon.codicon-error,\n\t\t\t.extensions-viewlet > .extensions .codicon-error,\n\t\t\t.monaco-dialog-box .dialog-message-row .codicon-error {\n\t\t\t\tcolor: "+n+";\n\t\t\t}\n\t\t");var i=e.getColor(Nb);n&&t.addRule("\n\t\t\t.monaco-editor .zone-widget .codicon-warning,\n\t\t\t.markers-panel .marker-icon.codicon-warning,\n\t\t\t.extensions-viewlet > .extensions .codicon-warning,\n\t\t\t.extension-editor .codicon-warning,\n\t\t\t.monaco-dialog-box .dialog-message-row .codicon-warning {\n\t\t\t\tcolor: "+i+";\n\t\t\t}\n\t\t");var o=e.getColor(kb);n&&t.addRule("\n\t\t\t.monaco-editor .zone-widget .codicon-info,\n\t\t\t.markers-panel .marker-icon.codicon-info,\n\t\t\t.extensions-viewlet > .extensions .codicon-info,\n\t\t\t.extension-editor .codicon-info,\n\t\t\t.monaco-dialog-box .dialog-message-row .codicon-info {\n\t\t\t\tcolor: "+o+";\n\t\t\t}\n\t\t")}));var Lj=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),xj=function(){function e(e,t,n,i){var o=this;this._openerService=i,this._lines=0,this._longestLineLength=0,this._relatedDiagnostics=new WeakMap,this._disposables=new Be,this._editor=t;var r=document.createElement("div");r.className="descriptioncontainer",r.setAttribute("aria-live","assertive"),r.setAttribute("role","alert"),this._messageBlock=document.createElement("div"),no(this._messageBlock,"message"),r.appendChild(this._messageBlock),this._relatedBlock=document.createElement("div"),r.appendChild(this._relatedBlock),this._disposables.add(co(this._relatedBlock,"click",(function(e){e.preventDefault();var t=o._relatedDiagnostics.get(e.target);t&&n(t)}))),this._scrollable=new pS(r,{horizontal:1,vertical:1,useShadows:!1,horizontalScrollbarSize:3,verticalScrollbarSize:3}),e.appendChild(this._scrollable.getDomNode()),this._disposables.add(this._scrollable.onScroll((function(e){r.style.left="-"+e.scrollLeft+"px",r.style.top="-"+e.scrollTop+"px"}))),this._disposables.add(this._scrollable)}return e.prototype.dispose=function(){Ae(this._disposables)},e.prototype.update=function(e){var t=this,n=e.source,i=e.message,o=e.relatedInformation,r=e.code,s=((null==n?void 0:n.length)||0)+"()".length;r&&(s+="string"==typeof r?r.length:r.value.length);var a=i.split(/\r\n|\r|\n/g);this._lines=a.length,this._longestLineLength=0;for(var u=0,l=a;u<l.length;u++){var c=l[u];this._longestLineLength=Math.max(c.length+s,this._longestLineLength)}Yi(this._messageBlock),this._editor.applyFontInfo(this._messageBlock);for(var d=this._messageBlock,h=0,p=a;h<p.length;h++){c=p[h];(d=document.createElement("div")).innerText=c,""===c&&(d.style.height=this._messageBlock.style.lineHeight),this._messageBlock.appendChild(d)}if(n||r){var f,g=document.createElement("span");if(no(g,"details"),d.appendChild(g),n){var m=document.createElement("span");m.innerText=n,no(m,"source"),g.appendChild(m)}if(r)if("string"==typeof r)(f=document.createElement("span")).innerText="("+r+")",no(f,"code"),g.appendChild(f);else this._codeLink=er("a.code-link"),this._codeLink.setAttribute("href",""+r.link.toString()),this._codeLink.onclick=function(e){t._openerService.open(r.link),e.preventDefault(),e.stopPropagation()},(f=Xo(this._codeLink,er("span"))).innerText=r.value,g.appendChild(this._codeLink)}if(Yi(this._relatedBlock),this._editor.applyFontInfo(this._relatedBlock),Oi(o)){var v=this._relatedBlock.appendChild(document.createElement("div"));v.style.paddingTop=Math.floor(.66*this._editor.getOption(49))+"px",this._lines+=1;for(var _=0,y=o;_<y.length;_++){var b=y[_],w=document.createElement("div"),C=document.createElement("a");no(C,"filename"),C.innerHTML=zH(b.resource)+"("+b.startLineNumber+", "+b.startColumn+"): ",C.title=HH(b.resource,void 0),this._relatedDiagnostics.set(C,b);var S=document.createElement("span");S.innerText=b.message,w.appendChild(C),w.appendChild(S),this._lines+=1,v.appendChild(w)}}var L=this._editor.getOption(34),x=Math.ceil(L.typicalFullwidthCharacterWidth*this._longestLineLength*.75),D=L.lineHeight*this._lines;this._scrollable.setScrollDimensions({scrollWidth:x,scrollHeight:D})},e.prototype.layout=function(e,t){this._scrollable.getDomNode().style.height=e+"px",this._scrollable.getDomNode().style.width=t+"px",this._scrollable.setScrollDimensions({width:t,height:e})},e.prototype.getHeightInLines=function(){return Math.min(17,this._lines)},e}(),Dj=function(e){function t(t,n,i,o){var r=e.call(this,t,{showArrow:!0,showFrame:!0,isAccessible:!0})||this;return r.actions=n,r._themeService=i,r._openerService=o,r._callOnDispose=new Be,r._onDidSelectRelatedInformation=new nt,r.onDidSelectRelatedInformation=r._onDidSelectRelatedInformation.event,r._severity=NM.Warning,r._backgroundColor=mv.white,r._applyTheme(i.getTheme()),r._callOnDispose.add(i.onThemeChange(r._applyTheme.bind(r))),r.create(),r}return Lj(t,e),t.prototype._applyTheme=function(e){this._backgroundColor=e.getColor(Tj);var t=Ij;this._severity===NM.Warning?t=Oj:this._severity===NM.Info&&(t=Mj);var n=e.getColor(t);this.style({arrowColor:n,frameColor:n,headerBackgroundColor:this._backgroundColor,primaryHeadingColor:e.getColor(mH),secondaryHeadingColor:e.getColor(vH)})},t.prototype._applyStyles=function(){this._parentContainer&&(this._parentContainer.style.backgroundColor=this._backgroundColor?this._backgroundColor.toString():""),e.prototype._applyStyles.call(this)},t.prototype.dispose=function(){this._callOnDispose.dispose(),e.prototype.dispose.call(this)},t.prototype._fillHead=function(t){e.prototype._fillHead.call(this,t),this._actionbarWidget.push(this.actions,{label:!1,icon:!0,index:0})},t.prototype._fillTitleIcon=function(e){this._icon=Xo(e,er(""))},t.prototype._getActionBarOptions=function(){return{orientation:0}},t.prototype._fillBody=function(e){var t=this;this._parentContainer=e,no(e,"marker-widget"),this._parentContainer.tabIndex=0,this._parentContainer.setAttribute("role","tooltip"),this._container=document.createElement("div"),e.appendChild(this._container),this._message=new xj(this._container,this.editor,(function(e){return t._onDidSelectRelatedInformation.fire(e)}),this._openerService),this._disposables.add(this._message)},t.prototype.show=function(e,t){throw new Error("call showAtMarker")},t.prototype.showAtMarker=function(t,n,i){this._container.classList.remove("stale"),this._message.update(t),this._severity=t.severity,this._applyTheme(this._themeService.getTheme());var o=wn.lift(t),s=this.editor.getPosition(),a=s&&o.containsPosition(s)?s:o.getStartPosition();e.prototype.show.call(this,a,this.computeRequiredHeight());var u=this.editor.getModel();if(u){var l=i>1?r("problems","{0} of {1} problems",n,i):r("change","{0} of {1} problem",n,i);this.setTitle(Ds(u.uri),l)}this._icon.className="codicon "+Sj.className(NM.toSeverity(this._severity)),this.editor.revealPositionInCenter(a,0),this.editor.focus()},t.prototype.updateMarker=function(e){this._container.classList.remove("stale"),this._message.update(e)},t.prototype.showStale=function(){this._container.classList.add("stale"),this._relayout()},t.prototype._doLayoutBody=function(t,n){e.prototype._doLayoutBody.call(this,t,n),this._heightInPixel=t,this._message.layout(t,n),this._container.style.height=t+"px"},t.prototype._onWidth=function(e){this._message.layout(this._heightInPixel,e)},t.prototype._relayout=function(){e.prototype._relayout.call(this,this.computeRequiredHeight())},t.prototype.computeRequiredHeight=function(){return 3+this._message.getHeightInLines()},t}(fH),Nj=Ob(uy,ly),kj=Ob(cy,dy),Ej=Ob(hy,py),Ij=D_("editorMarkerNavigationError.background",{dark:Nj,light:Nj,hc:Nj},r("editorMarkerNavigationError","Editor marker navigation widget error color.")),Oj=D_("editorMarkerNavigationWarning.background",{dark:kj,light:kj,hc:kj},r("editorMarkerNavigationWarning","Editor marker navigation widget warning color.")),Mj=D_("editorMarkerNavigationInfo.background",{dark:Ej,light:Ej,hc:Ej},r("editorMarkerNavigationInfo","Editor marker navigation widget info color.")),Tj=D_("editorMarkerNavigation.background",{dark:"#2D2D30",light:mv.white,hc:"#0C141F"},r("editorMarkerNavigationBackground","Editor marker navigation widget background."));yg((function(e,t){var n=e.getColor(P_);n&&(t.addRule(".monaco-editor .marker-widget a { color: "+n+"; }"),t.addRule(".monaco-editor .marker-widget a.code-link span:hover { color: "+n+"; }"))}));var Pj=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Rj=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Aj=function(e,t){return function(n,i){t(n,i,e)}},Fj=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},Wj=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},Vj=function(){function e(e,t){var n=this;this._toUnbind=new Be,this._editor=e,this._markers=[],this._nextIdx=-1,this._ignoreSelectionChange=!1,this._onCurrentMarkerChanged=new nt,this._onMarkerSetChanged=new nt,this.setMarkers(t),this._toUnbind.add(this._editor.onDidDispose((function(){return n.dispose()}))),this._toUnbind.add(this._editor.onDidChangeCursorPosition((function(){n._ignoreSelectionChange||n.currentMarker&&n._editor.getPosition()&&wn.containsPosition(n.currentMarker,n._editor.getPosition())||(n._nextIdx=-1)})))}return Object.defineProperty(e.prototype,"onCurrentMarkerChanged",{get:function(){return this._onCurrentMarkerChanged.event},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"onMarkerSetChanged",{get:function(){return this._onMarkerSetChanged.event},enumerable:!0,configurable:!0}),e.prototype.setMarkers=function(e){var t=this._nextIdx>=0?this._markers[this._nextIdx]:void 0;this._markers=e||[],this._markers.sort(Hj.compareMarker),this._nextIdx=t?Math.max(-1,Di(this._markers,t,Hj.compareMarker)):-1,this._onMarkerSetChanged.fire(this)},e.prototype.withoutWatchingEditorPosition=function(e){this._ignoreSelectionChange=!0;try{e()}finally{this._ignoreSelectionChange=!1}},e.prototype._initIdx=function(e){for(var t=!1,n=this._editor.getPosition(),i=0;i<this._markers.length;i++){var o=wn.lift(this._markers[i]);if(o.isEmpty()&&this._editor.getModel()){var r=this._editor.getModel().getWordAtPosition(o.getStartPosition());r&&(o=new wn(o.startLineNumber,r.startColumn,o.startLineNumber,r.endColumn))}if(n&&(o.containsPosition(n)||n.isBeforeOrEqual(o.getStartPosition()))){this._nextIdx=i,t=!0;break}}t||(this._nextIdx=e?0:this._markers.length-1),this._nextIdx<0&&(this._nextIdx=this._markers.length-1)},Object.defineProperty(e.prototype,"currentMarker",{get:function(){return this.canNavigate()?this._markers[this._nextIdx]:void 0},set:function(e){var t=this._nextIdx;this._nextIdx=-1,e&&(this._nextIdx=this.indexOf(e)),this._nextIdx!==t&&this._onCurrentMarkerChanged.fire(e)},enumerable:!0,configurable:!0}),e.prototype.move=function(e,t){if(!this.canNavigate())return this._onCurrentMarkerChanged.fire(void 0),!t;var n=this._nextIdx,i=!1;if(-1===this._nextIdx?this._initIdx(e):e?t||this._nextIdx+1<this._markers.length?this._nextIdx=(this._nextIdx+1)%this._markers.length:i=!0:e||(t||this._nextIdx>0?this._nextIdx=(this._nextIdx-1+this._markers.length)%this._markers.length:i=!0),n!==this._nextIdx){var o=this._markers[this._nextIdx];this._onCurrentMarkerChanged.fire(o)}return i},e.prototype.canNavigate=function(){return this._markers.length>0},e.prototype.findMarkerAtPosition=function(e){return zi(this._markers,(function(t){return wn.containsPosition(t,e)}))},Object.defineProperty(e.prototype,"total",{get:function(){return this._markers.length},enumerable:!0,configurable:!0}),e.prototype.indexOf=function(e){return 1+this._markers.indexOf(e)},e.prototype.dispose=function(){this._toUnbind.dispose()},e}(),Bj=function(){function e(e,t,n,i,o,r,s){this._markerService=t,this._contextKeyService=n,this._themeService=i,this._editorService=o,this._keybindingService=r,this._openerService=s,this._model=null,this._widget=null,this._disposeOnClose=new Be,this._editor=e,this._widgetVisible=qj.bindTo(this._contextKeyService)}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.dispose=function(){this._cleanUp(),this._disposeOnClose.dispose()},e.prototype._cleanUp=function(){this._widgetVisible.reset(),this._disposeOnClose.clear(),this._widget=null,this._model=null},e.prototype.getOrCreateModel=function(){var e=this;if(this._model)return this._model;var t=this._getMarkers();this._model=new Vj(this._editor,t),this._markerService.onMarkerChanged(this._onMarkerChanged,this,this._disposeOnClose);var n=this._keybindingService.lookupKeybinding(jj.ID),i=this._keybindingService.lookupKeybinding(zj.ID),o=[new df(zj.ID,zj.LABEL+(i?" ("+i.getLabel()+")":""),"show-next-problem codicon-chevron-down",this._model.canNavigate(),(function(){return Fj(e,void 0,void 0,(function(){return Wj(this,(function(e){return this._model&&this._model.move(!0,!0),[2]}))}))})),new df(jj.ID,jj.LABEL+(n?" ("+n.getLabel()+")":""),"show-previous-problem codicon-chevron-up",this._model.canNavigate(),(function(){return Fj(e,void 0,void 0,(function(){return Wj(this,(function(e){return this._model&&this._model.move(!1,!0),[2]}))}))}))];this._widget=new Dj(this._editor,o,this._themeService,this._openerService),this._widgetVisible.set(!0),this._widget.onDidClose((function(){return e.closeMarkersNavigation()}),this,this._disposeOnClose),this._disposeOnClose.add(this._model),this._disposeOnClose.add(this._widget);for(var r=0,s=o;r<s.length;r++){var a=s[r];this._disposeOnClose.add(a)}return this._disposeOnClose.add(this._widget.onDidSelectRelatedInformation((function(t){e._editorService.openCodeEditor({resource:t.resource,options:{pinned:!0,revealIfOpened:!0,selection:wn.lift(t).collapseToStart()}},e._editor).then(void 0,De),e.closeMarkersNavigation(!1)}))),this._disposeOnClose.add(this._editor.onDidChangeModel((function(){return e._cleanUp()}))),this._disposeOnClose.add(this._model.onCurrentMarkerChanged((function(t){t&&e._model?e._model.withoutWatchingEditorPosition((function(){e._widget&&e._model&&e._widget.showAtMarker(t,e._model.indexOf(t),e._model.total)})):e._cleanUp()}))),this._disposeOnClose.add(this._model.onMarkerSetChanged((function(){if(e._widget&&e._widget.position&&e._model){var t=e._model.findMarkerAtPosition(e._widget.position);t?e._widget.updateMarker(t):e._widget.showStale()}}))),this._model},e.prototype.closeMarkersNavigation=function(e){void 0===e&&(e=!0),this._cleanUp(),e&&this._editor.focus()},e.prototype.show=function(e){this.getOrCreateModel().currentMarker=e},e.prototype._onMarkerChanged=function(e){var t=this._editor.getModel();t&&this._model&&e.some((function(e){return xs(t.uri,e)}))&&this._model.setMarkers(this._getMarkers())},e.prototype._getMarkers=function(){var e=this._editor.getModel();return e?this._markerService.read({resource:e.uri,severities:NM.Error|NM.Warning|NM.Info}):[]},e.ID="editor.contrib.markerController",e=Rj([Aj(1,MM),Aj(2,qh),Aj(3,fg),Aj(4,Pn),Aj(5,XD),Aj(6,pa)],e)}(),Hj=function(e){function t(t,n,i){var o=e.call(this,i)||this;return o._isNext=t,o._multiFile=n,o}return Pj(t,e),t.prototype.run=function(e,n){var i=this,o=e.get(MM),r=e.get(Pn),s=Bj.get(n);if(!s)return Promise.resolve(void 0);var a=s.getOrCreateModel();if(!a.move(this._isNext,!this._multiFile)||!this._multiFile)return Promise.resolve(void 0);var u=o.read({severities:NM.Error|NM.Warning|NM.Info}).sort(t.compareMarker);if(0===u.length)return Promise.resolve(void 0);var l=n.getModel();if(!l)return Promise.resolve(void 0);var c=Di(u,a.currentMarker||{resource:l.uri,severity:NM.Error,startLineNumber:1,startColumn:1,endLineNumber:1,endColumn:1},t.compareMarker);c<0?(c=~c,c%=u.length):c=this._isNext?(c+1)%u.length:(c+u.length-1)%u.length;var d=u[c];return xs(d.resource,l.uri)?(a.move(this._isNext,!0),Promise.resolve(void 0)):(s.closeMarkersNavigation(),r.openCodeEditor({resource:d.resource,options:{pinned:!1,revealIfOpened:!0,revealInCenterIfOutsideViewport:!0,selection:d}},n).then((function(e){if(e)return e.getAction(i.id).run()})))},t.compareMarker=function(e,t){var n=Lr(e.resource.toString(),t.resource.toString());return 0===n&&(n=NM.compare(e.severity,t.severity)),0===n&&(n=wn.compareRangesUsingStarts(e,t)),n},t}(kf),zj=function(e){function t(){return e.call(this,!0,!1,{id:t.ID,label:t.LABEL,alias:"Go to Next Problem (Error, Warning, Info)",precondition:eC.writable,kbOpts:{kbExpr:eC.focus,primary:578,weight:100}})||this}return Pj(t,e),t.ID="editor.action.marker.next",t.LABEL=r("markerAction.next.label","Go to Next Problem (Error, Warning, Info)"),t}(Hj),jj=function(e){function t(){return e.call(this,!1,!1,{id:t.ID,label:t.LABEL,alias:"Go to Previous Problem (Error, Warning, Info)",precondition:eC.writable,kbOpts:{kbExpr:eC.focus,primary:1602,weight:100}})||this}return Pj(t,e),t.ID="editor.action.marker.prev",t.LABEL=r("markerAction.previous.label","Go to Previous Problem (Error, Warning, Info)"),t}(Hj),Uj=function(e){function t(){return e.call(this,!0,!0,{id:"editor.action.marker.nextInFiles",label:r("markerAction.nextInFiles.label","Go to Next Problem in Files (Error, Warning, Info)"),alias:"Go to Next Problem in Files (Error, Warning, Info)",precondition:eC.writable,kbOpts:{kbExpr:eC.focus,primary:66,weight:100}})||this}return Pj(t,e),t}(Hj),Kj=function(e){function t(){return e.call(this,!1,!0,{id:"editor.action.marker.prevInFiles",label:r("markerAction.previousInFiles.label","Go to Previous Problem in Files (Error, Warning, Info)"),alias:"Go to Previous Problem in Files (Error, Warning, Info)",precondition:eC.writable,kbOpts:{kbExpr:eC.focus,primary:1090,weight:100}})||this}return Pj(t,e),t}(Hj);Pf(Bj.ID,Bj),Tf(zj),Tf(jj),Tf(Uj),Tf(Kj);var qj=new Kh("markersNavigationVisible",!1);Mf(new(Nf.bindToContribution(Bj.get))({id:"closeMarkersNavigation",precondition:qj,handler:function(e){return e.closeMarkersNavigation()},kbOpts:{weight:150,kbExpr:eC.focus,primary:9,secondary:[1033]}})),bf.appendMenuItem(19,{group:"6_problem_nav",command:{id:"editor.action.marker.nextInFiles",title:r({key:"miGotoNextProblem",comment:["&& denotes a mnemonic"]},"Next &&Problem")},order:1}),bf.appendMenuItem(19,{group:"6_problem_nav",command:{id:"editor.action.marker.prevInFiles",title:r({key:"miGotoPreviousProblem",comment:["&& denotes a mnemonic"]},"Previous &&Problem")},order:2});n(416);var Gj=function(){function e(e,t,n){this.presentationIndex=n,this._onColorFlushed=new nt,this.onColorFlushed=this._onColorFlushed.event,this._onDidChangeColor=new nt,this.onDidChangeColor=this._onDidChangeColor.event,this._onDidChangePresentation=new nt,this.onDidChangePresentation=this._onDidChangePresentation.event,this.originalColor=e,this._color=e,this._colorPresentations=t}return Object.defineProperty(e.prototype,"color",{get:function(){return this._color},set:function(e){this._color.equals(e)||(this._color=e,this._onDidChangeColor.fire(e))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"presentation",{get:function(){return this.colorPresentations[this.presentationIndex]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"colorPresentations",{get:function(){return this._colorPresentations},set:function(e){this._colorPresentations=e,this.presentationIndex>e.length-1&&(this.presentationIndex=0),this._onDidChangePresentation.fire(this.presentation)},enumerable:!0,configurable:!0}),e.prototype.selectNextColorPresentation=function(){this.presentationIndex=(this.presentationIndex+1)%this.colorPresentations.length,this.flushColor(),this._onDidChangePresentation.fire(this.presentation)},e.prototype.guessColorPresentation=function(e,t){for(var n=0;n<this.colorPresentations.length;n++)if(t===this.colorPresentations[n].label){this.presentationIndex=n,this._onDidChangePresentation.fire(this.presentation);break}},e.prototype.flushColor=function(){this._onColorFlushed.fire(this._color)},e}(),Zj=(n(417),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),Yj=er,Xj=function(e){function t(t,n,i){var o=e.call(this)||this;o.model=n,o.domNode=Yj(".colorpicker-header"),Xo(t,o.domNode),o.pickedColorNode=Xo(o.domNode,Yj(".picked-color"));var r=Xo(o.domNode,Yj(".original-color"));return r.style.backgroundColor=mv.Format.CSS.format(o.model.originalColor)||"",o.backgroundColor=i.getTheme().getColor(Py)||mv.white,o._register(yg((function(e,t){o.backgroundColor=e.getColor(Py)||mv.white}))),o._register(uo(o.pickedColorNode,qo.CLICK,(function(){return o.model.selectNextColorPresentation()}))),o._register(uo(r,qo.CLICK,(function(){o.model.color=o.model.originalColor,o.model.flushColor()}))),o._register(n.onDidChangeColor(o.onDidChangeColor,o)),o._register(n.onDidChangePresentation(o.onDidChangePresentation,o)),o.pickedColorNode.style.backgroundColor=mv.Format.CSS.format(n.color)||"",so(o.pickedColorNode,"light",n.color.rgba.a<.5?o.backgroundColor.isLighter():n.color.isLighter()),o}return Zj(t,e),t.prototype.onDidChangeColor=function(e){this.pickedColorNode.style.backgroundColor=mv.Format.CSS.format(e)||"",so(this.pickedColorNode,"light",e.rgba.a<.5?this.backgroundColor.isLighter():e.isLighter()),this.onDidChangePresentation()},t.prototype.onDidChangePresentation=function(){this.pickedColorNode.textContent=this.model.presentation?this.model.presentation.label:""},t}(He),$j=function(e){function t(t,n,i){var o=e.call(this)||this;return o.model=n,o.pixelRatio=i,o.domNode=Yj(".colorpicker-body"),Xo(t,o.domNode),o.saturationBox=new Qj(o.domNode,o.model,o.pixelRatio),o._register(o.saturationBox),o._register(o.saturationBox.onDidChange(o.onDidSaturationValueChange,o)),o._register(o.saturationBox.onColorFlushed(o.flushColor,o)),o.opacityStrip=new eU(o.domNode,o.model),o._register(o.opacityStrip),o._register(o.opacityStrip.onDidChange(o.onDidOpacityChange,o)),o._register(o.opacityStrip.onColorFlushed(o.flushColor,o)),o.hueStrip=new tU(o.domNode,o.model),o._register(o.hueStrip),o._register(o.hueStrip.onDidChange(o.onDidHueChange,o)),o._register(o.hueStrip.onColorFlushed(o.flushColor,o)),o}return Zj(t,e),t.prototype.flushColor=function(){this.model.flushColor()},t.prototype.onDidSaturationValueChange=function(e){var t=e.s,n=e.v,i=this.model.color.hsva;this.model.color=new mv(new gv(i.h,t,n,i.a))},t.prototype.onDidOpacityChange=function(e){var t=this.model.color.hsva;this.model.color=new mv(new gv(t.h,t.s,t.v,e))},t.prototype.onDidHueChange=function(e){var t=this.model.color.hsva,n=360*(1-e);this.model.color=new mv(new gv(360===n?0:n,t.s,t.v,t.a))},t.prototype.layout=function(){this.saturationBox.layout(),this.opacityStrip.layout(),this.hueStrip.layout()},t}(He),Qj=function(e){function t(t,n,i){var o=e.call(this)||this;return o.model=n,o.pixelRatio=i,o._onDidChange=new nt,o.onDidChange=o._onDidChange.event,o._onColorFlushed=new nt,o.onColorFlushed=o._onColorFlushed.event,o.domNode=Yj(".saturation-wrap"),Xo(t,o.domNode),o.canvas=document.createElement("canvas"),o.canvas.className="saturation-box",Xo(o.domNode,o.canvas),o.selection=Yj(".saturation-selection"),Xo(o.domNode,o.selection),o.layout(),o._register(ho(o.domNode,(function(e){return o.onMouseDown(e)}))),o._register(o.model.onDidChangeColor(o.onDidChangeColor,o)),o.monitor=null,o}return Zj(t,e),t.prototype.onMouseDown=function(e){var t=this;this.monitor=this._register(new Kf);var n=Oo(this.domNode);e.target!==this.selection&&this.onDidChangePosition(e.offsetX,e.offsetY),this.monitor.startMonitoring(e.target,e.buttons,Uf,(function(e){return t.onDidChangePosition(e.posx-n.left,e.posy-n.top)}),(function(){return null}));var i=po(document,(function(){t._onColorFlushed.fire(),i.dispose(),t.monitor&&(t.monitor.stopMonitoring(!0),t.monitor=null)}),!0)},t.prototype.onDidChangePosition=function(e,t){var n=Math.max(0,Math.min(1,e/this.width)),i=Math.max(0,Math.min(1,1-t/this.height));this.paintSelection(n,i),this._onDidChange.fire({s:n,v:i})},t.prototype.layout=function(){this.width=this.domNode.offsetWidth,this.height=this.domNode.offsetHeight,this.canvas.width=this.width*this.pixelRatio,this.canvas.height=this.height*this.pixelRatio,this.paint();var e=this.model.color.hsva;this.paintSelection(e.s,e.v)},t.prototype.paint=function(){var e=this.model.color.hsva,t=new mv(new gv(e.h,1,1,1)),n=this.canvas.getContext("2d"),i=n.createLinearGradient(0,0,this.canvas.width,0);i.addColorStop(0,"rgba(255, 255, 255, 1)"),i.addColorStop(.5,"rgba(255, 255, 255, 0.5)"),i.addColorStop(1,"rgba(255, 255, 255, 0)");var o=n.createLinearGradient(0,0,0,this.canvas.height);o.addColorStop(0,"rgba(0, 0, 0, 0)"),o.addColorStop(1,"rgba(0, 0, 0, 1)"),n.rect(0,0,this.canvas.width,this.canvas.height),n.fillStyle=mv.Format.CSS.format(t),n.fill(),n.fillStyle=i,n.fill(),n.fillStyle=o,n.fill()},t.prototype.paintSelection=function(e,t){this.selection.style.left=e*this.width+"px",this.selection.style.top=this.height-t*this.height+"px"},t.prototype.onDidChangeColor=function(){this.monitor&&this.monitor.isMonitoring()||this.paint()},t}(He),Jj=function(e){function t(t,n){var i=e.call(this)||this;return i.model=n,i._onDidChange=new nt,i.onDidChange=i._onDidChange.event,i._onColorFlushed=new nt,i.onColorFlushed=i._onColorFlushed.event,i.domNode=Xo(t,Yj(".strip")),i.overlay=Xo(i.domNode,Yj(".overlay")),i.slider=Xo(i.domNode,Yj(".slider")),i.slider.style.top="0px",i._register(ho(i.domNode,(function(e){return i.onMouseDown(e)}))),i.layout(),i}return Zj(t,e),t.prototype.layout=function(){this.height=this.domNode.offsetHeight-this.slider.offsetHeight;var e=this.getValue(this.model.color);this.updateSliderPosition(e)},t.prototype.onMouseDown=function(e){var t=this,n=this._register(new Kf),i=Oo(this.domNode);no(this.domNode,"grabbing"),e.target!==this.slider&&this.onDidChangeTop(e.offsetY),n.startMonitoring(e.target,e.buttons,Uf,(function(e){return t.onDidChangeTop(e.posy-i.top)}),(function(){return null}));var o=po(document,(function(){t._onColorFlushed.fire(),o.dispose(),n.stopMonitoring(!0),oo(t.domNode,"grabbing")}),!0)},t.prototype.onDidChangeTop=function(e){var t=Math.max(0,Math.min(1,1-e/this.height));this.updateSliderPosition(t),this._onDidChange.fire(t)},t.prototype.updateSliderPosition=function(e){this.slider.style.top=(1-e)*this.height+"px"},t}(He),eU=function(e){function t(t,n){var i=e.call(this,t,n)||this;return no(i.domNode,"opacity-strip"),i._register(n.onDidChangeColor(i.onDidChangeColor,i)),i.onDidChangeColor(i.model.color),i}return Zj(t,e),t.prototype.onDidChangeColor=function(e){var t=e.rgba,n=t.r,i=t.g,o=t.b,r=new mv(new pv(n,i,o,1)),s=new mv(new pv(n,i,o,0));this.overlay.style.background="linear-gradient(to bottom, "+r+" 0%, "+s+" 100%)"},t.prototype.getValue=function(e){return e.hsva.a},t}(Jj),tU=function(e){function t(t,n){var i=e.call(this,t,n)||this;return no(i.domNode,"hue-strip"),i}return Zj(t,e),t.prototype.getValue=function(e){return 1-e.hsva.h/360},t}(Jj),nU=function(e){function t(t,n,i,o){var r=e.call(this)||this;r.model=n,r.pixelRatio=i,r._register(Fn((function(){return r.layout()})));var s=Yj(".colorpicker-widget");t.appendChild(s);var a=new Xj(s,r.model,o);return r.body=new $j(s,r.model,r.pixelRatio),r._register(a),r._register(r.body),r}return Zj(t,e),t.prototype.layout=function(){this.body.layout()},t}(KC);function iU(e,t,n){var i=Ou.ordered(e).map((function(i){return Promise.resolve(i.provideHover(e,t,n)).then((function(e){return e&&(n=void 0!==(t=e).range,i=void 0!==t.contents&&t.contents&&t.contents.length>0,n&&i)?e:void 0;var t,n,i}),(function(e){Ne(e)}))}));return Promise.all(i).then(Ei)}Of("_executeHoverProvider",(function(e,t){return iU(e,t,et.None)}));var oU,rU=function(){function e(e,t,n,i,o){var r=this;this._computer=e,this._state=0,this._hoverTime=o,this._firstWaitScheduler=new wi((function(){return r._triggerAsyncComputation()}),0),this._secondWaitScheduler=new wi((function(){return r._triggerSyncComputation()}),0),this._loadingMessageScheduler=new wi((function(){return r._showLoadingMessage()}),0),this._asyncComputationPromise=null,this._asyncComputationPromiseDone=!1,this._completeCallback=t,this._errorCallback=n,this._progressCallback=i}return e.prototype.setHoverTime=function(e){this._hoverTime=e},e.prototype._firstWaitTime=function(){return this._hoverTime/2},e.prototype._secondWaitTime=function(){return this._hoverTime/2},e.prototype._loadingMessageTime=function(){return 3*this._hoverTime},e.prototype._triggerAsyncComputation=function(){var e=this;this._state=2,this._secondWaitScheduler.schedule(this._secondWaitTime()),this._computer.computeAsync?(this._asyncComputationPromiseDone=!1,this._asyncComputationPromise=hi((function(t){return e._computer.computeAsync(t)})),this._asyncComputationPromise.then((function(t){e._asyncComputationPromiseDone=!0,e._withAsyncResult(t)}),(function(t){return e._onError(t)}))):this._asyncComputationPromiseDone=!0},e.prototype._triggerSyncComputation=function(){this._computer.computeSync&&this._computer.onResult(this._computer.computeSync(),!0),this._asyncComputationPromiseDone?(this._state=0,this._onComplete(this._computer.getResult())):(this._state=3,this._onProgress(this._computer.getResult()))},e.prototype._showLoadingMessage=function(){3===this._state&&this._onProgress(this._computer.getResultWithLoadingMessage())},e.prototype._withAsyncResult=function(e){e&&this._computer.onResult(e,!1),3===this._state&&(this._state=0,this._onComplete(this._computer.getResult()))},e.prototype._onComplete=function(e){this._completeCallback&&this._completeCallback(e)},e.prototype._onError=function(e){this._errorCallback?this._errorCallback(e):De(e)},e.prototype._onProgress=function(e){this._progressCallback&&this._progressCallback(e)},e.prototype.start=function(e){if(0===e)0===this._state&&(this._state=1,this._firstWaitScheduler.schedule(this._firstWaitTime()),this._loadingMessageScheduler.schedule(this._loadingMessageTime()));else switch(this._state){case 0:this._triggerAsyncComputation(),this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break;case 2:this._secondWaitScheduler.cancel(),this._triggerSyncComputation()}},e.prototype.cancel=function(){this._loadingMessageScheduler.cancel(),1===this._state&&this._firstWaitScheduler.cancel(),2===this._state&&(this._secondWaitScheduler.cancel(),this._asyncComputationPromise&&(this._asyncComputationPromise.cancel(),this._asyncComputationPromise=null)),3===this._state&&this._asyncComputationPromise&&(this._asyncComputationPromise.cancel(),this._asyncComputationPromise=null),this._state=0},e}(),sU=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),aU=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},uU=function(e){function t(t,n){var i=e.call(this)||this;return i.allowEditorOverflow=!0,i._id=t,i._editor=n,i._isVisible=!1,i._stoleFocus=!1,i._containerDomNode=document.createElement("div"),i._containerDomNode.className="monaco-editor-hover hidden",i._containerDomNode.tabIndex=0,i._domNode=document.createElement("div"),i._domNode.className="monaco-editor-hover-content",i.scrollbar=new gS(i._domNode,{}),i._register(i.scrollbar),i._containerDomNode.appendChild(i.scrollbar.getDomNode()),i.onkeydown(i._containerDomNode,(function(e){e.equals(9)&&i.hide()})),i._register(i._editor.onDidChangeConfiguration((function(e){e.hasChanged(34)&&i.updateFont()}))),i._editor.onDidLayoutChange((function(e){return i.layout()})),i.layout(),i._editor.addContentWidget(i),i._showAtPosition=null,i._showAtRange=null,i._stoleFocus=!1,i}return sU(t,e),Object.defineProperty(t.prototype,"isVisible",{get:function(){return this._isVisible},set:function(e){this._isVisible=e,so(this._containerDomNode,"hidden",!this._isVisible)},enumerable:!0,configurable:!0}),t.prototype.getId=function(){return this._id},t.prototype.getDomNode=function(){return this._containerDomNode},t.prototype.showAt=function(e,t,n){this._showAtPosition=e,this._showAtRange=t,this.isVisible=!0,this._editor.layoutContentWidget(this),this._editor.render(),this._stoleFocus=n,n&&this._containerDomNode.focus()},t.prototype.hide=function(){this.isVisible&&(this.isVisible=!1,this._editor.layoutContentWidget(this),this._stoleFocus&&this._editor.focus())},t.prototype.getPosition=function(){return this.isVisible?{position:this._showAtPosition,range:this._showAtRange,preference:[1,2]}:null},t.prototype.dispose=function(){this._editor.removeContentWidget(this),e.prototype.dispose.call(this)},t.prototype.updateFont=function(){var e=this;Array.prototype.slice.call(this._domNode.getElementsByClassName("code")).forEach((function(t){return e._editor.applyFontInfo(t)}))},t.prototype.updateContents=function(e){this._domNode.textContent="",this._domNode.appendChild(e),this.updateFont(),this._editor.layoutContentWidget(this),this.onContentsChange()},t.prototype.onContentsChange=function(){this.scrollbar.scanDomNode()},t.prototype.layout=function(){var e=Math.max(this._editor.getLayoutInfo().height/4,250),t=this._editor.getOption(34),n=t.fontSize,i=t.lineHeight;this._domNode.style.fontSize=n+"px",this._domNode.style.lineHeight=i+"px",this._domNode.style.maxHeight=e+"px",this._domNode.style.maxWidth=Math.max(.66*this._editor.getLayoutInfo().width,500)+"px"},t}(KC),lU=function(e){function t(t,n){var i=e.call(this)||this;return i._id=t,i._editor=n,i._isVisible=!1,i._domNode=document.createElement("div"),i._domNode.className="monaco-editor-hover hidden",i._domNode.setAttribute("aria-hidden","true"),i._domNode.setAttribute("role","presentation"),i._showAtLineNumber=-1,i._register(i._editor.onDidChangeConfiguration((function(e){e.hasChanged(34)&&i.updateFont()}))),i._editor.addOverlayWidget(i),i}return sU(t,e),Object.defineProperty(t.prototype,"isVisible",{get:function(){return this._isVisible},set:function(e){this._isVisible=e,so(this._domNode,"hidden",!this._isVisible)},enumerable:!0,configurable:!0}),t.prototype.getId=function(){return this._id},t.prototype.getDomNode=function(){return this._domNode},t.prototype.showAt=function(e){this._showAtLineNumber=e,this.isVisible||(this.isVisible=!0);var t=this._editor.getLayoutInfo(),n=this._editor.getTopForLineNumber(this._showAtLineNumber),i=this._editor.getScrollTop(),o=this._editor.getOption(49),r=n-i-(this._domNode.clientHeight-o)/2;this._domNode.style.left=t.glyphMarginLeft+t.glyphMarginWidth+"px",this._domNode.style.top=Math.max(Math.round(r),0)+"px"},t.prototype.hide=function(){this.isVisible&&(this.isVisible=!1)},t.prototype.getPosition=function(){return null},t.prototype.dispose=function(){this._editor.removeOverlayWidget(this),e.prototype.dispose.call(this)},t.prototype.updateFont=function(){var e=this,t=Array.prototype.slice.call(this._domNode.getElementsByTagName("code")),n=Array.prototype.slice.call(this._domNode.getElementsByClassName("code"));aU(t,n).forEach((function(t){return e._editor.applyFontInfo(t)}))},t.prototype.updateContents=function(e){this._domNode.textContent="",this._domNode.appendChild(e),this.updateFont()},t}(KC);(function(e){var t={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:g,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/,nptable:g,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?\\?>\\n*|<![A-Z][\\s\\S]*?>\\n*|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>\\n*|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)|</(?!script|pre|style)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$))",def:/^ {0,3}\[(label)\]: *\n? *<?([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,table:g,lheading:/^([^\n]+)\n *(=|-){2,} *(?:\n+|$)/,paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading| {0,3}>|<\/?(?:tag)(?: +|\n|\/?>)|<(?:script|pre|style|!--))[^\n]+)*)/,text:/^[^\n]+/};function n(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||b.defaults,this.rules=t.normal,this.options.pedantic?this.rules=t.pedantic:this.options.gfm&&(this.options.tables?this.rules=t.tables:this.rules=t.gfm)}t._label=/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,t._title=/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/,t.def=d(t.def).replace("label",t._label).replace("title",t._title).getRegex(),t.bullet=/(?:[*+-]|\d{1,9}\.)/,t.item=/^( *)(bull) ?[^\n]*(?:\n(?!\1bull ?)[^\n]*)*/,t.item=d(t.item,"gm").replace(/bull/g,t.bullet).getRegex(),t.list=d(t.list).replace(/bull/g,t.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+t.def.source+")").getRegex(),t._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",t._comment=/<!--(?!-?>)[\s\S]*?-->/,t.html=d(t.html,"i").replace("comment",t._comment).replace("tag",t._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),t.paragraph=d(t.paragraph).replace("hr",t.hr).replace("heading",t.heading).replace("lheading",t.lheading).replace("tag",t._tag).getRegex(),t.blockquote=d(t.blockquote).replace("paragraph",t.paragraph).getRegex(),t.normal=m({},t),t.gfm=m({},t.normal,{fences:/^ {0,3}(`{3,}|~{3,})([^`\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,paragraph:/^/,heading:/^ *(#{1,6}) +([^\n]+?) *#* *(?:\n+|$)/}),t.gfm.paragraph=d(t.paragraph).replace("(?!","(?!"+t.gfm.fences.source.replace("\\1","\\2")+"|"+t.list.source.replace("\\1","\\3")+"|").getRegex(),t.tables=m({},t.gfm,{nptable:/^ *([^|\n ].*\|.*)\n *([-:]+ *\|[-| :]*)(?:\n((?:.*[^>\n ].*(?:\n|$))*)\n*|$)/,table:/^ *\|(.+)\n *\|?( *[-:]+[-| :]*)(?:\n((?: *[^>\n ].*(?:\n|$))*)\n*|$)/}),t.pedantic=m({},t.normal,{html:d("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",t._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/}),n.rules=t,n.lex=function(e,t){return new n(t).lex(e)},n.prototype.lex=function(e){return e=e.replace(/\r\n|\r/g,"\n").replace(/\t/g," ").replace(/\u00a0/g," ").replace(/\u2424/g,"\n"),this.token(e,!0)},n.prototype.token=function(e,n){var i,o,r,s,a,u,l,c,d,h,p,f,g,m,y,b;for(e=e.replace(/^ +$/gm,"");e;)if((r=this.rules.newline.exec(e))&&(e=e.substring(r[0].length),r[0].length>1&&this.tokens.push({type:"space"})),r=this.rules.code.exec(e))e=e.substring(r[0].length),r=r[0].replace(/^ {4}/gm,""),this.tokens.push({type:"code",text:this.options.pedantic?r:_(r,"\n")});else if(r=this.rules.fences.exec(e))e=e.substring(r[0].length),this.tokens.push({type:"code",lang:r[2]?r[2].trim():r[2],text:r[3]||""});else if(r=this.rules.heading.exec(e))e=e.substring(r[0].length),this.tokens.push({type:"heading",depth:r[1].length,text:r[2]});else if((r=this.rules.nptable.exec(e))&&(u={type:"table",header:v(r[1].replace(/^ *| *\| *$/g,"")),align:r[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:r[3]?r[3].replace(/\n$/,"").split("\n"):[]}).header.length===u.align.length){for(e=e.substring(r[0].length),p=0;p<u.align.length;p++)/^ *-+: *$/.test(u.align[p])?u.align[p]="right":/^ *:-+: *$/.test(u.align[p])?u.align[p]="center":/^ *:-+ *$/.test(u.align[p])?u.align[p]="left":u.align[p]=null;for(p=0;p<u.cells.length;p++)u.cells[p]=v(u.cells[p],u.header.length);this.tokens.push(u)}else if(r=this.rules.hr.exec(e))e=e.substring(r[0].length),this.tokens.push({type:"hr"});else if(r=this.rules.blockquote.exec(e))e=e.substring(r[0].length),this.tokens.push({type:"blockquote_start"}),r=r[0].replace(/^ *> ?/gm,""),this.token(r,n),this.tokens.push({type:"blockquote_end"});else if(r=this.rules.list.exec(e)){for(e=e.substring(r[0].length),l={type:"list_start",ordered:m=(s=r[2]).length>1,start:m?+s:"",loose:!1},this.tokens.push(l),c=[],i=!1,g=(r=r[0].match(this.rules.item)).length,p=0;p<g;p++)h=(u=r[p]).length,~(u=u.replace(/^ *([*+-]|\d+\.) */,"")).indexOf("\n ")&&(h-=u.length,u=this.options.pedantic?u.replace(/^ {1,4}/gm,""):u.replace(new RegExp("^ {1,"+h+"}","gm"),"")),p!==g-1&&(a=t.bullet.exec(r[p+1])[0],(s.length>1?1===a.length:a.length>1||this.options.smartLists&&a!==s)&&(e=r.slice(p+1).join("\n")+e,p=g-1)),o=i||/\n\n(?!\s*$)/.test(u),p!==g-1&&(i="\n"===u.charAt(u.length-1),o||(o=i)),o&&(l.loose=!0),b=void 0,(y=/^\[[ xX]\] /.test(u))&&(b=" "!==u[1],u=u.replace(/^\[[ xX]\] +/,"")),d={type:"list_item_start",task:y,checked:b,loose:o},c.push(d),this.tokens.push(d),this.token(u,!1),this.tokens.push({type:"list_item_end"});if(l.loose)for(g=c.length,p=0;p<g;p++)c[p].loose=!0;this.tokens.push({type:"list_end"})}else if(r=this.rules.html.exec(e))e=e.substring(r[0].length),this.tokens.push({type:this.options.sanitize?"paragraph":"html",pre:!this.options.sanitizer&&("pre"===r[1]||"script"===r[1]||"style"===r[1]),text:r[0]});else if(n&&(r=this.rules.def.exec(e)))e=e.substring(r[0].length),r[3]&&(r[3]=r[3].substring(1,r[3].length-1)),f=r[1].toLowerCase().replace(/\s+/g," "),this.tokens.links[f]||(this.tokens.links[f]={href:r[2],title:r[3]});else if((r=this.rules.table.exec(e))&&(u={type:"table",header:v(r[1].replace(/^ *| *\| *$/g,"")),align:r[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:r[3]?r[3].replace(/\n$/,"").split("\n"):[]}).header.length===u.align.length){for(e=e.substring(r[0].length),p=0;p<u.align.length;p++)/^ *-+: *$/.test(u.align[p])?u.align[p]="right":/^ *:-+: *$/.test(u.align[p])?u.align[p]="center":/^ *:-+ *$/.test(u.align[p])?u.align[p]="left":u.align[p]=null;for(p=0;p<u.cells.length;p++)u.cells[p]=v(u.cells[p].replace(/^ *\| *| *\| *$/g,""),u.header.length);this.tokens.push(u)}else if(r=this.rules.lheading.exec(e))e=e.substring(r[0].length),this.tokens.push({type:"heading",depth:"="===r[2]?1:2,text:r[1]});else if(n&&(r=this.rules.paragraph.exec(e)))e=e.substring(r[0].length),this.tokens.push({type:"paragraph",text:"\n"===r[1].charAt(r[1].length-1)?r[1].slice(0,-1):r[1]});else if(r=this.rules.text.exec(e))e=e.substring(r[0].length),this.tokens.push({type:"text",text:r[0]});else if(e)throw new Error("Infinite loop on byte: "+e.charCodeAt(0));return this.tokens};var i={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:g,tag:"^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",link:/^!?\[(label)\]\(href(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,strong:/^__([^\s_])__(?!_)|^\*\*([^\s*])\*\*(?!\*)|^__([^\s][\s\S]*?[^\s])__(?!_)|^\*\*([^\s][\s\S]*?[^\s])\*\*(?!\*)/,em:/^_([^\s_])_(?!_)|^\*([^\s*"<\[])\*(?!\*)|^_([^\s][\s\S]*?[^\s_])_(?!_|[^\spunctuation])|^_([^\s_][\s\S]*?[^\s])_(?!_|[^\spunctuation])|^\*([^\s"<\[][\s\S]*?[^\s*])\*(?!\*)|^\*([^\s*"<\[][\s\S]*?[^\s])\*(?!\*)/,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:g,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*]|\b_|$)|[^ ](?= {2,}\n))|(?= {2,}\n))/};function o(e,t){if(this.options=t||b.defaults,this.links=e,this.rules=i.normal,this.renderer=this.options.renderer||new r,this.renderer.options=this.options,!this.links)throw new Error("Tokens array requires a `links` property.");this.options.pedantic?this.rules=i.pedantic:this.options.gfm&&(this.options.breaks?this.rules=i.breaks:this.rules=i.gfm)}function r(e){this.options=e||b.defaults}function s(){}function a(e){this.tokens=[],this.token=null,this.options=e||b.defaults,this.options.renderer=this.options.renderer||new r,this.renderer=this.options.renderer,this.renderer.options=this.options,this.slugger=new u}function u(){this.seen={}}function l(e,t){if(t){if(l.escapeTest.test(e))return e.replace(l.escapeReplace,(function(e){return l.replacements[e]}))}else if(l.escapeTestNoEncode.test(e))return e.replace(l.escapeReplaceNoEncode,(function(e){return l.replacements[e]}));return e}function c(e){return e.replace(/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi,(function(e,t){return"colon"===(t=t.toLowerCase())?":":"#"===t.charAt(0)?"x"===t.charAt(1)?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""}))}function d(e,t){return e=e.source||e,t=t||"",{replace:function(t,n){return n=(n=n.source||n).replace(/(^|[^\[])\^/g,"$1"),e=e.replace(t,n),this},getRegex:function(){return new RegExp(e,t)}}}function h(e,t,n){if(e){try{var i=decodeURIComponent(c(n)).replace(/[^\w:]/g,"").toLowerCase()}catch(e){return null}if(0===i.indexOf("javascript:")||0===i.indexOf("vbscript:")||0===i.indexOf("data:"))return null}t&&!f.test(n)&&(n=function(e,t){p[" "+e]||(/^[^:]+:\/*[^/]*$/.test(e)?p[" "+e]=e+"/":p[" "+e]=_(e,"/",!0));return e=p[" "+e],"//"===t.slice(0,2)?e.replace(/:[\s\S]*/,":")+t:"/"===t.charAt(0)?e.replace(/(:\/*[^/]*)[\s\S]*/,"$1")+t:e+t}(t,n));try{n=encodeURI(n).replace(/%25/g,"%")}catch(e){return null}return n}i._punctuation="!\"#$%&'()*+,\\-./:;<=>?@\\[^_{|}~",i.em=d(i.em).replace(/punctuation/g,i._punctuation).getRegex(),i._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,i._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,i._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,i.autolink=d(i.autolink).replace("scheme",i._scheme).replace("email",i._email).getRegex(),i._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,i.tag=d(i.tag).replace("comment",t._comment).replace("attribute",i._attribute).getRegex(),i._label=/(?:\[[^\[\]]*\]|\\[\[\]]?|`[^`]*`|`(?!`)|[^\[\]\\`])*?/,i._href=/\s*(<(?:\\[<>]?|[^\s<>\\])*>|[^\s\x00-\x1f]*)/,i._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,i.link=d(i.link).replace("label",i._label).replace("href",i._href).replace("title",i._title).getRegex(),i.reflink=d(i.reflink).replace("label",i._label).getRegex(),i.normal=m({},i),i.pedantic=m({},i.normal,{strong:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,em:/^_(?=\S)([\s\S]*?\S)_(?!_)|^\*(?=\S)([\s\S]*?\S)\*(?!\*)/,link:d(/^!?\[(label)\]\((.*?)\)/).replace("label",i._label).getRegex(),reflink:d(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",i._label).getRegex()}),i.gfm=m({},i.normal,{escape:d(i.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^~+(?=\S)([\s\S]*?\S)~+/,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*~]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))|(?= {2,}\n|[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))/}),i.gfm.url=d(i.gfm.url,"i").replace("email",i.gfm._extended_email).getRegex(),i.breaks=m({},i.gfm,{br:d(i.br).replace("{2,}","*").getRegex(),text:d(i.gfm.text).replace(/\{2,\}/g,"*").getRegex()}),o.rules=i,o.output=function(e,t,n){return new o(t,n).output(e)},o.prototype.output=function(e){for(var t,n,i,r,s,a,u="";e;)if(s=this.rules.escape.exec(e))e=e.substring(s[0].length),u+=l(s[1]);else if(s=this.rules.tag.exec(e))!this.inLink&&/^<a /i.test(s[0])?this.inLink=!0:this.inLink&&/^<\/a>/i.test(s[0])&&(this.inLink=!1),!this.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(s[0])?this.inRawBlock=!0:this.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(s[0])&&(this.inRawBlock=!1),e=e.substring(s[0].length),u+=this.options.sanitize?this.options.sanitizer?this.options.sanitizer(s[0]):l(s[0]):s[0];else if(s=this.rules.link.exec(e)){var c=y(s[2],"()");if(c>-1){var d=s[0].length-(s[2].length-c)-(s[3]||"").length;s[2]=s[2].substring(0,c),s[0]=s[0].substring(0,d).trim(),s[3]=""}e=e.substring(s[0].length),this.inLink=!0,i=s[2],this.options.pedantic?(t=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(i))?(i=t[1],r=t[3]):r="":r=s[3]?s[3].slice(1,-1):"",i=i.trim().replace(/^<([\s\S]*)>$/,"$1"),u+=this.outputLink(s,{href:o.escapes(i),title:o.escapes(r)}),this.inLink=!1}else if((s=this.rules.reflink.exec(e))||(s=this.rules.nolink.exec(e))){if(e=e.substring(s[0].length),t=(s[2]||s[1]).replace(/\s+/g," "),!(t=this.links[t.toLowerCase()])||!t.href){u+=s[0].charAt(0),e=s[0].substring(1)+e;continue}this.inLink=!0,u+=this.outputLink(s,t),this.inLink=!1}else if(s=this.rules.strong.exec(e))e=e.substring(s[0].length),u+=this.renderer.strong(this.output(s[4]||s[3]||s[2]||s[1]));else if(s=this.rules.em.exec(e))e=e.substring(s[0].length),u+=this.renderer.em(this.output(s[6]||s[5]||s[4]||s[3]||s[2]||s[1]));else if(s=this.rules.code.exec(e))e=e.substring(s[0].length),u+=this.renderer.codespan(l(s[2].trim(),!0));else if(s=this.rules.br.exec(e))e=e.substring(s[0].length),u+=this.renderer.br();else if(s=this.rules.del.exec(e))e=e.substring(s[0].length),u+=this.renderer.del(this.output(s[1]));else if(s=this.rules.autolink.exec(e))e=e.substring(s[0].length),i="@"===s[2]?"mailto:"+(n=l(this.mangle(s[1]))):n=l(s[1]),u+=this.renderer.link(i,null,n);else if(this.inLink||!(s=this.rules.url.exec(e))){if(s=this.rules.text.exec(e))e=e.substring(s[0].length),this.inRawBlock?u+=this.renderer.text(s[0]):u+=this.renderer.text(l(this.smartypants(s[0])));else if(e)throw new Error("Infinite loop on byte: "+e.charCodeAt(0))}else{if("@"===s[2])i="mailto:"+(n=l(s[0]));else{do{a=s[0],s[0]=this.rules._backpedal.exec(s[0])[0]}while(a!==s[0]);n=l(s[0]),i="www."===s[1]?"http://"+n:n}e=e.substring(s[0].length),u+=this.renderer.link(i,null,n)}return u},o.escapes=function(e){return e?e.replace(o.rules._escapes,"$1"):e},o.prototype.outputLink=function(e,t){var n=t.href,i=t.title?l(t.title):null;return"!"!==e[0].charAt(0)?this.renderer.link(n,i,this.output(e[1])):this.renderer.image(n,i,l(e[1]))},o.prototype.smartypants=function(e){return this.options.smartypants?e.replace(/---/g,"—").replace(/--/g,"–").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1‘").replace(/'/g,"’").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1“").replace(/"/g,"”").replace(/\.{3}/g,"…"):e},o.prototype.mangle=function(e){if(!this.options.mangle)return e;for(var t,n="",i=e.length,o=0;o<i;o++)t=e.charCodeAt(o),Math.random()>.5&&(t="x"+t.toString(16)),n+="&#"+t+";";return n},r.prototype.code=function(e,t,n){var i=(t||"").match(/\S*/)[0];if(this.options.highlight){var o=this.options.highlight(e,i);null!=o&&o!==e&&(n=!0,e=o)}return i?'<pre><code class="'+this.options.langPrefix+l(i,!0)+'">'+(n?e:l(e,!0))+"</code></pre>\n":"<pre><code>"+(n?e:l(e,!0))+"</code></pre>"},r.prototype.blockquote=function(e){return"<blockquote>\n"+e+"</blockquote>\n"},r.prototype.html=function(e){return e},r.prototype.heading=function(e,t,n,i){return this.options.headerIds?"<h"+t+' id="'+this.options.headerPrefix+i.slug(n)+'">'+e+"</h"+t+">\n":"<h"+t+">"+e+"</h"+t+">\n"},r.prototype.hr=function(){return this.options.xhtml?"<hr/>\n":"<hr>\n"},r.prototype.list=function(e,t,n){var i=t?"ol":"ul";return"<"+i+(t&&1!==n?' start="'+n+'"':"")+">\n"+e+"</"+i+">\n"},r.prototype.listitem=function(e){return"<li>"+e+"</li>\n"},r.prototype.checkbox=function(e){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox"'+(this.options.xhtml?" /":"")+"> "},r.prototype.paragraph=function(e){return"<p>"+e+"</p>\n"},r.prototype.table=function(e,t){return t&&(t="<tbody>"+t+"</tbody>"),"<table>\n<thead>\n"+e+"</thead>\n"+t+"</table>\n"},r.prototype.tablerow=function(e){return"<tr>\n"+e+"</tr>\n"},r.prototype.tablecell=function(e,t){var n=t.header?"th":"td";return(t.align?"<"+n+' align="'+t.align+'">':"<"+n+">")+e+"</"+n+">\n"},r.prototype.strong=function(e){return"<strong>"+e+"</strong>"},r.prototype.em=function(e){return"<em>"+e+"</em>"},r.prototype.codespan=function(e){return"<code>"+e+"</code>"},r.prototype.br=function(){return this.options.xhtml?"<br/>":"<br>"},r.prototype.del=function(e){return"<del>"+e+"</del>"},r.prototype.link=function(e,t,n){if(null===(e=h(this.options.sanitize,this.options.baseUrl,e)))return n;var i='<a href="'+l(e)+'"';return t&&(i+=' title="'+t+'"'),i+=">"+n+"</a>"},r.prototype.image=function(e,t,n){if(null===(e=h(this.options.sanitize,this.options.baseUrl,e)))return n;var i='<img src="'+e+'" alt="'+n+'"';return t&&(i+=' title="'+t+'"'),i+=this.options.xhtml?"/>":">"},r.prototype.text=function(e){return e},s.prototype.strong=s.prototype.em=s.prototype.codespan=s.prototype.del=s.prototype.text=function(e){return e},s.prototype.link=s.prototype.image=function(e,t,n){return""+n},s.prototype.br=function(){return""},a.parse=function(e,t){return new a(t).parse(e)},a.prototype.parse=function(e){this.inline=new o(e.links,this.options),this.inlineText=new o(e.links,m({},this.options,{renderer:new s})),this.tokens=e.reverse();for(var t="";this.next();)t+=this.tok();return t},a.prototype.next=function(){return this.token=this.tokens.pop()},a.prototype.peek=function(){return this.tokens[this.tokens.length-1]||0},a.prototype.parseText=function(){for(var e=this.token.text;"text"===this.peek().type;)e+="\n"+this.next().text;return this.inline.output(e)},a.prototype.tok=function(){switch(this.token.type){case"space":return"";case"hr":return this.renderer.hr();case"heading":return this.renderer.heading(this.inline.output(this.token.text),this.token.depth,c(this.inlineText.output(this.token.text)),this.slugger);case"code":return this.renderer.code(this.token.text,this.token.lang,this.token.escaped);case"table":var e,t,n,i,o="",r="";for(n="",e=0;e<this.token.header.length;e++)n+=this.renderer.tablecell(this.inline.output(this.token.header[e]),{header:!0,align:this.token.align[e]});for(o+=this.renderer.tablerow(n),e=0;e<this.token.cells.length;e++){for(t=this.token.cells[e],n="",i=0;i<t.length;i++)n+=this.renderer.tablecell(this.inline.output(t[i]),{header:!1,align:this.token.align[i]});r+=this.renderer.tablerow(n)}return this.renderer.table(o,r);case"blockquote_start":for(r="";"blockquote_end"!==this.next().type;)r+=this.tok();return this.renderer.blockquote(r);case"list_start":r="";for(var s=this.token.ordered,a=this.token.start;"list_end"!==this.next().type;)r+=this.tok();return this.renderer.list(r,s,a);case"list_item_start":r="";var u=this.token.loose,l=this.token.checked,d=this.token.task;for(this.token.task&&(r+=this.renderer.checkbox(l));"list_item_end"!==this.next().type;)r+=u||"text"!==this.token.type?this.tok():this.parseText();return this.renderer.listitem(r,d,l);case"html":return this.renderer.html(this.token.text);case"paragraph":return this.renderer.paragraph(this.inline.output(this.token.text));case"text":return this.renderer.paragraph(this.parseText());default:var h='Token with "'+this.token.type+'" type was not found.';if(!this.options.silent)throw new Error(h);console.log(h)}},u.prototype.slug=function(e){var t=e.toLowerCase().trim().replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-");if(this.seen.hasOwnProperty(t)){var n=t;do{this.seen[n]++,t=n+"-"+this.seen[n]}while(this.seen.hasOwnProperty(t))}return this.seen[t]=0,t},l.escapeTest=/[&<>"']/,l.escapeReplace=/[&<>"']/g,l.replacements={"&":"&","<":"<",">":">",'"':""","'":"'"},l.escapeTestNoEncode=/[<>"']|&(?!#?\w+;)/,l.escapeReplaceNoEncode=/[<>"']|&(?!#?\w+;)/g;var p={},f=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;function g(){}function m(e){for(var t,n,i=1;i<arguments.length;i++)for(n in t=arguments[i])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}function v(e,t){var n=e.replace(/\|/g,(function(e,t,n){for(var i=!1,o=t;--o>=0&&"\\"===n[o];)i=!i;return i?"|":" |"})).split(/ \|/),i=0;if(n.length>t)n.splice(t);else for(;n.length<t;)n.push("");for(;i<n.length;i++)n[i]=n[i].trim().replace(/\\\|/g,"|");return n}function _(e,t,n){if(0===e.length)return"";for(var i=0;i<e.length;){var o=e.charAt(e.length-i-1);if(o!==t||n){if(o===t||!n)break;i++}else i++}return e.substr(0,e.length-i)}function y(e,t){if(-1===e.indexOf(t[1]))return-1;for(var n=0,i=0;i<e.length;i++)if("\\"===e[i])i++;else if(e[i]===t[0])n++;else if(e[i]===t[1]&&--n<0)return i;return-1}function b(e,t,i){if(null==e)throw new Error("marked(): input parameter is undefined or null");if("string"!=typeof e)throw new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected");if(i||"function"==typeof t){i||(i=t,t=null);var o,r,s=(t=m({},b.defaults,t||{})).highlight,u=0;try{o=n.lex(e,t)}catch(e){return i(e)}r=o.length;var c=function(e){if(e)return t.highlight=s,i(e);var n;try{n=a.parse(o,t)}catch(t){e=t}return t.highlight=s,e?i(e):i(null,n)};if(!s||s.length<3)return c();if(delete t.highlight,!r)return c();for(;u<o.length;u++)!function(e){"code"!==e.type?--r||c():s(e.text,e.lang,(function(t,n){return t?c(t):null==n||n===e.text?--r||c():(e.text=n,e.escaped=!0,void(--r||c()))}))}(o[u])}else try{return t&&(t=m({},b.defaults,t)),a.parse(n.lex(e,t),t)}catch(e){if(e.message+="\nPlease report this to https://github.com/markedjs/marked.",(t||b.defaults).silent)return"<p>An error occurred:</p><pre>"+l(e.message+"",!0)+"</pre>";throw e}}g.exec=g,b.options=b.setOptions=function(e){return m(b.defaults,e),b},b.getDefaults=function(){return{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:new r,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tables:!0,xhtml:!1}},b.defaults=b.getDefaults(),b.Parser=a,b.parser=a.parse,b.Renderer=r,b.TextRenderer=s,b.Lexer=n,b.lexer=n.lex,b.InlineLexer=o,b.inlineLexer=o.output,b.Slugger=u,b.parse=b,oU=b}).call(void 0);oU.Parser,oU.parser;var cU=oU.Renderer,dU=(oU.TextRenderer,oU.Lexer,oU.lexer,oU.InlineLexer,oU.inlineLexer,oU.parse);let hU;!function e(t,n,i){function o(s,a){if(!n[s]){if(!t[s]){if(r)return r(s,!0);var u=new Error("Cannot find module '"+s+"'");throw u.code="MODULE_NOT_FOUND",u}var l=n[s]={exports:{}};t[s][0].call(l.exports,(function(e){return o(t[s][1][e]||e)}),l,l.exports,e,t,n,i)}return n[s].exports}for(var r=!1,s=0;s<i.length;s++)o(i[s]);return o}({1:[function(e,t,n){var i=e("./toMap");t.exports={uris:i(["background","base","cite","href","longdesc","src","usemap"])}},{"./toMap":10}],2:[function(e,t,n){t.exports={allowedAttributes:{"*":["title","accesskey"],a:["href","name","target","aria-label"],iframe:["allowfullscreen","frameborder","src"],img:["src","alt","title","aria-label"]},allowedClasses:{},allowedSchemes:["http","https","mailto"],allowedTags:["a","abbr","article","b","blockquote","br","caption","code","del","details","div","em","h1","h2","h3","h4","h5","h6","hr","i","img","ins","kbd","li","main","mark","ol","p","pre","section","span","strike","strong","sub","summary","sup","table","tbody","td","th","thead","tr","u","ul"],filter:null}},{}],3:[function(e,t,n){var i=e("./toMap");t.exports={voids:i(["area","br","col","hr","img","wbr","input","base","basefont","link","meta"])}},{"./toMap":10}],4:[function(e,t,n){e("he");var i=e("assignment"),o=e("./parser"),r=e("./sanitizer"),s=e("./defaults");function a(e,t,n){var a=[],u=!0===n?t:i({},s,t),l=r(a,u);return o(e,l),a.join("")}a.defaults=s,t.exports=a,hU=a},{"./defaults":2,"./parser":7,"./sanitizer":8,assignment:6,he:9}],5:[function(e,t,n){t.exports=function(e){return"string"==typeof e?e.toLowerCase():e}},{}],6:[function(e,t,n){t.exports=function e(t){for(var n,i,o=Array.prototype.slice.call(arguments,1);o.length;)for(i in n=o.shift())n.hasOwnProperty(i)&&("[object Object]"===Object.prototype.toString.call(t[i])?t[i]=e(t[i],n[i]):t[i]=n[i]);return t}},{}],7:[function(e,t,n){var i=e("he"),o=e("./lowercase"),r=(e("./attributes"),e("./elements")),s=/^<\s*([\w:-]+)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*>/,a=/^<\s*\/\s*([\w:-]+)[^>]*>/,u=/([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g,l=/^</,c=/^<\s*\//;t.exports=function(e,t){for(var n,d=function(){var e=[];return e.lastItem=function(){return e[e.length-1]},e}(),h=e;e;)p();function p(){n=!0,function(){"\x3c!--"===e.substr(0,4)?(i=e.indexOf("--\x3e"))>=0&&(t.comment&&t.comment(e.substring(4,i)),e=e.substring(i+3),n=!1):c.test(e)?f(a,m):l.test(e)&&f(s,g);var i;!function(){if(!n)return;var i,o=e.indexOf("<");o>=0?(i=e.substring(0,o),e=e.substring(o)):(i=e,e="");t.chars&&t.chars(i)}()}();var i=e===h;h=e,i&&(e="")}function f(t,i){var o=e.match(t);o&&(e=e.substring(o[0].length),o[0].replace(t,i),n=!1)}function g(e,n,s,a){var l={},c=o(n),h=r.voids[c]||!!a;s.replace(u,(function(e,t,n,o,r){l[t]=void 0===n&&void 0===o&&void 0===r?void 0:i.decode(n||o||r||"")})),h||d.push(c),t.start&&t.start(c,l,h)}function m(e,n){var i,r=0,s=o(n);if(s)for(r=d.length-1;r>=0&&d[r]!==s;r--);if(r>=0){for(i=d.length-1;i>=r;i--)t.end&&t.end(d[i]);d.length=r}}m()}},{"./attributes":1,"./elements":3,"./lowercase":5,he:9}],8:[function(e,t,n){var i=e("he"),o=e("./lowercase"),r=e("./attributes"),s=e("./elements");t.exports=function(e,t){var n,a=t||{};return d(),{start:function(e,t,s){var c=o(e);if(n.ignoring)return void l(c);if(-1===(a.allowedTags||[]).indexOf(c))return void l(c);if(a.filter&&!a.filter({tag:c,attrs:t}))return void l(c);u("<"),u(c),Object.keys(t).forEach((function(e){var n=t[e],s=(a.allowedClasses||{})[c]||[],l=(a.allowedAttributes||{})[c]||[];l=l.concat((a.allowedAttributes||{})["*"]||[]);var d=o(e);("class"===d&&-1===l.indexOf(d)?(n=n.split(" ").filter((function(e){return s&&-1!==s.indexOf(e)})).join(" ").trim()).length:-1!==l.indexOf(d)&&(!0!==r.uris[d]||function(e){var t=e[0];if("#"===t||"/"===t)return!0;var n=e.indexOf(":");if(-1===n)return!0;var i=e.indexOf("?");if(-1!==i&&n>i)return!0;var o=e.indexOf("#");if(-1!==o&&n>o)return!0;return a.allowedSchemes.some((function(t){return 0===e.indexOf(t+":")}))}(n)))&&(u(" "),u(e),"string"==typeof n&&(u('="'),u(i.encode(n)),u('"')))})),u(s?"/>":">")},end:function(e){var t=o(e);-1!==(a.allowedTags||[]).indexOf(t)&&!1===n.ignoring?(u("</"),u(t),u(">")):c(t)},chars:function(e){!1===n.ignoring&&u(a.transformText?a.transformText(e):e)}};function u(t){e.push(t)}function l(e){s.voids[e]||(!1===n.ignoring?n={ignoring:e,depth:1}:n.ignoring===e&&n.depth++)}function c(e){n.ignoring===e&&--n.depth<=0&&d()}function d(){n={ignoring:!1,depth:0}}}},{"./attributes":1,"./elements":3,"./lowercase":5,he:9}],9:[function(e,t,n){var i={"&":"&","<":"<",">":">",'"':""","'":"'"},o={"&":"&","<":"<",">":">",""":'"',"'":"'"},r=/(&|<|>|"|')/g,s=/[&<>"']/g;function a(e){return i[e]}function u(e){return o[e]}function l(e){return null==e?"":String(e).replace(s,a)}function c(e){return null==e?"":String(e).replace(r,u)}l.options=c.options={},t.exports={encode:l,escape:l,decode:c,unescape:c,version:"1.0.0-browser"}},{}],10:[function(e,t,n){function i(e,t){return e[t]=!0,e}t.exports=function(e){return e.reduce(i,{})}},{}]},{},[4]);var pU=hU;function fU(e,t){void 0===t&&(t={});var n,i=NW(t),o=function(t){var n;try{n=lr(decodeURIComponent(t))}catch(e){}return n?(n=Na(n,(function(t){return e.uris&&e.uris[t]?Et.revive(e.uris[t]):void 0})),encodeURIComponent(JSON.stringify(n))):t},r=function(t,n){var i=e.uris&&e.uris[t];if(!i)return t;var r=Et.revive(i);return Et.parse(t).toString()===r.toString()?t:(n&&(r=ar(r)),r.query&&(r=r.with({query:o(r.query)})),r.toString(!0))},s=new Promise((function(e){return n=e})),a=new cU;a.image=function(e,t,n){var i,o=[],s=[];return e&&(i=function(e){var t=[],n=e.split("|").map((function(e){return e.trim()}));e=n[0];var i=n[1];if(i){var o=/height=(\d+)/.exec(i),r=/width=(\d+)/.exec(i),s=o?o[1]:"",a=r?r[1]:"",u=isFinite(parseInt(a)),l=isFinite(parseInt(s));u&&t.push('width="'+a+'"'),l&&t.push('height="'+s+'"')}return{href:e,dimensions:t}}(e),e=i.href,o=i.dimensions,e=r(e,!0),s.push('src="'+e+'"')),n&&s.push('alt="'+n+'"'),t&&s.push('title="'+t+'"'),o.length&&(s=s.concat(o)),"<img "+s.join(" ")+">"},a.link=function(t,n,i){return t===i&&(i=hj(i)),t=r(t,!1),n=hj(n),!(t=hj(t))||t.match(/^data:|javascript:/i)||t.match(/^command:/i)&&!e.isTrusted||t.match(/^command:(\/\/\/)?_workbench\.downloadResource/i)?i:'<a href="#" data-href="'+(t=t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'"))+'" title="'+(n||t)+'">'+i+"</a>"},a.paragraph=function(t){return"<p>"+(e.supportThemeIcons?zA(t):t)+"</p>"},t.codeBlockRenderer&&(a.code=function(e,n){var o=t.codeBlockRenderer(n,e),r=tH.nextId(),a=Promise.all([o,s]).then((function(e){var t=e[0],n=i.querySelector('div[data-code="'+r+'"]');n&&(n.innerHTML=t)})).catch((function(e){}));return t.codeBlockRenderCallback&&a.then(t.codeBlockRenderCallback),'<div class="code" data-code="'+r+'">'+fr(e)+"</div>"});var u=t.actionHandler;u&&u.disposeables.add(co(i,"click",(function(e){var t=e.target;if("A"===t.tagName||(t=t.parentElement)&&"A"===t.tagName)try{var n=t.dataset.href;n&&u.callback(n,e)}catch(e){De(e)}finally{e.preventDefault()}})));var l={sanitize:!0,renderer:a},c=[Ci.http,Ci.https,Ci.mailto,Ci.data,Ci.file,Ci.vscodeRemote,Ci.vscodeRemoteResource];e.isTrusted&&c.push(Ci.command);var d=dU(e.supportThemeIcons?e.value.replace(BA,(function(e){return"\\"+e})):e.value,l);return i.innerHTML=pU(d,{allowedSchemes:c,allowedAttributes:{a:["href","name","target","data-href"],iframe:["allowfullscreen","frameborder","src"],img:["src","title","alt","width","height"],div:["class","data-code"],span:["class"]}}),n(),i}var gU=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),mU=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},vU=function(e,t){return function(n,i){t(n,i,e)}},_U=function(e){function t(t,n,i){void 0===i&&(i=fa);var o=e.call(this)||this;return o._editor=t,o._modeService=n,o._openerService=i,o._onDidRenderCodeBlock=o._register(new nt),o.onDidRenderCodeBlock=o._onDidRenderCodeBlock.event,o}return gU(t,e),t.prototype.getOptions=function(e){var t=this;return{codeBlockRenderer:function(e,n){var i=null;if(e)i=t._modeService.getModeIdForLanguageName(e);else{var o=t._editor.getModel();o&&(i=o.getLanguageIdentifier().language)}return t._modeService.triggerMode(i||""),Promise.resolve(!0).then((function(e){var t=Yu.getPromise(i||"");return t?t.then((function(e){return HL(n,e)})):HL(n,void 0)})).then((function(e){return'<span style="font-family: '+t._editor.getOption(34).fontFamily+'">'+e+"</span>"}))},codeBlockRenderCallback:function(){return t._onDidRenderCodeBlock.fire()},actionHandler:{callback:function(e){t._openerService.open(e,{fromUserGesture:!0}).catch(De)},disposeables:e}}},t.prototype.render=function(e){var t=new Be;return{element:e?fU(e,this.getOptions(t)):document.createElement("span"),dispose:function(){return t.dispose()}}},t=mU([vU(1,lN),vU(2,Tn(pa))],t)}(He),yU=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),bU=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},wU=er,CU=function(e,t,n){this.range=e,this.color=t,this.provider=n},SU=function(e,t){this.range=e,this.marker=t},LU=function(){function e(e,t){this._markerDecorationsService=t,this._editor=e,this._result=[]}return e.prototype.setRange=function(e){this._range=e,this._result=[]},e.prototype.clearResult=function(){this._result=[]},e.prototype.computeAsync=function(e){if(!this._editor.hasModel()||!this._range)return Promise.resolve([]);var t=this._editor.getModel();return Ou.has(t)?iU(t,new bn(this._range.startLineNumber,this._range.startColumn),e):Promise.resolve([])},e.prototype.computeSync=function(){var e=this;if(!this._editor.hasModel()||!this._range)return[];var t=this._editor.getModel(),n=this._range.startLineNumber;if(n>this._editor.getModel().getLineCount())return[];var i=sF.get(this._editor),o=t.getLineMaxColumn(n),r=this._editor.getLineDecorations(n),s=!1,a=this._range;return Ei(r.map((function(r){var u=r.range.startLineNumber===n?r.range.startColumn:1,l=r.range.endLineNumber===n?r.range.endColumn:o;if(u>a.startColumn||a.endColumn>l)return null;var c=new wn(a.startLineNumber,u,a.startLineNumber,l),d=e._markerDecorationsService.getMarker(t,r);if(d)return new SU(c,d);var h=i.getColorData(r.range.getStartPosition());if(!s&&h){s=!0;var p=h.colorInfo,f=p.color,g=p.range;return new CU(g,f,h.provider)}return lj(r.options.hoverMessage)?null:{contents:r.options.hoverMessage?ji(r.options.hoverMessage):[],range:c}})))},e.prototype.onResult=function(e,t){this._result=t?e.concat(this._result.sort((function(e,t){return e instanceof CU?-1:t instanceof CU?1:0}))):this._result.concat(e)},e.prototype.getResult=function(){return this._result.slice(0)},e.prototype.getResultWithLoadingMessage=function(){return this._result.slice(0).concat([this._getLoadingMessage()])},e.prototype._getLoadingMessage=function(){return{range:this._range,contents:[(new uj).appendText(r("modesContentHover.loading","Loading..."))]}},e}(),xU={type:2,filter:{include:TR.QuickFix}},DU=function(e){function t(n,i,o,r,s,a){void 0===a&&(a=fa);var u=e.call(this,t.ID,n)||this;return u._themeService=o,u._keybindingService=r,u._modeService=s,u._openerService=a,u.renderDisposable=u._register(new ze),u._messages=[],u._lastRange=null,u._computer=new LU(u._editor,i),u._highlightDecorations=[],u._isChangingDecorations=!1,u._shouldFocus=!1,u._colorPicker=null,u._hoverOperation=new rU(u._computer,(function(e){return u._withResult(e,!0)}),null,(function(e){return u._withResult(e,!1)}),u._editor.getOption(44).delay),u._register(co(u.getDomNode(),qo.FOCUS,(function(){u._colorPicker&&no(u.getDomNode(),"colorpicker-hover")}))),u._register(co(u.getDomNode(),qo.BLUR,(function(){oo(u.getDomNode(),"colorpicker-hover")}))),u._register(n.onDidChangeConfiguration((function(e){u._hoverOperation.setHoverTime(u._editor.getOption(44).delay)}))),u._register(Yu.onDidChange((function(e){u.isVisible&&u._lastRange&&u._messages.length>0&&(u._domNode.textContent="",u._renderMessages(u._lastRange,u._messages))}))),u}return yU(t,e),t.prototype.dispose=function(){this._hoverOperation.cancel(),e.prototype.dispose.call(this)},t.prototype.onModelDecorationsChanged=function(){this._isChangingDecorations||this.isVisible&&(this._hoverOperation.cancel(),this._computer.clearResult(),this._colorPicker||this._hoverOperation.start(0))},t.prototype.startShowingAt=function(e,t,n){if(!this._lastRange||!this._lastRange.equalsRange(e)){if(this._hoverOperation.cancel(),this.isVisible)if(this._showAtPosition&&this._showAtPosition.lineNumber===e.startLineNumber){for(var i=[],o=0,r=this._messages.length;o<r;o++){var s=this._messages[o],a=s.range;a&&a.startColumn<=e.startColumn&&a.endColumn>=e.endColumn&&i.push(s)}if(i.length>0){if(function(e,t){if(!e&&t||e&&!t||e.length!==t.length)return!1;for(var n=0;n<e.length;n++){var i=e[n],o=t[n];if(i instanceof SU&&o instanceof SU)return kM.makeKey(i.marker)===kM.makeKey(o.marker);if(i instanceof CU||o instanceof CU)return!1;if(i instanceof SU||o instanceof SU)return!1;if(r=i.contents,s=o.contents,!(!r&&!s||r&&s&&(Array.isArray(r)&&Array.isArray(s)?xi(r,s,dj):cj(r)&&cj(s)&&dj(r,s))))return!1}var r,s;return!0}(i,this._messages))return;this._renderMessages(e,i)}else this.hide()}else this.hide();this._lastRange=e,this._computer.setRange(e),this._shouldFocus=n,this._hoverOperation.start(t)}},t.prototype.hide=function(){this._lastRange=null,this._hoverOperation.cancel(),e.prototype.hide.call(this),this._isChangingDecorations=!0,this._highlightDecorations=this._editor.deltaDecorations(this._highlightDecorations,[]),this._isChangingDecorations=!1,this.renderDisposable.clear(),this._colorPicker=null},t.prototype.isColorPickerVisible=function(){return!!this._colorPicker},t.prototype._withResult=function(e,t){this._messages=e,this._lastRange&&this._messages.length>0?this._renderMessages(this._lastRange,this._messages):t&&this.hide()},t.prototype._renderMessages=function(e,n){var i=this;this.renderDisposable.dispose(),this._colorPicker=null;var o=1073741824,r=n[0].range?wn.lift(n[0].range):null,s=document.createDocumentFragment(),a=!0,u=!1,l=new Be,c=[];if(n.forEach((function(e){if(e.range)if(o=Math.min(o,e.range.startColumn),r=r?wn.plusRange(r,e.range):wn.lift(e.range),e instanceof CU){u=!0;var t=e.color,n=t.red,d=t.green,h=t.blue,p=t.alpha,f=new pv(Math.round(255*n),Math.round(255*d),Math.round(255*h),p),g=new mv(f);if(!i._editor.hasModel())return;var m=i._editor.getModel(),v=new wn(e.range.startLineNumber,e.range.startColumn,e.range.endLineNumber,e.range.endColumn),_={range:e.range,color:e.color},y=new Gj(g,[],0),b=new nU(s,y,i._editor.getOption(105),i._themeService);nF(m,_,e.provider,et.None).then((function(t){if(y.colorPresentations=t||[],i._editor.hasModel()){var n=i._editor.getModel().getValueInRange(e.range);y.guessColorPresentation(g,n);var o=function(){var e,t;y.presentation.textEdit?(e=[y.presentation.textEdit],t=(t=new wn(y.presentation.textEdit.range.startLineNumber,y.presentation.textEdit.range.startColumn,y.presentation.textEdit.range.endLineNumber,y.presentation.textEdit.range.endColumn)).setEndPosition(t.endLineNumber,t.startColumn+y.presentation.textEdit.text.length)):(e=[{identifier:null,range:v,text:y.presentation.label,forceMoveMarkers:!1}],t=v.setEndPosition(v.endLineNumber,v.startColumn+y.presentation.label.length)),i._editor.pushUndoStop(),i._editor.executeEdits("colorpicker",e),y.presentation.additionalTextEdits&&(e=bU(y.presentation.additionalTextEdits),i._editor.executeEdits("colorpicker",e),i.hide()),i._editor.pushUndoStop(),v=t},r=function(t){return nF(m,{range:v,color:{red:t.rgba.r/255,green:t.rgba.g/255,blue:t.rgba.b/255,alpha:t.rgba.a}},e.provider,et.None).then((function(e){y.colorPresentations=e||[]}))},a=y.onColorFlushed((function(e){r(e).then(o)})),u=y.onDidChangeColor(r);i._colorPicker=b,i.showAt(v.getStartPosition(),v,i._shouldFocus),i.updateContents(s),i._colorPicker.layout(),i.renderDisposable.value=Fe(a,u,b,l)}}))}else e instanceof SU?(c.push(e),a=!1):e.contents.filter((function(e){return!lj(e)})).forEach((function(e){var t=wU("div.hover-row.markdown-hover"),n=Xo(t,wU("div.hover-contents")),o=l.add(new _U(i._editor,i._modeService,i._openerService));l.add(o.onDidRenderCodeBlock((function(){n.className="hover-contents code-hover-contents",i.onContentsChange()})));var r=l.add(o.render(e));n.appendChild(r.element),s.appendChild(t),a=!1}))})),c.length){c.forEach((function(e){return s.appendChild(i.renderMarkerHover(e))}));var d=1===c.length?c[0]:c.sort((function(e,t){return NM.compare(e.marker.severity,t.marker.severity)}))[0];s.appendChild(this.renderMarkerStatusbar(d))}u||a||(this.showAt(new bn(e.startLineNumber,o),r,this._shouldFocus),this.updateContents(s)),this._isChangingDecorations=!0,this._highlightDecorations=this._editor.deltaDecorations(this._highlightDecorations,r?[{range:r,options:t._DECORATION_OPTIONS}]:[]),this._isChangingDecorations=!1},t.prototype.renderMarkerHover=function(e){var t=this,n=wU("div.hover-row"),i=Xo(n,wU("div.marker.hover-contents")),o=e.marker,r=o.source,s=o.message,a=o.code,u=o.relatedInformation;this._editor.applyFontInfo(i);var l=Xo(i,wU("span"));if(l.style.whiteSpace="pre-wrap",l.innerText=s,r||a)if("string"==typeof a)(c=Xo(i,wU("span"))).style.opacity="0.6",c.style.paddingLeft="6px",c.innerText=r&&a?r+"("+a+")":r||"("+a+")";else if(a){var c,d=wU("span");if(r)Xo(d,wU("span")).innerText=r;this._codeLink=Xo(d,wU("a.code-link")),this._codeLink.setAttribute("href",a.link.toString()),this._codeLink.onclick=function(e){t._openerService.open(a.link),e.preventDefault(),e.stopPropagation()},Xo(this._codeLink,wU("span")).innerText=a.value,(c=Xo(i,d)).style.opacity="0.6",c.style.paddingLeft="6px"}if(Oi(u))for(var h=function(e,n,o,r){var s=Xo(i,wU("div"));s.style.marginTop="8px";var a=Xo(s,wU("a"));a.innerText=Ds(n)+"("+o+", "+r+"): ",a.style.cursor="pointer",a.onclick=function(e){e.stopPropagation(),e.preventDefault(),t._openerService&&t._openerService.open(n.with({fragment:o+","+r}),{fromUserGesture:!0}).catch(De)};var u=Xo(s,wU("span"));u.innerText=e,p._editor.applyFontInfo(u)},p=this,f=0,g=u;f<g.length;f++){var m=g[f];h(m.message,m.resource,m.startLineNumber,m.startColumn)}return n},t.prototype.renderMarkerStatusbar=function(e){var t=this,n=wU("div.hover-row.status-bar"),i=new Be,o=Xo(n,wU("div.actions"));e.marker.severity!==NM.Error&&e.marker.severity!==NM.Warning&&e.marker.severity!==NM.Info||i.add(this.renderAction(o,{label:r("peek problem","Peek Problem"),commandId:zj.ID,run:function(){t.hide(),Bj.get(t._editor).show(e.marker),t._editor.focus()}}));var s=Xo(o,wU("div"));s.style.opacity="0",s.style.transition="opacity 0.2s",setTimeout((function(){return s.style.opacity="1"}),200),s.textContent=r("checkingForQuickFixes","Checking for quick fixes..."),i.add(We((function(){return s.remove()})));var a=this.getCodeActions(e.marker);return i.add(We((function(){return a.cancel()}))),a.then((function(e){if(s.style.transition="",s.style.opacity="1",!e.validActions.length)return e.dispose(),void(s.textContent=r("noQuickFixes","No quick fixes available"));s.remove();var n=!1;i.add(We((function(){n||e.dispose()}))),i.add(t.renderAction(o,{label:r("quick fixes","Quick Fix..."),commandId:IA.Id,run:function(i){n=!0;var o=NA.get(t._editor),r=Oo(i);o.showCodeActions(xU,e,{x:r.left+6,y:r.top+r.height+6})}}))})),this.renderDisposable.value=i,n},t.prototype.getCodeActions=function(e){var t=this;return hi((function(n){return HR(t._editor.getModel(),new wn(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),xU,n)}))},t.prototype.renderAction=function(e,t){var n=Xo(e,wU("div.action-container")),i=Xo(n,wU("a.action"));t.iconClass&&Xo(i,wU("span.icon."+t.iconClass));var o=Xo(i,wU("span"));o.textContent=t.label;var r=this._keybindingService.lookupKeybinding(t.commandId);return r&&(o.title=t.label+" ("+r.getLabel()+")"),uo(n,qo.CLICK,(function(e){e.stopPropagation(),e.preventDefault(),t.run(n)}))},t.ID="editor.contrib.modesContentHoverWidget",t._DECORATION_OPTIONS=kv.register({className:"hoverHighlight"}),t}(uU);yg((function(e,t){var n=e.getColor(P_);n&&t.addRule(".monaco-editor-hover .hover-contents a.code-link span:hover { color: "+n+"; }")}));var NU=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),kU=function(){function e(e){this._editor=e,this._lineNumber=-1,this._result=[]}return e.prototype.setLineNumber=function(e){this._lineNumber=e,this._result=[]},e.prototype.clearResult=function(){this._result=[]},e.prototype.computeSync=function(){var e=function(e){return{value:e}},t=this._editor.getLineDecorations(this._lineNumber),n=[];if(!t)return n;for(var i=0,o=t;i<o.length;i++){var r=o[i];if(r.options.glyphMarginClassName){var s=r.options.glyphMarginHoverMessage;s&&!lj(s)&&n.push.apply(n,ji(s).map(e))}}return n},e.prototype.onResult=function(e,t){this._result=this._result.concat(e)},e.prototype.getResult=function(){return this._result},e.prototype.getResultWithLoadingMessage=function(){return this.getResult()},e}(),EU=function(e){function t(n,i,o){void 0===o&&(o=fa);var r=e.call(this,t.ID,n)||this;return r._renderDisposeables=r._register(new Be),r._messages=[],r._lastLineNumber=-1,r._markdownRenderer=r._register(new _U(r._editor,i,o)),r._computer=new kU(r._editor),r._hoverOperation=new rU(r._computer,(function(e){return r._withResult(e)}),void 0,(function(e){return r._withResult(e)}),300),r}return NU(t,e),t.prototype.dispose=function(){this._hoverOperation.cancel(),e.prototype.dispose.call(this)},t.prototype.onModelDecorationsChanged=function(){this.isVisible&&(this._hoverOperation.cancel(),this._computer.clearResult(),this._hoverOperation.start(0))},t.prototype.startShowingAt=function(e){this._lastLineNumber!==e&&(this._hoverOperation.cancel(),this.hide(),this._lastLineNumber=e,this._computer.setLineNumber(e),this._hoverOperation.start(0))},t.prototype.hide=function(){this._lastLineNumber=-1,this._hoverOperation.cancel(),e.prototype.hide.call(this)},t.prototype._withResult=function(e){this._messages=e,this._messages.length>0?this._renderMessages(this._lastLineNumber,this._messages):this.hide()},t.prototype._renderMessages=function(e,t){this._renderDisposeables.clear();for(var n=document.createDocumentFragment(),i=0,o=t;i<o.length;i++){var r=o[i],s=this._markdownRenderer.render(r.value);this._renderDisposeables.add(s),n.appendChild(er("div.hover-row",void 0,s.element))}this.updateContents(n),this.showAt(e)},t.ID="editor.contrib.modesGlyphHoverWidget",t}(lU),IU=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),OU=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},MU=function(e,t){return function(n,i){t(n,i,e)}},TU=function(){function e(e,t,n,i,o,r){var s=this;this._editor=e,this._openerService=t,this._modeService=n,this._markerDecorationsService=i,this._keybindingService=o,this._themeService=r,this._toUnhook=new Be,this._contentWidget=new ze,this._glyphWidget=new ze,this._isMouseDown=!1,this._hoverClicked=!1,this._hookEvents(),this._didChangeConfigurationHandler=this._editor.onDidChangeConfiguration((function(e){e.hasChanged(44)&&(s._hideWidgets(),s._unhookEvents(),s._hookEvents())}))}return Object.defineProperty(e.prototype,"contentWidget",{get:function(){return this._contentWidget.value||this._createHoverWidgets(),this._contentWidget.value},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"glyphWidget",{get:function(){return this._glyphWidget.value||this._createHoverWidgets(),this._glyphWidget.value},enumerable:!0,configurable:!0}),e.get=function(t){return t.getContribution(e.ID)},e.prototype._hookEvents=function(){var e=this,t=function(){return e._hideWidgets()},n=this._editor.getOption(44);this._isHoverEnabled=n.enabled,this._isHoverSticky=n.sticky,this._isHoverEnabled?(this._toUnhook.add(this._editor.onMouseDown((function(t){return e._onEditorMouseDown(t)}))),this._toUnhook.add(this._editor.onMouseUp((function(t){return e._onEditorMouseUp(t)}))),this._toUnhook.add(this._editor.onMouseMove((function(t){return e._onEditorMouseMove(t)}))),this._toUnhook.add(this._editor.onKeyDown((function(t){return e._onKeyDown(t)}))),this._toUnhook.add(this._editor.onDidChangeModelDecorations((function(){return e._onModelDecorationsChanged()})))):this._toUnhook.add(this._editor.onMouseMove(t)),this._toUnhook.add(this._editor.onMouseLeave(t)),this._toUnhook.add(this._editor.onDidChangeModel(t)),this._toUnhook.add(this._editor.onDidScrollChange((function(t){return e._onEditorScrollChanged(t)})))},e.prototype._unhookEvents=function(){this._toUnhook.clear()},e.prototype._onModelDecorationsChanged=function(){this.contentWidget.onModelDecorationsChanged(),this.glyphWidget.onModelDecorationsChanged()},e.prototype._onEditorScrollChanged=function(e){(e.scrollTopChanged||e.scrollLeftChanged)&&this._hideWidgets()},e.prototype._onEditorMouseDown=function(e){this._isMouseDown=!0;var t=e.target.type;9!==t||e.target.detail!==DU.ID?12===t&&e.target.detail===EU.ID||(12!==t&&e.target.detail!==EU.ID&&(this._hoverClicked=!1),this._hideWidgets()):this._hoverClicked=!0},e.prototype._onEditorMouseUp=function(e){this._isMouseDown=!1},e.prototype._onEditorMouseMove=function(e){var t=e.target.type;if(!(this._isMouseDown&&this._hoverClicked&&this.contentWidget.isColorPickerVisible()||this._isHoverSticky&&9===t&&e.target.detail===DU.ID||this._isHoverSticky&&12===t&&e.target.detail===EU.ID)){if(7===t){var n=this._editor.getOption(34).typicalHalfwidthCharacterWidth/2,i=e.target.detail;i&&!i.isAfterLines&&"number"==typeof i.horizontalDistanceToText&&i.horizontalDistanceToText<n&&(t=6)}6===t?(this.glyphWidget.hide(),this._isHoverEnabled&&e.target.range&&this.contentWidget.startShowingAt(e.target.range,0,!1)):2===t?(this.contentWidget.hide(),this._isHoverEnabled&&e.target.position&&this.glyphWidget.startShowingAt(e.target.position.lineNumber)):this._hideWidgets()}},e.prototype._onKeyDown=function(e){5!==e.keyCode&&6!==e.keyCode&&57!==e.keyCode&&4!==e.keyCode&&this._hideWidgets()},e.prototype._hideWidgets=function(){!this._glyphWidget.value||!this._contentWidget.value||this._isMouseDown&&this._hoverClicked&&this._contentWidget.value.isColorPickerVisible()||(this._glyphWidget.value.hide(),this._contentWidget.value.hide())},e.prototype._createHoverWidgets=function(){this._contentWidget.value=new DU(this._editor,this._markerDecorationsService,this._themeService,this._keybindingService,this._modeService,this._openerService),this._glyphWidget.value=new EU(this._editor,this._modeService,this._openerService)},e.prototype.showContentHover=function(e,t,n){this.contentWidget.startShowingAt(e,t,n)},e.prototype.dispose=function(){this._unhookEvents(),this._toUnhook.dispose(),this._didChangeConfigurationHandler.dispose(),this._glyphWidget.dispose(),this._contentWidget.dispose()},e.ID="editor.contrib.hover",e=OU([MU(1,pa),MU(2,lN),MU(3,jM),MU(4,XD),MU(5,fg)],e)}(),PU=function(e){function t(){return e.call(this,{id:"editor.action.showHover",label:r({key:"showHover",comment:["Label for action that will trigger the showing of a hover in the editor.","This allows for users to show the hover without using the mouse."]},"Show Hover"),alias:"Show Hover",precondition:void 0,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2087),weight:100}})||this}return IU(t,e),t.prototype.run=function(e,t){if(t.hasModel()){var n=TU.get(t);if(n){var i=t.getPosition(),o=new wn(i.lineNumber,i.column,i.lineNumber,i.column),r=2===t.getOption(2);n.showContentHover(o,1,r)}}},t}(kf),RU=function(e){function t(){return e.call(this,{id:"editor.action.showDefinitionPreviewHover",label:r({key:"showDefinitionPreviewHover",comment:["Label for action that will trigger the showing of definition preview hover in the editor.","This allows for users to show the definition preview hover without using the mouse."]},"Show Definition Preview Hover"),alias:"Show Definition Preview Hover",precondition:void 0})||this}return IU(t,e),t.prototype.run=function(e,t){var n=TU.get(t);if(n){var i=t.getPosition();if(i){var o=new wn(i.lineNumber,i.column,i.lineNumber,i.column),r=Cj.get(t).startFindDefinitionFromCursor(i);r?r.then((function(){n.showContentHover(o,1,!0)})):n.showContentHover(o,1,!0)}}},t}(kf);Pf(TU.ID,TU),Tf(PU),Tf(RU),yg((function(e,t){var n=e.getColor(Ty);n&&t.addRule(".monaco-editor .hoverHighlight { background-color: "+n+"; }");var i=e.getColor(Py);i&&t.addRule(".monaco-editor .monaco-editor-hover { background-color: "+i+"; }");var o=e.getColor(Ay);o&&(t.addRule(".monaco-editor .monaco-editor-hover { border: 1px solid "+o+"; }"),t.addRule(".monaco-editor .monaco-editor-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid "+o.transparent(.5)+"; }"),t.addRule(".monaco-editor .monaco-editor-hover hr { border-top: 1px solid "+o.transparent(.5)+"; }"),t.addRule(".monaco-editor .monaco-editor-hover hr { border-bottom: 0px solid "+o.transparent(.5)+"; }"));var r=e.getColor(P_);r&&t.addRule(".monaco-editor .monaco-editor-hover a { color: "+r+"; }");var s=e.getColor(Ry);s&&t.addRule(".monaco-editor .monaco-editor-hover { color: "+s+"; }");var a=e.getColor(Fy);a&&t.addRule(".monaco-editor .monaco-editor-hover .hover-row .actions { background-color: "+a+"; }");var u=e.getColor(R_);u&&t.addRule(".monaco-editor .monaco-editor-hover code { background-color: "+u+"; }")}));var AU=function(){function e(e,t,n){this._editRange=e,this._originalSelection=t,this._text=n}return e.prototype.getEditOperations=function(e,t){t.addTrackedEditOperation(this._editRange,this._text)},e.prototype.computeCursorState=function(e,t){var n=t.getInverseEditOperations()[0].range;return this._originalSelection.isEmpty()?new Sn(n.endLineNumber,Math.min(this._originalSelection.positionColumn,n.endColumn),n.endLineNumber,Math.min(this._originalSelection.positionColumn,n.endColumn)):new Sn(n.endLineNumber,n.endColumn-this._text.length,n.endLineNumber,n.endColumn)},e}(),FU=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),WU=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},VU=function(e,t){return function(n,i){t(n,i,e)}},BU=function(){function e(e,t){this.decorationIds=[],this.editor=e,this.editorWorkerService=t}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.dispose=function(){},e.prototype.run=function(t,n){var i=this;this.currentRequest&&this.currentRequest.cancel();var o=this.editor.getSelection(),r=this.editor.getModel();if(r&&o){var s=o;if(s.startLineNumber===s.endLineNumber){var a=new oD(this.editor,5),u=r.uri;return this.editorWorkerService.canNavigateValueSet(u)?(this.currentRequest=hi((function(e){return i.editorWorkerService.navigateValueSet(u,s,n)})),this.currentRequest.then((function(n){if(n&&n.range&&n.value&&a.validate(i.editor)){var o=wn.lift(n.range),r=n.range,u=n.value.length-(s.endColumn-s.startColumn);r={startLineNumber:r.startLineNumber,startColumn:r.startColumn,endLineNumber:r.endLineNumber,endColumn:r.startColumn+n.value.length},u>1&&(s=new Sn(s.startLineNumber,s.startColumn,s.endLineNumber,s.endColumn+u-1));var l=new AU(o,s,n.value);i.editor.pushUndoStop(),i.editor.executeCommand(t,l),i.editor.pushUndoStop(),i.decorationIds=i.editor.deltaDecorations(i.decorationIds,[{range:r,options:e.DECORATION}]),i.decorationRemover&&i.decorationRemover.cancel(),i.decorationRemover=gi(350),i.decorationRemover.then((function(){return i.decorationIds=i.editor.deltaDecorations(i.decorationIds,[])})).catch(De)}})).catch(De)):Promise.resolve(void 0)}}},e.ID="editor.contrib.inPlaceReplaceController",e.DECORATION=kv.register({className:"valueSetReplacement"}),e=WU([VU(1,el)],e)}(),HU=function(e){function t(){return e.call(this,{id:"editor.action.inPlaceReplace.up",label:r("InPlaceReplaceAction.previous.label","Replace with Previous Value"),alias:"Replace with Previous Value",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:3154,weight:100}})||this}return FU(t,e),t.prototype.run=function(e,t){var n=BU.get(t);return n?n.run(this.id,!0):Promise.resolve(void 0)},t}(kf),zU=function(e){function t(){return e.call(this,{id:"editor.action.inPlaceReplace.down",label:r("InPlaceReplaceAction.next.label","Replace with Next Value"),alias:"Replace with Next Value",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:3156,weight:100}})||this}return FU(t,e),t.prototype.run=function(e,t){var n=BU.get(t);return n?n.run(this.id,!1):Promise.resolve(void 0)},t}(kf);Pf(BU.ID,BU),Tf(HU),Tf(zU),yg((function(e,t){var n=e.getColor(Jb);n&&t.addRule(".monaco-editor.vs .valueSetReplacement { outline: solid 2px "+n+"; }")}));var jU=function(){function e(e,t){this._selection=e,this._cursors=t,this._selectionId=null}return e.prototype.getEditOperations=function(e,t){for(var n=function(e,t){t.sort((function(e,t){return e.lineNumber===t.lineNumber?e.column-t.column:e.lineNumber-t.lineNumber}));for(var n=t.length-2;n>=0;n--)t[n].lineNumber===t[n+1].lineNumber&&t.splice(n,1);for(var i=[],o=0,r=0,s=t.length,a=1,u=e.getLineCount();a<=u;a++){var l=e.getLineContent(a),c=l.length+1,d=0;if(!(r<s&&t[r].lineNumber===a&&(d=t[r].column,r++,d===c))&&0!==l.length){var h=Sr(l),p=0;if(-1===h)p=1;else{if(h===l.length-1)continue;p=h+2}p=Math.max(d,p),i[o++]=bh.delete(new wn(a,p,a,c))}}return i}(e,this._cursors),i=0,o=n.length;i<o;i++){var r=n[i];t.addEditOperation(r.range,r.text)}this._selectionId=t.trackSelection(this._selection)},e.prototype.computeCursorState=function(e,t){return t.getTrackedSelection(this._selectionId)},e}();var UU=function(){function e(e,t){this._selection=e,this._isCopyingDown=t,this._selectionDirection=0,this._selectionId=null,this._startLineNumberDelta=0,this._endLineNumberDelta=0}return e.prototype.getEditOperations=function(e,t){var n=this._selection;this._startLineNumberDelta=0,this._endLineNumberDelta=0,n.startLineNumber<n.endLineNumber&&1===n.endColumn&&(this._endLineNumberDelta=1,n=n.setEndPosition(n.endLineNumber-1,e.getLineMaxColumn(n.endLineNumber-1)));for(var i=[],o=n.startLineNumber;o<=n.endLineNumber;o++)i.push(e.getLineContent(o));var r=i.join("\n");""===r&&this._isCopyingDown&&(this._startLineNumberDelta++,this._endLineNumberDelta++),this._isCopyingDown?t.addEditOperation(new wn(n.startLineNumber,1,n.startLineNumber,1),r+"\n"):t.addEditOperation(new wn(n.endLineNumber,e.getLineMaxColumn(n.endLineNumber),n.endLineNumber,e.getLineMaxColumn(n.endLineNumber)),"\n"+r),this._selectionId=t.trackSelection(n),this._selectionDirection=this._selection.getDirection()},e.prototype.computeCursorState=function(e,t){var n=t.getTrackedSelection(this._selectionId);if(0!==this._startLineNumberDelta||0!==this._endLineNumberDelta){var i=n.startLineNumber,o=n.startColumn,r=n.endLineNumber,s=n.endColumn;0!==this._startLineNumberDelta&&(i+=this._startLineNumberDelta,o=1),0!==this._endLineNumberDelta&&(r+=this._endLineNumberDelta,s=1),n=Sn.createWithDirection(i,o,r,s,this._selectionDirection)}return n},e}();function KU(e,t){for(var n=0,i=0;i<e.length;i++)"\t"===e.charAt(i)?n+=t:n++;return n}function qU(e,t,n){e=e<0?0:e;var i="";if(!n){var o=Math.floor(e/t);e%=t;for(var r=0;r<o;r++)i+="\t"}for(r=0;r<e;r++)i+=" ";return i}var GU=function(){function e(e,t,n){this._selection=e,this._isMovingDown=t,this._autoIndent=n,this._selectionId=null,this._moveEndLineSelectionShrink=!1}return e.prototype.getEditOperations=function(e,t){var n=e.getLineCount();if(this._isMovingDown&&this._selection.endLineNumber===n)this._selectionId=t.trackSelection(this._selection);else if(this._isMovingDown||1!==this._selection.startLineNumber){this._moveEndPositionDown=!1;var i=this._selection;i.startLineNumber<i.endLineNumber&&1===i.endColumn&&(this._moveEndPositionDown=!0,i=i.setEndPosition(i.endLineNumber-1,e.getLineMaxColumn(i.endLineNumber-1)));var o=e.getOptions(),r=o.tabSize,s=o.indentSize,a=o.insertSpaces,u=this.buildIndentConverter(r,s,a),l={getLineTokens:function(t){return e.getLineTokens(t)},getLanguageIdentifier:function(){return e.getLanguageIdentifier()},getLanguageIdAtPosition:function(t,n){return e.getLanguageIdAtPosition(t,n)},getLineContent:null};if(i.startLineNumber===i.endLineNumber&&1===e.getLineMaxColumn(i.startLineNumber)){var c=i.startLineNumber,d=this._isMovingDown?c+1:c-1;1===e.getLineMaxColumn(d)?t.addEditOperation(new wn(1,1,1,1),null):(t.addEditOperation(new wn(c,1,c,1),e.getLineContent(d)),t.addEditOperation(new wn(d,1,d,e.getLineMaxColumn(d)),null)),i=new Sn(d,1,d,1)}else{var h,p=void 0;if(this._isMovingDown){h=i.endLineNumber+1,p=e.getLineContent(h),t.addEditOperation(new wn(h-1,e.getLineMaxColumn(h-1),h,e.getLineMaxColumn(h)),null);var f=p;if(this.shouldAutoIndent(e,i)){var g=this.matchEnterRule(e,u,r,h,i.startLineNumber-1);if(null!==g){var m=qU(S=g+KU(_=Cr(e.getLineContent(h)),r),r,a);f=m+this.trimLeft(p)}else{l.getLineContent=function(t){return t===i.startLineNumber?e.getLineContent(h):e.getLineContent(t)};var v=Ol.getGoodIndentForLine(this._autoIndent,l,e.getLanguageIdAtPosition(h,1),i.startLineNumber,u);if(null!==v){var _=Cr(e.getLineContent(h));if((S=KU(v,r))!==(L=KU(_,r))){m=qU(S,r,a);f=m+this.trimLeft(p)}}}if(t.addEditOperation(new wn(i.startLineNumber,1,i.startLineNumber,1),f+"\n"),null!==(w=this.matchEnterRule(e,u,r,i.startLineNumber,i.startLineNumber,f)))0!==w&&this.getIndentEditsOfMovingBlock(e,t,i,r,a,w);else{l.getLineContent=function(t){return t===i.startLineNumber?f:t>=i.startLineNumber+1&&t<=i.endLineNumber+1?e.getLineContent(t-1):e.getLineContent(t)};var y=Ol.getGoodIndentForLine(this._autoIndent,l,e.getLanguageIdAtPosition(h,1),i.startLineNumber+1,u);if(null!==y){_=Cr(e.getLineContent(i.startLineNumber));if((S=KU(y,r))!==(L=KU(_,r))){var b=S-L;this.getIndentEditsOfMovingBlock(e,t,i,r,a,b)}}}}else t.addEditOperation(new wn(i.startLineNumber,1,i.startLineNumber,1),f+"\n")}else{var w;if(h=i.startLineNumber-1,p=e.getLineContent(h),t.addEditOperation(new wn(h,1,h+1,1),null),t.addEditOperation(new wn(i.endLineNumber,e.getLineMaxColumn(i.endLineNumber),i.endLineNumber,e.getLineMaxColumn(i.endLineNumber)),"\n"+p),this.shouldAutoIndent(e,i))if(l.getLineContent=function(t){return t===h?e.getLineContent(i.startLineNumber):e.getLineContent(t)},null!==(w=this.matchEnterRule(e,u,r,i.startLineNumber,i.startLineNumber-2)))0!==w&&this.getIndentEditsOfMovingBlock(e,t,i,r,a,w);else{var C=Ol.getGoodIndentForLine(this._autoIndent,l,e.getLanguageIdAtPosition(i.startLineNumber,1),h,u);if(null!==C){var S,L,x=Cr(e.getLineContent(i.startLineNumber));if((S=KU(C,r))!==(L=KU(x,r))){b=S-L;this.getIndentEditsOfMovingBlock(e,t,i,r,a,b)}}}}}this._selectionId=t.trackSelection(i)}else this._selectionId=t.trackSelection(this._selection)},e.prototype.buildIndentConverter=function(e,t,n){return{shiftIndent:function(i){return nC.shiftIndent(i,i.length+1,e,t,n)},unshiftIndent:function(i){return nC.unshiftIndent(i,i.length+1,e,t,n)}}},e.prototype.matchEnterRule=function(e,t,n,i,o,r){for(var s=o;s>=1;){if(Sr(s===o&&void 0!==r?r:e.getLineContent(s))>=0)break;s--}if(s<1||i>e.getLineCount())return null;var a=e.getLineMaxColumn(s),u=Ol.getEnterAction(this._autoIndent,e,new wn(s,a,s,a));if(u){var l=u.indentation;u.indentAction===al.None||u.indentAction===al.Indent?l=u.indentation+u.appendText:u.indentAction===al.IndentOutdent?l=u.indentation:u.indentAction===al.Outdent&&(l=t.unshiftIndent(u.indentation)+u.appendText);var c=e.getLineContent(i);if(this.trimLeft(c).indexOf(this.trimLeft(l))>=0){var d=Cr(e.getLineContent(i)),h=Cr(l),p=Ol.getIndentMetadata(e,i);return null!==p&&2&p&&(h=t.unshiftIndent(h)),KU(h,n)-KU(d,n)}}return null},e.prototype.trimLeft=function(e){return e.replace(/^\s+/,"")},e.prototype.shouldAutoIndent=function(e,t){if(this._autoIndent<4)return!1;if(!e.isCheapToTokenize(t.startLineNumber))return!1;var n=e.getLanguageIdAtPosition(t.startLineNumber,1);return n===e.getLanguageIdAtPosition(t.endLineNumber,1)&&null!==Ol.getIndentRulesSupport(n)},e.prototype.getIndentEditsOfMovingBlock=function(e,t,n,i,o,r){for(var s=n.startLineNumber;s<=n.endLineNumber;s++){var a=Cr(e.getLineContent(s)),u=qU(KU(a,i)+r,i,o);u!==a&&(t.addEditOperation(new wn(s,1,s,a.length+1),u),s===n.endLineNumber&&n.endColumn<=a.length+1&&""===u&&(this._moveEndLineSelectionShrink=!0))}},e.prototype.computeCursorState=function(e,t){var n=t.getTrackedSelection(this._selectionId);return this._moveEndPositionDown&&(n=n.setEndPosition(n.endLineNumber+1,1)),this._moveEndLineSelectionShrink&&n.startLineNumber<n.endLineNumber&&(n=n.setEndPosition(n.endLineNumber,2)),n},e}(),ZU=function(){function e(e,t){this.selection=e,this.descending=t,this.selectionId=null}return e.getCollator=function(){return e._COLLATOR||(e._COLLATOR=new Intl.Collator),e._COLLATOR},e.prototype.getEditOperations=function(e,t){var n=function(e,t,n){var i=YU(e,t,n);if(!i)return null;return bh.replace(new wn(i.startLineNumber,1,i.endLineNumber,e.getLineMaxColumn(i.endLineNumber)),i.after.join("\n"))}(e,this.selection,this.descending);n&&t.addEditOperation(n.range,n.text),this.selectionId=t.trackSelection(this.selection)},e.prototype.computeCursorState=function(e,t){return t.getTrackedSelection(this.selectionId)},e.canRun=function(e,t,n){if(null===e)return!1;var i=YU(e,t,n);if(!i)return!1;for(var o=0,r=i.before.length;o<r;o++)if(i.before[o]!==i.after[o])return!0;return!1},e._COLLATOR=null,e}();function YU(e,t,n){var i=t.startLineNumber,o=t.endLineNumber;if(1===t.endColumn&&o--,i>=o)return null;for(var r=[],s=i;s<=o;s++)r.push(e.getLineContent(s));var a=r.slice(0);return a.sort(ZU.getCollator().compare),!0===n&&(a=a.reverse()),{startLineNumber:i,endLineNumber:o,before:r,after:a}}var XU=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),$U=function(e){function t(t,n){var i=e.call(this,n)||this;return i.down=t,i}return XU(t,e),t.prototype.run=function(e,t){for(var n=[],i=0,o=t.getSelections()||[];i<o.length;i++){var r=o[i];n.push(new UU(r,this.down))}t.pushUndoStop(),t.executeCommands(this.id,n),t.pushUndoStop()},t}(kf),QU=function(e){function t(){return e.call(this,!1,{id:"editor.action.copyLinesUpAction",label:r("lines.copyUp","Copy Line Up"),alias:"Copy Line Up",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:1552,linux:{primary:3600},weight:100},menuOpts:{menuId:25,group:"2_line",title:r({key:"miCopyLinesUp",comment:["&& denotes a mnemonic"]},"&&Copy Line Up"),order:1}})||this}return XU(t,e),t}($U),JU=function(e){function t(){return e.call(this,!0,{id:"editor.action.copyLinesDownAction",label:r("lines.copyDown","Copy Line Down"),alias:"Copy Line Down",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:1554,linux:{primary:3602},weight:100},menuOpts:{menuId:25,group:"2_line",title:r({key:"miCopyLinesDown",comment:["&& denotes a mnemonic"]},"Co&&py Line Down"),order:2}})||this}return XU(t,e),t}($U),eK=function(e){function t(){return e.call(this,{id:"editor.action.duplicateSelection",label:r("duplicateSelection","Duplicate Selection"),alias:"Duplicate Selection",precondition:eC.writable,menuOpts:{menuId:25,group:"2_line",title:r({key:"miDuplicateSelection",comment:["&& denotes a mnemonic"]},"&&Duplicate Selection"),order:5}})||this}return XU(t,e),t.prototype.run=function(e,t,n){if(t.hasModel()){for(var i=[],o=t.getSelections(),r=t.getModel(),s=0,a=o;s<a.length;s++){var u=a[s];if(u.isEmpty())i.push(new UU(u,!0));else{var l=new Sn(u.endLineNumber,u.endColumn,u.endLineNumber,u.endColumn);i.push(new Ww(l,r.getValueInRange(u)))}}t.pushUndoStop(),t.executeCommands(this.id,i),t.pushUndoStop()}},t}(kf),tK=function(e){function t(t,n){var i=e.call(this,n)||this;return i.down=t,i}return XU(t,e),t.prototype.run=function(e,t){for(var n=[],i=t.getSelections()||[],o=t.getOption(8),r=0,s=i;r<s.length;r++){var a=s[r];n.push(new GU(a,this.down,o))}t.pushUndoStop(),t.executeCommands(this.id,n),t.pushUndoStop()},t}(kf),nK=function(e){function t(){return e.call(this,!1,{id:"editor.action.moveLinesUpAction",label:r("lines.moveUp","Move Line Up"),alias:"Move Line Up",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:528,linux:{primary:528},weight:100},menuOpts:{menuId:25,group:"2_line",title:r({key:"miMoveLinesUp",comment:["&& denotes a mnemonic"]},"Mo&&ve Line Up"),order:3}})||this}return XU(t,e),t}(tK),iK=function(e){function t(){return e.call(this,!0,{id:"editor.action.moveLinesDownAction",label:r("lines.moveDown","Move Line Down"),alias:"Move Line Down",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:530,linux:{primary:530},weight:100},menuOpts:{menuId:25,group:"2_line",title:r({key:"miMoveLinesDown",comment:["&& denotes a mnemonic"]},"Move &&Line Down"),order:4}})||this}return XU(t,e),t}(tK),oK=function(e){function t(t,n){var i=e.call(this,n)||this;return i.descending=t,i}return XU(t,e),t.prototype.run=function(e,t){for(var n=t.getSelections()||[],i=0,o=n;i<o.length;i++){var r=o[i];if(!ZU.canRun(t.getModel(),r,this.descending))return}for(var s=[],a=0,u=n.length;a<u;a++)s[a]=new ZU(n[a],this.descending);t.pushUndoStop(),t.executeCommands(this.id,s),t.pushUndoStop()},t}(kf),rK=function(e){function t(){return e.call(this,!1,{id:"editor.action.sortLinesAscending",label:r("lines.sortAscending","Sort Lines Ascending"),alias:"Sort Lines Ascending",precondition:eC.writable})||this}return XU(t,e),t}(oK),sK=function(e){function t(){return e.call(this,!0,{id:"editor.action.sortLinesDescending",label:r("lines.sortDescending","Sort Lines Descending"),alias:"Sort Lines Descending",precondition:eC.writable})||this}return XU(t,e),t}(oK),aK=function(e){function t(){return e.call(this,{id:t.ID,label:r("lines.trimTrailingWhitespace","Trim Trailing Whitespace"),alias:"Trim Trailing Whitespace",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:gt(2089,2102),weight:100}})||this}return XU(t,e),t.prototype.run=function(e,t,n){var i=[];"auto-save"===n.reason&&(i=(t.getSelections()||[]).map((function(e){return new bn(e.positionLineNumber,e.positionColumn)})));var o=t.getSelection();if(null!==o){var r=new jU(o,i);t.pushUndoStop(),t.executeCommands(this.id,[r]),t.pushUndoStop()}},t.ID="editor.action.trimTrailingWhitespace",t}(kf),uK=function(e){function t(){return e.call(this,{id:"editor.action.deleteLines",label:r("lines.delete","Delete Line"),alias:"Delete Line",precondition:eC.writable,kbOpts:{kbExpr:eC.textInputFocus,primary:3113,weight:100}})||this}return XU(t,e),t.prototype.run=function(e,t){if(t.hasModel()){var n=this._getLinesToRemove(t),i=t.getModel();if(1!==i.getLineCount()||1!==i.getLineMaxColumn(1)){for(var o=0,r=[],s=[],a=0,u=n.length;a<u;a++){var l=n[a],c=l.startLineNumber,d=l.endLineNumber,h=1,p=i.getLineMaxColumn(d);d<i.getLineCount()?(d+=1,p=1):c>1&&(c-=1,h=i.getLineMaxColumn(c)),r.push(bh.replace(new Sn(c,h,d,p),"")),s.push(new Sn(c-o,l.positionColumn,c-o,l.positionColumn)),o+=l.endLineNumber-l.startLineNumber+1}t.pushUndoStop(),t.executeEdits(this.id,r,s),t.pushUndoStop()}}},t.prototype._getLinesToRemove=function(e){var t=e.getSelections().map((function(e){var t=e.endLineNumber;return e.startLineNumber<e.endLineNumber&&1===e.endColumn&&(t-=1),{startLineNumber:e.startLineNumber,selectionStartColumn:e.selectionStartColumn,endLineNumber:t,positionColumn:e.positionColumn}}));t.sort((function(e,t){return e.startLineNumber===t.startLineNumber?e.endLineNumber-t.endLineNumber:e.startLineNumber-t.startLineNumber}));for(var n=[],i=t[0],o=1;o<t.length;o++)i.endLineNumber+1>=t[o].startLineNumber?i.endLineNumber=t[o].endLineNumber:(n.push(i),i=t[o]);return n.push(i),n},t}(kf),lK=function(e){function t(){return e.call(this,{id:"editor.action.indentLines",label:r("lines.indent","Indent Line"),alias:"Indent Line",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:2137,weight:100}})||this}return XU(t,e),t.prototype.run=function(e,t){var n=t._getCursors();n&&(t.pushUndoStop(),t.executeCommands(this.id,rC.indent(n.context.config,t.getModel(),t.getSelections())),t.pushUndoStop())},t}(kf),cK=function(e){function t(){return e.call(this,{id:"editor.action.outdentLines",label:r("lines.outdent","Outdent Line"),alias:"Outdent Line",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:2135,weight:100}})||this}return XU(t,e),t.prototype.run=function(e,t){hC.Outdent.runEditorCommand(e,t,null)},t}(kf),dK=function(e){function t(){return e.call(this,{id:"editor.action.insertLineBefore",label:r("lines.insertBefore","Insert Line Above"),alias:"Insert Line Above",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:3075,weight:100}})||this}return XU(t,e),t.prototype.run=function(e,t){var n=t._getCursors();n&&(t.pushUndoStop(),t.executeCommands(this.id,rC.lineInsertBefore(n.context.config,t.getModel(),t.getSelections())))},t}(kf),hK=function(e){function t(){return e.call(this,{id:"editor.action.insertLineAfter",label:r("lines.insertAfter","Insert Line Below"),alias:"Insert Line Below",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:2051,weight:100}})||this}return XU(t,e),t.prototype.run=function(e,t){var n=t._getCursors();n&&(t.pushUndoStop(),t.executeCommands(this.id,rC.lineInsertAfter(n.context.config,t.getModel(),t.getSelections())))},t}(kf),pK=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return XU(t,e),t.prototype.run=function(e,t){if(t.hasModel()){for(var n=t.getSelection(),i=this._getRangesToDelete(t),o=[],r=0,s=i.length-1;r<s;r++){var a=i[r],u=i[r+1];null===wn.intersectRanges(a,u)?o.push(a):i[r+1]=wn.plusRange(a,u)}o.push(i[i.length-1]);var l=this._getEndCursorState(n,o),c=o.map((function(e){return bh.replace(e,"")}));t.pushUndoStop(),t.executeEdits(this.id,c,l),t.pushUndoStop()}},t}(kf),fK=function(e){function t(){return e.call(this,{id:"deleteAllLeft",label:r("lines.deleteAllLeft","Delete All Left"),alias:"Delete All Left",precondition:eC.writable,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:2049},weight:100}})||this}return XU(t,e),t.prototype._getEndCursorState=function(e,t){var n=null,i=[],o=0;return t.forEach((function(t){var r;if(1===t.endColumn&&o>0){var s=t.startLineNumber-o;r=new Sn(s,t.startColumn,s,t.startColumn)}else r=new Sn(t.startLineNumber,t.startColumn,t.startLineNumber,t.startColumn);o+=t.endLineNumber-t.startLineNumber,t.intersectRanges(e)?n=r:i.push(r)})),n&&i.unshift(n),i},t.prototype._getRangesToDelete=function(e){var t=e.getSelections();if(null===t)return[];var n=t,i=e.getModel();return null===i?[]:(n.sort(wn.compareRangesUsingStarts),n=n.map((function(e){if(e.isEmpty()){if(1===e.startColumn){var t=Math.max(1,e.startLineNumber-1),n=1===e.startLineNumber?1:i.getLineContent(t).length+1;return new wn(t,n,e.startLineNumber,1)}return new wn(e.startLineNumber,1,e.startLineNumber,e.startColumn)}return new wn(e.startLineNumber,1,e.endLineNumber,e.endColumn)})))},t}(pK),gK=function(e){function t(){return e.call(this,{id:"deleteAllRight",label:r("lines.deleteAllRight","Delete All Right"),alias:"Delete All Right",precondition:eC.writable,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:297,secondary:[2068]},weight:100}})||this}return XU(t,e),t.prototype._getEndCursorState=function(e,t){for(var n=null,i=[],o=0,r=t.length;o<r;o++){var s=t[o],a=new Sn(s.startLineNumber-0,s.startColumn,s.startLineNumber-0,s.startColumn);s.intersectRanges(e)?n=a:i.push(a)}return n&&i.unshift(n),i},t.prototype._getRangesToDelete=function(e){var t=e.getModel();if(null===t)return[];var n=e.getSelections();if(null===n)return[];var i=n.map((function(e){if(e.isEmpty()){var n=t.getLineMaxColumn(e.startLineNumber);return e.startColumn===n?new wn(e.startLineNumber,e.startColumn,e.startLineNumber+1,1):new wn(e.startLineNumber,e.startColumn,e.startLineNumber,n)}return e}));return i.sort(wn.compareRangesUsingStarts),i},t}(pK),mK=function(e){function t(){return e.call(this,{id:"editor.action.joinLines",label:r("lines.joinLines","Join Lines"),alias:"Join Lines",precondition:eC.writable,kbOpts:{kbExpr:eC.editorTextFocus,primary:0,mac:{primary:296},weight:100}})||this}return XU(t,e),t.prototype.run=function(e,t){var n=t.getSelections();if(null!==n){var i=t.getSelection();if(null!==i){n.sort(wn.compareRangesUsingStarts);var o=[],r=n.reduce((function(e,t){return e.isEmpty()?e.endLineNumber===t.startLineNumber?(i.equalsSelection(e)&&(i=t),t):t.startLineNumber>e.endLineNumber+1?(o.push(e),t):new Sn(e.startLineNumber,e.startColumn,t.endLineNumber,t.endColumn):t.startLineNumber>e.endLineNumber?(o.push(e),t):new Sn(e.startLineNumber,e.startColumn,t.endLineNumber,t.endColumn)}));o.push(r);var s=t.getModel();if(null!==s){for(var a=[],u=[],l=i,c=0,d=0,h=o.length;d<h;d++){var p=o[d],f=p.startLineNumber,g=0,m=void 0,v=void 0,_=s.getLineContent(p.endLineNumber).length-p.endColumn;if(p.isEmpty()||p.startLineNumber===p.endLineNumber){var y=p.getStartPosition();y.lineNumber<s.getLineCount()?(m=f+1,v=s.getLineMaxColumn(m)):(m=y.lineNumber,v=s.getLineMaxColumn(y.lineNumber))}else m=p.endLineNumber,v=s.getLineMaxColumn(m);for(var b=s.getLineContent(f),w=f+1;w<=m;w++){var C=s.getLineContent(w),S=s.getLineFirstNonWhitespaceColumn(w);if(S>=1){var L=!0;""===b&&(L=!1),!L||" "!==b.charAt(b.length-1)&&"\t"!==b.charAt(b.length-1)||(L=!1,b=b.replace(/[\s\uFEFF\xA0]+$/g," "));var x=C.substr(S-1);b+=(L?" ":"")+x,g=L?x.length+1:x.length}else g=0}var D=new wn(f,1,m,v);if(!D.isEmpty()){var N=void 0;p.isEmpty()?(a.push(bh.replace(D,b)),N=new Sn(D.startLineNumber-c,b.length-g+1,f-c,b.length-g+1)):p.startLineNumber===p.endLineNumber?(a.push(bh.replace(D,b)),N=new Sn(p.startLineNumber-c,p.startColumn,p.endLineNumber-c,p.endColumn)):(a.push(bh.replace(D,b)),N=new Sn(p.startLineNumber-c,p.startColumn,p.startLineNumber-c,b.length-_)),null!==wn.intersectRanges(D,i)?l=N:u.push(N)}c+=D.endLineNumber-D.startLineNumber}u.unshift(l),t.pushUndoStop(),t.executeEdits(this.id,a,u),t.pushUndoStop()}}}},t}(kf),vK=function(e){function t(){return e.call(this,{id:"editor.action.transpose",label:r("editor.transpose","Transpose characters around the cursor"),alias:"Transpose characters around the cursor",precondition:eC.writable})||this}return XU(t,e),t.prototype.run=function(e,t){var n=t.getSelections();if(null!==n){var i=t.getModel();if(null!==i){for(var o=[],r=0,s=n.length;r<s;r++){var a=n[r];if(a.isEmpty()){var u=a.getStartPosition(),l=i.getLineMaxColumn(u.lineNumber);if(u.column>=l){if(u.lineNumber===i.getLineCount())continue;var c=new wn(u.lineNumber,Math.max(1,u.column-1),u.lineNumber+1,1),d=i.getValueInRange(c).split("").reverse().join("");o.push(new Fw(new Sn(u.lineNumber,Math.max(1,u.column-1),u.lineNumber+1,1),d))}else{c=new wn(u.lineNumber,Math.max(1,u.column-1),u.lineNumber,u.column+1),d=i.getValueInRange(c).split("").reverse().join("");o.push(new Hw(c,d,new Sn(u.lineNumber,u.column+1,u.lineNumber,u.column+1)))}}}t.pushUndoStop(),t.executeCommands(this.id,o),t.pushUndoStop()}}},t}(kf),_K=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return XU(t,e),t.prototype.run=function(e,t){var n=t.getSelections();if(null!==n){var i=t.getModel();if(null!==i){for(var o=t.getOption(96),r=[],s=0,a=n.length;s<a;s++){var u=n[s];if(u.isEmpty()){var l=u.getStartPosition(),c=i.getWordAtPosition(l);if(!c)continue;var d=new wn(l.lineNumber,c.startColumn,l.lineNumber,c.endColumn),h=i.getValueInRange(d);r.push(new Hw(d,this._modifyText(h,o),new Sn(l.lineNumber,l.column,l.lineNumber,l.column)))}else{h=i.getValueInRange(u);r.push(new Hw(u,this._modifyText(h,o),u))}}t.pushUndoStop(),t.executeCommands(this.id,r),t.pushUndoStop()}}},t}(kf),yK=function(e){function t(){return e.call(this,{id:"editor.action.transformToUppercase",label:r("editor.transformToUppercase","Transform to Uppercase"),alias:"Transform to Uppercase",precondition:eC.writable})||this}return XU(t,e),t.prototype._modifyText=function(e,t){return e.toLocaleUpperCase()},t}(_K),bK=function(e){function t(){return e.call(this,{id:"editor.action.transformToLowercase",label:r("editor.transformToLowercase","Transform to Lowercase"),alias:"Transform to Lowercase",precondition:eC.writable})||this}return XU(t,e),t.prototype._modifyText=function(e,t){return e.toLocaleLowerCase()},t}(_K),wK=function(e){function t(){return e.call(this,{id:"editor.action.transformToTitlecase",label:r("editor.transformToTitlecase","Transform to Title Case"),alias:"Transform to Title Case",precondition:eC.writable})||this}return XU(t,e),t.prototype._modifyText=function(e,t){for(var n=("\r\n\t "+t).split(""),i="",o=!0,r=0;r<e.length;r++){var s=e[r];n.indexOf(s)>=0?(o=!0,i+=s):o?(o=!1,i+=s.toLocaleUpperCase()):i+=s.toLocaleLowerCase()}return i},t}(_K);Tf(QU),Tf(JU),Tf(eK),Tf(nK),Tf(iK),Tf(rK),Tf(sK),Tf(aK),Tf(uK),Tf(lK),Tf(cK),Tf(dK),Tf(hK),Tf(fK),Tf(gK),Tf(mK),Tf(vK),Tf(yK),Tf(bK),Tf(wK);n(418);var CK=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),SK=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},LK=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},xK=function(){function e(e,t){this._link=e,this._provider=t}return e.prototype.toJSON=function(){return{range:this.range,url:this.url,tooltip:this.tooltip}},Object.defineProperty(e.prototype,"range",{get:function(){return this._link.range},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"url",{get:function(){return this._link.url},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"tooltip",{get:function(){return this._link.tooltip},enumerable:!0,configurable:!0}),e.prototype.resolve=function(e){return SK(this,void 0,void 0,(function(){var t=this;return LK(this,(function(n){return this._link.url?[2,this._link.url]:"function"==typeof this._provider.resolveLink?[2,Promise.resolve(this._provider.resolveLink(this._link,e)).then((function(n){return t._link=n||t._link,t._link.url?t.resolve(e):Promise.reject(new Error("missing"))}))]:[2,Promise.reject(new Error("missing"))]}))}))},e}(),DK=function(e){function t(n){for(var i=e.call(this)||this,o=[],r=function(e,n){var i=e.links.map((function(e){return new xK(e,n)}));o=t._union(o,i),Re(n)&&s._register(n)},s=this,a=0,u=n;a<u.length;a++){var l=u[a];r(l[0],l[1])}return i.links=o,i}return CK(t,e),t._union=function(e,t){var n,i,o,r,s=[];for(n=0,o=0,i=e.length,r=t.length;n<i&&o<r;){var a=e[n],u=t[o];if(wn.areIntersectingOrTouching(a.range,u.range))n++;else wn.compareRangesUsingStarts(a.range,u.range)<0?(s.push(a),n++):(s.push(u),o++)}for(;n<i;n++)s.push(e[n]);for(;o<r;o++)s.push(t[o]);return s},t}(He);function NK(e,t){var n=[],i=ju.ordered(e).reverse().map((function(i,o){return Promise.resolve(i.provideLinks(e,t)).then((function(e){e&&(n[o]=[e,i])}),Ne)}));return Promise.all(i).then((function(){var e=new DK(Ei(n));return t.isCancellationRequested?(e.dispose(),new DK([])):e}))}ca.registerCommand("_executeLinkProvider",(function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];return SK(void 0,void 0,void 0,(function(){var n,i,o,r;return LK(this,(function(s){switch(s.label){case 0:return(n=t[0])instanceof Et&&(i=e.get(du).getModel(n))?[4,NK(i,et.None)]:[2,[]];case 1:return(o=s.sent())?(r=o.links.slice(0),o.dispose(),[2,r]):[2,[]]}}))}))}));var kK=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),EK=function(){return(EK=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},IK=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},OK=function(e,t){return function(n,i){t(n,i,e)}},MK=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},TK=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}};var PK={general:kv.register({stickiness:1,collapseOnReplaceEdit:!0,inlineClassName:"detected-link"}),active:kv.register({stickiness:1,collapseOnReplaceEdit:!0,inlineClassName:"detected-link-active"})},RK=function(){function e(e,t){this.link=e,this.decorationId=t}return e.decoration=function(t,n){return{range:t.range,options:e._getOptions(t,n,!1)}},e._getOptions=function(e,t,n){var i=EK({},n?PK.active:PK.general);return i.hoverMessage=function(e,t){var n=e.url&&/^command:/i.test(e.url.toString()),i=e.tooltip?e.tooltip:n?r("links.navigate.executeCmd","Execute command"):r("links.navigate.follow","Follow link"),o=t?_?r("links.navigate.kb.meta.mac","cmd + click"):r("links.navigate.kb.meta","ctrl + click"):_?r("links.navigate.kb.alt.mac","option + click"):r("links.navigate.kb.alt","alt + click");return e.url?new uj("",!0).appendMarkdown("["+i+"]("+e.url.toString()+") ("+o+")"):(new uj).appendText(i+" ("+o+")")}(e,t),i},e.prototype.activate=function(t,n){t.changeDecorationOptions(this.decorationId,e._getOptions(this.link,n,!0))},e.prototype.deactivate=function(t,n){t.changeDecorationOptions(this.decorationId,e._getOptions(this.link,n,!1))},e}(),AK=function(){function e(e,t,n){var i=this;this.listenersToRemove=new Be,this.editor=e,this.openerService=t,this.notificationService=n;var o=new yj(e);this.listenersToRemove.add(o),this.listenersToRemove.add(o.onMouseMoveOrRelevantKeyDown((function(e){var t=e[0],n=e[1];i._onEditorMouseMove(t,n)}))),this.listenersToRemove.add(o.onExecute((function(e){i.onEditorMouseUp(e)}))),this.listenersToRemove.add(o.onCancel((function(e){i.cleanUpActiveLinkDecoration()}))),this.enabled=e.getOption(52),this.listenersToRemove.add(e.onDidChangeConfiguration((function(t){var n=e.getOption(52);i.enabled!==n&&(i.enabled=n,i.updateDecorations([]),i.stop(),i.beginCompute())}))),this.listenersToRemove.add(e.onDidChangeModelContent((function(e){return i.onChange()}))),this.listenersToRemove.add(e.onDidChangeModel((function(e){return i.onModelChanged()}))),this.listenersToRemove.add(e.onDidChangeModelLanguage((function(e){return i.onModelModeChanged()}))),this.listenersToRemove.add(ju.onDidChange((function(e){return i.onModelModeChanged()}))),this.timeout=new yi,this.computePromise=null,this.activeLinksList=null,this.currentOccurrences={},this.activeLinkDecorationId=null,this.beginCompute()}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.onModelChanged=function(){this.currentOccurrences={},this.activeLinkDecorationId=null,this.stop(),this.beginCompute()},e.prototype.onModelModeChanged=function(){this.stop(),this.beginCompute()},e.prototype.onChange=function(){var t=this;this.timeout.setIfNotSet((function(){return t.beginCompute()}),e.RECOMPUTE_TIME)},e.prototype.beginCompute=function(){return MK(this,void 0,void 0,(function(){var e,t;return TK(this,(function(n){switch(n.label){case 0:if(!this.editor.hasModel()||!this.enabled)return[2];if(e=this.editor.getModel(),!ju.has(e))return[2];this.activeLinksList&&(this.activeLinksList.dispose(),this.activeLinksList=null),this.computePromise=hi((function(t){return NK(e,t)})),n.label=1;case 1:return n.trys.push([1,3,4,5]),t=this,[4,this.computePromise];case 2:return t.activeLinksList=n.sent(),this.updateDecorations(this.activeLinksList.links),[3,5];case 3:return De(n.sent()),[3,5];case 4:return this.computePromise=null,[7];case 5:return[2]}}))}))},e.prototype.updateDecorations=function(e){for(var t="altKey"===this.editor.getOption(59),n=[],i=Object.keys(this.currentOccurrences),o=0,r=i.length;o<r;o++){var s=i[o],a=this.currentOccurrences[s];n.push(a.decorationId)}var u=[];if(e)for(var l=0,c=e;l<c.length;l++){var d=c[l];u.push(RK.decoration(d,t))}var h=this.editor.deltaDecorations(n,u);this.currentOccurrences={},this.activeLinkDecorationId=null;for(o=0,r=h.length;o<r;o++){a=new RK(e[o],h[o]);this.currentOccurrences[a.decorationId]=a}},e.prototype._onEditorMouseMove=function(e,t){var n=this,i="altKey"===this.editor.getOption(59);if(this.isEnabled(e,t)){this.cleanUpActiveLinkDecoration();var o=this.getLinkOccurrence(e.target.position);o&&this.editor.changeDecorations((function(e){o.activate(e,i),n.activeLinkDecorationId=o.decorationId}))}else this.cleanUpActiveLinkDecoration()},e.prototype.cleanUpActiveLinkDecoration=function(){var e="altKey"===this.editor.getOption(59);if(this.activeLinkDecorationId){var t=this.currentOccurrences[this.activeLinkDecorationId];t&&this.editor.changeDecorations((function(n){t.deactivate(n,e)})),this.activeLinkDecorationId=null}},e.prototype.onEditorMouseUp=function(e){if(this.isEnabled(e)){var t=this.getLinkOccurrence(e.target.position);t&&this.openLinkOccurrence(t,e.hasSideBySideModifier,!0)}},e.prototype.openLinkOccurrence=function(e,t,n){var i=this;if(void 0===n&&(n=!1),this.openerService){var o=e.link;o.resolve(et.None).then((function(e){return i.openerService.open(e,{openToSide:t,fromUserGesture:n})}),(function(e){var t=e instanceof Error?e.message:e;"invalid"===t?i.notificationService.warn(r("invalid.url","Failed to open this link because it is not well-formed: {0}",o.url.toString())):"missing"===t?i.notificationService.warn(r("missing.url","Failed to open this link because its target is missing.")):De(e)}))}},e.prototype.getLinkOccurrence=function(e){if(!this.editor.hasModel()||!e)return null;for(var t=0,n=this.editor.getModel().getDecorationsInRange({startLineNumber:e.lineNumber,startColumn:e.column,endLineNumber:e.lineNumber,endColumn:e.column},0,!0);t<n.length;t++){var i=n[t],o=this.currentOccurrences[i.id];if(o)return o}return null},e.prototype.isEnabled=function(e,t){return Boolean(6===e.target.type&&(e.hasTriggerModifier||t&&t.keyCodeIsTriggerKey))},e.prototype.stop=function(){this.timeout.cancel(),this.activeLinksList&&this.activeLinksList.dispose(),this.computePromise&&(this.computePromise.cancel(),this.computePromise=null)},e.prototype.dispose=function(){this.listenersToRemove.dispose(),this.stop(),this.timeout.dispose()},e.ID="editor.linkDetector",e.RECOMPUTE_TIME=1e3,e=IK([OK(1,pa),OK(2,ap)],e)}(),FK=function(e){function t(){return e.call(this,{id:"editor.action.openLink",label:r("label","Open Link"),alias:"Open Link",precondition:void 0})||this}return kK(t,e),t.prototype.run=function(e,t){var n=AK.get(t);if(n&&t.hasModel())for(var i=0,o=t.getSelections();i<o.length;i++){var r=o[i],s=n.getLinkOccurrence(r.getEndPosition());s&&n.openLinkOccurrence(s,!1)}},t}(kf);Pf(AK.ID,AK),Tf(FK),yg((function(e,t){var n=e.getColor(Wy);n&&t.addRule(".monaco-editor .detected-link-active { color: "+n+" !important; }")}));var WK=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),VK=function(e){function t(){return e.call(this,{id:"editor.action.insertCursorAbove",label:r("mutlicursor.insertAbove","Add Cursor Above"),alias:"Add Cursor Above",precondition:void 0,kbOpts:{kbExpr:eC.editorTextFocus,primary:2576,linux:{primary:1552,secondary:[3088]},weight:100},menuOpts:{menuId:25,group:"3_multi",title:r({key:"miInsertCursorAbove",comment:["&& denotes a mnemonic"]},"&&Add Cursor Above"),order:2}})||this}return WK(t,e),t.prototype.run=function(e,t,n){if(t.hasModel()){var i=n&&!0===n.logicalLine,o=t._getCursors(),r=o.context;r.config.readOnly||(r.model.pushStackElement(),o.setStates(n.source,3,$w.addCursorUp(r,o.getAll(),i)),o.reveal(n.source,!0,1,0))}},t}(kf),BK=function(e){function t(){return e.call(this,{id:"editor.action.insertCursorBelow",label:r("mutlicursor.insertBelow","Add Cursor Below"),alias:"Add Cursor Below",precondition:void 0,kbOpts:{kbExpr:eC.editorTextFocus,primary:2578,linux:{primary:1554,secondary:[3090]},weight:100},menuOpts:{menuId:25,group:"3_multi",title:r({key:"miInsertCursorBelow",comment:["&& denotes a mnemonic"]},"A&&dd Cursor Below"),order:3}})||this}return WK(t,e),t.prototype.run=function(e,t,n){if(t.hasModel()){var i=n&&!0===n.logicalLine,o=t._getCursors(),r=o.context;r.config.readOnly||(r.model.pushStackElement(),o.setStates(n.source,3,$w.addCursorDown(r,o.getAll(),i)),o.reveal(n.source,!0,2,0))}},t}(kf),HK=function(e){function t(){return e.call(this,{id:"editor.action.insertCursorAtEndOfEachLineSelected",label:r("mutlicursor.insertAtEndOfEachLineSelected","Add Cursors to Line Ends"),alias:"Add Cursors to Line Ends",precondition:void 0,kbOpts:{kbExpr:eC.editorTextFocus,primary:1575,weight:100},menuOpts:{menuId:25,group:"3_multi",title:r({key:"miInsertCursorAtEndOfEachLineSelected",comment:["&& denotes a mnemonic"]},"Add C&&ursors to Line Ends"),order:4}})||this}return WK(t,e),t.prototype.getCursorsForSelection=function(e,t,n){if(!e.isEmpty()){for(var i=e.startLineNumber;i<e.endLineNumber;i++){var o=t.getLineMaxColumn(i);n.push(new Sn(i,o,i,o))}e.endColumn>1&&n.push(new Sn(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn))}},t.prototype.run=function(e,t){var n=this;if(t.hasModel()){var i=t.getModel(),o=t.getSelections(),r=[];o.forEach((function(e){return n.getCursorsForSelection(e,i,r)})),r.length>0&&t.setSelections(r)}},t}(kf),zK=function(e){function t(){return e.call(this,{id:"editor.action.addCursorsToBottom",label:r("mutlicursor.addCursorsToBottom","Add Cursors To Bottom"),alias:"Add Cursors To Bottom",precondition:void 0})||this}return WK(t,e),t.prototype.run=function(e,t){if(t.hasModel()){for(var n=t.getSelections(),i=t.getModel().getLineCount(),o=[],r=n[0].startLineNumber;r<=i;r++)o.push(new Sn(r,n[0].startColumn,r,n[0].endColumn));o.length>0&&t.setSelections(o)}},t}(kf),jK=function(e){function t(){return e.call(this,{id:"editor.action.addCursorsToTop",label:r("mutlicursor.addCursorsToTop","Add Cursors To Top"),alias:"Add Cursors To Top",precondition:void 0})||this}return WK(t,e),t.prototype.run=function(e,t){if(t.hasModel()){for(var n=t.getSelections(),i=[],o=n[0].startLineNumber;o>=1;o--)i.push(new Sn(o,n[0].startColumn,o,n[0].endColumn));i.length>0&&t.setSelections(i)}},t}(kf),UK=function(e,t,n){this.selections=e,this.revealRange=t,this.revealScrollType=n},KK=function(){function e(e,t,n,i,o,r,s){this._editor=e,this.findController=t,this.isDisconnectedFromFindController=n,this.searchText=i,this.wholeWord=o,this.matchCase=r,this.currentMatch=s}return e.create=function(t,n){if(!t.hasModel())return null;var i=n.getState();if(!t.hasTextFocus()&&i.isRevealed&&i.searchString.length>0)return new e(t,n,!1,i.searchString,i.wholeWord,i.matchCase,null);var o,r,s=!1,a=t.getSelections();1===a.length&&a[0].isEmpty()?(s=!0,o=!0,r=!0):(o=i.wholeWord,r=i.matchCase);var u,l=t.getSelection(),c=null;if(l.isEmpty()){var d=t.getModel().getWordAtPosition(l.getStartPosition());if(!d)return null;u=d.word,c=new Sn(l.startLineNumber,d.startColumn,l.startLineNumber,d.endColumn)}else u=t.getModel().getValueInRange(l).replace(/\r\n/g,"\n");return new e(t,n,s,u,o,r,c)},e.prototype.addSelectionToNextFindMatch=function(){if(!this._editor.hasModel())return null;var e=this._getNextMatch();if(!e)return null;var t=this._editor.getSelections();return new UK(t.concat(e),e,0)},e.prototype.moveSelectionToNextFindMatch=function(){if(!this._editor.hasModel())return null;var e=this._getNextMatch();if(!e)return null;var t=this._editor.getSelections();return new UK(t.slice(0,t.length-1).concat(e),e,0)},e.prototype._getNextMatch=function(){if(!this._editor.hasModel())return null;if(this.currentMatch){var e=this.currentMatch;return this.currentMatch=null,e}this.findController.highlightFindOptions();var t=this._editor.getSelections(),n=t[t.length-1],i=this._editor.getModel().findNextMatch(this.searchText,n.getEndPosition(),!1,this.matchCase,this.wholeWord?this._editor.getOption(96):null,!1);return i?new Sn(i.range.startLineNumber,i.range.startColumn,i.range.endLineNumber,i.range.endColumn):null},e.prototype.addSelectionToPreviousFindMatch=function(){if(!this._editor.hasModel())return null;var e=this._getPreviousMatch();if(!e)return null;var t=this._editor.getSelections();return new UK(t.concat(e),e,0)},e.prototype.moveSelectionToPreviousFindMatch=function(){if(!this._editor.hasModel())return null;var e=this._getPreviousMatch();if(!e)return null;var t=this._editor.getSelections();return new UK(t.slice(0,t.length-1).concat(e),e,0)},e.prototype._getPreviousMatch=function(){if(!this._editor.hasModel())return null;if(this.currentMatch){var e=this.currentMatch;return this.currentMatch=null,e}this.findController.highlightFindOptions();var t=this._editor.getSelections(),n=t[t.length-1],i=this._editor.getModel().findPreviousMatch(this.searchText,n.getStartPosition(),!1,this.matchCase,this.wholeWord?this._editor.getOption(96):null,!1);return i?new Sn(i.range.startLineNumber,i.range.startColumn,i.range.endLineNumber,i.range.endColumn):null},e.prototype.selectAll=function(){return this._editor.hasModel()?(this.findController.highlightFindOptions(),this._editor.getModel().findMatches(this.searchText,!0,!1,this.matchCase,this.wholeWord?this._editor.getOption(96):null,!1,1073741824)):[]},e}(),qK=function(e){function t(t){var n=e.call(this)||this;return n._sessionDispose=n._register(new Be),n._editor=t,n._ignoreSelectionChange=!1,n._session=null,n}return WK(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.dispose=function(){this._endSession(),e.prototype.dispose.call(this)},t.prototype._beginSessionIfNeeded=function(e){var t=this;if(!this._session){var n=KK.create(this._editor,e);if(!n)return;this._session=n;var i={searchString:this._session.searchText};this._session.isDisconnectedFromFindController&&(i.wholeWordOverride=1,i.matchCaseOverride=1,i.isRegexOverride=2),e.getState().change(i,!1),this._sessionDispose.add(this._editor.onDidChangeCursorSelection((function(e){t._ignoreSelectionChange||t._endSession()}))),this._sessionDispose.add(this._editor.onDidBlurEditorText((function(){t._endSession()}))),this._sessionDispose.add(e.getState().onFindReplaceStateChange((function(e){(e.matchCase||e.wholeWord)&&t._endSession()})))}},t.prototype._endSession=function(){if(this._sessionDispose.clear(),this._session&&this._session.isDisconnectedFromFindController){this._session.findController.getState().change({wholeWordOverride:0,matchCaseOverride:0,isRegexOverride:0},!1)}this._session=null},t.prototype._setSelections=function(e){this._ignoreSelectionChange=!0,this._editor.setSelections(e),this._ignoreSelectionChange=!1},t.prototype._expandEmptyToWord=function(e,t){if(!t.isEmpty())return t;var n=e.getWordAtPosition(t.getStartPosition());return n?new Sn(t.startLineNumber,n.startColumn,t.startLineNumber,n.endColumn):t},t.prototype._applySessionResult=function(e){e&&(this._setSelections(e.selections),e.revealRange&&this._editor.revealRangeInCenterIfOutsideViewport(e.revealRange,e.revealScrollType))},t.prototype.getSession=function(e){return this._session},t.prototype.addSelectionToNextFindMatch=function(e){if(this._editor.hasModel()){if(!this._session){var t=this._editor.getSelections();if(t.length>1){var n=e.getState().matchCase;if(!nq(this._editor.getModel(),t,n)){for(var i=this._editor.getModel(),o=[],r=0,s=t.length;r<s;r++)o[r]=this._expandEmptyToWord(i,t[r]);return void this._editor.setSelections(o)}}}this._beginSessionIfNeeded(e),this._session&&this._applySessionResult(this._session.addSelectionToNextFindMatch())}},t.prototype.addSelectionToPreviousFindMatch=function(e){this._beginSessionIfNeeded(e),this._session&&this._applySessionResult(this._session.addSelectionToPreviousFindMatch())},t.prototype.moveSelectionToNextFindMatch=function(e){this._beginSessionIfNeeded(e),this._session&&this._applySessionResult(this._session.moveSelectionToNextFindMatch())},t.prototype.moveSelectionToPreviousFindMatch=function(e){this._beginSessionIfNeeded(e),this._session&&this._applySessionResult(this._session.moveSelectionToPreviousFindMatch())},t.prototype.selectAll=function(e){if(this._editor.hasModel()){var t=null,n=e.getState();if(n.isRevealed&&n.searchString.length>0&&n.isRegex)t=this._editor.getModel().findMatches(n.searchString,!0,n.isRegex,n.matchCase,n.wholeWord?this._editor.getOption(96):null,!1,1073741824);else{if(this._beginSessionIfNeeded(e),!this._session)return;t=this._session.selectAll()}if(n.searchScope){for(var i=n.searchScope,o=[],r=0;r<t.length;r++)t[r].range.endLineNumber<=i.endLineNumber&&t[r].range.startLineNumber>=i.startLineNumber&&o.push(t[r]);t=o}if(t.length>0){for(var s=this._editor.getSelection(),a=(r=0,t.length);r<a;r++){var u=t[r];if(u.range.intersectRanges(s)){t[r]=t[0],t[0]=u;break}}this._setSelections(t.map((function(e){return new Sn(e.range.startLineNumber,e.range.startColumn,e.range.endLineNumber,e.range.endColumn)})))}}},t.ID="editor.contrib.multiCursorController",t}(He),GK=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return WK(t,e),t.prototype.run=function(e,t){var n=qK.get(t);if(n){var i=SV.get(t);i&&this._run(n,i)}},t}(kf),ZK=function(e){function t(){return e.call(this,{id:"editor.action.addSelectionToNextFindMatch",label:r("addSelectionToNextFindMatch","Add Selection To Next Find Match"),alias:"Add Selection To Next Find Match",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:2082,weight:100},menuOpts:{menuId:25,group:"3_multi",title:r({key:"miAddSelectionToNextFindMatch",comment:["&& denotes a mnemonic"]},"Add &&Next Occurrence"),order:5}})||this}return WK(t,e),t.prototype._run=function(e,t){e.addSelectionToNextFindMatch(t)},t}(GK),YK=function(e){function t(){return e.call(this,{id:"editor.action.addSelectionToPreviousFindMatch",label:r("addSelectionToPreviousFindMatch","Add Selection To Previous Find Match"),alias:"Add Selection To Previous Find Match",precondition:void 0,menuOpts:{menuId:25,group:"3_multi",title:r({key:"miAddSelectionToPreviousFindMatch",comment:["&& denotes a mnemonic"]},"Add P&&revious Occurrence"),order:6}})||this}return WK(t,e),t.prototype._run=function(e,t){e.addSelectionToPreviousFindMatch(t)},t}(GK),XK=function(e){function t(){return e.call(this,{id:"editor.action.moveSelectionToNextFindMatch",label:r("moveSelectionToNextFindMatch","Move Last Selection To Next Find Match"),alias:"Move Last Selection To Next Find Match",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:gt(2089,2082),weight:100}})||this}return WK(t,e),t.prototype._run=function(e,t){e.moveSelectionToNextFindMatch(t)},t}(GK),$K=function(e){function t(){return e.call(this,{id:"editor.action.moveSelectionToPreviousFindMatch",label:r("moveSelectionToPreviousFindMatch","Move Last Selection To Previous Find Match"),alias:"Move Last Selection To Previous Find Match",precondition:void 0})||this}return WK(t,e),t.prototype._run=function(e,t){e.moveSelectionToPreviousFindMatch(t)},t}(GK),QK=function(e){function t(){return e.call(this,{id:"editor.action.selectHighlights",label:r("selectAllOccurrencesOfFindMatch","Select All Occurrences of Find Match"),alias:"Select All Occurrences of Find Match",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:3114,weight:100},menuOpts:{menuId:25,group:"3_multi",title:r({key:"miSelectHighlights",comment:["&& denotes a mnemonic"]},"Select All &&Occurrences"),order:7}})||this}return WK(t,e),t.prototype._run=function(e,t){e.selectAll(t)},t}(GK),JK=function(e){function t(){return e.call(this,{id:"editor.action.changeAll",label:r("changeAll.label","Change All Occurrences"),alias:"Change All Occurrences",precondition:Rh.and(eC.writable,eC.editorTextFocus),kbOpts:{kbExpr:eC.editorTextFocus,primary:2108,weight:100},contextMenuOpts:{group:"1_modification",order:1.2}})||this}return WK(t,e),t.prototype._run=function(e,t){e.selectAll(t)},t}(GK),eq=function(){function e(e,t,n){this.searchText=e,this.matchCase=t,this.wordSeparators=n}return e.softEquals=function(e,t){return!e&&!t||!(!e||!t)&&(e.searchText===t.searchText&&e.matchCase===t.matchCase&&e.wordSeparators===t.wordSeparators)},e}(),tq=function(e){function t(t){var n=e.call(this)||this;return n.editor=t,n._isEnabled=t.getOption(82),n.decorations=[],n.updateSoon=n._register(new wi((function(){return n._update()}),300)),n.state=null,n._register(t.onDidChangeConfiguration((function(e){n._isEnabled=t.getOption(82)}))),n._register(t.onDidChangeCursorSelection((function(e){n._isEnabled&&(e.selection.isEmpty()?3===e.reason?(n.state&&n._setState(null),n.updateSoon.schedule()):n._setState(null):n._update())}))),n._register(t.onDidChangeModel((function(e){n._setState(null)}))),n._register(SV.get(t).getState().onFindReplaceStateChange((function(e){n._update()}))),n}return WK(t,e),t.prototype._update=function(){this._setState(t._createState(this._isEnabled,this.editor))},t._createState=function(e,t){if(!e)return null;if(!t.hasModel())return null;var n=t.getSelection();if(n.startLineNumber!==n.endLineNumber)return null;var i=qK.get(t);if(!i)return null;var o=SV.get(t);if(!o)return null;var r=i.getSession(o);if(!r){var s=t.getSelections();if(s.length>1){var a=o.getState().matchCase;if(!nq(t.getModel(),s,a))return null}r=KK.create(t,o)}if(!r)return null;if(r.currentMatch)return null;if(/^[ \t]+$/.test(r.searchText))return null;if(r.searchText.length>200)return null;var u=o.getState(),l=u.matchCase;if(u.isRevealed){var c=u.searchString;l||(c=c.toLowerCase());var d=r.searchText;if(l||(d=d.toLowerCase()),c===d&&r.matchCase===u.matchCase&&r.wholeWord===u.wholeWord&&!u.isRegex)return null}return new eq(r.searchText,r.matchCase,r.wholeWord?t.getOption(96):null)},t.prototype._setState=function(e){if(eq.softEquals(this.state,e))this.state=e;else if(this.state=e,this.state){if(this.editor.hasModel()){var n=this.editor.getModel();if(!n.isTooLargeForTokenization()){var i=Tu.has(n),o=n.findMatches(this.state.searchText,!0,!1,this.state.matchCase,this.state.wordSeparators,!1).map((function(e){return e.range}));o.sort(wn.compareRangesUsingStarts);var r=this.editor.getSelections();r.sort(wn.compareRangesUsingStarts);for(var s=[],a=0,u=0,l=o.length,c=r.length;a<l;){var d=o[a];if(u>=c)s.push(d),a++;else{var h=wn.compareRangesUsingStarts(d,r[u]);h<0?(!r[u].isEmpty()&&wn.areIntersecting(d,r[u])||s.push(d),a++):(h>0||a++,u++)}}var p=s.map((function(e){return{range:e,options:i?t._SELECTION_HIGHLIGHT:t._SELECTION_HIGHLIGHT_OVERVIEW}}));this.decorations=this.editor.deltaDecorations(this.decorations,p)}}}else this.decorations=this.editor.deltaDecorations(this.decorations,[])},t.prototype.dispose=function(){this._setState(null),e.prototype.dispose.call(this)},t.ID="editor.contrib.selectionHighlighter",t._SELECTION_HIGHLIGHT_OVERVIEW=kv.register({stickiness:1,className:"selectionHighlight",overviewRuler:{color:gg(wb),position:Va.Center}}),t._SELECTION_HIGHLIGHT=kv.register({stickiness:1,className:"selectionHighlight"}),t}(He);function nq(e,t,n){for(var i=iq(e,t[0],!n),o=1,r=t.length;o<r;o++){var s=t[o];if(s.isEmpty())return!1;if(i!==iq(e,s,!n))return!1}return!0}function iq(e,t,n){var i=e.getValueInRange(t);return n?i.toLowerCase():i}Pf(qK.ID,qK),Pf(tq.ID,tq),Tf(VK),Tf(BK),Tf(HK),Tf(ZK),Tf(YK),Tf(XK),Tf($K),Tf(QK),Tf(JK),Tf(zK),Tf(jK);n(419);var oq=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},rq=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},sq={Visible:new Kh("parameterHintsVisible",!1),MultipleSignatures:new Kh("parameterHintsMultipleSignatures",!1)};function aq(e,t,n,i){return vi(Iu.ordered(e).map((function(o){return function(){return Promise.resolve(o.provideSignatureHelp(e,t,i,n)).catch((function(e){return Ne(e)}))}})))}If("_executeSignatureHelpProvider",(function(e,t,n){return oq(void 0,void 0,void 0,(function(){var i;return rq(this,(function(o){switch(o.label){case 0:return[4,aq(e,t,{triggerKind:gu.Invoke,isRetrigger:!1,triggerCharacter:n.triggerCharacter},et.None)];case 1:return(i=o.sent())?(setTimeout((function(){return i.dispose()}),0),[2,i.value]):[2,void 0]}}))}))}));var uq,lq=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),cq=function(){return(cq=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},dq=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},hq=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}};!function(e){e.Default={type:0};var t=function(e){this.request=e,this.type=2};e.Pending=t;var n=function(e){this.hints=e,this.type=1};e.Active=n}(uq||(uq={}));var pq=function(e){function t(n,i){void 0===i&&(i=t.DEFAULT_DELAY);var o=e.call(this)||this;return o._onChangedHints=o._register(new nt),o.onChangedHints=o._onChangedHints.event,o.triggerOnType=!1,o._state=uq.Default,o._pendingTriggers=[],o._lastSignatureHelpResult=o._register(new ze),o.triggerChars=new ic,o.retriggerChars=new ic,o.triggerId=0,o.editor=n,o.throttledDelayer=new fi(i),o._register(o.editor.onDidChangeConfiguration((function(){return o.onEditorConfigurationChange()}))),o._register(o.editor.onDidChangeModel((function(e){return o.onModelChanged()}))),o._register(o.editor.onDidChangeModelLanguage((function(e){return o.onModelChanged()}))),o._register(o.editor.onDidChangeCursorSelection((function(e){return o.onCursorChange(e)}))),o._register(o.editor.onDidChangeModelContent((function(e){return o.onModelContentChange()}))),o._register(Iu.onDidChange(o.onModelChanged,o)),o._register(o.editor.onDidType((function(e){return o.onDidType(e)}))),o.onEditorConfigurationChange(),o.onModelChanged(),o}return lq(t,e),Object.defineProperty(t.prototype,"state",{get:function(){return this._state},set:function(e){2===this._state.type&&this._state.request.cancel(),this._state=e},enumerable:!0,configurable:!0}),t.prototype.cancel=function(e){void 0===e&&(e=!1),this.state=uq.Default,this.throttledDelayer.cancel(),e||this._onChangedHints.fire(void 0)},t.prototype.trigger=function(e,t){var n=this,i=this.editor.getModel();if(i&&Iu.has(i)){var o=++this.triggerId;this._pendingTriggers.push(e),this.throttledDelayer.trigger((function(){return n.doTrigger(o)}),t).catch(De)}},t.prototype.next=function(){if(1===this.state.type){var e=this.state.hints.signatures.length,t=this.state.hints.activeSignature,n=t%e==e-1,i=this.editor.getOption(64).cycle;!(e<2||n)||i?this.updateActiveSignature(n&&i?0:t+1):this.cancel()}},t.prototype.previous=function(){if(1===this.state.type){var e=this.state.hints.signatures.length,t=this.state.hints.activeSignature,n=0===t,i=this.editor.getOption(64).cycle;!(e<2||n)||i?this.updateActiveSignature(n&&i?e-1:t-1):this.cancel()}},t.prototype.updateActiveSignature=function(e){1===this.state.type&&(this.state=new uq.Active(cq(cq({},this.state.hints),{activeSignature:e})),this._onChangedHints.fire(this.state.hints))},t.prototype.doTrigger=function(e){return dq(this,void 0,void 0,(function(){var t,n,i,o,r,s,a,u;return hq(this,(function(l){switch(l.label){case 0:if(t=1===this.state.type||2===this.state.type,n=1===this.state.type?this.state.hints:void 0,this.cancel(!0),0===this._pendingTriggers.length)return[2,!1];if(i=this._pendingTriggers.reduce(fq),this._pendingTriggers=[],o={triggerKind:i.triggerKind,triggerCharacter:i.triggerCharacter,isRetrigger:t,activeSignatureHelp:n},!this.editor.hasModel())return[2,!1];r=this.editor.getModel(),s=this.editor.getPosition(),this.state=new uq.Pending(hi((function(e){return aq(r,s,o,e)}))),l.label=1;case 1:return l.trys.push([1,3,,4]),[4,this.state.request];case 2:return a=l.sent(),e!==this.triggerId?(null==a||a.dispose(),[2,!1]):a&&a.value.signatures&&0!==a.value.signatures.length?(this.state=new uq.Active(a.value),this._lastSignatureHelpResult.value=a,this._onChangedHints.fire(this.state.hints),[2,!0]):(null==a||a.dispose(),this._lastSignatureHelpResult.clear(),this.cancel(),[2,!1]);case 3:return u=l.sent(),e===this.triggerId&&(this.state=uq.Default),De(u),[2,!1];case 4:return[2]}}))}))},Object.defineProperty(t.prototype,"isTriggered",{get:function(){return 1===this.state.type||2===this.state.type||this.throttledDelayer.isTriggered()},enumerable:!0,configurable:!0}),t.prototype.onModelChanged=function(){this.cancel(),this.triggerChars=new ic,this.retriggerChars=new ic;var e=this.editor.getModel();if(e)for(var t=0,n=Iu.ordered(e);t<n.length;t++){for(var i=n[t],o=0,r=i.signatureHelpTriggerCharacters||[];o<r.length;o++){var s=r[o];this.triggerChars.add(s.charCodeAt(0)),this.retriggerChars.add(s.charCodeAt(0))}for(var a=0,u=i.signatureHelpRetriggerCharacters||[];a<u.length;a++){s=u[a];this.retriggerChars.add(s.charCodeAt(0))}}},t.prototype.onDidType=function(e){if(this.triggerOnType){var t=e.length-1,n=e.charCodeAt(t);(this.triggerChars.has(n)||this.isTriggered&&this.retriggerChars.has(n))&&this.trigger({triggerKind:gu.TriggerCharacter,triggerCharacter:e.charAt(t)})}},t.prototype.onCursorChange=function(e){"mouse"===e.source?this.cancel():this.isTriggered&&this.trigger({triggerKind:gu.ContentChange})},t.prototype.onModelContentChange=function(){this.isTriggered&&this.trigger({triggerKind:gu.ContentChange})},t.prototype.onEditorConfigurationChange=function(){this.triggerOnType=this.editor.getOption(64).enabled,this.triggerOnType||this.cancel()},t.prototype.dispose=function(){this.cancel(!0),e.prototype.dispose.call(this)},t.DEFAULT_DELAY=120,t}(He);function fq(e,t){switch(t.triggerKind){case gu.Invoke:return t;case gu.ContentChange:return e;case gu.TriggerCharacter:default:return t}}var gq=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),mq=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},vq=function(e,t){return function(n,i){t(n,i,e)}},_q=er,yq=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r.editor=t,r.renderDisposeables=r._register(new Be),r.visible=!1,r.announcedLabel=null,r.allowEditorOverflow=!0,r.markdownRenderer=r._register(new _U(t,o,i)),r.model=r._register(new pq(t)),r.keyVisible=sq.Visible.bindTo(n),r.keyMultipleSignatures=sq.MultipleSignatures.bindTo(n),r._register(r.model.onChangedHints((function(e){e?(r.show(),r.render(e)):r.hide()}))),r}return gq(t,e),t.prototype.createParamaterHintDOMNodes=function(){var e=this,t=_q(".editor-widget.parameter-hints-widget"),n=Xo(t,_q(".wrapper"));n.tabIndex=-1;var i=Xo(n,_q(".controls")),o=Xo(i,_q(".button.codicon.codicon-chevron-up")),r=Xo(i,_q(".overloads")),s=Xo(i,_q(".button.codicon.codicon-chevron-down")),a=$n(Xn(o,"click"));this._register(a(this.previous,this));var u=$n(Xn(s,"click"));this._register(u(this.next,this));var l=_q(".body"),c=new gS(l,{});this._register(c),n.appendChild(c.getDomNode());var d=Xo(l,_q(".signature")),h=Xo(l,_q(".docs"));t.style.userSelect="text",this.domNodes={element:t,signature:d,overloads:r,docs:h,scrollbar:c},this.editor.addContentWidget(this),this.hide(),this._register(this.editor.onDidChangeCursorSelection((function(t){e.visible&&e.editor.layoutContentWidget(e)})));var p=function(){if(e.domNodes){var t=e.editor.getOption(34);e.domNodes.element.style.fontSize=t.fontSize+"px"}};p(),this._register(Ge.chain(this.editor.onDidChangeConfiguration.bind(this.editor)).filter((function(e){return e.hasChanged(34)})).on(p,null)),this._register(this.editor.onDidLayoutChange((function(t){return e.updateMaxHeight()}))),this.updateMaxHeight()},t.prototype.show=function(){var e=this;this.visible||(this.domNodes||this.createParamaterHintDOMNodes(),this.keyVisible.set(!0),this.visible=!0,setTimeout((function(){e.domNodes&&no(e.domNodes.element,"visible")}),100),this.editor.layoutContentWidget(this))},t.prototype.hide=function(){this.visible&&(this.keyVisible.reset(),this.visible=!1,this.announcedLabel=null,this.domNodes&&oo(this.domNodes.element,"visible"),this.editor.layoutContentWidget(this))},t.prototype.getPosition=function(){return this.visible?{position:this.editor.getPosition(),preference:[1,2]}:null},t.prototype.render=function(e){if(this.domNodes){var t=e.signatures.length>1;so(this.domNodes.element,"multiple",t),this.keyMultipleSignatures.set(t),this.domNodes.signature.innerHTML="",this.domNodes.docs.innerHTML="";var n=e.signatures[e.activeSignature];if(n){var i=Xo(this.domNodes.signature,_q(".code")),o=n.parameters.length>0,s=this.editor.getOption(34);if(i.style.fontSize=s.fontSize+"px",i.style.fontFamily=s.fontFamily,o)this.renderParameters(i,n,e.activeParameter);else Xo(i,_q("span")).textContent=n.label;this.renderDisposeables.clear();var a=n.parameters[e.activeParameter];if(a&&a.documentation){var u=_q("span.documentation");if("string"==typeof a.documentation)u.textContent=a.documentation;else{var l=this.markdownRenderer.render(a.documentation);no(l.element,"markdown-docs"),this.renderDisposeables.add(l),u.appendChild(l.element)}Xo(this.domNodes.docs,_q("p",{},u))}if(void 0===n.documentation);else if("string"==typeof n.documentation)Xo(this.domNodes.docs,_q("p",{},n.documentation));else{l=this.markdownRenderer.render(n.documentation);no(l.element,"markdown-docs"),this.renderDisposeables.add(l),Xo(this.domNodes.docs,l.element)}var c=this.hasDocs(n,a);if(so(this.domNodes.signature,"has-docs",c),so(this.domNodes.docs,"empty",!c),this.domNodes.overloads.textContent=dr(e.activeSignature+1,e.signatures.length.toString().length)+"/"+e.signatures.length,a){var d=this.getParameterLabel(n,e.activeParameter);this.announcedLabel!==d&&(Zp(r("hint","{0}, hint",d)),this.announcedLabel=d)}this.editor.layoutContentWidget(this),this.domNodes.scrollbar.scanDomNode()}}},t.prototype.hasDocs=function(e,t){return!!(t&&"string"==typeof t.documentation&&t.documentation.length>0)||(!!(t&&"object"==typeof t.documentation&&t.documentation.value.length>0)||("string"==typeof e.documentation&&e.documentation.length>0||"object"==typeof e.documentation&&e.documentation.value.length>0))},t.prototype.renderParameters=function(e,t,n){var i=this.getParameterLabelOffsets(t,n),o=i[0],r=i[1],s=document.createElement("span");s.textContent=t.label.substring(0,o);var a=document.createElement("span");a.textContent=t.label.substring(o,r),a.className="parameter active";var u=document.createElement("span");u.textContent=t.label.substring(r),Xo(e,s,a,u)},t.prototype.getParameterLabel=function(e,t){var n=e.parameters[t];return"string"==typeof n.label?n.label:e.label.substring(n.label[0],n.label[1])},t.prototype.getParameterLabelOffsets=function(e,t){var n=e.parameters[t];if(n){if(Array.isArray(n.label))return n.label;var i=e.label.lastIndexOf(n.label);return i>=0?[i,i+n.label.length]:[0,0]}return[0,0]},t.prototype.next=function(){this.editor.focus(),this.model.next()},t.prototype.previous=function(){this.editor.focus(),this.model.previous()},t.prototype.cancel=function(){this.model.cancel()},t.prototype.getDomNode=function(){return this.domNodes||this.createParamaterHintDOMNodes(),this.domNodes.element},t.prototype.getId=function(){return t.ID},t.prototype.trigger=function(e){this.model.trigger(e,0)},t.prototype.updateMaxHeight=function(){if(this.domNodes){var e=Math.max(this.editor.getLayoutInfo().height/4,250)+"px";this.domNodes.element.style.maxHeight=e;var t=this.domNodes.element.getElementsByClassName("wrapper");t.length&&(t[0].style.maxHeight=e)}},t.ID="editor.widget.parameterHintsWidget",t=mq([vq(1,qh),vq(2,pa),vq(3,lN)],t)}(He);yg((function(e,t){var n=e.getColor(Ay);if(n){var i="hc"===e.type?2:1;t.addRule(".monaco-editor .parameter-hints-widget { border: "+i+"px solid "+n+"; }"),t.addRule(".monaco-editor .parameter-hints-widget.multiple .body { border-left: 1px solid "+n.transparent(.5)+"; }"),t.addRule(".monaco-editor .parameter-hints-widget .signature.has-docs { border-bottom: 1px solid "+n.transparent(.5)+"; }")}var o=e.getColor(Py);o&&t.addRule(".monaco-editor .parameter-hints-widget { background-color: "+o+"; }");var r=e.getColor(P_);r&&t.addRule(".monaco-editor .parameter-hints-widget a { color: "+r+"; }");var s=e.getColor(Ry);s&&t.addRule(".monaco-editor .parameter-hints-widget { color: "+s+"; }");var a=e.getColor(R_);a&&t.addRule(".monaco-editor .parameter-hints-widget code { background-color: "+a+"; }")}));var bq=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),wq=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Cq=function(e,t){return function(n,i){t(n,i,e)}},Sq=function(e){function t(t,n){var i=e.call(this)||this;return i.editor=t,i.widget=i._register(n.createInstance(yq,i.editor)),i}return bq(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.cancel=function(){this.widget.cancel()},t.prototype.previous=function(){this.widget.previous()},t.prototype.next=function(){this.widget.next()},t.prototype.trigger=function(e){this.widget.trigger(e)},t.ID="editor.controller.parameterHints",t=wq([Cq(1,In)],t)}(He),Lq=function(e){function t(){return e.call(this,{id:"editor.action.triggerParameterHints",label:r("parameterHints.trigger.label","Trigger Parameter Hints"),alias:"Trigger Parameter Hints",precondition:eC.hasSignatureHelpProvider,kbOpts:{kbExpr:eC.editorTextFocus,primary:3082,weight:100}})||this}return bq(t,e),t.prototype.run=function(e,t){var n=Sq.get(t);n&&n.trigger({triggerKind:gu.Invoke})},t}(kf);Pf(Sq.ID,Sq),Tf(Lq);var xq=Nf.bindToContribution(Sq.get);Mf(new xq({id:"closeParameterHints",precondition:sq.Visible,handler:function(e){return e.cancel()},kbOpts:{weight:175,kbExpr:eC.focus,primary:9,secondary:[1033]}})),Mf(new xq({id:"showPrevParameterHint",precondition:Rh.and(sq.Visible,sq.MultipleSignatures),handler:function(e){return e.previous()},kbOpts:{weight:175,kbExpr:eC.focus,primary:16,secondary:[528],mac:{primary:16,secondary:[528,302]}}})),Mf(new xq({id:"showNextParameterHint",precondition:Rh.and(sq.Visible,sq.MultipleSignatures),handler:function(e){return e.next()},kbOpts:{weight:175,kbExpr:eC.focus,primary:18,secondary:[530],mac:{primary:18,secondary:[530,300]}}}));n(420);var Dq=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Nq=function(e,t){return function(n,i){t(n,i,e)}},kq=new Kh("renameInputVisible",!1),Eq=function(){function e(e,t,n,i,o){var r=this;this._editor=e,this._acceptKeybindings=t,this._themeService=n,this._keybindingService=i,this._disposables=new Be,this.allowEditorOverflow=!0,this._visibleContextKey=kq.bindTo(o),this._editor.addContentWidget(this),this._disposables.add(this._editor.onDidChangeConfiguration((function(e){e.hasChanged(34)&&r._updateFont()}))),this._disposables.add(n.onThemeChange(this._updateStyles,this))}return e.prototype.dispose=function(){this._disposables.dispose(),this._editor.removeContentWidget(this)},e.prototype.getId=function(){return"__renameInputWidget"},e.prototype.getDomNode=function(){var e=this;if(!this._domNode){this._domNode=document.createElement("div"),this._domNode.className="monaco-editor rename-box",this._input=document.createElement("input"),this._input.className="rename-input",this._input.type="text",this._input.setAttribute("aria-label",r("renameAriaLabel","Rename input. Type new name and press Enter to commit.")),this._domNode.appendChild(this._input),this._label=document.createElement("div"),this._label.className="rename-label",this._domNode.appendChild(this._label);var t=function(){var t,n,i=e._acceptKeybindings,o=i[0],s=i[1];e._keybindingService.lookupKeybinding(o),e._label.innerText=r("label","{0} to Rename, {1} to Preview",null===(t=e._keybindingService.lookupKeybinding(o))||void 0===t?void 0:t.getLabel(),null===(n=e._keybindingService.lookupKeybinding(s))||void 0===n?void 0:n.getLabel())};t(),this._disposables.add(this._keybindingService.onDidUpdateKeybindings(t)),this._updateFont(),this._updateStyles(this._themeService.getTheme())}return this._domNode},e.prototype._updateStyles=function(e){var t,n,i,o;if(this._input&&this._domNode){var r=e.getColor(A_);this._domNode.style.backgroundColor=String(null!==(t=e.getColor(_y))&&void 0!==t?t:""),this._domNode.style.boxShadow=r?" 0 2px 8px "+r:"",this._domNode.style.color=String(null!==(n=e.getColor(W_))&&void 0!==n?n:""),this._input.style.backgroundColor=String(null!==(i=e.getColor(F_))&&void 0!==i?i:"");var s=e.getColor(V_);this._input.style.borderWidth=s?"1px":"0px",this._input.style.borderStyle=s?"solid":"none",this._input.style.borderColor=null!==(o=null==s?void 0:s.toString())&&void 0!==o?o:"none"}},e.prototype._updateFont=function(){if(this._input&&this._label){var e=this._editor.getOption(34);this._input.style.fontFamily=e.fontFamily,this._input.style.fontWeight=e.fontWeight,this._input.style.fontSize=e.fontSize+"px",this._label.style.fontSize=.8*e.fontSize+"px"}},e.prototype.getPosition=function(){return this._visible?{position:this._position,preference:[2,1]}:null},e.prototype.acceptInput=function(e){this._currentAcceptInput&&this._currentAcceptInput(e)},e.prototype.cancelInput=function(e){this._currentCancelInput&&this._currentCancelInput(e)},e.prototype.getInput=function(e,t,n,i,o){var r=this;so(this._domNode,"preview",o),this._position=new bn(e.startLineNumber,e.startColumn),this._input.value=t,this._input.setAttribute("selectionStart",n.toString()),this._input.setAttribute("selectionEnd",i.toString()),this._input.size=Math.max(1.1*(e.endColumn-e.startColumn),20);var s=new Be;return new Promise((function(n){r._currentCancelInput=function(e){return r._currentAcceptInput=void 0,r._currentCancelInput=void 0,n(e),!0},r._currentAcceptInput=function(e){0!==r._input.value.trim().length&&r._input.value!==t?(r._currentAcceptInput=void 0,r._currentCancelInput=void 0,n({newName:r._input.value,wantsPreview:o&&e})):r.cancelInput(!0)};s.add(r._editor.onDidChangeCursorSelection((function(){var t=r._editor.getPosition();t&&wn.containsPosition(e,t)||r.cancelInput(!0)}))),s.add(r._editor.onDidBlurEditorWidget((function(){return r.cancelInput(!1)}))),r._show()})).finally((function(){s.dispose(),r._hide()}))},e.prototype._show=function(){var e=this;this._editor.revealLineInCenterIfOutsideViewport(this._position.lineNumber,0),this._visible=!0,this._visibleContextKey.set(!0),this._editor.layoutContentWidget(this),setTimeout((function(){e._input.focus(),e._input.setSelectionRange(parseInt(e._input.getAttribute("selectionStart")),parseInt(e._input.getAttribute("selectionEnd")))}),100)},e.prototype._hide=function(){this._visible=!1,this._visibleContextKey.reset(),this._editor.layoutContentWidget(this)},e=Dq([Nq(2,fg),Nq(3,XD),Nq(4,qh)],e)}(),Iq=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Oq=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Mq=function(e,t){return function(n,i){t(n,i,e)}},Tq=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},Pq=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},Rq=function(){function e(e,t){this.model=e,this.position=t,this._providers=ku.ordered(e)}return e.prototype.hasProvider=function(){return this._providers.length>0},e.prototype.resolveRenameLocation=function(e){return Tq(this,void 0,void 0,(function(){var t,n,i,o;return Pq(this,(function(r){switch(r.label){case 0:return(t=this._providers[0])?t.resolveRenameLocation?(i=Xs,[4,t.resolveRenameLocation(this.model,this.position,e)]):[3,2]:[2,void 0];case 1:n=i.apply(void 0,[r.sent()]),r.label=2;case 2:return!n&&(o=this.model.getWordAtPosition(this.position))?[2,{range:new wn(this.position.lineNumber,o.startColumn,this.position.lineNumber,o.endColumn),text:o.word}]:[2,n]}}))}))},e.prototype.provideRenameEdits=function(e,t,n,i){return Tq(this,void 0,void 0,(function(){var o,s;return Pq(this,(function(a){switch(a.label){case 0:return(o=this._providers[t])?[4,o.provideRenameEdits(this.model,this.position,e,i)]:[2,{edits:[],rejectReason:n.join("\n")}];case 1:return(s=a.sent())?s.rejectReason?[2,this.provideRenameEdits(e,t+1,n.concat(s.rejectReason),i)]:[2,s]:[2,this.provideRenameEdits(e,t+1,n.concat(r("no result","No result.")),i)]}}))}))},e}();var Aq=function(){function e(e,t,n,i,o,r,s){var a=this;this.editor=e,this._instaService=t,this._notificationService=n,this._bulkEditService=i,this._progressService=o,this._logService=r,this._configService=s,this._dispoableStore=new Be,this._cts=new ct,this._renameInputField=this._dispoableStore.add(new Si((function(){return a._dispoableStore.add(a._instaService.createInstance(Eq,a.editor,["acceptRenameInput","acceptRenameInputWithPreview"]))})))}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.dispose=function(){this._dispoableStore.dispose(),this._cts.dispose(!0)},e.prototype.run=function(){return Tq(this,void 0,void 0,(function(){var e,t,n,i,o,s,a,u,l,c,d,h=this;return Pq(this,(function(p){switch(p.label){case 0:if(this._cts.dispose(!0),!this.editor.hasModel())return[2,void 0];if(e=this.editor.getPosition(),!(t=new Rq(this.editor.getModel(),e)).hasProvider())return[2,void 0];this._cts=new rD(this.editor,5),p.label=1;case 1:return p.trys.push([1,3,,4]),i=t.resolveRenameLocation(this._cts.token),this._progressService.showWhile(i,250),[4,i];case 2:return n=p.sent(),[3,4];case 3:return o=p.sent(),KR.get(this.editor).showMessage(o||r("resolveRenameLocationFailed","An unknown error occurred while resolving rename location"),e),[2,void 0];case 4:return n?n.rejectReason?(KR.get(this.editor).showMessage(n.rejectReason,e),[2,void 0]):this._cts.token.isCancellationRequested?[2,void 0]:(s=this.editor.getSelection(),a=0,u=n.text.length,wn.isEmpty(s)||wn.spansMultipleLines(s)||!wn.containsRange(n.range,s)||(a=Math.max(0,s.startColumn-n.range.startColumn),u=Math.min(n.range.endColumn,s.endColumn)-n.range.startColumn),l=this._bulkEditService.hasPreviewHandler()&&this._configService.getValue(this.editor.getModel().uri,"editor.rename.enablePreview"),[4,this._renameInputField.getValue().getInput(n.range,n.text,a,u,l)]):[2,void 0];case 5:return"boolean"==typeof(c=p.sent())?(c&&this.editor.focus(),[2,void 0]):(this.editor.focus(),d=pi(t.provideRenameEdits(c.newName,0,[],this._cts.token),this._cts.token).then((function(e){return Tq(h,void 0,void 0,(function(){var t=this;return Pq(this,(function(i){return e&&this.editor.hasModel()?e.rejectReason?(this._notificationService.info(e.rejectReason),[2]):(this._bulkEditService.apply(e,{editor:this.editor,showPreview:c.wantsPreview,label:r("label","Renaming '{0}'",null==n?void 0:n.text)}).then((function(e){e.ariaSummary&&Zp(r("aria","Successfully renamed '{0}' to '{1}'. Summary: {2}",n.text,c.newName,e.ariaSummary))})).catch((function(e){t._notificationService.error(r("rename.failedApply","Rename failed to apply edits")),t._logService.error(e)})),[2]):[2]}))}))}),(function(e){h._notificationService.error(r("rename.failed","Rename failed to compute edits")),h._logService.error(e)})),this._progressService.showWhile(d,250),[2,d])}}))}))},e.prototype.acceptRenameInput=function(e){this._renameInputField.getValue().acceptInput(e)},e.prototype.cancelRenameInput=function(){this._renameInputField.getValue().cancelInput(!0)},e.ID="editor.contrib.renameController",e=Oq([Mq(1,In),Mq(2,ap),Mq(3,uN),Mq(4,OD),Mq(5,yc),Mq(6,vc)],e)}(),Fq=function(e){function t(){return e.call(this,{id:"editor.action.rename",label:r("rename.label","Rename Symbol"),alias:"Rename Symbol",precondition:Rh.and(eC.writable,eC.hasRenameProvider),kbOpts:{kbExpr:eC.editorTextFocus,primary:60,weight:100},contextMenuOpts:{group:"1_modification",order:1.1}})||this}return Iq(t,e),t.prototype.runCommand=function(t,n){var i=this,o=t.get(Pn),r=Array.isArray(n)&&n||[void 0,void 0],s=r[0],a=r[1];return Et.isUri(s)&&bn.isIPosition(a)?o.openCodeEditor({resource:s},o.getActiveCodeEditor()).then((function(e){e&&(e.setPosition(a),e.invokeWithinContext((function(t){return i.reportTelemetry(t,e),i.run(t,e)})))}),De):e.prototype.runCommand.call(this,t,n)},t.prototype.run=function(e,t){var n=Aq.get(t);return n?n.run():Promise.resolve()},t}(kf);Pf(Aq.ID,Aq),Tf(Fq);var Wq=Nf.bindToContribution(Aq.get);Mf(new Wq({id:"acceptRenameInput",precondition:kq,handler:function(e){return e.acceptRenameInput(!1)},kbOpts:{weight:199,kbExpr:eC.focus,primary:3}})),Mf(new Wq({id:"acceptRenameInputWithPreview",precondition:Rh.and(kq,Rh.has("config.editor.rename.enablePreview")),handler:function(e){return e.acceptRenameInput(!0)},kbOpts:{weight:199,kbExpr:eC.focus,primary:1027}})),Mf(new Wq({id:"cancelRenameInput",precondition:kq,handler:function(e){return e.cancelRenameInput()},kbOpts:{weight:199,kbExpr:eC.focus,primary:9,secondary:[1033]}})),If("_executeDocumentRenameProvider",(function(e,t,n){var i=n.newName;if("string"!=typeof i)throw Oe("newName");return function(e,t,n){return Tq(this,void 0,void 0,(function(){return Pq(this,(function(i){return[2,new Rq(e,t).provideRenameEdits(n,0,[],et.None)]}))}))}(e,t,i)})),Td.as(Ad).registerConfiguration({id:"editor",properties:{"editor.rename.enablePreview":{scope:5,description:r("enablePreview","Enable/disable the ability to preview changes before renaming"),default:!0,type:"boolean"}}});var Vq=function(){function e(){}return e.prototype.provideSelectionRanges=function(e,t){for(var n=[],i=0,o=t;i<o.length;i++){var r=o[i],s=[];n.push(s),this._addInWordRanges(s,e,r),this._addWordRanges(s,e,r),this._addWhitespaceLine(s,e,r),s.push({range:e.getFullModelRange()})}return n},e.prototype._addInWordRanges=function(e,t,n){var i=t.getWordAtPosition(n);if(i){for(var o=i.word,r=i.startColumn,s=n.column-r,a=s,u=s,l=0;a>=0;a--){if(95===(c=o.charCodeAt(a))||45===c)break;if(Dr(c)&&Nr(l))break;l=c}for(a+=1;u<o.length;u++){var c;if(Nr(c=o.charCodeAt(u))&&Dr(l))break;if(95===c||45===c)break;l=c}a<u&&e.push({range:new wn(n.lineNumber,r+a,n.lineNumber,r+u)})}},e.prototype._addWordRanges=function(e,t,n){var i=t.getWordAtPosition(n);i&&e.push({range:new wn(n.lineNumber,i.startColumn,n.lineNumber,i.endColumn)})},e.prototype._addWhitespaceLine=function(e,t,n){t.getLineLength(n.lineNumber)>0&&0===t.getLineFirstNonWhitespaceColumn(n.lineNumber)&&0===t.getLineLastNonWhitespaceColumn(n.lineNumber)&&e.push({range:new wn(n.lineNumber,1,n.lineNumber,t.getLineMaxColumn(n.lineNumber))})},e}(),Bq=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},Hq=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},zq=function(){function e(){}return e.prototype.provideSelectionRanges=function(t,n){return Bq(this,void 0,void 0,(function(){var i,o,r,s,a;return Hq(this,(function(u){switch(u.label){case 0:i=[],o=function(n){var o,r;return Hq(this,(function(s){switch(s.label){case 0:return o=[],i.push(o),r=new Map,[4,new Promise((function(i){return e._bracketsRightYield(i,0,t,n,r)}))];case 1:return s.sent(),[4,new Promise((function(i){return e._bracketsLeftYield(i,0,t,n,r,o)}))];case 2:return s.sent(),[2]}}))},r=0,s=n,u.label=1;case 1:return r<s.length?(a=s[r],[5,o(a)]):[3,4];case 2:u.sent(),u.label=3;case 3:return r++,[3,1];case 4:return[2,i]}}))}))},e._bracketsRightYield=function(t,n,i,o,r){for(var s=new Map,a=Date.now();;){if(n>=e._maxRounds){t();break}if(!o){t();break}var u=i.findNextBracket(o);if(!u){t();break}if(Date.now()-a>e._maxDuration){setTimeout((function(){return e._bracketsRightYield(t,n+1,i,o,r)}));break}var l=u.close[0];if(u.isOpen){var c=s.has(l)?s.get(l):0;s.set(l,c+1)}else{c=s.has(l)?s.get(l):0;if(c-=1,s.set(l,Math.max(0,c)),c<0){var d=r.get(l);d||(d=new Qe,r.set(l,d)),d.push(u.range)}}o=u.range.getEndPosition()}},e._bracketsLeftYield=function(t,n,i,o,r,s){for(var a=new Map,u=Date.now();;){if(n>=e._maxRounds&&0===r.size){t();break}if(!o){t();break}var l=i.findPrevBracket(o);if(!l){t();break}if(Date.now()-u>e._maxDuration){setTimeout((function(){return e._bracketsLeftYield(t,n+1,i,o,r,s)}));break}var c=l.close[0];if(l.isOpen){g=a.has(c)?a.get(c):0;if(g-=1,a.set(c,Math.max(0,g)),g<0){var d=r.get(c);if(d){var h=d.shift();0===d.size&&r.delete(c);var p=wn.fromPositions(l.range.getEndPosition(),h.getStartPosition()),f=wn.fromPositions(l.range.getStartPosition(),h.getEndPosition());s.push({range:p}),s.push({range:f}),e._addBracketLeading(i,f,s)}}}else{var g=a.has(c)?a.get(c):0;a.set(c,g+1)}o=l.range.getStartPosition()}},e._addBracketLeading=function(e,t,n){if(t.startLineNumber!==t.endLineNumber){var i=t.startLineNumber,o=e.getLineFirstNonWhitespaceColumn(i);0!==o&&o!==t.startColumn&&(n.push({range:wn.fromPositions(new bn(i,o),t.getEndPosition())}),n.push({range:wn.fromPositions(new bn(i,1),t.getEndPosition())}));var r=i-1;if(r>0){var s=e.getLineFirstNonWhitespaceColumn(r);s===t.startColumn&&s!==e.getLineLastNonWhitespaceColumn(r)&&(n.push({range:wn.fromPositions(new bn(r,s),t.getEndPosition())}),n.push({range:wn.fromPositions(new bn(r,1),t.getEndPosition())}))}}},e._maxDuration=30,e._maxRounds=2,e}(),jq=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Uq=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},Kq=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},qq=function(){function e(e,t){this.index=e,this.ranges=t}return e.prototype.mov=function(t){var n=this.index+(t?1:-1);if(n<0||n>=this.ranges.length)return this;var i=new e(n,this.ranges);return i.ranges[n].equalsRange(this.ranges[this.index])?i.mov(t):i},e}(),Gq=function(){function e(e){this._ignoreSelection=!1,this._editor=e}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.dispose=function(){Ae(this._selectionListener)},e.prototype.run=function(e){var t=this;if(this._editor.hasModel()){var n=this._editor.getSelections(),i=this._editor.getModel();if(Ku.has(i)){var o=Promise.resolve(void 0);return this._state||(o=Jq(i,n.map((function(e){return e.getPosition()})),et.None).then((function(e){if(Oi(e)&&e.length===n.length&&t._editor.hasModel()&&xi(t._editor.getSelections(),n,(function(e,t){return e.equalsSelection(t)}))){for(var i=function(t){e[t]=e[t].filter((function(e){return e.containsPosition(n[t].getStartPosition())&&e.containsPosition(n[t].getEndPosition())})),e[t].unshift(n[t])},o=0;o<e.length;o++)i(o);t._state=e.map((function(e){return new qq(0,e)})),Ae(t._selectionListener),t._selectionListener=t._editor.onDidChangeCursorPosition((function(){t._ignoreSelection||(Ae(t._selectionListener),t._state=void 0)}))}}))),o.then((function(){if(t._state){t._state=t._state.map((function(t){return t.mov(e)}));var n=t._state.map((function(e){return Sn.fromPositions(e.ranges[e.index].getStartPosition(),e.ranges[e.index].getEndPosition())}));t._ignoreSelection=!0;try{t._editor.setSelections(n)}finally{t._ignoreSelection=!1}}}))}}},e.ID="editor.contrib.smartSelectController",e}(),Zq=function(e){function t(t,n){var i=e.call(this,n)||this;return i._forward=t,i}return jq(t,e),t.prototype.run=function(e,t){return Uq(this,void 0,void 0,(function(){var e;return Kq(this,(function(n){switch(n.label){case 0:return(e=Gq.get(t))?[4,e.run(this._forward)]:[3,2];case 1:n.sent(),n.label=2;case 2:return[2]}}))}))},t}(kf),Yq=function(e){function t(){return e.call(this,!0,{id:"editor.action.smartSelect.expand",label:r("smartSelect.expand","Expand Selection"),alias:"Expand Selection",precondition:void 0,kbOpts:{kbExpr:eC.editorTextFocus,primary:1553,mac:{primary:3345,secondary:[1297]},weight:100},menuOpts:{menuId:25,group:"1_basic",title:r({key:"miSmartSelectGrow",comment:["&& denotes a mnemonic"]},"&&Expand Selection"),order:2}})||this}return jq(t,e),t}(Zq);ca.registerCommandAlias("editor.action.smartSelect.grow","editor.action.smartSelect.expand");var Xq,$q,Qq=function(e){function t(){return e.call(this,!1,{id:"editor.action.smartSelect.shrink",label:r("smartSelect.shrink","Shrink Selection"),alias:"Shrink Selection",precondition:void 0,kbOpts:{kbExpr:eC.editorTextFocus,primary:1551,mac:{primary:3343,secondary:[1295]},weight:100},menuOpts:{menuId:25,group:"1_basic",title:r({key:"miSmartSelectShrink",comment:["&& denotes a mnemonic"]},"&&Shrink Selection"),order:3}})||this}return jq(t,e),t}(Zq);function Jq(e,t,n){var i=Ku.all(e);1===i.length&&i.unshift(new zq);for(var o=[],r=[],s=0,a=i;s<a.length;s++){var u=a[s];o.push(Promise.resolve(u.provideSelectionRanges(e,t,n)).then((function(e){if(Oi(e)&&e.length===t.length)for(var n=0;n<t.length;n++){r[n]||(r[n]=[]);for(var i=0,o=e[n];i<o.length;i++){var s=o[i];wn.isIRange(s.range)&&wn.containsPosition(s.range,t[n])&&r[n].push(wn.lift(s.range))}}}),Ne))}return Promise.all(o).then((function(){return r.map((function(t){if(0===t.length)return[];t.sort((function(e,t){return bn.isBefore(e.getStartPosition(),t.getStartPosition())?1:bn.isBefore(t.getStartPosition(),e.getStartPosition())||bn.isBefore(e.getEndPosition(),t.getEndPosition())?-1:bn.isBefore(t.getEndPosition(),e.getEndPosition())?1:0}));for(var n,i=[],o=0,r=t;o<r.length;o++){var s=r[o];(!n||wn.containsRange(s,n)&&!wn.equalsRange(s,n))&&(i.push(s),n=s)}for(var a=[i[0]],u=1;u<i.length;u++){var l=i[u-1],c=i[u];if(c.startLineNumber!==l.startLineNumber||c.endLineNumber!==l.endLineNumber){var d=new wn(l.startLineNumber,e.getLineFirstNonWhitespaceColumn(l.startLineNumber),l.endLineNumber,e.getLineLastNonWhitespaceColumn(l.endLineNumber));d.containsRange(l)&&!d.equalsRange(l)&&c.containsRange(d)&&!c.equalsRange(d)&&a.push(d);var h=new wn(l.startLineNumber,1,l.endLineNumber,e.getLineMaxColumn(l.endLineNumber));h.containsRange(l)&&!h.equalsRange(d)&&c.containsRange(h)&&!c.equalsRange(h)&&a.push(h)}a.push(c)}return a}))}))}Pf(Gq.ID,Gq),Tf(Yq),Tf(Qq),Ku.register("*",new Vq),Xq="_executeSelectionRangeProvider",$q=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=t[0];return Jq(e,i,et.None)},ca.registerCommand(Xq,(function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=t[0];zs(Et.isUri(i));var o=e.get(du).getModel(i);return o?$q(o,t.slice(1)):e.get(tl).createModelReference(i).then((function(e){return new Promise((function(n,i){try{n($q(e.object.textEditorModel,t.slice(1)))}catch(e){i(e)}})).finally((function(){e.dispose()}))}))}));var eG=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},tG=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},nG={Visible:new Kh("suggestWidgetVisible",!1),MultipleSuggestions:new Kh("suggestWidgetMultipleSuggestions",!1),MakesTextEdit:new Kh("suggestionMakesTextEdit",!0),AcceptSuggestionsOnEnter:new Kh("acceptSuggestionOnEnter",!0)},iG=function(e,t,n,i,o){var r=this;this.position=e,this.completion=t,this.container=n,this.provider=i,this.isResolved=!1,this.score=nI.Default,this.distance=0,this.textLabel="string"==typeof t.label?t.label:t.label.name,this.labelLow=this.textLabel.toLowerCase(),this.sortTextLow=t.sortText&&t.sortText.toLowerCase(),this.filterTextLow=t.filterText&&t.filterText.toLowerCase(),wn.isIRange(t.range)?(this.editStart=new bn(t.range.startLineNumber,t.range.startColumn),this.editInsertEnd=new bn(t.range.endLineNumber,t.range.endColumn),this.editReplaceEnd=new bn(t.range.endLineNumber,t.range.endColumn)):(this.editStart=new bn(t.range.insert.startLineNumber,t.range.insert.startColumn),this.editInsertEnd=new bn(t.range.insert.endLineNumber,t.range.insert.endColumn),this.editReplaceEnd=new bn(t.range.replace.endLineNumber,t.range.replace.endColumn));var s,a=i.resolveCompletionItem;"function"!=typeof a?(this.resolve=function(){return Promise.resolve()},this.isResolved=!0):this.resolve=function(n){return s||(s=Promise.resolve(a.call(i,o,e,t,n)).then((function(e){!function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];t.forEach((function(t){return Object.keys(t).forEach((function(n){return e[n]=t[n]}))}))}(t,e),r.isResolved=!0}),(function(e){Ee(e)&&(s=void 0)})),n.onCancellationRequested((function(){r.isResolved||(s=void 0)}))),s}},oG=function(){function e(e,t,n){void 0===e&&(e=2),void 0===t&&(t=new Set),void 0===n&&(n=new Set),this.snippetSortOrder=e,this.kindFilter=t,this.providerFilter=n}return e.default=new e,e}();function rG(e,t,n,i,o){void 0===n&&(n=oG.default),void 0===i&&(i={triggerKind:0}),void 0===o&&(o=et.None);var r=e.getWordAtPosition(t),s=r?new wn(t.lineNumber,r.startColumn,t.lineNumber,r.endColumn):wn.fromPositions(t),a=s.setEndPosition(t.lineNumber,t.column);t=t.clone();var u=Eu.orderedGroups(e);n.kindFilter.has(25);var l=[],c=new Be,d=!1;return vi(u.map((function(r){return function(){return Promise.all(r.map((function(r){if(!(n.providerFilter.size>0)||n.providerFilter.has(r))return Promise.resolve(r.provideCompletionItems(e,t,i,o)).then((function(i){var o=l.length;if(i){for(var u=0,h=i.suggestions||[];u<h.length;u++){var p=h[u];n.kindFilter.has(p.kind)||(p.range||(p.range={insert:a,replace:s}),p.sortText||(p.sortText="string"==typeof p.label?p.label:p.label.name),l.push(new iG(t,p,i,r,e)))}Re(i)&&c.add(i)}o!==l.length&&void 0!==r&&(d=!0)}),Ne)})))}})),(function(){return d||o.isCancellationRequested})).then((function(){return o.isCancellationRequested?(c.dispose(),Promise.reject(Ie())):l.sort(uG(n.snippetSortOrder))}))}function sG(e,t){if(e.sortTextLow&&t.sortTextLow){if(e.sortTextLow<t.sortTextLow)return-1;if(e.sortTextLow>t.sortTextLow)return 1}return e.completion.label<t.completion.label?-1:e.completion.label>t.completion.label?1:e.completion.kind-t.completion.kind}var aG=new Map;function uG(e){return aG.get(e)}aG.set(0,(function(e,t){if(e.completion.kind!==t.completion.kind){if(25===e.completion.kind)return-1;if(25===t.completion.kind)return 1}return sG(e,t)})),aG.set(2,(function(e,t){if(e.completion.kind!==t.completion.kind){if(25===e.completion.kind)return 1;if(25===t.completion.kind)return-1}return sG(e,t)})),aG.set(1,sG),If("_executeCompletionItemProvider",(function(e,t,n){return eG(void 0,void 0,void 0,(function(){var i,o,r,s,a,u,l,c;return tG(this,(function(d){switch(d.label){case 0:return i={incomplete:!1,suggestions:[]},o=new Be,r=[],s=n.maxItemsToResolve||0,[4,rG(e,t)];case 1:for(a=d.sent(),u=0,l=a;u<l.length;u++)c=l[u],r.length<s&&r.push(c.resolve(et.None)),i.incomplete=i.incomplete||c.container.incomplete,i.suggestions.push(c.completion),Re(c.container)&&o.add(c.container);d.label=2;case 2:return d.trys.push([2,,4,5]),[4,Promise.all(r)];case 3:return d.sent(),[2,i];case 4:return setTimeout((function(){return o.dispose()}),100),[7];case 5:return[2]}}))}))}));var lG=new(function(){function e(){this.onlyOnceSuggestions=[]}return e.prototype.provideCompletionItems=function(){var e={suggestions:this.onlyOnceSuggestions.slice(0)};return this.onlyOnceSuggestions.length=0,e},e}());Eu.register("*",lG);n(421);var cG,dG=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),hG=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},pG=function(){function e(){this.value="",this.pos=0}return e.isDigitCharacter=function(e){return e>=48&&e<=57},e.isVariableCharacter=function(e){return 95===e||e>=97&&e<=122||e>=65&&e<=90},e.prototype.text=function(e){this.value=e,this.pos=0},e.prototype.tokenText=function(e){return this.value.substr(e.pos,e.len)},e.prototype.next=function(){if(this.pos>=this.value.length)return{type:14,pos:this.pos,len:0};var t,n=this.pos,i=0,o=this.value.charCodeAt(n);if("number"==typeof(t=e._table[o]))return this.pos+=1,{type:t,pos:n,len:1};if(e.isDigitCharacter(o)){t=8;do{i+=1,o=this.value.charCodeAt(n+i)}while(e.isDigitCharacter(o));return this.pos+=i,{type:t,pos:n,len:i}}if(e.isVariableCharacter(o)){t=9;do{o=this.value.charCodeAt(n+ ++i)}while(e.isVariableCharacter(o)||e.isDigitCharacter(o));return this.pos+=i,{type:t,pos:n,len:i}}t=10;do{i+=1,o=this.value.charCodeAt(n+i)}while(!isNaN(o)&&void 0===e._table[o]&&!e.isDigitCharacter(o)&&!e.isVariableCharacter(o));return this.pos+=i,{type:t,pos:n,len:i}},e._table=((cG={})[36]=0,cG[58]=1,cG[44]=2,cG[123]=3,cG[125]=4,cG[92]=5,cG[47]=6,cG[124]=7,cG[43]=11,cG[45]=12,cG[63]=13,cG),e}(),fG=function(){function e(){this._children=[]}return e.prototype.appendChild=function(e){return e instanceof gG&&this._children[this._children.length-1]instanceof gG?this._children[this._children.length-1].value+=e.value:(e.parent=this,this._children.push(e)),this},e.prototype.replace=function(e,t){var n=e.parent,i=n.children.indexOf(e),o=n.children.slice(0);o.splice.apply(o,hG([i,1],t)),n._children=o,function e(t,n){for(var i=0,o=t;i<o.length;i++){var r=o[i];r.parent=n,e(r.children,r)}}(t,n)},Object.defineProperty(e.prototype,"children",{get:function(){return this._children},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"snippet",{get:function(){for(var e=this;;){if(!e)return;if(e instanceof SG)return e;e=e.parent}},enumerable:!0,configurable:!0}),e.prototype.toString=function(){return this.children.reduce((function(e,t){return e+t.toString()}),"")},e.prototype.len=function(){return 0},e}(),gG=function(e){function t(t){var n=e.call(this)||this;return n.value=t,n}return dG(t,e),t.prototype.toString=function(){return this.value},t.prototype.len=function(){return this.value.length},t.prototype.clone=function(){return new t(this.value)},t}(fG),mG=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return dG(t,e),t}(fG),vG=function(e){function t(t){var n=e.call(this)||this;return n.index=t,n}return dG(t,e),t.compareByIndex=function(e,t){return e.index===t.index?0:e.isFinalTabstop?1:t.isFinalTabstop||e.index<t.index?-1:e.index>t.index?1:0},Object.defineProperty(t.prototype,"isFinalTabstop",{get:function(){return 0===this.index},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"choice",{get:function(){return 1===this._children.length&&this._children[0]instanceof _G?this._children[0]:void 0},enumerable:!0,configurable:!0}),t.prototype.clone=function(){var e=new t(this.index);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map((function(e){return e.clone()})),e},t}(mG),_G=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.options=[],t}return dG(t,e),t.prototype.appendChild=function(e){return e instanceof gG&&(e.parent=this,this.options.push(e)),this},t.prototype.toString=function(){return this.options[0].value},t.prototype.len=function(){return this.options[0].len()},t.prototype.clone=function(){var e=new t;return this.options.forEach(e.appendChild,e),e},t}(fG),yG=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.regexp=new RegExp(""),t}return dG(t,e),t.prototype.resolve=function(e){var t=this,n=!1,i=e.replace(this.regexp,(function(){return n=!0,t._replace(Array.prototype.slice.call(arguments,0,-2))}));return!n&&this._children.some((function(e){return e instanceof bG&&Boolean(e.elseValue)}))&&(i=this._replace([])),i},t.prototype._replace=function(e){for(var t="",n=0,i=this._children;n<i.length;n++){var o=i[n];if(o instanceof bG){var r=e[o.index]||"";t+=r=o.resolve(r)}else t+=o.toString()}return t},t.prototype.toString=function(){return""},t.prototype.clone=function(){var e=new t;return e.regexp=new RegExp(this.regexp.source,(this.regexp.ignoreCase?"i":"")+(this.regexp.global?"g":"")),e._children=this.children.map((function(e){return e.clone()})),e},t}(fG),bG=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r.index=t,r.shorthandName=n,r.ifValue=i,r.elseValue=o,r}return dG(t,e),t.prototype.resolve=function(e){return"upcase"===this.shorthandName?e?e.toLocaleUpperCase():"":"downcase"===this.shorthandName?e?e.toLocaleLowerCase():"":"capitalize"===this.shorthandName?e?e[0].toLocaleUpperCase()+e.substr(1):"":"pascalcase"===this.shorthandName?e?this._toPascalCase(e):"":Boolean(e)&&"string"==typeof this.ifValue?this.ifValue:Boolean(e)||"string"!=typeof this.elseValue?e||"":this.elseValue},t.prototype._toPascalCase=function(e){var t=e.match(/[a-z]+/gi);return t?t.map((function(e){return e.charAt(0).toUpperCase()+e.substr(1).toLowerCase()})).join(""):e},t.prototype.clone=function(){return new t(this.index,this.shorthandName,this.ifValue,this.elseValue)},t}(fG),wG=function(e){function t(t){var n=e.call(this)||this;return n.name=t,n}return dG(t,e),t.prototype.resolve=function(e){var t=e.resolve(this);return this.transform&&(t=this.transform.resolve(t||"")),void 0!==t&&(this._children=[new gG(t)],!0)},t.prototype.clone=function(){var e=new t(this.name);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map((function(e){return e.clone()})),e},t}(mG);function CG(e,t){for(var n=hG(e);n.length>0;){var i=n.shift();if(!t(i))break;n.unshift.apply(n,i.children)}}var SG=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return dG(t,e),Object.defineProperty(t.prototype,"placeholderInfo",{get:function(){if(!this._placeholders){var e,t=[];this.walk((function(n){return n instanceof vG&&(t.push(n),e=!e||e.index<n.index?n:e),!0})),this._placeholders={all:t,last:e}}return this._placeholders},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"placeholders",{get:function(){return this.placeholderInfo.all},enumerable:!0,configurable:!0}),t.prototype.offset=function(e){var t=0,n=!1;return this.walk((function(i){return i===e?(n=!0,!1):(t+=i.len(),!0)})),n?t:-1},t.prototype.fullLen=function(e){var t=0;return CG([e],(function(e){return t+=e.len(),!0})),t},t.prototype.enclosingPlaceholders=function(e){for(var t=[],n=e.parent;n;)n instanceof vG&&t.push(n),n=n.parent;return t},t.prototype.resolveVariables=function(e){var t=this;return this.walk((function(n){return n instanceof wG&&n.resolve(e)&&(t._placeholders=void 0),!0})),this},t.prototype.appendChild=function(t){return this._placeholders=void 0,e.prototype.appendChild.call(this,t)},t.prototype.replace=function(t,n){return this._placeholders=void 0,e.prototype.replace.call(this,t,n)},t.prototype.clone=function(){var e=new t;return this._children=this.children.map((function(e){return e.clone()})),e},t.prototype.walk=function(e){CG(this.children,e)},t}(fG),LG=function(){function e(){this._scanner=new pG,this._token={type:14,pos:0,len:0}}return e.escape=function(e){return e.replace(/\$|}|\\/g,"\\$&")},e.prototype.parse=function(e,t,n){this._scanner.text(e),this._token=this._scanner.next();for(var i=new SG;this._parse(i););var o=new Map,r=[],s=0;i.walk((function(e){return e instanceof vG&&(s+=1,e.isFinalTabstop?o.set(0,void 0):!o.has(e.index)&&e.children.length>0?o.set(e.index,e.children):r.push(e)),!0}));for(var a=0,u=r;a<u.length;a++){var l=u[a],c=o.get(l.index);if(c){var d=new vG(l.index);d.transform=l.transform;for(var h=0,p=c;h<p.length;h++){var f=p[h];d.appendChild(f.clone())}i.replace(l,[d])}}return n||(n=s>0&&t),!o.has(0)&&n&&i.appendChild(new vG(0)),i},e.prototype._accept=function(e,t){if(void 0===e||this._token.type===e){var n=!t||this._scanner.tokenText(this._token);return this._token=this._scanner.next(),n}return!1},e.prototype._backTo=function(e){return this._scanner.pos=e.pos+e.len,this._token=e,!1},e.prototype._until=function(e){for(var t=this._token;this._token.type!==e;){if(14===this._token.type)return!1;if(5===this._token.type){var n=this._scanner.next();if(0!==n.type&&4!==n.type&&5!==n.type)return!1}this._token=this._scanner.next()}var i=this._scanner.value.substring(t.pos,this._token.pos).replace(/\\(\$|}|\\)/g,"$1");return this._token=this._scanner.next(),i},e.prototype._parse=function(e){return this._parseEscaped(e)||this._parseTabstopOrVariableName(e)||this._parseComplexPlaceholder(e)||this._parseComplexVariable(e)||this._parseAnything(e)},e.prototype._parseEscaped=function(e){var t;return!!(t=this._accept(5,!0))&&(t=this._accept(0,!0)||this._accept(4,!0)||this._accept(5,!0)||t,e.appendChild(new gG(t)),!0)},e.prototype._parseTabstopOrVariableName=function(e){var t,n=this._token;return this._accept(0)&&(t=this._accept(9,!0)||this._accept(8,!0))?(e.appendChild(/^\d+$/.test(t)?new vG(Number(t)):new wG(t)),!0):this._backTo(n)},e.prototype._parseComplexPlaceholder=function(e){var t,n=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(8,!0))))return this._backTo(n);var i=new vG(Number(t));if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(i),!0;if(!this._parse(i))return e.appendChild(new gG("${"+t+":")),i.children.forEach(e.appendChild,e),!0}else{if(!(i.index>0&&this._accept(7)))return this._accept(6)?this._parseTransform(i)?(e.appendChild(i),!0):(this._backTo(n),!1):this._accept(4)?(e.appendChild(i),!0):this._backTo(n);for(var o=new _G;;){if(this._parseChoiceElement(o)){if(this._accept(2))continue;if(this._accept(7)&&(i.appendChild(o),this._accept(4)))return e.appendChild(i),!0}return this._backTo(n),!1}}},e.prototype._parseChoiceElement=function(e){for(var t=this._token,n=[];2!==this._token.type&&7!==this._token.type;){var i=void 0;if(!(i=(i=this._accept(5,!0))?this._accept(2,!0)||this._accept(7,!0)||this._accept(5,!0)||i:this._accept(void 0,!0)))return this._backTo(t),!1;n.push(i)}return 0===n.length?(this._backTo(t),!1):(e.appendChild(new gG(n.join(""))),!0)},e.prototype._parseComplexVariable=function(e){var t,n=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(9,!0))))return this._backTo(n);var i=new wG(t);if(!this._accept(1))return this._accept(6)?this._parseTransform(i)?(e.appendChild(i),!0):(this._backTo(n),!1):this._accept(4)?(e.appendChild(i),!0):this._backTo(n);for(;;){if(this._accept(4))return e.appendChild(i),!0;if(!this._parse(i))return e.appendChild(new gG("${"+t+":")),i.children.forEach(e.appendChild,e),!0}},e.prototype._parseTransform=function(e){for(var t=new yG,n="",i="";!this._accept(6);){var o=void 0;if(o=this._accept(5,!0))n+=o=this._accept(6,!0)||o;else{if(14===this._token.type)return!1;n+=this._accept(void 0,!0)}}for(;!this._accept(6);){o=void 0;if(o=this._accept(5,!0))o=this._accept(5,!0)||this._accept(6,!0)||o,t.appendChild(new gG(o));else if(!this._parseFormatString(t)&&!this._parseAnything(t))return!1}for(;!this._accept(4);){if(14===this._token.type)return!1;i+=this._accept(void 0,!0)}try{t.regexp=new RegExp(n,i)}catch(e){return!1}return e.transform=t,!0},e.prototype._parseFormatString=function(e){var t=this._token;if(!this._accept(0))return!1;var n=!1;this._accept(3)&&(n=!0);var i=this._accept(8,!0);if(!i)return this._backTo(t),!1;if(!n)return e.appendChild(new bG(Number(i))),!0;if(this._accept(4))return e.appendChild(new bG(Number(i))),!0;if(!this._accept(1))return this._backTo(t),!1;if(this._accept(6)){var o=this._accept(9,!0);return o&&this._accept(4)?(e.appendChild(new bG(Number(i),o)),!0):(this._backTo(t),!1)}if(this._accept(11)){if(r=this._until(4))return e.appendChild(new bG(Number(i),void 0,r,void 0)),!0}else if(this._accept(12)){if(s=this._until(4))return e.appendChild(new bG(Number(i),void 0,void 0,s)),!0}else if(this._accept(13)){var r;if(r=this._until(1))if(s=this._until(4))return e.appendChild(new bG(Number(i),void 0,r,s)),!0}else{var s;if(s=this._until(4))return e.appendChild(new bG(Number(i),void 0,void 0,s)),!0}return this._backTo(t),!1},e.prototype._parseAnything=function(e){return 14!==this._token.type&&(e.appendChild(new gG(this._scanner.tokenText(this._token))),this._accept(void 0),!0)},e}();function xG(e){return e instanceof Et}var DG=function(){function e(e){this._delegates=e}return e.prototype.resolve=function(e){for(var t=0,n=this._delegates;t<n.length;t++){var i=n[t].resolve(e);if(void 0!==i)return i}},e}(),NG=function(){function e(e,t){this._model=e,this._selection=t}return e.prototype.resolve=function(e){var t=e.name;if("SELECTION"===t||"TM_SELECTED_TEXT"===t){var n=this._model.getValueInRange(this._selection)||void 0;if(n&&this._selection.startLineNumber!==this._selection.endLineNumber&&e.snippet){var i=Cr(this._model.getLineContent(this._selection.startLineNumber),0,this._selection.startColumn-1),o=i;e.snippet.walk((function(t){return t!==e&&(t instanceof gG&&(o=Cr(t.value.split(/\r\n|\r|\n/).pop())),!0)}));var r=Mr(o,i);n=n.replace(/(\r\n|\r|\n)(.*)/g,(function(e,t,n){return""+t+o.substr(r)+n}))}return n}if("TM_CURRENT_LINE"===t)return this._model.getLineContent(this._selection.positionLineNumber);if("TM_CURRENT_WORD"===t){var s=this._model.getWordAtPosition({lineNumber:this._selection.positionLineNumber,column:this._selection.positionColumn});return s&&s.word||void 0}return"TM_LINE_INDEX"===t?String(this._selection.positionLineNumber-1):"TM_LINE_NUMBER"===t?String(this._selection.positionLineNumber):void 0},e}(),kG=function(){function e(e,t){this._labelService=e,this._model=t}return e.prototype.resolve=function(e){var t=e.name;if("TM_FILENAME"===t)return vs(this._model.uri.fsPath);if("TM_FILENAME_BASE"===t){var n=vs(this._model.uri.fsPath),i=n.lastIndexOf(".");return i<=0?n:n.slice(0,i)}return"TM_DIRECTORY"===t&&this._labelService?"."===ms(this._model.uri.fsPath)?"":this._labelService.getUriLabel(Ns(this._model.uri)):"TM_FILEPATH"===t&&this._labelService?this._labelService.getUriLabel(this._model.uri):void 0},e}(),EG=function(){function e(e,t,n,i){this._readClipboardText=e,this._selectionIdx=t,this._selectionCount=n,this._spread=i}return e.prototype.resolve=function(e){if("CLIPBOARD"===e.name){var t=this._readClipboardText();if(t){if(this._spread){var n=t.split(/\r\n|\n|\r/).filter((function(e){return!cr(e)}));if(n.length===this._selectionCount)return n[this._selectionIdx]}return t}}},e}(),IG=function(){function e(e){this._model=e}return e.prototype.resolve=function(e){var t=e.name,n=this._model.getLanguageIdentifier(),i=Ol.getComments(n.id);if(i)return"LINE_COMMENT"===t?i.lineCommentToken||void 0:"BLOCK_COMMENT_START"===t?i.blockCommentStartToken||void 0:"BLOCK_COMMENT_END"===t&&i.blockCommentEndToken||void 0},e}(),OG=function(){function e(){}return e.prototype.resolve=function(t){var n=t.name;return"CURRENT_YEAR"===n?String((new Date).getFullYear()):"CURRENT_YEAR_SHORT"===n?String((new Date).getFullYear()).slice(-2):"CURRENT_MONTH"===n?dr((new Date).getMonth().valueOf()+1,2):"CURRENT_DATE"===n?dr((new Date).getDate().valueOf(),2):"CURRENT_HOUR"===n?dr((new Date).getHours().valueOf(),2):"CURRENT_MINUTE"===n?dr((new Date).getMinutes().valueOf(),2):"CURRENT_SECOND"===n?dr((new Date).getSeconds().valueOf(),2):"CURRENT_DAY_NAME"===n?e.dayNames[(new Date).getDay()]:"CURRENT_DAY_NAME_SHORT"===n?e.dayNamesShort[(new Date).getDay()]:"CURRENT_MONTH_NAME"===n?e.monthNames[(new Date).getMonth()]:"CURRENT_MONTH_NAME_SHORT"===n?e.monthNamesShort[(new Date).getMonth()]:"CURRENT_SECONDS_UNIX"===n?String(Math.floor(Date.now()/1e3)):void 0},e.dayNames=[r("Sunday","Sunday"),r("Monday","Monday"),r("Tuesday","Tuesday"),r("Wednesday","Wednesday"),r("Thursday","Thursday"),r("Friday","Friday"),r("Saturday","Saturday")],e.dayNamesShort=[r("SundayShort","Sun"),r("MondayShort","Mon"),r("TuesdayShort","Tue"),r("WednesdayShort","Wed"),r("ThursdayShort","Thu"),r("FridayShort","Fri"),r("SaturdayShort","Sat")],e.monthNames=[r("January","January"),r("February","February"),r("March","March"),r("April","April"),r("May","May"),r("June","June"),r("July","July"),r("August","August"),r("September","September"),r("October","October"),r("November","November"),r("December","December")],e.monthNamesShort=[r("JanuaryShort","Jan"),r("FebruaryShort","Feb"),r("MarchShort","Mar"),r("AprilShort","Apr"),r("MayShort","May"),r("JuneShort","Jun"),r("JulyShort","Jul"),r("AugustShort","Aug"),r("SeptemberShort","Sep"),r("OctoberShort","Oct"),r("NovemberShort","Nov"),r("DecemberShort","Dec")],e}(),MG=function(){function e(e){this._workspaceService=e}return e.prototype.resolve=function(e){if(this._workspaceService){var t,n=(t=this._workspaceService.getWorkspace()).configuration?{configPath:t.configuration,id:t.id}:1===t.folders.length?t.folders[0].uri:void 0;if(n)return"WORKSPACE_NAME"===e.name?this._resolveWorkspaceName(n):"WORKSPACE_FOLDER"===e.name?this._resoveWorkspacePath(n):void 0}},e.prototype._resolveWorkspaceName=function(e){if(xG(e))return vs(e.path);var t=vs(e.configPath.path);return _r(t,"code-workspace")&&(t=t.substr(0,t.length-"code-workspace".length-1)),t},e.prototype._resoveWorkspacePath=function(e){if(xG(e))return UH(e.fsPath);var t=vs(e.configPath.path),n=e.configPath.fsPath;return _r(n,t)&&(n=n.substr(0,n.length-t.length-1)),n?UH(n):"/"},e}(),TG=function(){function e(){}return e.prototype.resolve=function(e){var t=e.name;return"RANDOM"===t?Math.random().toString().slice(-6):"RANDOM_HEX"===t?Math.random().toString(16).slice(-6):void 0},e}();yg((function(e,t){function n(t){var n=e.getColor(t);return n?n.toString():"transparent"}t.addRule(".monaco-editor .snippet-placeholder { background-color: "+n(mb)+"; outline-color: "+n(vb)+"; }"),t.addRule(".monaco-editor .finish-snippet-placeholder { background-color: "+n(_b)+"; outline-color: "+n(yb)+"; }")}));var PG=function(){function e(e,t,n){this._nestingLevel=1,this._editor=e,this._snippet=t,this._offset=n,this._placeholderGroups=ki(t.placeholders,vG.compareByIndex),this._placeholderGroupsIdx=-1}return e.prototype.dispose=function(){if(this._placeholderDecorations){var e=[];this._placeholderDecorations.forEach((function(t){return e.push(t)})),this._editor.deltaDecorations(e,[])}this._placeholderGroups.length=0},e.prototype._initDecorations=function(){var t=this;if(!this._placeholderDecorations){this._placeholderDecorations=new Map;var n=this._editor.getModel();this._editor.changeDecorations((function(i){for(var o=0,r=t._snippet.placeholders;o<r.length;o++){var s=r[o],a=t._snippet.offset(s),u=t._snippet.fullLen(s),l=wn.fromPositions(n.getPositionAt(t._offset+a),n.getPositionAt(t._offset+a+u)),c=s.isFinalTabstop?e._decor.inactiveFinal:e._decor.inactive,d=i.addDecoration(l,c);t._placeholderDecorations.set(s,d)}}))}},e.prototype.move=function(t){var n=this;if(!this._editor.hasModel())return[];if(this._initDecorations(),this._placeholderGroupsIdx>=0){for(var i=[],o=0,r=this._placeholderGroups[this._placeholderGroupsIdx];o<r.length;o++){var s=r[o];if(s.transform){var a=this._placeholderDecorations.get(s),u=this._editor.getModel().getDecorationRange(a),l=this._editor.getModel().getValueInRange(u);i.push(bh.replaceMove(u,s.transform.resolve(l)))}}i.length>0&&this._editor.executeEdits("snippet.placeholderTransform",i)}var c=!1;!0===t&&this._placeholderGroupsIdx<this._placeholderGroups.length-1?(this._placeholderGroupsIdx+=1,c=!0):!1===t&&this._placeholderGroupsIdx>0&&(this._placeholderGroupsIdx-=1,c=!0);var d=this._editor.getModel().changeDecorations((function(t){for(var i=new Set,o=[],r=0,s=n._placeholderGroups[n._placeholderGroupsIdx];r<s.length;r++){var a=s[r],u=n._placeholderDecorations.get(a),l=n._editor.getModel().getDecorationRange(u);o.push(new Sn(l.startLineNumber,l.startColumn,l.endLineNumber,l.endColumn)),c=c&&n._hasPlaceholderBeenCollapsed(a),t.changeDecorationOptions(u,a.isFinalTabstop?e._decor.activeFinal:e._decor.active),i.add(a);for(var d=0,h=n._snippet.enclosingPlaceholders(a);d<h.length;d++){var p=h[d],f=n._placeholderDecorations.get(p);t.changeDecorationOptions(f,p.isFinalTabstop?e._decor.activeFinal:e._decor.active),i.add(p)}}return n._placeholderDecorations.forEach((function(n,o){i.has(o)||t.changeDecorationOptions(n,o.isFinalTabstop?e._decor.inactiveFinal:e._decor.inactive)})),o}));return c?this.move(t):d},e.prototype._hasPlaceholderBeenCollapsed=function(e){for(var t=e;t;){if(t instanceof vG){var n=this._placeholderDecorations.get(t);if(this._editor.getModel().getDecorationRange(n).isEmpty()&&t.toString().length>0)return!0}t=t.parent}return!1},Object.defineProperty(e.prototype,"isAtFirstPlaceholder",{get:function(){return this._placeholderGroupsIdx<=0||0===this._placeholderGroups.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isAtLastPlaceholder",{get:function(){return this._placeholderGroupsIdx===this._placeholderGroups.length-1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasPlaceholder",{get:function(){return this._snippet.placeholders.length>0},enumerable:!0,configurable:!0}),e.prototype.computePossibleSelections=function(){for(var e=new Map,t=0,n=this._placeholderGroups;t<n.length;t++)for(var i=void 0,o=0,r=n[t];o<r.length;o++){var s=r[o];if(s.isFinalTabstop)break;i||(i=[],e.set(s.index,i));var a=this._placeholderDecorations.get(s),u=this._editor.getModel().getDecorationRange(a);if(!u){e.delete(s.index);break}i.push(u)}return e},Object.defineProperty(e.prototype,"choice",{get:function(){return this._placeholderGroups[this._placeholderGroupsIdx][0].choice},enumerable:!0,configurable:!0}),e.prototype.merge=function(t){var n=this,i=this._editor.getModel();this._nestingLevel*=10,this._editor.changeDecorations((function(o){for(var r=0,s=n._placeholderGroups[n._placeholderGroupsIdx];r<s.length;r++){var a=s[r],u=t.shift();console.assert(!u._placeholderDecorations);for(var l=u._snippet.placeholderInfo.last.index,c=0,d=u._snippet.placeholderInfo.all;c<d.length;c++){var h=d[c];h.isFinalTabstop?h.index=a.index+(l+1)/n._nestingLevel:h.index=a.index+h.index/n._nestingLevel}n._snippet.replace(a,u._snippet.children);var p=n._placeholderDecorations.get(a);o.removeDecoration(p),n._placeholderDecorations.delete(a);for(var f=0,g=u._snippet.placeholders;f<g.length;f++){var m=g[f],v=u._snippet.offset(m),_=u._snippet.fullLen(m),y=wn.fromPositions(i.getPositionAt(u._offset+v),i.getPositionAt(u._offset+v+_)),b=o.addDecoration(y,e._decor.inactive);n._placeholderDecorations.set(m,b)}}n._placeholderGroups=ki(n._snippet.placeholders,vG.compareByIndex)}))},e._decor={active:kv.register({stickiness:0,className:"snippet-placeholder"}),inactive:kv.register({stickiness:1,className:"snippet-placeholder"}),activeFinal:kv.register({stickiness:1,className:"finish-snippet-placeholder"}),inactiveFinal:kv.register({stickiness:1,className:"finish-snippet-placeholder"})},e}(),RG={overwriteBefore:0,overwriteAfter:0,adjustWhitespace:!0,clipboardText:void 0},AG=function(){function e(e,t,n){void 0===n&&(n=RG),this._templateMerges=[],this._snippets=[],this._editor=e,this._template=t,this._options=n}return e.adjustWhitespace=function(e,t,n,i,o){var r=Cr(e.getLineContent(t.lineNumber),0,t.column-1);n.walk((function(t){if(t instanceof gG&&!(t.parent instanceof _G)){var n=t.value.split(/\r\n|\r|\n/);if(i)for(var s=1;s<n.length;s++){var a=Cr(n[s]);n[s]=e.normalizeIndentation(r+a)+n[s].substr(a.length)}if(o){var u=n.join(e.getEOL());u!==t.value&&t.parent.replace(t,[new gG(u)])}}return!0}))},e.adjustSelection=function(e,t,n,i){if(0!==n||0!==i){var o=t.positionLineNumber,r=t.positionColumn,s=r-n,a=r+i,u=e.validateRange({startLineNumber:o,startColumn:s,endLineNumber:o,endColumn:a});t=Sn.createWithDirection(u.startLineNumber,u.startColumn,u.endLineNumber,u.endColumn,t.getDirection())}return t},e.createEditsAndSnippets=function(t,n,i,o,r,s,a){var u=[],l=[];if(!t.hasModel())return{edits:u,snippets:l};for(var c=t.getModel(),d=t.invokeWithinContext((function(e){return e.get(lp,Tn)})),h=t.invokeWithinContext((function(e){return new kG(e.get(yE,Tn),c)})),p=t.invokeWithinContext((function(e){return e.get($D,Tn)})),f=function(){return a||p&&p.readTextSync()},g=0,m=c.getValueInRange(e.adjustSelection(c,t.getSelection(),i,0)),v=c.getValueInRange(e.adjustSelection(c,t.getSelection(),0,o)),_=c.getLineFirstNonWhitespaceColumn(t.getSelection().positionLineNumber),y=t.getSelections().map((function(e,t){return{selection:e,idx:t}})).sort((function(e,t){return wn.compareRangesUsingStarts(e.selection,t.selection)})),b=0,w=y;b<w.length;b++){var C=w[b],S=C.selection,L=C.idx,x=e.adjustSelection(c,S,i,0),D=e.adjustSelection(c,S,0,o);m!==c.getValueInRange(x)&&(x=S),v!==c.getValueInRange(D)&&(D=S);var N=S.setStartPosition(x.startLineNumber,x.startColumn).setEndPosition(D.endLineNumber,D.endColumn),k=(new LG).parse(n,!0,r),E=N.getStartPosition();e.adjustWhitespace(c,E,k,s||L>0&&_!==c.getLineFirstNonWhitespaceColumn(S.positionLineNumber),!0),k.resolveVariables(new DG([h,new EG(f,L,y.length,"spread"===t.getOption(60)),new NG(c,S),new IG(c),new OG,new MG(d),new TG]));var I=c.getOffsetAt(E)+g;g+=k.toString().length-c.getValueLengthInRange(N),u[L]=bh.replace(N,k.toString()),l[L]=new PG(t,k,I)}return{edits:u,snippets:l}},e.prototype.dispose=function(){Ae(this._snippets)},e.prototype._logInfo=function(){return'template="'+this._template+'", merged_templates="'+this._templateMerges.join(" -> ")+'"'},e.prototype.insert=function(){var t=this;if(this._editor.hasModel()){var n=e.createEditsAndSnippets(this._editor,this._template,this._options.overwriteBefore,this._options.overwriteAfter,!1,this._options.adjustWhitespace,this._options.clipboardText),i=n.edits,o=n.snippets;this._snippets=o,this._editor.executeEdits("snippet",i,(function(e){return t._snippets[0].hasPlaceholder?t._move(!0):e.map((function(e){return Sn.fromPositions(e.range.getEndPosition())}))})),this._editor.revealRange(this._editor.getSelections()[0])}},e.prototype.merge=function(t,n){var i=this;if(void 0===n&&(n=RG),this._editor.hasModel()){this._templateMerges.push([this._snippets[0]._nestingLevel,this._snippets[0]._placeholderGroupsIdx,t]);var o=e.createEditsAndSnippets(this._editor,t,n.overwriteBefore,n.overwriteAfter,!0,n.adjustWhitespace,n.clipboardText),r=o.edits,s=o.snippets;this._editor.executeEdits("snippet",r,(function(e){for(var t=0,n=i._snippets;t<n.length;t++){n[t].merge(s)}return console.assert(0===s.length),i._snippets[0].hasPlaceholder?i._move(void 0):e.map((function(e){return Sn.fromPositions(e.range.getEndPosition())}))}))}},e.prototype.next=function(){var e=this._move(!0);this._editor.setSelections(e),this._editor.revealPositionInCenterIfOutsideViewport(e[0].getPosition())},e.prototype.prev=function(){var e=this._move(!1);this._editor.setSelections(e),this._editor.revealPositionInCenterIfOutsideViewport(e[0].getPosition())},e.prototype._move=function(e){for(var t=[],n=0,i=this._snippets;n<i.length;n++){var o=i[n].move(e);t.push.apply(t,o)}return t},Object.defineProperty(e.prototype,"isAtFirstPlaceholder",{get:function(){return this._snippets[0].isAtFirstPlaceholder},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isAtLastPlaceholder",{get:function(){return this._snippets[0].isAtLastPlaceholder},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasPlaceholder",{get:function(){return this._snippets[0].hasPlaceholder},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"choice",{get:function(){return this._snippets[0].choice},enumerable:!0,configurable:!0}),e.prototype.isSelectionWithinPlaceholders=function(){if(!this.hasPlaceholder)return!1;var e=this._editor.getSelections();if(e.length<this._snippets.length)return!1;for(var t=new Map,n=function(n){var i=n.computePossibleSelections();if(0===t.size&&i.forEach((function(n,i){n.sort(wn.compareRangesUsingStarts);for(var o=0,r=e;o<r.length;o++){var s=r[o];if(n[0].containsRange(s)){t.set(i,[]);break}}})),0===t.size)return{value:!1};t.forEach((function(e,t){e.push.apply(e,i.get(t))}))},i=0,o=this._snippets;i<o.length;i++){var r=n(o[i]);if("object"==typeof r)return r.value}return e.sort(wn.compareRangesUsingStarts),t.forEach((function(n,i){if(n.length===e.length){n.sort(wn.compareRangesUsingStarts);for(var o=0;o<n.length;o++)if(!n[o].containsRange(e[o]))return void t.delete(i)}else t.delete(i)})),t.size>0},e}(),FG=function(){return(FG=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},WG=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},VG=function(e,t){return function(n,i){t(n,i,e)}},BG={overwriteBefore:0,overwriteAfter:0,undoStopBefore:!0,undoStopAfter:!0,adjustWhitespace:!0,clipboardText:void 0},HG=function(){function e(t,n,i){this._editor=t,this._logService=n,this._snippetListener=new Be,this._modelVersionId=-1,this._inSnippet=e.InSnippetMode.bindTo(i),this._hasNextTabstop=e.HasNextTabstop.bindTo(i),this._hasPrevTabstop=e.HasPrevTabstop.bindTo(i)}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.dispose=function(){this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),Ae(this._session),this._snippetListener.dispose()},e.prototype.insert=function(e,t){try{this._doInsert(e,void 0===t?BG:FG(FG({},BG),t))}catch(t){this.cancel(),this._logService.error(t),this._logService.error("snippet_error"),this._logService.error("insert_template=",e),this._logService.error("existing_template=",this._session?this._session._logInfo():"<no_session>")}},e.prototype._doInsert=function(e,t){var n=this;this._editor.hasModel()&&(this._snippetListener.clear(),t.undoStopBefore&&this._editor.getModel().pushStackElement(),this._session?this._session.merge(e,t):(this._modelVersionId=this._editor.getModel().getAlternativeVersionId(),this._session=new AG(this._editor,e,t),this._session.insert()),t.undoStopAfter&&this._editor.getModel().pushStackElement(),this._updateState(),this._snippetListener.add(this._editor.onDidChangeModelContent((function(e){return e.isFlush&&n.cancel()}))),this._snippetListener.add(this._editor.onDidChangeModel((function(){return n.cancel()}))),this._snippetListener.add(this._editor.onDidChangeCursorSelection((function(){return n._updateState()}))))},e.prototype._updateState=function(){if(this._session&&this._editor.hasModel()){if(this._modelVersionId===this._editor.getModel().getAlternativeVersionId())return this.cancel();if(!this._session.hasPlaceholder)return this.cancel();if(this._session.isAtLastPlaceholder||!this._session.isSelectionWithinPlaceholders())return this.cancel();this._inSnippet.set(!0),this._hasPrevTabstop.set(!this._session.isAtFirstPlaceholder),this._hasNextTabstop.set(!this._session.isAtLastPlaceholder),this._handleChoice()}},e.prototype._handleChoice=function(){var e=this;if(this._session&&this._editor.hasModel()){var t,n,i=this._session.choice;if(i){if(this._currentChoice!==i){this._currentChoice=i,this._editor.setSelections(this._editor.getSelections().map((function(e){return Sn.fromPositions(e.getStartPosition())})));var o=i.options[0];t=this._editor,n=i.options.map((function(t,n){return{kind:13,label:t.value,insertText:t.value,sortText:Zr("a",n+1),range:wn.fromPositions(e._editor.getPosition(),e._editor.getPosition().delta(0,o.value.length))}})),setTimeout((function(){var e;(e=lG.onlyOnceSuggestions).push.apply(e,n),t.getContribution("editor.contrib.suggestController").triggerSuggest((new Set).add(lG))}),0)}}else this._currentChoice=void 0}else this._currentChoice=void 0},e.prototype.finish=function(){for(;this._inSnippet.get();)this.next()},e.prototype.cancel=function(e){void 0===e&&(e=!1),this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),this._snippetListener.clear(),Ae(this._session),this._session=void 0,this._modelVersionId=-1,e&&this._editor.setSelections([this._editor.getSelection()])},e.prototype.prev=function(){this._session&&this._session.prev(),this._updateState()},e.prototype.next=function(){this._session&&this._session.next(),this._updateState()},e.prototype.isInSnippet=function(){return Boolean(this._inSnippet.get())},e.ID="snippetController2",e.InSnippetMode=new Kh("inSnippetMode",!1),e.HasNextTabstop=new Kh("hasNextTabstop",!1),e.HasPrevTabstop=new Kh("hasPrevTabstop",!1),e=WG([VG(1,yc),VG(2,qh)],e)}();Pf(HG.ID,HG);var zG=Nf.bindToContribution(HG.get);Mf(new zG({id:"jumpToNextSnippetPlaceholder",precondition:Rh.and(HG.InSnippetMode,HG.HasNextTabstop),handler:function(e){return e.next()},kbOpts:{weight:130,kbExpr:eC.editorTextFocus,primary:2}})),Mf(new zG({id:"jumpToPrevSnippetPlaceholder",precondition:Rh.and(HG.InSnippetMode,HG.HasPrevTabstop),handler:function(e){return e.prev()},kbOpts:{weight:130,kbExpr:eC.editorTextFocus,primary:1026}})),Mf(new zG({id:"leaveSnippet",precondition:HG.InSnippetMode,handler:function(e){return e.cancel(!0)},kbOpts:{weight:130,kbExpr:eC.editorTextFocus,primary:9,secondary:[1033]}})),Mf(new zG({id:"acceptSnippet",precondition:HG.InSnippetMode,handler:function(e){return e.finish()}}));var jG=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),UG=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},KG=function(e,t){return function(n,i){t(n,i,e)}},qG=function(){function e(){}return e.prototype.select=function(e,t,n){if(0===n.length)return 0;for(var i=n[0].score[0],o=1;o<n.length;o++){var r=n[o],s=r.score,a=r.completion;if(s[0]!==i)break;if(a.preselect)return o}return 0},e}(),GG=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return jG(t,e),t.prototype.memorize=function(e,t,n){},t.prototype.toJSON=function(){},t.prototype.fromJSON=function(){},t}(qG),ZG=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._cache=new aa(300,.66),t._seq=0,t}return jG(t,e),t.prototype.memorize=function(e,t,n){var i=n.completion.label,o=e.getLanguageIdentifier().language+"/"+i;this._cache.set(o,{touch:this._seq++,type:n.completion.kind,insertText:n.completion.insertText})},t.prototype.select=function(t,n,i){if(0===i.length)return 0;var o=t.getLineContent(n.lineNumber).substr(n.column-10,n.column-1);if(/\s$/.test(o))return e.prototype.select.call(this,t,n,i);for(var r=i[0].score[0],s=-1,a=-1,u=-1,l=0;l<i.length&&i[l].score[0]===r;l++){var c=t.getLanguageIdentifier().language+"/"+i[l].completion.label,d=this._cache.peek(c);if(d&&d.touch>u&&d.type===i[l].completion.kind&&d.insertText===i[l].completion.insertText&&(u=d.touch,a=l),i[l].completion.preselect&&-1===s)return l}return-1!==a?a:-1!==s?s:0},t.prototype.toJSON=function(){var e=[];return this._cache.forEach((function(t,n){e.push([n,t])})),e},t.prototype.fromJSON=function(e){this._cache.clear();for(var t=0,n=e;t<n.length;t++){var i=n[t],o=i[0],r=i[1];r.touch=0,r.type="number"==typeof r.type?r.type:Su(r.type),this._cache.set(o,r)}this._seq=this._cache.size},t}(qG),YG=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._trie=ra.forStrings(),t._seq=0,t}return jG(t,e),t.prototype.memorize=function(e,t,n){var i=e.getWordUntilPosition(t).word,o=e.getLanguageIdentifier().language+"/"+i;this._trie.set(o,{type:n.completion.kind,insertText:n.completion.insertText,touch:this._seq++})},t.prototype.select=function(t,n,i){var o=t.getWordUntilPosition(n).word;if(!o)return e.prototype.select.call(this,t,n,i);var r=t.getLanguageIdentifier().language+"/"+o,s=this._trie.get(r);if(s||(s=this._trie.findSubstr(r)),s)for(var a=0;a<i.length;a++){var u=i[a].completion,l=u.kind,c=u.insertText;if(l===s.type&&c===s.insertText)return a}return e.prototype.select.call(this,t,n,i)},t.prototype.toJSON=function(){var e=[];return this._trie.forEach((function(t,n){return e.push([n,t])})),e.sort((function(e,t){return-(e[1].touch-t[1].touch)})).forEach((function(e,t){return e[1].touch=t})),e.slice(0,200)},t.prototype.fromJSON=function(e){if(this._trie.clear(),e.length>0){this._seq=e[0][1].touch+1;for(var t=0,n=e;t<n.length;t++){var i=n[t],o=i[0],r=i[1];r.type="number"==typeof r.type?r.type:Su(r.type),this._trie.set(o,r)}}},t}(qG),XG=function(e){function t(t,n){var i=e.call(this)||this;i._storageService=t,i._configService=n,i._storagePrefix="suggest/memories";var o=function(){var e=i._configService.getValue("editor.suggestSelection"),t=i._configService.getValue("editor.suggest.shareSuggestSelections");i._update(e,t,!1)};return i._persistSoon=i._register(new wi((function(){return i._saveState()}),500)),i._register(t.onWillSaveState((function(e){e.reason===TM.SHUTDOWN&&i._saveState()}))),i._register(i._configService.onDidChangeConfiguration((function(e){(e.affectsConfiguration("editor.suggestSelection")||e.affectsConfiguration("editor.suggest.shareSuggestSelections"))&&o()}))),i._register(i._storageService.onDidChangeStorage((function(e){0===e.scope&&0===e.key.indexOf(i._storagePrefix)&&(document.hasFocus()||i._update(i._mode,i._shareMem,!0))}))),o(),i}return jG(t,e),t.prototype._update=function(e,t,n){if(n||this._mode!==e||this._shareMem!==t){this._shareMem=t,this._mode=e,this._strategy="recentlyUsedByPrefix"===e?new YG:"recentlyUsed"===e?new ZG:new GG;try{var i=t?0:1,o=this._storageService.get(this._storagePrefix+"/"+this._mode,i);o&&this._strategy.fromJSON(JSON.parse(o))}catch(e){}}},t.prototype.memorize=function(e,t,n){this._strategy.memorize(e,t,n),this._persistSoon.schedule()},t.prototype.select=function(e,t,n){return this._strategy.select(e,t,n)},t.prototype._saveState=function(){var e=JSON.stringify(this._strategy),t=this._shareMem?0:1;this._storageService.store(this._storagePrefix+"/"+this._mode,e,t)},t=UG([KG(0,FM),KG(1,wh)],t)}(He),$G=Mn("ISuggestMemories");Qx($G,XG,!0);var QG,JG=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},eZ=function(e,t){return function(n,i){t(n,i,e)}},tZ=function(){function e(t,n){this._editor=t,this._index=0,this._ckOtherSuggestions=e.OtherSuggestions.bindTo(n)}return e.prototype.dispose=function(){this.reset()},e.prototype.reset=function(){this._ckOtherSuggestions.reset(),Ae(this._listener),this._model=void 0,this._acceptNext=void 0,this._ignore=!1},e.prototype.set=function(t,n){var i=this,o=t.model,r=t.index;0!==o.items.length?e._moveIndex(!0,o,r)!==r?(this._acceptNext=n,this._model=o,this._index=r,this._listener=this._editor.onDidChangeCursorPosition((function(){i._ignore||i.reset()})),this._ckOtherSuggestions.set(!0)):this.reset():this.reset()},e._moveIndex=function(e,t,n){for(var i=n;(i=(i+t.items.length+(e?1:-1))%t.items.length)!==n&&t.items[i].completion.additionalTextEdits;);return i},e.prototype.next=function(){this._move(!0)},e.prototype.prev=function(){this._move(!1)},e.prototype._move=function(t){if(this._model)try{this._ignore=!0,this._index=e._moveIndex(t,this._model,this._index),this._acceptNext({index:this._index,item:this._model.items[this._index],model:this._model})}finally{this._ignore=!1}},e.OtherSuggestions=new Kh("hasOtherSuggestions",!1),e=JG([eZ(1,qh)],e)}(),nZ=function(){function e(t,n,i,o,r,s){this._snippetCompareFn=e._compareCompletionItems,this._items=t,this._column=n,this._wordDistance=o,this._options=r,this._refilterKind=1,this._lineContext=i,"top"===s?this._snippetCompareFn=e._compareCompletionItemsSnippetsUp:"bottom"===s&&(this._snippetCompareFn=e._compareCompletionItemsSnippetsDown)}return Object.defineProperty(e.prototype,"lineContext",{get:function(){return this._lineContext},set:function(e){this._lineContext.leadingLineContent===e.leadingLineContent&&this._lineContext.characterCountDelta===e.characterCountDelta||(this._refilterKind=this._lineContext.characterCountDelta<e.characterCountDelta&&this._filteredItems?2:1,this._lineContext=e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"items",{get:function(){return this._ensureCachedState(),this._filteredItems},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"incomplete",{get:function(){return this._ensureCachedState(),this._isIncomplete},enumerable:!0,configurable:!0}),e.prototype.adopt=function(e){for(var t=new Array,n=0;n<this._items.length;)e.has(this._items[n].provider)?n++:(t.push(this._items[n]),this._items[n]=this._items[this._items.length-1],this._items.pop());return this._refilterKind=1,t},Object.defineProperty(e.prototype,"stats",{get:function(){return this._ensureCachedState(),this._stats},enumerable:!0,configurable:!0}),e.prototype._ensureCachedState=function(){0!==this._refilterKind&&this._createCachedState()},e.prototype._createCachedState=function(){this._isIncomplete=new Set,this._stats={suggestionCount:0,snippetCount:0,textCount:0};for(var e=this._lineContext,t=e.leadingLineContent,n=e.characterCountDelta,i="",o="",r=1===this._refilterKind?this._items:this._filteredItems,s=[],a=!this._options.filterGraceful||r.length>2e3?uI:gI,u=0;u<r.length;u++){var l=r[u];l.container.incomplete&&this._isIncomplete.add(l.provider);var c=l.position.column-l.editStart.column,d=c+n-(l.position.column-this._column);if(i.length!==d&&(o=(i=0===d?"":t.slice(-d)).toLowerCase()),l.word=i,0===d)l.score=nI.Default;else{for(var h=0;h<c;){var p=i.charCodeAt(h);if(32!==p&&9!==p)break;h+=1}var f="string"==typeof l.completion.label?l.completion.label:l.completion.label.name;if(h>=d)l.score=nI.Default;else if("string"==typeof l.completion.filterText){if(!(g=a(i,o,h,l.completion.filterText,l.filterTextLow,0,!1)))continue;0===xr(l.completion.filterText,f)?l.score=g:(l.score=QE(i,o,0,f,l.labelLow,0),l.score[0]=g[0])}else{var g;if(!(g=a(i,o,h,f,l.labelLow,0,!1)))continue;l.score=g}}switch(l.idx=u,l.distance=this._wordDistance.distance(l.position,l.completion),s.push(l),this._stats.suggestionCount++,l.completion.kind){case 25:this._stats.snippetCount++;break;case 18:this._stats.textCount++}}this._filteredItems=s.sort(this._snippetCompareFn),this._refilterKind=0},e._compareCompletionItems=function(e,t){return e.score[0]>t.score[0]?-1:e.score[0]<t.score[0]?1:e.distance<t.distance?-1:e.distance>t.distance?1:e.idx<t.idx?-1:e.idx>t.idx?1:0},e._compareCompletionItemsSnippetsDown=function(t,n){if(t.completion.kind!==n.completion.kind){if(25===t.completion.kind)return 1;if(25===n.completion.kind)return-1}return e._compareCompletionItems(t,n)},e._compareCompletionItemsSnippetsUp=function(t,n){if(t.completion.kind!==n.completion.kind){if(25===t.completion.kind)return-1;if(25===n.completion.kind)return 1}return e._compareCompletionItems(t,n)},e}(),iZ=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),oZ=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},rZ=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},sZ=function(){function e(){}return e.create=function(t,n){return oZ(this,void 0,void 0,(function(){var i,o,r,s;return rZ(this,(function(a){switch(a.label){case 0:return n.getOption(89).localityBonus&&n.hasModel()?(i=n.getModel(),o=n.getPosition(),t.canComputeWordRanges(i.uri)?[4,(new zq).provideSelectionRanges(i,[o])]:[2,e.None]):[2,e.None];case 1:return(r=a.sent())&&0!==r.length&&0!==r[0].length?[4,t.computeWordRanges(i.uri,r[0][0].range)]:[2,e.None];case 2:return s=a.sent(),[2,new(function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return iZ(t,e),t.prototype.distance=function(e,t){if(!s||!o.equals(n.getPosition()))return 0;if(17===t.kind)return 2<<20;var i="string"==typeof t.label?t.label:t.label.name,a=s[i];if(Ii(a))return 2<<20;for(var u=Di(a,wn.fromPositions(e),wn.compareRangesUsingStarts),l=u>=0?a[u]:a[Math.max(0,~u-1)],c=r.length,d=0,h=r[0];d<h.length;d++){var p=h[d];if(!wn.containsRange(p.range,l))break;c-=1}return c},t}(e))]}}))}))},e.None=new(function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return iZ(t,e),t.prototype.distance=function(){return 0},t}(e)),e}(),aZ=function(){function e(e,t,n,i){this.leadingLineContent=e.getLineContent(t.lineNumber).substr(0,t.column-1),this.leadingWord=e.getWordUntilPosition(t),this.lineNumber=t.lineNumber,this.column=t.column,this.auto=n,this.shy=i}return e.shouldAutoTrigger=function(e){if(!e.hasModel())return!1;var t=e.getModel(),n=e.getPosition();t.tokenizeIfCheap(n.lineNumber);var i=t.getWordAtPosition(n);return!!i&&(i.endColumn===n.column&&!!isNaN(Number(i.word)))},e}(),uZ=function(){function e(e,t){var n=this;this._editor=e,this._editorWorker=t,this._toDispose=new Be,this._quickSuggestDelay=10,this._triggerCharacterListener=new Be,this._triggerQuickSuggest=new yi,this._state=0,this._completionDisposables=new Be,this._onDidCancel=new nt,this._onDidTrigger=new nt,this._onDidSuggest=new nt,this.onDidCancel=this._onDidCancel.event,this.onDidTrigger=this._onDidTrigger.event,this.onDidSuggest=this._onDidSuggest.event,this._currentSelection=this._editor.getSelection()||new Sn(1,1,1,1),this._toDispose.add(this._editor.onDidChangeModel((function(){n._updateTriggerCharacters(),n.cancel()}))),this._toDispose.add(this._editor.onDidChangeModelLanguage((function(){n._updateTriggerCharacters(),n.cancel()}))),this._toDispose.add(this._editor.onDidChangeConfiguration((function(){n._updateTriggerCharacters(),n._updateQuickSuggest()}))),this._toDispose.add(Eu.onDidChange((function(){n._updateTriggerCharacters(),n._updateActiveSuggestSession()}))),this._toDispose.add(this._editor.onDidChangeCursorSelection((function(e){n._onCursorChange(e)})));var i=!1;this._toDispose.add(this._editor.onDidCompositionStart((function(){i=!0}))),this._toDispose.add(this._editor.onDidCompositionEnd((function(){i=!1,n._refilterCompletionItems()}))),this._toDispose.add(this._editor.onDidChangeModelContent((function(){i||n._refilterCompletionItems()}))),this._updateTriggerCharacters(),this._updateQuickSuggest()}return e.prototype.dispose=function(){Ae(this._triggerCharacterListener),Ae([this._onDidCancel,this._onDidSuggest,this._onDidTrigger,this._triggerQuickSuggest]),this._toDispose.dispose(),this._completionDisposables.dispose(),this.cancel()},e.prototype._updateQuickSuggest=function(){this._quickSuggestDelay=this._editor.getOption(67),(isNaN(this._quickSuggestDelay)||!this._quickSuggestDelay&&0!==this._quickSuggestDelay||this._quickSuggestDelay<0)&&(this._quickSuggestDelay=10)},e.prototype._updateTriggerCharacters=function(){var e=this;if(this._triggerCharacterListener.clear(),!this._editor.getOption(68)&&this._editor.hasModel()&&this._editor.getOption(92)){for(var t=new Map,n=0,i=Eu.all(this._editor.getModel());n<i.length;n++)for(var o=i[n],r=0,s=o.triggerCharacters||[];r<s.length;r++){var a=s[r],u=t.get(a);u||((u=new Set).add(void 0),t.set(a,u)),u.add(o)}var l=function(n){if(!n){var i=e._editor.getPosition();n=e._editor.getModel().getLineContent(i.lineNumber).substr(0,i.column-1)}var o="";Pr(n.charCodeAt(n.length-1))?Tr(n.charCodeAt(n.length-2))&&(o=n.substr(n.length-2)):o=n.charAt(n.length-1);var r=t.get(o);if(r){var s=e._completionModel?e._completionModel.adopt(r):void 0;e.trigger({auto:!0,shy:!1,triggerCharacter:o},Boolean(e._completionModel),r,s)}};this._triggerCharacterListener.add(this._editor.onDidType(l)),this._triggerCharacterListener.add(this._editor.onDidCompositionEnd(l))}},Object.defineProperty(e.prototype,"state",{get:function(){return this._state},enumerable:!0,configurable:!0}),e.prototype.cancel=function(e){void 0===e&&(e=!1),0!==this._state&&(this._triggerQuickSuggest.cancel(),this._requestToken&&(this._requestToken.cancel(),this._requestToken=void 0),this._state=0,this._completionModel=void 0,this._context=void 0,this._onDidCancel.fire({retrigger:e}))},e.prototype.clear=function(){this._completionDisposables.clear()},e.prototype._updateActiveSuggestSession=function(){0!==this._state&&(this._editor.hasModel()&&Eu.has(this._editor.getModel())?this.trigger({auto:2===this._state,shy:!1},!0):this.cancel())},e.prototype._onCursorChange=function(e){var t=this;if(this._editor.hasModel()){var n=this._editor.getModel(),i=this._currentSelection;if(this._currentSelection=this._editor.getSelection(),!e.selection.isEmpty()||0!==e.reason||"keyboard"!==e.source&&"deleteLeft"!==e.source)this.cancel();else if(Eu.has(n)&&0===this._state){if(!1===this._editor.getOption(66))return;if(!i.containsRange(this._currentSelection)&&!i.getEndPosition().isBeforeOrEqual(this._currentSelection.getPosition()))return;if(this._editor.getOption(89).snippetsPreventQuickSuggestions&&HG.get(this._editor).isInSnippet())return;this.cancel(),this._triggerQuickSuggest.cancelAndSet((function(){if(0===t._state&&aZ.shouldAutoTrigger(t._editor)&&t._editor.hasModel()){var e=t._editor.getModel(),n=t._editor.getPosition(),i=t._editor.getOption(66);if(!1!==i){if(!0===i);else{e.tokenizeIfCheap(n.lineNumber);var o=e.getLineTokens(n.lineNumber),r=o.getStandardTokenType(o.findTokenIndexAtOffset(Math.max(n.column-1-1,0)));if(!(i.other&&0===r||i.comments&&1===r||i.strings&&2===r))return}t.trigger({auto:!0,shy:!1})}}}),this._quickSuggestDelay)}}},e.prototype._refilterCompletionItems=function(){var e=this;Promise.resolve().then((function(){if(0!==e._state&&e._editor.hasModel()){var t=e._editor.getModel(),n=e._editor.getPosition(),i=new aZ(t,n,2===e._state,!1);e._onNewContext(i)}}))},e.prototype.trigger=function(t,n,i,o){var r=this;if(void 0===n&&(n=!1),this._editor.hasModel()){var s,a=this._editor.getModel(),u=t.auto,l=new aZ(a,this._editor.getPosition(),u,t.shy);this.cancel(n),this._state=u?2:1,this._onDidTrigger.fire({auto:u,shy:t.shy,position:this._editor.getPosition()}),this._context=l,s=t.triggerCharacter?{triggerKind:1,triggerCharacter:t.triggerCharacter}:i&&i.size>0?{triggerKind:2}:{triggerKind:0},this._requestToken=new ct;var c=this._editor.getOption(86),d=1;switch(c){case"top":d=0;break;case"bottom":d=2}var h=e._createItemKindFilter(this._editor),p=sZ.create(this._editorWorker,this._editor),f=rG(a,this._editor.getPosition(),new oG(d,h,i),s,this._requestToken.token);Promise.all([f,p]).then((function(e){var n=e[0],i=e[1];if(Ae(r._requestToken),0!==r._state&&r._editor.hasModel()){var s=r._editor.getModel();if(Oi(o)){var a=uG(d);n=n.concat(o).sort(a)}var l=new aZ(s,r._editor.getPosition(),u,t.shy);r._completionModel=new nZ(n,r._context.column,{leadingLineContent:l.leadingLineContent,characterCountDelta:l.column-r._context.column},i,r._editor.getOption(89),r._editor.getOption(86));for(var c=0,h=n;c<h.length;c++){var p=h[c];Re(p.container)&&r._completionDisposables.add(p.container)}r._onNewContext(l)}})).catch(De)}},e._createItemKindFilter=function(e){var t=new Set;"none"===e.getOption(86)&&t.add(25);var n=e.getOption(89);return n.showMethods||t.add(0),n.showFunctions||t.add(1),n.showConstructors||t.add(2),n.showFields||t.add(3),n.showVariables||t.add(4),n.showClasses||t.add(5),n.showStructs||t.add(6),n.showInterfaces||t.add(7),n.showModules||t.add(8),n.showProperties||t.add(9),n.showEvents||t.add(10),n.showOperators||t.add(11),n.showUnits||t.add(12),n.showValues||t.add(13),n.showConstants||t.add(14),n.showEnums||t.add(15),n.showEnumMembers||t.add(16),n.showKeywords||t.add(17),n.showWords||t.add(18),n.showColors||t.add(19),n.showFiles||t.add(20),n.showReferences||t.add(21),n.showColors||t.add(22),n.showFolders||t.add(23),n.showTypeParameters||t.add(24),n.showSnippets||t.add(25),t},e.prototype._onNewContext=function(e){if(this._context)if(e.lineNumber===this._context.lineNumber){if(e.leadingWord.startColumn<this._context.leadingWord.startColumn)this.cancel();else if(e.column<this._context.column)e.leadingWord.word?this.trigger({auto:this._context.auto,shy:!1},!0):this.cancel();else if(this._completionModel)if(e.column>this._context.column&&this._completionModel.incomplete.size>0&&0!==e.leadingWord.word.length){var t=this._completionModel.incomplete,n=this._completionModel.adopt(t);this.trigger({auto:2===this._state,shy:!1},!0,t,n)}else{var i=this._completionModel.lineContext,o=!1;if(this._completionModel.lineContext={leadingLineContent:e.leadingLineContent,characterCountDelta:e.column-this._context.column},0===this._completionModel.items.length){if(aZ.shouldAutoTrigger(this._editor)&&this._context.leadingWord.endColumn<e.leadingWord.startColumn)return void this.trigger({auto:this._context.auto,shy:!1},!0);if(this._context.auto)return void this.cancel();if(this._completionModel.lineContext=i,(o=this._completionModel.items.length>0)&&0===e.leadingWord.word.length)return void this.cancel()}this._onDidSuggest.fire({completionModel:this._completionModel,auto:this._context.auto,shy:this._context.shy,isFrozen:o})}}else this.cancel()},e}(),lZ=(n(422),n(423),n(424),n(425),n(426),n(427),D_("symbolIcon.arrayForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.arrayForeground","The foreground color for array symbols. These symbols appear in the outline, breadcrumb, and suggest widget."))),cZ=D_("symbolIcon.booleanForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.booleanForeground","The foreground color for boolean symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),dZ=D_("symbolIcon.classForeground",{dark:"#EE9D28",light:"#D67E00",hc:"#EE9D28"},r("symbolIcon.classForeground","The foreground color for class symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),hZ=D_("symbolIcon.colorForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.colorForeground","The foreground color for color symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),pZ=D_("symbolIcon.constantForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.constantForeground","The foreground color for constant symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),fZ=D_("symbolIcon.constructorForeground",{dark:"#B180D7",light:"#652D90",hc:"#B180D7"},r("symbolIcon.constructorForeground","The foreground color for constructor symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),gZ=D_("symbolIcon.enumeratorForeground",{dark:"#EE9D28",light:"#D67E00",hc:"#EE9D28"},r("symbolIcon.enumeratorForeground","The foreground color for enumerator symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),mZ=D_("symbolIcon.enumeratorMemberForeground",{dark:"#75BEFF",light:"#007ACC",hc:"#75BEFF"},r("symbolIcon.enumeratorMemberForeground","The foreground color for enumerator member symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),vZ=D_("symbolIcon.eventForeground",{dark:"#EE9D28",light:"#D67E00",hc:"#EE9D28"},r("symbolIcon.eventForeground","The foreground color for event symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),_Z=D_("symbolIcon.fieldForeground",{dark:"#75BEFF",light:"#007ACC",hc:"#75BEFF"},r("symbolIcon.fieldForeground","The foreground color for field symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),yZ=D_("symbolIcon.fileForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.fileForeground","The foreground color for file symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),bZ=D_("symbolIcon.folderForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.folderForeground","The foreground color for folder symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),wZ=D_("symbolIcon.functionForeground",{dark:"#B180D7",light:"#652D90",hc:"#B180D7"},r("symbolIcon.functionForeground","The foreground color for function symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),CZ=D_("symbolIcon.interfaceForeground",{dark:"#75BEFF",light:"#007ACC",hc:"#75BEFF"},r("symbolIcon.interfaceForeground","The foreground color for interface symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),SZ=D_("symbolIcon.keyForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.keyForeground","The foreground color for key symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),LZ=D_("symbolIcon.keywordForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.keywordForeground","The foreground color for keyword symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),xZ=D_("symbolIcon.methodForeground",{dark:"#B180D7",light:"#652D90",hc:"#B180D7"},r("symbolIcon.methodForeground","The foreground color for method symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),DZ=D_("symbolIcon.moduleForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.moduleForeground","The foreground color for module symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),NZ=D_("symbolIcon.namespaceForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.namespaceForeground","The foreground color for namespace symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),kZ=D_("symbolIcon.nullForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.nullForeground","The foreground color for null symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),EZ=D_("symbolIcon.numberForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.numberForeground","The foreground color for number symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),IZ=D_("symbolIcon.objectForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.objectForeground","The foreground color for object symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),OZ=D_("symbolIcon.operatorForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.operatorForeground","The foreground color for operator symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),MZ=D_("symbolIcon.packageForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.packageForeground","The foreground color for package symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),TZ=D_("symbolIcon.propertyForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.propertyForeground","The foreground color for property symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),PZ=D_("symbolIcon.referenceForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.referenceForeground","The foreground color for reference symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),RZ=D_("symbolIcon.snippetForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.snippetForeground","The foreground color for snippet symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),AZ=D_("symbolIcon.stringForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.stringForeground","The foreground color for string symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),FZ=D_("symbolIcon.structForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.structForeground","The foreground color for struct symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),WZ=D_("symbolIcon.textForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.textForeground","The foreground color for text symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),VZ=D_("symbolIcon.typeParameterForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.typeParameterForeground","The foreground color for type parameter symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),BZ=D_("symbolIcon.unitForeground",{dark:E_,light:E_,hc:E_},r("symbolIcon.unitForeground","The foreground color for unit symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),HZ=D_("symbolIcon.variableForeground",{dark:"#75BEFF",light:"#007ACC",hc:"#75BEFF"},r("symbolIcon.variableForeground","The foreground color for variable symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));function zZ(e,t,n,i){var o=i===QG.ROOT_FOLDER?["rootfolder-icon"]:i===QG.FOLDER?["folder-icon"]:["file-icon"];if(n){var r;if(n.scheme===Ci.data)r=bs.parseMetaData(n).get(bs.META_DATA_LABEL);else r=jZ(Ss(n).toLowerCase());if(i===QG.FOLDER)o.push(r+"-name-folder-icon");else{if(r){o.push(r+"-name-file-icon");for(var s=r.split("."),a=1;a<s.length;a++)o.push(s.slice(a).join(".")+"-ext-file-icon");o.push("ext-file-icon")}var u=function(e,t,n){if(!n)return null;var i=null;if(n.scheme===Ci.data){var o=bs.parseMetaData(n).get(bs.META_DATA_MIME);o&&(i=t.getModeId(o))}else{var r=e.getModel(n);r&&(i=r.getModeId())}if(i&&"plaintext"!==i)return i;return t.getModeIdByFilepathOrFirstLine(n)}(e,t,n);u&&o.push(jZ(u)+"-lang-file-icon")}}return o}function jZ(e){return e.replace(/\s/g,"\\$&")}yg((function(e,t){var n=e.getColor(lZ);n&&t.addRule(".codicon-symbol-array { color: "+n+" !important; }");var i=e.getColor(cZ);i&&t.addRule(".codicon-symbol-boolean { color: "+i+" !important; }");var o=e.getColor(dZ);o&&t.addRule(".codicon-symbol-class { color: "+o+" !important; }");var r=e.getColor(xZ);r&&t.addRule(".codicon-symbol-method { color: "+r+" !important; }");var s=e.getColor(hZ);s&&t.addRule(".codicon-symbol-color { color: "+s+" !important; }");var a=e.getColor(pZ);a&&t.addRule(".codicon-symbol-constant { color: "+a+" !important; }");var u=e.getColor(fZ);u&&t.addRule(".codicon-symbol-constructor { color: "+u+" !important; }");var l=e.getColor(gZ);l&&t.addRule("\n\t\t\t.codicon-symbol-value,.codicon-symbol-enum { color: "+l+" !important; }");var c=e.getColor(mZ);c&&t.addRule(".codicon-symbol-enum-member { color: "+c+" !important; }");var d=e.getColor(vZ);d&&t.addRule(".codicon-symbol-event { color: "+d+" !important; }");var h=e.getColor(_Z);h&&t.addRule(".codicon-symbol-field { color: "+h+" !important; }");var p=e.getColor(yZ);p&&t.addRule(".codicon-symbol-file { color: "+p+" !important; }");var f=e.getColor(bZ);f&&t.addRule(".codicon-symbol-folder { color: "+f+" !important; }");var g=e.getColor(wZ);g&&t.addRule(".codicon-symbol-function { color: "+g+" !important; }");var m=e.getColor(CZ);m&&t.addRule(".codicon-symbol-interface { color: "+m+" !important; }");var v=e.getColor(SZ);v&&t.addRule(".codicon-symbol-key { color: "+v+" !important; }");var _=e.getColor(LZ);_&&t.addRule(".codicon-symbol-keyword { color: "+_+" !important; }");var y=e.getColor(DZ);y&&t.addRule(".codicon-symbol-module { color: "+y+" !important; }");var b=e.getColor(NZ);b&&t.addRule(".codicon-symbol-namespace { color: "+b+" !important; }");var w=e.getColor(kZ);w&&t.addRule(".codicon-symbol-null { color: "+w+" !important; }");var C=e.getColor(EZ);C&&t.addRule(".codicon-symbol-number { color: "+C+" !important; }");var S=e.getColor(IZ);S&&t.addRule(".codicon-symbol-object { color: "+S+" !important; }");var L=e.getColor(OZ);L&&t.addRule(".codicon-symbol-operator { color: "+L+" !important; }");var x=e.getColor(MZ);x&&t.addRule(".codicon-symbol-package { color: "+x+" !important; }");var D=e.getColor(TZ);D&&t.addRule(".codicon-symbol-property { color: "+D+" !important; }");var N=e.getColor(PZ);N&&t.addRule(".codicon-symbol-reference { color: "+N+" !important; }");var k=e.getColor(RZ);k&&t.addRule(".codicon-symbol-snippet { color: "+k+" !important; }");var E=e.getColor(AZ);E&&t.addRule(".codicon-symbol-string { color: "+E+" !important; }");var I=e.getColor(FZ);I&&t.addRule(".codicon-symbol-struct { color: "+I+" !important; }");var O=e.getColor(WZ);O&&t.addRule(".codicon-symbol-text { color: "+O+" !important; }");var M=e.getColor(VZ);M&&t.addRule(".codicon-symbol-type-parameter { color: "+M+" !important; }");var T=e.getColor(BZ);T&&t.addRule(".codicon-symbol-unit { color: "+T+" !important; }");var P=e.getColor(HZ);P&&t.addRule(".codicon-symbol-variable { color: "+P+" !important; }")})),function(e){e[e.FILE=0]="FILE",e[e.FOLDER=1]="FOLDER",e[e.ROOT_FOLDER=2]="ROOT_FOLDER"}(QG||(QG={}));var UZ=function(){return(UZ=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},KZ=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},qZ=function(e,t){return function(n,i){t(n,i,e)}},GZ=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},ZZ=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}},YZ=D_("editorSuggestWidget.background",{dark:_y,light:_y,hc:_y},r("editorSuggestWidgetBackground","Background color of the suggest widget.")),XZ=D_("editorSuggestWidget.border",{dark:by,light:by,hc:by},r("editorSuggestWidgetBorder","Border color of the suggest widget.")),$Z=D_("editorSuggestWidget.foreground",{dark:vy,light:vy,hc:vy},r("editorSuggestWidgetForeground","Foreground color of the suggest widget.")),QZ=D_("editorSuggestWidget.selectedBackground",{dark:Zy,light:Zy,hc:Zy},r("editorSuggestWidgetSelectedBackground","Background color of the selected entry in the suggest widget.")),JZ=D_("editorSuggestWidget.highlightForeground",{dark:ob,light:ob,hc:ob},r("editorSuggestWidgetHighlightForeground","Color of the match highlights in the suggest widget.")),eY=/^(#([\da-f]{3}){1,2}|(rgb|hsl)a\(\s*(\d{1,3}%?\s*,\s*){3}(1|0?\.\d+)\)|(rgb|hsl)\(\s*\d{1,3}%?(\s*,\s*\d{1,3}%?){2}\s*\))$/i;function tY(e){if(!e)return!1;var t=e.completion;return!!t.documentation||t.detail&&t.detail!==t.label}function nY(e){return"suggest-aria-id:"+e}var iY=function(){function e(e,t,n,i,o,r){this.widget=e,this.editor=t,this.triggerKeybindingLabel=n,this._modelService=i,this._modeService=o,this._themeService=r}return Object.defineProperty(e.prototype,"templateId",{get:function(){return"suggestion"},enumerable:!0,configurable:!0}),e.prototype.renderTemplate=function(e){var t=this,n=Object.create(null);n.disposables=new Be,n.root=e,no(n.root,"show-file-icons"),n.icon=Xo(e,er(".icon")),n.colorspan=Xo(n.icon,er("span.colorspan"));var i=Xo(e,er(".contents")),o=Xo(i,er(".main"));n.left=Xo(o,er("span.left")),n.right=Xo(o,er("span.right")),n.iconContainer=Xo(n.left,er(".icon-label.codicon")),n.iconLabel=new AH(n.left,{supportHighlights:!0,supportCodicons:!0}),n.disposables.add(n.iconLabel),n.signatureLabel=Xo(n.left,er("span.signature-label")),n.qualifierLabel=Xo(n.left,er("span.qualifier-label")),n.detailsLabel=Xo(n.right,er("span.details-label")),n.readMore=Xo(n.right,er("span.readMore.codicon.codicon-info")),n.readMore.title=r("readMore","Read More...{0}",this.triggerKeybindingLabel);var s=function(){var e=t.editor.getOptions(),i=e.get(34),r=i.fontFamily,s=i.fontFeatureSettings,a=e.get(90)||i.fontSize,u=e.get(91)||i.lineHeight,l=i.fontWeight,c=a+"px",d=u+"px";n.root.style.fontSize=c,n.root.style.fontWeight=l,o.style.fontFamily=r,o.style.fontFeatureSettings=s,o.style.lineHeight=d,n.icon.style.height=d,n.icon.style.width=d,n.readMore.style.height=d,n.readMore.style.width=d};return s(),n.disposables.add(Ge.chain(this.editor.onDidChangeConfiguration.bind(this.editor)).filter((function(e){return e.hasChanged(34)||e.hasChanged(90)||e.hasChanged(91)})).on(s,null)),n},e.prototype.renderElement=function(e,t,n){var i=this,o=n,r=e.completion,s="string"==typeof r.label?r.label:r.label.name;o.root.id=nY(t),o.icon.className="icon "+Cu(r.kind),o.colorspan.style.backgroundColor="";var a,u,l,c={labelEscapeNewLines:!0,matches:JE(e.score)},d=[];if(19===r.kind&&(u=d,(l="string"==typeof(a=e).completion.label?a.completion.label:a.completion.label.name).match(eY)?(u[0]=l,1):"string"==typeof a.completion.documentation&&a.completion.documentation.match(eY)&&(u[0]=a.completion.documentation,1)))o.icon.className="icon customcolor",o.iconContainer.className="icon hide",o.colorspan.style.backgroundColor=d[0];else if(20===r.kind&&this._themeService.getIconTheme().hasFileIcons){o.icon.className="icon hide",o.iconContainer.className="icon hide";var h=zZ(this._modelService,this._modeService,Et.from({scheme:"fake",path:s}),QG.FILE),p=zZ(this._modelService,this._modeService,Et.from({scheme:"fake",path:r.detail}),QG.FILE);c.extraClasses=h.length>p.length?h:p}else 23===r.kind&&this._themeService.getIconTheme().hasFolderIcons?(o.icon.className="icon hide",o.iconContainer.className="icon hide",c.extraClasses=Fi([zZ(this._modelService,this._modeService,Et.from({scheme:"fake",path:s}),QG.FOLDER),zZ(this._modelService,this._modeService,Et.from({scheme:"fake",path:r.detail}),QG.FOLDER)])):(o.icon.className="icon hide",o.iconContainer.className="",io(o.iconContainer,"suggest-icon codicon codicon-symbol-"+Cu(r.kind)));r.tags&&r.tags.indexOf(1)>=0&&(c.extraClasses=(c.extraClasses||[]).concat(["deprecated"]),c.matches=[]),o.iconLabel.setLabel(s,void 0,c),"string"==typeof r.label?(o.signatureLabel.textContent="",o.qualifierLabel.textContent="",o.detailsLabel.textContent=(r.detail||"").replace(/\n.*$/m,""),oo(o.right,"always-show-details")):(o.signatureLabel.textContent=(r.label.signature||"").replace(/\n.*$/m,""),o.qualifierLabel.textContent=(r.label.qualifier||"").replace(/\n.*$/m,""),o.detailsLabel.textContent=(r.label.type||"").replace(/\n.*$/m,""),no(o.right,"always-show-details")),tY(e)?(no(o.right,"can-expand-details"),tr(o.readMore),o.readMore.onmousedown=function(e){e.stopPropagation(),e.preventDefault()},o.readMore.onclick=function(e){e.stopPropagation(),e.preventDefault(),i.widget.toggleDetails()}):(oo(o.right,"can-expand-details"),nr(o.readMore),o.readMore.onmousedown=null,o.readMore.onclick=null)},e.prototype.disposeTemplate=function(e){e.disposables.dispose()},e=KZ([qZ(3,du),qZ(4,lN),qZ(5,fg)],e)}(),oY=function(){function e(e,t,n,i,o){var s=this;this.widget=t,this.editor=n,this.markdownRenderer=i,this.kbToggleDetails=o,this.borderWidth=1,this.disposables=new Be,this.el=Xo(e,er(".details")),this.disposables.add(We((function(){return e.removeChild(s.el)}))),this.body=er(".body"),this.scrollbar=new gS(this.body,{}),Xo(this.el,this.scrollbar.getDomNode()),this.disposables.add(this.scrollbar),this.header=Xo(this.body,er(".header")),this.close=Xo(this.header,er("span.codicon.codicon-close")),this.close.title=r("readLess","Read less...{0}",this.kbToggleDetails),this.type=Xo(this.header,er("p.type")),this.docs=Xo(this.body,er("p.docs")),this.configureFont(),Ge.chain(this.editor.onDidChangeConfiguration.bind(this.editor)).filter((function(e){return e.hasChanged(34)})).on(this.configureFont,this,this.disposables),i.onDidRenderCodeBlock((function(){return s.scrollbar.scanDomNode()}),this,this.disposables)}return Object.defineProperty(e.prototype,"element",{get:function(){return this.el},enumerable:!0,configurable:!0}),e.prototype.renderLoading=function(){this.type.textContent=r("loading","Loading..."),this.docs.textContent=""},e.prototype.renderItem=function(e,t){var n=this;this.renderDisposeable=Ae(this.renderDisposeable);var i=e.completion,o=i.documentation,r=i.detail;if(t){var s="";s+="score: "+e.score[0]+(e.word?", compared '"+(e.completion.filterText&&e.completion.filterText+" (filterText)"||e.completion.label)+"' with '"+e.word+"'":" (no prefix)")+"\n",s+="distance: "+e.distance+", see localityBonus-setting\n",s+="index: "+e.idx+", based on "+(e.completion.sortText&&'sortText: "'+e.completion.sortText+'"'||"label")+"\n",o=(new uj).appendCodeblock("empty",s),r="Provider: "+e.provider._debugDisplayName}if(!t&&!tY(e))return this.type.textContent="",this.docs.textContent="",void no(this.el,"no-docs");if(oo(this.el,"no-docs"),"string"==typeof o)oo(this.docs,"markdown-docs"),this.docs.textContent=o;else{no(this.docs,"markdown-docs"),this.docs.innerHTML="";var a=this.markdownRenderer.render(o);this.renderDisposeable=a,this.docs.appendChild(a.element)}r?(this.type.innerText=r,tr(this.type)):(this.type.innerText="",nr(this.type)),this.el.style.height=this.header.offsetHeight+this.docs.offsetHeight+2*this.borderWidth+"px",this.el.style.userSelect="text",this.el.tabIndex=-1,this.close.onmousedown=function(e){e.preventDefault(),e.stopPropagation()},this.close.onclick=function(e){e.preventDefault(),e.stopPropagation(),n.widget.toggleDetails()},this.body.scrollTop=0,this.scrollbar.scanDomNode()},e.prototype.scrollDown=function(e){void 0===e&&(e=8),this.body.scrollTop+=e},e.prototype.scrollUp=function(e){void 0===e&&(e=8),this.body.scrollTop-=e},e.prototype.scrollTop=function(){this.body.scrollTop=0},e.prototype.scrollBottom=function(){this.body.scrollTop=this.body.scrollHeight},e.prototype.pageDown=function(){this.scrollDown(80)},e.prototype.pageUp=function(){this.scrollUp(80)},e.prototype.setBorderWidth=function(e){this.borderWidth=e},e.prototype.configureFont=function(){var e=this.editor.getOptions(),t=e.get(34),n=t.fontFamily,i=e.get(90)||t.fontSize,o=e.get(91)||t.lineHeight,r=t.fontWeight,s=i+"px",a=o+"px";this.el.style.fontSize=s,this.el.style.fontWeight=r,this.el.style.fontFeatureSettings=t.fontFeatureSettings,this.type.style.fontFamily=n,this.close.style.height=a,this.close.style.width=a},e.prototype.dispose=function(){this.disposables.dispose(),this.renderDisposeable=Ae(this.renderDisposeable)},e}(),rY=function(){function e(e,t,n,i,o,s,a,u,l){var c,d,h=this;this.editor=e,this.telemetryService=t,this.keybindingService=n,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this.state=null,this.isAuto=!1,this.loadingTimeout=He.None,this.currentSuggestionDetails=null,this.ignoreFocusEvents=!1,this.completionModel=null,this.showTimeout=new yi,this.toDispose=new Be,this.onDidSelectEmitter=new nt,this.onDidFocusEmitter=new nt,this.onDidHideEmitter=new nt,this.onDidShowEmitter=new nt,this.onDidSelect=this.onDidSelectEmitter.event,this.onDidFocus=this.onDidFocusEmitter.event,this.onDidHide=this.onDidHideEmitter.event,this.onDidShow=this.onDidShowEmitter.event,this.maxWidgetWidth=660,this.listWidth=330,this.firstFocusInCurrentList=!1,this.preferDocPositionTop=!1,this.docsPositionPreviousWidgetY=null,this.explainMode=!1,this._onDetailsKeydown=new nt,this.onDetailsKeyDown=this._onDetailsKeydown.event;var p=this.toDispose.add(new _U(e,a,u)),f=null!==(d=null===(c=n.lookupKeybinding("toggleSuggestionDetails"))||void 0===c?void 0:c.getLabel())&&void 0!==d?d:"";this.msgDetailsLess=r("detail.less","{0} for less...",f),this.msgDetailMore=r("detail.more","{0} for more...",f),this.isAuto=!1,this.focusedItem=null,this.storageService=s,this.element=er(".editor-widget.suggest-widget"),this.toDispose.add(uo(this.element,"click",(function(e){e.target===h.element&&h.hideWidget()}))),this.messageElement=Xo(this.element,er(".message")),this.listElement=Xo(this.element,er(".tree"));var g=function(){return so(h.element,"with-status-bar",!h.editor.getOption(89).hideStatusBar)};g(),this.statusBarElement=Xo(this.element,er(".suggest-status-bar")),this.statusBarLeftSpan=Xo(this.statusBarElement,er("span")),this.statusBarRightSpan=Xo(this.statusBarElement,er("span")),this.setStatusBarLeftText(""),this.setStatusBarRightText(""),this.details=l.createInstance(oY,this.element,this,this.editor,p,f);var m=function(){return so(h.element,"no-icons",!h.editor.getOption(89).showIcons)};m();var v=l.createInstance(iY,this,this.editor,f);this.list=new KI("SuggestWidget",this.listElement,this,[v],{useShadows:!1,openController:{shouldOpen:function(){return!1}},mouseSupport:!1,accessibilityProvider:{getAriaLabel:function(e){var t="string"==typeof e.completion.label?e.completion.label:e.completion.label.name;if(e.isResolved&&h.expandDocsSettingFromStorage()){var n=e.completion,i=n.documentation;return r("ariaCurrenttSuggestionReadDetails","Item {0}, docs: {1}",t,pr("{0}{1}",n.detail||"",i?"string"==typeof i?i:i.value:""))}return t}}}),this.toDispose.add(Gk(this.list,o,{listInactiveFocusBackground:QZ,listInactiveFocusOutline:T_})),this.toDispose.add(o.onThemeChange((function(e){return h.onThemeChange(e)}))),this.toDispose.add(e.onDidLayoutChange((function(){return h.onEditorLayoutChange()}))),this.toDispose.add(this.list.onMouseDown((function(e){return h.onListMouseDownOrTap(e)}))),this.toDispose.add(this.list.onTap((function(e){return h.onListMouseDownOrTap(e)}))),this.toDispose.add(this.list.onSelectionChange((function(e){return h.onListSelection(e)}))),this.toDispose.add(this.list.onFocusChange((function(e){return h.onListFocus(e)}))),this.toDispose.add(this.editor.onDidChangeCursorSelection((function(){return h.onCursorSelectionChanged()}))),this.toDispose.add(this.editor.onDidChangeConfiguration((function(e){e.hasChanged(89)&&(g(),m())}))),this.suggestWidgetVisible=nG.Visible.bindTo(i),this.suggestWidgetMultipleSuggestions=nG.MultipleSuggestions.bindTo(i),this.editor.addContentWidget(this),this.setState(0),this.onThemeChange(o.getTheme()),this.toDispose.add(co(this.details.element,"keydown",(function(e){h._onDetailsKeydown.fire(e)}))),this.toDispose.add(this.editor.onMouseDown((function(e){return h.onEditorMouseDown(e)})))}return e.prototype.onEditorMouseDown=function(e){this.details.element.contains(e.target.element)?this.details.element.focus():this.element.contains(e.target.element)&&this.editor.focus()},e.prototype.onCursorSelectionChanged=function(){0!==this.state&&this.editor.layoutContentWidget(this)},e.prototype.onEditorLayoutChange=function(){3!==this.state&&5!==this.state||!this.expandDocsSettingFromStorage()||this.expandSideOrBelow()},e.prototype.onListMouseDownOrTap=function(e){void 0!==e.element&&void 0!==e.index&&(e.browserEvent.preventDefault(),e.browserEvent.stopPropagation(),this.select(e.element,e.index))},e.prototype.onListSelection=function(e){e.elements.length&&this.select(e.elements[0],e.indexes[0])},e.prototype.select=function(e,t){var n=this.completionModel;n&&(this.onDidSelectEmitter.fire({item:e,index:t,model:n}),this.editor.focus())},e.prototype.onThemeChange=function(e){var t=e.getColor(YZ);t&&(this.listElement.style.backgroundColor=t.toString(),this.statusBarElement.style.backgroundColor=t.toString(),this.details.element.style.backgroundColor=t.toString(),this.messageElement.style.backgroundColor=t.toString());var n=e.getColor(XZ);n&&(this.listElement.style.borderColor=n.toString(),this.statusBarElement.style.borderColor=n.toString(),this.details.element.style.borderColor=n.toString(),this.messageElement.style.borderColor=n.toString(),this.detailsBorderColor=n.toString());var i=e.getColor(O_);i&&(this.detailsFocusBorderColor=i.toString()),this.details.setBorderWidth("hc"===e.type?2:1)},e.prototype.onListFocus=function(e){var t,n,i=this;if(!this.ignoreFocusEvents){if(!e.elements.length)return this.currentSuggestionDetails&&(this.currentSuggestionDetails.cancel(),this.currentSuggestionDetails=null,this.focusedItem=null),void this.editor.setAriaOptions({activeDescendant:void 0});if(this.completionModel){var o=e.elements[0],s=e.indexes[0];if(this.firstFocusInCurrentList=!this.focusedItem,o!==this.focusedItem){var a="insert"===this.editor.getOption(89).insertMode,u=null===(t=this.keybindingService.lookupKeybinding("acceptSelectedSuggestion"))||void 0===t?void 0:t.getLabel(),l=null===(n=this.keybindingService.lookupKeybinding("acceptAlternativeSelectedSuggestion"))||void 0===n?void 0:n.getLabel();bn.equals(o.editInsertEnd,o.editReplaceEnd)?this.setStatusBarLeftText(r("accept","{0} to accept",u)):a?this.setStatusBarLeftText(r("insert","{0} to insert, {1} to replace",u,l)):this.setStatusBarLeftText(r("replace","{0} to replace, {1} to insert",u,l)),this.currentSuggestionDetails&&(this.currentSuggestionDetails.cancel(),this.currentSuggestionDetails=null),this.focusedItem=o,this.list.reveal(s),this.currentSuggestionDetails=hi((function(e){return GZ(i,void 0,void 0,(function(){var t,n,i=this;return ZZ(this,(function(r){switch(r.label){case 0:return t=mi((function(){return i.showDetails(!0)}),250),e.onCancellationRequested((function(){return t.dispose()})),[4,o.resolve(e)];case 1:return n=r.sent(),t.dispose(),[2,n]}}))}))})),this.currentSuggestionDetails.then((function(){s>=i.list.length||o!==i.list.element(s)||(i.ignoreFocusEvents=!0,i.list.splice(s,1,[o]),i.list.setFocus([s]),i.ignoreFocusEvents=!1,i.expandDocsSettingFromStorage()?i.showDetails(!1):oo(i.element,"docs-side"),tY(i.focusedItem)?i.expandDocsSettingFromStorage()?i.setStatusBarRightText(i.msgDetailsLess):i.setStatusBarRightText(i.msgDetailMore):i.statusBarRightSpan.innerText="",i.editor.setAriaOptions({activeDescendant:nY(s)}))})).catch(De)}this.onDidFocusEmitter.fire({item:o,index:s,model:this.completionModel})}}},e.prototype.setState=function(t){if(this.element){var n=this.state!==t;switch(this.state=t,so(this.element,"frozen",4===t),t){case 0:nr(this.messageElement,this.details.element,this.listElement,this.statusBarElement),this.hide(),this.listHeight=0,n&&this.list.splice(0,this.list.length),this.focusedItem=null;break;case 1:this.messageElement.textContent=e.LOADING_MESSAGE,nr(this.listElement,this.details.element,this.statusBarElement),tr(this.messageElement),oo(this.element,"docs-side"),this.show(),this.focusedItem=null;break;case 2:this.messageElement.textContent=e.NO_SUGGESTIONS_MESSAGE,nr(this.listElement,this.details.element,this.statusBarElement),tr(this.messageElement),oo(this.element,"docs-side"),this.show(),this.focusedItem=null;break;case 3:nr(this.messageElement),tr(this.listElement,this.statusBarElement),this.show();break;case 4:nr(this.messageElement),tr(this.listElement),this.show();break;case 5:nr(this.messageElement),tr(this.details.element,this.listElement,this.statusBarElement),this.show()}}},e.prototype.showTriggered=function(e,t){var n=this;0===this.state&&(this.isAuto=!!e,this.isAuto||(this.loadingTimeout=mi((function(){return n.setState(1)}),t)))},e.prototype.showSuggestions=function(e,t,n,i){if(this.preferDocPositionTop=!1,this.docsPositionPreviousWidgetY=null,this.loadingTimeout.dispose(),this.currentSuggestionDetails&&(this.currentSuggestionDetails.cancel(),this.currentSuggestionDetails=null),this.completionModel!==e&&(this.completionModel=e),n&&2!==this.state&&0!==this.state)this.setState(4);else{var o=this.completionModel.items.length,r=0===o;if(this.suggestWidgetMultipleSuggestions.set(o>1),r)i?this.setState(0):this.setState(2),this.completionModel=null;else{if(3!==this.state){var s=this.completionModel.stats;s.wasAutomaticallyTriggered=!!i,this.telemetryService.publicLog("suggestWidget",UZ({},s))}this.focusedItem=null,this.list.splice(0,this.list.length,this.completionModel.items),n?this.setState(4):this.setState(3),this.list.reveal(t,0),this.list.setFocus([t]),this.detailsBorderColor&&(this.details.element.style.borderColor=this.detailsBorderColor)}}},e.prototype.selectNextPage=function(){switch(this.state){case 0:return!1;case 5:return this.details.pageDown(),!0;case 1:return!this.isAuto;default:return this.list.focusNextPage(),!0}},e.prototype.selectNext=function(){switch(this.state){case 0:return!1;case 1:return!this.isAuto;default:return this.list.focusNext(1,!0),!0}},e.prototype.selectLast=function(){switch(this.state){case 0:return!1;case 5:return this.details.scrollBottom(),!0;case 1:return!this.isAuto;default:return this.list.focusLast(),!0}},e.prototype.selectPreviousPage=function(){switch(this.state){case 0:return!1;case 5:return this.details.pageUp(),!0;case 1:return!this.isAuto;default:return this.list.focusPreviousPage(),!0}},e.prototype.selectPrevious=function(){switch(this.state){case 0:return!1;case 1:return!this.isAuto;default:return this.list.focusPrevious(1,!0),!1}},e.prototype.selectFirst=function(){switch(this.state){case 0:return!1;case 5:return this.details.scrollTop(),!0;case 1:return!this.isAuto;default:return this.list.focusFirst(),!0}},e.prototype.getFocusedItem=function(){if(0!==this.state&&2!==this.state&&1!==this.state&&this.completionModel)return{item:this.list.getFocusedElements()[0],index:this.list.getFocus()[0],model:this.completionModel}},e.prototype.toggleDetailsFocus=function(){5===this.state?(this.setState(3),this.detailsBorderColor&&(this.details.element.style.borderColor=this.detailsBorderColor)):3===this.state&&this.expandDocsSettingFromStorage()&&(this.setState(5),this.detailsFocusBorderColor&&(this.details.element.style.borderColor=this.detailsFocusBorderColor)),this.telemetryService.publicLog2("suggestWidget:toggleDetailsFocus")},e.prototype.toggleDetails=function(){if(tY(this.list.getFocusedElements()[0]))if(this.expandDocsSettingFromStorage())this.updateExpandDocsSetting(!1),nr(this.details.element),oo(this.element,"docs-side"),oo(this.element,"docs-below"),this.editor.layoutContentWidget(this),this.setStatusBarRightText(this.msgDetailMore),this.telemetryService.publicLog2("suggestWidget:collapseDetails");else{if(3!==this.state&&5!==this.state&&4!==this.state)return;this.updateExpandDocsSetting(!0),this.showDetails(!1),this.setStatusBarRightText(this.msgDetailsLess),this.telemetryService.publicLog2("suggestWidget:expandDetails")}},e.prototype.showDetails=function(e){e||this.expandSideOrBelow(),tr(this.details.element),this.details.element.style.maxHeight=this.maxWidgetHeight+"px",e?this.details.renderLoading():this.details.renderItem(this.list.getFocusedElements()[0],this.explainMode),this.listElement.style.marginTop="0px",this.editor.layoutContentWidget(this),this.adjustDocsPosition(),this.editor.focus()},e.prototype.toggleExplainMode=function(){this.list.getFocusedElements()[0]&&this.expandDocsSettingFromStorage()&&(this.explainMode=!this.explainMode,this.showDetails(!1))},e.prototype.show=function(){var e=this,t=this.updateListHeight();t!==this.listHeight&&(this.editor.layoutContentWidget(this),this.listHeight=t),this.suggestWidgetVisible.set(!0),this.showTimeout.cancelAndSet((function(){no(e.element,"visible"),e.onDidShowEmitter.fire(e)}),100)},e.prototype.hide=function(){this.suggestWidgetVisible.reset(),this.suggestWidgetMultipleSuggestions.reset(),oo(this.element,"visible")},e.prototype.hideWidget=function(){this.loadingTimeout.dispose(),this.setState(0),this.onDidHideEmitter.fire(this)},e.prototype.getPosition=function(){if(0===this.state)return null;var e=[2,1];return this.preferDocPositionTop&&(e=[1]),{position:this.editor.getPosition(),preference:e}},e.prototype.getDomNode=function(){return this.element},e.prototype.getId=function(){return e.ID},e.prototype.isFrozen=function(){return 4===this.state},e.prototype.updateListHeight=function(){var e=0;if(2===this.state||1===this.state)e=this.unfocusedHeight;else{var t=this.list.contentHeight/this.unfocusedHeight,n=this.editor.getOption(89).maxVisibleSuggestions;e=Math.min(t,n)*this.unfocusedHeight}return this.element.style.lineHeight=this.unfocusedHeight+"px",this.listElement.style.height=e+"px",this.statusBarElement.style.top=e+"px",this.list.layout(e),e},e.prototype.adjustDocsPosition=function(){if(this.editor.hasModel()){var e=this.editor.getOption(49),t=this.editor.getScrolledVisiblePosition(this.editor.getPosition()),n=Oo(this.editor.getDomNode()),i=n.left+t.left,o=n.top+t.top+t.height,r=Oo(this.element),s=r.left,a=r.top;if(this.docsPositionPreviousWidgetY&&this.docsPositionPreviousWidgetY<a&&!this.preferDocPositionTop)return this.preferDocPositionTop=!0,void this.adjustDocsPosition();this.docsPositionPreviousWidgetY=a,s<i-this.listWidth?no(this.element,"list-right"):oo(this.element,"list-right"),to(this.element,"docs-side")&&o-e>a&&this.details.element.offsetHeight>this.listElement.offsetHeight&&(this.listElement.style.marginTop=this.details.element.offsetHeight-this.listElement.offsetHeight+"px")}},e.prototype.expandSideOrBelow=function(){if(!tY(this.focusedItem)&&this.firstFocusInCurrentList)return oo(this.element,"docs-side"),void oo(this.element,"docs-below");var e=this.element.style.maxWidth.match(/(\d+)px/);!e||Number(e[1])<this.maxWidgetWidth?(no(this.element,"docs-below"),oo(this.element,"docs-side")):tY(this.focusedItem)&&(no(this.element,"docs-side"),oo(this.element,"docs-below"))},Object.defineProperty(e.prototype,"maxWidgetHeight",{get:function(){return this.unfocusedHeight*this.editor.getOption(89).maxVisibleSuggestions},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"unfocusedHeight",{get:function(){var e=this.editor.getOptions();return e.get(91)||e.get(34).lineHeight},enumerable:!0,configurable:!0}),e.prototype.getHeight=function(e){return this.unfocusedHeight},e.prototype.getTemplateId=function(e){return"suggestion"},e.prototype.expandDocsSettingFromStorage=function(){return this.storageService.getBoolean("expandSuggestionDocs",0,!1)},e.prototype.updateExpandDocsSetting=function(e){this.storageService.store("expandSuggestionDocs",e,0)},e.prototype.setStatusBarLeftText=function(e){this.statusBarLeftSpan.innerText=e},e.prototype.setStatusBarRightText=function(e){this.statusBarRightSpan.innerText=e},e.prototype.dispose=function(){this.details.dispose(),this.list.dispose(),this.toDispose.dispose(),this.loadingTimeout.dispose(),this.showTimeout.dispose()},e.ID="editor.widget.suggestWidget",e.LOADING_MESSAGE=r("suggestWidget.loading","Loading..."),e.NO_SUGGESTIONS_MESSAGE=r("suggestWidget.noSuggestions","No suggestions."),e=KZ([qZ(1,Lf),qZ(2,XD),qZ(3,qh),qZ(4,fg),qZ(5,FM),qZ(6,lN),qZ(7,pa),qZ(8,In)],e)}();yg((function(e,t){var n=e.getColor(JZ);n&&t.addRule(".monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-highlighted-label .highlight { color: "+n+"; }");var i=e.getColor($Z);i&&t.addRule(".monaco-editor .suggest-widget { color: "+i+"; }");var o=e.getColor(P_);o&&t.addRule(".monaco-editor .suggest-widget a { color: "+o+"; }");var r=e.getColor(R_);r&&t.addRule(".monaco-editor .suggest-widget code { background-color: "+r+"; }")}));var sY=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),aY=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},uY=function(e,t){return function(n,i){t(n,i,e)}},lY=function(e){function t(n,i){var o=e.call(this)||this;return o._editor=n,o._enabled=!1,o._ckAtEnd=t.AtEnd.bindTo(i),o._register(o._editor.onDidChangeConfiguration((function(e){return e.hasChanged(94)&&o._update()}))),o._update(),o}return sY(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),Ae(this._selectionListener),this._ckAtEnd.reset()},t.prototype._update=function(){var e=this,t="on"===this._editor.getOption(94);if(this._enabled!==t)if(this._enabled=t,this._enabled){var n=function(){if(e._editor.hasModel()){var t=e._editor.getModel(),n=e._editor.getSelection(),i=t.getWordAtPosition(n.getStartPosition());i?e._ckAtEnd.set(i.endColumn===n.getStartPosition().column):e._ckAtEnd.set(!1)}else e._ckAtEnd.set(!1)};this._selectionListener=this._editor.onDidChangeCursorSelection(n),n()}else this._selectionListener&&(this._ckAtEnd.reset(),this._selectionListener.dispose(),this._selectionListener=void 0)},t.AtEnd=new Kh("atEndOfWord",!1),t=aY([uY(1,qh)],t)}(He),cY=function(){function e(e,t,n){var i=this;this._disposables=new Be,this._disposables.add(t.onDidShow((function(){return i._onItem(t.getFocusedItem())}))),this._disposables.add(t.onDidFocus(this._onItem,this)),this._disposables.add(t.onDidHide(this.reset,this)),this._disposables.add(e.onWillType((function(o){if(i._active&&!t.isFrozen()){var r=o.charCodeAt(o.length-1);i._active.acceptCharacters.has(r)&&e.getOption(0)&&n(i._active.item)}})))}return e.prototype._onItem=function(e){if(e&&Oi(e.item.completion.commitCharacters)){if(!this._active||this._active.item.item!==e.item){for(var t=new ic,n=0,i=e.item.completion.commitCharacters;n<i.length;n++){var o=i[n];o.length>0&&t.add(o.charCodeAt(0))}this._active={acceptCharacters:t,item:e}}}else this.reset()},e.prototype.reset=function(){this._active=void 0},e.prototype.dispose=function(){this._disposables.dispose()},e}(),dY=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),hY=function(){function e(e){var t=this;this._controller=e,this._disposables=new Be,this._decorations=[],this._disposables.add(e.model.onDidSuggest((function(e){if(!e.shy){var n=t._controller.widget.getValue(),i=n.getFocusedItem();i&&t._highlight(i.item),t._widgetListener||(t._widgetListener=n.onDidFocus((function(e){return t._highlight(e.item)})))}}))),this._disposables.add(e.model.onDidCancel((function(){t._reset()})))}return e.prototype.dispose=function(){this._reset(),this._disposables.dispose(),Ae(this._widgetListener),Ae(this._shiftKeyListener)},e.prototype._reset=function(){this._decorations=this._controller.editor.deltaDecorations(this._decorations,[]),this._shiftKeyListener&&(this._shiftKeyListener.dispose(),this._shiftKeyListener=void 0)},e.prototype._highlight=function(e){var t,n=this;this._currentItem=e;var i=this._controller.editor.getOption(89),o=[];if(i.insertHighlight){this._shiftKeyListener||(this._shiftKeyListener=pY.event((function(){return n._highlight(n._currentItem)})));var r=this._controller.getOverwriteInfo(e,pY.isPressed),s=this._controller.editor.getPosition();if("insert"===i.insertMode&&r.overwriteAfter>0)o=[{range:new wn(s.lineNumber,s.column,s.lineNumber,s.column+r.overwriteAfter),options:{inlineClassName:"suggest-insert-unexpected"}}];else if("replace"===i.insertMode&&0===r.overwriteAfter){var a=null===(t=this._controller.editor.getModel())||void 0===t?void 0:t.getWordAtPosition(s);a&&a.endColumn>s.column&&(o=[{range:new wn(s.lineNumber,s.column,s.lineNumber,a.endColumn),options:{inlineClassName:"suggest-insert-unexpected"}}])}}this._decorations=this._controller.editor.deltaDecorations(this._decorations,o)},e}(),pY=new(function(e){function t(){var t=e.call(this)||this;return t._subscriptions=new Be,t._isPressed=!1,t._subscriptions.add(Xn(document.body,"keydown")((function(e){return t.isPressed=e.shiftKey}))),t._subscriptions.add(Xn(document.body,"keyup")((function(){return t.isPressed=!1}))),t._subscriptions.add(Xn(document.body,"mouseleave")((function(){return t.isPressed=!1}))),t._subscriptions.add(Xn(document.body,"blur")((function(){return t.isPressed=!1}))),t}return dY(t,e),Object.defineProperty(t.prototype,"isPressed",{get:function(){return this._isPressed},set:function(e){this._isPressed!==e&&(this._isPressed=e,this.fire(e))},enumerable:!0,configurable:!0}),t.prototype.dispose=function(){this._subscriptions.dispose(),e.prototype.dispose.call(this)},t}(nt)),fY=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),gY=function(){return(gY=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},mY=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},vY=function(e,t){return function(n,i){t(n,i,e)}},_Y=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i},yY=function(){function e(e,t){if(this._model=e,this._position=t,e.getLineMaxColumn(t.lineNumber)!==t.column){var n=e.getOffsetAt(t),i=e.getPositionAt(n+1);this._marker=e.deltaDecorations([],[{range:wn.fromPositions(t,i),options:{stickiness:1}}])}}return e.prototype.dispose=function(){this._marker&&!this._model.isDisposed()&&this._model.deltaDecorations(this._marker,[])},e.prototype.delta=function(e){if(this._model.isDisposed()||this._position.lineNumber!==e.lineNumber)return 0;if(this._marker){var t=this._model.getDecorationRange(this._marker[0]);return this._model.getOffsetAt(t.getStartPosition())-this._model.getOffsetAt(e)}return this._model.getLineMaxColumn(e.lineNumber)-e.column},e}(),bY=function(){function e(e,t,n,i,o,r){var s=this;this._memoryService=n,this._commandService=i,this._contextKeyService=o,this._instantiationService=r,this._lineSuffix=new ze,this._toDispose=new Be,this.editor=e,this.model=new uZ(this.editor,t),this.widget=this._toDispose.add(new Si((function(){var e=s._instantiationService.createInstance(rY,s.editor);s._toDispose.add(e),s._toDispose.add(e.onDidSelect((function(e){return s._insertSuggestion(e,0)}),s));var t=new cY(s.editor,e,(function(e){return s._insertSuggestion(e,2)}));s._toDispose.add(t),s._toDispose.add(s.model.onDidSuggest((function(e){0===e.completionModel.items.length&&t.reset()})));var n=nG.MakesTextEdit.bindTo(s._contextKeyService);return s._toDispose.add(e.onDidFocus((function(e){var t=e.item,i=s.editor.getPosition(),o=t.editStart.column,r=i.column,a=!0;"smart"!==s.editor.getOption(1)||2!==s.model.state||t.completion.command||t.completion.additionalTextEdits||4&t.completion.insertTextRules||r-o!==t.completion.insertText.length||(a=s.editor.getModel().getValueInRange({startLineNumber:i.lineNumber,startColumn:o,endLineNumber:i.lineNumber,endColumn:r})!==t.completion.insertText);n.set(a)}))),s._toDispose.add(We((function(){return n.reset()}))),s._toDispose.add(e.onDetailsKeyDown((function(e){e.toKeybinding().equals(new yt(!0,!1,!1,!1,33))||_&&e.toKeybinding().equals(new yt(!1,!1,!1,!0,33))?e.stopPropagation():e.toKeybinding().isModifierKey()||s.editor.focus()}))),e}))),this._alternatives=this._toDispose.add(new Si((function(){return s._toDispose.add(new tZ(s.editor,s._contextKeyService))}))),this._toDispose.add(r.createInstance(lY,e)),this._toDispose.add(this.model.onDidTrigger((function(e){s.widget.getValue().showTriggered(e.auto,e.shy?250:50),s._lineSuffix.value=new yY(s.editor.getModel(),e.position)}))),this._toDispose.add(this.model.onDidSuggest((function(e){if(!e.shy){var t=s._memoryService.select(s.editor.getModel(),s.editor.getPosition(),e.completionModel.items);s.widget.getValue().showSuggestions(e.completionModel,t,e.isFrozen,e.auto)}}))),this._toDispose.add(this.model.onDidCancel((function(e){e.retrigger||s.widget.getValue().hideWidget()}))),this._toDispose.add(this.editor.onDidBlurEditorWidget((function(){s.model.cancel(),s.model.clear()})));var a=nG.AcceptSuggestionsOnEnter.bindTo(o),u=function(){var e=s.editor.getOption(1);a.set("on"===e||"smart"===e)};this._toDispose.add(this.editor.onDidChangeConfiguration((function(){return u()}))),u(),this._toDispose.add(new hY(this))}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.dispose=function(){this._alternatives.dispose(),this._toDispose.dispose(),this.widget.dispose(),this.model.dispose(),this._lineSuffix.dispose()},e.prototype._insertSuggestion=function(e,t){var n,i=this;if(!e||!e.item)return this._alternatives.getValue().reset(),this.model.cancel(),void this.model.clear();if(this.editor.hasModel()){var o=this.editor.getModel(),r=o.getAlternativeVersionId(),s=e.item,a=s.completion;1&t||this.editor.pushUndoStop();var u=this.getOverwriteInfo(s,Boolean(8&t));this._memoryService.memorize(o,this.editor.getPosition(),s),Array.isArray(a.additionalTextEdits)&&this.editor.executeEdits("suggestController.additionalTextEdits",a.additionalTextEdits.map((function(e){return bh.replace(wn.lift(e.range),e.text)})));var l=a.insertText;4&a.insertTextRules||(l=LG.escape(l)),HG.get(this.editor).insert(l,{overwriteBefore:u.overwriteBefore,overwriteAfter:u.overwriteAfter,undoStopBefore:!1,undoStopAfter:!1,adjustWhitespace:!(1&a.insertTextRules)}),2&t||this.editor.pushUndoStop(),a.command?a.command.id===wY.id?this.model.trigger({auto:!0,shy:!1},!0):((n=this._commandService).executeCommand.apply(n,_Y([a.command.id],a.command.arguments?_Y(a.command.arguments):[])).catch(De).finally((function(){return i.model.clear()})),this.model.cancel()):(this.model.cancel(),this.model.clear()),4&t&&this._alternatives.getValue().set(e,(function(e){for(;o.canUndo();){r!==o.getAlternativeVersionId()&&o.undo(),i._insertSuggestion(e,3|(8&t?8:0));break}})),this._alertCompletionItem(e.item)}},e.prototype.getOverwriteInfo=function(e,t){zs(this.editor.hasModel());var n="replace"===this.editor.getOption(89).insertMode;t&&(n=!n);var i=e.position.column-e.editStart.column,o=(n?e.editReplaceEnd.column:e.editInsertEnd.column)-e.position.column;return{overwriteBefore:i+(this.editor.getPosition().column-e.position.column),overwriteAfter:o+(this._lineSuffix.value?this._lineSuffix.value.delta(this.editor.getPosition()):0)}},e.prototype._alertCompletionItem=function(e){var t=e.completion,n="string"==typeof t.label?t.label:t.label.name;Oi(t.additionalTextEdits)&&Zp(r("arai.alert.snippet","Accepting '{0}' made {1} additional edits",n,t.additionalTextEdits.length))},e.prototype.triggerSuggest=function(e){this.editor.hasModel()&&(this.model.trigger({auto:!1,shy:!1},!1,e),this.editor.revealLine(this.editor.getPosition().lineNumber,0),this.editor.focus())},e.prototype.triggerSuggestAndAcceptBest=function(e){var t=this;if(this.editor.hasModel()){var n=this.editor.getPosition(),i=function(){n.equals(t.editor.getPosition())&&t._commandService.executeCommand(e.fallback)};Ge.once(this.model.onDidTrigger)((function(e){var n=[];Ge.any(t.model.onDidTrigger,t.model.onDidCancel)((function(){Ae(n),i()}),void 0,n),t.model.onDidSuggest((function(e){var o=e.completionModel;if(Ae(n),0!==o.items.length){var r=t._memoryService.select(t.editor.getModel(),t.editor.getPosition(),o.items),s=o.items[r];!function(e){if(4&e.completion.insertTextRules||e.completion.additionalTextEdits)return!0;var n=t.editor.getPosition(),i=e.editStart.column,o=n.column;return o-i!==e.completion.insertText.length||t.editor.getModel().getValueInRange({startLineNumber:n.lineNumber,startColumn:i,endLineNumber:n.lineNumber,endColumn:o})!==e.completion.insertText}(s)?i():(t.editor.pushUndoStop(),t._insertSuggestion({index:r,item:s,model:o},7))}else i()}),void 0,n)})),this.model.trigger({auto:!1,shy:!0}),this.editor.revealLine(n.lineNumber,0),this.editor.focus()}},e.prototype.acceptSelectedSuggestion=function(e,t){var n=this.widget.getValue().getFocusedItem(),i=0;e&&(i|=4),t&&(i|=8),this._insertSuggestion(n,i)},e.prototype.acceptNextSuggestion=function(){this._alternatives.getValue().next()},e.prototype.acceptPrevSuggestion=function(){this._alternatives.getValue().prev()},e.prototype.cancelSuggestWidget=function(){this.model.cancel(),this.model.clear(),this.widget.getValue().hideWidget()},e.prototype.selectNextSuggestion=function(){this.widget.getValue().selectNext()},e.prototype.selectNextPageSuggestion=function(){this.widget.getValue().selectNextPage()},e.prototype.selectLastSuggestion=function(){this.widget.getValue().selectLast()},e.prototype.selectPrevSuggestion=function(){this.widget.getValue().selectPrevious()},e.prototype.selectPrevPageSuggestion=function(){this.widget.getValue().selectPreviousPage()},e.prototype.selectFirstSuggestion=function(){this.widget.getValue().selectFirst()},e.prototype.toggleSuggestionDetails=function(){this.widget.getValue().toggleDetails()},e.prototype.toggleExplainMode=function(){this.widget.getValue().toggleExplainMode()},e.prototype.toggleSuggestionFocus=function(){this.widget.getValue().toggleDetailsFocus()},e.ID="editor.contrib.suggestController",e=mY([vY(1,el),vY(2,$G),vY(3,la),vY(4,qh),vY(5,In)],e)}(),wY=function(e){function t(){return e.call(this,{id:t.id,label:r("suggest.trigger.label","Trigger Suggest"),alias:"Trigger Suggest",precondition:Rh.and(eC.writable,eC.hasCompletionItemProvider),kbOpts:{kbExpr:eC.textInputFocus,primary:2058,mac:{primary:266,secondary:[521]},weight:100}})||this}return fY(t,e),t.prototype.run=function(e,t){var n=bY.get(t);n&&n.triggerSuggest()},t.id="editor.action.triggerSuggest",t}(kf);Pf(bY.ID,bY),Tf(wY);var CY=Nf.bindToContribution(bY.get);Mf(new CY({id:"acceptSelectedSuggestion",precondition:nG.Visible,handler:function(e){e.acceptSelectedSuggestion(!0,!1)}})),Zh.registerKeybindingRule({id:"acceptSelectedSuggestion",when:Rh.and(nG.Visible,eC.textInputFocus),primary:2,weight:190}),Zh.registerKeybindingRule({id:"acceptSelectedSuggestion",when:Rh.and(nG.Visible,eC.textInputFocus,nG.AcceptSuggestionsOnEnter,nG.MakesTextEdit),primary:3,weight:190}),Mf(new CY({id:"acceptAlternativeSelectedSuggestion",precondition:Rh.and(nG.Visible,eC.textInputFocus),kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:1027,secondary:[1026]},handler:function(e){e.acceptSelectedSuggestion(!1,!0)}})),ca.registerCommandAlias("acceptSelectedSuggestionOnEnter","acceptSelectedSuggestion"),Mf(new CY({id:"hideSuggestWidget",precondition:nG.Visible,handler:function(e){return e.cancelSuggestWidget()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:9,secondary:[1033]}})),Mf(new CY({id:"selectNextSuggestion",precondition:Rh.and(nG.Visible,nG.MultipleSuggestions),handler:function(e){return e.selectNextSuggestion()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}})),Mf(new CY({id:"selectNextPageSuggestion",precondition:Rh.and(nG.Visible,nG.MultipleSuggestions),handler:function(e){return e.selectNextPageSuggestion()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:12,secondary:[2060]}})),Mf(new CY({id:"selectLastSuggestion",precondition:Rh.and(nG.Visible,nG.MultipleSuggestions),handler:function(e){return e.selectLastSuggestion()}})),Mf(new CY({id:"selectPrevSuggestion",precondition:Rh.and(nG.Visible,nG.MultipleSuggestions),handler:function(e){return e.selectPrevSuggestion()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}})),Mf(new CY({id:"selectPrevPageSuggestion",precondition:Rh.and(nG.Visible,nG.MultipleSuggestions),handler:function(e){return e.selectPrevPageSuggestion()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:11,secondary:[2059]}})),Mf(new CY({id:"selectFirstSuggestion",precondition:Rh.and(nG.Visible,nG.MultipleSuggestions),handler:function(e){return e.selectFirstSuggestion()}})),Mf(new CY({id:"toggleSuggestionDetails",precondition:nG.Visible,handler:function(e){return e.toggleSuggestionDetails()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:2058,mac:{primary:266}}})),Mf(new CY({id:"toggleExplainMode",precondition:nG.Visible,handler:function(e){return e.toggleExplainMode()},kbOpts:{weight:100,primary:2133}})),Mf(new CY({id:"toggleSuggestionFocus",precondition:nG.Visible,handler:function(e){return e.toggleSuggestionFocus()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:2570,mac:{primary:778}}})),Mf(new CY({id:"insertBestCompletion",precondition:Rh.and(Rh.equals("config.editor.tabCompletion","on"),lY.AtEnd,nG.Visible.toNegated(),tZ.OtherSuggestions.toNegated(),HG.InSnippetMode.toNegated()),handler:function(e,t){e.triggerSuggestAndAcceptBest(Fs(t)?gY({fallback:"tab"},t):{fallback:"tab"})},kbOpts:{weight:190,primary:2}})),Mf(new CY({id:"insertNextSuggestion",precondition:Rh.and(Rh.equals("config.editor.tabCompletion","on"),tZ.OtherSuggestions,nG.Visible.toNegated(),HG.InSnippetMode.toNegated()),handler:function(e){return e.acceptNextSuggestion()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:2}})),Mf(new CY({id:"insertPrevSuggestion",precondition:Rh.and(Rh.equals("config.editor.tabCompletion","on"),tZ.OtherSuggestions,nG.Visible.toNegated(),HG.InSnippetMode.toNegated()),handler:function(e){return e.acceptPrevSuggestion()},kbOpts:{weight:190,kbExpr:eC.textInputFocus,primary:1026}}));var SY=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Tf(function(e){function t(){return e.call(this,{id:"editor.action.forceRetokenize",label:r("forceRetokenize","Developer: Force Retokenize"),alias:"Developer: Force Retokenize",precondition:void 0})||this}return SY(t,e),t.prototype.run=function(e,t){if(t.hasModel()){var n=t.getModel();n.resetTokenization();var i=new Cc(!0);n.forceTokenization(n.getLineCount()),i.stop(),console.log("tokenization took "+i.elapsed())}},t}(kf));var LY=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),xY=function(e){function t(){return e.call(this,{id:t.ID,label:r({key:"toggle.tabMovesFocus",comment:["Turn on/off use of tab key for moving focus around VS Code"]},"Toggle Tab Key Moves Focus"),alias:"Toggle Tab Key Moves Focus",precondition:void 0,kbOpts:{kbExpr:null,primary:2091,mac:{primary:1323},weight:100}})||this}return LY(t,e),t.prototype.run=function(e,t){var n=!nh.getTabFocusMode();nh.setTabFocusMode(n),Zp(n?r("toggle.tabMovesFocus.on","Pressing Tab will now move focus to the next focusable element"):r("toggle.tabMovesFocus.off","Pressing Tab will now insert the tab character"))},t.ID="editor.action.toggleTabFocusMode",t}(kf);Tf(xY);var DY=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),NY=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},kY=function(e,t){return function(n,i){t(n,i,e)}},EY=D_("editor.wordHighlightBackground",{dark:"#575757B8",light:"#57575740",hc:null},r("wordHighlight","Background color of a symbol during read-access, like reading a variable. The color must not be opaque so as not to hide underlying decorations."),!0),IY=D_("editor.wordHighlightStrongBackground",{dark:"#004972B8",light:"#0e639c40",hc:null},r("wordHighlightStrong","Background color of a symbol during write-access, like writing to a variable. The color must not be opaque so as not to hide underlying decorations."),!0),OY=D_("editor.wordHighlightBorder",{light:null,dark:null,hc:T_},r("wordHighlightBorder","Border color of a symbol during read-access, like reading a variable.")),MY=D_("editor.wordHighlightStrongBorder",{light:null,dark:null,hc:T_},r("wordHighlightStrongBorder","Border color of a symbol during write-access, like writing to a variable.")),TY=D_("editorOverviewRuler.wordHighlightForeground",{dark:"#A0A0A0CC",light:"#A0A0A0CC",hc:"#A0A0A0CC"},r("overviewRulerWordHighlightForeground","Overview ruler marker color for symbol highlights. The color must not be opaque so as not to hide underlying decorations."),!0),PY=D_("editorOverviewRuler.wordHighlightStrongForeground",{dark:"#C0A0C0CC",light:"#C0A0C0CC",hc:"#C0A0C0CC"},r("overviewRulerWordHighlightStrongForeground","Overview ruler marker color for write-access symbol highlights. The color must not be opaque so as not to hide underlying decorations."),!0),RY=new Kh("hasWordHighlights",!1);function AY(e,t,n){return vi(Tu.ordered(e).map((function(i){return function(){return Promise.resolve(i.provideDocumentHighlights(e,t,n)).then(void 0,Ne)}})),Oi)}var FY=function(){function e(e,t,n){var i=this;this._wordRange=this._getCurrentWordRange(e,t),this.result=hi((function(o){return i._compute(e,t,n,o)}))}return e.prototype._getCurrentWordRange=function(e,t){var n=e.getWordAtPosition(t.getPosition());return n?new wn(t.startLineNumber,n.startColumn,t.startLineNumber,n.endColumn):null},e.prototype.isValid=function(e,t,n){for(var i=t.startLineNumber,o=t.startColumn,r=t.endColumn,s=this._getCurrentWordRange(e,t),a=Boolean(this._wordRange&&this._wordRange.equalsRange(s)),u=0,l=n.length;!a&&u<l;u++){var c=e.getDecorationRange(n[u]);c&&c.startLineNumber===i&&c.startColumn<=o&&c.endColumn>=r&&(a=!0)}return a},e.prototype.cancel=function(){this.result.cancel()},e}(),WY=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return DY(t,e),t.prototype._compute=function(e,t,n,i){return AY(e,t.getPosition(),i).then((function(e){return e||[]}))},t}(FY),VY=function(e){function t(t,n,i){var o=e.call(this,t,n,i)||this;return o._selectionIsEmpty=n.isEmpty(),o}return DY(t,e),t.prototype._compute=function(e,t,n,i){return gi(250,i).then((function(){if(!t.isEmpty())return[];var i=e.getWordAtPosition(t.getPosition());return i?e.findMatches(i.word,!0,!1,!0,n,!1).map((function(e){return{range:e.range,kind:mu.Text}})):[]}))},t.prototype.isValid=function(t,n,i){var o=n.isEmpty();return this._selectionIsEmpty===o&&e.prototype.isValid.call(this,t,n,i)},t}(FY);Of("_executeDocumentHighlights",(function(e,t){return AY(e,t,et.None)}));var BY=function(){function e(e,t){var n=this;this.toUnhook=new Be,this.workerRequestTokenId=0,this.workerRequestCompleted=!1,this.workerRequestValue=[],this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1,this.editor=e,this._hasWordHighlights=RY.bindTo(t),this._ignorePositionChangeEvent=!1,this.occurrencesHighlight=this.editor.getOption(61),this.model=this.editor.getModel(),this.toUnhook.add(e.onDidChangeCursorPosition((function(e){n._ignorePositionChangeEvent||n.occurrencesHighlight&&n._onPositionChanged(e)}))),this.toUnhook.add(e.onDidChangeModelContent((function(e){n._stopAll()}))),this.toUnhook.add(e.onDidChangeConfiguration((function(e){var t=n.editor.getOption(61);n.occurrencesHighlight!==t&&(n.occurrencesHighlight=t,n._stopAll())}))),this._decorationIds=[],this.workerRequestTokenId=0,this.workerRequest=null,this.workerRequestCompleted=!1,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1}return e.prototype.hasDecorations=function(){return this._decorationIds.length>0},e.prototype.restore=function(){this.occurrencesHighlight&&this._run()},e.prototype._getSortedHighlights=function(){var e=this;return Ei(this._decorationIds.map((function(t){return e.model.getDecorationRange(t)})).sort(wn.compareRangesUsingStarts))},e.prototype.moveNext=function(){var e=this,t=this._getSortedHighlights(),n=t[(Pi(t,(function(t){return t.containsPosition(e.editor.getPosition())}))+1)%t.length];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n)}finally{this._ignorePositionChangeEvent=!1}},e.prototype.moveBack=function(){var e=this,t=this._getSortedHighlights(),n=t[(Pi(t,(function(t){return t.containsPosition(e.editor.getPosition())}))-1+t.length)%t.length];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n)}finally{this._ignorePositionChangeEvent=!1}},e.prototype._removeDecorations=function(){this._decorationIds.length>0&&(this._decorationIds=this.editor.deltaDecorations(this._decorationIds,[]),this._hasWordHighlights.set(!1))},e.prototype._stopAll=function(){this._removeDecorations(),-1!==this.renderDecorationsTimer&&(clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=-1),null!==this.workerRequest&&(this.workerRequest.cancel(),this.workerRequest=null),this.workerRequestCompleted||(this.workerRequestTokenId++,this.workerRequestCompleted=!0)},e.prototype._onPositionChanged=function(e){this.occurrencesHighlight&&3===e.reason?this._run():this._stopAll()},e.prototype._run=function(){var e=this,t=this.editor.getSelection();if(t.startLineNumber===t.endLineNumber){var n=t.startLineNumber,i=t.startColumn,o=t.endColumn,r=this.model.getWordAtPosition({lineNumber:n,column:i});if(!r||r.startColumn>i||r.endColumn<o)this._stopAll();else{var s,a,u,l=this.workerRequest&&this.workerRequest.isValid(this.model,t,this._decorationIds);if(this.lastCursorPositionChangeTime=(new Date).getTime(),l)this.workerRequestCompleted&&-1!==this.renderDecorationsTimer&&(clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=-1,this._beginRenderDecorations());else{this._stopAll();var c=++this.workerRequestTokenId;this.workerRequestCompleted=!1,this.workerRequest=(s=this.model,a=this.editor.getSelection(),u=this.editor.getOption(96),Tu.has(s)?new WY(s,a,u):new VY(s,a,u)),this.workerRequest.result.then((function(t){c===e.workerRequestTokenId&&(e.workerRequestCompleted=!0,e.workerRequestValue=t||[],e._beginRenderDecorations())}),De)}}}else this._stopAll()},e.prototype._beginRenderDecorations=function(){var e=this,t=(new Date).getTime(),n=this.lastCursorPositionChangeTime+250;t>=n?(this.renderDecorationsTimer=-1,this.renderDecorations()):this.renderDecorationsTimer=setTimeout((function(){e.renderDecorations()}),n-t)},e.prototype.renderDecorations=function(){this.renderDecorationsTimer=-1;for(var t=[],n=0,i=this.workerRequestValue.length;n<i;n++){var o=this.workerRequestValue[n];t.push({range:o.range,options:e._getDecorationOptions(o.kind)})}this._decorationIds=this.editor.deltaDecorations(this._decorationIds,t),this._hasWordHighlights.set(this.hasDecorations())},e._getDecorationOptions=function(e){return e===mu.Write?this._WRITE_OPTIONS:e===mu.Text?this._TEXT_OPTIONS:this._REGULAR_OPTIONS},e.prototype.dispose=function(){this._stopAll(),this.toUnhook.dispose()},e._WRITE_OPTIONS=kv.register({stickiness:1,className:"wordHighlightStrong",overviewRuler:{color:gg(PY),position:Va.Center}}),e._TEXT_OPTIONS=kv.register({stickiness:1,className:"selectionHighlight",overviewRuler:{color:gg(wb),position:Va.Center}}),e._REGULAR_OPTIONS=kv.register({stickiness:1,className:"wordHighlight",overviewRuler:{color:gg(TY),position:Va.Center}}),e}(),HY=function(e){function t(t,n){var i=e.call(this)||this;i.wordHighligher=null;var o=function(){t.hasModel()&&(i.wordHighligher=new BY(t,n))};return i._register(t.onDidChangeModel((function(e){i.wordHighligher&&(i.wordHighligher.dispose(),i.wordHighligher=null),o()}))),o(),i}return DY(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.saveViewState=function(){return!(!this.wordHighligher||!this.wordHighligher.hasDecorations())},t.prototype.moveNext=function(){this.wordHighligher&&this.wordHighligher.moveNext()},t.prototype.moveBack=function(){this.wordHighligher&&this.wordHighligher.moveBack()},t.prototype.restoreViewState=function(e){this.wordHighligher&&e&&this.wordHighligher.restore()},t.prototype.dispose=function(){this.wordHighligher&&(this.wordHighligher.dispose(),this.wordHighligher=null),e.prototype.dispose.call(this)},t.ID="editor.contrib.wordHighlighter",t=NY([kY(1,qh)],t)}(He),zY=function(e){function t(t,n){var i=e.call(this,n)||this;return i._isNext=t,i}return DY(t,e),t.prototype.run=function(e,t){var n=HY.get(t);n&&(this._isNext?n.moveNext():n.moveBack())},t}(kf),jY=function(e){function t(){return e.call(this,!0,{id:"editor.action.wordHighlight.next",label:r("wordHighlight.next.label","Go to Next Symbol Highlight"),alias:"Go to Next Symbol Highlight",precondition:RY,kbOpts:{kbExpr:eC.editorTextFocus,primary:65,weight:100}})||this}return DY(t,e),t}(zY),UY=function(e){function t(){return e.call(this,!1,{id:"editor.action.wordHighlight.prev",label:r("wordHighlight.previous.label","Go to Previous Symbol Highlight"),alias:"Go to Previous Symbol Highlight",precondition:RY,kbOpts:{kbExpr:eC.editorTextFocus,primary:1089,weight:100}})||this}return DY(t,e),t}(zY),KY=function(e){function t(){return e.call(this,{id:"editor.action.wordHighlight.trigger",label:r("wordHighlight.trigger.label","Trigger Symbol Highlight"),alias:"Trigger Symbol Highlight",precondition:RY.toNegated(),kbOpts:{kbExpr:eC.editorTextFocus,primary:0,weight:100}})||this}return DY(t,e),t.prototype.run=function(e,t,n){var i=HY.get(t);i&&i.restoreViewState(!0)},t}(kf);Pf(HY.ID,HY),Tf(jY),Tf(UY),Tf(KY),yg((function(e,t){var n=e.getColor(xy);n&&(t.addRule(".monaco-editor .focused .selectionHighlight { background-color: "+n+"; }"),t.addRule(".monaco-editor .selectionHighlight { background-color: "+n.transparent(.5)+"; }"));var i=e.getColor(EY);i&&t.addRule(".monaco-editor .wordHighlight { background-color: "+i+"; }");var o=e.getColor(IY);o&&t.addRule(".monaco-editor .wordHighlightStrong { background-color: "+o+"; }");var r=e.getColor(Dy);r&&t.addRule(".monaco-editor .selectionHighlight { border: 1px "+("hc"===e.type?"dotted":"solid")+" "+r+"; box-sizing: border-box; }");var s=e.getColor(OY);s&&t.addRule(".monaco-editor .wordHighlight { border: 1px "+("hc"===e.type?"dashed":"solid")+" "+s+"; box-sizing: border-box; }");var a=e.getColor(MY);a&&t.addRule(".monaco-editor .wordHighlightStrong { border: 1px "+("hc"===e.type?"dashed":"solid")+" "+a+"; box-sizing: border-box; }")}));var qY=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),GY=function(e){function t(t){var n=e.call(this,t)||this;return n._inSelectionMode=t.inSelectionMode,n._wordNavigationType=t.wordNavigationType,n}return qY(t,e),t.prototype.runEditorCommand=function(e,t,n){var i=this;if(t.hasModel()){var o=Dm(t.getOption(96)),r=t.getModel(),s=t.getSelections().map((function(e){var t=new bn(e.positionLineNumber,e.positionColumn),n=i._move(o,r,t,i._wordNavigationType);return i._moveTo(e,n,i._inSelectionMode)}));if(t._getCursors().setStates("moveWordCommand",0,s.map((function(e){return zv.fromModelSelection(e)}))),1===s.length){var a=new bn(s[0].positionLineNumber,s[0].positionColumn);t.revealPosition(a,0)}}},t.prototype._moveTo=function(e,t,n){return n?new Sn(e.selectionStartLineNumber,e.selectionStartColumn,t.lineNumber,t.column):new Sn(t.lineNumber,t.column,t.lineNumber,t.column)},t}(Nf),ZY=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return qY(t,e),t.prototype._move=function(e,t,n,i){return qw.moveWordLeft(e,t,n,i)},t}(GY),YY=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return qY(t,e),t.prototype._move=function(e,t,n,i){return qw.moveWordRight(e,t,n,i)},t}(GY),XY=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:0,id:"cursorWordStartLeft",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:2063,mac:{primary:527},weight:100}})||this}return qY(t,e),t}(ZY),$Y=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:2,id:"cursorWordEndLeft",precondition:void 0})||this}return qY(t,e),t}(ZY),QY=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:1,id:"cursorWordLeft",precondition:void 0})||this}return qY(t,e),t}(ZY),JY=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:0,id:"cursorWordStartLeftSelect",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:3087,mac:{primary:1551},weight:100}})||this}return qY(t,e),t}(ZY),eX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:2,id:"cursorWordEndLeftSelect",precondition:void 0})||this}return qY(t,e),t}(ZY),tX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:1,id:"cursorWordLeftSelect",precondition:void 0})||this}return qY(t,e),t}(ZY),nX=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:3,id:"cursorWordAccessibilityLeft",precondition:void 0,kbOpts:{kbExpr:Rh.and(eC.textInputFocus,mx),win:{primary:2063},weight:101}})||this}return qY(t,e),t.prototype._move=function(t,n,i,o){return e.prototype._move.call(this,Dm(Le.wordSeparators.defaultValue),n,i,o)},t}(ZY),iX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:3,id:"cursorWordAccessibilityLeftSelect",precondition:void 0,kbOpts:{kbExpr:Rh.and(eC.textInputFocus,mx),win:{primary:3087},weight:101}})||this}return qY(t,e),t.prototype._move=function(t,n,i,o){return e.prototype._move.call(this,Dm(Le.wordSeparators.defaultValue),n,i,o)},t}(ZY),oX=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:0,id:"cursorWordStartRight",precondition:void 0})||this}return qY(t,e),t}(YY),rX=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:2,id:"cursorWordEndRight",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:2065,mac:{primary:529},weight:100}})||this}return qY(t,e),t}(YY),sX=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:2,id:"cursorWordRight",precondition:void 0})||this}return qY(t,e),t}(YY),aX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:0,id:"cursorWordStartRightSelect",precondition:void 0})||this}return qY(t,e),t}(YY),uX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:2,id:"cursorWordEndRightSelect",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:3089,mac:{primary:1553},weight:100}})||this}return qY(t,e),t}(YY),lX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:2,id:"cursorWordRightSelect",precondition:void 0})||this}return qY(t,e),t}(YY),cX=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:3,id:"cursorWordAccessibilityRight",precondition:void 0,kbOpts:{kbExpr:Rh.and(eC.textInputFocus,mx),win:{primary:2065},weight:101}})||this}return qY(t,e),t.prototype._move=function(t,n,i,o){return e.prototype._move.call(this,Dm(Le.wordSeparators.defaultValue),n,i,o)},t}(YY),dX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:3,id:"cursorWordAccessibilityRightSelect",precondition:void 0,kbOpts:{kbExpr:Rh.and(eC.textInputFocus,mx),win:{primary:3089},weight:101}})||this}return qY(t,e),t.prototype._move=function(t,n,i,o){return e.prototype._move.call(this,Dm(Le.wordSeparators.defaultValue),n,i,o)},t}(YY),hX=function(e){function t(t){var n=e.call(this,t)||this;return n._whitespaceHeuristics=t.whitespaceHeuristics,n._wordNavigationType=t.wordNavigationType,n}return qY(t,e),t.prototype.runEditorCommand=function(e,t,n){var i=this;if(t.hasModel()){var o=Dm(t.getOption(96)),r=t.getModel(),s=t.getSelections().map((function(e){var t=i._delete(o,r,e,i._whitespaceHeuristics,i._wordNavigationType);return new Fw(t,"")}));t.pushUndoStop(),t.executeCommands(this.id,s),t.pushUndoStop()}},t}(Nf),pX=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return qY(t,e),t.prototype._delete=function(e,t,n,i,o){var r=qw.deleteWordLeft(e,t,n,i,o);return r||new wn(1,1,1,1)},t}(hX),fX=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return qY(t,e),t.prototype._delete=function(e,t,n,i,o){var r=qw.deleteWordRight(e,t,n,i,o);if(r)return r;var s=t.getLineCount(),a=t.getLineMaxColumn(s);return new wn(s,a,s,a)},t}(hX),gX=function(e){function t(){return e.call(this,{whitespaceHeuristics:!1,wordNavigationType:0,id:"deleteWordStartLeft",precondition:eC.writable})||this}return qY(t,e),t}(pX),mX=function(e){function t(){return e.call(this,{whitespaceHeuristics:!1,wordNavigationType:2,id:"deleteWordEndLeft",precondition:eC.writable})||this}return qY(t,e),t}(pX),vX=function(e){function t(){return e.call(this,{whitespaceHeuristics:!0,wordNavigationType:0,id:"deleteWordLeft",precondition:eC.writable,kbOpts:{kbExpr:eC.textInputFocus,primary:2049,mac:{primary:513},weight:100}})||this}return qY(t,e),t}(pX),_X=function(e){function t(){return e.call(this,{whitespaceHeuristics:!1,wordNavigationType:0,id:"deleteWordStartRight",precondition:eC.writable})||this}return qY(t,e),t}(fX),yX=function(e){function t(){return e.call(this,{whitespaceHeuristics:!1,wordNavigationType:2,id:"deleteWordEndRight",precondition:eC.writable})||this}return qY(t,e),t}(fX),bX=function(e){function t(){return e.call(this,{whitespaceHeuristics:!0,wordNavigationType:2,id:"deleteWordRight",precondition:eC.writable,kbOpts:{kbExpr:eC.textInputFocus,primary:2068,mac:{primary:532},weight:100}})||this}return qY(t,e),t}(fX);Mf(new XY),Mf(new $Y),Mf(new QY),Mf(new JY),Mf(new eX),Mf(new tX),Mf(new oX),Mf(new rX),Mf(new sX),Mf(new aX),Mf(new uX),Mf(new lX),Mf(new nX),Mf(new iX),Mf(new cX),Mf(new dX),Mf(new gX),Mf(new mX),Mf(new vX),Mf(new _X),Mf(new yX),Mf(new bX);var wX=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),CX=function(e){function t(){return e.call(this,{whitespaceHeuristics:!0,wordNavigationType:0,id:"deleteWordPartLeft",precondition:eC.writable,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:769},weight:100}})||this}return wX(t,e),t.prototype._delete=function(e,t,n,i,o){var r=Gw.deleteWordPartLeft(e,t,n,i);return r||new wn(1,1,1,1)},t}(hX),SX=function(e){function t(){return e.call(this,{whitespaceHeuristics:!0,wordNavigationType:2,id:"deleteWordPartRight",precondition:eC.writable,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:788},weight:100}})||this}return wX(t,e),t.prototype._delete=function(e,t,n,i,o){var r=Gw.deleteWordPartRight(e,t,n,i);if(r)return r;var s=t.getLineCount(),a=t.getLineMaxColumn(s);return new wn(s,a,s,a)},t}(hX),LX=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return wX(t,e),t.prototype._move=function(e,t,n,i){return Gw.moveWordPartLeft(e,t,n)},t}(GY),xX=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:0,id:"cursorWordPartLeft",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:783},weight:100}})||this}return wX(t,e),t}(LX);ca.registerCommandAlias("cursorWordPartStartLeft","cursorWordPartLeft");var DX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:0,id:"cursorWordPartLeftSelect",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:1807},weight:100}})||this}return wX(t,e),t}(LX);ca.registerCommandAlias("cursorWordPartStartLeftSelect","cursorWordPartLeftSelect");var NX=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return wX(t,e),t.prototype._move=function(e,t,n,i){return Gw.moveWordPartRight(e,t,n)},t}(GY),kX=function(e){function t(){return e.call(this,{inSelectionMode:!1,wordNavigationType:2,id:"cursorWordPartRight",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:785},weight:100}})||this}return wX(t,e),t}(NX),EX=function(e){function t(){return e.call(this,{inSelectionMode:!0,wordNavigationType:2,id:"cursorWordPartRightSelect",precondition:void 0,kbOpts:{kbExpr:eC.textInputFocus,primary:0,mac:{primary:1809},weight:100}})||this}return wX(t,e),t}(NX);Mf(new CX),Mf(new SX),Mf(new xX),Mf(new DX),Mf(new kX),Mf(new EX);n(428);var IX=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),OX=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},MX=function(e,t){return function(n,i){t(n,i,e)}},TX=new Kh("accessibilityHelpWidgetVisible",!1),PX=function(e){function t(t,n){var i=e.call(this)||this;return i._editor=t,i._widget=i._register(n.createInstance(RX,i._editor)),i}return IX(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.show=function(){this._widget.show()},t.prototype.hide=function(){this._widget.hide()},t.ID="editor.contrib.accessibilityHelpController",t=OX([MX(1,In)],t)}(He);var RX=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r._contextKeyService=n,r._keybindingService=i,r._openerService=o,r._editor=t,r._isVisibleKey=TX.bindTo(r._contextKeyService),r._domNode=Ff(document.createElement("div")),r._domNode.setClassName("accessibilityHelpWidget"),r._domNode.setDisplay("none"),r._domNode.setAttribute("role","dialog"),r._domNode.setAttribute("aria-hidden","true"),r._contentDomNode=Ff(document.createElement("div")),r._contentDomNode.setAttribute("role","document"),r._domNode.appendChild(r._contentDomNode),r._isVisible=!1,r._register(r._editor.onDidLayoutChange((function(){r._isVisible&&r._layout()}))),r._register(co(r._contentDomNode.domNode,"keydown",(function(e){if(r._isVisible&&(e.equals(2083)&&(Zp(cp.emergencyConfOn),r._editor.updateOptions({accessibilitySupport:"on"}),Yi(r._contentDomNode.domNode),r._buildContent(),r._contentDomNode.domNode.focus(),e.preventDefault(),e.stopPropagation()),e.equals(2086))){Zp(cp.openingDocs);var t=r._editor.getRawOptions().accessibilityHelpUrl;void 0===t&&(t="https://go.microsoft.com/fwlink/?linkid=852450"),r._openerService.open(Et.parse(t)),e.preventDefault(),e.stopPropagation()}}))),r.onblur(r._contentDomNode.domNode,(function(){r.hide()})),r._editor.addOverlayWidget(r),r}return IX(t,e),t.prototype.dispose=function(){this._editor.removeOverlayWidget(this),e.prototype.dispose.call(this)},t.prototype.getId=function(){return t.ID},t.prototype.getDomNode=function(){return this._domNode.domNode},t.prototype.getPosition=function(){return{preference:null}},t.prototype.show=function(){this._isVisible||(this._isVisible=!0,this._isVisibleKey.set(!0),this._layout(),this._domNode.setDisplay("block"),this._domNode.setAttribute("aria-hidden","false"),this._contentDomNode.domNode.tabIndex=0,this._buildContent(),this._contentDomNode.domNode.focus())},t.prototype._descriptionForCommand=function(e,t,n){var i=this._keybindingService.lookupKeybinding(e);return i?pr(t,i.getAriaLabel()):pr(n,e)},t.prototype._buildContent=function(){var e=this._editor.getOptions(),t=this._editor.getSelections(),n=0;if(t){var i=this._editor.getModel();i&&t.forEach((function(e){n+=i.getValueLengthInRange(e)}))}var o=function(e,t){return e&&0!==e.length?1===e.length?t?pr(cp.singleSelectionRange,e[0].positionLineNumber,e[0].positionColumn,t):pr(cp.singleSelection,e[0].positionLineNumber,e[0].positionColumn):t?pr(cp.multiSelectionRange,e.length,t):e.length>0?pr(cp.multiSelection,e.length):"":cp.noSelection}(t,n);e.get(45)?e.get(68)?o+=cp.readonlyDiffEditor:o+=cp.editableDiffEditor:e.get(68)?o+=cp.readonlyEditor:o+=cp.editableEditor;var r=_?cp.changeConfigToOnMac:cp.changeConfigToOnWinLinux;switch(e.get(2)){case 0:o+="\n\n - "+r;break;case 2:o+="\n\n - "+cp.auto_on;break;case 1:o+="\n\n - "+cp.auto_off,o+=" "+r}e.get(106)?o+="\n\n - "+this._descriptionForCommand(xY.ID,cp.tabFocusModeOnMsg,cp.tabFocusModeOnMsgNoKb):o+="\n\n - "+this._descriptionForCommand(xY.ID,cp.tabFocusModeOffMsg,cp.tabFocusModeOffMsgNoKb),o+="\n\n - "+(_?cp.openDocMac:cp.openDocWinLinux),o+="\n\n"+cp.outroMsg,this._contentDomNode.domNode.appendChild(DW(o)),this._contentDomNode.domNode.setAttribute("aria-label",o)},t.prototype.hide=function(){this._isVisible&&(this._isVisible=!1,this._isVisibleKey.reset(),this._domNode.setDisplay("none"),this._domNode.setAttribute("aria-hidden","true"),this._contentDomNode.domNode.tabIndex=-1,Yi(this._contentDomNode.domNode),this._editor.focus())},t.prototype._layout=function(){var e=this._editor.getLayoutInfo(),n=Math.max(5,Math.min(t.WIDTH,e.width-40)),i=Math.max(5,Math.min(t.HEIGHT,e.height-40));this._domNode.setWidth(n),this._domNode.setHeight(i);var o=Math.round((e.height-i)/2);this._domNode.setTop(o);var r=Math.round((e.width-n)/2);this._domNode.setLeft(r)},t.ID="editor.contrib.accessibilityHelpWidget",t.WIDTH=500,t.HEIGHT=300,t=OX([MX(1,qh),MX(2,XD),MX(3,pa)],t)}(KC),AX=function(e){function t(){return e.call(this,{id:"editor.action.showAccessibilityHelp",label:cp.showAccessibilityHelpAction,alias:"Show Accessibility Help",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:Vn?2107:571,weight:100}})||this}return IX(t,e),t.prototype.run=function(e,t){var n=PX.get(t);n&&n.show()},t}(kf);Pf(PX.ID,PX),Tf(AX),Mf(new(Nf.bindToContribution(PX.get))({id:"closeAccessibilityHelp",precondition:TX,handler:function(e){return e.hide()},kbOpts:{weight:200,kbExpr:eC.focus,primary:9,secondary:[1033]}})),yg((function(e,t){var n=e.getColor(_y);n&&t.addRule(".monaco-editor .accessibilityHelpWidget { background-color: "+n+"; }");var i=e.getColor(yy);i&&t.addRule(".monaco-editor .accessibilityHelpWidget { color: "+i+"; }");var o=e.getColor(A_);o&&t.addRule(".monaco-editor .accessibilityHelpWidget { box-shadow: 0 2px 8px "+o+"; }");var r=e.getColor(M_);r&&t.addRule(".monaco-editor .accessibilityHelpWidget { border: 2px solid "+r+"; }")}));n(429);var FX=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),WX=function(e){function t(t){var n=e.call(this)||this;return n.editor=t,n.widget=null,Gn&&(n._register(t.onDidChangeConfiguration((function(){return n.update()}))),n.update()),n}return FX(t,e),t.prototype.update=function(){var e=!this.editor.getOption(68);!this.widget&&e?this.widget=new VX(this.editor):this.widget&&!e&&(this.widget.dispose(),this.widget=null)},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.widget&&(this.widget.dispose(),this.widget=null)},t.ID="editor.contrib.iPadShowKeyboard",t}(He),VX=function(e){function t(t){var n=e.call(this)||this;return n.editor=t,n._domNode=document.createElement("textarea"),n._domNode.className="iPadShowKeyboard",n._register(uo(n._domNode,"touchstart",(function(e){n.editor.focus()}))),n._register(uo(n._domNode,"focus",(function(e){n.editor.focus()}))),n.editor.addOverlayWidget(n),n}return FX(t,e),t.prototype.dispose=function(){this.editor.removeOverlayWidget(this),e.prototype.dispose.call(this)},t.prototype.getId=function(){return t.ID},t.prototype.getDomNode=function(){return this._domNode},t.prototype.getPosition=function(){return{preference:1}},t.ID="editor.contrib.ShowKeyboardWidget",t}(He);Pf(WX.ID,WX);n(430);var BX=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),HX=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},zX=function(e,t){return function(n,i){t(n,i,e)}},jX=function(e){function t(t,n,i){var o=e.call(this)||this;return o._editor=t,o._modeService=i,o._widget=null,o._register(o._editor.onDidChangeModel((function(e){return o.stop()}))),o._register(o._editor.onDidChangeModelLanguage((function(e){return o.stop()}))),o._register(Yu.onDidChange((function(e){return o.stop()}))),o}return BX(t,e),t.get=function(e){return e.getContribution(t.ID)},t.prototype.dispose=function(){this.stop(),e.prototype.dispose.call(this)},t.prototype.launch=function(){this._widget||this._editor.hasModel()&&(this._widget=new KX(this._editor,this._modeService))},t.prototype.stop=function(){this._widget&&(this._widget.dispose(),this._widget=null)},t.ID="editor.contrib.inspectTokens",t=HX([zX(1,YD),zX(2,lN)],t)}(He),UX=function(e){function t(){return e.call(this,{id:"editor.action.inspectTokens",label:hp.inspectTokensAction,alias:"Developer: Inspect Tokens",precondition:void 0})||this}return BX(t,e),t.prototype.run=function(e,t){var n=jX.get(t);n&&n.launch()},t}(kf);var KX=function(e){function t(t,n){var i,o=e.call(this)||this;return o.allowEditorOverflow=!0,o._editor=t,o._modeService=n,o._model=o._editor.getModel(),o._domNode=document.createElement("div"),o._domNode.className="tokens-inspect-widget",o._tokenizationSupport=(i=o._model.getLanguageIdentifier(),Yu.get(i.language)||{getInitialState:function(){return Xu},tokenize:function(e,t,n){return Qu(i.language,0,t,n)},tokenize2:function(e,t,n){return Ju(i.id,0,t,n)}}),o._compute(o._editor.getPosition()),o._register(o._editor.onDidChangeCursorPosition((function(e){return o._compute(o._editor.getPosition())}))),o._editor.addContentWidget(o),o}return BX(t,e),t.prototype.dispose=function(){this._editor.removeContentWidget(this),e.prototype.dispose.call(this)},t.prototype.getId=function(){return t._ID},t.prototype._compute=function(e){for(var t=this._getTokensAtLine(e.lineNumber),n=0,i=t.tokens1.length-1;i>=0;i--){var o=t.tokens1[i];if(e.column-1>=o.offset){n=i;break}}var r=0;for(i=t.tokens2.length>>>1;i>=0;i--)if(e.column-1>=t.tokens2[i<<1]){r=i;break}var s="",a=this._model.getLineContent(e.lineNumber),u="";if(n<t.tokens1.length){var l=t.tokens1[n].offset,c=n+1<t.tokens1.length?t.tokens1[n+1].offset:a.length;u=a.substring(l,c)}s+='<h2 class="tm-token">'+function(e){for(var t="",n=0,i=e.length;n<i;n++){var o=e.charCodeAt(n);switch(o){case 9:t+="→";break;case 32:t+="·";break;case 60:t+="<";break;case 62:t+=">";break;case 38:t+="&";break;default:t+=String.fromCharCode(o)}}return t}(u)+'<span class="tm-token-length">('+u.length+" "+(1===u.length?"char":"chars")+")</span></h2>",s+='<hr class="tokens-inspect-separator" style="clear:both"/>';var d=this._decodeMetadata(t.tokens2[1+(r<<1)]);s+='<table class="tm-metadata-table"><tbody>',s+='<tr><td class="tm-metadata-key">language</td><td class="tm-metadata-value">'+fr(d.languageIdentifier.language)+"</td>",s+='<tr><td class="tm-metadata-key">token type</td><td class="tm-metadata-value">'+this._tokenTypeToString(d.tokenType)+"</td>",s+='<tr><td class="tm-metadata-key">font style</td><td class="tm-metadata-value">'+this._fontStyleToString(d.fontStyle)+"</td>",s+='<tr><td class="tm-metadata-key">foreground</td><td class="tm-metadata-value">'+mv.Format.CSS.formatHex(d.foreground)+"</td>",s+='<tr><td class="tm-metadata-key">background</td><td class="tm-metadata-value">'+mv.Format.CSS.formatHex(d.background)+"</td>",s+="</tbody></table>",s+='<hr class="tokens-inspect-separator"/>',n<t.tokens1.length&&(s+='<span class="tm-token-type">'+fr(t.tokens1[n].type)+"</span>"),this._domNode.innerHTML=s,this._editor.layoutContentWidget(this)},t.prototype._decodeMetadata=function(e){var t=Yu.getColorMap(),n=wu.getLanguageId(e),i=wu.getTokenType(e),o=wu.getFontStyle(e),r=wu.getForeground(e),s=wu.getBackground(e);return{languageIdentifier:this._modeService.getLanguageIdentifier(n),tokenType:i,fontStyle:o,foreground:t[r],background:t[s]}},t.prototype._tokenTypeToString=function(e){switch(e){case 0:return"Other";case 1:return"Comment";case 2:return"String";case 4:return"RegEx"}return"??"},t.prototype._fontStyleToString=function(e){var t="";return 1&e&&(t+="italic "),2&e&&(t+="bold "),4&e&&(t+="underline "),0===t.length&&(t="---"),t},t.prototype._getTokensAtLine=function(e){var t=this._getStateBeforeLine(e),n=this._tokenizationSupport.tokenize(this._model.getLineContent(e),t,0),i=this._tokenizationSupport.tokenize2(this._model.getLineContent(e),t,0);return{startState:t,tokens1:n.tokens,tokens2:i.tokens,endState:n.endState}},t.prototype._getStateBeforeLine=function(e){for(var t=this._tokenizationSupport.getInitialState(),n=1;n<e;n++){t=this._tokenizationSupport.tokenize(this._model.getLineContent(n),t,0).endState}return t},t.prototype.getDomNode=function(){return this._domNode},t.prototype.getPosition=function(){return{position:this._editor.getPosition(),preference:[2,1]}},t._ID="editor.contrib.inspectTokensWidget",t}(He);Pf(jX.ID,jX),Tf(UX),yg((function(e,t){var n=e.getColor(Ay);if(n){var i="hc"===e.type?2:1;t.addRule(".monaco-editor .tokens-inspect-widget { border: "+i+"px solid "+n+"; }"),t.addRule(".monaco-editor .tokens-inspect-widget .tokens-inspect-separator { background-color: "+n+"; }")}var o=e.getColor(Py);o&&t.addRule(".monaco-editor .tokens-inspect-widget { background-color: "+o+"; }");var r=e.getColor(Ry);r&&t.addRule(".monaco-editor .tokens-inspect-widget { color: "+r+"; }")}));n(431),n(432);var qX=er,GX=function(){function e(e,t,n){this.os=t,this.options=n,this.domNode=Xo(e,qX(".monaco-keybinding")),this.didEverRender=!1,e.appendChild(this.domNode)}return e.prototype.set=function(t,n){this.didEverRender&&this.keybinding===t&&e.areSame(this.matches,n)||(this.keybinding=t,this.matches=n,this.render())},e.prototype.render=function(){if(Yi(this.domNode),this.keybinding){var e=this.keybinding.getParts(),t=e[0],n=e[1];t&&this.renderPart(this.domNode,t,this.matches?this.matches.firstPart:null),n&&(Xo(this.domNode,qX("span.monaco-keybinding-key-chord-separator",void 0," ")),this.renderPart(this.domNode,n,this.matches?this.matches.chordPart:null)),this.domNode.title=this.keybinding.getAriaLabel()||""}else this.options&&this.options.renderUnboundKeybindings&&this.renderUnbound(this.domNode);this.didEverRender=!0},e.prototype.renderPart=function(e,t,n){var i=Qh.modifierLabels[this.os];t.ctrlKey&&this.renderKey(e,i.ctrlKey,Boolean(null==n?void 0:n.ctrlKey),i.separator),t.shiftKey&&this.renderKey(e,i.shiftKey,Boolean(null==n?void 0:n.shiftKey),i.separator),t.altKey&&this.renderKey(e,i.altKey,Boolean(null==n?void 0:n.altKey),i.separator),t.metaKey&&this.renderKey(e,i.metaKey,Boolean(null==n?void 0:n.metaKey),i.separator);var o=t.keyLabel;o&&this.renderKey(e,o,Boolean(null==n?void 0:n.keyCode),"")},e.prototype.renderKey=function(e,t,n,i){Xo(e,qX("span.monaco-keybinding-key"+(n?".highlight":""),void 0,t)),i&&Xo(e,qX("span.monaco-keybinding-key-separator",void 0,i))},e.prototype.renderUnbound=function(e){Xo(e,qX("span.monaco-keybinding-key",void 0,r("unbound","Unbound")))},e.areSame=function(e,t){return e===t||!e&&!t||!!e&&!!t&&Ea(e.firstPart,t.firstPart)&&Ea(e.chordPart,t.chordPart)},e}(),ZX=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),YX=0,XX=function(){function e(e){void 0===e&&(e=[]),this.id=(YX++).toString(),this.labelHighlights=e,this.descriptionHighlights=[]}return e.prototype.getId=function(){return this.id},e.prototype.getLabel=function(){},e.prototype.getLabelOptions=function(){},e.prototype.getAriaLabel=function(){return Ei([this.getLabel(),this.getDescription(),this.getDetail()]).join(", ")},e.prototype.getDetail=function(){},e.prototype.getIcon=function(){},e.prototype.getDescription=function(){},e.prototype.getTooltip=function(){},e.prototype.getDescriptionTooltip=function(){},e.prototype.getKeybinding=function(){},e.prototype.isHidden=function(){return!!this.hidden},e.prototype.setHighlights=function(e,t,n){this.labelHighlights=e,this.descriptionHighlights=t,this.detailHighlights=n},e.prototype.getHighlights=function(){return[this.labelHighlights,this.descriptionHighlights,this.detailHighlights]},e.prototype.run=function(e,t){return!1},e}(),$X=function(e){function t(t,n,i){var o=e.call(this)||this;return o.entry=t,o.groupLabel=n,o.withBorder=i,o}return ZX(t,e),t.prototype.getGroupLabel=function(){return this.groupLabel},t.prototype.setGroupLabel=function(e){this.groupLabel=e},t.prototype.showBorder=function(){return!!this.withBorder},t.prototype.setShowBorder=function(e){this.withBorder=e},t.prototype.getLabel=function(){return this.entry?this.entry.getLabel():e.prototype.getLabel.call(this)},t.prototype.getLabelOptions=function(){return this.entry?this.entry.getLabelOptions():e.prototype.getLabelOptions.call(this)},t.prototype.getAriaLabel=function(){return this.entry?this.entry.getAriaLabel():e.prototype.getAriaLabel.call(this)},t.prototype.getDetail=function(){return this.entry?this.entry.getDetail():e.prototype.getDetail.call(this)},t.prototype.getIcon=function(){return this.entry?this.entry.getIcon():e.prototype.getIcon.call(this)},t.prototype.getDescription=function(){return this.entry?this.entry.getDescription():e.prototype.getDescription.call(this)},t.prototype.getHighlights=function(){return this.entry?this.entry.getHighlights():e.prototype.getHighlights.call(this)},t.prototype.isHidden=function(){return this.entry?this.entry.isHidden():e.prototype.isHidden.call(this)},t.prototype.setHighlights=function(t,n,i){this.entry?this.entry.setHighlights(t,n,i):e.prototype.setHighlights.call(this,t,n,i)},t.prototype.run=function(t,n){return this.entry?this.entry.run(t,n):e.prototype.run.call(this,t,n)},t}(XX),QX=function(){function e(){}return e.prototype.hasActions=function(e,t){return!1},e.prototype.getActions=function(e,t){return null},e}(),JX=function(){function e(e,t){void 0===e&&(e=new QX),this.actionProvider=e,this.actionRunner=t}return e.prototype.getHeight=function(e){return e.getDetail()?44:22},e.prototype.getTemplateId=function(e){return e instanceof $X?"quickOpenEntryGroup":"quickOpenEntry"},e.prototype.renderTemplate=function(e,t,n){var i=document.createElement("div");no(i,"sub-content"),t.appendChild(i);var o=er(".quick-open-row"),r=er(".quick-open-row"),s=er(".quick-open-entry",void 0,o,r);i.appendChild(s);var a=document.createElement("span");o.appendChild(a);var u=new AH(o,{supportHighlights:!0,supportDescriptionHighlights:!0,supportCodicons:!0}),l=document.createElement("span");o.appendChild(l),no(l,"quick-open-entry-keybinding");var c=new GX(l,x),d=document.createElement("div");r.appendChild(d),no(d,"quick-open-entry-meta");var h,p=new TH(d,!0);"quickOpenEntryGroup"===e&&(h=document.createElement("div"),no(h,"results-group"),t.appendChild(h)),no(t,"actions");var f=document.createElement("div");return no(f,"primary-action-bar"),t.appendChild(f),{container:t,entry:s,icon:a,label:u,detail:p,keybinding:c,group:h,actionBar:new vD(f,{actionRunner:this.actionRunner})}},e.prototype.renderElement=function(e,t,n,i){this.actionProvider.hasActions(null,e)?no(n.container,"has-actions"):oo(n.container,"has-actions"),n.actionBar.context=e;var o=this.actionProvider.getActions(null,e);if(n.actionBar.isEmpty()&&o&&o.length>0?n.actionBar.push(o,{icon:!0,label:!1}):n.actionBar.isEmpty()||o&&0!==o.length||n.actionBar.clear(),e instanceof $X&&e.getGroupLabel()?no(n.container,"has-group-label"):oo(n.container,"has-group-label"),e instanceof $X){var r=e,s=n;r.showBorder()?(no(s.container,"results-group-separator"),i.pickerGroupBorder&&(s.container.style.borderTopColor=i.pickerGroupBorder.toString())):(oo(s.container,"results-group-separator"),s.container.style.borderTopColor="");var a=r.getGroupLabel()||"";s.group&&(s.group.textContent=a,i.pickerGroupForeground&&(s.group.style.color=i.pickerGroupForeground.toString()))}if(e instanceof XX){var u=e.getHighlights(),l=u[0],c=u[1],d=u[2],h=e.getIcon()?"quick-open-entry-icon "+e.getIcon():"";n.icon.className=h;var p=e.getLabelOptions()||Object.create(null);p.matches=l||[],p.title=e.getTooltip(),p.descriptionTitle=e.getDescriptionTooltip()||e.getDescription(),p.descriptionMatches=c||[],n.label.setLabel(e.getLabel()||"",e.getDescription(),p),n.detail.set(e.getDetail(),d),n.keybinding.set(e.getKeybinding())}},e.prototype.disposeTemplate=function(e,t){t.actionBar.dispose(),t.actionBar=null,t.container=null,t.entry=null,t.keybinding=null,t.detail=null,t.group=null,t.icon=null,t.label.dispose(),t.label=null},e}(),e$=function(){function e(e,t){void 0===e&&(e=[]),void 0===t&&(t=new QX),this._entries=e,this._dataSource=this,this._renderer=new JX(t),this._filter=this,this._runner=this,this._accessibilityProvider=this}return Object.defineProperty(e.prototype,"entries",{get:function(){return this._entries},set:function(e){this._entries=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"dataSource",{get:function(){return this._dataSource},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"renderer",{get:function(){return this._renderer},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"filter",{get:function(){return this._filter},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"runner",{get:function(){return this._runner},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"accessibilityProvider",{get:function(){return this._accessibilityProvider},enumerable:!0,configurable:!0}),e.prototype.getId=function(e){return e.getId()},e.prototype.getLabel=function(e){return $s(e.getLabel())},e.prototype.getAriaLabel=function(e){return e.getAriaLabel()?r("quickOpenAriaLabelEntry","{0}, picker",e.getAriaLabel()):r("quickOpenAriaLabel","picker")},e.prototype.isVisible=function(e){return!e.isHidden()},e.prototype.run=function(e,t,n){return e.run(t,n)},e}(),t$=(n(433),n(434),function(){function e(e){this.modelProvider=Ks(e.getModel)?e:{getModel:function(){return e}}}return e.prototype.getId=function(e,t){if(!t)return null;var n=this.modelProvider.getModel();return n===t?"__root__":n.dataSource.getId(t)},e.prototype.hasChildren=function(e,t){var n=this.modelProvider.getModel();return!!(n&&n===t&&n.entries.length>0)},e.prototype.getChildren=function(e,t){var n=this.modelProvider.getModel();return Promise.resolve(n===t?n.entries:[])},e.prototype.getParent=function(e,t){return Promise.resolve(null)},e}()),n$=function(){function e(e){this.modelProvider=e}return e.prototype.getAriaLabel=function(e,t){var n=this.modelProvider.getModel();return n.accessibilityProvider?n.accessibilityProvider.getAriaLabel(t):null},e.prototype.getPosInSet=function(e,t){var n=this.modelProvider.getModel(),i=0;if(n.filter)for(var o=0,r=n.entries;o<r.length;o++){var s=r[o];if(n.filter.isVisible(s)&&i++,s===t)break}else i=n.entries.indexOf(t)+1;return String(i)},e.prototype.getSetSize=function(){var e=this.modelProvider.getModel(),t=0;if(e.filter)for(var n=0,i=e.entries;n<i.length;n++){var o=i[n];e.filter.isVisible(o)&&t++}else t=e.entries.length;return String(t)},e}(),i$=function(){function e(e){this.modelProvider=e}return e.prototype.isVisible=function(e,t){var n=this.modelProvider.getModel();return!n.filter||n.filter.isVisible(t)},e}(),o$=function(){function e(e,t){this.modelProvider=e,this.styles=t}return e.prototype.updateStyles=function(e){this.styles=e},e.prototype.getHeight=function(e,t){return this.modelProvider.getModel().renderer.getHeight(t)},e.prototype.getTemplateId=function(e,t){return this.modelProvider.getModel().renderer.getTemplateId(t)},e.prototype.renderTemplate=function(e,t,n){return this.modelProvider.getModel().renderer.renderTemplate(t,n,this.styles)},e.prototype.renderElement=function(e,t,n,i){this.modelProvider.getModel().renderer.renderElement(t,n,i,this.styles)},e.prototype.disposeTemplate=function(e,t,n){this.modelProvider.getModel().renderer.disposeTemplate(t,n)},e}(),r$=(n(435),function(){function e(){this._arr=[]}return e.prototype.set=function(e,t){this._arr.push({keybinding:mt(e,x),callback:t})},e.prototype.dispatch=function(e){for(var t=this._arr.length-1;t>=0;t--){var n=this._arr[t];if(e.toChord().equals(n.keybinding))return n.callback}return null},e}()),s$=function(){function e(e){var t=this;void 0===e&&(e={clickBehavior:0,keyboardSupport:!0,openMode:0}),this.options=e,this.downKeyBindingDispatcher=new r$,this.upKeyBindingDispatcher=new r$,("boolean"!=typeof e.keyboardSupport||e.keyboardSupport)&&(this.downKeyBindingDispatcher.set(16,(function(e,n){return t.onUp(e,n)})),this.downKeyBindingDispatcher.set(18,(function(e,n){return t.onDown(e,n)})),this.downKeyBindingDispatcher.set(15,(function(e,n){return t.onLeft(e,n)})),this.downKeyBindingDispatcher.set(17,(function(e,n){return t.onRight(e,n)})),_&&(this.downKeyBindingDispatcher.set(2064,(function(e,n){return t.onLeft(e,n)})),this.downKeyBindingDispatcher.set(300,(function(e,n){return t.onDown(e,n)})),this.downKeyBindingDispatcher.set(302,(function(e,n){return t.onUp(e,n)}))),this.downKeyBindingDispatcher.set(11,(function(e,n){return t.onPageUp(e,n)})),this.downKeyBindingDispatcher.set(12,(function(e,n){return t.onPageDown(e,n)})),this.downKeyBindingDispatcher.set(14,(function(e,n){return t.onHome(e,n)})),this.downKeyBindingDispatcher.set(13,(function(e,n){return t.onEnd(e,n)})),this.downKeyBindingDispatcher.set(10,(function(e,n){return t.onSpace(e,n)})),this.downKeyBindingDispatcher.set(9,(function(e,n){return t.onEscape(e,n)})),this.upKeyBindingDispatcher.set(3,this.onEnter.bind(this)),this.upKeyBindingDispatcher.set(2051,this.onEnter.bind(this)))}return e.prototype.onMouseDown=function(e,t,n,i){if(void 0===i&&(i="mouse"),0===this.options.clickBehavior&&(n.leftButton||n.middleButton)){if(n.target){if(n.target.tagName&&"input"===n.target.tagName.toLowerCase())return!1;if(Wo(n.target,"scrollbar","monaco-tree"))return!1;if(Wo(n.target,"monaco-action-bar","row"))return!1}return this.onLeftClick(e,t,n,i)}return!1},e.prototype.onClick=function(e,t,n){return _&&n.ctrlKey?(n.preventDefault(),n.stopPropagation(),!1):(!n.target||!n.target.tagName||"input"!==n.target.tagName.toLowerCase())&&((0!==this.options.clickBehavior||!n.leftButton&&!n.middleButton)&&this.onLeftClick(e,t,n))},e.prototype.onLeftClick=function(e,t,n,i){void 0===i&&(i="mouse");var o=n,r={origin:i,originalEvent:n,didClickOnTwistie:this.isClickOnTwistie(o)};e.getInput()===t?(e.clearFocus(r),e.clearSelection(r)):(n&&o.browserEvent&&"mousedown"===o.browserEvent.type&&1===o.browserEvent.detail||n.preventDefault(),n.stopPropagation(),e.domFocus(),e.setSelection([t],r),e.setFocus(t,r),this.shouldToggleExpansion(t,o,i)&&(e.isExpanded(t)?e.collapse(t).then(void 0,De):e.expand(t).then(void 0,De)));return!0},e.prototype.shouldToggleExpansion=function(e,t,n){var i="mouse"===n&&2===t.detail;return this.openOnSingleClick||i||this.isClickOnTwistie(t)},Object.defineProperty(e.prototype,"openOnSingleClick",{get:function(){return 0===this.options.openMode},enumerable:!0,configurable:!0}),e.prototype.isClickOnTwistie=function(e){var t=e.target;if(!to(t,"content"))return!1;var n=window.getComputedStyle(t,":before");if("none"===n.backgroundImage||"none"===n.display)return!1;var i=parseInt(n.width)+parseInt(n.paddingRight);return e.browserEvent.offsetX<=i},e.prototype.onContextMenu=function(e,t,n){return n.target&&n.target.tagName&&"input"===n.target.tagName.toLowerCase()||n&&(n.preventDefault(),n.stopPropagation()),!1},e.prototype.onTap=function(e,t,n){var i=n.initialTarget;return(!i||!i.tagName||"input"!==i.tagName.toLowerCase())&&this.onLeftClick(e,t,n,"touch")},e.prototype.onKeyDown=function(e,t){return this.onKey(this.downKeyBindingDispatcher,e,t)},e.prototype.onKeyUp=function(e,t){return this.onKey(this.upKeyBindingDispatcher,e,t)},e.prototype.onKey=function(e,t,n){var i=e.dispatch(n.toKeybinding());return!(!i||!i(t,n))&&(n.preventDefault(),n.stopPropagation(),!0)},e.prototype.onUp=function(e,t){var n={origin:"keyboard",originalEvent:t};return e.getHighlight()?e.clearHighlight(n):(e.focusPrevious(1,n),e.reveal(e.getFocus()).then(void 0,De)),!0},e.prototype.onPageUp=function(e,t){var n={origin:"keyboard",originalEvent:t};return e.getHighlight()?e.clearHighlight(n):(e.focusPreviousPage(n),e.reveal(e.getFocus()).then(void 0,De)),!0},e.prototype.onDown=function(e,t){var n={origin:"keyboard",originalEvent:t};return e.getHighlight()?e.clearHighlight(n):(e.focusNext(1,n),e.reveal(e.getFocus()).then(void 0,De)),!0},e.prototype.onPageDown=function(e,t){var n={origin:"keyboard",originalEvent:t};return e.getHighlight()?e.clearHighlight(n):(e.focusNextPage(n),e.reveal(e.getFocus()).then(void 0,De)),!0},e.prototype.onHome=function(e,t){var n={origin:"keyboard",originalEvent:t};return e.getHighlight()?e.clearHighlight(n):(e.focusFirst(n),e.reveal(e.getFocus()).then(void 0,De)),!0},e.prototype.onEnd=function(e,t){var n={origin:"keyboard",originalEvent:t};return e.getHighlight()?e.clearHighlight(n):(e.focusLast(n),e.reveal(e.getFocus()).then(void 0,De)),!0},e.prototype.onLeft=function(e,t){var n={origin:"keyboard",originalEvent:t};if(e.getHighlight())e.clearHighlight(n);else{var i=e.getFocus();e.collapse(i).then((function(t){if(i&&!t)return e.focusParent(n),e.reveal(e.getFocus())})).then(void 0,De)}return!0},e.prototype.onRight=function(e,t){var n={origin:"keyboard",originalEvent:t};if(e.getHighlight())e.clearHighlight(n);else{var i=e.getFocus();e.expand(i).then((function(t){if(i&&!t)return e.focusFirstChild(n),e.reveal(e.getFocus())})).then(void 0,De)}return!0},e.prototype.onEnter=function(e,t){var n={origin:"keyboard",originalEvent:t};if(e.getHighlight())return!1;var i=e.getFocus();return i&&e.setSelection([i],n),!0},e.prototype.onSpace=function(e,t){if(e.getHighlight())return!1;var n=e.getFocus();return n&&e.toggleExpansion(n),!0},e.prototype.onEscape=function(e,t){var n={origin:"keyboard",originalEvent:t};return e.getHighlight()?(e.clearHighlight(n),!0):e.getSelection().length?(e.clearSelection(n),!0):!!e.getFocus()&&(e.clearFocus(n),!0)},e}(),a$=function(){function e(){}return e.prototype.getDragURI=function(e,t){return null},e.prototype.onDragStart=function(e,t,n){},e.prototype.onDragOver=function(e,t,n,i){return null},e.prototype.drop=function(e,t,n,i){},e}(),u$=function(){function e(){}return e.prototype.isVisible=function(e,t){return!0},e}(),l$=function(){function e(){}return e.prototype.getAriaLabel=function(e,t){return null},e}(),c$=function(){function e(e,t){this.styleElement=e,this.selectorSuffix=t}return e.prototype.style=function(e){var t=this.selectorSuffix?"."+this.selectorSuffix:"",n=[];e.listFocusBackground&&n.push(".monaco-tree"+t+".focused .monaco-tree-rows > .monaco-tree-row.focused:not(.highlighted) { background-color: "+e.listFocusBackground+"; }"),e.listFocusForeground&&n.push(".monaco-tree"+t+".focused .monaco-tree-rows > .monaco-tree-row.focused:not(.highlighted) { color: "+e.listFocusForeground+"; }"),e.listActiveSelectionBackground&&n.push(".monaco-tree"+t+".focused .monaco-tree-rows > .monaco-tree-row.selected:not(.highlighted) { background-color: "+e.listActiveSelectionBackground+"; }"),e.listActiveSelectionForeground&&n.push(".monaco-tree"+t+".focused .monaco-tree-rows > .monaco-tree-row.selected:not(.highlighted) { color: "+e.listActiveSelectionForeground+"; }"),e.listFocusAndSelectionBackground&&n.push("\n\t\t\t\t.monaco-tree-drag-image,\n\t\t\t\t.monaco-tree"+t+".focused .monaco-tree-rows > .monaco-tree-row.focused.selected:not(.highlighted) { background-color: "+e.listFocusAndSelectionBackground+"; }\n\t\t\t"),e.listFocusAndSelectionForeground&&n.push("\n\t\t\t\t.monaco-tree-drag-image,\n\t\t\t\t.monaco-tree"+t+".focused .monaco-tree-rows > .monaco-tree-row.focused.selected:not(.highlighted) { color: "+e.listFocusAndSelectionForeground+"; }\n\t\t\t"),e.listInactiveSelectionBackground&&n.push(".monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row.selected:not(.highlighted) { background-color: "+e.listInactiveSelectionBackground+"; }"),e.listInactiveSelectionForeground&&n.push(".monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row.selected:not(.highlighted) { color: "+e.listInactiveSelectionForeground+"; }"),e.listHoverBackground&&n.push(".monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row:hover:not(.highlighted):not(.selected):not(.focused) { background-color: "+e.listHoverBackground+"; }"),e.listHoverForeground&&n.push(".monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row:hover:not(.highlighted):not(.selected):not(.focused) { color: "+e.listHoverForeground+"; }"),e.listDropBackground&&n.push("\n\t\t\t\t.monaco-tree"+t+" .monaco-tree-wrapper.drop-target,\n\t\t\t\t.monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row.drop-target { background-color: "+e.listDropBackground+" !important; color: inherit !important; }\n\t\t\t"),e.listFocusOutline&&n.push("\n\t\t\t\t.monaco-tree-drag-image\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{ border: 1px solid "+e.listFocusOutline+"; background: #000; }\n\t\t\t\t.monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row \t\t\t\t\t\t\t\t\t\t\t\t\t\t{ border: 1px solid transparent; }\n\t\t\t\t.monaco-tree"+t+".focused .monaco-tree-rows > .monaco-tree-row.focused:not(.highlighted) \t\t\t\t\t\t{ border: 1px dotted "+e.listFocusOutline+"; }\n\t\t\t\t.monaco-tree"+t+".focused .monaco-tree-rows > .monaco-tree-row.selected:not(.highlighted) \t\t\t\t\t\t{ border: 1px solid "+e.listFocusOutline+"; }\n\t\t\t\t.monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row.selected:not(.highlighted) \t\t\t\t\t\t\t{ border: 1px solid "+e.listFocusOutline+"; }\n\t\t\t\t.monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row:hover:not(.highlighted):not(.selected):not(.focused) \t{ border: 1px dashed "+e.listFocusOutline+"; }\n\t\t\t\t.monaco-tree"+t+" .monaco-tree-wrapper.drop-target,\n\t\t\t\t.monaco-tree"+t+" .monaco-tree-rows > .monaco-tree-row.drop-target\t\t\t\t\t\t\t\t\t\t\t\t{ border: 1px dashed "+e.listFocusOutline+"; }\n\t\t\t");var i=n.join("\n");i!==this.styleElement.innerHTML&&(this.styleElement.innerHTML=i)},e}(),d$=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),h$=function(){function e(e){this._onDispose=new nt,this.onDispose=this._onDispose.event,this._item=e}return Object.defineProperty(e.prototype,"item",{get:function(){return this._item},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){this._onDispose&&(this._onDispose.fire(),this._onDispose.dispose(),this._onDispose=void 0)},e}(),p$=function(){function e(){this.locks=Object.create({})}return e.prototype.isLocked=function(e){return!!this.locks[e.id]},e.prototype.run=function(e,t){var n=this,i=this.getLock(e);return new Promise(i?function(o,r){Ge.once(i.onDispose)((function(){return n.run(e,t).then(o,r)}))}:function(i,o){if(e.isDisposed())return o(new Error("Item is disposed."));var r=n.locks[e.id]=new h$(e);return t().then((function(t){return delete n.locks[e.id],r.dispose(),t})).then(i,o)})},e.prototype.getLock=function(e){var t;for(t in this.locks){var n=this.locks[t];if(e.intersects(n.item))return n}return null},e}(),f$=function(){function e(){this._isDisposed=!1,this._onDidRevealItem=new ot,this.onDidRevealItem=this._onDidRevealItem.event,this._onExpandItem=new ot,this.onExpandItem=this._onExpandItem.event,this._onDidExpandItem=new ot,this.onDidExpandItem=this._onDidExpandItem.event,this._onCollapseItem=new ot,this.onCollapseItem=this._onCollapseItem.event,this._onDidCollapseItem=new ot,this.onDidCollapseItem=this._onDidCollapseItem.event,this._onDidAddTraitItem=new ot,this.onDidAddTraitItem=this._onDidAddTraitItem.event,this._onDidRemoveTraitItem=new ot,this.onDidRemoveTraitItem=this._onDidRemoveTraitItem.event,this._onDidRefreshItem=new ot,this.onDidRefreshItem=this._onDidRefreshItem.event,this._onRefreshItemChildren=new ot,this.onRefreshItemChildren=this._onRefreshItemChildren.event,this._onDidRefreshItemChildren=new ot,this.onDidRefreshItemChildren=this._onDidRefreshItemChildren.event,this._onDidDisposeItem=new ot,this.onDidDisposeItem=this._onDidDisposeItem.event,this.items={}}return e.prototype.register=function(e){La(!this.isRegistered(e.id),"item already registered: "+e.id);var t=Fe(this._onDidRevealItem.add(e.onDidReveal),this._onExpandItem.add(e.onExpand),this._onDidExpandItem.add(e.onDidExpand),this._onCollapseItem.add(e.onCollapse),this._onDidCollapseItem.add(e.onDidCollapse),this._onDidAddTraitItem.add(e.onDidAddTrait),this._onDidRemoveTraitItem.add(e.onDidRemoveTrait),this._onDidRefreshItem.add(e.onDidRefresh),this._onRefreshItemChildren.add(e.onRefreshChildren),this._onDidRefreshItemChildren.add(e.onDidRefreshChildren),this._onDidDisposeItem.add(e.onDidDispose));this.items[e.id]={item:e,disposable:t}},e.prototype.deregister=function(e){La(this.isRegistered(e.id),"item not registered: "+e.id),this.items[e.id].disposable.dispose(),delete this.items[e.id]},e.prototype.isRegistered=function(e){return this.items.hasOwnProperty(e)},e.prototype.getItem=function(e){var t=this.items[e];return t?t.item:null},e.prototype.dispose=function(){this.items={},this._onDidRevealItem.dispose(),this._onExpandItem.dispose(),this._onDidExpandItem.dispose(),this._onCollapseItem.dispose(),this._onDidCollapseItem.dispose(),this._onDidAddTraitItem.dispose(),this._onDidRemoveTraitItem.dispose(),this._onDidRefreshItem.dispose(),this._onRefreshItemChildren.dispose(),this._onDidRefreshItemChildren.dispose(),this._isDisposed=!0},e.prototype.isDisposed=function(){return this._isDisposed},e}(),g$=function(){function e(e,t,n,i,o){this._onDidCreate=new nt,this._onDidReveal=new nt,this.onDidReveal=this._onDidReveal.event,this._onExpand=new nt,this.onExpand=this._onExpand.event,this._onDidExpand=new nt,this.onDidExpand=this._onDidExpand.event,this._onCollapse=new nt,this.onCollapse=this._onCollapse.event,this._onDidCollapse=new nt,this.onDidCollapse=this._onDidCollapse.event,this._onDidAddTrait=new nt,this.onDidAddTrait=this._onDidAddTrait.event,this._onDidRemoveTrait=new nt,this.onDidRemoveTrait=this._onDidRemoveTrait.event,this._onDidRefresh=new nt,this.onDidRefresh=this._onDidRefresh.event,this._onRefreshChildren=new nt,this.onRefreshChildren=this._onRefreshChildren.event,this._onDidRefreshChildren=new nt,this.onDidRefreshChildren=this._onDidRefreshChildren.event,this._onDidDispose=new nt,this.onDidDispose=this._onDidDispose.event,this.registry=t,this.context=n,this.lock=i,this.element=o,this.id=e,this.registry.register(this),this.doesHaveChildren=this.context.dataSource.hasChildren(this.context.tree,this.element),this.needsChildrenRefresh=!0,this.parent=null,this.previous=null,this.next=null,this.firstChild=null,this.lastChild=null,this.traits={},this.depth=0,this.expanded=!(!this.context.dataSource.shouldAutoexpand||!this.context.dataSource.shouldAutoexpand(this.context.tree,o)),this._onDidCreate.fire(this),this.visible=this._isVisible(),this.height=this._getHeight(),this._isDisposed=!1}return e.prototype.getElement=function(){return this.element},e.prototype.hasChildren=function(){return this.doesHaveChildren},e.prototype.getDepth=function(){return this.depth},e.prototype.isVisible=function(){return this.visible},e.prototype.setVisible=function(e){this.visible=e},e.prototype.isExpanded=function(){return this.expanded},e.prototype._setExpanded=function(e){this.expanded=e},e.prototype.reveal=function(e){void 0===e&&(e=null);var t={item:this,relativeTop:e};this._onDidReveal.fire(t)},e.prototype.expand=function(){var e=this;return this.isExpanded()||!this.doesHaveChildren||this.lock.isLocked(this)?Promise.resolve(!1):this.lock.run(this,(function(){if(e.isExpanded()||!e.doesHaveChildren)return Promise.resolve(!1);var t={item:e};return e._onExpand.fire(t),(e.needsChildrenRefresh?e.refreshChildren(!1,!0,!0):Promise.resolve(null)).then((function(){return e._setExpanded(!0),e._onDidExpand.fire(t),!0}))})).then((function(t){return!e.isDisposed()&&(e.context.options.autoExpandSingleChildren&&t&&null!==e.firstChild&&e.firstChild===e.lastChild&&e.firstChild.isVisible()?e.firstChild.expand().then((function(){return!0})):t)}))},e.prototype.collapse=function(e){var t=this;if(void 0===e&&(e=!1),e){var n=Promise.resolve(null);return this.forEachChild((function(e){n=n.then((function(){return e.collapse(!0)}))})),n.then((function(){return t.collapse(!1)}))}return!this.isExpanded()||this.lock.isLocked(this)?Promise.resolve(!1):this.lock.run(this,(function(){var e={item:t};return t._onCollapse.fire(e),t._setExpanded(!1),t._onDidCollapse.fire(e),Promise.resolve(!0)}))},e.prototype.addTrait=function(e){var t={item:this,trait:e};this.traits[e]=!0,this._onDidAddTrait.fire(t)},e.prototype.removeTrait=function(e){var t={item:this,trait:e};delete this.traits[e],this._onDidRemoveTrait.fire(t)},e.prototype.hasTrait=function(e){return this.traits[e]||!1},e.prototype.getAllTraits=function(){var e,t=[];for(e in this.traits)this.traits.hasOwnProperty(e)&&this.traits[e]&&t.push(e);return t},e.prototype.getHeight=function(){return this.height},e.prototype.refreshChildren=function(t,n,i){var o=this;if(void 0===n&&(n=!1),void 0===i&&(i=!1),!i&&!this.isExpanded()){var r=function(e){e.needsChildrenRefresh=!0,e.forEachChild(r)};return r(this),Promise.resolve(this)}this.needsChildrenRefresh=!1;var s=function(){var i={item:o,isNested:n};return o._onRefreshChildren.fire(i),(o.doesHaveChildren?o.context.dataSource.getChildren(o.context.tree,o.element):Promise.resolve([])).then((function(n){if(o.isDisposed()||o.registry.isDisposed())return Promise.resolve(null);if(!Array.isArray(n))return Promise.reject(new Error("Please return an array of children."));n=n?n.slice(0):[],n=o.sort(n);for(var i={};null!==o.firstChild;)i[o.firstChild.id]=o.firstChild,o.removeChild(o.firstChild);for(var r=0,s=n.length;r<s;r++){var a=n[r],u=o.context.dataSource.getId(o.context.tree,a),l=i[u]||new e(u,o.registry,o.context,o.lock,a);l.element=a,t&&(l.needsChildrenRefresh=t),delete i[u],o.addChild(l)}for(var c in i)i.hasOwnProperty(c)&&i[c].dispose();return t?Promise.all(o.mapEachChild((function(e){return e.doRefresh(t,!0)}))):Promise.all(o.mapEachChild((function(e){return e.isExpanded()&&e.needsChildrenRefresh?e.doRefresh(t,!0):(e.updateVisibility(),Promise.resolve(null))})))})).then(void 0,De).then((function(){return o._onDidRefreshChildren.fire(i)}))};return n?s():this.lock.run(this,s)},e.prototype.doRefresh=function(e,t){return void 0===t&&(t=!1),this.doesHaveChildren=this.context.dataSource.hasChildren(this.context.tree,this.element),this.height=this._getHeight(),this.updateVisibility(),this._onDidRefresh.fire(this),this.refreshChildren(e,t)},e.prototype.updateVisibility=function(){this.setVisible(this._isVisible())},e.prototype.refresh=function(e){return this.doRefresh(e)},e.prototype.getNavigator=function(){return new v$(this)},e.prototype.intersects=function(e){return this.isAncestorOf(e)||e.isAncestorOf(this)},e.prototype.isAncestorOf=function(e){for(var t=e;t;){if(t.id===this.id)return!0;t=t.parent}return!1},e.prototype.addChild=function(e,t){void 0===t&&(t=this.lastChild);var n=null===this.firstChild,i=null===t,o=t===this.lastChild;if(n)this.firstChild=this.lastChild=e,e.next=e.previous=null;else if(i){if(!this.firstChild)throw new Error("Invalid tree state");this.firstChild.previous=e,e.next=this.firstChild,e.previous=null,this.firstChild=e}else if(o){if(!this.lastChild)throw new Error("Invalid tree state");this.lastChild.next=e,e.next=null,e.previous=this.lastChild,this.lastChild=e}else{if(e.previous=t,!t)throw new Error("Invalid tree state");if(e.next=t.next,!t.next)throw new Error("Invalid tree state");t.next.previous=e,t.next=e}e.parent=this,e.depth=this.depth+1},e.prototype.removeChild=function(e){var t=this.firstChild===e,n=this.lastChild===e;if(t&&n)this.firstChild=this.lastChild=null;else if(t){if(!e.next)throw new Error("Invalid tree state");e.next.previous=null,this.firstChild=e.next}else if(n){if(!e.previous)throw new Error("Invalid tree state");e.previous.next=null,this.lastChild=e.previous}else{if(!e.next)throw new Error("Invalid tree state");if(e.next.previous=e.previous,!e.previous)throw new Error("Invalid tree state");e.previous.next=e.next}e.parent=null,e.depth=NaN},e.prototype.forEachChild=function(e){for(var t,n=this.firstChild;n;)t=n.next,e(n),n=t},e.prototype.mapEachChild=function(e){var t=[];return this.forEachChild((function(n){t.push(e(n))})),t},e.prototype.sort=function(e){var t=this,n=this.context.sorter;return n?e.sort((function(e,i){return n.compare(t.context.tree,e,i)})):e},e.prototype._getHeight=function(){return this.context.renderer?this.context.renderer.getHeight(this.context.tree,this.element):0},e.prototype._isVisible=function(){return!!this.context.filter&&this.context.filter.isVisible(this.context.tree,this.element)},e.prototype.isDisposed=function(){return this._isDisposed},e.prototype.dispose=function(){this.forEachChild((function(e){return e.dispose()})),this.parent=null,this.previous=null,this.next=null,this.firstChild=null,this.lastChild=null,this._onDidDispose.fire(this),this.registry.deregister(this),this._onDidCreate.dispose(),this._onDidReveal.dispose(),this._onExpand.dispose(),this._onDidExpand.dispose(),this._onCollapse.dispose(),this._onDidCollapse.dispose(),this._onDidAddTrait.dispose(),this._onDidRemoveTrait.dispose(),this._onDidRefresh.dispose(),this._onRefreshChildren.dispose(),this._onDidRefreshChildren.dispose(),this._onDidDispose.dispose(),this._isDisposed=!0},e}(),m$=function(e){function t(t,n,i,o,r){return e.call(this,t,n,i,o,r)||this}return d$(t,e),t.prototype.isVisible=function(){return!1},t.prototype.setVisible=function(e){},t.prototype.isExpanded=function(){return!0},t.prototype._setExpanded=function(e){},t.prototype._getHeight=function(){return 0},t.prototype._isVisible=function(){return!1},t}(g$),v$=function(){function e(e,t){void 0===t&&(t=!0),this.item=e,this.start=t?e:null}return e.lastDescendantOf=function(t){return t?t instanceof m$?e.lastDescendantOf(t.lastChild):t.isVisible()?t.isExpanded()&&null!==t.lastChild?e.lastDescendantOf(t.lastChild):t:e.lastDescendantOf(t.previous):null},e.prototype.current=function(){return this.item||null},e.prototype.next=function(){if(this.item)do{if((this.item instanceof m$||this.item.isVisible()&&this.item.isExpanded())&&this.item.firstChild)this.item=this.item.firstChild;else if(this.item===this.start)this.item=null;else{for(;this.item&&this.item!==this.start&&!this.item.next;)this.item=this.item.parent;this.item===this.start&&(this.item=null),this.item=this.item?this.item.next:null}}while(this.item&&!this.item.isVisible());return this.item||null},e.prototype.previous=function(){if(this.item)do{var t=e.lastDescendantOf(this.item.previous);t?this.item=t:this.item.parent&&this.item.parent!==this.start&&this.item.parent.isVisible()?this.item=this.item.parent:this.item=null}while(this.item&&!this.item.isVisible());return this.item||null},e.prototype.parent=function(){if(this.item){var e=this.item.parent;e&&e!==this.start&&e.isVisible()?this.item=e:this.item=null}return this.item||null},e.prototype.first=function(){return this.item=this.start,this.next(),this.item||null},e.prototype.last=function(){return e.lastDescendantOf(this.start)},e}(),_$=function(){function e(e){this.registry=new f$,this.registryDisposable=He.None,this._onSetInput=new nt,this.onSetInput=this._onSetInput.event,this._onDidSetInput=new nt,this.onDidSetInput=this._onDidSetInput.event,this._onRefresh=new nt,this.onRefresh=this._onRefresh.event,this._onDidRefresh=new nt,this.onDidRefresh=this._onDidRefresh.event,this._onDidHighlight=new nt,this.onDidHighlight=this._onDidHighlight.event,this._onDidSelect=new nt,this.onDidSelect=this._onDidSelect.event,this._onDidFocus=new nt,this.onDidFocus=this._onDidFocus.event,this._onDidRevealItem=new st,this.onDidRevealItem=this._onDidRevealItem.event,this._onExpandItem=new st,this.onExpandItem=this._onExpandItem.event,this._onDidExpandItem=new st,this.onDidExpandItem=this._onDidExpandItem.event,this._onCollapseItem=new st,this.onCollapseItem=this._onCollapseItem.event,this._onDidCollapseItem=new st,this.onDidCollapseItem=this._onDidCollapseItem.event,this._onDidAddTraitItem=new st,this.onDidAddTraitItem=this._onDidAddTraitItem.event,this._onDidRemoveTraitItem=new st,this.onDidRemoveTraitItem=this._onDidRemoveTraitItem.event,this._onDidRefreshItem=new st,this.onDidRefreshItem=this._onDidRefreshItem.event,this._onRefreshItemChildren=new st,this.onRefreshItemChildren=this._onRefreshItemChildren.event,this._onDidRefreshItemChildren=new st,this.onDidRefreshItemChildren=this._onDidRefreshItemChildren.event,this._onDidDisposeItem=new st,this.context=e,this.input=null,this.traitsToItems={}}return e.prototype.setInput=function(e){var t=this,n={item:this.input};this._onSetInput.fire(n),this.setSelection([]),this.setFocus(),this.setHighlight(),this.lock=new p$,this.input&&this.input.dispose(),this.registry&&(this.registry.dispose(),this.registryDisposable.dispose()),this.registry=new f$,this._onDidRevealItem.input=this.registry.onDidRevealItem,this._onExpandItem.input=this.registry.onExpandItem,this._onDidExpandItem.input=this.registry.onDidExpandItem,this._onCollapseItem.input=this.registry.onCollapseItem,this._onDidCollapseItem.input=this.registry.onDidCollapseItem,this._onDidAddTraitItem.input=this.registry.onDidAddTraitItem,this._onDidRemoveTraitItem.input=this.registry.onDidRemoveTraitItem,this._onDidRefreshItem.input=this.registry.onDidRefreshItem,this._onRefreshItemChildren.input=this.registry.onRefreshItemChildren,this._onDidRefreshItemChildren.input=this.registry.onDidRefreshItemChildren,this._onDidDisposeItem.input=this.registry.onDidDisposeItem,this.registryDisposable=this.registry.onDidDisposeItem((function(e){return e.getAllTraits().forEach((function(n){return delete t.traitsToItems[n][e.id]}))}));var i=this.context.dataSource.getId(this.context.tree,e);return this.input=new m$(i,this.registry,this.context,this.lock,e),n={item:this.input},this._onDidSetInput.fire(n),this.refresh(this.input)},e.prototype.getInput=function(){return this.input?this.input.getElement():null},e.prototype.refresh=function(e,t){var n=this;void 0===e&&(e=null),void 0===t&&(t=!0);var i=this.getItem(e);if(!i)return Promise.resolve(null);var o={item:i,recursive:t};return this._onRefresh.fire(o),i.refresh(t).then((function(){n._onDidRefresh.fire(o)}))},e.prototype.expand=function(e){var t=this.getItem(e);return t?t.expand():Promise.resolve(!1)},e.prototype.collapse=function(e,t){void 0===t&&(t=!1);var n=this.getItem(e);return n?n.collapse(t):Promise.resolve(!1)},e.prototype.toggleExpansion=function(e,t){return void 0===t&&(t=!1),this.isExpanded(e)?this.collapse(e,t):this.expand(e)},e.prototype.isExpanded=function(e){var t=this.getItem(e);return!!t&&t.isExpanded()},e.prototype.reveal=function(e,t){var n=this;return void 0===t&&(t=null),this.resolveUnknownParentChain(e).then((function(e){var t=Promise.resolve(null);return e.forEach((function(e){t=t.then((function(){return n.expand(e)}))})),t})).then((function(){var i=n.getItem(e);if(i)return i.reveal(t)}))},e.prototype.resolveUnknownParentChain=function(e){var t=this;return this.context.dataSource.getParent(this.context.tree,e).then((function(e){return e?t.resolveUnknownParentChain(e).then((function(t){return t.push(e),t})):Promise.resolve([])}))},e.prototype.setHighlight=function(e,t){this.setTraits("highlighted",e?[e]:[]);var n={highlight:this.getHighlight(),payload:t};this._onDidHighlight.fire(n)},e.prototype.getHighlight=function(e){void 0===e&&(e=!1);var t=this.getElementsWithTrait("highlighted",e);return 0===t.length?null:t[0]},e.prototype.setSelection=function(e,t){this.setTraits("selected",e);var n={selection:this.getSelection(),payload:t};this._onDidSelect.fire(n)},e.prototype.getSelection=function(e){return void 0===e&&(e=!1),this.getElementsWithTrait("selected",e)},e.prototype.setFocus=function(e,t){this.setTraits("focused",e?[e]:[]);var n={focus:this.getFocus(),payload:t};this._onDidFocus.fire(n)},e.prototype.getFocus=function(e){void 0===e&&(e=!1);var t=this.getElementsWithTrait("focused",e);return 0===t.length?null:t[0]},e.prototype.focusNext=function(e,t){void 0===e&&(e=1);for(var n,i=this.getFocus()||this.input,o=this.getNavigator(i,!1),r=0;r<e&&(n=o.next());r++)i=n;this.setFocus(i,t)},e.prototype.focusPrevious=function(e,t){void 0===e&&(e=1);for(var n,i=this.getFocus()||this.input,o=this.getNavigator(i,!1),r=0;r<e&&(n=o.previous());r++)i=n;this.setFocus(i,t)},e.prototype.focusParent=function(e){var t=this.getFocus()||this.input,n=this.getNavigator(t,!1).parent();n&&this.setFocus(n,e)},e.prototype.focusFirstChild=function(e){var t=this.getItem(this.getFocus()||this.input),n=this.getNavigator(t,!1),i=n.next();n.parent()===t&&this.setFocus(i,e)},e.prototype.focusFirst=function(e,t){this.focusNth(0,e,t)},e.prototype.focusNth=function(e,t,n){for(var i=this.getParent(n),o=this.getNavigator(i),r=o.first(),s=0;s<e;s++)r=o.next();r&&this.setFocus(r,t)},e.prototype.focusLast=function(e,t){var n,i=this.getParent(t);t&&i?n=i.lastChild:n=this.getNavigator(i).last();n&&this.setFocus(n,e)},e.prototype.getParent=function(e){if(e){var t=this.getItem(e);if(t&&t.parent)return t.parent}return this.getItem(this.input)},e.prototype.getNavigator=function(e,t){return void 0===e&&(e=null),void 0===t&&(t=!0),new v$(this.getItem(e),t)},e.prototype.getItem=function(e){return void 0===e&&(e=null),null===e?this.input:e instanceof g$?e:"string"==typeof e?this.registry.getItem(e):this.registry.getItem(this.context.dataSource.getId(this.context.tree,e))},e.prototype.removeTraits=function(e,t){var n,i,o=this.traitsToItems[e]||{};if(0===t.length){for(i in o)o.hasOwnProperty(i)&&(n=o[i]).removeTrait(e);delete this.traitsToItems[e]}else for(var r=0,s=t.length;r<s;r++)(n=this.getItem(t[r]))&&(n.removeTrait(e),delete o[n.id])},e.prototype.setTraits=function(e,t){if(0===t.length)this.removeTraits(e,t);else{for(var n={},i=void 0,o=0,r=t.length;o<r;o++)(i=this.getItem(t[o]))&&(n[i.id]=i);var s=this.traitsToItems[e]||{},a=[],u=void 0;for(u in s)s.hasOwnProperty(u)&&(n.hasOwnProperty(u)?delete n[u]:a.push(s[u]));for(o=0,r=a.length;o<r;o++)(i=a[o]).removeTrait(e),delete s[i.id];for(u in n)n.hasOwnProperty(u)&&((i=n[u]).addTrait(e),s[u]=i);this.traitsToItems[e]=s}},e.prototype.getElementsWithTrait=function(e,t){var n,i=[],o=this.traitsToItems[e]||{};for(n in o)o.hasOwnProperty(n)&&(o[n].isVisible()||t)&&i.push(o[n].getElement());return i},e.prototype.dispose=function(){this.registry.dispose(),this._onSetInput.dispose(),this._onDidSetInput.dispose(),this._onRefresh.dispose(),this._onDidRefresh.dispose(),this._onDidHighlight.dispose(),this._onDidSelect.dispose(),this._onDidFocus.dispose(),this._onDidRevealItem.dispose(),this._onExpandItem.dispose(),this._onDidExpandItem.dispose(),this._onCollapseItem.dispose(),this._onDidCollapseItem.dispose(),this._onDidAddTraitItem.dispose(),this._onDidRemoveTraitItem.dispose(),this._onDidRefreshItem.dispose(),this._onRefreshItemChildren.dispose(),this._onDidRefreshItemChildren.dispose(),this._onDidDisposeItem.dispose()},e}(),y$=function(){function e(e){this.elements=e}return e.prototype.update=function(e){},e.prototype.getData=function(){return this.elements},e}(),b$=function(){function e(e){this.elements=e}return e.prototype.update=function(e){},e.prototype.getData=function(){return this.elements},e}(),w$=function(){function e(){this.types=[],this.files=[]}return e.prototype.update=function(e){e.types&&(this.types=[],Array.prototype.push.apply(this.types,e.types)),e.files&&(this.files=[],Array.prototype.push.apply(this.files,e.files),this.files=this.files.filter((function(e){return e.size||e.type})))},e.prototype.getData=function(){return{types:this.types,files:this.files}},e}(),C$=function(){function e(){this.heightMap=[],this.indexes={}}return e.prototype.getContentHeight=function(){var e=this.heightMap[this.heightMap.length-1];return e?e.top+e.height:0},e.prototype.onInsertItems=function(e,t){void 0===t&&(t=null);var n,i,o,r,s=null,a=0;if(null===t)i=0,r=0;else{if(i=this.indexes[t]+1,!(n=this.heightMap[i-1]))return void console.error("view item doesnt exist");r=n.top+n.height}for(var u=this.heightMap.splice.bind(this.heightMap,i,0),l=[];s=e.next();)(n=this.createViewItem(s)).top=r+a,this.indexes[s.id]=i++,l.push(n),a+=n.height;for(u.apply(this.heightMap,l),o=i;o<this.heightMap.length;o++)(n=this.heightMap[o]).top+=a,this.indexes[n.model.id]=o;for(o=l.length-1;o>=0;o--)this.onInsertItem(l[o]);for(o=this.heightMap.length-1;o>=i;o--)this.onRefreshItem(this.heightMap[o]);return a},e.prototype.onInsertItem=function(e){},e.prototype.onRemoveItems=function(e){for(var t,n=null,i=null,o=0,r=0;n=e.next();){if(o=this.indexes[n],!(t=this.heightMap[o]))return void console.error("view item doesnt exist");r-=t.height,delete this.indexes[n],this.onRemoveItem(t),null===i&&(i=o)}if(0!==r&&null!==i)for(this.heightMap.splice(i,o-i+1),o=i;o<this.heightMap.length;o++)(t=this.heightMap[o]).top+=r,this.indexes[t.model.id]=o,this.onRefreshItem(t)},e.prototype.onRemoveItem=function(e){},e.prototype.onRefreshItemSet=function(e){var t=this,n=e.sort((function(e,n){return t.indexes[e.id]-t.indexes[n.id]}));this.onRefreshItems(new Ze(n))},e.prototype.onRefreshItems=function(e){for(var t,n,i,o=null,r=null,s=0;o=e.next();){for(i=this.indexes[o.id];0!==s&&null!==r&&r<i;r++)(t=this.heightMap[r]).top+=s,this.onRefreshItem(t);t=this.heightMap[i],n=o.getHeight(),t.top+=s,s+=n-t.height,t.height=n,this.onRefreshItem(t,!0),r=i+1}if(0!==s&&null!==r)for(;r<this.heightMap.length;r++)(t=this.heightMap[r]).top+=s,this.onRefreshItem(t)},e.prototype.onRefreshItem=function(e,t){void 0===t&&(t=!1)},e.prototype.indexAt=function(e){for(var t,n,i=0,o=this.heightMap.length;i<o;)if(t=Math.floor((i+o)/2),e<(n=this.heightMap[t]).top)o=t;else{if(!(e>=n.top+n.height))return t;if(i===t)break;i=t}return this.heightMap.length},e.prototype.indexAfter=function(e){return Math.min(this.indexAt(e)+1,this.heightMap.length)},e.prototype.itemAtIndex=function(e){return this.heightMap[e]},e.prototype.itemAfter=function(e){return this.heightMap[this.indexes[e.model.id]+1]||null},e.prototype.createViewItem=function(e){throw new Error("not implemented")},e.prototype.dispose=function(){this.heightMap=[],this.indexes={}},e}(),S$=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),L$=function(){function e(e,t,n){this._posx=e,this._posy=t,this._target=n}return e.prototype.preventDefault=function(){},e.prototype.stopPropagation=function(){},Object.defineProperty(e.prototype,"target",{get:function(){return this._target},enumerable:!0,configurable:!0}),e}(),x$=function(e){function t(t){var n=e.call(this,t.posx,t.posy,t.target)||this;return n.originalEvent=t,n}return S$(t,e),t.prototype.preventDefault=function(){this.originalEvent.preventDefault()},t.prototype.stopPropagation=function(){this.originalEvent.stopPropagation()},t}(L$),D$=function(e){function t(t,n,i){var o=e.call(this,t,n,i.target)||this;return o.originalEvent=i,o}return S$(t,e),t.prototype.preventDefault=function(){this.originalEvent.preventDefault()},t.prototype.stopPropagation=function(){this.originalEvent.stopPropagation()},t}(L$),N$=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();var k$=function(){function e(e){this.context=e,this._cache={"":[]}}return e.prototype.alloc=function(e){var t=this.cache(e).pop();if(!t){var n=document.createElement("div");n.className="content";var i=document.createElement("div");i.appendChild(n);var o=null;try{o=this.context.renderer.renderTemplate(this.context.tree,e,n)}catch(e){console.error("Tree usage error: exception while rendering template"),console.error(e)}t={element:i,templateId:e,templateData:o}}return t},e.prototype.release=function(e,t){!function(e){try{e.parentElement.removeChild(e)}catch(e){}}(t.element),this.cache(e).push(t)},e.prototype.cache=function(e){return this._cache[e]||(this._cache[e]=[])},e.prototype.garbageCollect=function(){var e=this;this._cache&&Object.keys(this._cache).forEach((function(t){e._cache[t].forEach((function(n){e.context.renderer.disposeTemplate(e.context.tree,t,n.templateData),n.element=null,n.templateData=null})),delete e._cache[t]}))},e.prototype.dispose=function(){this.garbageCollect(),this._cache=null},e}(),E$=function(){function e(e,t){var n=this;this.width=0,this.needsRender=!1,this.uri=null,this.unbindDragStart=He.None,this._draggable=!1,this.context=e,this.model=t,this.id=this.model.id,this.row=null,this.top=0,this.height=t.getHeight(),this._styles={},t.getAllTraits().forEach((function(e){return n._styles[e]=!0})),t.isExpanded()&&this.addClass("expanded")}return Object.defineProperty(e.prototype,"expanded",{set:function(e){e?this.addClass("expanded"):this.removeClass("expanded")},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"loading",{set:function(e){e?this.addClass("codicon-loading"):this.removeClass("codicon-loading")},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"draggable",{get:function(){return this._draggable},set:function(e){this._draggable=e,this.render(!0)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"dropTarget",{set:function(e){e?this.addClass("drop-target"):this.removeClass("drop-target")},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"element",{get:function(){return this.row&&this.row.element},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"templateId",{get:function(){return this._templateId||(this._templateId=this.context.renderer.getTemplateId&&this.context.renderer.getTemplateId(this.context.tree,this.model.getElement()))},enumerable:!0,configurable:!0}),e.prototype.addClass=function(e){this._styles[e]=!0,this.render(!0)},e.prototype.removeClass=function(e){delete this._styles[e],this.render(!0)},e.prototype.render=function(e){var t=this;if(void 0===e&&(e=!1),this.model&&this.element){var n=["monaco-tree-row"];n.push.apply(n,Object.keys(this._styles)),this.model.hasChildren()&&n.push("has-children"),this.element.className=n.join(" "),this.element.draggable=this.draggable,this.element.style.height=this.height+"px",this.element.setAttribute("role","treeitem");var i=this.context.accessibilityProvider,o=i.getAriaLabel(this.context.tree,this.model.getElement());if(o&&this.element.setAttribute("aria-label",o),i.getPosInSet&&i.getSetSize&&(this.element.setAttribute("aria-setsize",i.getSetSize()),this.element.setAttribute("aria-posinset",i.getPosInSet(this.context.tree,this.model.getElement()))),this.model.hasTrait("focused")){var r=Gr(this.model.id);this.element.setAttribute("aria-selected","true"),this.element.setAttribute("id",r)}else this.element.setAttribute("aria-selected","false"),this.element.removeAttribute("id");this.model.hasChildren()?this.element.setAttribute("aria-expanded",String(!!this._styles.expanded)):this.element.removeAttribute("aria-expanded"),this.element.setAttribute("aria-level",String(this.model.getDepth())),this.context.options.paddingOnRow?this.element.style.paddingLeft=this.context.options.twistiePixels+(this.model.getDepth()-1)*this.context.options.indentPixels+"px":(this.element.style.paddingLeft=(this.model.getDepth()-1)*this.context.options.indentPixels+"px",this.row.element.firstElementChild.style.paddingLeft=this.context.options.twistiePixels+"px");var s=this.context.dnd.getDragURI(this.context.tree,this.model.getElement());if(s!==this.uri&&(this.unbindDragStart&&this.unbindDragStart.dispose(),s?(this.uri=s,this.draggable=!0,this.unbindDragStart=uo(this.element,"dragstart",(function(e){t.onDragStart(e)}))):this.uri=null),!e&&this.element){var a=0;if(this.context.horizontalScrolling){var u=window.getComputedStyle(this.element);a=parseFloat(u.paddingLeft)}this.context.horizontalScrolling&&(this.element.style.width=zn?"-moz-fit-content":"fit-content");try{this.context.renderer.renderElement(this.context.tree,this.model.getElement(),this.templateId,this.row.templateData)}catch(e){console.error("Tree usage error: exception while rendering element"),console.error(e)}this.context.horizontalScrolling&&(this.width=Po(this.element)+a,this.element.style.width="")}}},e.prototype.insertInDOM=function(e,t){if(this.row||(this.row=this.context.cache.alloc(this.templateId),this.element[O$.BINDING]=this),!this.element.parentElement){if(null===t)e.appendChild(this.element);else try{e.insertBefore(this.element,t)}catch(t){console.warn("Failed to locate previous tree element"),e.appendChild(this.element)}this.render()}},e.prototype.removeFromDOM=function(){this.row&&(this.unbindDragStart.dispose(),this.uri=null,this.element[O$.BINDING]=null,this.context.cache.release(this.templateId,this.row),this.row=null)},e.prototype.dispose=function(){this.row=null},e}(),I$=function(e){function t(t,n,i){var o=e.call(this,t,n)||this;return o.row={element:i,templateData:null,templateId:null},o}return N$(t,e),t.prototype.render=function(){if(this.model&&this.element){var e=["monaco-tree-wrapper"];e.push.apply(e,Object.keys(this._styles)),this.model.hasChildren()&&e.push("has-children"),this.element.className=e.join(" ")}},t.prototype.insertInDOM=function(e,t){},t.prototype.removeFromDOM=function(){},t}(E$);var O$=function(e){function t(n,i){var o=e.call(this)||this;o.model=null,o.lastPointerType="",o.lastClickTimeStamp=0,o.contentWidthUpdateDelayer=new fi(50),o.isRefreshing=!1,o.refreshingPreviousChildrenIds={},o.currentDragAndDropData=null,o.currentDropTarget=null,o.currentDropTargets=null,o.currentDropDisposable=He.None,o.gestureDisposable=He.None,o.dragAndDropScrollInterval=null,o.dragAndDropScrollTimeout=null,o.dragAndDropMouseY=null,o.highlightedItemWasDraggable=!1,o.onHiddenScrollTop=null,o._onDOMFocus=new nt,o.onDOMFocus=o._onDOMFocus.event,o._onDOMBlur=new nt,o._onDidScroll=new nt,t.counter++,o.instance=t.counter;var r=void 0===n.options.horizontalScrollMode?2:n.options.horizontalScrollMode;o.horizontalScrolling=2!==r,o.context={dataSource:n.dataSource,renderer:n.renderer,controller:n.controller,dnd:n.dnd,filter:n.filter,sorter:n.sorter,tree:n.tree,accessibilityProvider:n.accessibilityProvider,options:n.options,cache:new k$(n),horizontalScrolling:o.horizontalScrolling},o.modelListeners=[],o.viewListeners=[],o.items={},o.domNode=document.createElement("div"),o.domNode.className="monaco-tree no-focused-item monaco-tree-instance-"+o.instance,o.domNode.tabIndex=n.options.preventRootFocus?-1:0,o.styleElement=zo(o.domNode),o.treeStyler=n.styler||new c$(o.styleElement,"monaco-tree-instance-"+o.instance),o.domNode.setAttribute("role","tree"),o.context.options.ariaLabel&&o.domNode.setAttribute("aria-label",o.context.options.ariaLabel),o.context.options.alwaysFocused&&no(o.domNode,"focused"),o.context.options.paddingOnRow||no(o.domNode,"no-row-padding"),o.wrapper=document.createElement("div"),o.wrapper.className="monaco-tree-wrapper",o.scrollableElement=new pS(o.wrapper,{alwaysConsumeMouseWheel:!0,horizontal:r,vertical:void 0!==n.options.verticalScrollMode?n.options.verticalScrollMode:1,useShadows:n.options.useShadows}),o.scrollableElement.onScroll((function(e){o.render(e.scrollTop,e.height,e.scrollLeft,e.width,e.scrollWidth),o._onDidScroll.fire()})),Vn?(o.wrapper.style.msTouchAction="none",o.wrapper.style.msContentZooming="none"):o.gestureDisposable=jf.addTarget(o.wrapper),o.rowsContainer=document.createElement("div"),o.rowsContainer.className="monaco-tree-rows",n.options.showTwistie&&(o.rowsContainer.className+=" show-twisties");var s=Yo(o.domNode);return o.viewListeners.push(s.onDidFocus((function(){return o.onFocus()}))),o.viewListeners.push(s.onDidBlur((function(){return o.onBlur()}))),o.viewListeners.push(s),o.viewListeners.push(uo(o.domNode,"keydown",(function(e){return o.onKeyDown(e)}))),o.viewListeners.push(uo(o.domNode,"keyup",(function(e){return o.onKeyUp(e)}))),o.viewListeners.push(uo(o.domNode,"mousedown",(function(e){return o.onMouseDown(e)}))),o.viewListeners.push(uo(o.domNode,"mouseup",(function(e){return o.onMouseUp(e)}))),o.viewListeners.push(uo(o.wrapper,"auxclick",(function(e){e&&1===e.button&&o.onMouseMiddleClick(e)}))),o.viewListeners.push(uo(o.wrapper,"click",(function(e){return o.onClick(e)}))),o.viewListeners.push(uo(o.domNode,"contextmenu",(function(e){return o.onContextMenu(e)}))),o.viewListeners.push(uo(o.wrapper,Bf.Tap,(function(e){return o.onTap(e)}))),o.viewListeners.push(uo(o.wrapper,Bf.Change,(function(e){return o.onTouchChange(e)}))),Vn&&(o.viewListeners.push(uo(o.wrapper,"MSPointerDown",(function(e){return o.onMsPointerDown(e)}))),o.viewListeners.push(uo(o.wrapper,"MSGestureTap",(function(e){return o.onMsGestureTap(e)}))),o.viewListeners.push(Do(o.wrapper,"MSGestureChange",(function(e){return o.onThrottledMsGestureChange(e)}),(function(e,t){t.stopPropagation(),t.preventDefault();var n={translationY:t.translationY,translationX:t.translationX};return e&&(n.translationY+=e.translationY,n.translationX+=e.translationX),n})))),o.viewListeners.push(uo(window,"dragover",(function(e){return o.onDragOver(e)}))),o.viewListeners.push(uo(o.wrapper,"drop",(function(e){return o.onDrop(e)}))),o.viewListeners.push(uo(window,"dragend",(function(e){return o.onDragEnd(e)}))),o.viewListeners.push(uo(window,"dragleave",(function(e){return o.onDragOver(e)}))),o.wrapper.appendChild(o.rowsContainer),o.domNode.appendChild(o.scrollableElement.getDomNode()),i.appendChild(o.domNode),o.lastRenderTop=0,o.lastRenderHeight=0,o.didJustPressContextMenuKey=!1,o.currentDropTarget=null,o.currentDropTargets=[],o.shouldInvalidateDropReaction=!1,o.dragAndDropScrollInterval=null,o.dragAndDropScrollTimeout=null,o.onRowsChanged(),o.layout(),o.setupMSGesture(),o.applyStyles(n.options),o}return N$(t,e),t.prototype.applyStyles=function(e){this.treeStyler.style(e)},t.prototype.createViewItem=function(e){return new E$(this.context,e)},t.prototype.getHTMLElement=function(){return this.domNode},t.prototype.focus=function(){this.domNode.focus()},t.prototype.isFocused=function(){return document.activeElement===this.domNode},t.prototype.blur=function(){this.domNode.blur()},t.prototype.setupMSGesture=function(){var e=this;window.MSGesture&&(this.msGesture=new MSGesture,setTimeout((function(){return e.msGesture.target=e.wrapper}),100))},t.prototype.isTreeVisible=function(){return null===this.onHiddenScrollTop},t.prototype.layout=function(e,t){this.isTreeVisible()&&(this.viewHeight=e||Ro(this.wrapper),this.scrollHeight=this.getContentHeight(),this.horizontalScrolling&&(this.viewWidth=t||Po(this.wrapper)))},t.prototype.render=function(e,t,n,i,o){var r,s,a=e,u=e+t,l=this.lastRenderTop+this.lastRenderHeight;for(r=this.indexAfter(u)-1,s=this.indexAt(Math.max(l,a));r>=s;r--)this.insertItemInDOM(this.itemAtIndex(r));for(r=Math.min(this.indexAt(this.lastRenderTop),this.indexAfter(u))-1,s=this.indexAt(a);r>=s;r--)this.insertItemInDOM(this.itemAtIndex(r));for(r=this.indexAt(this.lastRenderTop),s=Math.min(this.indexAt(a),this.indexAfter(l));r<s;r++)this.removeItemFromDOM(this.itemAtIndex(r));for(r=Math.max(this.indexAfter(u),this.indexAt(this.lastRenderTop)),s=this.indexAfter(l);r<s;r++)this.removeItemFromDOM(this.itemAtIndex(r));var c=this.itemAtIndex(this.indexAt(a));c&&(this.rowsContainer.style.top=c.top-a+"px"),this.horizontalScrolling&&(this.rowsContainer.style.left=-n+"px",this.rowsContainer.style.width=Math.max(o,i)+"px"),this.lastRenderTop=a,this.lastRenderHeight=u-a},t.prototype.setModel=function(e){this.releaseModel(),this.model=e,this.model.onRefresh(this.onRefreshing,this,this.modelListeners),this.model.onDidRefresh(this.onRefreshed,this,this.modelListeners),this.model.onSetInput(this.onClearingInput,this,this.modelListeners),this.model.onDidSetInput(this.onSetInput,this,this.modelListeners),this.model.onDidFocus(this.onModelFocusChange,this,this.modelListeners),this.model.onRefreshItemChildren(this.onItemChildrenRefreshing,this,this.modelListeners),this.model.onDidRefreshItemChildren(this.onItemChildrenRefreshed,this,this.modelListeners),this.model.onDidRefreshItem(this.onItemRefresh,this,this.modelListeners),this.model.onExpandItem(this.onItemExpanding,this,this.modelListeners),this.model.onDidExpandItem(this.onItemExpanded,this,this.modelListeners),this.model.onCollapseItem(this.onItemCollapsing,this,this.modelListeners),this.model.onDidRevealItem(this.onItemReveal,this,this.modelListeners),this.model.onDidAddTraitItem(this.onItemAddTrait,this,this.modelListeners),this.model.onDidRemoveTraitItem(this.onItemRemoveTrait,this,this.modelListeners)},t.prototype.onRefreshing=function(){this.isRefreshing=!0},t.prototype.onRefreshed=function(){this.isRefreshing=!1,this.onRowsChanged()},t.prototype.onRowsChanged=function(e){void 0===e&&(e=this.scrollTop),this.isRefreshing||(this.scrollTop=e,this.updateScrollWidth())},t.prototype.updateScrollWidth=function(){var e=this;this.horizontalScrolling&&this.contentWidthUpdateDelayer.trigger((function(){for(var t=0,n=0,i=Object.keys(e.items);n<i.length;n++){var o=i[n];t=Math.max(t,e.items[o].width)}e.scrollWidth=t+10}))},t.prototype.focusNextPage=function(e){var t=this,n=this.indexAt(this.scrollTop+this.viewHeight);n=0===n?0:n-1;var i=this.itemAtIndex(n).model.getElement();if(this.model.getFocus()!==i)this.model.setFocus(i,e);else{var o=this.scrollTop;this.scrollTop+=this.viewHeight,this.scrollTop!==o&&setTimeout((function(){t.focusNextPage(e)}),0)}},t.prototype.focusPreviousPage=function(e){var t,n=this;t=0===this.scrollTop?this.indexAt(this.scrollTop):this.indexAfter(this.scrollTop-1);var i=this.itemAtIndex(t).model.getElement();if(this.model.getFocus()!==i)this.model.setFocus(i,e);else{var o=this.scrollTop;this.scrollTop-=this.viewHeight,this.scrollTop!==o&&setTimeout((function(){n.focusPreviousPage(e)}),0)}},Object.defineProperty(t.prototype,"viewHeight",{get:function(){return this.scrollableElement.getScrollDimensions().height},set:function(e){this.scrollableElement.setScrollDimensions({height:e})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"scrollHeight",{set:function(e){e+=this.horizontalScrolling?10:0,this.scrollableElement.setScrollDimensions({scrollHeight:e})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"viewWidth",{get:function(){return this.scrollableElement.getScrollDimensions().width},set:function(e){this.scrollableElement.setScrollDimensions({width:e})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"scrollWidth",{set:function(e){this.scrollableElement.setScrollDimensions({scrollWidth:e})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"scrollTop",{get:function(){return this.scrollableElement.getScrollPosition().scrollTop},set:function(e){var t=this.getContentHeight()+(this.horizontalScrolling?10:0);this.scrollableElement.setScrollDimensions({scrollHeight:t}),this.scrollableElement.setScrollPosition({scrollTop:e})},enumerable:!0,configurable:!0}),t.prototype.onClearingInput=function(e){var t=e.item;t&&(this.onRemoveItems(new Xe(t.getNavigator(),(function(e){return e&&e.id}))),this.onRowsChanged())},t.prototype.onSetInput=function(e){this.context.cache.garbageCollect(),this.inputItem=new I$(this.context,e.item,this.wrapper)},t.prototype.onItemChildrenRefreshing=function(e){var n=e.item,i=this.items[n.id];if(i&&this.context.options.showLoading&&(i.loadingTimer=setTimeout((function(){i.loadingTimer=0,i.loading=!0}),t.LOADING_DECORATION_DELAY)),!e.isNested){for(var o=[],r=n.getNavigator(),s=void 0;s=r.next();)o.push(s.id);this.refreshingPreviousChildrenIds[n.id]=o}},t.prototype.onItemChildrenRefreshed=function(e){var t=this,n=e.item,i=this.items[n.id];if(i&&(i.loadingTimer&&(clearTimeout(i.loadingTimer),i.loadingTimer=0),i.loading=!1),!e.isNested){for(var o=this.refreshingPreviousChildrenIds[n.id],r=[],s=n.getNavigator(),a=void 0;a=s.next();)r.push(a);var u=Math.abs(o.length-r.length)>1e3,l=[],c=!1;if(!u)c=(l=new Hl({getElements:function(){return o}},{getElements:function(){return r.map((function(e){return e.id}))}},null).ComputeDiff(!1).changes).some((function(e){if(e.modifiedLength>0)for(var n=e.modifiedStart,i=e.modifiedStart+e.modifiedLength;n<i;n++)if(t.items.hasOwnProperty(r[n].id))return!0;return!1}));if(!u&&!c&&l.length<50)for(var d=0,h=l;d<h.length;d++){var p=h[d];if(p.originalLength>0&&this.onRemoveItems(new Ze(o,p.originalStart,p.originalStart+p.originalLength)),p.modifiedLength>0){var f=r[p.modifiedStart-1]||n;f=f.getDepth()>0?f:null,this.onInsertItems(new Ze(r,p.modifiedStart,p.modifiedStart+p.modifiedLength),f?f.id:null)}}else(u||l.length)&&(this.onRemoveItems(new Ze(o)),this.onInsertItems(new Ze(r),n.getDepth()>0?n.id:null));(u||l.length)&&this.onRowsChanged()}},t.prototype.onItemRefresh=function(e){this.onItemsRefresh([e])},t.prototype.onItemsRefresh=function(e){var t=this;this.onRefreshItemSet(e.filter((function(e){return t.items.hasOwnProperty(e.id)}))),this.onRowsChanged()},t.prototype.onItemExpanding=function(e){var t=this.items[e.item.id];t&&(t.expanded=!0)},t.prototype.onItemExpanded=function(e){var t=e.item,n=this.items[t.id];if(n){n.expanded=!0;var i=this.onInsertItems(t.getNavigator(),t.id)||0,o=this.scrollTop;n.top+n.height<=this.scrollTop&&(o+=i),this.onRowsChanged(o)}},t.prototype.onItemCollapsing=function(e){var t=e.item,n=this.items[t.id];n&&(n.expanded=!1,this.onRemoveItems(new Xe(t.getNavigator(),(function(e){return e&&e.id}))),this.onRowsChanged())},t.prototype.onItemReveal=function(e){var t=e.item,n=e.relativeTop,i=this.items[t.id];if(i)if(null!==n){n=(n=n<0?0:n)>1?1:n;var o=i.height-this.viewHeight;this.scrollTop=o*n+i.top}else{var r=i.top+i.height,s=this.scrollTop+this.viewHeight;i.top<this.scrollTop?this.scrollTop=i.top:r>=s&&(this.scrollTop=r-this.viewHeight)}},t.prototype.onItemAddTrait=function(e){var t=e.item,n=e.trait,i=this.items[t.id];i&&i.addClass(n),"highlighted"===n&&(no(this.domNode,n),i&&(this.highlightedItemWasDraggable=!!i.draggable,i.draggable&&(i.draggable=!1)))},t.prototype.onItemRemoveTrait=function(e){var t=e.item,n=e.trait,i=this.items[t.id];i&&i.removeClass(n),"highlighted"===n&&(oo(this.domNode,n),this.highlightedItemWasDraggable&&(i.draggable=!0),this.highlightedItemWasDraggable=!1)},t.prototype.onModelFocusChange=function(){var e=this.model&&this.model.getFocus();so(this.domNode,"no-focused-item",!e),e?this.domNode.setAttribute("aria-activedescendant",Gr(this.context.dataSource.getId(this.context.tree,e))):this.domNode.removeAttribute("aria-activedescendant")},t.prototype.onInsertItem=function(e){var t=this;e.onDragStart=function(n){t.onDragStart(e,n)},e.needsRender=!0,this.refreshViewItem(e),this.items[e.id]=e},t.prototype.onRefreshItem=function(e,t){void 0===t&&(t=!1),e.needsRender=e.needsRender||t,this.refreshViewItem(e)},t.prototype.onRemoveItem=function(e){this.removeItemFromDOM(e),e.dispose(),delete this.items[e.id]},t.prototype.refreshViewItem=function(e){e.render(),this.shouldBeRendered(e)?this.insertItemInDOM(e):this.removeItemFromDOM(e)},t.prototype.onClick=function(e){if(!this.lastPointerType||"mouse"===this.lastPointerType){var t=new li(e),n=this.getItemAround(t.target);n&&(Vn&&Date.now()-this.lastClickTimeStamp<300&&(t.detail=2),this.lastClickTimeStamp=Date.now(),this.context.controller.onClick(this.context.tree,n.model.getElement(),t))}},t.prototype.onMouseMiddleClick=function(e){if(this.context.controller.onMouseMiddleClick){var t=new li(e),n=this.getItemAround(t.target);n&&this.context.controller.onMouseMiddleClick(this.context.tree,n.model.getElement(),t)}},t.prototype.onMouseDown=function(e){if(this.didJustPressContextMenuKey=!1,this.context.controller.onMouseDown&&(!this.lastPointerType||"mouse"===this.lastPointerType)){var t=new li(e);if(!(t.ctrlKey&&b&&_)){var n=this.getItemAround(t.target);n&&this.context.controller.onMouseDown(this.context.tree,n.model.getElement(),t)}}},t.prototype.onMouseUp=function(e){if(this.context.controller.onMouseUp&&(!this.lastPointerType||"mouse"===this.lastPointerType)){var t=new li(e);if(!(t.ctrlKey&&b&&_)){var n=this.getItemAround(t.target);n&&this.context.controller.onMouseUp(this.context.tree,n.model.getElement(),t)}}},t.prototype.onTap=function(e){var t=this.getItemAround(e.initialTarget);t&&this.context.controller.onTap(this.context.tree,t.model.getElement(),e)},t.prototype.onTouchChange=function(e){e.preventDefault(),e.stopPropagation(),this.scrollTop-=e.translationY},t.prototype.onContextMenu=function(e){var t,n;if(e instanceof KeyboardEvent||this.didJustPressContextMenuKey){this.didJustPressContextMenuKey=!1;var i=new ni(e),o=void 0;if(n=this.model.getFocus()){var r=this.context.dataSource.getId(this.context.tree,n);o=Oo(this.items[r].element)}else n=this.model.getInput(),o=Oo(this.inputItem.element);t=new D$(o.left+o.width,o.top,i)}else{var s=new li(e),a=this.getItemAround(s.target);if(!a)return;n=a.model.getElement(),t=new x$(s)}this.context.controller.onContextMenu(this.context.tree,n,t)},t.prototype.onKeyDown=function(e){var t=new ni(e);this.didJustPressContextMenuKey=58===t.keyCode||t.shiftKey&&68===t.keyCode,t.target&&t.target.tagName&&"input"===t.target.tagName.toLowerCase()||(this.didJustPressContextMenuKey&&(t.preventDefault(),t.stopPropagation()),this.context.controller.onKeyDown(this.context.tree,t))},t.prototype.onKeyUp=function(e){this.didJustPressContextMenuKey&&this.onContextMenu(e),this.didJustPressContextMenuKey=!1,this.context.controller.onKeyUp(this.context.tree,new ni(e))},t.prototype.onDragStart=function(e,t){if(!this.model.getHighlight()){var n,i=e.model.getElement(),o=this.model.getSelection();if(n=o.indexOf(i)>-1?o:[i],t.dataTransfer.effectAllowed="copyMove",t.dataTransfer.setData(uD,JSON.stringify([e.uri])),t.dataTransfer.setDragImage){var r=void 0;r=this.context.dnd.getDragLabel?this.context.dnd.getDragLabel(this.context.tree,n):String(n.length);var s=document.createElement("div");s.className="monaco-tree-drag-image",s.textContent=r,document.body.appendChild(s),t.dataTransfer.setDragImage(s,-10,-10),setTimeout((function(){return document.body.removeChild(s)}),0)}this.currentDragAndDropData=new y$(n),dD.CurrentDragAndDropData=new b$(n),this.context.dnd.onDragStart(this.context.tree,this.currentDragAndDropData,new ci(t))}},t.prototype.setupDragAndDropScrollInterval=function(){var e=this,t=Io(this.wrapper).top;this.dragAndDropScrollInterval||(this.dragAndDropScrollInterval=window.setInterval((function(){if(null!==e.dragAndDropMouseY){var n=e.dragAndDropMouseY-t,i=0,o=e.viewHeight-35;n<35?i=Math.max(-14,.2*(n-35)):n>o&&(i=Math.min(14,.2*(n-o))),e.scrollTop+=i}}),10),this.cancelDragAndDropScrollTimeout(),this.dragAndDropScrollTimeout=window.setTimeout((function(){e.cancelDragAndDropScrollInterval(),e.dragAndDropScrollTimeout=null}),1e3))},t.prototype.cancelDragAndDropScrollInterval=function(){this.dragAndDropScrollInterval&&(window.clearInterval(this.dragAndDropScrollInterval),this.dragAndDropScrollInterval=null),this.cancelDragAndDropScrollTimeout()},t.prototype.cancelDragAndDropScrollTimeout=function(){this.dragAndDropScrollTimeout&&(window.clearTimeout(this.dragAndDropScrollTimeout),this.dragAndDropScrollTimeout=null)},t.prototype.onDragOver=function(e){var t=this;e.preventDefault();var n,i=new ci(e),o=this.getItemAround(i.target);if(!o||0===i.posx&&0===i.posy&&i.browserEvent.type===qo.DRAG_LEAVE)return this.currentDropTarget&&(this.currentDropTargets.forEach((function(e){return e.dropTarget=!1})),this.currentDropTargets=[],this.currentDropDisposable.dispose()),this.cancelDragAndDropScrollInterval(),this.currentDropTarget=null,this.currentDropElement=null,this.dragAndDropMouseY=null,!1;if(this.setupDragAndDropScrollInterval(),this.dragAndDropMouseY=i.posy,!this.currentDragAndDropData)if(dD.CurrentDragAndDropData)this.currentDragAndDropData=dD.CurrentDragAndDropData;else{if(!i.dataTransfer.types)return!1;this.currentDragAndDropData=new w$}this.currentDragAndDropData.update(i.browserEvent.dataTransfer);var r,s=o.model;do{if(n=s?s.getElement():this.model.getInput(),!(r=this.context.dnd.onDragOver(this.context.tree,this.currentDragAndDropData,n,i))||1!==r.bubble)break;s=s&&s.parent}while(s);if(!s)return this.currentDropElement=null,!1;var a=r&&r.accept;a?(this.currentDropElement=s.getElement(),i.preventDefault(),i.dataTransfer.dropEffect=0===r.effect?"copy":"move"):this.currentDropElement=null;var u,l,c=s.id===this.inputItem.id?this.inputItem:this.items[s.id];if((this.shouldInvalidateDropReaction||this.currentDropTarget!==c||(u=this.currentDropElementReaction,l=r,!(!u&&!l||u&&l&&u.accept===l.accept&&u.bubble===l.bubble&&u.effect===l.effect)))&&(this.shouldInvalidateDropReaction=!1,this.currentDropTarget&&(this.currentDropTargets.forEach((function(e){return e.dropTarget=!1})),this.currentDropTargets=[],this.currentDropDisposable.dispose()),this.currentDropTarget=c,this.currentDropElementReaction=r,a)){if(this.currentDropTarget&&(this.currentDropTarget.dropTarget=!0,this.currentDropTargets.push(this.currentDropTarget)),0===r.bubble)for(var d=s.getNavigator(),h=void 0;h=d.next();)(o=this.items[h.id])&&(o.dropTarget=!0,this.currentDropTargets.push(o));if(r.autoExpand){var p=gi(500);this.currentDropDisposable=We((function(){return p.cancel()})),p.then((function(){return t.context.tree.expand(t.currentDropElement)})).then((function(){return t.shouldInvalidateDropReaction=!0}))}}return!0},t.prototype.onDrop=function(e){if(this.currentDropElement){var t=new ci(e);t.preventDefault(),this.currentDragAndDropData.update(t.browserEvent.dataTransfer),this.context.dnd.drop(this.context.tree,this.currentDragAndDropData,this.currentDropElement,t),this.onDragEnd(e)}this.cancelDragAndDropScrollInterval()},t.prototype.onDragEnd=function(e){this.currentDropTarget&&(this.currentDropTargets.forEach((function(e){return e.dropTarget=!1})),this.currentDropTargets=[]),this.currentDropDisposable.dispose(),this.cancelDragAndDropScrollInterval(),this.currentDragAndDropData=null,dD.CurrentDragAndDropData=void 0,this.currentDropElement=null,this.currentDropTarget=null,this.dragAndDropMouseY=null},t.prototype.onFocus=function(){this.context.options.alwaysFocused||no(this.domNode,"focused"),this._onDOMFocus.fire()},t.prototype.onBlur=function(){this.context.options.alwaysFocused||oo(this.domNode,"focused"),this.domNode.removeAttribute("aria-activedescendant"),this._onDOMBlur.fire()},t.prototype.onMsPointerDown=function(e){if(this.msGesture){var t=e.pointerType;t!==(e.MSPOINTER_TYPE_MOUSE||"mouse")?t===(e.MSPOINTER_TYPE_TOUCH||"touch")&&(this.lastPointerType="touch",e.stopPropagation(),e.preventDefault(),this.msGesture.addPointer(e.pointerId)):this.lastPointerType="mouse"}},t.prototype.onThrottledMsGestureChange=function(e){this.scrollTop-=e.translationY},t.prototype.onMsGestureTap=function(e){e.initialTarget=document.elementFromPoint(e.clientX,e.clientY),this.onTap(e)},t.prototype.insertItemInDOM=function(e){var t=null,n=this.itemAfter(e);n&&n.element&&(t=n.element),e.insertInDOM(this.rowsContainer,t)},t.prototype.removeItemFromDOM=function(e){e&&e.removeFromDOM()},t.prototype.shouldBeRendered=function(e){return e.top<this.lastRenderTop+this.lastRenderHeight&&e.top+e.height>this.lastRenderTop},t.prototype.getItemAround=function(e){var n=this.inputItem,i=e;do{if(i[t.BINDING]&&(n=i[t.BINDING]),i===this.wrapper||i===this.domNode)return n;if(i===this.scrollableElement.getDomNode()||i===document.body)return}while(i=i.parentElement)},t.prototype.releaseModel=function(){this.model&&(this.modelListeners=Ae(this.modelListeners),this.model=null)},t.prototype.dispose=function(){var t=this;this.scrollableElement.dispose(),this.releaseModel(),this.viewListeners=Ae(this.viewListeners),this._onDOMFocus.dispose(),this._onDOMBlur.dispose(),this.domNode.parentNode&&this.domNode.parentNode.removeChild(this.domNode),this.items&&Object.keys(this.items).forEach((function(e){return t.items[e].removeFromDOM()})),this.context.cache&&this.context.cache.dispose(),this.gestureDisposable.dispose(),e.prototype.dispose.call(this)},t.BINDING="monaco-tree-row",t.LOADING_DECORATION_DELAY=800,t.counter=0,t}(C$),M$=function(e,t,n){if(void 0===n&&(n={}),this.tree=e,this.configuration=t,this.options=n,!t.dataSource)throw new Error("You must provide a Data Source to the tree.");this.dataSource=t.dataSource,this.renderer=t.renderer,this.controller=t.controller||new s$({clickBehavior:1,keyboardSupport:"boolean"!=typeof n.keyboardSupport||n.keyboardSupport}),this.dnd=t.dnd||new a$,this.filter=t.filter||new u$,this.sorter=t.sorter,this.accessibilityProvider=t.accessibilityProvider||new l$,this.styler=t.styler},T$={listFocusBackground:mv.fromHex("#073655"),listActiveSelectionBackground:mv.fromHex("#0E639C"),listActiveSelectionForeground:mv.fromHex("#FFFFFF"),listFocusAndSelectionBackground:mv.fromHex("#094771"),listFocusAndSelectionForeground:mv.fromHex("#FFFFFF"),listInactiveSelectionBackground:mv.fromHex("#3F3F46"),listHoverBackground:mv.fromHex("#2A2D2E"),listDropBackground:mv.fromHex("#383B3D")},P$=function(){function e(e,t,n){void 0===n&&(n={}),this._onDidChangeFocus=new st,this.onDidChangeFocus=this._onDidChangeFocus.event,this._onDidChangeSelection=new st,this.onDidChangeSelection=this._onDidChangeSelection.event,this._onHighlightChange=new st,this._onDidExpandItem=new st,this._onDidCollapseItem=new st,this._onDispose=new nt,this.onDidDispose=this._onDispose.event,this.container=e,ka(n,T$,!1),n.twistiePixels="number"==typeof n.twistiePixels?n.twistiePixels:32,n.showTwistie=!1!==n.showTwistie,n.indentPixels="number"==typeof n.indentPixels?n.indentPixels:12,n.alwaysFocused=!0===n.alwaysFocused,n.useShadows=!1!==n.useShadows,n.paddingOnRow=!1!==n.paddingOnRow,n.showLoading=!1!==n.showLoading,this.context=new M$(this,t,n),this.model=new _$(this.context),this.view=new O$(this.context,this.container),this.view.setModel(this.model),this._onDidChangeFocus.input=this.model.onDidFocus,this._onDidChangeSelection.input=this.model.onDidSelect,this._onHighlightChange.input=this.model.onDidHighlight,this._onDidExpandItem.input=this.model.onDidExpandItem,this._onDidCollapseItem.input=this.model.onDidCollapseItem}return e.prototype.style=function(e){this.view.applyStyles(e)},Object.defineProperty(e.prototype,"onDidFocus",{get:function(){return this.view.onDOMFocus},enumerable:!0,configurable:!0}),e.prototype.getHTMLElement=function(){return this.view.getHTMLElement()},e.prototype.layout=function(e,t){this.view.layout(e,t)},e.prototype.domFocus=function(){this.view.focus()},e.prototype.isDOMFocused=function(){return this.view.isFocused()},e.prototype.domBlur=function(){this.view.blur()},e.prototype.setInput=function(e){return this.model.setInput(e)},e.prototype.getInput=function(){return this.model.getInput()},e.prototype.expand=function(e){return this.model.expand(e)},e.prototype.collapse=function(e,t){return void 0===t&&(t=!1),this.model.collapse(e,t)},e.prototype.toggleExpansion=function(e,t){return void 0===t&&(t=!1),this.model.toggleExpansion(e,t)},e.prototype.isExpanded=function(e){return this.model.isExpanded(e)},e.prototype.reveal=function(e,t){return void 0===t&&(t=null),this.model.reveal(e,t)},e.prototype.getHighlight=function(){return this.model.getHighlight()},e.prototype.clearHighlight=function(e){this.model.setHighlight(null,e)},e.prototype.setSelection=function(e,t){this.model.setSelection(e,t)},e.prototype.getSelection=function(){return this.model.getSelection()},e.prototype.clearSelection=function(e){this.model.setSelection([],e)},e.prototype.setFocus=function(e,t){this.model.setFocus(e,t)},e.prototype.getFocus=function(){return this.model.getFocus()},e.prototype.focusNext=function(e,t){this.model.focusNext(e,t)},e.prototype.focusPrevious=function(e,t){this.model.focusPrevious(e,t)},e.prototype.focusParent=function(e){this.model.focusParent(e)},e.prototype.focusFirstChild=function(e){this.model.focusFirstChild(e)},e.prototype.focusFirst=function(e,t){this.model.focusFirst(e,t)},e.prototype.focusNth=function(e,t){this.model.focusNth(e,t)},e.prototype.focusLast=function(e,t){this.model.focusLast(e,t)},e.prototype.focusNextPage=function(e){this.view.focusNextPage(e)},e.prototype.focusPreviousPage=function(e){this.view.focusPreviousPage(e)},e.prototype.clearFocus=function(e){this.model.setFocus(null,e)},e.prototype.dispose=function(){this._onDispose.fire(),this.model.dispose(),this.view.dispose(),this._onDidChangeFocus.dispose(),this._onDidChangeSelection.dispose(),this._onHighlightChange.dispose(),this._onDidExpandItem.dispose(),this._onDidCollapseItem.dispose(),this._onDispose.dispose()},e}(),R$=(n(436),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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}()),A$={progressBarBackground:mv.fromHex("#0E70C0")},F$=function(e){function t(t,n){var i=e.call(this)||this;return i.options=n||Object.create(null),ka(i.options,A$,!1),i.workedVal=0,i.progressBarBackground=i.options.progressBarBackground,i._register(i.showDelayedScheduler=new wi((function(){return tr(i.element)}),0)),i.create(t),i}return R$(t,e),t.prototype.create=function(e){this.element=document.createElement("div"),no(this.element,"monaco-progress-container"),e.appendChild(this.element),this.bit=document.createElement("div"),no(this.bit,"progress-bit"),this.element.appendChild(this.bit),this.applyStyles()},t.prototype.off=function(){this.bit.style.width="inherit",this.bit.style.opacity="1",ro(this.element,"active","infinite","discrete"),this.workedVal=0,this.totalWork=void 0},t.prototype.stop=function(){return this.doDone(!1)},t.prototype.doDone=function(e){var t=this;return no(this.element,"done"),to(this.element,"infinite")?(this.bit.style.opacity="0",e?setTimeout((function(){return t.off()}),200):this.off()):(this.bit.style.width="inherit",e?setTimeout((function(){return t.off()}),200):this.off()),this},t.prototype.hide=function(){nr(this.element),this.showDelayedScheduler.cancel()},t.prototype.style=function(e){this.progressBarBackground=e.progressBarBackground,this.applyStyles()},t.prototype.applyStyles=function(){if(this.bit){var e=this.progressBarBackground?this.progressBarBackground.toString():"";this.bit.style.backgroundColor=e}},t}(He),W$=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),V$=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return W$(t,e),t.prototype.onContextMenu=function(t,n,i){return _?this.onLeftClick(t,n,i):e.prototype.onContextMenu.call(this,t,n,i)},t}(s$),B$={background:mv.fromHex("#1E1E1E"),foreground:mv.fromHex("#CCCCCC"),pickerGroupForeground:mv.fromHex("#0097FB"),pickerGroupBorder:mv.fromHex("#3F3F46"),widgetShadow:mv.fromHex("#000000"),progressBarBackground:mv.fromHex("#0E70C0")},H$=r("quickOpenAriaLabel","Quick picker. Type to narrow down results."),z$=function(e){function t(t,n,i){var o=e.call(this)||this;return o.isDisposed=!1,o.container=t,o.callbacks=n,o.options=i,o.styles=i||Object.create(null),ka(o.styles,B$,!1),o.model=null,o}return W$(t,e),t.prototype.getModel=function(){return this.model},t.prototype.create=function(){var e=this;this.element=document.createElement("div"),no(this.element,"monaco-quick-open-widget"),this.container.appendChild(this.element),this._register(uo(this.element,qo.CONTEXT_MENU,(function(e){return Go(e,!0)}))),this._register(uo(this.element,qo.FOCUS,(function(t){return e.gainingFocus()}),!0)),this._register(uo(this.element,qo.BLUR,(function(t){return e.loosingFocus(t)}),!0)),this._register(uo(this.element,qo.KEY_DOWN,(function(t){var n=new ni(t);if(9===n.keyCode)Go(t,!0),e.hide(2);else if(2===n.keyCode&&!n.altKey&&!n.ctrlKey&&!n.metaKey){var i=t.currentTarget.querySelectorAll("input, .monaco-tree, .monaco-tree-row.focused .action-label.icon");n.shiftKey&&n.target===i[0]?(Go(t,!0),i[i.length-1].focus()):n.shiftKey||n.target!==i[i.length-1]||(Go(t,!0),i[0].focus())}}))),this.progressBar=this._register(new F$(this.element,{progressBarBackground:this.styles.progressBarBackground})),this.progressBar.hide(),this.inputContainer=document.createElement("div"),no(this.inputContainer,"quick-open-input"),this.element.appendChild(this.inputContainer),this.inputBox=this._register(new PW(this.inputContainer,void 0,{placeholder:this.options.inputPlaceHolder||"",ariaLabel:H$,inputBackground:this.styles.inputBackground,inputForeground:this.styles.inputForeground,inputBorder:this.styles.inputBorder,inputValidationInfoBackground:this.styles.inputValidationInfoBackground,inputValidationInfoForeground:this.styles.inputValidationInfoForeground,inputValidationInfoBorder:this.styles.inputValidationInfoBorder,inputValidationWarningBackground:this.styles.inputValidationWarningBackground,inputValidationWarningForeground:this.styles.inputValidationWarningForeground,inputValidationWarningBorder:this.styles.inputValidationWarningBorder,inputValidationErrorBackground:this.styles.inputValidationErrorBackground,inputValidationErrorForeground:this.styles.inputValidationErrorForeground,inputValidationErrorBorder:this.styles.inputValidationErrorBorder})),this.inputElement=this.inputBox.inputElement,this.inputElement.setAttribute("role","combobox"),this.inputElement.setAttribute("aria-haspopup","false"),this.inputElement.setAttribute("aria-autocomplete","list"),this._register(uo(this.inputBox.inputElement,qo.INPUT,(function(t){return e.onType()}))),this._register(uo(this.inputBox.inputElement,qo.KEY_DOWN,(function(t){var n=new ni(t),i=e.shouldOpenInBackground(n);if(2!==n.keyCode)if(18===n.keyCode||16===n.keyCode||12===n.keyCode||11===n.keyCode)Go(t,!0),e.navigateInTree(n.keyCode,n.shiftKey),e.inputBox.inputElement.selectionStart===e.inputBox.inputElement.selectionEnd&&(e.inputBox.inputElement.selectionStart=e.inputBox.value.length);else if(3===n.keyCode||i){Go(t,!0);var o=e.tree.getFocus();o&&e.elementSelected(o,t,i?2:1)}}))),this.resultCount=document.createElement("div"),no(this.resultCount,"quick-open-result-count"),this.resultCount.setAttribute("aria-live","polite"),this.resultCount.setAttribute("aria-atomic","true"),this.element.appendChild(this.resultCount),this.treeContainer=document.createElement("div"),no(this.treeContainer,"quick-open-tree"),this.element.appendChild(this.treeContainer);var t=this.options.treeCreator||function(e,t,n){return new P$(e,t,n)};return this.tree=this._register(t(this.treeContainer,{dataSource:new t$(this),controller:new V$({clickBehavior:1,keyboardSupport:this.options.keyboardSupport}),renderer:this.renderer=new o$(this,this.styles),filter:new i$(this),accessibilityProvider:new n$(this)},{twistiePixels:11,indentPixels:0,alwaysFocused:!0,verticalScrollMode:3,horizontalScrollMode:2,ariaLabel:r("treeAriaLabel","Quick Picker"),keyboardSupport:this.options.keyboardSupport,preventRootFocus:!1})),this.treeElement=this.tree.getHTMLElement(),this._register(this.tree.onDidChangeFocus((function(t){e.elementFocused(t.focus,t)}))),this._register(this.tree.onDidChangeSelection((function(t){if(t.selection&&t.selection.length>0){var n=t.payload&&t.payload.originalEvent instanceof li?t.payload.originalEvent:void 0,i=!!n&&e.shouldOpenInBackground(n);e.elementSelected(t.selection[0],t,i?2:1)}}))),this._register(uo(this.treeContainer,qo.KEY_DOWN,(function(t){var n=new ni(t);if(e.quickNavigateConfiguration)if(18===n.keyCode||16===n.keyCode||12===n.keyCode||11===n.keyCode)Go(t,!0),e.navigateInTree(n.keyCode);else if(3===n.keyCode){Go(t,!0);var i=e.tree.getFocus();i&&e.elementSelected(i,t)}}))),this._register(uo(this.treeContainer,qo.KEY_UP,(function(t){var n=new ni(t),i=n.keyCode;if(e.quickNavigateConfiguration&&e.quickNavigateConfiguration.keybindings.some((function(e){var t=e.getParts(),o=t[0];return!t[1]&&(o.shiftKey&&4===i?!(n.ctrlKey||n.altKey||n.metaKey):!(!o.altKey||6!==i)||(!(!o.ctrlKey||5!==i)||!(!o.metaKey||57!==i)))}))){var o=e.tree.getFocus();o&&e.elementSelected(o,t)}}))),this.layoutDimensions&&this.layout(this.layoutDimensions),this.applyStyles(),this._register(uo(this.treeContainer,qo.KEY_DOWN,(function(t){var n=new ni(t);e.quickNavigateConfiguration||18!==n.keyCode&&16!==n.keyCode&&12!==n.keyCode&&11!==n.keyCode||(Go(t,!0),e.navigateInTree(n.keyCode,n.shiftKey),e.treeElement.focus())}))),this.element},t.prototype.style=function(e){this.styles=e,this.applyStyles()},t.prototype.applyStyles=function(){if(this.element){var e=this.styles.foreground?this.styles.foreground.toString():"",t=this.styles.background?this.styles.background.toString():"",n=this.styles.borderColor?this.styles.borderColor.toString():"",i=this.styles.widgetShadow?this.styles.widgetShadow.toString():"";this.element.style.color=e,this.element.style.backgroundColor=t,this.element.style.borderColor=n,this.element.style.borderWidth=n?"1px":"",this.element.style.borderStyle=n?"solid":"",this.element.style.boxShadow=i?"0 5px 8px "+i:""}this.progressBar&&this.progressBar.style({progressBarBackground:this.styles.progressBarBackground}),this.inputBox&&this.inputBox.style({inputBackground:this.styles.inputBackground,inputForeground:this.styles.inputForeground,inputBorder:this.styles.inputBorder,inputValidationInfoBackground:this.styles.inputValidationInfoBackground,inputValidationInfoForeground:this.styles.inputValidationInfoForeground,inputValidationInfoBorder:this.styles.inputValidationInfoBorder,inputValidationWarningBackground:this.styles.inputValidationWarningBackground,inputValidationWarningForeground:this.styles.inputValidationWarningForeground,inputValidationWarningBorder:this.styles.inputValidationWarningBorder,inputValidationErrorBackground:this.styles.inputValidationErrorBackground,inputValidationErrorForeground:this.styles.inputValidationErrorForeground,inputValidationErrorBorder:this.styles.inputValidationErrorBorder}),this.tree&&!this.options.treeCreator&&this.tree.style(this.styles),this.renderer&&this.renderer.updateStyles(this.styles)},t.prototype.shouldOpenInBackground=function(e){if(e instanceof ni){if(17!==e.keyCode)return!1;if(e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return!1;var t=this.inputBox.inputElement;return t.selectionEnd===this.inputBox.value.length&&t.selectionStart===t.selectionEnd}return e.middleButton},t.prototype.onType=function(){var e=this.inputBox.value;this.helpText&&(e?nr(this.helpText):tr(this.helpText)),this.callbacks.onType(e)},t.prototype.navigateInTree=function(e,t){var n=this.tree.getInput(),i=n?n.entries:[],o=this.tree.getFocus();switch(e){case 18:this.tree.focusNext();break;case 16:this.tree.focusPrevious();break;case 12:this.tree.focusNextPage();break;case 11:this.tree.focusPreviousPage();break;case 2:t?this.tree.focusPrevious():this.tree.focusNext()}var r=this.tree.getFocus();i.length>1&&o===r&&(16===e||2===e&&t?this.tree.focusLast():(18===e||2===e&&!t)&&this.tree.focusFirst()),(r=this.tree.getFocus())&&this.tree.reveal(r)},t.prototype.elementFocused=function(e,t){if(e&&this.isVisible()){var n=this.treeElement.getAttribute("aria-activedescendant");n?this.inputElement.setAttribute("aria-activedescendant",n):this.inputElement.removeAttribute("aria-activedescendant");var i={event:t,keymods:this.extractKeyMods(t),quickNavigateConfiguration:this.quickNavigateConfiguration};this.model.runner.run(e,0,i)}},t.prototype.elementSelected=function(e,t,n){var i=!0;if(this.isVisible()){var o=n||1,r={event:t,keymods:this.extractKeyMods(t),quickNavigateConfiguration:this.quickNavigateConfiguration};i=this.model.runner.run(e,o,r)}i&&this.hide(0)},t.prototype.extractKeyMods=function(e){return{ctrlCmd:e&&(e.ctrlKey||e.metaKey||e.payload&&e.payload.originalEvent&&(e.payload.originalEvent.ctrlKey||e.payload.originalEvent.metaKey)),alt:e&&(e.altKey||e.payload&&e.payload.originalEvent&&e.payload.originalEvent.altKey)}},t.prototype.show=function(e,t){this.visible=!0,this.isLoosingFocus=!1,this.quickNavigateConfiguration=t?t.quickNavigateConfiguration:void 0,this.quickNavigateConfiguration?(nr(this.inputContainer),tr(this.element),this.tree.domFocus()):(tr(this.inputContainer),tr(this.element),this.inputBox.focus()),this.helpText&&(this.quickNavigateConfiguration||As(e)?nr(this.helpText):tr(this.helpText)),As(e)?this.doShowWithPrefix(e):(t&&t.value&&this.restoreLastInput(t.value),this.doShowWithInput(e,t&&t.autoFocus?t.autoFocus:{})),t&&t.inputSelection&&!this.quickNavigateConfiguration&&this.inputBox.select(t.inputSelection),this.callbacks.onShow&&this.callbacks.onShow()},t.prototype.restoreLastInput=function(e){this.inputBox.value=e,this.inputBox.select(),this.callbacks.onType(e)},t.prototype.doShowWithPrefix=function(e){this.inputBox.value=e,this.callbacks.onType(e)},t.prototype.doShowWithInput=function(e,t){this.setInput(e,t)},t.prototype.setInputAndLayout=function(e,t){var n=this;this.treeContainer.style.height=this.getHeight(e)+"px",this.tree.setInput(null).then((function(){return n.model=e,n.inputElement.setAttribute("aria-haspopup",String(e&&e.entries&&e.entries.length>0)),n.tree.setInput(e)})).then((function(){n.tree.layout();var i=e?e.entries.filter((function(t){return n.isElementVisible(e,t)})):[];n.updateResultCount(i.length),i.length&&n.autoFocus(e,i,t)}))},t.prototype.isElementVisible=function(e,t){return!e.filter||e.filter.isVisible(t)},t.prototype.autoFocus=function(e,t,n){if(void 0===n&&(n={}),n.autoFocusPrefixMatch){for(var i=void 0,o=void 0,r=n.autoFocusPrefixMatch,s=r.toLowerCase(),a=0,u=t;a<u.length;a++){var l=u[a],c=e.dataSource.getLabel(l)||"";if(i||0!==c.indexOf(r)?o||0!==c.toLowerCase().indexOf(s)||(o=l):i=l,i&&o)break}var d=i||o;if(d)return this.tree.setFocus(d),void this.tree.reveal(d,.5)}n.autoFocusFirstEntry?(this.tree.focusFirst(),this.tree.reveal(this.tree.getFocus())):"number"==typeof n.autoFocusIndex?t.length>n.autoFocusIndex&&(this.tree.focusNth(n.autoFocusIndex),this.tree.reveal(this.tree.getFocus())):n.autoFocusSecondEntry?t.length>1&&this.tree.focusNth(1):n.autoFocusLastEntry&&t.length>1&&(this.tree.focusLast(),this.tree.reveal(this.tree.getFocus()))},t.prototype.getHeight=function(e){var n=this,i=e.renderer;if(!e){var o=i.getHeight(null);return this.options.minItemsToShow?this.options.minItemsToShow*o:0}var r,s=0;this.layoutDimensions&&this.layoutDimensions.height&&(r=.4*(this.layoutDimensions.height-50)),(!r||r>t.MAX_ITEMS_HEIGHT)&&(r=t.MAX_ITEMS_HEIGHT);for(var a=e.entries.filter((function(t){return n.isElementVisible(e,t)})),u=this.options.maxItemsToShow||a.length,l=0;l<u&&l<a.length;l++){var c=i.getHeight(a[l]);if(!(s+c<=r))break;s+=c}return s},t.prototype.updateResultCount=function(e){this.resultCount.textContent=r({key:"quickInput.visibleCount",comment:["This tells the user how many items are shown in a list of items to select from. The items can be anything. Currently not visible, but read by screen readers."]},"{0} Results",e)},t.prototype.hide=function(e){this.isVisible()&&(this.visible=!1,nr(this.element),this.element.blur(),this.inputBox.value="",this.tree.setInput(null),this.inputElement.setAttribute("aria-haspopup","false"),this.treeContainer.style.height=(this.options.minItemsToShow?22*this.options.minItemsToShow:0)+"px",this.progressBar.stop().hide(),this.tree.isDOMFocused()?this.tree.domBlur():this.inputBox.hasFocus()&&this.inputBox.blur(),0===e?this.callbacks.onOk():this.callbacks.onCancel(),this.callbacks.onHide&&this.callbacks.onHide(e))},t.prototype.setInput=function(e,t,n){this.isVisible()&&(this.getInput()&&this.onInputChanging(),this.setInputAndLayout(e,t),this.inputBox&&this.inputBox.setAriaLabel(n||H$))},t.prototype.onInputChanging=function(){var e=this;this.inputChangingTimeoutHandle&&(clearTimeout(this.inputChangingTimeoutHandle),this.inputChangingTimeoutHandle=null),no(this.element,"content-changing"),this.inputChangingTimeoutHandle=setTimeout((function(){oo(e.element,"content-changing")}),500)},t.prototype.getInput=function(){return this.tree.getInput()},t.prototype.isVisible=function(){return this.visible},t.prototype.layout=function(e){this.layoutDimensions=e;var n=Math.min(.62*this.layoutDimensions.width,t.MAX_WIDTH);this.element&&(this.element.style.width=n+"px",this.element.style.marginLeft="-"+n/2+"px",this.inputContainer.style.width=n-12+"px")},t.prototype.gainingFocus=function(){this.isLoosingFocus=!1},t.prototype.loosingFocus=function(e){var t=this;if(this.isVisible()){var n=e.relatedTarget;!this.quickNavigateConfiguration&&Fo(n,this.element)||(this.isLoosingFocus=!0,setTimeout((function(){t.isLoosingFocus&&!t.isDisposed&&(t.callbacks.onFocusLost&&t.callbacks.onFocusLost()||t.hide(1))}),0))}},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.isDisposed=!0},t.MAX_WIDTH=600,t.MAX_ITEMS_HEIGHT=440,t}(He),j$=function(){function e(e,t,n,i,o,r){this.codeEditor=e,this.themeService=r,this.visible=!1,this.domNode=document.createElement("div"),this.quickOpenWidget=new z$(this.domNode,{onOk:t,onCancel:n,onType:i},{inputPlaceHolder:void 0,inputAriaLabel:o.inputAriaLabel,keyboardSupport:!0}),this.styler=function(e,t,n){return qk(t,{foreground:n&&n.foreground||E_,background:n&&n.background||my,borderColor:n&&n.borderColor||M_,widgetShadow:n&&n.widgetShadow||A_,progressBarBackground:n&&n.progressBarBackground||ay,pickerGroupForeground:n&&n.pickerGroupForeground||J_,pickerGroupBorder:n&&n.pickerGroupBorder||ey,inputBackground:n&&n.inputBackground||F_,inputForeground:n&&n.inputForeground||W_,inputBorder:n&&n.inputBorder||V_,inputValidationInfoBorder:n&&n.inputValidationInfoBorder||U_,inputValidationInfoBackground:n&&n.inputValidationInfoBackground||z_,inputValidationInfoForeground:n&&n.inputValidationInfoForeground||j_,inputValidationWarningBorder:n&&n.inputValidationWarningBorder||G_,inputValidationWarningBackground:n&&n.inputValidationWarningBackground||K_,inputValidationWarningForeground:n&&n.inputValidationWarningForeground||q_,inputValidationErrorBorder:n&&n.inputValidationErrorBorder||X_,inputValidationErrorBackground:n&&n.inputValidationErrorBackground||Z_,inputValidationErrorForeground:n&&n.inputValidationErrorForeground||Y_,listFocusBackground:n&&n.listFocusBackground||Zy,listFocusForeground:n&&n.listFocusForeground||Yy,listActiveSelectionBackground:n&&n.listActiveSelectionBackground||Eb(Xy,.1),listActiveSelectionForeground:n&&n.listActiveSelectionForeground||$y,listFocusAndSelectionBackground:n&&n.listFocusAndSelectionBackground||Xy,listFocusAndSelectionForeground:n&&n.listFocusAndSelectionForeground||$y,listInactiveSelectionBackground:n&&n.listInactiveSelectionBackground||Qy,listInactiveSelectionForeground:n&&n.listInactiveSelectionForeground||Jy,listInactiveFocusBackground:n&&n.listInactiveFocusBackground||eb,listHoverBackground:n&&n.listHoverBackground||tb,listHoverForeground:n&&n.listHoverForeground||nb,listDropBackground:n&&n.listDropBackground||ib,listFocusOutline:n&&n.listFocusOutline||T_,listSelectionOutline:n&&n.listSelectionOutline||T_,listHoverOutline:n&&n.listHoverOutline||T_},e)}(this.quickOpenWidget,this.themeService,{pickerGroupForeground:E_}),this.quickOpenWidget.create(),this.codeEditor.addOverlayWidget(this)}return e.prototype.setInput=function(e,t){this.quickOpenWidget.setInput(e,t)},e.prototype.getId=function(){return e.ID},e.prototype.getDomNode=function(){return this.domNode},e.prototype.destroy=function(){this.codeEditor.removeOverlayWidget(this),this.quickOpenWidget.dispose(),this.styler.dispose()},e.prototype.show=function(e){this.visible=!0;var t=this.codeEditor.getLayoutInfo();t&&this.quickOpenWidget.layout(new Eo(t.width,t.height)),this.quickOpenWidget.show(e),this.codeEditor.layoutOverlayWidget(this)},e.prototype.getPosition=function(){return this.visible?{preference:2}:null},e.ID="editor.contrib.quickOpenEditorWidget",e}(),U$=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),K$=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},q$=function(e,t){return function(n,i){t(n,i,e)}},G$=function(){function e(e,t){this.themeService=t,this.widget=null,this.rangeHighlightDecorationId=null,this.lastKnownEditorSelection=null,this.editor=e}return e.get=function(t){return t.getContribution(e.ID)},e.prototype.dispose=function(){this.widget&&(this.widget.destroy(),this.widget=null)},e.prototype.run=function(e){var t=this;this.widget&&(this.widget.destroy(),this.widget=null);var n=function(e){t.clearDecorations(),e&&t.lastKnownEditorSelection&&(t.editor.setSelection(t.lastKnownEditorSelection),t.editor.revealRangeInCenterIfOutsideViewport(t.lastKnownEditorSelection,0)),t.lastKnownEditorSelection=null,document.activeElement!==document.body&&e||t.editor.focus()};this.widget=new j$(this.editor,(function(){return n(!1)}),(function(){return n(!0)}),(function(n){t.widget.setInput(e.getModel(n),e.getAutoFocus(n))}),{inputAriaLabel:e.inputAriaLabel},this.themeService),this.lastKnownEditorSelection||(this.lastKnownEditorSelection=this.editor.getSelection()),this.widget.show("")},e.prototype.decorateLine=function(t,n){var i=[];this.rangeHighlightDecorationId&&(i.push(this.rangeHighlightDecorationId),this.rangeHighlightDecorationId=null);var o=[{range:t,options:e._RANGE_HIGHLIGHT_DECORATION}],r=n.deltaDecorations(i,o);this.rangeHighlightDecorationId=r[0]},e.prototype.clearDecorations=function(){this.rangeHighlightDecorationId&&(this.editor.deltaDecorations([this.rangeHighlightDecorationId],[]),this.rangeHighlightDecorationId=null)},e.ID="editor.controller.quickOpenController",e._RANGE_HIGHLIGHT_DECORATION=kv.register({className:"rangeHighlight",isWholeLine:!0}),e=K$([q$(1,fg)],e)}(),Z$=function(e){function t(t,n){var i=e.call(this,n)||this;return i._inputAriaLabel=t,i}return U$(t,e),t.prototype.getController=function(e){return G$.get(e)},t.prototype._show=function(e,t){e.run({inputAriaLabel:this._inputAriaLabel,getModel:function(e){return t.getModel(e)},getAutoFocus:function(e){return t.getAutoFocus(e)}})},t}(kf);Pf(G$.ID,G$);var Y$=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),X$=function(e){function t(t,n,i){var o=e.call(this)||this;return o.editor=n,o.decorator=i,o.parseResult=o.parseInput(t),o}return Y$(t,e),t.prototype.parseInput=function(e){var t,n,i=e.split(",").map((function(e){return parseInt(e,10)})).filter((function(e){return!isNaN(e)}));if(t=0===i.length?new bn(-1,-1):1===i.length?new bn(i[0],1):new bn(i[0],i[1]),Md(this.editor))n=this.editor.getModel();else{var o=this.editor.getModel();n=o?o.modified:null}var r=!!n&&n.validatePosition(t).equals(t);return{position:t,isValid:r,label:r?t.column&&t.column>1?pr(pp.gotoLineLabelValidLineAndColumn,t.lineNumber,t.column):pr(pp.gotoLineLabelValidLine,t.lineNumber):t.lineNumber<1||t.lineNumber>(n?n.getLineCount():0)?pr(pp.gotoLineLabelEmptyWithLineLimit,n?n.getLineCount():0):pr(pp.gotoLineLabelEmptyWithLineAndColumnLimit,n?n.getLineMaxColumn(t.lineNumber):0)}},t.prototype.getLabel=function(){return this.parseResult.label},t.prototype.getAriaLabel=function(){var e=this.editor.getPosition(),t=e?e.lineNumber:0;return pr(pp.gotoLineAriaLabel,t,this.parseResult.label)},t.prototype.run=function(e,t){return 1===e?this.runOpen():this.runPreview()},t.prototype.runOpen=function(){if(!this.parseResult.isValid)return!1;var e=this.toSelection();return this.editor.setSelection(e),this.editor.revealRangeInCenter(e,0),this.editor.focus(),!0},t.prototype.runPreview=function(){if(!this.parseResult.isValid)return this.decorator.clearDecorations(),!1;var e=this.toSelection();return this.editor.revealRangeInCenter(e,0),this.decorator.decorateLine(e,this.editor),!1},t.prototype.toSelection=function(){return new wn(this.parseResult.position.lineNumber,this.parseResult.position.column,this.parseResult.position.lineNumber,this.parseResult.position.column)},t}(XX);Tf(function(e){function t(){return e.call(this,pp.gotoLineActionInput,{id:"editor.action.gotoLine",label:pp.gotoLineActionLabel,alias:"Go to Line...",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:2085,mac:{primary:293},weight:100}})||this}return Y$(t,e),t.prototype.run=function(e,t){var n=this;this._show(this.getController(t),{getModel:function(e){return new e$([new X$(e,t,n.getController(t))])},getAutoFocus:function(e){return{autoFocusFirstEntry:e.length>0}}})},t}(Z$));var $$=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Q$=function(e){function t(t,n,i,o,r){var s=e.call(this)||this;return s.key=t,s.keyAriaLabel=n,s.setHighlights(i),s.action=o,s.editor=r,s}return $$(t,e),t.prototype.getLabel=function(){return this.action.label},t.prototype.getAriaLabel=function(){return this.keyAriaLabel?pr(gp.ariaLabelEntryWithKey,this.getLabel(),this.keyAriaLabel):pr(gp.ariaLabelEntry,this.getLabel())},t.prototype.getGroupLabel=function(){return this.key},t.prototype.run=function(e,t){var n=this;return 1===e&&(setTimeout((function(){n.editor.focus();try{(n.action.run()||Promise.resolve()).then(void 0,De)}catch(e){De(e)}}),50),!0)},t}($X);Tf(function(e){function t(){return e.call(this,gp.quickCommandActionInput,{id:"editor.action.quickCommand",label:gp.quickCommandActionLabel,alias:"Command Palette",precondition:void 0,kbOpts:{kbExpr:eC.focus,primary:Vn?571:59,weight:100},contextMenuOpts:{group:"z_commands",order:1}})||this}return $$(t,e),t.prototype.run=function(e,t){var n=this,i=e.get(XD);this._show(this.getController(t),{getModel:function(e){return new e$(n._editorActionsToEntries(i,t,e))},getAutoFocus:function(e){return{autoFocusFirstEntry:!0,autoFocusPrefixMatch:e}}})},t.prototype._sort=function(e,t){var n=(e.getLabel()||"").toLowerCase(),i=(t.getLabel()||"").toLowerCase();return n.localeCompare(i)},t.prototype._editorActionsToEntries=function(e,t,n){for(var i=[],o=0,r=t.getSupportedActions();o<r.length;o++){var s=r[o],a=e.lookupKeybinding(s.id);if(s.label){var u=$E(n,s.label);u&&i.push(new Q$(a&&a.getLabel()||"",a&&a.getAriaLabel()||"",u,s,t))}}return i=i.sort(this._sort)},t}(Z$));n(437);var J$=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),eQ=function(){function e(){}return e.prototype.remove=function(){this.parent&&delete this.parent.children[this.id]},e.findId=function(e,t){var n;"string"==typeof e?n=t.id+"/"+e:(n=t.id+"/"+e.name,void 0!==t.children[n]&&(n=t.id+"/"+e.name+"_"+e.range.startLineNumber+"_"+e.range.startColumn));for(var i=n,o=0;void 0!==t.children[i];o++)i=n+"_"+o;return i},e.empty=function(e){for(var t in e.children)return!1;return!0},e}(),tQ=function(e){function t(t,n,i){var o=e.call(this)||this;return o.id=t,o.parent=n,o.symbol=i,o.children=Object.create(null),o}return J$(t,e),t}(eQ),nQ=function(e){function t(t,n,i,o){var r=e.call(this)||this;return r.id=t,r.parent=n,r.provider=i,r.providerIndex=o,r.children=Object.create(null),r}return J$(t,e),t}(eQ),iQ=function(){function e(){this._n=1,this._val=0}return e.prototype.update=function(e){return this._val=this._val+(e-this._val)/this._n,this._n+=1,this},e}(),oQ=function(e){function t(t){var n=e.call(this)||this;return n.textModel=t,n.id="root",n.parent=void 0,n._groups=Object.create(null),n.children=Object.create(null),n.id="root",n.parent=void 0,n}return J$(t,e),t.create=function(e,n){var i=this,o=this._keys.for(e,!0),r=t._requests.get(o);if(!r){var s=new ct;r={promiseCnt:0,source:s,promise:t._create(e,s.token),model:void 0},t._requests.set(o,r);var a=Date.now();r.promise.then((function(){var t=i._keys.for(e,!1),n=i._requestDurations.get(t);n||(n=new iQ,i._requestDurations.set(t,n)),n.update(Date.now()-a)}))}return r.model?Promise.resolve(r.model):(r.promiseCnt+=1,n.onCancellationRequested((function(){0==--r.promiseCnt&&(r.source.cancel(),t._requests.delete(o))})),new Promise((function(e,n){r.promise.then((function(t){r.model=t,e(t)}),(function(e){t._requests.delete(o),n(e)}))})))},t._create=function(e,n){var i=new ct(n),o=new t(e),r=Mu.ordered(e),s=r.map((function(e,n){var r=eQ.findId("provider_"+n,o),s=new nQ(r,o,e,n);return Promise.resolve(e.provideDocumentSymbols(o.textModel,i.token)).then((function(e){for(var n=0,i=e||[];n<i.length;n++){var o=i[n];t._makeOutlineElement(o,s)}return s}),(function(e){return Ne(e),s})).then((function(e){eQ.empty(e)?e.remove():o._groups[r]=e}))})),a=Mu.onDidChange((function(){xi(Mu.ordered(e),r)||i.cancel()}));return Promise.all(s).then((function(){return i.token.isCancellationRequested&&!n.isCancellationRequested?t._create(e,n):o._compact()})).finally((function(){a.dispose()}))},t._makeOutlineElement=function(e,n){var i=eQ.findId(e,n),o=new tQ(i,n,e);if(e.children)for(var r=0,s=e.children;r<s.length;r++){var a=s[r];t._makeOutlineElement(a,o)}n.children[o.id]=o},t.prototype._compact=function(){var e=0;for(var t in this._groups){void 0===$d((n=this._groups[t]).children)?delete this._groups[t]:e+=1}if(1!==e)this.children=this._groups;else{var n=$d(this._groups);for(var t in n.children){var i=n.children[t];i.parent=this,this.children[i.id]=i}}return this},t._requestDurations=new aa(50,.7),t._requests=new aa(9,.75),t._keys=new(function(){function e(){this._counter=1,this._data=new WeakMap}return e.prototype.for=function(e,t){return e.id+"/"+(t?e.getVersionId():"")+"/"+this._hash(Mu.all(e))},e.prototype._hash=function(e){for(var t="",n=0,i=e;n<i.length;n++){var o=i[n],r=this._data.get(o);void 0===r&&(r=this._counter++,this._data.set(o,r)),t+=r}return t},e}()),t}(eQ),rQ=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function s(e){try{u(i.next(e))}catch(e){r(e)}}function a(e){try{u(i.throw(e))}catch(e){r(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((i=i.apply(e,t||[])).next())}))},sQ=function(e,t){var n,i,o,r,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function a(r){return function(a){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return s.label++,{value:r[1],done:!1};case 5:s.label++,i=r[1],r=[0];continue;case 7:r=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){s=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){s.label=r[1];break}if(6===r[0]&&s.label<o[1]){s.label=o[1],o=r;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(r);break}o[2]&&s.ops.pop(),s.trys.pop();continue}r=t.call(e,s)}catch(e){r=[6,e],i=0}finally{n=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,a])}}};function aQ(e,t,n){return rQ(this,void 0,void 0,(function(){var i,o,r,s,a,u;return sQ(this,(function(l){switch(l.label){case 0:return[4,oQ.create(e,n)];case 1:for(i=l.sent(),o=[],r=0,s=Xd(i.children);r<s.length;r++)(a=s[r])instanceof tQ?o.push(a.symbol):o.push.apply(o,Xd(a.children).map((function(e){return e.symbol})));return u=[],n.isCancellationRequested?[2,u]:(t?function e(t,n,i){for(var o=0,r=n;o<r.length;o++){var s=r[o];t.push({kind:s.kind,tags:s.tags,name:s.name,detail:s.detail,containerName:s.containerName||i,range:s.range,selectionRange:s.selectionRange,children:void 0}),s.children&&e(t,s.children,s.name)}}(u,o,""):u=o,[2,u.sort(uQ)])}}))}))}function uQ(e,t){return wn.compareRangesUsingStarts(e.range,t.range)}ca.registerCommand("_executeDocumentSymbolProvider",(function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];return rQ(this,void 0,void 0,(function(){var n,i,o;return sQ(this,(function(r){switch(r.label){case 0:return n=t[0],zs(Et.isUri(n)),(i=e.get(du).getModel(n))?[2,aQ(i,!1,et.None)]:[4,e.get(tl).createModelReference(n)];case 1:o=r.sent(),r.label=2;case 2:return r.trys.push([2,,4,5]),[4,aQ(o.object.textEditorModel,!1,et.None)];case 3:return[2,r.sent()];case 4:return o.dispose(),[7];case 5:return[2]}}))}))}));var lQ=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),cQ=function(e){function t(t,n,i,o,r,s,a){var u=e.call(this)||this;return u.name=t,u.type=n,u.description=i,u.range=o,u.setHighlights(r),u.editor=s,u.decorator=a,u}return lQ(t,e),t.prototype.getLabel=function(){return this.name},t.prototype.getAriaLabel=function(){return pr(vp.entryAriaLabel,this.name)},t.prototype.getIcon=function(){return this.type},t.prototype.getDescription=function(){return this.description},t.prototype.getType=function(){return this.type},t.prototype.getRange=function(){return this.range},t.prototype.run=function(e,t){return 1===e?this.runOpen(t):this.runPreview()},t.prototype.runOpen=function(e){var t=this.toSelection();return this.editor.setSelection(t),this.editor.revealRangeInCenter(t,0),this.editor.focus(),!0},t.prototype.runPreview=function(){var e=this.toSelection();return this.editor.revealRangeInCenter(e,0),this.decorator.decorateLine(this.range,this.editor),!1},t.prototype.toSelection=function(){return new wn(this.range.startLineNumber,this.range.startColumn||1,this.range.startLineNumber,this.range.startColumn||1)},t}($X);Tf(function(e){function t(){return e.call(this,vp.quickOutlineActionInput,{id:"editor.action.quickOutline",label:vp.quickOutlineActionLabel,alias:"Go to Symbol...",precondition:eC.hasDocumentSymbolProvider,kbOpts:{kbExpr:eC.focus,primary:3117,weight:100},contextMenuOpts:{group:"navigation",order:3}})||this}return lQ(t,e),t.prototype.run=function(e,t){var n=this;if(t.hasModel()){var i=t.getModel();if(Mu.has(i))return aQ(i,!0,et.None).then((function(e){0!==e.length&&n._run(t,e)}))}},t.prototype._run=function(e,t){var n=this;this._show(this.getController(e),{getModel:function(i){return new e$(n.toQuickOpenEntries(e,t,i))},getAutoFocus:function(e){return 0===e.indexOf(":")&&(e=e.substr(":".length)),{autoFocusPrefixMatch:e,autoFocusFirstEntry:!!e}}})},t.prototype.symbolEntry=function(e,t,n,i,o,r,s){return new cQ(e,t,n,wn.lift(i),o,r,s)},t.prototype.toQuickOpenEntries=function(e,t,n){var i,o,r=this.getController(e),s=[],a=n;0===n.indexOf(":")&&(a=a.substr(":".length));for(var u=0,l=t;u<l.length;u++){var c=l[u],d=(i=c.name,void 0===(o=void 0)&&(o=" "),mr(function(e,t){if(!e||!t)return e;var n=t.length;if(0===n||0===e.length)return e;for(var i=0;e.indexOf(t,i)===i;)i+=n;return e.substring(i)}(i,o),o)),h=$E(a,d);if(h){var p=void 0;c.containerName&&(p=c.containerName),s.push(this.symbolEntry(d,vu.toCssClassName(c.kind),p,c.range,h,e,r))}}if(n&&(s=0===n.indexOf(":")?s.sort(this.sortScoped.bind(this,n.toLowerCase())):s.sort(this.sortNormal.bind(this,n.toLowerCase()))),s.length>0&&0===n.indexOf(":")){for(var f=null,g=null,m=0,v=0;v<s.length;v++){var _=s[v];f!==_.getType()?(g&&g.setGroupLabel(this.typeToLabel(f||"",m)),f=_.getType(),g=_,m=1,_.setShowBorder(v>0)):m++}g&&g.setGroupLabel(this.typeToLabel(f||"",m))}else s.length>0&&s[0].setGroupLabel(pr(vp._symbols_,s.length));return s},t.prototype.typeToLabel=function(e,t){switch(e){case"module":return pr(vp._modules_,t);case"class":return pr(vp._class_,t);case"interface":return pr(vp._interface_,t);case"method":return pr(vp._method_,t);case"function":return pr(vp._function_,t);case"property":return pr(vp._property_,t);case"variable":return pr(vp._variable_,t);case"var":return pr(vp._variable2_,t);case"constructor":return pr(vp._constructor_,t);case"call":return pr(vp._call_,t)}return e},t.prototype.sortNormal=function(e,t,n){var i=t.getLabel().toLowerCase(),o=n.getLabel().toLowerCase(),r=i.localeCompare(o);if(0!==r)return r;var s=t.getRange(),a=n.getRange();return s.startLineNumber-a.startLineNumber},t.prototype.sortScoped=function(e,t,n){e=e.substr(":".length);var i=t.getType(),o=n.getType(),r=i.localeCompare(o);if(0!==r)return r;if(e){var s=t.getLabel().toLowerCase(),a=n.getLabel().toLowerCase(),u=s.localeCompare(a);if(0!==u)return u}var l=t.getRange(),c=n.getRange();return l.startLineNumber-c.startLineNumber},t}(Z$));var dQ=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),hQ=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},pQ=function(e,t){return function(n,i){t(n,i,e)}},fQ=function(e){function t(t,n,i,o,r,s,a){return e.call(this,!0,t,n,i,o,r,s,a)||this}return dQ(t,e),t=hQ([pQ(1,qh),pQ(2,Pn),pQ(3,ap),pQ(4,In),pQ(5,FM),pQ(6,wh)],t)}(Dz);Pf(Dz.ID,fQ);var gQ=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)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}();Tf(function(e){function t(){var t=e.call(this,{id:"editor.action.toggleHighContrast",label:wp.toggleHighContrast,alias:"Toggle High Contrast Theme",precondition:void 0})||this;return t._originalThemeName=null,t}return gQ(t,e),t.prototype.run=function(e,t){var n=e.get(YD);this._originalThemeName?(n.setTheme(this._originalThemeName),this._originalThemeName=null):(this._originalThemeName=n.getTheme().themeName,n.setTheme("hc-black"))},t}(kf))}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/29.f6a4e822.js b/docs/src/.vuepress/dist/assets/js/30.01e2071b.js similarity index 97% rename from docs/src/.vuepress/dist/assets/js/29.f6a4e822.js rename to docs/src/.vuepress/dist/assets/js/30.01e2071b.js index 054a4041..bf2d3d11 100644 --- a/docs/src/.vuepress/dist/assets/js/29.f6a4e822.js +++ b/docs/src/.vuepress/dist/assets/js/30.01e2071b.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[29],{528:function(t,s,a){"use strict";a.r(s);var n=a(45),e=Object(n.a)({},(function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"returning-values"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#returning-values"}},[t._v("#")]),t._v(" Returning values")]),t._v(" "),a("p",[t._v("We promise, this is going to be short!")]),t._v(" "),a("p",[t._v("Returning values is done through the\n"),a("code",[t._v("return")]),t._v(" keyword:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello world"')]),t._v("\n")])])]),a("p",[t._v("Note that functions allow implicit returns,\nso you don't need to explicitely use a "),a("code",[t._v("return")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("func "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n x + "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\nfunc"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("9")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 10")]),t._v("\n")])])]),a("p",[t._v("The default value of a "),a("code",[t._v("return")]),t._v(" is "),a("code",[t._v("null")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" x "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# null")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])])])}),[],!1,null,null,null);s.default=e.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[30],{529:function(t,s,a){"use strict";a.r(s);var n=a(45),e=Object(n.a)({},(function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"returning-values"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#returning-values"}},[t._v("#")]),t._v(" Returning values")]),t._v(" "),a("p",[t._v("We promise, this is going to be short!")]),t._v(" "),a("p",[t._v("Returning values is done through the\n"),a("code",[t._v("return")]),t._v(" keyword:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello world"')]),t._v("\n")])])]),a("p",[t._v("Note that functions allow implicit returns,\nso you don't need to explicitely use a "),a("code",[t._v("return")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("func "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n x + "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\nfunc"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("9")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 10")]),t._v("\n")])])]),a("p",[t._v("The default value of a "),a("code",[t._v("return")]),t._v(" is "),a("code",[t._v("null")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" x "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# null")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])])])}),[],!1,null,null,null);s.default=e.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/30.9bb98cd5.js b/docs/src/.vuepress/dist/assets/js/31.5ad90f2b.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/30.9bb98cd5.js rename to docs/src/.vuepress/dist/assets/js/31.5ad90f2b.js index f6268960..93496bd6 100644 --- a/docs/src/.vuepress/dist/assets/js/30.9bb98cd5.js +++ b/docs/src/.vuepress/dist/assets/js/31.5ad90f2b.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[30],{529:function(a,t,s){"use strict";s.r(t);var e=s(45),n=Object(e.a)({},(function(){var a=this,t=a.$createElement,s=a._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[s("h1",{attrs:{id:"system-shell-commands"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#system-shell-commands"}},[a._v("#")]),a._v(" System (shell) commands")]),a._v(" "),s("p",[a._v("Executing system commands is one of the most important features\nof ABS, as it allows mixing the convenience of the shell with\nthe syntax of a modern programming language.")]),a._v(" "),s("p",[a._v("Commands are executed with the "),s("code",[a._v("`command`")]),a._v(" syntax,\nwhich resemble Bash's syntax to execute commands in a subshell:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token function"}},[a._v("date")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("date")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v('# "Sun Apr 1 04:30:59 +01 1995"')]),a._v("\n")])])]),s("p",[a._v("As you can see, the return value of a command is a simple\nstring -- the output of the program. If the program was to\nencounter an error, the same string would hold the error\nmessage:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token function"}},[a._v("date")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),a._v("dat"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v('# "bash: dat: command not found"')]),a._v("\n")])])]),s("p",[a._v("It would be fairly painful to have to parse strings\nmanually to understand if a command executed without errors;\nin ABS, the returned string has a special property "),s("code",[a._v("ok")]),a._v(" that\nchecks whether the command was successful:")]),a._v(" "),s("div",{staticClass:"language-js extra-class"},[s("pre",{pre:!0,attrs:{class:"language-js"}},[s("code",[s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token template-string"}},[s("span",{pre:!0,attrs:{class:"token template-punctuation string"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v("ls -la")]),s("span",{pre:!0,attrs:{class:"token template-punctuation string"}},[a._v("`")])]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(".")]),a._v("ok "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("echo")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"hello world"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n")])])]),s("h2",{attrs:{id:"executing-commands-in-background"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#executing-commands-in-background"}},[a._v("#")]),a._v(" Executing commands in background")]),a._v(" "),s("p",[a._v("Sometimes you might want to execute a command in\nbackground, so that the script keeps executing\nwhile the command is running. In order to do so,\nyou can simply add an "),s("code",[a._v("&")]),a._v(" at the end of your script:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("10")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v("\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"This will be printed right away!"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n")])])]),s("p",[a._v('You might also want to check whether a command\nis "done", by checking the boolean '),s("code",[a._v(".done")]),a._v(" property:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("cmd "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("10")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v("\ncmd.done "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# false")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("11")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v("\ncmd.done "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# true")]),a._v("\n")])])]),s("p",[a._v("If, at some point, you want to wait for the command\nto finish before running additional code, you can\nuse the "),s("code",[a._v("wait")]),a._v(" method:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("cmd "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("10")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v("\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"This will be printed right away!"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\ncmd.wait"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"This will be printed after 10s"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n")])])]),s("p",[a._v("If you ever want to terminate a running command, you can\nuse the "),s("code",[a._v("kill")]),a._v(" method.")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("cmd "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("10")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v("\ncmd.done "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# false")]),a._v("\ncmd.kill"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\ncmd.done "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# true")]),a._v("\n")])])]),s("p",[a._v("Also note that when an "),s("code",[a._v("exec()")]),a._v(" command string terminates with an "),s("code",[a._v("&")]),a._v(",\nthe "),s("code",[a._v("exec(command)")]),a._v(" function will terminate immediately after launching\nthe command which will run independently in the background.\nThis means that the command must either terminate on its own or be killed\nusing "),s("code",[a._v("pkill")]),a._v(" or similar. This way an ABS script can launch a true daemon\nprocess that may operate on its own outside of ABS. For example you can\nreboot a remote computer via ssh without interacting with it:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("exec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v("\"ssh user@host.local 'sudo reboot' &\"")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n")])])]),s("h2",{attrs:{id:"interpolation"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#interpolation"}},[a._v("#")]),a._v(" Interpolation")]),a._v(" "),s("p",[a._v("You can also replace parts of the command with variables\ndeclared within your program using the "),s("code",[a._v("$")]),a._v(" symbol:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token function"}},[a._v("file")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"cpuinfo"')]),a._v("\nx "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("cat")]),a._v(" /proc/$file"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v("\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),a._v("x"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# processor: 0\\nvendor_id: GenuineIntel...")]),a._v("\n")])])]),s("p",[a._v("or interpolation within an "),s("code",[a._v("exec(command)")])]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("cmd "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" args"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("2")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\nfilename "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" args"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("3")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\nexec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"sudo '),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$cmd")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$filename")]),a._v('"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n")])])]),s("p",[a._v("and if you need "),s("code",[a._v("$")]),a._v(" literals in your command, you\nsimply need to escape them with a "),s("code",[a._v("\\")]),a._v(":")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("$PWD")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v('# "" since the ABS variable PWD doesn\'t exist')]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("$PWD")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v('# "/go/src/github.com/abs-lang/abs"')]),a._v("\n")])])]),s("h2",{attrs:{id:"using-a-different-shell"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#using-a-different-shell"}},[a._v("#")]),a._v(" Using a different shell")]),a._v(" "),s("p",[a._v("By default, ABS uses "),s("code",[a._v("bash -c")]),a._v(" to execute commands; on Windows\nit instead uses "),s("code",[a._v("cmd.exe /C")]),a._v(".")]),a._v(" "),s("p",[a._v("You can specify which shell to use by setting the environment\nvariable "),s("code",[a._v("ABS_COMMAND_EXECUTOR")]),a._v(":")]),a._v(" "),s("div",{staticClass:"language-sh extra-class"},[s("pre",{pre:!0,attrs:{class:"language-sh"}},[s("code",[s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("$0"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# bash")]),a._v("\nenv"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"ABS_COMMAND_EXECUTOR"')]),a._v(", "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"sh -c"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("$0"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# sh")]),a._v("\n")])])]),s("h2",{attrs:{id:"alternative-syntax"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#alternative-syntax"}},[a._v("#")]),a._v(" Alternative $() syntax")]),a._v(" "),s("p",[a._v("Even though the use of backticks is the standard recommended\nway to run system commands, for the ease of embedding ABS also\nallows you to use the "),s("code",[a._v("$(command)")]),a._v(" syntax:")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v('$(basename $(dirname "/tmp/make/life/easy")) // "easy"\n')])])]),s("p",[a._v("Commands that use the "),s("code",[a._v("$()")]),a._v(" syntax need to be\non their own line, meaning that you will not\nbe able to have additional code on the same line.\nThis will throw an error:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("10")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"hello world"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n")])])]),s("h2",{attrs:{id:"executing-commands-without-capturing-i-o"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#executing-commands-without-capturing-i-o"}},[a._v("#")]),a._v(" Executing commands without capturing I/O")]),a._v(" "),s("p",[a._v("It is also possible to execute a shell command without capturing its\ninput or output using the "),s("code",[a._v("exec(command)")]),a._v(" function. This allows long running\nor interactive programs to be run using the terminal's Standard IO\n(stdin, stdout, stderr). For example:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("exec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"sudo visudo"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n")])])]),s("p",[a._v("would open the default text editor in super user mode on the /etc/sudoers file.")]),a._v(" "),s("p",[a._v("Unlike the normal backtick command execution syntax above,\nthe "),s("code",[a._v("exec(command)")]),a._v(" function call does not return a result string unless it fails.\nTherefore, the "),s("code",[a._v("exec(command)")]),a._v(" may be the last command executed in a script\nfile leaving the executed command in charge of the terminal IO until it\nterminates.")]),a._v(" "),s("p",[a._v("For example, an ABS script might be used to marshall the command line args\nfor an interactive program such as the nano editor:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("$ "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("cat")]),a._v(" abs/tests/test-exec.abs\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# marshall the args for the nano editor")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# if the filename is not given in the args, prompt for it")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# if the file is located outside the user's home dir, invoke sudo nano filename")]),a._v("\n\ncmd "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v("'nano'")]),a._v("\nfilename "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" arg"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("2")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\nhomedir "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" env"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"HOME"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("while")]),a._v(" filename "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("==")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v("''")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"Please enter file name for %s: "')]),a._v(", cmd"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n filename "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" stdin"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" filename.prefix"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v("'~/'")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("||")]),a._v(" filename.prefix"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),a._v("homedir"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v("''")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("else")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v("'sudo'")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# execute the command with live stdIO")]),a._v("\nexec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$cmd")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$filename")]),a._v('"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n")])])])])}),[],!1,null,null,null);t.default=n.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[31],{530:function(a,t,s){"use strict";s.r(t);var e=s(45),n=Object(e.a)({},(function(){var a=this,t=a.$createElement,s=a._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[s("h1",{attrs:{id:"system-shell-commands"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#system-shell-commands"}},[a._v("#")]),a._v(" System (shell) commands")]),a._v(" "),s("p",[a._v("Executing system commands is one of the most important features\nof ABS, as it allows mixing the convenience of the shell with\nthe syntax of a modern programming language.")]),a._v(" "),s("p",[a._v("Commands are executed with the "),s("code",[a._v("`command`")]),a._v(" syntax,\nwhich resemble Bash's syntax to execute commands in a subshell:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token function"}},[a._v("date")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("date")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v('# "Sun Apr 1 04:30:59 +01 1995"')]),a._v("\n")])])]),s("p",[a._v("As you can see, the return value of a command is a simple\nstring -- the output of the program. If the program was to\nencounter an error, the same string would hold the error\nmessage:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token function"}},[a._v("date")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),a._v("dat"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v('# "bash: dat: command not found"')]),a._v("\n")])])]),s("p",[a._v("It would be fairly painful to have to parse strings\nmanually to understand if a command executed without errors;\nin ABS, the returned string has a special property "),s("code",[a._v("ok")]),a._v(" that\nchecks whether the command was successful:")]),a._v(" "),s("div",{staticClass:"language-js extra-class"},[s("pre",{pre:!0,attrs:{class:"language-js"}},[s("code",[s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token template-string"}},[s("span",{pre:!0,attrs:{class:"token template-punctuation string"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v("ls -la")]),s("span",{pre:!0,attrs:{class:"token template-punctuation string"}},[a._v("`")])]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(".")]),a._v("ok "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("echo")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"hello world"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n")])])]),s("h2",{attrs:{id:"executing-commands-in-background"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#executing-commands-in-background"}},[a._v("#")]),a._v(" Executing commands in background")]),a._v(" "),s("p",[a._v("Sometimes you might want to execute a command in\nbackground, so that the script keeps executing\nwhile the command is running. In order to do so,\nyou can simply add an "),s("code",[a._v("&")]),a._v(" at the end of your script:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("10")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v("\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"This will be printed right away!"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n")])])]),s("p",[a._v('You might also want to check whether a command\nis "done", by checking the boolean '),s("code",[a._v(".done")]),a._v(" property:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("cmd "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("10")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v("\ncmd.done "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# false")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("11")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v("\ncmd.done "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# true")]),a._v("\n")])])]),s("p",[a._v("If, at some point, you want to wait for the command\nto finish before running additional code, you can\nuse the "),s("code",[a._v("wait")]),a._v(" method:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("cmd "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("10")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v("\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"This will be printed right away!"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\ncmd.wait"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"This will be printed after 10s"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n")])])]),s("p",[a._v("If you ever want to terminate a running command, you can\nuse the "),s("code",[a._v("kill")]),a._v(" method.")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("cmd "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("10")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v("\ncmd.done "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# false")]),a._v("\ncmd.kill"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\ncmd.done "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# true")]),a._v("\n")])])]),s("p",[a._v("Also note that when an "),s("code",[a._v("exec()")]),a._v(" command string terminates with an "),s("code",[a._v("&")]),a._v(",\nthe "),s("code",[a._v("exec(command)")]),a._v(" function will terminate immediately after launching\nthe command which will run independently in the background.\nThis means that the command must either terminate on its own or be killed\nusing "),s("code",[a._v("pkill")]),a._v(" or similar. This way an ABS script can launch a true daemon\nprocess that may operate on its own outside of ABS. For example you can\nreboot a remote computer via ssh without interacting with it:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("exec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v("\"ssh user@host.local 'sudo reboot' &\"")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n")])])]),s("h2",{attrs:{id:"interpolation"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#interpolation"}},[a._v("#")]),a._v(" Interpolation")]),a._v(" "),s("p",[a._v("You can also replace parts of the command with variables\ndeclared within your program using the "),s("code",[a._v("$")]),a._v(" symbol:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token function"}},[a._v("file")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"cpuinfo"')]),a._v("\nx "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("cat")]),a._v(" /proc/$file"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v("\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),a._v("x"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# processor: 0\\nvendor_id: GenuineIntel...")]),a._v("\n")])])]),s("p",[a._v("or interpolation within an "),s("code",[a._v("exec(command)")])]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("cmd "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" args"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("2")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\nfilename "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" args"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("3")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\nexec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"sudo '),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$cmd")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$filename")]),a._v('"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n")])])]),s("p",[a._v("and if you need "),s("code",[a._v("$")]),a._v(" literals in your command, you\nsimply need to escape them with a "),s("code",[a._v("\\")]),a._v(":")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("$PWD")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v('# "" since the ABS variable PWD doesn\'t exist')]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("$PWD")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v('# "/go/src/github.com/abs-lang/abs"')]),a._v("\n")])])]),s("h2",{attrs:{id:"using-a-different-shell"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#using-a-different-shell"}},[a._v("#")]),a._v(" Using a different shell")]),a._v(" "),s("p",[a._v("By default, ABS uses "),s("code",[a._v("bash -c")]),a._v(" to execute commands; on Windows\nit instead uses "),s("code",[a._v("cmd.exe /C")]),a._v(".")]),a._v(" "),s("p",[a._v("You can specify which shell to use by setting the environment\nvariable "),s("code",[a._v("ABS_COMMAND_EXECUTOR")]),a._v(":")]),a._v(" "),s("div",{staticClass:"language-sh extra-class"},[s("pre",{pre:!0,attrs:{class:"language-sh"}},[s("code",[s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("$0"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# bash")]),a._v("\nenv"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"ABS_COMMAND_EXECUTOR"')]),a._v(", "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"sh -c"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("$0"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# sh")]),a._v("\n")])])]),s("h2",{attrs:{id:"alternative-syntax"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#alternative-syntax"}},[a._v("#")]),a._v(" Alternative $() syntax")]),a._v(" "),s("p",[a._v("Even though the use of backticks is the standard recommended\nway to run system commands, for the ease of embedding ABS also\nallows you to use the "),s("code",[a._v("$(command)")]),a._v(" syntax:")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v('$(basename $(dirname "/tmp/make/life/easy")) // "easy"\n')])])]),s("p",[a._v("Commands that use the "),s("code",[a._v("$()")]),a._v(" syntax need to be\non their own line, meaning that you will not\nbe able to have additional code on the same line.\nThis will throw an error:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("10")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"hello world"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n")])])]),s("h2",{attrs:{id:"executing-commands-without-capturing-i-o"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#executing-commands-without-capturing-i-o"}},[a._v("#")]),a._v(" Executing commands without capturing I/O")]),a._v(" "),s("p",[a._v("It is also possible to execute a shell command without capturing its\ninput or output using the "),s("code",[a._v("exec(command)")]),a._v(" function. This allows long running\nor interactive programs to be run using the terminal's Standard IO\n(stdin, stdout, stderr). For example:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("exec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"sudo visudo"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n")])])]),s("p",[a._v("would open the default text editor in super user mode on the /etc/sudoers file.")]),a._v(" "),s("p",[a._v("Unlike the normal backtick command execution syntax above,\nthe "),s("code",[a._v("exec(command)")]),a._v(" function call does not return a result string unless it fails.\nTherefore, the "),s("code",[a._v("exec(command)")]),a._v(" may be the last command executed in a script\nfile leaving the executed command in charge of the terminal IO until it\nterminates.")]),a._v(" "),s("p",[a._v("For example, an ABS script might be used to marshall the command line args\nfor an interactive program such as the nano editor:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("$ "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("cat")]),a._v(" abs/tests/test-exec.abs\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# marshall the args for the nano editor")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# if the filename is not given in the args, prompt for it")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# if the file is located outside the user's home dir, invoke sudo nano filename")]),a._v("\n\ncmd "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v("'nano'")]),a._v("\nfilename "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" arg"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("2")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\nhomedir "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" env"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"HOME"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("while")]),a._v(" filename "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("==")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v("''")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"Please enter file name for %s: "')]),a._v(", cmd"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n filename "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" stdin"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" filename.prefix"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v("'~/'")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("||")]),a._v(" filename.prefix"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),a._v("homedir"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v("''")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("else")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v("'sudo'")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# execute the command with live stdIO")]),a._v("\nexec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$cmd")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$filename")]),a._v('"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n")])])])])}),[],!1,null,null,null);t.default=n.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/31.6bcaa134.js b/docs/src/.vuepress/dist/assets/js/32.05eec4c5.js similarity index 96% rename from docs/src/.vuepress/dist/assets/js/31.6bcaa134.js rename to docs/src/.vuepress/dist/assets/js/32.05eec4c5.js index c35601af..02512242 100644 --- a/docs/src/.vuepress/dist/assets/js/31.6bcaa134.js +++ b/docs/src/.vuepress/dist/assets/js/32.05eec4c5.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[31],{530:function(t,a,s){"use strict";s.r(a);var e=s(45),n=Object(e.a)({},(function(){var t=this,a=t.$createElement,s=t._self._c||a;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"while"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#while"}},[t._v("#")]),t._v(" While")]),t._v(" "),s("p",[t._v("While loops are a special form of "),s("code",[t._v("for")]),t._v(" loops, so much\nthat in some languages the canonical way to execute a\nwhile loop is with a "),s("code",[t._v("for(;;)")]),t._v(".")]),t._v(" "),s("p",[t._v("ABS, though, has a dedicated construct:")]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[t._v("x "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("while")]),t._v(" x "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n x "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" x + "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 99")]),t._v("\n")])])])])}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[32],{531:function(t,a,s){"use strict";s.r(a);var e=s(45),n=Object(e.a)({},(function(){var t=this,a=t.$createElement,s=t._self._c||a;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"while"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#while"}},[t._v("#")]),t._v(" While")]),t._v(" "),s("p",[t._v("While loops are a special form of "),s("code",[t._v("for")]),t._v(" loops, so much\nthat in some languages the canonical way to execute a\nwhile loop is with a "),s("code",[t._v("for(;;)")]),t._v(".")]),t._v(" "),s("p",[t._v("ABS, though, has a dedicated construct:")]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[t._v("x "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("while")]),t._v(" x "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n x "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" x + "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 99")]),t._v("\n")])])])])}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/33.227bf7d4.js b/docs/src/.vuepress/dist/assets/js/33.227bf7d4.js deleted file mode 100644 index 173a6ebc..00000000 --- a/docs/src/.vuepress/dist/assets/js/33.227bf7d4.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[33],{532:function(t,s,a){"use strict";a.r(s);var e=a(45),n=Object(e.a)({},(function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"builtin-function"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#builtin-function"}},[t._v("#")]),t._v(" Builtin function")]),t._v(" "),a("p",[t._v("There are many builtin functions in ABS.\nTake "),a("code",[t._v("type")]),t._v(", for example:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("type"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# NUMBER")]),t._v("\ntype"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# ARRAY")]),t._v("\n")])])]),a("p",[t._v('We\'ll reveal to you a secret now: all string, array, number & hash functions\nare actually "generic", but the syntax you see makes you think those are\nspecific to the string, number, etc object.')]),t._v(" "),a("p",[t._v("The trick is very simple; whenever the ABS' interpreter finds a method call\nsuch as "),a("code",[t._v("object.func(arg)")]),t._v(" it will actually translate it to "),a("code",[t._v("func(object, arg)")]),t._v(".")]),t._v(" "),a("p",[t._v("Don't believe us? Try with these examples:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("map"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"1"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(", int"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1]")]),t._v("\nsort"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\nlen"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"abc"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 3")]),t._v("\n")])])]),a("p",[t._v("At the same time, there are some builtin functions that doesn't really\nmake sense to call with the method notation, so we've kept them in a\n\"special\" location in the documentation. "),a("code",[t._v("exit(99)")]),t._v(", for example, exits\nthe program with the status code "),a("code",[t._v("99")]),t._v(", but it would definitely look\nstrange to see something such as "),a("code",[t._v("99.exit()")]),t._v(".")]),t._v(" "),a("h2",{attrs:{id:"generic-builtin-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#generic-builtin-functions"}},[t._v("#")]),t._v(" Generic builtin functions")]),t._v(" "),a("h3",{attrs:{id:"arg-n"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#arg-n"}},[t._v("#")]),t._v(" arg(n)")]),t._v(" "),a("p",[t._v("Returns the "),a("code",[t._v("n")]),t._v("th argument to the current script:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("arg"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# /usr/bin/abs")]),t._v("\n")])])]),a("h3",{attrs:{id:"args"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#args"}},[t._v("#")]),t._v(" args()")]),t._v(" "),a("p",[t._v("Returns the list of arguments to the current script (including the current script itself)")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("$ abs --flag1 --flag2 arg1 arg2\nHello user, welcome to the ABS programming language"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\nType "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'quit'")]),t._v(" when you"),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'re done, '")]),t._v("help' "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" you get lost"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\n⧐ args"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"abs"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"--flag1"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"--flag2"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"arg1"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"arg2"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n⧐ args"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(".len"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),t._v("\n")])])]),a("h3",{attrs:{id:"cd-or-cd-path"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#cd-or-cd-path"}},[t._v("#")]),t._v(" cd() or cd(path)")]),t._v(" "),a("p",[t._v("Sets the current working directory to "),a("code",[t._v("homeDir")]),t._v(" or the given "),a("code",[t._v("path")]),t._v("\nin both Linux and Windows.")]),t._v(" "),a("p",[t._v("Note that the path may have a "),a("code",[t._v("'~/'")]),t._v(" prefix which will be replaced\nwith "),a("code",[t._v("'homeDir/'")]),t._v(". Also, in Windows, any "),a("code",[t._v("'/'")]),t._v(" path separator will be\nreplaced with "),a("code",[t._v("'\\'")]),t._v(" and path names are not case-sensitive.")]),t._v(" "),a("p",[t._v("Returns the "),a("code",[t._v("'/fully/expanded/path'")]),t._v(" to the new current working directory and "),a("code",[t._v("path.ok")]),t._v(".\nIf "),a("code",[t._v("path.ok")]),t._v(" is "),a("code",[t._v("false")]),t._v(", that means there was an error changing directory:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("path "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" cd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\npath.ok "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# true")]),t._v("\npath "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# /home/user or C:\\Users\\user")]),t._v("\n\nhere "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" pwd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\npath "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" cd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"/path/to/nowhere"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\npath.ok "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# false")]),t._v("\npath "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 'chdir /path/to/nowhere: no such file or directory'")]),t._v("\nhere "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" pwd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# true")]),t._v("\n\ncd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"~/git/abs"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# /home/user/git/abs or C:\\Users\\user\\git\\abs")]),t._v("\n\ncd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('".."')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# /home/user/git or C:\\Users\\user\\git")]),t._v("\n\ncd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"/usr/local/bin"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# /usr/local/bin")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("dirs")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" cd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("&&")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("ls")]),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),t._v(".lines"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nlen"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("dirs"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# number of directories in homeDir")]),t._v("\n")])])]),a("h3",{attrs:{id:"echo-var"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#echo-var"}},[t._v("#")]),t._v(" echo(var)")]),t._v(" "),a("p",[t._v("Prints the given variable:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello world"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),a("p",[t._v("You can use use placeholders in your strings:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello %s"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"world"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),a("p",[t._v("To know more about how the placeholders work, please have a look at the documentation\nfor "),a("RouterLink",{attrs:{to:"/types/string/#fmt"}},[t._v("string.fmt()")])],1),t._v(" "),a("h3",{attrs:{id:"env-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#env-str"}},[t._v("#")]),t._v(" env(str)")]),t._v(" "),a("p",[t._v("Returns the "),a("code",[t._v("str")]),t._v(" environment variable:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("env"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"PATH"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "/go/bin:/usr/local/go/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"')]),t._v("\n")])])]),a("h3",{attrs:{id:"eval-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#eval-str"}},[t._v("#")]),t._v(" eval(str)")]),t._v(" "),a("p",[t._v("Evaluates the "),a("code",[t._v("str")]),t._v(" as ABS code:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("eval"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"1 + 1"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 2")]),t._v("\neval"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'object = {\"x\": 10}; object.x'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 10")]),t._v("\n")])])]),a("h3",{attrs:{id:"exit-code-message"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#exit-code-message"}},[t._v("#")]),t._v(" exit(code [, message])")]),t._v(" "),a("p",[t._v("Exits the script with status "),a("code",[t._v("code")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("exit"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),a("p",[t._v("You can specify a message that's going to be outputted right\nbefore exiting:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("⧐ exit"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Got problems..."')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nGot problems"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".\n")])])]),a("h3",{attrs:{id:"flag-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#flag-str"}},[t._v("#")]),t._v(" flag(str)")]),t._v(" "),a("p",[t._v("Returns the value of a command-line flag. Both the "),a("code",[t._v("--flag")]),t._v(" and "),a("code",[t._v("-flag")]),t._v("\nform are accepted, and you can specify values with "),a("code",[t._v("--flag=x")]),t._v("\nas well as "),a("code",[t._v("--flag x")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("$ abs --test --test2 "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(" --test3"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(" --test4 -test5\nHello user, welcome to the ABS programming language"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\nType "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'quit'")]),t._v(" when you"),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'re done, '")]),t._v("help' "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" you get lost"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\n⧐ flag"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"test"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),t._v("\n⧐ flag"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"test2"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v("\n⧐ flag"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"test3"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v("\n⧐ flag"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"test4"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),t._v("\n⧐ flag"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"test5"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),t._v("\n⧐ flag"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"test6"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n⧐\n")])])]),a("p",[t._v("If a flag value is not set, it will default to "),a("code",[t._v("true")]),t._v(".\nThe value of a flag that does not exist is "),a("code",[t._v("NULL")]),t._v(".")]),t._v(" "),a("p",[t._v("In all other cases "),a("code",[t._v("flag(...)")]),t._v(" returns the literal string\nvalue of the flag:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("$ abs --number "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v("\nHello user, welcome to the ABS programming language"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\nType "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'quit'")]),t._v(" when you"),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'re done, '")]),t._v("help' "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" you get lost"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\n⧐ n "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" flag"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"number"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n⧐ n\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v("\n⧐ type"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nSTRING\n")])])]),a("h3",{attrs:{id:"pwd"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#pwd"}},[t._v("#")]),t._v(" pwd()")]),t._v(" "),a("p",[t._v("Returns the path to the current working directory -- equivalent\nto "),a("code",[t._v('env("PWD")')]),t._v(".")]),t._v(" "),a("p",[t._v("If executed from a script this will initially be the directory\ncontaining the script.")]),t._v(" "),a("p",[t._v("To change the working directory, see "),a("code",[t._v("cd()")]),t._v(".")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("pwd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# /go/src/github.com/abs-lang/abs")]),t._v("\n")])])]),a("h3",{attrs:{id:"rand-max"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#rand-max"}},[t._v("#")]),t._v(" rand(max)")]),t._v(" "),a("p",[t._v("Returns a random integer number between 0 and "),a("code",[t._v("max")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("rand"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 7")]),t._v("\n")])])]),a("h3",{attrs:{id:"require-path-to-file-abs"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#require-path-to-file-abs"}},[t._v("#")]),t._v(" require(path_to_file.abs)")]),t._v(" "),a("p",[t._v("Evaluates the script at "),a("code",[t._v("path_to_file.abs")]),t._v(", and makes\nits return value available to the caller.")]),t._v(" "),a("p",[t._v("For example, suppose we have a "),a("code",[t._v("module.abs")]),t._v(" file:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("adder "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("a, b"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" a + b "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nmultiplier "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("a, b"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" a * b "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"adder"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" adder, "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"multiplier"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" multiplier"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),a("p",[t._v("and a "),a("code",[t._v("main.abs")]),t._v(" such as:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("mod "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" require"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"module.abs"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mod.adder"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("))")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 3")]),t._v("\n")])])]),a("p",[t._v("This is mostly useful to create external library\nfunctions, like NPM modules or PIP packages, that\ndo not have access to the global environment. Any\nvariable set outside of the module will not be\navailable inside it, and vice-versa. The only\nvariable available to the caller (the script requiring\nthe module) is the module's return value.")]),t._v(" "),a("p",[t._v("Note that "),a("code",[t._v("require")]),t._v(" uses paths that are relative to\nthe current script. Say that you have 2 files ("),a("code",[t._v("a.abs")]),t._v(" and "),a("code",[t._v("b.abs")]),t._v(")\nin the "),a("code",[t._v("/tmp")]),t._v(" folder, "),a("code",[t._v("a.abs")]),t._v(" can "),a("code",[t._v('require("./b.abs")')]),t._v("\nwithout having to specify the full path (eg. "),a("code",[t._v('require("/tmp/b.abs")')]),t._v(").")]),t._v(" "),a("h3",{attrs:{id:"sleep-ms"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#sleep-ms"}},[t._v("#")]),t._v(" sleep(ms)")]),t._v(" "),a("p",[t._v("Halts the process for as many "),a("code",[t._v("ms")]),t._v(" you specified:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("sleep"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1000")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# sleeps for 1 second")]),t._v("\n")])])]),a("h3",{attrs:{id:"source-path-to-file-abs"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#source-path-to-file-abs"}},[t._v("#")]),t._v(" source(path_to_file.abs)")]),t._v(" "),a("p",[t._v("Evaluates the script at "),a("code",[t._v("path_to_file.abs")]),t._v(" in the context of the\nABS global environment. The results of any expressions in the file\nbecome available to other commands in the REPL command line or to other\nscripts in the current script execution chain.")]),t._v(" "),a("p",[t._v("This is very similar to "),a("code",[t._v("require")]),t._v(", but allows the module to access\nand edit the global environment. Any variable set inside the module\nwill also be available outside of it.")]),t._v(" "),a("p",[t._v("This is most useful for creating library functions in a startup script,\nor variables that can be used by many other scripts. Often these library functions\nare loaded via the ABS Init File "),a("code",[t._v("~/.absrc")]),t._v(" (see "),a("a",{attrs:{href:"/introduction/how-to-run-abs-code"}},[t._v("ABS Init File")]),t._v(").")]),t._v(" "),a("p",[t._v("For example:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("$ "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("cat")]),t._v(" ~/abs/lib/library.abs\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Useful function library ~/abs/lib/library.abs")]),t._v("\nadder "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("n, i"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" n + i "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n$ "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("cat")]),t._v(" ~/.absrc\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# ABS init file ~/.absrc")]),t._v("\nsource"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"~/abs/lib/library.abs"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n$ abs\nHello user, welcome to the ABS programming language"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\nType "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'quit'")]),t._v(" when you are done, "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'help'")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" you get lost"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\n⧐ adder"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v("\n⧐\n")])])]),a("p",[t._v("In addition to source file inclusion in scripts, you can also use\n"),a("code",[t._v("source()")]),t._v(" in the interactive REPL to load a script being\ndebugged. When the loaded script completes, the REPL command line\nwill have access to all variables and functions evaluated in the\nscript.")]),t._v(" "),a("p",[t._v("For example:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("⧐ source"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"~/git/abs/tests/test-strings.abs"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" Testing "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("split")]),t._v(" and "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("join")]),t._v(" strings with expanded LFs:\ns "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('c"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("s"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("a, b, c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".\n⧐ s\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("a, b, c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n⧐\n")])])]),a("p",[t._v("Note well that nested source files must not create a circular\ninclusion condition. You can configure the intended source file\ninclusion depth using the "),a("code",[t._v("ABS_SOURCE_DEPTH")]),t._v(" OS or ABS environment\nvariables. The default is "),a("code",[t._v("ABS_SOURCE_DEPTH=10")]),t._v(". This will prevent\na panic in the ABS interpreter if there is an unintended circular\nsource inclusion.")]),t._v(" "),a("p",[t._v("For example an ABS Init File may contain:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("ABS_SOURCE_DEPTH "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("15")]),t._v("\nsource"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"~/path/to/abs/lib"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),a("p",[t._v("This will limit the source inclusion depth to 15 levels for this\n"),a("code",[t._v("source()")]),t._v(" statement and will also apply to future "),a("code",[t._v("source()")]),t._v("\nstatements until changed.")]),t._v(" "),a("h3",{attrs:{id:"stdin"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#stdin"}},[t._v("#")]),t._v(" stdin()")]),t._v(" "),a("p",[t._v("Reads from the "),a("code",[t._v("stdin")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"What do you like?"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Oh, you like %s!"')]),t._v(", stdin"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("))")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# This line will block until user enters some text")]),t._v("\n")])])]),a("p",[t._v("Worth to note that you can read\nthe "),a("code",[t._v("stdin")]),t._v(" indefinitely with:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Will read all input to the")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# stdin and output it back")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[t._v("input")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("in")]),t._v(" stdin "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("input"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Or from the REPL:")]),t._v("\n\n⧐ "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[t._v("input")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("in")]),t._v(" stdin "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("((")]),t._v("input.int"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" / "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(".str"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" + "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"...try again:"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".try again:\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2.5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".try again:\n\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".\n")])])]),a("h3",{attrs:{id:"type-var"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#type-var"}},[t._v("#")]),t._v(" type(var)")]),t._v(" "),a("p",[t._v("Returns the type if the given variable:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("type"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('""')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "STRING"')]),t._v("\ntype"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "HASH"')]),t._v("\n")])])]),a("h3",{attrs:{id:"unix-ms"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#unix-ms"}},[t._v("#")]),t._v(" unix_ms()")]),t._v(" "),a("p",[t._v("Returns the current unix epoch time, in milliseconds:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("unix_ms"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 1594049453157")]),t._v("\n")])])])])}),[],!1,null,null,null);s.default=n.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/32.13dbfef4.js b/docs/src/.vuepress/dist/assets/js/33.da24515a.js similarity index 78% rename from docs/src/.vuepress/dist/assets/js/32.13dbfef4.js rename to docs/src/.vuepress/dist/assets/js/33.da24515a.js index 0db7f2c7..184c9d4b 100644 --- a/docs/src/.vuepress/dist/assets/js/32.13dbfef4.js +++ b/docs/src/.vuepress/dist/assets/js/33.da24515a.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[32],{531:function(t,s,a){"use strict";a.r(s);var n=a(45),e=Object(n.a)({},(function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"array"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#array"}},[t._v("#")]),t._v(" Array")]),t._v(" "),a("p",[t._v("Arrays represent lists of elements\nof any type:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n")])])]),a("p",[t._v("They can be looped over:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[t._v("x")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("in")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),a("p",[t._v("You can access elements of the array with "),a("code",[t._v("[]")]),t._v(" index\nnotation:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("array"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n")])])]),a("p",[t._v("Accessing an array element that does not exist returns "),a("code",[t._v("null")]),t._v(".")]),t._v(" "),a("p",[t._v("You can also access the Nth last element of an array\nwith a negative index:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"b"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"c"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"d"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("-2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "c"')]),t._v("\n")])])]),a("p",[t._v("You can also access a range of indexes with the "),a("code",[t._v("[start:end]")]),t._v(" notation:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("array "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("6")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("7")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("8")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("9")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n\narray"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),t._v(":2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [0, 1, 2]")]),t._v("\n")])])]),a("p",[t._v("where "),a("code",[t._v("start")]),t._v(" is the starting position in the array, and "),a("code",[t._v("end")]),t._v(" is\nthe ending one. If "),a("code",[t._v("start")]),t._v(" is not specified, it is assumed to be 0,\nand if "),a("code",[t._v("end")]),t._v(" is omitted it is assumed to be the last index in the\narray:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("array"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v(":2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [0, 1, 2]")]),t._v("\narray"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("7")]),t._v(":"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [7, 8, 9]")]),t._v("\n")])])]),a("p",[t._v("If "),a("code",[t._v("end")]),t._v(" is negative, it will be converted to "),a("code",[t._v("length of array - (-end)")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("array"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v(":-3"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [0, 1, 2, 3, 4, 5, 6]")]),t._v("\n")])])]),a("p",[t._v('To concatenate arrays, "sum" them:')]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" + "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n")])])]),a("p",[t._v("This is also the suggested way to push a new element into\nan array:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\nx "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\nx "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n")])])]),a("p",[t._v("In a similar way, we can make a "),a("strong",[t._v("shallow")]),t._v(" copy of an array using the "),a("code",[t._v("+")]),t._v(" operator with an empty array. Be careful, the empty array must be on the left side of the "),a("code",[t._v("+")]),t._v(" operator.")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# shallow copy an array using the + operator with an empty array")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# note well that the empty array must be on the left side of the +")]),t._v("\nb "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" + a\nb "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# modify the shallow copy without changing the original")]),t._v("\nb"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\nb "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [99, 2, 3]")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n")])])]),a("p",[t._v("It is also possible to modify an existing array element using "),a("code",[t._v("array[index]")]),t._v(" assignment. This also works with compound operators such as "),a("code",[t._v("+=")]),t._v(" :")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4]")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# index assignment")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [99, 2, 3, 4]")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# compound assignment")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [100, 2, 3, 4]")]),t._v("\n")])])]),a("p",[t._v("An array can also be extended by using an index beyond the end of the existing array. Note that intervening array elements will be set to "),a("code",[t._v("null")]),t._v(". This means that they can be set to another value later:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4]")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# indexes beyond end of array expand the array")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4, 99]")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("6")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("66")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4, 99, null, 66]")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# assign to a null element")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4, 99, 55, 66]")]),t._v("\n")])])]),a("p",[t._v('An array is defined as "homogeneous" when all its elements\nare of a single type:')]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# homogeneous")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("null, "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('""')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# heterogeneous")]),t._v("\n")])])]),a("p",[t._v("This is important as some functions are only supported\non homogeneous arrays: "),a("code",[t._v("sum()")]),t._v(", for example, can only be\ncalled on homogeneous arrays of numbers.")]),t._v(" "),a("h2",{attrs:{id:"supported-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#supported-functions"}},[t._v("#")]),t._v(" Supported functions")]),t._v(" "),a("h3",{attrs:{id:"chunk-size"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#chunk-size"}},[t._v("#")]),t._v(" chunk(size)")]),t._v(" "),a("p",[t._v("Splits the array into chunks of the given "),a("code",[t._v("size")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("chunk"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [[1, 2], [3]]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("chunk"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [[1,2,3]]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("chunk"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1.2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# argument to chunk must be a positive integer, got '1.2'")]),t._v("\n")])])]),a("h3",{attrs:{id:"diff-array"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#diff-array"}},[t._v("#")]),t._v(" diff(array)")]),t._v(" "),a("p",[t._v("Computes the difference between 2 arrays,\nreturning elements that are only in the first array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("diff"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("diff"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("diff"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [2]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("diff"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# []")]),t._v("\n")])])]),a("p",[t._v("For symmetric difference see "),a("a",{attrs:{href:"#diff_symmetricarray"}},[t._v("diff_symmetric(...)")])]),t._v(" "),a("h3",{attrs:{id:"diff-symmetric-array"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#diff-symmetric-array"}},[t._v("#")]),t._v(" diff_symmetric(array)")]),t._v(" "),a("p",[t._v("Computes the "),a("a",{attrs:{href:"https://en.wikipedia.org/wiki/Symmetric_difference",target:"_blank",rel:"noopener noreferrer"}},[t._v("symmetric difference"),a("OutboundLink")],1),t._v("\nbetween 2 arrays, returning elements that are only in one of the arrays:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("diff_symmetric"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("diff_symmetric"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("diff_symmetric"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [2]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("diff_symmetric"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [4]")]),t._v("\n")])])]),a("h3",{attrs:{id:"every-f"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#every-f"}},[t._v("#")]),t._v(" every(f)")]),t._v(" "),a("p",[t._v("Returns true when all elements in the array\nreturn "),a("code",[t._v("true")]),t._v(" when applied to the function "),a("code",[t._v("f")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("every"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("type")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"NUMBER"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# true")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("every"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# false")]),t._v("\n")])])]),a("h3",{attrs:{id:"filter-f"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#filter-f"}},[t._v("#")]),t._v(" filter(f)")]),t._v(" "),a("p",[t._v("Returns a new array with only the elements that returned\n"),a("code",[t._v("true")]),t._v(" when applied to the function "),a("code",[t._v("f")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("filter")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("type")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"NUMBER"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [0, 1, 2]")]),t._v("\n")])])]),a("h3",{attrs:{id:"find-f"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#find-f"}},[t._v("#")]),t._v(" find(f)")]),t._v(" "),a("p",[t._v("Returns the first element that returns "),a("code",[t._v("true")]),t._v(" when applied to the function "),a("code",[t._v("f")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("find"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("type")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"NUMBER"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 0")]),t._v("\n")])])]),a("p",[t._v("A shorthand syntax supports passing a hash and comparing\nelements to the given hash:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("null"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"key"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"val"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"test"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("123")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("find"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"key"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"val"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# {"key": "val", "test": 123}')]),t._v("\n")])])]),a("h3",{attrs:{id:"flatten"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#flatten"}},[t._v("#")]),t._v(" flatten()")]),t._v(" "),a("p",[t._v('Concatenates the lowest "layer" of elements in a nested array:')]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("flatten"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("flatten"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("6")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("7")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("8")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("flatten"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [[1, 2], [3, 4], 5, 6, 7, 8]")]),t._v("\n")])])]),a("h3",{attrs:{id:"flatten-deep"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#flatten-deep"}},[t._v("#")]),t._v(" flatten_deep()")]),t._v(" "),a("p",[t._v("Recursively flattens an array until no element is an array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("flatten_deep"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("flatten_deep"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4]")]),t._v("\n")])])]),a("h3",{attrs:{id:"intersect-array"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#intersect-array"}},[t._v("#")]),t._v(" intersect(array)")]),t._v(" "),a("p",[t._v("Computes the intersection between 2 arrays:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("intersect"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# []")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("intersect"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [3]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("intersect"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 3]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("intersect"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n")])])]),a("h3",{attrs:{id:"join-separator"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#join-separator"}},[t._v("#")]),t._v(" join([separator])")]),t._v(" "),a("p",[t._v("Joins the elements of the array with the string "),a("code",[t._v("separator")]),t._v(' (default "", the empty string):')]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("join"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"_"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "1_2_3"')]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("join"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "123"')]),t._v("\n")])])]),a("h3",{attrs:{id:"keys"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#keys"}},[t._v("#")]),t._v(" keys()")]),t._v(" "),a("p",[t._v("Returns an array of the keys in the original array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v(".2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("keys"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [0, 1]")]),t._v("\n")])])]),a("h3",{attrs:{id:"len"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#len"}},[t._v("#")]),t._v(" len()")]),t._v(" "),a("p",[t._v("Returns the length of the array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("len")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 2")]),t._v("\n")])])]),a("h3",{attrs:{id:"map-f"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#map-f"}},[t._v("#")]),t._v(" map(f)")]),t._v(" "),a("p",[t._v("Modifies the array by applying the function "),a("code",[t._v("f")]),t._v(" to all its elements:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("map")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n")])])]),a("h3",{attrs:{id:"max"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#max"}},[t._v("#")]),t._v(" max()")]),t._v(" "),a("p",[t._v("Finds the highest number in an array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("max")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# NULL")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("-")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("max")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 100")]),t._v("\n")])])]),a("h3",{attrs:{id:"min"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#min"}},[t._v("#")]),t._v(" min()")]),t._v(" "),a("p",[t._v("Finds the lowest number in an array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("min")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# NULL")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("-")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("min")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# -10")]),t._v("\n")])])]),a("h3",{attrs:{id:"partition-f"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#partition-f"}},[t._v("#")]),t._v(" partition(f)")]),t._v(" "),a("p",[t._v("Partitions the array by applying "),a("code",[t._v("f(element)")]),t._v(" to all of its elements,\nthen grouping the elements into an array of arrays based on the results:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("f odd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" !!"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("n "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("%")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nf div2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("int")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("n "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("/")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("partition"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("odd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [[0, 2, 4], [1, 3, 5]]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("partition"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("div2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [[5, 4], [3, 2], [1, 0]]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"1"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"0"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("partition"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("str")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# [["1", 1], [{}], [0, "0"]]')]),t._v("\n")])])]),a("h3",{attrs:{id:"pop"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#pop"}},[t._v("#")]),t._v(" pop()")]),t._v(" "),a("p",[t._v("Removes and returns the last element from the array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("pop"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 3")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2]")]),t._v("\n")])])]),a("h3",{attrs:{id:"push-x"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#push-x"}},[t._v("#")]),t._v(" push(x)")]),t._v(" "),a("p",[t._v("Inserts "),a("code",[t._v("x")]),t._v(" at the end of the array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("push"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n")])])]),a("p",[t._v("This is equivalent to summing 2 arrays:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n")])])]),a("h3",{attrs:{id:"reduce-f-accumulator"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#reduce-f-accumulator"}},[t._v("#")]),t._v(" reduce(f, accumulator)")]),t._v(" "),a("p",[t._v("Reduces the array to a value by iterating through its elements and applying the two-argument function "),a("code",[t._v("f(value, element)")]),t._v(" to them, with "),a("code",[t._v("accumulator")]),t._v(" as the initial "),a("code",[t._v("value")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("reduce")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("value"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" element"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" value "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+")]),t._v(" element "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 10")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("reduce")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("value"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" element"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" value "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+")]),t._v(" element "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 20")]),t._v("\n")])])]),a("h3",{attrs:{id:"reverse"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#reverse"}},[t._v("#")]),t._v(" reverse()")]),t._v(" "),a("p",[t._v("Reverses the order of the elements in the array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("reverse"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [2, 1]")]),t._v("\n")])])]),a("h3",{attrs:{id:"shift"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#shift"}},[t._v("#")]),t._v(" shift()")]),t._v(" "),a("p",[t._v("Removes the first element from the array, and returns it:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("shift"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 1")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [2, 3]")]),t._v("\n")])])]),a("h3",{attrs:{id:"shuffle"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#shuffle"}},[t._v("#")]),t._v(" shuffle()")]),t._v(" "),a("p",[t._v("Shuffles elements in the array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("shuffle"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [3, 1, 2, 4]")]),t._v("\n")])])]),a("h3",{attrs:{id:"some-f"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#some-f"}},[t._v("#")]),t._v(" some(f)")]),t._v(" "),a("p",[t._v("Returns true when at least one of the elements in the array\nreturns "),a("code",[t._v("true")]),t._v(" when applied to the function "),a("code",[t._v("f")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("map")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# true")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("map")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# false")]),t._v("\n")])])]),a("h3",{attrs:{id:"sort"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#sort"}},[t._v("#")]),t._v(" sort()")]),t._v(" "),a("p",[t._v("Sorts the array. Only supported on homogeneous arrays of numbers\nor strings:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("sort"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"b"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"c"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("sort"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# ["a", "b", "c"]')]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("42")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hut"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("37")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("sort"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nERROR"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" argument to "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'sort'")]),t._v(" must be an homogeneous array "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("elements of the same "),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("type")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" got "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("42")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hut"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("37")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("16")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("42")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hut"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("37")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("sort"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),a("h3",{attrs:{id:"str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#str"}},[t._v("#")]),t._v(" str()")]),t._v(" "),a("p",[t._v("Returns the string representation of the array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("str")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "[1, 2]"')]),t._v("\n")])])]),a("h3",{attrs:{id:"sum"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#sum"}},[t._v("#")]),t._v(" sum()")]),t._v(" "),a("p",[t._v("Sums the elements of the array. Only supported on homogeneous arrays of numbers:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("sum")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 3")]),t._v("\n")])])]),a("h3",{attrs:{id:"tsv-separator-header"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#tsv-separator-header"}},[t._v("#")]),t._v(" tsv([separator[, header]])")]),t._v(" "),a("p",[t._v("Formats the array as a TSV (Tab-Separated Values):")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"LeBron"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Harden"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".tsv"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nLeBron\tJames\nJames\tHarden\n")])])]),a("p",[t._v("You can also specify the "),a("code",[t._v("separator")]),t._v(" to be used if you\nprefer not to use tabs:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"LeBron"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Harden"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".tsv"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('","')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nLeBron,James\nJames,Harden\n")])])]),a("p",[t._v("The input must be an array of arrays or hashes. If\nyou use hashes, their keys will be used as the first row of the TSV:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"name"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Lebron"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"last"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"jersey"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("23")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"name"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"last"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Harden"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".tsv"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\njersey\tlast\tname\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("23")]),t._v("\tJames\tLebron\nnull\tHarden\tJames\n")])])]),a("p",[t._v("The first row will, by default, be a combination of all keys present in the hashes,\nsorted alphabetically. If a key is missing in a hash, "),a("code",[t._v("null")]),t._v(" will be used as its value.")]),t._v(" "),a("p",[a("code",[t._v("header")]),t._v(" is an optional array of output keys, whose values are output in the specified order:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"name"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Lebron"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"last"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"jersey"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("23")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"name"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"last"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Harden"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".tsv"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\t"}},[t._v("\\t")]),t._v('"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"name"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"last"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"jersey"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"additional_key"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nname\tlast\tjersey\tadditional_key\nLebron\tJames\t"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("23")]),t._v("\tnull\nJames\tHarden\tnull\tnull\n\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"name"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Lebron"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"last"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"jersey"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("23")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"name"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"last"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Harden"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".tsv"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('","')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"last"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"jersey"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nlast,jersey\nJames,23\nHarden,null\n")])])]),a("h3",{attrs:{id:"union-array"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#union-array"}},[t._v("#")]),t._v(" union(array)")]),t._v(" "),a("p",[t._v("Computes the "),a("a",{attrs:{href:"https://en.wikipedia.org/wiki/Union_(set_theory)",target:"_blank",rel:"noopener noreferrer"}},[t._v("union"),a("OutboundLink")],1),t._v("\nbetween 2 arrays:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("union"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("union"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("union"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [3, 1]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("union"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4]")]),t._v("\n")])])]),a("h3",{attrs:{id:"unique"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#unique"}},[t._v("#")]),t._v(" unique()")]),t._v(" "),a("p",[t._v("Returns the array with duplicate values removed. The values need not be sorted:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("unique"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("unique"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [2, 1, 3]")]),t._v("\n")])])])])}),[],!1,null,null,null);s.default=e.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[33],{532:function(t,s,a){"use strict";a.r(s);var n=a(45),e=Object(n.a)({},(function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"array"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#array"}},[t._v("#")]),t._v(" Array")]),t._v(" "),a("p",[t._v("Arrays represent lists of elements\nof any type:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n")])])]),a("p",[t._v("They can be looped over:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[t._v("x")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("in")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),a("p",[t._v("You can access elements of the array with "),a("code",[t._v("[]")]),t._v(" index\nnotation:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("array"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n")])])]),a("p",[t._v("Accessing an array element that does not exist returns "),a("code",[t._v("null")]),t._v(".")]),t._v(" "),a("p",[t._v("You can also access the Nth last element of an array\nwith a negative index:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"b"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"c"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"d"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("-2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "c"')]),t._v("\n")])])]),a("p",[t._v("You can also access a range of indexes with the "),a("code",[t._v("[start:end]")]),t._v(" notation:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("array "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("6")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("7")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("8")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("9")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n\narray"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),t._v(":2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [0, 1, 2]")]),t._v("\n")])])]),a("p",[t._v("where "),a("code",[t._v("start")]),t._v(" is the starting position in the array, and "),a("code",[t._v("end")]),t._v(" is\nthe ending one. If "),a("code",[t._v("start")]),t._v(" is not specified, it is assumed to be 0,\nand if "),a("code",[t._v("end")]),t._v(" is omitted it is assumed to be the last index in the\narray:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("array"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v(":2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [0, 1, 2]")]),t._v("\narray"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("7")]),t._v(":"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [7, 8, 9]")]),t._v("\n")])])]),a("p",[t._v("If "),a("code",[t._v("end")]),t._v(" is negative, it will be converted to "),a("code",[t._v("length of array - (-end)")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("array"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v(":-3"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [0, 1, 2, 3, 4, 5, 6]")]),t._v("\n")])])]),a("p",[t._v('To concatenate arrays, "sum" them:')]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" + "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n")])])]),a("p",[t._v("This is also the suggested way to push a new element into\nan array:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\nx "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\nx "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n")])])]),a("p",[t._v("In a similar way, we can make a "),a("strong",[t._v("shallow")]),t._v(" copy of an array using the "),a("code",[t._v("+")]),t._v(" operator with an empty array. Be careful, the empty array must be on the left side of the "),a("code",[t._v("+")]),t._v(" operator.")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# shallow copy an array using the + operator with an empty array")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# note well that the empty array must be on the left side of the +")]),t._v("\nb "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" + a\nb "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# modify the shallow copy without changing the original")]),t._v("\nb"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\nb "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [99, 2, 3]")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n")])])]),a("p",[t._v("It is also possible to modify an existing array element using "),a("code",[t._v("array[index]")]),t._v(" assignment. This also works with compound operators such as "),a("code",[t._v("+=")]),t._v(" :")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4]")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# index assignment")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [99, 2, 3, 4]")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# compound assignment")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [100, 2, 3, 4]")]),t._v("\n")])])]),a("p",[t._v("An array can also be extended by using an index beyond the end of the existing array. Note that intervening array elements will be set to "),a("code",[t._v("null")]),t._v(". This means that they can be set to another value later:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4]")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# indexes beyond end of array expand the array")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4, 99]")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("6")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("66")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4, 99, null, 66]")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# assign to a null element")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("55")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4, 99, 55, 66]")]),t._v("\n")])])]),a("p",[t._v('An array is defined as "homogeneous" when all its elements\nare of a single type:')]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# homogeneous")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("null, "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('""')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# heterogeneous")]),t._v("\n")])])]),a("p",[t._v("This is important as some functions are only supported\non homogeneous arrays: "),a("code",[t._v("sum()")]),t._v(", for example, can only be\ncalled on homogeneous arrays of numbers.")]),t._v(" "),a("h2",{attrs:{id:"supported-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#supported-functions"}},[t._v("#")]),t._v(" Supported functions")]),t._v(" "),a("h3",{attrs:{id:"chunk-size"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#chunk-size"}},[t._v("#")]),t._v(" chunk(size)")]),t._v(" "),a("p",[t._v("Splits the array into chunks of the given "),a("code",[t._v("size")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("chunk"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [[1, 2], [3]]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("chunk"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [[1,2,3]]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("chunk"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1.2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# argument to chunk must be a positive integer, got '1.2'")]),t._v("\n")])])]),a("h3",{attrs:{id:"diff-array"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#diff-array"}},[t._v("#")]),t._v(" diff(array)")]),t._v(" "),a("p",[t._v("Computes the difference between 2 arrays,\nreturning elements that are only in the first array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("diff"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("diff"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("diff"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [2]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("diff"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# []")]),t._v("\n")])])]),a("p",[t._v("For symmetric difference see "),a("a",{attrs:{href:"#diff_symmetricarray"}},[t._v("diff_symmetric(...)")])]),t._v(" "),a("h3",{attrs:{id:"diff-symmetric-array"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#diff-symmetric-array"}},[t._v("#")]),t._v(" diff_symmetric(array)")]),t._v(" "),a("p",[t._v("Computes the "),a("a",{attrs:{href:"https://en.wikipedia.org/wiki/Symmetric_difference",target:"_blank",rel:"noopener noreferrer"}},[t._v("symmetric difference"),a("OutboundLink")],1),t._v("\nbetween 2 arrays, returning elements that are only in one of the arrays:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("diff_symmetric"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("diff_symmetric"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("diff_symmetric"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [2]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("diff_symmetric"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [4]")]),t._v("\n")])])]),a("h3",{attrs:{id:"every-f"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#every-f"}},[t._v("#")]),t._v(" every(f)")]),t._v(" "),a("p",[t._v("Returns true when all elements in the array\nreturn "),a("code",[t._v("true")]),t._v(" when applied to the function "),a("code",[t._v("f")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("every"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("type")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"NUMBER"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# true")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("every"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# false")]),t._v("\n")])])]),a("h3",{attrs:{id:"filter-f"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#filter-f"}},[t._v("#")]),t._v(" filter(f)")]),t._v(" "),a("p",[t._v("Returns a new array with only the elements that returned\n"),a("code",[t._v("true")]),t._v(" when applied to the function "),a("code",[t._v("f")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("filter")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("type")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"NUMBER"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [0, 1, 2]")]),t._v("\n")])])]),a("h3",{attrs:{id:"find-f"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#find-f"}},[t._v("#")]),t._v(" find(f)")]),t._v(" "),a("p",[t._v("Returns the first element that returns "),a("code",[t._v("true")]),t._v(" when applied to the function "),a("code",[t._v("f")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("find"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("type")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"NUMBER"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 0")]),t._v("\n")])])]),a("p",[t._v("A shorthand syntax supports passing a hash and comparing\nelements to the given hash:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("null"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"key"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"val"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"test"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("123")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("find"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"key"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"val"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# {"key": "val", "test": 123}')]),t._v("\n")])])]),a("h3",{attrs:{id:"flatten"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#flatten"}},[t._v("#")]),t._v(" flatten()")]),t._v(" "),a("p",[t._v('Concatenates the lowest "layer" of elements in a nested array:')]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("flatten"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("flatten"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("6")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("7")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("8")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("flatten"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [[1, 2], [3, 4], 5, 6, 7, 8]")]),t._v("\n")])])]),a("h3",{attrs:{id:"flatten-deep"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#flatten-deep"}},[t._v("#")]),t._v(" flatten_deep()")]),t._v(" "),a("p",[t._v("Recursively flattens an array until no element is an array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("flatten_deep"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("flatten_deep"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4]")]),t._v("\n")])])]),a("h3",{attrs:{id:"intersect-array"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#intersect-array"}},[t._v("#")]),t._v(" intersect(array)")]),t._v(" "),a("p",[t._v("Computes the intersection between 2 arrays:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("intersect"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# []")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("intersect"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [3]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("intersect"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 3]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("intersect"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n")])])]),a("h3",{attrs:{id:"join-separator"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#join-separator"}},[t._v("#")]),t._v(" join([separator])")]),t._v(" "),a("p",[t._v("Joins the elements of the array with the string "),a("code",[t._v("separator")]),t._v(' (default "", the empty string):')]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("join"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"_"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "1_2_3"')]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("join"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "123"')]),t._v("\n")])])]),a("h3",{attrs:{id:"keys"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#keys"}},[t._v("#")]),t._v(" keys()")]),t._v(" "),a("p",[t._v("Returns an array of the keys in the original array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1.")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v(".2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("keys"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [0, 1]")]),t._v("\n")])])]),a("h3",{attrs:{id:"len"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#len"}},[t._v("#")]),t._v(" len()")]),t._v(" "),a("p",[t._v("Returns the length of the array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("len")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 2")]),t._v("\n")])])]),a("h3",{attrs:{id:"map-f"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#map-f"}},[t._v("#")]),t._v(" map(f)")]),t._v(" "),a("p",[t._v("Modifies the array by applying the function "),a("code",[t._v("f")]),t._v(" to all its elements:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("map")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n")])])]),a("h3",{attrs:{id:"max"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#max"}},[t._v("#")]),t._v(" max()")]),t._v(" "),a("p",[t._v("Finds the highest number in an array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("max")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# NULL")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("-")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("max")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 100")]),t._v("\n")])])]),a("h3",{attrs:{id:"min"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#min"}},[t._v("#")]),t._v(" min()")]),t._v(" "),a("p",[t._v("Finds the lowest number in an array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("min")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# NULL")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("-")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("min")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# -10")]),t._v("\n")])])]),a("h3",{attrs:{id:"partition-f"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#partition-f"}},[t._v("#")]),t._v(" partition(f)")]),t._v(" "),a("p",[t._v("Partitions the array by applying "),a("code",[t._v("f(element)")]),t._v(" to all of its elements,\nthen grouping the elements into an array of arrays based on the results:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("f odd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" !!"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("n "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("%")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nf div2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("int")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("n "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("/")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("partition"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("odd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [[0, 2, 4], [1, 3, 5]]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("partition"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("div2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [[5, 4], [3, 2], [1, 0]]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"1"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"0"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("partition"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("str")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# [["1", 1], [{}], [0, "0"]]')]),t._v("\n")])])]),a("h3",{attrs:{id:"pop"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#pop"}},[t._v("#")]),t._v(" pop()")]),t._v(" "),a("p",[t._v("Removes and returns the last element from the array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("pop"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 3")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2]")]),t._v("\n")])])]),a("h3",{attrs:{id:"push-x"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#push-x"}},[t._v("#")]),t._v(" push(x)")]),t._v(" "),a("p",[t._v("Inserts "),a("code",[t._v("x")]),t._v(" at the end of the array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("push"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n")])])]),a("p",[t._v("This is equivalent to summing 2 arrays:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n")])])]),a("h3",{attrs:{id:"reduce-f-accumulator"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#reduce-f-accumulator"}},[t._v("#")]),t._v(" reduce(f, accumulator)")]),t._v(" "),a("p",[t._v("Reduces the array to a value by iterating through its elements and applying the two-argument function "),a("code",[t._v("f(value, element)")]),t._v(" to them, with "),a("code",[t._v("accumulator")]),t._v(" as the initial "),a("code",[t._v("value")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("reduce")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("value"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" element"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" value "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+")]),t._v(" element "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 10")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("reduce")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("value"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" element"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" value "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+")]),t._v(" element "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 20")]),t._v("\n")])])]),a("h3",{attrs:{id:"reverse"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#reverse"}},[t._v("#")]),t._v(" reverse()")]),t._v(" "),a("p",[t._v("Reverses the order of the elements in the array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("reverse"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [2, 1]")]),t._v("\n")])])]),a("h3",{attrs:{id:"shift"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#shift"}},[t._v("#")]),t._v(" shift()")]),t._v(" "),a("p",[t._v("Removes the first element from the array, and returns it:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("shift"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 1")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [2, 3]")]),t._v("\n")])])]),a("h3",{attrs:{id:"shuffle"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#shuffle"}},[t._v("#")]),t._v(" shuffle()")]),t._v(" "),a("p",[t._v("Shuffles elements in the array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("shuffle"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [3, 1, 2, 4]")]),t._v("\n")])])]),a("h3",{attrs:{id:"some-f"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#some-f"}},[t._v("#")]),t._v(" some(f)")]),t._v(" "),a("p",[t._v("Returns true when at least one of the elements in the array\nreturns "),a("code",[t._v("true")]),t._v(" when applied to the function "),a("code",[t._v("f")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("some"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# true")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("some"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# false")]),t._v("\n")])])]),a("h3",{attrs:{id:"sort"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#sort"}},[t._v("#")]),t._v(" sort()")]),t._v(" "),a("p",[t._v("Sorts the array. Only supported on homogeneous arrays of numbers\nor strings:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("sort"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"b"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"c"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("sort"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# ["a", "b", "c"]')]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("42")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hut"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("37")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("sort"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nERROR"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" argument to "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'sort'")]),t._v(" must be an homogeneous array "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("elements of the same "),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("type")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" got "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("42")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hut"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("37")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("16")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("42")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hut"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("37")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("sort"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),a("h3",{attrs:{id:"str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#str"}},[t._v("#")]),t._v(" str()")]),t._v(" "),a("p",[t._v("Returns the string representation of the array:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("str")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "[1, 2]"')]),t._v("\n")])])]),a("h3",{attrs:{id:"sum"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#sum"}},[t._v("#")]),t._v(" sum()")]),t._v(" "),a("p",[t._v("Sums the elements of the array. Only supported on homogeneous arrays of numbers:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("sum")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 3")]),t._v("\n")])])]),a("h3",{attrs:{id:"tsv-separator-header"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#tsv-separator-header"}},[t._v("#")]),t._v(" tsv([separator[, header]])")]),t._v(" "),a("p",[t._v("Formats the array as a TSV (Tab-Separated Values):")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"LeBron"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Harden"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".tsv"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nLeBron\tJames\nJames\tHarden\n")])])]),a("p",[t._v("You can also specify the "),a("code",[t._v("separator")]),t._v(" to be used if you\nprefer not to use tabs:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"LeBron"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Harden"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".tsv"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('","')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nLeBron,James\nJames,Harden\n")])])]),a("p",[t._v("The input must be an array of arrays or hashes. If\nyou use hashes, their keys will be used as the first row of the TSV:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"name"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Lebron"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"last"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"jersey"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("23")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"name"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"last"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Harden"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".tsv"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\njersey\tlast\tname\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("23")]),t._v("\tJames\tLebron\nnull\tHarden\tJames\n")])])]),a("p",[t._v("The first row will, by default, be a combination of all keys present in the hashes,\nsorted alphabetically. If a key is missing in a hash, "),a("code",[t._v("null")]),t._v(" will be used as its value.")]),t._v(" "),a("p",[a("code",[t._v("header")]),t._v(" is an optional array of output keys, whose values are output in the specified order:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"name"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Lebron"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"last"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"jersey"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("23")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"name"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"last"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Harden"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".tsv"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\t"}},[t._v("\\t")]),t._v('"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"name"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"last"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"jersey"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"additional_key"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nname\tlast\tjersey\tadditional_key\nLebron\tJames\t"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("23")]),t._v("\tnull\nJames\tHarden\tnull\tnull\n\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"name"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Lebron"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"last"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"jersey"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("23")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"name"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"James"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"last"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Harden"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".tsv"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('","')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"last"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"jersey"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nlast,jersey\nJames,23\nHarden,null\n")])])]),a("h3",{attrs:{id:"union-array"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#union-array"}},[t._v("#")]),t._v(" union(array)")]),t._v(" "),a("p",[t._v("Computes the "),a("a",{attrs:{href:"https://en.wikipedia.org/wiki/Union_(set_theory)",target:"_blank",rel:"noopener noreferrer"}},[t._v("union"),a("OutboundLink")],1),t._v("\nbetween 2 arrays:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("union"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("union"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("union"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [3, 1]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("union"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3, 4]")]),t._v("\n")])])]),a("h3",{attrs:{id:"unique"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#unique"}},[t._v("#")]),t._v(" unique()")]),t._v(" "),a("p",[t._v("Returns the array with duplicate values removed. The values need not be sorted:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("unique"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("unique"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [2, 1, 3]")]),t._v("\n")])])])])}),[],!1,null,null,null);s.default=e.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/34.1c8ddfde.js b/docs/src/.vuepress/dist/assets/js/34.1c8ddfde.js new file mode 100644 index 00000000..9d031589 --- /dev/null +++ b/docs/src/.vuepress/dist/assets/js/34.1c8ddfde.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[34],{533:function(t,s,a){"use strict";a.r(s);var e=a(45),n=Object(e.a)({},(function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"builtin-function"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#builtin-function"}},[t._v("#")]),t._v(" Builtin function")]),t._v(" "),a("p",[t._v("There are many builtin functions in ABS.\nTake "),a("code",[t._v("type")]),t._v(", for example:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("type"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# NUMBER")]),t._v("\ntype"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# ARRAY")]),t._v("\n")])])]),a("p",[t._v('We\'ll reveal to you a secret now: all string, array, number & hash functions\nare actually "generic", but the syntax you see makes you think those are\nspecific to the string, number, etc object.')]),t._v(" "),a("p",[t._v("The trick is very simple; whenever the ABS' interpreter finds a method call\nsuch as "),a("code",[t._v("object.func(arg)")]),t._v(" it will actually translate it to "),a("code",[t._v("func(object, arg)")]),t._v(".")]),t._v(" "),a("p",[t._v("Don't believe us? Try with these examples:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("map"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"1"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(", int"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1]")]),t._v("\nsort"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [1, 2, 3]")]),t._v("\nlen"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"abc"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 3")]),t._v("\n")])])]),a("p",[t._v("At the same time, there are some builtin functions that doesn't really\nmake sense to call with the method notation, so we've kept them in a\n\"special\" location in the documentation. "),a("code",[t._v("exit(99)")]),t._v(", for example, exits\nthe program with the status code "),a("code",[t._v("99")]),t._v(", but it would definitely look\nstrange to see something such as "),a("code",[t._v("99.exit()")]),t._v(".")]),t._v(" "),a("h2",{attrs:{id:"generic-builtin-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#generic-builtin-functions"}},[t._v("#")]),t._v(" Generic builtin functions")]),t._v(" "),a("h3",{attrs:{id:"arg-n"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#arg-n"}},[t._v("#")]),t._v(" arg(n)")]),t._v(" "),a("p",[t._v("Returns the "),a("code",[t._v("n")]),t._v("th argument to the current script:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("arg"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# /usr/bin/abs")]),t._v("\n")])])]),a("h3",{attrs:{id:"args"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#args"}},[t._v("#")]),t._v(" args()")]),t._v(" "),a("p",[t._v("Returns the list of arguments to the current script (including the current script itself)")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("$ abs --flag1 --flag2 arg1 arg2\nHello user, welcome to the ABS programming language"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\nType "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'quit'")]),t._v(" when you"),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'re done, '")]),t._v("help' "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" you get lost"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\n⧐ args"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"abs"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"--flag1"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"--flag2"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"arg1"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"arg2"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n⧐ args"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(".len"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),t._v("\n")])])]),a("h3",{attrs:{id:"cd-or-cd-path"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#cd-or-cd-path"}},[t._v("#")]),t._v(" cd() or cd(path)")]),t._v(" "),a("p",[t._v("Sets the current working directory to "),a("code",[t._v("homeDir")]),t._v(" or the given "),a("code",[t._v("path")]),t._v("\nin both Linux and Windows.")]),t._v(" "),a("p",[t._v("Note that the path may have a "),a("code",[t._v("'~/'")]),t._v(" prefix which will be replaced\nwith "),a("code",[t._v("'homeDir/'")]),t._v(". Also, in Windows, any "),a("code",[t._v("'/'")]),t._v(" path separator will be\nreplaced with "),a("code",[t._v("'\\'")]),t._v(" and path names are not case-sensitive.")]),t._v(" "),a("p",[t._v("Returns the "),a("code",[t._v("'/fully/expanded/path'")]),t._v(" to the new current working directory and "),a("code",[t._v("path.ok")]),t._v(".\nIf "),a("code",[t._v("path.ok")]),t._v(" is "),a("code",[t._v("false")]),t._v(", that means there was an error changing directory:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("path "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" cd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\npath.ok "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# true")]),t._v("\npath "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# /home/user or C:\\Users\\user")]),t._v("\n\nhere "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" pwd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\npath "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" cd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"/path/to/nowhere"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\npath.ok "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# false")]),t._v("\npath "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 'chdir /path/to/nowhere: no such file or directory'")]),t._v("\nhere "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" pwd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# true")]),t._v("\n\ncd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"~/git/abs"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# /home/user/git/abs or C:\\Users\\user\\git\\abs")]),t._v("\n\ncd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('".."')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# /home/user/git or C:\\Users\\user\\git")]),t._v("\n\ncd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"/usr/local/bin"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# /usr/local/bin")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("dirs")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" cd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("&&")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("ls")]),t._v(" /"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),t._v(".lines"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nlen"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("dirs"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# number of directories in homeDir")]),t._v("\n")])])]),a("h3",{attrs:{id:"echo-var"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#echo-var"}},[t._v("#")]),t._v(" echo(var)")]),t._v(" "),a("p",[t._v("Prints the given variable:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello world"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),a("p",[t._v("You can use use placeholders in your strings:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello %s"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"world"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),a("p",[t._v("To know more about how the placeholders work, please have a look at the documentation\nfor "),a("RouterLink",{attrs:{to:"/types/string/#fmt"}},[t._v("string.fmt()")])],1),t._v(" "),a("h3",{attrs:{id:"env-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#env-str"}},[t._v("#")]),t._v(" env(str)")]),t._v(" "),a("p",[t._v("Returns the "),a("code",[t._v("str")]),t._v(" environment variable:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("env"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"PATH"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "/go/bin:/usr/local/go/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"')]),t._v("\n")])])]),a("h3",{attrs:{id:"eval-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#eval-str"}},[t._v("#")]),t._v(" eval(str)")]),t._v(" "),a("p",[t._v("Evaluates the "),a("code",[t._v("str")]),t._v(" as ABS code:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("eval"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"1 + 1"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 2")]),t._v("\neval"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'object = {\"x\": 10}; object.x'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 10")]),t._v("\n")])])]),a("h3",{attrs:{id:"exit-code-message"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#exit-code-message"}},[t._v("#")]),t._v(" exit(code [, message])")]),t._v(" "),a("p",[t._v("Exits the script with status "),a("code",[t._v("code")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("exit"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),a("p",[t._v("You can specify a message that's going to be outputted right\nbefore exiting:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("⧐ exit"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("99")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Got problems..."')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nGot problems"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".\n")])])]),a("h3",{attrs:{id:"flag-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#flag-str"}},[t._v("#")]),t._v(" flag(str)")]),t._v(" "),a("p",[t._v("Returns the value of a command-line flag. Both the "),a("code",[t._v("--flag")]),t._v(" and "),a("code",[t._v("-flag")]),t._v("\nform are accepted, and you can specify values with "),a("code",[t._v("--flag=x")]),t._v("\nas well as "),a("code",[t._v("--flag x")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("$ abs --test --test2 "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(" --test3"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v(" --test4 -test5\nHello user, welcome to the ABS programming language"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\nType "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'quit'")]),t._v(" when you"),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'re done, '")]),t._v("help' "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" you get lost"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\n⧐ flag"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"test"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),t._v("\n⧐ flag"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"test2"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v("\n⧐ flag"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"test3"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v("\n⧐ flag"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"test4"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),t._v("\n⧐ flag"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"test5"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),t._v("\n⧐ flag"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"test6"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n⧐\n")])])]),a("p",[t._v("If a flag value is not set, it will default to "),a("code",[t._v("true")]),t._v(".\nThe value of a flag that does not exist is "),a("code",[t._v("NULL")]),t._v(".")]),t._v(" "),a("p",[t._v("In all other cases "),a("code",[t._v("flag(...)")]),t._v(" returns the literal string\nvalue of the flag:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("$ abs --number "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v("\nHello user, welcome to the ABS programming language"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\nType "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'quit'")]),t._v(" when you"),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'re done, '")]),t._v("help' "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" you get lost"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\n⧐ n "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" flag"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"number"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n⧐ n\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v("\n⧐ type"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nSTRING\n")])])]),a("h3",{attrs:{id:"pwd"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#pwd"}},[t._v("#")]),t._v(" pwd()")]),t._v(" "),a("p",[t._v("Returns the path to the current working directory -- equivalent\nto "),a("code",[t._v('env("PWD")')]),t._v(".")]),t._v(" "),a("p",[t._v("If executed from a script this will initially be the directory\ncontaining the script.")]),t._v(" "),a("p",[t._v("To change the working directory, see "),a("code",[t._v("cd()")]),t._v(".")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("pwd"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# /go/src/github.com/abs-lang/abs")]),t._v("\n")])])]),a("h3",{attrs:{id:"rand-max"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#rand-max"}},[t._v("#")]),t._v(" rand(max)")]),t._v(" "),a("p",[t._v("Returns a random integer number between 0 and "),a("code",[t._v("max")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("rand"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 7")]),t._v("\n")])])]),a("h3",{attrs:{id:"require-path-to-file-abs"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#require-path-to-file-abs"}},[t._v("#")]),t._v(" require(path_to_file.abs)")]),t._v(" "),a("p",[t._v("Evaluates the script at "),a("code",[t._v("path_to_file.abs")]),t._v(", and makes\nits return value available to the caller.")]),t._v(" "),a("p",[t._v("For example, suppose we have a "),a("code",[t._v("module.abs")]),t._v(" file:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("adder "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("a, b"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" a + b "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\nmultiplier "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("a, b"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" a * b "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"adder"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" adder, "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"multiplier"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v(":")]),t._v(" multiplier"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),a("p",[t._v("and a "),a("code",[t._v("main.abs")]),t._v(" such as:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("mod "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" require"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"module.abs"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mod.adder"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("))")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 3")]),t._v("\n")])])]),a("p",[t._v("This is mostly useful to create external library\nfunctions, like NPM modules or PIP packages, that\ndo not have access to the global environment. Any\nvariable set outside of the module will not be\navailable inside it, and vice-versa. The only\nvariable available to the caller (the script requiring\nthe module) is the module's return value.")]),t._v(" "),a("p",[t._v("Note that "),a("code",[t._v("require")]),t._v(" uses paths that are relative to\nthe current script. Say that you have 2 files ("),a("code",[t._v("a.abs")]),t._v(" and "),a("code",[t._v("b.abs")]),t._v(")\nin the "),a("code",[t._v("/tmp")]),t._v(" folder, "),a("code",[t._v("a.abs")]),t._v(" can "),a("code",[t._v('require("./b.abs")')]),t._v("\nwithout having to specify the full path (eg. "),a("code",[t._v('require("/tmp/b.abs")')]),t._v(").")]),t._v(" "),a("h3",{attrs:{id:"sleep-ms"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#sleep-ms"}},[t._v("#")]),t._v(" sleep(ms)")]),t._v(" "),a("p",[t._v("Halts the process for as many "),a("code",[t._v("ms")]),t._v(" you specified:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("sleep"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1000")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# sleeps for 1 second")]),t._v("\n")])])]),a("h3",{attrs:{id:"source-path-to-file-abs"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#source-path-to-file-abs"}},[t._v("#")]),t._v(" source(path_to_file.abs)")]),t._v(" "),a("p",[t._v("Evaluates the script at "),a("code",[t._v("path_to_file.abs")]),t._v(" in the context of the\nABS global environment. The results of any expressions in the file\nbecome available to other commands in the REPL command line or to other\nscripts in the current script execution chain.")]),t._v(" "),a("p",[t._v("This is very similar to "),a("code",[t._v("require")]),t._v(", but allows the module to access\nand edit the global environment. Any variable set inside the module\nwill also be available outside of it.")]),t._v(" "),a("p",[t._v("This is most useful for creating library functions in a startup script,\nor variables that can be used by many other scripts. Often these library functions\nare loaded via the ABS Init File "),a("code",[t._v("~/.absrc")]),t._v(" (see "),a("a",{attrs:{href:"/introduction/how-to-run-abs-code"}},[t._v("ABS Init File")]),t._v(").")]),t._v(" "),a("p",[t._v("For example:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("$ "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("cat")]),t._v(" ~/abs/lib/library.abs\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Useful function library ~/abs/lib/library.abs")]),t._v("\nadder "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("n, i"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" n + i "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n$ "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("cat")]),t._v(" ~/.absrc\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# ABS init file ~/.absrc")]),t._v("\nsource"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"~/abs/lib/library.abs"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n$ abs\nHello user, welcome to the ABS programming language"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\nType "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'quit'")]),t._v(" when you are done, "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("'help'")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" you get lost"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\n⧐ adder"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),t._v("\n⧐\n")])])]),a("p",[t._v("In addition to source file inclusion in scripts, you can also use\n"),a("code",[t._v("source()")]),t._v(" in the interactive REPL to load a script being\ndebugged. When the loaded script completes, the REPL command line\nwill have access to all variables and functions evaluated in the\nscript.")]),t._v(" "),a("p",[t._v("For example:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("⧐ source"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"~/git/abs/tests/test-strings.abs"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">>")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" Testing "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("split")]),t._v(" and "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("join")]),t._v(" strings with expanded LFs:\ns "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('c"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v('"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("s"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("a, b, c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".\n⧐ s\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v("a, b, c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n⧐\n")])])]),a("p",[t._v("Note well that nested source files must not create a circular\ninclusion condition. You can configure the intended source file\ninclusion depth using the "),a("code",[t._v("ABS_SOURCE_DEPTH")]),t._v(" OS or ABS environment\nvariables. The default is "),a("code",[t._v("ABS_SOURCE_DEPTH=10")]),t._v(". This will prevent\na panic in the ABS interpreter if there is an unintended circular\nsource inclusion.")]),t._v(" "),a("p",[t._v("For example an ABS Init File may contain:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("ABS_SOURCE_DEPTH "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("15")]),t._v("\nsource"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"~/path/to/abs/lib"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),a("p",[t._v("This will limit the source inclusion depth to 15 levels for this\n"),a("code",[t._v("source()")]),t._v(" statement and will also apply to future "),a("code",[t._v("source()")]),t._v("\nstatements until changed.")]),t._v(" "),a("h3",{attrs:{id:"stdin"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#stdin"}},[t._v("#")]),t._v(" stdin()")]),t._v(" "),a("p",[t._v("Reads from the "),a("code",[t._v("stdin")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"What do you like?"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Oh, you like %s!"')]),t._v(", stdin"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("))")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# This line will block until user enters some text")]),t._v("\n")])])]),a("p",[t._v("Worth to note that you can read\nthe "),a("code",[t._v("stdin")]),t._v(" indefinitely with:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Will read all input to the")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# stdin and output it back")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[t._v("input")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("in")]),t._v(" stdin "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("input"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Or from the REPL:")]),t._v("\n\n⧐ "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[t._v("input")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("in")]),t._v(" stdin "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("((")]),t._v("input.int"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" / "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(".str"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" + "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"...try again:"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".try again:\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("5")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2.5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".try again:\n\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".\n")])])]),a("h3",{attrs:{id:"type-var"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#type-var"}},[t._v("#")]),t._v(" type(var)")]),t._v(" "),a("p",[t._v("Returns the type if the given variable:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("type"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('""')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "STRING"')]),t._v("\ntype"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "HASH"')]),t._v("\n")])])]),a("h3",{attrs:{id:"unix-ms"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#unix-ms"}},[t._v("#")]),t._v(" unix_ms()")]),t._v(" "),a("p",[t._v("Returns the current unix epoch time, in milliseconds:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("unix_ms"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 1594049453157")]),t._v("\n")])])])])}),[],!1,null,null,null);s.default=n.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/34.25bd9c03.js b/docs/src/.vuepress/dist/assets/js/35.b6d66435.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/34.25bd9c03.js rename to docs/src/.vuepress/dist/assets/js/35.b6d66435.js index ae23dac0..9aefe516 100644 --- a/docs/src/.vuepress/dist/assets/js/34.25bd9c03.js +++ b/docs/src/.vuepress/dist/assets/js/35.b6d66435.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[34],{533:function(t,n,a){"use strict";a.r(n);var s=a(45),e=Object(s.a)({},(function(){var t=this,n=t.$createElement,a=t._self._c||n;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"decorator"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#decorator"}},[t._v("#")]),t._v(" Decorator")]),t._v(" "),a("p",[t._v("Decorators are a feature built on top of\nABS' functions -- they're not a type "),a("em",[t._v("per se")]),t._v("\nbut they do have their own "),a("em",[t._v("syntactic sugar")]),t._v(".")]),t._v(" "),a("p",[t._v("A decorator is a function that \"wraps\" another\nfunction, allowing you to enhance the original\nfunction's functionality with the decorator's\none.")]),t._v(" "),a("p",[t._v("An example could be a decorator that logs how\nlong a function takes to execute, or delays\nexecution altogether.")]),t._v(" "),a("h2",{attrs:{id:"simple-decorators"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#simple-decorators"}},[t._v("#")]),t._v(" Simple decorators")]),t._v(" "),a("p",[t._v('A decorator is a plain-old function that\naccepts the original function and returns a new\nfunction that wraps the original one with its\nown behaviour. After defining it, you can\n"decorate" other functions through the convenient\n'),a("code",[t._v("@")]),t._v(" syntax:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("f uppercase"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("fn"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" fn"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("upper"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token decorator annotation punctuation"}},[t._v("@uppercase")]),t._v("\nf stringer"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("str")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\nstringer"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "{}"')]),t._v("\nstringer"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("12")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "12"')]),t._v("\nstringer"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "HELLO"')]),t._v("\n")])])]),a("p",[t._v("As you see, "),a("code",[t._v("stringer")]),t._v("'s behaviour has been altered:\nit will now output uppercase strings.")]),t._v(" "),a("h2",{attrs:{id:"decorators-with-arguments"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#decorators-with-arguments"}},[t._v("#")]),t._v(" Decorators with arguments")]),t._v(" "),a("p",[t._v('As we\'ve just seen, a decorator simply needs to\nbe a function that accepts the original\nfunction and returns a new one, "enhancing"\nthe original behavior. If you wish to\nconfigure decorators with arguments, it\nis as simple as adding another level\nof "wrapping":')]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("f log_if_slow"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("treshold_ms"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("original_fn"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n start "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" `date "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("%")]),t._v("s"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("%")]),t._v("3N`"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("int")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n res "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" original_fn"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n end "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" `date "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("%")]),t._v("s"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("%")]),t._v("3N`"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("int")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" end "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("-")]),t._v(" start "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" treshold_ms "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"mmm, we were pretty slow..."')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" res\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),a("p",[t._v("That's as simple as that: a named function\nthat returns a new function that executes the\ndecorated one ("),a("code",[t._v("original_fn")]),t._v(") and returns its\nresult, while logging if it takes longer than\na few milliseconds.")]),t._v(" "),a("p",[t._v("Now that we've declared our decorator, it's time\nto use it, through the "),a("code",[t._v("@")]),t._v(" notation:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token decorator annotation punctuation"}},[t._v("@log_if_slow")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("500")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf return_random_number_after_sleeping"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("seconds"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n `sleep $seconds`\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" rand"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1000")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),a("p",[t._v("and we can test our decorator has taken the stage:")]),t._v(" "),a("div",{staticClass:"language-console extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v("⧐ return_random_number_after_sleeping(0)\n493\n⧐ return_random_number_after_sleeping(1)\nmmm, we were pretty slow...\n371\n")])])]),a("p",[t._v("Decorators are heavily inspired by "),a("a",{attrs:{href:"https://www.python.org/dev/peps/pep-0318/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Python"),a("OutboundLink")],1),t._v(" -- if you wish to understand\nhow they work more in depth we'd recommend reading this "),a("a",{attrs:{href:"https://realpython.com/primer-on-python-decorators",target:"_blank",rel:"noopener noreferrer"}},[t._v("primer on Python decorators"),a("OutboundLink")],1),t._v(".")])])}),[],!1,null,null,null);n.default=e.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[35],{534:function(t,n,a){"use strict";a.r(n);var s=a(45),e=Object(s.a)({},(function(){var t=this,n=t.$createElement,a=t._self._c||n;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"decorator"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#decorator"}},[t._v("#")]),t._v(" Decorator")]),t._v(" "),a("p",[t._v("Decorators are a feature built on top of\nABS' functions -- they're not a type "),a("em",[t._v("per se")]),t._v("\nbut they do have their own "),a("em",[t._v("syntactic sugar")]),t._v(".")]),t._v(" "),a("p",[t._v("A decorator is a function that \"wraps\" another\nfunction, allowing you to enhance the original\nfunction's functionality with the decorator's\none.")]),t._v(" "),a("p",[t._v("An example could be a decorator that logs how\nlong a function takes to execute, or delays\nexecution altogether.")]),t._v(" "),a("h2",{attrs:{id:"simple-decorators"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#simple-decorators"}},[t._v("#")]),t._v(" Simple decorators")]),t._v(" "),a("p",[t._v('A decorator is a plain-old function that\naccepts the original function and returns a new\nfunction that wraps the original one with its\nown behaviour. After defining it, you can\n"decorate" other functions through the convenient\n'),a("code",[t._v("@")]),t._v(" syntax:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("f uppercase"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("fn"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" fn"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("upper"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token decorator annotation punctuation"}},[t._v("@uppercase")]),t._v("\nf stringer"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("str")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\nstringer"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "{}"')]),t._v("\nstringer"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("12")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "12"')]),t._v("\nstringer"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "HELLO"')]),t._v("\n")])])]),a("p",[t._v("As you see, "),a("code",[t._v("stringer")]),t._v("'s behaviour has been altered:\nit will now output uppercase strings.")]),t._v(" "),a("h2",{attrs:{id:"decorators-with-arguments"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#decorators-with-arguments"}},[t._v("#")]),t._v(" Decorators with arguments")]),t._v(" "),a("p",[t._v('As we\'ve just seen, a decorator simply needs to\nbe a function that accepts the original\nfunction and returns a new one, "enhancing"\nthe original behavior. If you wish to\nconfigure decorators with arguments, it\nis as simple as adding another level\nof "wrapping":')]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("f log_if_slow"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("treshold_ms"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("original_fn"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n start "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" `date "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("%")]),t._v("s"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("%")]),t._v("3N`"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("int")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n res "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" original_fn"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n end "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" `date "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("%")]),t._v("s"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("%")]),t._v("3N`"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("int")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" end "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("-")]),t._v(" start "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" treshold_ms "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"mmm, we were pretty slow..."')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" res\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),a("p",[t._v("That's as simple as that: a named function\nthat returns a new function that executes the\ndecorated one ("),a("code",[t._v("original_fn")]),t._v(") and returns its\nresult, while logging if it takes longer than\na few milliseconds.")]),t._v(" "),a("p",[t._v("Now that we've declared our decorator, it's time\nto use it, through the "),a("code",[t._v("@")]),t._v(" notation:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[a("span",{pre:!0,attrs:{class:"token decorator annotation punctuation"}},[t._v("@log_if_slow")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("500")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nf return_random_number_after_sleeping"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("seconds"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n `sleep $seconds`\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" rand"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1000")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),a("p",[t._v("and we can test our decorator has taken the stage:")]),t._v(" "),a("div",{staticClass:"language-console extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v("⧐ return_random_number_after_sleeping(0)\n493\n⧐ return_random_number_after_sleeping(1)\nmmm, we were pretty slow...\n371\n")])])]),a("p",[t._v("Decorators are heavily inspired by "),a("a",{attrs:{href:"https://www.python.org/dev/peps/pep-0318/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Python"),a("OutboundLink")],1),t._v(" -- if you wish to understand\nhow they work more in depth we'd recommend reading this "),a("a",{attrs:{href:"https://realpython.com/primer-on-python-decorators",target:"_blank",rel:"noopener noreferrer"}},[t._v("primer on Python decorators"),a("OutboundLink")],1),t._v(".")])])}),[],!1,null,null,null);n.default=e.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/35.ad55ea84.js b/docs/src/.vuepress/dist/assets/js/36.1c5d25fb.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/35.ad55ea84.js rename to docs/src/.vuepress/dist/assets/js/36.1c5d25fb.js index 09fe65d1..6a1d78e9 100644 --- a/docs/src/.vuepress/dist/assets/js/35.ad55ea84.js +++ b/docs/src/.vuepress/dist/assets/js/36.1c5d25fb.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[35],{534:function(t,s,a){"use strict";a.r(s);var n=a(45),e=Object(n.a)({},(function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"function"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#function"}},[t._v("#")]),t._v(" Function")]),t._v(" "),a("p",[t._v("Functions are a very important element of ABS,\nas they are the core of userland customizations.")]),t._v(" "),a("p",[t._v("A function is declared with the following syntax:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x, y"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n x + y\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),a("p",[t._v("As you might notice, the return statement is implicit.\nYou can make it explicit, but we advise not to, in order\nto keep your code as concise as possible:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x, y"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" x + y\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),a("p",[t._v('Most languages use a more "explicit" identifier for\nfunctions (such as '),a("code",[t._v("function")]),t._v(" or "),a("code",[t._v("func")]),t._v("), but ABS\nfavors "),a("code",[t._v("f")]),t._v(" for 2 main reasons:")]),t._v(" "),a("ul",[a("li",[t._v("brevity")]),t._v(" "),a("li",[t._v("resembles the standard mathematical notation everyone is used to ("),a("em",[t._v("x ↦ f(x)")]),t._v(")")])]),t._v(" "),a("p",[t._v("Functions can be passed as arguments to other functions:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".map"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [2, 3, 4]")]),t._v("\n")])])]),a("p",[t._v("and they can be assigned to variables as well:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("func "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".map"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("func"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [2, 3, 4]")]),t._v("\n")])])]),a("p",[t._v("Scoping is an important topic to cover when dealing with\nfunctions:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v("\nfunc "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" x + a "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\nf"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 11")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("20")]),t._v("\nf"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 21")]),t._v("\n")])])]),a("p",[t._v("ABS supports closures just like mainstream languages:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("func "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("y"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n x + "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# can also be expressed as")]),t._v("\n\nfunc "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("y"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),a("h2",{attrs:{id:"named-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#named-functions"}},[t._v("#")]),t._v(" Named functions")]),t._v(" "),a("p",[t._v("You can create named functions by specifying an identifier\nafter the "),a("code",[t._v("f")]),t._v(" keyword:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("f greet"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Hello '),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$name")]),t._v('!"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\ngreet"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("whoami")]),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "Hello root!"')]),t._v("\n")])])]),a("p",[t._v("As an alternative, you can manually assign\na function declaration to a variable, though\nthis is not the recommended approach:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("greet "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Hello '),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$name")]),t._v('!"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\ngreet"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("whoami")]),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "Hello root!"')]),t._v("\n")])])]),a("p",[t._v("Named functions are the basis of "),a("a",{attrs:{href:"/types/decorator"}},[t._v("decorators")]),t._v(".")]),t._v(" "),a("h2",{attrs:{id:"optional-parameters"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#optional-parameters"}},[t._v("#")]),t._v(" Optional parameters")]),t._v(" "),a("p",[t._v("Functions must be called with the right number of arguments:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("f greet"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("name, greeting"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"'),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$greeting")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$name")]),t._v('!"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\ngreet"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"user"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# ERROR: argument greeting to function f greet(name, greeting) {echo($greeting $name!)} is missing, and doesn't have a default value")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# \t[1:1]\tgreet("user")')]),t._v("\n")])])]),a("p",[t._v("but note that you could make a parameter optional by specifying its\ndefault value:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("f greet"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("name, greeting "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"'),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$greeting")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$name")]),t._v('!"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\ngreet"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"user"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# hello user!")]),t._v("\ngreet"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"user"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hola"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# hola user!")]),t._v("\n")])])]),a("p",[t._v("A default value can be any expression (doesn't have to be a literal):")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("f test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 1")]),t._v("\nf test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"test"')]),t._v(".split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('""')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("))")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# ["t", "e", "s", "t"]')]),t._v("\nf test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# {}")]),t._v("\ny "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" f test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" y"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 100")]),t._v("\nx "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" f test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 100")]),t._v("\nx "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" f test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 1")]),t._v("\n")])])]),a("p",[t._v("Note that mandatory arguments always need to be declared\nbefore optional ones:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" null, y"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# parser errors:")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# \tfound mandatory parameter after optional one")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# \t[1:13]\tf(x = null, y){}")]),t._v("\n")])])]),a("h2",{attrs:{id:"accessing-function-arguments"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#accessing-function-arguments"}},[t._v("#")]),t._v(" Accessing function arguments")]),t._v(" "),a("p",[t._v('Functions can receive a dynamic number of arguments,\nand arguments can be "packed" through the special\n'),a("code",[t._v("...")]),t._v(" variable:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("f sum_numbers"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n s "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" x "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("in")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n s "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" x\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" s\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\nsum_numbers"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 1")]),t._v("\nsum_numbers"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 6")]),t._v("\n")])])]),a("p",[a("code",[t._v("...")]),t._v(" is a special variable that acts\nlike an array, so you can loop and slice\nit however you want:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("f first_arg"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("len")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"No first arg"')]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\nfirst_arg"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "No first arg"')]),t._v("\nfirst_arg"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 1")]),t._v("\n")])])]),a("p",[t._v("When you pass "),a("code",[t._v("...")]),t._v(" directly to a function,\nit will be unpacked:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("f echo_wrapper"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\necho_wrapper"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello %s"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"root"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "hello root"')]),t._v("\n")])])]),a("p",[t._v("and you can add additional arguments as well:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("f echo_wrapper"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"root"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\necho_wrapper"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello %s %s"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"sir"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "hello sir root"')]),t._v("\n")])])]),a("h2",{attrs:{id:"supported-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#supported-functions"}},[t._v("#")]),t._v(" Supported functions")]),t._v(" "),a("h3",{attrs:{id:"call-args"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#call-args"}},[t._v("#")]),t._v(" call(args)")]),t._v(" "),a("p",[t._v("Calls a function with the given arguments:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("doubler "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" x * "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\ndoubler.call"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 20")]),t._v("\n")])])]),a("h3",{attrs:{id:"str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#str"}},[t._v("#")]),t._v(" str()")]),t._v(" "),a("p",[t._v("Returns the string representation of the function:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(".str"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# f(x) {")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("#")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# }")]),t._v("\n")])])])])}),[],!1,null,null,null);s.default=e.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[36],{535:function(t,s,a){"use strict";a.r(s);var n=a(45),e=Object(n.a)({},(function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"function"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#function"}},[t._v("#")]),t._v(" Function")]),t._v(" "),a("p",[t._v("Functions are a very important element of ABS,\nas they are the core of userland customizations.")]),t._v(" "),a("p",[t._v("A function is declared with the following syntax:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x, y"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n x + y\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),a("p",[t._v("As you might notice, the return statement is implicit.\nYou can make it explicit, but we advise not to, in order\nto keep your code as concise as possible:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x, y"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" x + y\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),a("p",[t._v('Most languages use a more "explicit" identifier for\nfunctions (such as '),a("code",[t._v("function")]),t._v(" or "),a("code",[t._v("func")]),t._v("), but ABS\nfavors "),a("code",[t._v("f")]),t._v(" for 2 main reasons:")]),t._v(" "),a("ul",[a("li",[t._v("brevity")]),t._v(" "),a("li",[t._v("resembles the standard mathematical notation everyone is used to ("),a("em",[t._v("x ↦ f(x)")]),t._v(")")])]),t._v(" "),a("p",[t._v("Functions can be passed as arguments to other functions:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".map"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [2, 3, 4]")]),t._v("\n")])])]),a("p",[t._v("and they can be assigned to variables as well:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("func "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".map"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("func"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# [2, 3, 4]")]),t._v("\n")])])]),a("p",[t._v("Scoping is an important topic to cover when dealing with\nfunctions:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("a "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),t._v("\nfunc "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" x + a "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\nf"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 11")]),t._v("\na "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("20")]),t._v("\nf"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 21")]),t._v("\n")])])]),a("p",[t._v("ABS supports closures just like mainstream languages:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("func "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("y"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n x + "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# can also be expressed as")]),t._v("\n\nfunc "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("y"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("return")]),t._v(" x + "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),a("h2",{attrs:{id:"named-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#named-functions"}},[t._v("#")]),t._v(" Named functions")]),t._v(" "),a("p",[t._v("You can create named functions by specifying an identifier\nafter the "),a("code",[t._v("f")]),t._v(" keyword:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("f greet"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Hello '),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$name")]),t._v('!"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\ngreet"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("whoami")]),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "Hello root!"')]),t._v("\n")])])]),a("p",[t._v("As an alternative, you can manually assign\na function declaration to a variable, though\nthis is not the recommended approach:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("greet "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Hello '),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$name")]),t._v('!"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\ngreet"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("whoami")]),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "Hello root!"')]),t._v("\n")])])]),a("p",[t._v("Named functions are the basis of "),a("a",{attrs:{href:"/types/decorator"}},[t._v("decorators")]),t._v(".")]),t._v(" "),a("h2",{attrs:{id:"optional-parameters"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#optional-parameters"}},[t._v("#")]),t._v(" Optional parameters")]),t._v(" "),a("p",[t._v("Functions must be called with the right number of arguments:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("f greet"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("name, greeting"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"'),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$greeting")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$name")]),t._v('!"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\ngreet"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"user"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# ERROR: argument greeting to function f greet(name, greeting) {echo($greeting $name!)} is missing, and doesn't have a default value")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# \t[1:1]\tgreet("user")')]),t._v("\n")])])]),a("p",[t._v("but note that you could make a parameter optional by specifying its\ndefault value:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("f greet"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("name, greeting "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"'),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$greeting")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$name")]),t._v('!"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\ngreet"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"user"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# hello user!")]),t._v("\ngreet"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"user"')]),t._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hola"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# hola user!")]),t._v("\n")])])]),a("p",[t._v("A default value can be any expression (doesn't have to be a literal):")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("f test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 1")]),t._v("\nf test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"test"')]),t._v(".split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('""')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("))")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# ["t", "e", "s", "t"]')]),t._v("\nf test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# {}")]),t._v("\ny "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" f test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" y"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 100")]),t._v("\nx "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" f test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 100")]),t._v("\nx "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" f test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" test"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 1")]),t._v("\n")])])]),a("p",[t._v("Note that mandatory arguments always need to be declared\nbefore optional ones:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" null, y"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# parser errors:")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# \tfound mandatory parameter after optional one")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# \t[1:13]\tf(x = null, y){}")]),t._v("\n")])])]),a("h2",{attrs:{id:"accessing-function-arguments"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#accessing-function-arguments"}},[t._v("#")]),t._v(" Accessing function arguments")]),t._v(" "),a("p",[t._v('Functions can receive a dynamic number of arguments,\nand arguments can be "packed" through the special\n'),a("code",[t._v("...")]),t._v(" variable:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("f sum_numbers"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n s "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" x "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("in")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n s "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("+=")]),t._v(" x\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" s\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\nsum_numbers"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 1")]),t._v("\nsum_numbers"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 6")]),t._v("\n")])])]),a("p",[a("code",[t._v("...")]),t._v(" is a special variable that acts\nlike an array, so you can loop and slice\nit however you want:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("f first_arg"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token builtin"}},[t._v("len")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"No first arg"')]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\nfirst_arg"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "No first arg"')]),t._v("\nfirst_arg"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 1")]),t._v("\n")])])]),a("p",[t._v("When you pass "),a("code",[t._v("...")]),t._v(" directly to a function,\nit will be unpacked:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("f echo_wrapper"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\necho_wrapper"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello %s"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"root"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "hello root"')]),t._v("\n")])])]),a("p",[t._v("and you can add additional arguments as well:")]),t._v(" "),a("div",{staticClass:"language-py extra-class"},[a("pre",{pre:!0,attrs:{class:"language-py"}},[a("code",[t._v("f echo_wrapper"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"root"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\necho_wrapper"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"hello %s %s"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"sir"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# "hello sir root"')]),t._v("\n")])])]),a("h2",{attrs:{id:"supported-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#supported-functions"}},[t._v("#")]),t._v(" Supported functions")]),t._v(" "),a("h3",{attrs:{id:"call-args"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#call-args"}},[t._v("#")]),t._v(" call(args)")]),t._v(" "),a("p",[t._v("Calls a function with the given arguments:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("doubler "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" x * "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\ndoubler.call"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("10")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 20")]),t._v("\n")])])]),a("h3",{attrs:{id:"str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#str"}},[t._v("#")]),t._v(" str()")]),t._v(" "),a("p",[t._v("Returns the string representation of the function:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(".str"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# f(x) {")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("#")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# }")]),t._v("\n")])])])])}),[],!1,null,null,null);s.default=e.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/36.70888b6c.js b/docs/src/.vuepress/dist/assets/js/37.e2bc0515.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/36.70888b6c.js rename to docs/src/.vuepress/dist/assets/js/37.e2bc0515.js index 5739785c..e7f7d83e 100644 --- a/docs/src/.vuepress/dist/assets/js/36.70888b6c.js +++ b/docs/src/.vuepress/dist/assets/js/37.e2bc0515.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[36],{535:function(s,t,a){"use strict";a.r(t);var n=a(45),e=Object(n.a)({},(function(){var s=this,t=s.$createElement,a=s._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[a("h1",{attrs:{id:"hash"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#hash"}},[s._v("#")]),s._v(" Hash")]),s._v(" "),a("p",[s._v("Hashes represent a list of key-value pairs that can conveniently be accessed with "),a("code",[s._v("O(1)")]),s._v(" cost.\nThink of JavaScript's objects or Python's dictionaries:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"key"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"val"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh.key "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "val"')]),s._v("\nh"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"key"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "val"')]),s._v("\n")])])]),a("p",[s._v("Note that the "),a("code",[s._v("hash.key")]),s._v(" hash property form is the preferred one, as it's more concise and mimics other programming languages.")]),s._v(" "),a("p",[s._v("Hash keys must be strings, but hash values can be of any type. Accessing a key that does not exist returns "),a("code",[s._v("null")]),s._v(".")]),s._v(" "),a("p",[s._v("An individual hash element may be assigned to via its "),a("code",[s._v('hash["key"]')]),s._v("\nindex or its property "),a("code",[s._v("hash.key")]),s._v(". This includes compound operators\nsuch as "),a("code",[s._v("+=")]),s._v(". Note that a new key may be created as well using "),a("code",[s._v('hash["newkey"]')]),s._v(" or "),a("code",[s._v("hash.newkey")]),s._v(":")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: 3}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# index assignment")]),s._v("\nh"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("99")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 99, b: 2, c: 3}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# property assignment")]),s._v("\nh.a "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 99")]),s._v("\nh.a "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("88")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 88, b: 2, c: 3}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# compound operator assignment to property")]),s._v("\nh.a "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("+=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v("\nh.a "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 89")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 88, b: 2, c: 3}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# create new keys via index or property")]),s._v("\nh"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\nh.y "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("20")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 88, b: 2, c: 3, x: 10, y: 20}")]),s._v("\n")])])]),a("p",[s._v("It is also possible to extend a hash using the "),a("code",[s._v("+=")]),s._v(" operator\nwith another hash. Note that any existing keys on the left side\nwill be replaced with the same key from the right side:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: 3}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# extending a hash by += compound operator")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("+=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("33")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"d"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("4")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"e"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: 33, d: 4, e: 5}")]),s._v("\n")])])]),a("p",[s._v("In a similar way, we can make a "),a("strong",[s._v("shallow")]),s._v(" copy of a hash using\nthe "),a("code",[s._v("+")]),s._v(" operator with an empty hash. Be careful, the empty hash\nmust be on the left side of the "),a("code",[s._v("+")]),s._v(" operator:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("a "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: 3}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# shallow copy a hash using the + operator with an empty hash")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# note well that the empty hash must be on the left side of the +")]),s._v("\nb "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" + a\nb "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: 3}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# modify the shallow copy without changing the original")]),s._v("\nb.a "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("99")]),s._v("\nb "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 99, b: 2, c: 3}")]),s._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: 3}")]),s._v("\n")])])]),a("p",[s._v("If the left side is a "),a("code",[s._v('hash["key"]')]),s._v(" or "),a("code",[s._v("hash.key")]),s._v(" and the\nright side is a hash, then the resulting hash will have a\nnew nested hash at "),a("code",[s._v("hash.newkey")]),s._v(". This includes "),a("code",[s._v('hash["newkey"]')]),s._v("\nor "),a("code",[s._v("hash.newKey")]),s._v(" as well:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: 3}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# nested hash assigned to hash.key")]),s._v("\nh.c "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"y"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: {x: 10, y: 20}}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# nested hash assigned to hash.newkey")]),s._v("\nh.z "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xx"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"yy"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("21")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: {x: 10, y: 20}, z: {xx: 11, yy: 21}}")]),s._v("\n")])])]),a("p",[s._v("Nested hashes can be accessed by chaining keys, though it's best to use "),a("code",[s._v("?.")]),s._v(' to "drill down" through keys that may not exist:')]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"y"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"z"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xx"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"yy"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("21")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh.c.y "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 20")]),s._v("\nh"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(".x "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10")]),s._v("\nh.z"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"yy"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("#21")]),s._v("\nh.z.zz "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# null")]),s._v("\n\nh.x.pp\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: invalid property 'pp' on type NULL")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# \t[1:4]\th.x.pp")]),s._v("\n\nh.x?.pp "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# null")]),s._v("\n")])])]),a("h2",{attrs:{id:"supported-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#supported-functions"}},[s._v("#")]),s._v(" Supported functions")]),s._v(" "),a("h3",{attrs:{id:"items"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#items"}},[s._v("#")]),s._v(" items()")]),s._v(" "),a("p",[s._v("Returns an array of [key, value] tuples for each item in the hash. Only the first-level items in a nested hash are returned:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh.items"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [[a, 1], [b, 2], [c, 3]]")]),s._v("\nitems"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("h"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [[a, 1], [b, 2], [c, 3]]")]),s._v("\n\nnh "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"y"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"z"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xx"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"yy"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("21")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nnh.items"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# [["a", 1], ["b", 2], ["c", {"x": 10, "y": 20}], ["z", {"xx": 11, "yy": 21}]]')]),s._v("\n")])])]),a("h3",{attrs:{id:"keys"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#keys"}},[s._v("#")]),s._v(" keys()")]),s._v(" "),a("p",[s._v("Returns an array of keys in the hash. Only the first-level keys in a nested hash are returned:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh.keys"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [a, b, c]")]),s._v("\nkeys"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("h"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [a, b, c]")]),s._v("\n\nnh "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"y"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"z"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xx"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"yy"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("21")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nnh.keys"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# ["z", "a", "b", "c"]')]),s._v("\n")])])]),a("h3",{attrs:{id:"pop-k"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#pop-k"}},[s._v("#")]),s._v(" pop(k)")]),s._v(" "),a("p",[s._v("Removes and returns the item matching key "),a("code",[s._v("k")]),s._v(" from the hash. If "),a("code",[s._v("k")]),s._v(" is not found, "),a("code",[s._v("hash.pop(k)")]),s._v(" returns "),a("code",[s._v("null")]),s._v(".")]),s._v(" "),a("p",[s._v("Only the first-level items can be popped.")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"y"')]),s._v(":20"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\nh.pop"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1}")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {b: 2, c: {x: 10, y: 20}}")]),s._v("\n\nh.pop"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("c.x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\nERROR: identifier not found: c\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(":7"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\th.pop"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("c.x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n\nh.pop"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\nERROR: identifier not found: c\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(":7"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\th.pop"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n\nh.pop"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {c: {x: 10, y: 20}}")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {b: 2}")]),s._v("\n\nh.pop"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"d"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# null")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {b: 2}")]),s._v("\n\n")])])]),a("h3",{attrs:{id:"str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#str"}},[s._v("#")]),s._v(" str()")]),s._v(" "),a("p",[s._v("Returns the string representation of the hash:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"k"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"v"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh.str"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "{k: v}"')]),s._v("\nstr"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("h"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "{k: v}"')]),s._v("\n")])])]),a("h3",{attrs:{id:"values"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#values"}},[s._v("#")]),s._v(" values()")]),s._v(" "),a("p",[s._v("Returns an array of values in the hash. Only the first-level values in a nested hash are returned:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh.values"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [1, 2, 3]")]),s._v("\nvalues"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("h"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [1, 2, 3]")]),s._v("\n\nnh "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"y"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"z"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xx"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"yy"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("21")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nnh.values"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# [1, 2, {"x": 10, "y": 20}, {"xx": 11, "yy": 21}]')]),s._v("\n")])])]),a("h2",{attrs:{id:"user-defined-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#user-defined-functions"}},[s._v("#")]),s._v(" User-defined functions")]),s._v(" "),a("p",[s._v("Since hash values can be of any type, we can create objects with custom functions, such as:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("hash")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"greeter"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("return")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"Hello '),a("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$name")]),s._v('!"')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nhash.greeter"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"Sally"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "Hello Sally!"')]),s._v("\n")])])])])}),[],!1,null,null,null);t.default=e.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[37],{536:function(s,t,a){"use strict";a.r(t);var n=a(45),e=Object(n.a)({},(function(){var s=this,t=s.$createElement,a=s._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[a("h1",{attrs:{id:"hash"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#hash"}},[s._v("#")]),s._v(" Hash")]),s._v(" "),a("p",[s._v("Hashes represent a list of key-value pairs that can conveniently be accessed with "),a("code",[s._v("O(1)")]),s._v(" cost.\nThink of JavaScript's objects or Python's dictionaries:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"key"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"val"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh.key "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "val"')]),s._v("\nh"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"key"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "val"')]),s._v("\n")])])]),a("p",[s._v("Note that the "),a("code",[s._v("hash.key")]),s._v(" hash property form is the preferred one, as it's more concise and mimics other programming languages.")]),s._v(" "),a("p",[s._v("Hash keys must be strings, but hash values can be of any type. Accessing a key that does not exist returns "),a("code",[s._v("null")]),s._v(".")]),s._v(" "),a("p",[s._v("An individual hash element may be assigned to via its "),a("code",[s._v('hash["key"]')]),s._v("\nindex or its property "),a("code",[s._v("hash.key")]),s._v(". This includes compound operators\nsuch as "),a("code",[s._v("+=")]),s._v(". Note that a new key may be created as well using "),a("code",[s._v('hash["newkey"]')]),s._v(" or "),a("code",[s._v("hash.newkey")]),s._v(":")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: 3}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# index assignment")]),s._v("\nh"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("99")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 99, b: 2, c: 3}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# property assignment")]),s._v("\nh.a "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 99")]),s._v("\nh.a "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("88")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 88, b: 2, c: 3}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# compound operator assignment to property")]),s._v("\nh.a "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("+=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v("\nh.a "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 89")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 88, b: 2, c: 3}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# create new keys via index or property")]),s._v("\nh"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\nh.y "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("20")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 88, b: 2, c: 3, x: 10, y: 20}")]),s._v("\n")])])]),a("p",[s._v("It is also possible to extend a hash using the "),a("code",[s._v("+=")]),s._v(" operator\nwith another hash. Note that any existing keys on the left side\nwill be replaced with the same key from the right side:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: 3}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# extending a hash by += compound operator")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("+=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("33")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"d"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("4")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"e"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: 33, d: 4, e: 5}")]),s._v("\n")])])]),a("p",[s._v("In a similar way, we can make a "),a("strong",[s._v("shallow")]),s._v(" copy of a hash using\nthe "),a("code",[s._v("+")]),s._v(" operator with an empty hash. Be careful, the empty hash\nmust be on the left side of the "),a("code",[s._v("+")]),s._v(" operator:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("a "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: 3}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# shallow copy a hash using the + operator with an empty hash")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# note well that the empty hash must be on the left side of the +")]),s._v("\nb "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" + a\nb "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: 3}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# modify the shallow copy without changing the original")]),s._v("\nb.a "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("99")]),s._v("\nb "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 99, b: 2, c: 3}")]),s._v("\na "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: 3}")]),s._v("\n")])])]),a("p",[s._v("If the left side is a "),a("code",[s._v('hash["key"]')]),s._v(" or "),a("code",[s._v("hash.key")]),s._v(" and the\nright side is a hash, then the resulting hash will have a\nnew nested hash at "),a("code",[s._v("hash.newkey")]),s._v(". This includes "),a("code",[s._v('hash["newkey"]')]),s._v("\nor "),a("code",[s._v("hash.newKey")]),s._v(" as well:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: 3}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# nested hash assigned to hash.key")]),s._v("\nh.c "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"y"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: {x: 10, y: 20}}")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# nested hash assigned to hash.newkey")]),s._v("\nh.z "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xx"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"yy"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("21")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1, b: 2, c: {x: 10, y: 20}, z: {xx: 11, yy: 21}}")]),s._v("\n")])])]),a("p",[s._v("Nested hashes can be accessed by chaining keys, though it's best to use "),a("code",[s._v("?.")]),s._v(' to "drill down" through keys that may not exist:')]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"y"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"z"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xx"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"yy"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("21")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh.c.y "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 20")]),s._v("\nh"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(".x "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10")]),s._v("\nh.z"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"yy"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("#21")]),s._v("\nh.z.zz "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# null")]),s._v("\n\nh.x.pp\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: invalid property 'pp' on type NULL")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# \t[1:4]\th.x.pp")]),s._v("\n\nh.x?.pp "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# null")]),s._v("\n")])])]),a("h2",{attrs:{id:"supported-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#supported-functions"}},[s._v("#")]),s._v(" Supported functions")]),s._v(" "),a("h3",{attrs:{id:"items"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#items"}},[s._v("#")]),s._v(" items()")]),s._v(" "),a("p",[s._v("Returns an array of [key, value] tuples for each item in the hash. Only the first-level items in a nested hash are returned:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh.items"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [[a, 1], [b, 2], [c, 3]]")]),s._v("\nitems"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("h"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [[a, 1], [b, 2], [c, 3]]")]),s._v("\n\nnh "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"y"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"z"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xx"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"yy"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("21")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nnh.items"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# [["a", 1], ["b", 2], ["c", {"x": 10, "y": 20}], ["z", {"xx": 11, "yy": 21}]]')]),s._v("\n")])])]),a("h3",{attrs:{id:"keys"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#keys"}},[s._v("#")]),s._v(" keys()")]),s._v(" "),a("p",[s._v("Returns an array of keys in the hash. Only the first-level keys in a nested hash are returned:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh.keys"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [a, b, c]")]),s._v("\nkeys"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("h"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [a, b, c]")]),s._v("\n\nnh "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"y"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"z"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xx"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"yy"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("21")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nnh.keys"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# ["z", "a", "b", "c"]')]),s._v("\n")])])]),a("h3",{attrs:{id:"pop-k"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#pop-k"}},[s._v("#")]),s._v(" pop(k)")]),s._v(" "),a("p",[s._v("Removes and returns the item matching key "),a("code",[s._v("k")]),s._v(" from the hash. If "),a("code",[s._v("k")]),s._v(" is not found, "),a("code",[s._v("hash.pop(k)")]),s._v(" returns "),a("code",[s._v("null")]),s._v(".")]),s._v(" "),a("p",[s._v("Only the first-level items can be popped.")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"y"')]),s._v(":20"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n\nh.pop"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {a: 1}")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {b: 2, c: {x: 10, y: 20}}")]),s._v("\n\nh.pop"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("c.x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\nERROR: identifier not found: c\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(":7"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\th.pop"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("c.x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n\nh.pop"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\nERROR: identifier not found: c\n\t"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(":7"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\th.pop"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n\nh.pop"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {c: {x: 10, y: 20}}")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {b: 2}")]),s._v("\n\nh.pop"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"d"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# null")]),s._v("\nh "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# {b: 2}")]),s._v("\n\n")])])]),a("h3",{attrs:{id:"str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#str"}},[s._v("#")]),s._v(" str()")]),s._v(" "),a("p",[s._v("Returns the string representation of the hash:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"k"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"v"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh.str"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "{k: v}"')]),s._v("\nstr"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("h"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "{k: v}"')]),s._v("\n")])])]),a("h3",{attrs:{id:"values"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#values"}},[s._v("#")]),s._v(" values()")]),s._v(" "),a("p",[s._v("Returns an array of values in the hash. Only the first-level values in a nested hash are returned:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nh.values"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [1, 2, 3]")]),s._v("\nvalues"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("h"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# [1, 2, 3]")]),s._v("\n\nnh "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"b"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"c"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"y"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"z"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xx"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"yy"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("21")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nnh.values"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# [1, 2, {"x": 10, "y": 20}, {"xx": 11, "yy": 21}]')]),s._v("\n")])])]),a("h2",{attrs:{id:"user-defined-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#user-defined-functions"}},[s._v("#")]),s._v(" User-defined functions")]),s._v(" "),a("p",[s._v("Since hash values can be of any type, we can create objects with custom functions, such as:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("hash")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"greeter"')]),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(":")]),s._v(" f"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("return")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"Hello '),a("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$name")]),s._v('!"')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\nhash.greeter"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"Sally"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "Hello Sally!"')]),s._v("\n")])])])])}),[],!1,null,null,null);t.default=e.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/37.47473244.js b/docs/src/.vuepress/dist/assets/js/38.3762cc6b.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/37.47473244.js rename to docs/src/.vuepress/dist/assets/js/38.3762cc6b.js index 00fc7c04..27fd7e76 100644 --- a/docs/src/.vuepress/dist/assets/js/37.47473244.js +++ b/docs/src/.vuepress/dist/assets/js/38.3762cc6b.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[37],{536:function(s,t,a){"use strict";a.r(t);var e=a(45),n=Object(e.a)({},(function(){var s=this,t=s.$createElement,a=s._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[a("h1",{attrs:{id:"number"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#number"}},[s._v("#")]),s._v(" Number")]),s._v(" "),a("p",[s._v("Numbers are very straightforward data structures:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("123")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1.23")]),s._v("\n")])])]),a("p",[s._v("Most mathematical operators are designed to work\nwith them:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" ** "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("5.5")]),s._v(" / "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" / "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),s._v(" + "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("19")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" % "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 4.08494466531301")]),s._v("\n")])])]),a("p",[s._v('Note that numbers have what we call a "zero value",\na value that evaluates to '),a("code",[s._v("false")]),s._v(" when casted to boolean:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.0")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("-3.75 "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),a("p",[s._v("You can use "),a("a",{attrs:{href:"/syntax/operators"}},[s._v("bitwise operators")]),s._v(" on numbers, but bear in\nmind that they will be implicitly converted to integers:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" ^ "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 0")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" ^ "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" ^ "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.9")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1, as 0.9 is converted to 0")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("14")]),s._v(" ^ "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("7")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 9 -- 1110 XOR 0111 == 1001")]),s._v("\n")])])]),a("p",[s._v("You can write numbers in the exponential notation:")]),s._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[s._v("1e1 # 10\n1e+1 # 10\n1e-1 # 0.1\n")])])]),a("p",[s._v("In addition, numbers can include underscores ("),a("code",[s._v("_")]),s._v(") as visual\nseparators, in order to improve readability: when\nABS encounters "),a("code",[s._v("1_000_000")]),s._v(" it will internally convert it\nto a million. Underscore separators can be placed anywhere\non a number ("),a("code",[s._v("10_")]),s._v(", "),a("code",[s._v("10_00")]),s._v(", "),a("code",[s._v("10.00_00_00")]),s._v(") except at its start:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1000000")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1M")]),s._v("\n1_000_000 "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1M, just a lot more readable")]),s._v("\n1_00_00_00 "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1M, formatted with another separator pattern")]),s._v("\n_100000000 "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: identifier not found: _")]),s._v("\n")])])]),a("p",[s._v("Note there is no limit to the number of consecutive\nunderscores that can be used (eg. "),a("code",[s._v("10__________0 == 100")]),s._v(").")]),s._v(" "),a("h2",{attrs:{id:"supported-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#supported-functions"}},[s._v("#")]),s._v(" Supported functions")]),s._v(" "),a("h3",{attrs:{id:"between-min-max"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#between-min-max"}},[s._v("#")]),s._v(" between(min, max)")]),s._v(" "),a("p",[s._v("Checks whether the number is between "),a("code",[s._v("min")]),s._v(" and "),a("code",[s._v("max")]),s._v(":")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(".between"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(".between"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(".between"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),a("h3",{attrs:{id:"ceil"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#ceil"}},[s._v("#")]),s._v(" ceil()")]),s._v(" "),a("p",[s._v("Rounds the number up to the closest integer:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10.3")]),s._v(".ceil"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 11")]),s._v("\n-10.3.ceil"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -10")]),s._v("\n")])])]),a("h3",{attrs:{id:"clamp-min-max"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#clamp-min-max"}},[s._v("#")]),s._v(" clamp(min, max)")]),s._v(" "),a("p",[s._v("Clamps the number between min and max:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(".clamp"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(".clamp"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 5")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(".clamp"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("50")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 50")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1.5")]),s._v(".clamp"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2.5")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 2.5")]),s._v("\n")])])]),a("h3",{attrs:{id:"floor"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#floor"}},[s._v("#")]),s._v(" floor()")]),s._v(" "),a("p",[s._v("Rounds the number down to the closest integer:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10.9")]),s._v(".floor"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10")]),s._v("\n-10.9.floor"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -11")]),s._v("\n")])])]),a("h3",{attrs:{id:"int"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#int"}},[s._v("#")]),s._v(" int()")]),s._v(" "),a("p",[s._v("Rounds the number towards zero to the closest integer:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10.3")]),s._v(".int"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10")]),s._v("\n-10.3.int"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -10")]),s._v("\n")])])]),a("h3",{attrs:{id:"number-2"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#number-2"}},[s._v("#")]),s._v(" number()")]),s._v(" "),a("p",[s._v("Identity:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("99.5")]),s._v(".number"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 99.5")]),s._v("\n")])])]),a("h3",{attrs:{id:"round-precision"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#round-precision"}},[s._v("#")]),s._v(" round([precision])")]),s._v(" "),a("p",[s._v("Rounds the number with the given "),a("code",[s._v("precision")]),s._v(" (default 0):")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10.3")]),s._v(".round"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10.6")]),s._v(".round"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 11")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10.333")]),s._v(".round"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10.3")]),s._v("\n")])])]),a("h3",{attrs:{id:"str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#str"}},[s._v("#")]),s._v(" str()")]),s._v(" "),a("p",[s._v("Returns a string containing the number:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("99")]),s._v(".str"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "99"')]),s._v("\n")])])])])}),[],!1,null,null,null);t.default=n.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[38],{537:function(s,t,a){"use strict";a.r(t);var e=a(45),n=Object(e.a)({},(function(){var s=this,t=s.$createElement,a=s._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[a("h1",{attrs:{id:"number"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#number"}},[s._v("#")]),s._v(" Number")]),s._v(" "),a("p",[s._v("Numbers are very straightforward data structures:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("123")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1.23")]),s._v("\n")])])]),a("p",[s._v("Most mathematical operators are designed to work\nwith them:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" ** "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("5.5")]),s._v(" / "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" / "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),s._v(" + "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("19")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" % "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 4.08494466531301")]),s._v("\n")])])]),a("p",[s._v('Note that numbers have what we call a "zero value",\na value that evaluates to '),a("code",[s._v("false")]),s._v(" when casted to boolean:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.0")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),s._v("-3.75 "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n")])])]),a("p",[s._v("You can use "),a("a",{attrs:{href:"/syntax/operators"}},[s._v("bitwise operators")]),s._v(" on numbers, but bear in\nmind that they will be implicitly converted to integers:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" ^ "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 0")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" ^ "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" ^ "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.9")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1, as 0.9 is converted to 0")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("14")]),s._v(" ^ "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("7")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 9 -- 1110 XOR 0111 == 1001")]),s._v("\n")])])]),a("p",[s._v("You can write numbers in the exponential notation:")]),s._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[s._v("1e1 # 10\n1e+1 # 10\n1e-1 # 0.1\n")])])]),a("p",[s._v("In addition, numbers can include underscores ("),a("code",[s._v("_")]),s._v(") as visual\nseparators, in order to improve readability: when\nABS encounters "),a("code",[s._v("1_000_000")]),s._v(" it will internally convert it\nto a million. Underscore separators can be placed anywhere\non a number ("),a("code",[s._v("10_")]),s._v(", "),a("code",[s._v("10_00")]),s._v(", "),a("code",[s._v("10.00_00_00")]),s._v(") except at its start:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1000000")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1M")]),s._v("\n1_000_000 "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1M, just a lot more readable")]),s._v("\n1_00_00_00 "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1M, formatted with another separator pattern")]),s._v("\n_100000000 "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: identifier not found: _")]),s._v("\n")])])]),a("p",[s._v("Note there is no limit to the number of consecutive\nunderscores that can be used (eg. "),a("code",[s._v("10__________0 == 100")]),s._v(").")]),s._v(" "),a("h2",{attrs:{id:"supported-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#supported-functions"}},[s._v("#")]),s._v(" Supported functions")]),s._v(" "),a("h3",{attrs:{id:"between-min-max"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#between-min-max"}},[s._v("#")]),s._v(" between(min, max)")]),s._v(" "),a("p",[s._v("Checks whether the number is between "),a("code",[s._v("min")]),s._v(" and "),a("code",[s._v("max")]),s._v(":")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(".between"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(".between"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(".between"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),a("h3",{attrs:{id:"ceil"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#ceil"}},[s._v("#")]),s._v(" ceil()")]),s._v(" "),a("p",[s._v("Rounds the number up to the closest integer:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10.3")]),s._v(".ceil"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 11")]),s._v("\n-10.3.ceil"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -10")]),s._v("\n")])])]),a("h3",{attrs:{id:"clamp-min-max"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#clamp-min-max"}},[s._v("#")]),s._v(" clamp(min, max)")]),s._v(" "),a("p",[s._v("Clamps the number between min and max:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(".clamp"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(".clamp"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 5")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(".clamp"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("50")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("100")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 50")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1.5")]),s._v(".clamp"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2.5")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 2.5")]),s._v("\n")])])]),a("h3",{attrs:{id:"floor"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#floor"}},[s._v("#")]),s._v(" floor()")]),s._v(" "),a("p",[s._v("Rounds the number down to the closest integer:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10.9")]),s._v(".floor"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10")]),s._v("\n-10.9.floor"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -11")]),s._v("\n")])])]),a("h3",{attrs:{id:"int"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#int"}},[s._v("#")]),s._v(" int()")]),s._v(" "),a("p",[s._v("Rounds the number towards zero to the closest integer:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10.3")]),s._v(".int"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10")]),s._v("\n-10.3.int"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -10")]),s._v("\n")])])]),a("h3",{attrs:{id:"number-2"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#number-2"}},[s._v("#")]),s._v(" number()")]),s._v(" "),a("p",[s._v("Identity:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("99.5")]),s._v(".number"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 99.5")]),s._v("\n")])])]),a("h3",{attrs:{id:"round-precision"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#round-precision"}},[s._v("#")]),s._v(" round([precision])")]),s._v(" "),a("p",[s._v("Rounds the number with the given "),a("code",[s._v("precision")]),s._v(" (default 0):")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10.3")]),s._v(".round"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10.6")]),s._v(".round"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 11")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10.333")]),s._v(".round"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10.3")]),s._v("\n")])])]),a("h3",{attrs:{id:"str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#str"}},[s._v("#")]),s._v(" str()")]),s._v(" "),a("p",[s._v("Returns a string containing the number:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token number"}},[s._v("99")]),s._v(".str"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "99"')]),s._v("\n")])])])])}),[],!1,null,null,null);t.default=n.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/38.be2fc22a.js b/docs/src/.vuepress/dist/assets/js/38.be2fc22a.js deleted file mode 100644 index 2501f847..00000000 --- a/docs/src/.vuepress/dist/assets/js/38.be2fc22a.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[38],{537:function(s,t,a){"use strict";a.r(t);var n=a(45),e=Object(n.a)({},(function(){var s=this,t=s.$createElement,a=s._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[a("h1",{attrs:{id:"string"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#string"}},[s._v("#")]),s._v(" String")]),s._v(" "),a("p",[s._v("Strings are probably the most basic data type\nin all languages, yet they hold a very important\nvalue in ABS: considering that shell scripting\nis all about working around command outputs,\nwe assume you will likely work a lot with them.")]),s._v(" "),a("p",[s._v("Strings are enclosed by double or single quotes:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v("'hello world'")]),s._v("\n")])])]),a("p",[s._v("You can escape quotes with a simple backslash:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"I said: '),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[s._v('\\"')]),s._v("hello world"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[s._v('\\"')]),s._v('"')]),s._v("\n")])])]),a("p",[s._v("or use the other quote to ease escaping:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v("'I said: \"hello world\"'")]),s._v("\n")])])]),a("p",[s._v("Their individual characters can be accessed\nwith the index notation:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# e")]),s._v("\n")])])]),a("p",[s._v("Accessing an index that does not exist returns an empty string.")]),s._v(" "),a("p",[s._v("You can access the Nth last character of the string using a\nnegative index:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("-2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "n"')]),s._v("\n")])])]),a("p",[s._v("You can also access a range of the string with the "),a("code",[s._v("[start:end]")]),s._v(" notation:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(":3"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" // "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"str"')]),s._v("\n")])])]),a("p",[s._v("where "),a("code",[s._v("start")]),s._v(" is the starting position in the array, and "),a("code",[s._v("end")]),s._v(" is\nthe ending one. If "),a("code",[s._v("start")]),s._v(" is not specified, it is assumed to be 0,\nand if "),a("code",[s._v("end")]),s._v(" is omitted it is assumed to be the last character in the\nstring:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v(":3"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" // "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"str"')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(":"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" // "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"tring"')]),s._v("\n")])])]),a("p",[s._v("If "),a("code",[s._v("end")]),s._v(" is negative, it will be converted to "),a("code",[s._v("length of string - (-end)")]),s._v(":")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(":-1"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" // "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"strin"')]),s._v("\n")])])]),a("p",[s._v('To concatenate strings, "sum" them:')]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" + "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),s._v(" + "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"world"')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "hello world"')]),s._v("\n")])])]),a("p",[s._v('Note that strings have what we call a "zero value":\na value that evaluates to '),a("code",[s._v("false")]),s._v(" when casted to boolean:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('""')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),a("p",[s._v("To test for the existence of substrings within strings use the "),a("code",[s._v("in")]),s._v(" operator:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"str"')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xyz"')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),a("h2",{attrs:{id:"interpolation"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#interpolation"}},[s._v("#")]),s._v(" Interpolation")]),s._v(" "),a("p",[s._v("You can also replace parts of the string with variables\ndeclared within your program using the "),a("code",[s._v("$")]),s._v(" symbol:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[s._v("file")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"/etc/hosts"')]),s._v("\nx "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"File name is: '),a("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$file")]),s._v('"')]),s._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "File name is: /etc/hosts"')]),s._v("\n")])])]),a("p",[s._v("If you need "),a("code",[s._v("$")]),s._v(" literals in your command, you\nsimply need to escape them with a "),a("code",[s._v("\\")]),s._v(":")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),a("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$non_existing_var")]),s._v('"')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# \"\" since the ABS variable 'non_existing_var' doesn't exist")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\\'),a("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$non_existing_var")]),s._v('"')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "$non_existing_var"')]),s._v("\n")])])]),a("p",[s._v("An alternative syntax ("),a("code",[s._v("${...}")]),s._v(") is available for special\ncases -- for example, when your string is embedded\nwithin another string:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("word "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"word"')]),s._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"prefix'),a("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$wordsuffix")]),s._v('"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "prefix"')]),s._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"prefix'),a("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${word}")]),s._v('suffix"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "prefixwordsuffix"')]),s._v("\n")])])]),a("h2",{attrs:{id:"special-characters-embedded-in-strings"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#special-characters-embedded-in-strings"}},[s._v("#")]),s._v(" Special characters embedded in strings")]),s._v(" "),a("p",[s._v("Double and single quoted strings behave differently if the string contains\nescaped special ASCII line control characters such as "),a("code",[s._v('LF "\\n"')]),s._v(", "),a("code",[s._v('CR "\\r"')]),s._v(",\nand "),a("code",[s._v('TAB "\\t"')]),s._v(".")]),s._v(" "),a("p",[s._v("If the string is double quoted these characters will be expanded to their ASCII codes.\nOn the other hand, if the string is single quoted, these characters will be considered\nas escaped literals.")]),s._v(" "),a("p",[s._v("This means, for example, that double quoted LFs will cause line feeds to appear in the output:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v('c"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\na\nb\nc\n⧐\n")])])]),a("p",[s._v("Conversely, single quoted LFs will appear as escaped literal strings:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v("'a"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v("c'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("nb"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("nc\n⧐\n")])])]),a("p",[s._v("And if you need to mix escaped and unescaped special characters, then you can do this with double escapes within double quoted strings:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[s._v("\\\\")]),s._v("nb"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v('c"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("nb\nc\n⧐\n")])])]),a("h2",{attrs:{id:"unicode-support"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#unicode-support"}},[s._v("#")]),s._v(" Unicode support")]),s._v(" "),a("p",[s._v("Unicode characters are supported in strings:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"⺐"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n⺐\n⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"I ❤ ABS"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\nI ❤ ABS\n")])])]),a("h3",{attrs:{id:"working-with-special-characters-in-string-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#working-with-special-characters-in-string-functions"}},[s._v("#")]),s._v(" Working with special characters in string functions")]),s._v(" "),a("p",[s._v("Special characters also work with "),a("code",[s._v("split()")]),s._v(" and "),a("code",[s._v("join()")]),s._v(" and other string functions as well.")]),s._v(" "),a("ol",[a("li",[s._v("Double quoted expanded special characters:")])]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("⧐ s "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v('c"')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v('"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("s"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("a, b, c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n⧐ ss "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" join"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("s, "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v('"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("ss"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\na\nb\nc\n⧐\n")])])]),a("ol",{attrs:{start:"2"}},[a("li",[s._v("Single quoted literal special characters:")])]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("⧐ s "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v("'a"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v("c'")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v("'"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v("'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("s"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("a, b, c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n⧐ ss "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" join"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("s, "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v("'"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v("'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("ss"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("nb"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("nc\n⧐\n")])])]),a("ol",{attrs:{start:"3"}},[a("li",[s._v("Double quoted, double escaped special characters:")])]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("⧐ s "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[s._v("\\\\")]),s._v("nb"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[s._v("\\\\")]),s._v('nc"')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[s._v("\\\\")]),s._v('n"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("s"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("a, b, c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n⧐ ss "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" join"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("s, "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[s._v("\\\\")]),s._v('n"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("ss"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("nb"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("nc\n⧐\n")])])]),a("h2",{attrs:{id:"supported-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#supported-functions"}},[s._v("#")]),s._v(" Supported functions")]),s._v(" "),a("h3",{attrs:{id:"any-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#any-str"}},[s._v("#")]),s._v(" any(str)")]),s._v(" "),a("p",[s._v("Checks whether any of the characters in "),a("code",[s._v("str")]),s._v(" are present in the string:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".any"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"abs"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".any"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xyz"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),a("h3",{attrs:{id:"camel"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#camel"}},[s._v("#")]),s._v(" camel()")]),s._v(" "),a("p",[s._v("Converts the string to camelCase:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a short sentence"')]),s._v(".camel"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# aShortSentence")]),s._v("\n")])])]),a("h3",{attrs:{id:"ceil"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#ceil"}},[s._v("#")]),s._v(" ceil()")]),s._v(" "),a("p",[s._v("Converts a string to a number, and then rounds the\nnumber up to the closest integer.")]),s._v(" "),a("p",[s._v("The string must represent a number.")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"10.3"')]),s._v(".ceil"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 11")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"-10.3"')]),s._v(".ceil"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -10")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),s._v(".ceil"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: ceil(...) can only be called on strings which represent numbers, 'a' given")]),s._v("\n")])])]),a("h3",{attrs:{id:"floor"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#floor"}},[s._v("#")]),s._v(" floor()")]),s._v(" "),a("p",[s._v("Converts a string to a number, and then rounds the\nnumber down to the closest integer.")]),s._v(" "),a("p",[s._v("The string must represent a number.")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"10.9"')]),s._v(".floor"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"-10.9"')]),s._v(".floor"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -11")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),s._v(".floor"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: floor(...) can only be called on strings which represent numbers, 'a' given")]),s._v("\n")])])]),a("h3",{attrs:{id:"fmt"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#fmt"}},[s._v("#")]),s._v(" fmt()")]),s._v(" "),a("p",[s._v("Formats a string ("),a("a",{attrs:{href:"https://linux.die.net/man/3/sprintf",target:"_blank",rel:"noopener noreferrer"}},[s._v("sprintf convention"),a("OutboundLink")],1),s._v("):")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello %s"')]),s._v(".fmt"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"world"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "hello world"')]),s._v("\n")])])]),a("p",[s._v("In order to print a literal "),a("code",[s._v("%")]),s._v(", you can simply escape it with another "),a("code",[s._v("%%")]),s._v(":")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"30%%"')]),s._v(".fmt"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 30%")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"30%% %s"')]),s._v(".fmt"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"higher"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 30% higher")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"30%"')]),s._v(".fmt"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 30%!(NOVERB)")]),s._v("\n")])])]),a("h3",{attrs:{id:"index-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#index-str"}},[s._v("#")]),s._v(" index(str)")]),s._v(" "),a("p",[s._v("Returns the first index at which "),a("code",[s._v("str")]),s._v(" is found:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".index"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"t"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".index"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"ri"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 2")]),s._v("\n")])])]),a("h3",{attrs:{id:"int"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#int"}},[s._v("#")]),s._v(" int()")]),s._v(" "),a("p",[s._v("Converts a string to a number, and then rounds it\ntowards zero to the closest integer.\nThe string must represent a number.")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"99.5"')]),s._v(".int"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 99")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"-99.5"')]),s._v(".int"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -99")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),s._v(".int"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: int(...) can only be called on strings which represent numbers, 'a' given")]),s._v("\n")])])]),a("h3",{attrs:{id:"is-number"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#is-number"}},[s._v("#")]),s._v(" is_number()")]),s._v(" "),a("p",[s._v("Checks whether a string can be converted to a number:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"99.5"')]),s._v(".is_number"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),s._v(".is_number"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),a("p",[s._v("Use this function when "),a("code",[s._v('"...".number()')]),s._v(" might return an error.")]),s._v(" "),a("h3",{attrs:{id:"json"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#json"}},[s._v("#")]),s._v(" json()")]),s._v(" "),a("p",[s._v("Parses the string as JSON, returning a "),a("a",{attrs:{href:"/types/hash"}},[s._v("hash")]),s._v(":")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("⧐ s "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('\'{"a": 1, "b": "string", "c": true, "d": {"x": 10, "y": 20}}\'')]),s._v("\n⧐ h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" s.json"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n⧐ h\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("a: "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", b: string, c: true, d: "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("x: "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", y: "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n⧐ h.d\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("x: "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", y: "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])]),a("h3",{attrs:{id:"kebab"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#kebab"}},[s._v("#")]),s._v(" kebab()")]),s._v(" "),a("p",[s._v("Converts the string to kebab-case:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a short sentence"')]),s._v(".snake"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# a-short-sentence")]),s._v("\n")])])]),a("h3",{attrs:{id:"last-index-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#last-index-str"}},[s._v("#")]),s._v(" last_index(str)")]),s._v(" "),a("p",[s._v("Returns the last index at which "),a("code",[s._v("str")]),s._v(" is found:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string string"')]),s._v(".last_index"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"g"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 13")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string string"')]),s._v(".last_index"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"ri"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 9")]),s._v("\n")])])]),a("h3",{attrs:{id:"len"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#len"}},[s._v("#")]),s._v(" len()")]),s._v(" "),a("p",[s._v("Returns the length of a string:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v(".len"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 11")]),s._v("\n")])])]),a("h3",{attrs:{id:"lines"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#lines"}},[s._v("#")]),s._v(" lines()")]),s._v(" "),a("p",[s._v("Splits a string by newline:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"first'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v('second"')]),s._v(".lines"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# ["first", "second"]')]),s._v("\n")])])]),a("h3",{attrs:{id:"lower"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#lower"}},[s._v("#")]),s._v(" lower()")]),s._v(" "),a("p",[s._v("Lowercases the string:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"STRING"')]),s._v(".lower"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "string"')]),s._v("\n")])])]),a("h3",{attrs:{id:"number"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#number"}},[s._v("#")]),s._v(" number()")]),s._v(" "),a("p",[s._v("Converts a string to a number, if possible:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"99.5"')]),s._v(".number"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 99.5")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),s._v(".number"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: int(...) can only be called on strings which represent numbers, 'a' given")]),s._v("\n")])])]),a("h3",{attrs:{id:"prefix-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#prefix-str"}},[s._v("#")]),s._v(" prefix(str)")]),s._v(" "),a("p",[s._v("Checks whether the string starts with "),a("code",[s._v("str")]),s._v(":")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".prefix"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"str"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".prefix"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"abc"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),a("h3",{attrs:{id:"repeat-i"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#repeat-i"}},[s._v("#")]),s._v(" repeat(i)")]),s._v(" "),a("p",[s._v("Creates a new string by repeating the original one "),a("code",[s._v("i")]),s._v(" times:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".repeat"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "stringstring"')]),s._v("\n")])])]),a("h3",{attrs:{id:"replace-str1-str2-n"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#replace-str1-str2-n"}},[s._v("#")]),s._v(" replace(str1, str2 [, n])")]),s._v(" "),a("p",[s._v("Replaces the first "),a("code",[s._v("n")]),s._v(" occurrences of "),a("code",[s._v("str1")]),s._v(" in the string with "),a("code",[s._v("str2")]),s._v(".\nIf "),a("code",[s._v("n")]),s._v(" is omitted or negative, it will replace all occurrences:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".replace"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"i"')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"o"')]),s._v(", -1"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "strong"')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"aaaa"')]),s._v(".replace"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "xxxx"')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"aaaa"')]),s._v(".replace"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "xxaa"')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"A man, a plan, a canal, Panama!"')]),s._v(".replace"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a "')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"ur-"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "A man, ur-plan, ur-canal, Panama!"')]),s._v("\n")])])]),a("h3",{attrs:{id:"reverse"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#reverse"}},[s._v("#")]),s._v(" reverse()")]),s._v(" "),a("p",[s._v("Returns a new string with the order of characters/glyphs reversed from the\nsource.")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v(".reverse"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "dlrow olleh"')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"世界"')]),s._v(".reverse"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "界世"')]),s._v("\n")])])]),a("h3",{attrs:{id:"round-precision"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#round-precision"}},[s._v("#")]),s._v(" round(precision?)")]),s._v(" "),a("p",[s._v("Converts a string to a number, and then rounds\nthe number with the given precision.")]),s._v(" "),a("p",[s._v("The precision argument is optional, and set to "),a("code",[s._v("0")]),s._v("\nby default.")]),s._v(" "),a("p",[s._v("The string must represent a number.")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"10.3"')]),s._v(".round"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"10.6"')]),s._v(".round"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 11")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"10.333"')]),s._v(".round"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10.3")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),s._v(".round"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: round(...) can only be called on strings which represent numbers, 'a' given")]),s._v("\n")])])]),a("p",[s._v("You can also replace an array of strings:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".replace"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"i"')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"g"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"o"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "strono"')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"A man, a plan, a canal, Panama!"')]),s._v(".replace"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a "')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"l"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"ur-"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "A man, ur-pur-an, ur-canaur-, Panama!"')]),s._v("\n")])])]),a("h3",{attrs:{id:"snake"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#snake"}},[s._v("#")]),s._v(" snake()")]),s._v(" "),a("p",[s._v("Converts the string to snake_case:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a short sentence"')]),s._v(".snake"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# a_short_sentence")]),s._v("\n")])])]),a("h3",{attrs:{id:"split-separator"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#split-separator"}},[s._v("#")]),s._v(" split(separator)")]),s._v(" "),a("p",[s._v("Splits a string by "),a("code",[s._v("separator")]),s._v(", defaulting to a single space:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"1.2.3.4"')]),s._v(".split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"."')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# ["1", "2", "3", "4"]')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"1 2 3 4"')]),s._v(".split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# ["1", "2", "3", "4"]')]),s._v("\n")])])]),a("h3",{attrs:{id:"str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#str"}},[s._v("#")]),s._v(" str()")]),s._v(" "),a("p",[s._v("Identity:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".str"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "string"')]),s._v("\n")])])]),a("h3",{attrs:{id:"suffix-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#suffix-str"}},[s._v("#")]),s._v(" suffix(str)")]),s._v(" "),a("p",[s._v("Checks whether the string ends with "),a("code",[s._v("str")]),s._v(":")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".suffix"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"ing"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".suffix"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"ong"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),a("h3",{attrs:{id:"title"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#title"}},[s._v("#")]),s._v(" title()")]),s._v(" "),a("p",[s._v("Titlecases the string:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v(".title"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "Hello World"')]),s._v("\n")])])]),a("h3",{attrs:{id:"trim"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#trim"}},[s._v("#")]),s._v(" trim()")]),s._v(" "),a("p",[s._v("Removes empty spaces from the beginning and end of the string:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('" string "')]),s._v(".trim"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "string"')]),s._v("\n")])])]),a("h3",{attrs:{id:"trim-by-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#trim-by-str"}},[s._v("#")]),s._v(" trim_by(str)")]),s._v(" "),a("p",[s._v("Removes "),a("code",[s._v("str")]),s._v(" from the beginning and end of the string:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".trim_by"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"g"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "strin"')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"stringest"')]),s._v(".trim_by"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"st"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "ringe"')]),s._v("\n")])])]),a("h3",{attrs:{id:"upper"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#upper"}},[s._v("#")]),s._v(" upper()")]),s._v(" "),a("p",[s._v("Uppercases the string:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".upper"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "STRING"')]),s._v("\n")])])])])}),[],!1,null,null,null);t.default=e.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/39.972809d0.js b/docs/src/.vuepress/dist/assets/js/39.972809d0.js new file mode 100644 index 00000000..b5271f1b --- /dev/null +++ b/docs/src/.vuepress/dist/assets/js/39.972809d0.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[39],{538:function(s,t,a){"use strict";a.r(t);var n=a(45),e=Object(n.a)({},(function(){var s=this,t=s.$createElement,a=s._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[a("h1",{attrs:{id:"string"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#string"}},[s._v("#")]),s._v(" String")]),s._v(" "),a("p",[s._v("Strings are probably the most basic data type\nin all languages, yet they hold a very important\nvalue in ABS: considering that shell scripting\nis all about working around command outputs,\nwe assume you will likely work a lot with them.")]),s._v(" "),a("p",[s._v("Strings are enclosed by double or single quotes:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v("'hello world'")]),s._v("\n")])])]),a("p",[s._v("You can escape quotes with a simple backslash:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"I said: '),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[s._v('\\"')]),s._v("hello world"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[s._v('\\"')]),s._v('"')]),s._v("\n")])])]),a("p",[s._v("or use the other quote to ease escaping:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v("'I said: \"hello world\"'")]),s._v("\n")])])]),a("p",[s._v("Their individual characters can be accessed\nwith the index notation:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# e")]),s._v("\n")])])]),a("p",[s._v("Accessing an index that does not exist returns an empty string.")]),s._v(" "),a("p",[s._v("You can access the Nth last character of the string using a\nnegative index:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("-2"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "n"')]),s._v("\n")])])]),a("p",[s._v("You can also access a range of the string with the "),a("code",[s._v("[start:end]")]),s._v(" notation:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(":3"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" // "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"str"')]),s._v("\n")])])]),a("p",[s._v("where "),a("code",[s._v("start")]),s._v(" is the starting position in the array, and "),a("code",[s._v("end")]),s._v(" is\nthe ending one. If "),a("code",[s._v("start")]),s._v(" is not specified, it is assumed to be 0,\nand if "),a("code",[s._v("end")]),s._v(" is omitted it is assumed to be the last character in the\nstring:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v(":3"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" // "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"str"')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(":"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" // "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"tring"')]),s._v("\n")])])]),a("p",[s._v("If "),a("code",[s._v("end")]),s._v(" is negative, it will be converted to "),a("code",[s._v("length of string - (-end)")]),s._v(":")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(":-1"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" // "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"strin"')]),s._v("\n")])])]),a("p",[s._v('To concatenate strings, "sum" them:')]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello"')]),s._v(" + "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),s._v(" + "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"world"')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "hello world"')]),s._v("\n")])])]),a("p",[s._v('Note that strings have what we call a "zero value":\na value that evaluates to '),a("code",[s._v("false")]),s._v(" when casted to boolean:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("!")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('""')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),a("p",[s._v("To test for the existence of substrings within strings use the "),a("code",[s._v("in")]),s._v(" operator:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"str"')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xyz"')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),a("h2",{attrs:{id:"interpolation"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#interpolation"}},[s._v("#")]),s._v(" Interpolation")]),s._v(" "),a("p",[s._v("You can also replace parts of the string with variables\ndeclared within your program using the "),a("code",[s._v("$")]),s._v(" symbol:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[s._v("file")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"/etc/hosts"')]),s._v("\nx "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"File name is: '),a("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$file")]),s._v('"')]),s._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("x"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "File name is: /etc/hosts"')]),s._v("\n")])])]),a("p",[s._v("If you need "),a("code",[s._v("$")]),s._v(" literals in your command, you\nsimply need to escape them with a "),a("code",[s._v("\\")]),s._v(":")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),a("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$non_existing_var")]),s._v('"')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# \"\" since the ABS variable 'non_existing_var' doesn't exist")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\\'),a("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$non_existing_var")]),s._v('"')]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "$non_existing_var"')]),s._v("\n")])])]),a("p",[s._v("An alternative syntax ("),a("code",[s._v("${...}")]),s._v(") is available for special\ncases -- for example, when your string is embedded\nwithin another string:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("word "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"word"')]),s._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"prefix'),a("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$wordsuffix")]),s._v('"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "prefix"')]),s._v("\necho"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"prefix'),a("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${word}")]),s._v('suffix"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "prefixwordsuffix"')]),s._v("\n")])])]),a("h2",{attrs:{id:"special-characters-embedded-in-strings"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#special-characters-embedded-in-strings"}},[s._v("#")]),s._v(" Special characters embedded in strings")]),s._v(" "),a("p",[s._v("Double and single quoted strings behave differently if the string contains\nescaped special ASCII line control characters such as "),a("code",[s._v('LF "\\n"')]),s._v(", "),a("code",[s._v('CR "\\r"')]),s._v(",\nand "),a("code",[s._v('TAB "\\t"')]),s._v(".")]),s._v(" "),a("p",[s._v("If the string is double quoted these characters will be expanded to their ASCII codes.\nOn the other hand, if the string is single quoted, these characters will be considered\nas escaped literals.")]),s._v(" "),a("p",[s._v("This means, for example, that double quoted LFs will cause line feeds to appear in the output:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v('c"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\na\nb\nc\n⧐\n")])])]),a("p",[s._v("Conversely, single quoted LFs will appear as escaped literal strings:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v("'a\\nb\\nc'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("nb"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("nc\n⧐\n")])])]),a("p",[s._v("And if you need to mix escaped and unescaped special characters, then you can do this with double escapes within double quoted strings:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[s._v("\\\\")]),s._v("nb"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v('c"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("nb\nc\n⧐\n")])])]),a("h2",{attrs:{id:"unicode-support"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#unicode-support"}},[s._v("#")]),s._v(" Unicode support")]),s._v(" "),a("p",[s._v("Unicode characters are supported in strings:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"⺐"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n⺐\n⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"I ❤ ABS"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\nI ❤ ABS\n")])])]),a("h3",{attrs:{id:"working-with-special-characters-in-string-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#working-with-special-characters-in-string-functions"}},[s._v("#")]),s._v(" Working with special characters in string functions")]),s._v(" "),a("p",[s._v("Special characters also work with "),a("code",[s._v("split()")]),s._v(" and "),a("code",[s._v("join()")]),s._v(" and other string functions as well.")]),s._v(" "),a("ol",[a("li",[s._v("Double quoted expanded special characters:")])]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("⧐ s "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v("b"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v('c"')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v('"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("s"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("a, b, c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n⧐ ss "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" join"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("s, "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v('"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("ss"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\na\nb\nc\n⧐\n")])])]),a("ol",{attrs:{start:"2"}},[a("li",[s._v("Single quoted literal special characters:")])]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("⧐ s "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v("'a\\nb\\nc'")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v("'\\n'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("s"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("a, b, c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n⧐ ss "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" join"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("s, "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v("'\\n'")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("ss"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("nb"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("nc\n⧐\n")])])]),a("ol",{attrs:{start:"3"}},[a("li",[s._v("Double quoted, double escaped special characters:")])]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("⧐ s "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[s._v("\\\\")]),s._v("nb"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[s._v("\\\\")]),s._v('nc"')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[s._v("\\\\")]),s._v('n"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("s"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("a, b, c"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n⧐ ss "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" join"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("s, "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[s._v("\\\\")]),s._v('n"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n⧐ echo"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("ss"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\na"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("nb"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("nc\n⧐\n")])])]),a("h2",{attrs:{id:"supported-functions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#supported-functions"}},[s._v("#")]),s._v(" Supported functions")]),s._v(" "),a("h3",{attrs:{id:"any-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#any-str"}},[s._v("#")]),s._v(" any(str)")]),s._v(" "),a("p",[s._v("Checks whether any of the characters in "),a("code",[s._v("str")]),s._v(" are present in the string:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".any"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"abs"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".any"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"xyz"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),a("h3",{attrs:{id:"camel"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#camel"}},[s._v("#")]),s._v(" camel()")]),s._v(" "),a("p",[s._v("Converts the string to camelCase:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a short sentence"')]),s._v(".camel"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# aShortSentence")]),s._v("\n")])])]),a("h3",{attrs:{id:"ceil"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#ceil"}},[s._v("#")]),s._v(" ceil()")]),s._v(" "),a("p",[s._v("Converts a string to a number, and then rounds the\nnumber up to the closest integer.")]),s._v(" "),a("p",[s._v("The string must represent a number.")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"10.3"')]),s._v(".ceil"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 11")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"-10.3"')]),s._v(".ceil"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -10")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),s._v(".ceil"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: ceil(...) can only be called on strings which represent numbers, 'a' given")]),s._v("\n")])])]),a("h3",{attrs:{id:"floor"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#floor"}},[s._v("#")]),s._v(" floor()")]),s._v(" "),a("p",[s._v("Converts a string to a number, and then rounds the\nnumber down to the closest integer.")]),s._v(" "),a("p",[s._v("The string must represent a number.")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"10.9"')]),s._v(".floor"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"-10.9"')]),s._v(".floor"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -11")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),s._v(".floor"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: floor(...) can only be called on strings which represent numbers, 'a' given")]),s._v("\n")])])]),a("h3",{attrs:{id:"fmt"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#fmt"}},[s._v("#")]),s._v(" fmt()")]),s._v(" "),a("p",[s._v("Formats a string ("),a("a",{attrs:{href:"https://linux.die.net/man/3/sprintf",target:"_blank",rel:"noopener noreferrer"}},[s._v("sprintf convention"),a("OutboundLink")],1),s._v("):")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello %s"')]),s._v(".fmt"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"world"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "hello world"')]),s._v("\n")])])]),a("p",[s._v("In order to print a literal "),a("code",[s._v("%")]),s._v(", you can simply escape it with another "),a("code",[s._v("%%")]),s._v(":")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"30%%"')]),s._v(".fmt"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 30%")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"30%% %s"')]),s._v(".fmt"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"higher"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 30% higher")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"30%"')]),s._v(".fmt"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 30%!(NOVERB)")]),s._v("\n")])])]),a("h3",{attrs:{id:"index-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#index-str"}},[s._v("#")]),s._v(" index(str)")]),s._v(" "),a("p",[s._v("Returns the first index at which "),a("code",[s._v("str")]),s._v(" is found:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".index"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"t"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 1")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".index"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"ri"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 2")]),s._v("\n")])])]),a("h3",{attrs:{id:"int"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#int"}},[s._v("#")]),s._v(" int()")]),s._v(" "),a("p",[s._v("Converts a string to a number, and then rounds it\ntowards zero to the closest integer.\nThe string must represent a number.")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"99.5"')]),s._v(".int"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 99")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"-99.5"')]),s._v(".int"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# -99")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),s._v(".int"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: int(...) can only be called on strings which represent numbers, 'a' given")]),s._v("\n")])])]),a("h3",{attrs:{id:"is-number"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#is-number"}},[s._v("#")]),s._v(" is_number()")]),s._v(" "),a("p",[s._v("Checks whether a string can be converted to a number:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"99.5"')]),s._v(".is_number"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),s._v(".is_number"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),a("p",[s._v("Use this function when "),a("code",[s._v('"...".number()')]),s._v(" might return an error.")]),s._v(" "),a("h3",{attrs:{id:"json"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#json"}},[s._v("#")]),s._v(" json()")]),s._v(" "),a("p",[s._v("Parses the string as JSON, returning a "),a("a",{attrs:{href:"/types/hash"}},[s._v("hash")]),s._v(":")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v("⧐ s "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('\'{"a": 1, "b": "string", "c": true, "d": {"x": 10, "y": 20}}\'')]),s._v("\n⧐ h "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" s.json"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v("\n⧐ h\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("a: "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(", b: string, c: true, d: "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("x: "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", y: "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n⧐ h.d\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),s._v("x: "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(", y: "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("20")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v("\n")])])]),a("h3",{attrs:{id:"kebab"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#kebab"}},[s._v("#")]),s._v(" kebab()")]),s._v(" "),a("p",[s._v("Converts the string to kebab-case:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a short sentence"')]),s._v(".kebab"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# a-short-sentence")]),s._v("\n")])])]),a("h3",{attrs:{id:"last-index-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#last-index-str"}},[s._v("#")]),s._v(" last_index(str)")]),s._v(" "),a("p",[s._v("Returns the last index at which "),a("code",[s._v("str")]),s._v(" is found:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string string"')]),s._v(".last_index"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"g"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 13")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string string"')]),s._v(".last_index"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"ri"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 9")]),s._v("\n")])])]),a("h3",{attrs:{id:"len"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#len"}},[s._v("#")]),s._v(" len()")]),s._v(" "),a("p",[s._v("Returns the length of a string:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v(".len"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 11")]),s._v("\n")])])]),a("h3",{attrs:{id:"lines"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#lines"}},[s._v("#")]),s._v(" lines()")]),s._v(" "),a("p",[s._v("Splits a string by newline:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"first'),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v('second"')]),s._v(".lines"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# ["first", "second"]')]),s._v("\n")])])]),a("h3",{attrs:{id:"lower"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#lower"}},[s._v("#")]),s._v(" lower()")]),s._v(" "),a("p",[s._v("Lowercases the string:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"STRING"')]),s._v(".lower"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "string"')]),s._v("\n")])])]),a("h3",{attrs:{id:"number"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#number"}},[s._v("#")]),s._v(" number()")]),s._v(" "),a("p",[s._v("Converts a string to a number, if possible:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"99.5"')]),s._v(".number"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 99.5")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),s._v(".number"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: int(...) can only be called on strings which represent numbers, 'a' given")]),s._v("\n")])])]),a("h3",{attrs:{id:"prefix-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#prefix-str"}},[s._v("#")]),s._v(" prefix(str)")]),s._v(" "),a("p",[s._v("Checks whether the string starts with "),a("code",[s._v("str")]),s._v(":")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".prefix"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"str"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".prefix"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"abc"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),a("h3",{attrs:{id:"repeat-i"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#repeat-i"}},[s._v("#")]),s._v(" repeat(i)")]),s._v(" "),a("p",[s._v("Creates a new string by repeating the original one "),a("code",[s._v("i")]),s._v(" times:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".repeat"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "stringstring"')]),s._v("\n")])])]),a("h3",{attrs:{id:"replace-str1-str2-n"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#replace-str1-str2-n"}},[s._v("#")]),s._v(" replace(str1, str2 [, n])")]),s._v(" "),a("p",[s._v("Replaces the first "),a("code",[s._v("n")]),s._v(" occurrences of "),a("code",[s._v("str1")]),s._v(" in the string with "),a("code",[s._v("str2")]),s._v(".\nIf "),a("code",[s._v("n")]),s._v(" is omitted or negative, it will replace all occurrences:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".replace"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"i"')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"o"')]),s._v(", -1"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "strong"')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"aaaa"')]),s._v(".replace"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "xxxx"')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"aaaa"')]),s._v(".replace"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"x"')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "xxaa"')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"A man, a plan, a canal, Panama!"')]),s._v(".replace"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a "')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"ur-"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "A man, ur-plan, ur-canal, Panama!"')]),s._v("\n")])])]),a("h3",{attrs:{id:"reverse"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#reverse"}},[s._v("#")]),s._v(" reverse()")]),s._v(" "),a("p",[s._v("Returns a new string with the order of characters/glyphs reversed from the\nsource.")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v(".reverse"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "dlrow olleh"')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"世界"')]),s._v(".reverse"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "界世"')]),s._v("\n")])])]),a("h3",{attrs:{id:"round-precision"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#round-precision"}},[s._v("#")]),s._v(" round(precision?)")]),s._v(" "),a("p",[s._v("Converts a string to a number, and then rounds\nthe number with the given precision.")]),s._v(" "),a("p",[s._v("The precision argument is optional, and set to "),a("code",[s._v("0")]),s._v("\nby default.")]),s._v(" "),a("p",[s._v("The string must represent a number.")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"10.3"')]),s._v(".round"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"10.6"')]),s._v(".round"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 11")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"10.333"')]),s._v(".round"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 10.3")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a"')]),s._v(".round"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# ERROR: round(...) can only be called on strings which represent numbers, 'a' given")]),s._v("\n")])])]),a("p",[s._v("You can also replace an array of strings:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".replace"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"i"')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"g"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"o"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "strono"')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"A man, a plan, a canal, Panama!"')]),s._v(".replace"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a "')]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"l"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(", "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"ur-"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "A man, ur-pur-an, ur-canaur-, Panama!"')]),s._v("\n")])])]),a("h3",{attrs:{id:"snake"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#snake"}},[s._v("#")]),s._v(" snake()")]),s._v(" "),a("p",[s._v("Converts the string to snake_case:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"a short sentence"')]),s._v(".snake"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# a_short_sentence")]),s._v("\n")])])]),a("h3",{attrs:{id:"split-separator"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#split-separator"}},[s._v("#")]),s._v(" split(separator)")]),s._v(" "),a("p",[s._v("Splits a string by "),a("code",[s._v("separator")]),s._v(", defaulting to a single space:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"1.2.3.4"')]),s._v(".split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"."')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# ["1", "2", "3", "4"]')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"1 2 3 4"')]),s._v(".split"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# ["1", "2", "3", "4"]')]),s._v("\n")])])]),a("h3",{attrs:{id:"str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#str"}},[s._v("#")]),s._v(" str()")]),s._v(" "),a("p",[s._v("Identity:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".str"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "string"')]),s._v("\n")])])]),a("h3",{attrs:{id:"suffix-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#suffix-str"}},[s._v("#")]),s._v(" suffix(str)")]),s._v(" "),a("p",[s._v("Checks whether the string ends with "),a("code",[s._v("str")]),s._v(":")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".suffix"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"ing"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# true")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".suffix"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"ong"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# false")]),s._v("\n")])])]),a("h3",{attrs:{id:"title"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#title"}},[s._v("#")]),s._v(" title()")]),s._v(" "),a("p",[s._v("Titlecases the string:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"hello world"')]),s._v(".title"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "Hello World"')]),s._v("\n")])])]),a("h3",{attrs:{id:"trim"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#trim"}},[s._v("#")]),s._v(" trim()")]),s._v(" "),a("p",[s._v("Removes empty spaces from the beginning and end of the string:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('" string "')]),s._v(".trim"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "string"')]),s._v("\n")])])]),a("h3",{attrs:{id:"trim-by-str"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#trim-by-str"}},[s._v("#")]),s._v(" trim_by(str)")]),s._v(" "),a("p",[s._v("Removes "),a("code",[s._v("str")]),s._v(" from the beginning and end of the string:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".trim_by"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"g"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "strin"')]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"stringest"')]),s._v(".trim_by"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"st"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "ringe"')]),s._v("\n")])])]),a("h3",{attrs:{id:"upper"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#upper"}},[s._v("#")]),s._v(" upper()")]),s._v(" "),a("p",[s._v("Uppercases the string:")]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token string"}},[s._v('"string"')]),s._v(".upper"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v('# "STRING"')]),s._v("\n")])])])])}),[],!1,null,null,null);t.default=e.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/39.90a73f07.js b/docs/src/.vuepress/dist/assets/js/40.624e2309.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/39.90a73f07.js rename to docs/src/.vuepress/dist/assets/js/40.624e2309.js index f6c13050..26a281b3 100644 --- a/docs/src/.vuepress/dist/assets/js/39.90a73f07.js +++ b/docs/src/.vuepress/dist/assets/js/40.624e2309.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[39],{538:function(s,a,t){"use strict";t.r(a);var r=t(45),e=Object(r.a)({},(function(){var s=this,a=s.$createElement,t=s._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey},scopedSlots:s._u([{key:"sample-code",fn:function(){return[t("div",{staticClass:"language-sh extra-class"},[t("pre",{pre:!0,attrs:{class:"language-sh"}},[t("code",[t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# Simple program that fetches your IP and sums it up")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("RES")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("`")]),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("curl")]),s._v(" -s "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("'https://api.ipify.org?format=json'")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("||")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"ERR"')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("`")])]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("if")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$RES")]),s._v('"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"ERR"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("then")]),s._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("echo")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"An error occurred"')]),s._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("exit")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("fi")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("IP")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("`")]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("echo")]),s._v(" $RES "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" jq -r "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('".ip"')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("`")])]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t("span",{pre:!0,attrs:{class:"token environment constant"}},[s._v("IFS")])]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(". "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("read")]),s._v(" first second third fourth "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<<")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("EOF\n"),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${IP"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("##")]),s._v("*-}")]),s._v("\nEOF")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("total")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$((")]),s._v("first "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("+")]),s._v(" second "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("+")]),s._v(" third "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("+")]),s._v(" fourth"),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("))")])]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("if")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$total")]),s._v(" -gt "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("100")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("then")]),s._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("echo")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"The sum of ['),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$IP")]),s._v("] is a large number, "),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$total")]),s._v('."')]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("fi")]),s._v("\n")])])])]},proxy:!0}])})}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[40],{539:function(s,a,t){"use strict";t.r(a);var r=t(45),e=Object(r.a)({},(function(){var s=this,a=s.$createElement,t=s._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey},scopedSlots:s._u([{key:"sample-code",fn:function(){return[t("div",{staticClass:"language-sh extra-class"},[t("pre",{pre:!0,attrs:{class:"language-sh"}},[t("code",[t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# Simple program that fetches your IP and sums it up")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("RES")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("`")]),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("curl")]),s._v(" -s "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("'https://api.ipify.org?format=json'")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("||")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"ERR"')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("`")])]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("if")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$RES")]),s._v('"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"ERR"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("then")]),s._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("echo")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"An error occurred"')]),s._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("exit")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("fi")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("IP")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("`")]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("echo")]),s._v(" $RES "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" jq -r "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('".ip"')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("`")])]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t("span",{pre:!0,attrs:{class:"token environment constant"}},[s._v("IFS")])]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(". "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("read")]),s._v(" first second third fourth "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<<")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("EOF\n"),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${IP"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("##")]),s._v("*-}")]),s._v("\nEOF")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("total")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$((")]),s._v("first "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("+")]),s._v(" second "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("+")]),s._v(" third "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("+")]),s._v(" fourth"),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("))")])]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("if")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$total")]),s._v(" -gt "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("100")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("then")]),s._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("echo")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"The sum of ['),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$IP")]),s._v("] is a large number, "),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$total")]),s._v('."')]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("fi")]),s._v("\n")])])])]},proxy:!0}])})}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/40.8adf4179.js b/docs/src/.vuepress/dist/assets/js/41.1bafbf2f.js similarity index 72% rename from docs/src/.vuepress/dist/assets/js/40.8adf4179.js rename to docs/src/.vuepress/dist/assets/js/41.1bafbf2f.js index df61e514..d7c8ae73 100644 --- a/docs/src/.vuepress/dist/assets/js/40.8adf4179.js +++ b/docs/src/.vuepress/dist/assets/js/41.1bafbf2f.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[40],{539:function(t,a,s){"use strict";s.r(a);var n=s(45),e=Object(n.a)({},(function(){var t=this,a=t.$createElement,s=t._self._c||a;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"why-another-scripting-language"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#why-another-scripting-language"}},[t._v("#")]),t._v(" Why another scripting language?")]),t._v(" "),s("p",[t._v("If you're a developer, chances are that you got your hands\non a server at some point during your career and bumped\ninto an "),s("code",[t._v(".sh")]),t._v(" script")]),t._v(" "),s("p",[t._v("You might have felt, though, that the script was written\nin a fairly strange language, with a very untraditional syntax:")]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v(" -z "),s("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$STRING")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("then")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("fi")]),t._v("\n")])])]),s("p",[t._v("("),s("em",[t._v("if you're wondering, the above snippet would check whether the variable\n"),s("code",[t._v("$STRING")]),t._v(" is an empty string")]),t._v(")")]),t._v(" "),s("p",[t._v("Far for bashing Bash (pun intended) or the generic "),s("a",{attrs:{href:"http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html",target:"_blank",rel:"noopener noreferrer"}},[t._v("shell command language"),s("OutboundLink")],1),t._v(",\nwe believe there should be a more straightforward alternative\nto automating tasks.")]),t._v(" "),s("p",[t._v("We believe the pragmatic Python or the elegant Ruby haven't been\nable to overcome Bash as the "),s("em",[t._v("de-facto")]),t._v(" standard\nfor shell scripting because of the "),s("a",{attrs:{href:"https://www.quora.com/What-are-the-main-advantages-of-Bash-as-a-programming-language",target:"_blank",rel:"noopener noreferrer"}},[t._v("inner simplicity of Bash"),s("OutboundLink")],1),t._v(".\nRunning programs in parallel, interacting with the underlying system,\nease of portability... ...these are quick and easy wins when you're\nwriting those "),s("code",[t._v(".sh")]),t._v(" files.")]),t._v(" "),s("p",[t._v("We believe, though, there could be an alternative where a programmer would\ncombine the syntax and flexibility of general-purpose languages\n(Python, Ruby and JS, to name a few) with the benefits of Bash.")]),t._v(" "),s("p",[t._v("This is why we developed the ABS programming language: a\nlanguage that is a joy to work with in the context of shell scripting:\nit isn't here to replace the likes of PHP, Java or Python,\nneither it wants to diminish the importance of Bash.")]),t._v(" "),s("p",[t._v("ABS tries to mix a more modern syntax with the\nsimplicity of Bash.")]),t._v(" "),s("p",[t._v("Let's take a look a look at some practical ABS code. We will now\ncall the API of nba.com in order to retrieve the stats for\none of the NBA games played in 2017:")]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[t._v("r "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("curl")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"http://data.nba.net/prod/v1/20170201/0021600732_boxscore.json"')]),t._v(" -H "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'DNT: 1'")]),t._v(" -H "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'Accept-Encoding: gzip, deflate, sdch'")]),t._v(" -H "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'Accept-Language: en'")]),t._v(" -H "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36'")]),t._v(" -H "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'Accept: */*'")]),t._v(" -H "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'Referer: http://stats.nba.com/'")]),t._v(" -H "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'Connection: keep-alive'")]),t._v(" --compressed"),s("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("r.ok "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Could not fetch game data. Bummer!"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n exit"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\ndoc "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" r.json"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\nname, city "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" doc.basicGameData.arena "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# arena is a JSON object: {"name": "TD Garden", "city": "Boston"}')]),t._v("\n\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"The game was played at the %s arena in %s"')]),t._v(", name, city"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\nhighlight "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" doc.basicGameData.nugget.text\n\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" highlight."),s("span",{pre:!0,attrs:{class:"token function-name function"}},[t._v("len")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"The press said: '),s("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("%s"),s("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v('"')]),t._v(", highlight"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# The game was played at the TD Garden in Boston")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# The press said: "Thomas scores 19 of 44 points in 4th quarter"')]),t._v("\n")])])]),s("p",[t._v("You will notice 3 things:")]),t._v(" "),s("ul",[s("li",[s("a",{attrs:{href:"https://en.wikipedia.org/wiki/Isaiah_Thomas_(basketball)",target:"_blank",rel:"noopener noreferrer"}},[t._v("Isiah Thomas"),s("OutboundLink")],1),t._v(" seems to be a really good player")]),t._v(" "),s("li",[t._v("you should be very familiar with the above syntax")]),t._v(" "),s("li",[t._v("the language is capable of seamlessly throwing shell commands into the mix")])]),t._v(" "),s("p",[t._v("This is exactly why ABS was born: a familiar syntax, and the convenience of Bash.")]),t._v(" "),s("p",[t._v("A sneak-peek at some of the things ABS can elegantly do:")]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Unix pipes work")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("ip")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("curl")]),t._v(" icanhazip.com "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("tr")]),t._v(" -d "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'"),s("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[t._v("\\n")]),t._v("'")]),s("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# We now have a string -> "10.10.10.12"')]),t._v("\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ip"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Let's play with it -> [10, 10, 10, 12]")]),t._v("\nparts "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" ip.split"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"."')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(".map"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("int"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 42 anyone?")]),t._v("\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("parts.sum"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("))")]),t._v("\n")])])]),s("p",[t._v("and some more opinionated language features:")]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Case-insensitive string comparison")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"LeBron"')]),t._v(" ~ "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"lebron"')]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Array concatenation")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" + "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Reading from the stdin")]),t._v("\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("\"You typed '%s'\"")]),t._v(", stdin"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("))")]),t._v("\n")])])]),s("h2",{attrs:{id:"next"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#next"}},[t._v("#")]),t._v(" Next")]),t._v(" "),s("p",[t._v("That's about it for the intro, we don't want to spoil the rest.\nYou can now head over to read "),s("a",{attrs:{href:"/introduction/how-to-run-abs-code"}},[t._v("how to run ABS code!")])])])}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[41],{540:function(t,a,s){"use strict";s.r(a);var n=s(45),e=Object(n.a)({},(function(){var t=this,a=t.$createElement,s=t._self._c||a;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"why-another-scripting-language"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#why-another-scripting-language"}},[t._v("#")]),t._v(" Why another scripting language?")]),t._v(" "),s("p",[t._v("If you're a developer, chances are that you got your hands\non a server at some point during your career and bumped\ninto an "),s("code",[t._v(".sh")]),t._v(" script")]),t._v(" "),s("p",[t._v("You might have felt, though, that the script was written\nin a fairly strange language, with a very untraditional syntax:")]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v(" -z "),s("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$STRING")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("then")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("fi")]),t._v("\n")])])]),s("p",[t._v("("),s("em",[t._v("if you're wondering, the above snippet would check whether the variable\n"),s("code",[t._v("$STRING")]),t._v(" is an empty string")]),t._v(")")]),t._v(" "),s("p",[t._v("Far for bashing Bash (pun intended) or the generic "),s("a",{attrs:{href:"http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html",target:"_blank",rel:"noopener noreferrer"}},[t._v("shell command language"),s("OutboundLink")],1),t._v(",\nwe believe there should be a more straightforward alternative\nto automating tasks.")]),t._v(" "),s("p",[t._v("We believe the pragmatic Python or the elegant Ruby haven't been\nable to overcome Bash as the "),s("em",[t._v("de-facto")]),t._v(" standard\nfor shell scripting because of the "),s("a",{attrs:{href:"https://www.quora.com/What-are-the-main-advantages-of-Bash-as-a-programming-language",target:"_blank",rel:"noopener noreferrer"}},[t._v("inner simplicity of Bash"),s("OutboundLink")],1),t._v(".\nRunning programs in parallel, interacting with the underlying system,\nease of portability... ...these are quick and easy wins when you're\nwriting those "),s("code",[t._v(".sh")]),t._v(" files.")]),t._v(" "),s("p",[t._v("We believe, though, there could be an alternative where a programmer would\ncombine the syntax and flexibility of general-purpose languages\n(Python, Ruby and JS, to name a few) with the benefits of Bash.")]),t._v(" "),s("p",[t._v("This is why we developed the ABS programming language: a\nlanguage that is a joy to work with in the context of shell scripting:\nit isn't here to replace the likes of PHP, Java or Python,\nneither it wants to diminish the importance of Bash.")]),t._v(" "),s("p",[t._v("ABS tries to mix a more modern syntax with the\nsimplicity of Bash.")]),t._v(" "),s("p",[t._v("Let's take a look a look at some practical ABS code. We will now\ncall the API of nba.com in order to retrieve the stats for\none of the NBA games played in 2017:")]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[t._v("r "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("curl")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"http://data.nba.net/prod/v1/20170201/0021600732_boxscore.json"')]),t._v(" -H "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'DNT: 1'")]),t._v(" -H "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'Accept-Encoding: gzip, deflate, sdch'")]),t._v(" -H "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'Accept-Language: en'")]),t._v(" -H "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36'")]),t._v(" -H "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'Accept: */*'")]),t._v(" -H "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'Referer: http://stats.nba.com/'")]),t._v(" -H "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'Connection: keep-alive'")]),t._v(" --compressed"),s("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("r.ok "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Could not fetch game data. Bummer!"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n exit"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\ndoc "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" r.json"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\nname, city "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" doc.basicGameData.arena "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# arena is a JSON object: {"name": "TD Garden", "city": "Boston"}')]),t._v("\n\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"The game was played at the %s arena in %s"')]),t._v(", name, city"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\nhighlight "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" doc.basicGameData.nugget.text\n\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" highlight."),s("span",{pre:!0,attrs:{class:"token function-name function"}},[t._v("len")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n echo"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"The press said: '),s("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("%s"),s("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v('"')]),t._v(", highlight"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# The game was played at the TD Garden in Boston")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# The press said: "Thomas scores 19 of 44 points in 4th quarter"')]),t._v("\n")])])]),s("p",[t._v("You will notice 3 things:")]),t._v(" "),s("ul",[s("li",[s("a",{attrs:{href:"https://en.wikipedia.org/wiki/Isaiah_Thomas_(basketball)",target:"_blank",rel:"noopener noreferrer"}},[t._v("Isiah Thomas"),s("OutboundLink")],1),t._v(" seems to be a really good player")]),t._v(" "),s("li",[t._v("you should be very familiar with the above syntax")]),t._v(" "),s("li",[t._v("the language is capable of seamlessly throwing shell commands into the mix")])]),t._v(" "),s("p",[t._v("This is exactly why ABS was born: a familiar syntax, and the convenience of Bash.")]),t._v(" "),s("p",[t._v("A sneak-peek at some of the things ABS can elegantly do:")]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Unix pipes work")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("ip")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("curl")]),t._v(" icanhazip.com "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("tr")]),t._v(" -d "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'\\n'")]),s("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v('# We now have a string -> "10.10.10.12"')]),t._v("\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ip"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Let's play with it -> [10, 10, 10, 12]")]),t._v("\nparts "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" ip.split"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"."')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(".map"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("int"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 42 anyone?")]),t._v("\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("parts.sum"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("))")]),t._v("\n")])])]),s("p",[t._v("and some more opinionated language features:")]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Case-insensitive string comparison")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"LeBron"')]),t._v(" ~ "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"lebron"')]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Array concatenation")]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" + "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v(", "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Reading from the stdin")]),t._v("\necho"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("\"You typed '%s'\"")]),t._v(", stdin"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("))")]),t._v("\n")])])]),s("h2",{attrs:{id:"next"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#next"}},[t._v("#")]),t._v(" Next")]),t._v(" "),s("p",[t._v("That's about it for the intro, we don't want to spoil the rest.\nYou can now head over to read "),s("a",{attrs:{href:"/introduction/how-to-run-abs-code"}},[t._v("how to run ABS code!")])])])}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/41.877b1d87.js b/docs/src/.vuepress/dist/assets/js/42.32bcbdf0.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/41.877b1d87.js rename to docs/src/.vuepress/dist/assets/js/42.32bcbdf0.js index c6131c92..e09e1695 100644 --- a/docs/src/.vuepress/dist/assets/js/41.877b1d87.js +++ b/docs/src/.vuepress/dist/assets/js/42.32bcbdf0.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[41],{540:function(t,a,e){"use strict";e.r(a);var s=e(45),n=Object(s.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"how-to-run-abs-code"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#how-to-run-abs-code"}},[t._v("#")]),t._v(" How to run ABS code")]),t._v(" "),e("p",[t._v("In order to run programs written in abs, you can simply download\nthe latest release of ABS from Github, and dump the ABS executable\nin your "),e("code",[t._v("PATH")]),t._v(". Windows, OSX and a few Linux flavors are supported.")]),t._v(" "),e("p",[t._v("We also provide a 1-command installer that should work across\nplatforms:")]),t._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[e("span",{pre:!0,attrs:{class:"token function"}},[t._v("bash")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("curl")]),t._v(" https://www.abs-lang.org/installer.sh"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),e("p",[t._v("and will download the "),e("code",[t._v("abs")]),t._v(" executable in your current\ndirectory -- again, we recommend to move it to your "),e("code",[t._v("$PATH")]),t._v(".")]),t._v(" "),e("p",[t._v("Afterwards, you can run ABS scripts with:")]),t._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[t._v("$ abs path/to/scripts.abs\n")])])]),e("p",[t._v("You can also run an executable abs script directly from bash\nusing a bash shebang line at the top of the script file.")]),t._v(" "),e("p",[t._v("In this example the abs executable is linked to "),e("code",[t._v("/usr/local/bin/abs")]),t._v("\nand the abs script "),e("code",[t._v("~/bin/remote.abs")]),t._v(" has its execute permissions set.")]),t._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[t._v("$ "),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("cat")]),t._v(" ~/bin/hello.abs\n"),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("#! /usr/local/bin/abs")]),t._v("\necho"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),e("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Hello world!"')]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".\n\n"),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# the executable abs script above is in the PATH at ~/bin/hello.abs")]),t._v("\n$ hello.abs\nHello world"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\n")])])]),e("p",[t._v("Scripts do not have to have a specific extension,\nalthough it's recommended to use "),e("code",[t._v(".abs")]),t._v(" as a\nconvention: we may reserve some keywords in the\nfuture (such as "),e("code",[t._v("abs version")]),t._v(" or "),e("code",[t._v("abs install")]),t._v(")\nso we recommend to attach an extension to the\nscripts you're trying to run.")]),t._v(" "),e("p",[t._v("A bit lost right now? We'd suggest to clone "),e("a",{attrs:{href:"https://github.com/abs-lang/abs",target:"_blank",rel:"noopener noreferrer"}},[t._v("ABS' main repository"),e("OutboundLink")],1),t._v(" as you can already\nstart testing some code with the scripts in the\n"),e("a",{attrs:{href:"https://github.com/abs-lang/abs/tree/master/examples",target:"_blank",rel:"noopener noreferrer"}},[t._v("examples"),e("OutboundLink")],1),t._v(" directory.")]),t._v(" "),e("h2",{attrs:{id:"repl"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#repl"}},[t._v("#")]),t._v(" REPL")]),t._v(" "),e("p",[t._v("If you want to get a more "),e("em",[t._v("live")]),t._v(" feeling of ABS, you can\nalso simply run the interpreter; without any argument. It\nwill launch ABS' REPL, and you will be able to test code on\nthe fly:")]),t._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[t._v("$ abs\nHello there, welcome to the ABS programming language"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\nType "),e("span",{pre:!0,attrs:{class:"token string"}},[t._v("'quit'")]),t._v(" when you"),e("span",{pre:!0,attrs:{class:"token string"}},[t._v("'re done, '")]),t._v("help' "),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" you get lost"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\n⧐ "),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("ip")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token variable"}},[e("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("curl")]),t._v(" icanhazip.com"),e("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),t._v("\n⧐ ip.ok\n"),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),t._v("\n⧐ ip"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nERROR: not a function: STRING\n⧐ "),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("ip")]),t._v("\n"),e("span",{pre:!0,attrs:{class:"token number"}},[t._v("94.204")]),t._v(".178.37\n")])])]),e("h2",{attrs:{id:"next"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#next"}},[t._v("#")]),t._v(" Next")]),t._v(" "),e("p",[t._v("That's about it for this section!")]),t._v(" "),e("p",[t._v("You can now head over to try ABS directly in your\nbrowser, on the "),e("a",{attrs:{href:"/playground"}},[t._v("playground")]),t._v("!")])])}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[42],{541:function(t,a,e){"use strict";e.r(a);var s=e(45),n=Object(s.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"how-to-run-abs-code"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#how-to-run-abs-code"}},[t._v("#")]),t._v(" How to run ABS code")]),t._v(" "),e("p",[t._v("In order to run programs written in abs, you can simply download\nthe latest release of ABS from Github, and dump the ABS executable\nin your "),e("code",[t._v("PATH")]),t._v(". Windows, OSX and a few Linux flavors are supported.")]),t._v(" "),e("p",[t._v("We also provide a 1-command installer that should work across\nplatforms:")]),t._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[e("span",{pre:!0,attrs:{class:"token function"}},[t._v("bash")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("curl")]),t._v(" https://www.abs-lang.org/installer.sh"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])])]),e("p",[t._v("and will download the "),e("code",[t._v("abs")]),t._v(" executable in your current\ndirectory -- again, we recommend to move it to your "),e("code",[t._v("$PATH")]),t._v(".")]),t._v(" "),e("p",[t._v("Afterwards, you can run ABS scripts with:")]),t._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[t._v("$ abs path/to/scripts.abs\n")])])]),e("p",[t._v("You can also run an executable abs script directly from bash\nusing a bash shebang line at the top of the script file.")]),t._v(" "),e("p",[t._v("In this example the abs executable is linked to "),e("code",[t._v("/usr/local/bin/abs")]),t._v("\nand the abs script "),e("code",[t._v("~/bin/remote.abs")]),t._v(" has its execute permissions set.")]),t._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[t._v("$ "),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("cat")]),t._v(" ~/bin/hello.abs\n"),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("#! /usr/local/bin/abs")]),t._v("\necho"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),e("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Hello world!"')]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("..")]),t._v(".\n\n"),e("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# the executable abs script above is in the PATH at ~/bin/hello.abs")]),t._v("\n$ hello.abs\nHello world"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\n")])])]),e("p",[t._v("Scripts do not have to have a specific extension,\nalthough it's recommended to use "),e("code",[t._v(".abs")]),t._v(" as a\nconvention: we may reserve some keywords in the\nfuture (such as "),e("code",[t._v("abs version")]),t._v(" or "),e("code",[t._v("abs install")]),t._v(")\nso we recommend to attach an extension to the\nscripts you're trying to run.")]),t._v(" "),e("p",[t._v("A bit lost right now? We'd suggest to clone "),e("a",{attrs:{href:"https://github.com/abs-lang/abs",target:"_blank",rel:"noopener noreferrer"}},[t._v("ABS' main repository"),e("OutboundLink")],1),t._v(" as you can already\nstart testing some code with the scripts in the\n"),e("a",{attrs:{href:"https://github.com/abs-lang/abs/tree/master/examples",target:"_blank",rel:"noopener noreferrer"}},[t._v("examples"),e("OutboundLink")],1),t._v(" directory.")]),t._v(" "),e("h2",{attrs:{id:"repl"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#repl"}},[t._v("#")]),t._v(" REPL")]),t._v(" "),e("p",[t._v("If you want to get a more "),e("em",[t._v("live")]),t._v(" feeling of ABS, you can\nalso simply run the interpreter; without any argument. It\nwill launch ABS' REPL, and you will be able to test code on\nthe fly:")]),t._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[t._v("$ abs\nHello there, welcome to the ABS programming language"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\nType "),e("span",{pre:!0,attrs:{class:"token string"}},[t._v("'quit'")]),t._v(" when you"),e("span",{pre:!0,attrs:{class:"token string"}},[t._v("'re done, '")]),t._v("help' "),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" you get lost"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!")]),t._v("\n⧐ "),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("ip")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token variable"}},[e("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("curl")]),t._v(" icanhazip.com"),e("span",{pre:!0,attrs:{class:"token variable"}},[t._v("`")])]),t._v("\n⧐ ip.ok\n"),e("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("true")]),t._v("\n⧐ ip"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\nERROR: not a function: STRING\n⧐ "),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("ip")]),t._v("\n"),e("span",{pre:!0,attrs:{class:"token number"}},[t._v("94.204")]),t._v(".178.37\n")])])]),e("h2",{attrs:{id:"next"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#next"}},[t._v("#")]),t._v(" Next")]),t._v(" "),e("p",[t._v("That's about it for this section!")]),t._v(" "),e("p",[t._v("You can now head over to try ABS directly in your\nbrowser, on the "),e("a",{attrs:{href:"/playground"}},[t._v("playground")]),t._v("!")])])}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/42.4a01b487.js b/docs/src/.vuepress/dist/assets/js/43.d234e5b4.js similarity index 81% rename from docs/src/.vuepress/dist/assets/js/42.4a01b487.js rename to docs/src/.vuepress/dist/assets/js/43.d234e5b4.js index 369afbf0..866fd371 100644 --- a/docs/src/.vuepress/dist/assets/js/42.4a01b487.js +++ b/docs/src/.vuepress/dist/assets/js/43.d234e5b4.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[42],{541:function(t,n,e){"use strict";e.r(n);var l=e(45),s=Object(l.a)({},(function(){var t=this.$createElement,n=this._self._c||t;return n("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}},[n("ClientOnly",[n("PlayGround")],1)],1)}),[],!1,null,null,null);n.default=s.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[43],{542:function(t,n,e){"use strict";e.r(n);var l=e(45),s=Object(l.a)({},(function(){var t=this.$createElement,n=this._self._c||t;return n("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}},[n("ClientOnly",[n("PlayGround")],1)],1)}),[],!1,null,null,null);n.default=s.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/43.485b553f.js b/docs/src/.vuepress/dist/assets/js/44.851d54d6.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/43.485b553f.js rename to docs/src/.vuepress/dist/assets/js/44.851d54d6.js index ec86cb05..aeade497 100644 --- a/docs/src/.vuepress/dist/assets/js/43.485b553f.js +++ b/docs/src/.vuepress/dist/assets/js/44.851d54d6.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[43],{542:function(e,a,t){"use strict";t.r(a);var s=t(45),n=Object(s.a)({},(function(){var e=this,a=e.$createElement,t=e._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("h1",{attrs:{id:"quickstart"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#quickstart"}},[e._v("#")]),e._v(" Quickstart")]),e._v(" "),t("p",[e._v("In order to run programs written in ABS, you can simply "),t("a",{attrs:{href:"https://github.com/abs-lang/abs/releases",target:"_blank",rel:"noopener noreferrer"}},[e._v("download\nthe latest release from Github"),t("OutboundLink")],1),e._v("\nand dump the executable in your "),t("code",[e._v("PATH")]),e._v(". Windows, OSX and a few Linux flavors are supported.")]),e._v(" "),t("p",[e._v("We also provide a 1-command installer that should work across\nplatforms:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[e._v("bash")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("<")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("(")]),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("curl")]),e._v(" https://www.abs-lang.org/installer.sh"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(")")]),e._v("\n")])])]),t("p",[e._v("and will download the "),t("code",[e._v("abs")]),e._v(" executable in your current\ndirectory -- again, we recommend to move it to your "),t("code",[e._v("$PATH")]),e._v(".")]),e._v(" "),t("p",[e._v("Afterwards, you can run ABS scripts with:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[e._v("$ abs path/to/script.abs\n")])])]),t("p",[e._v("Scripts do not need a specific extension,\nalthough it's recommended to use "),t("code",[e._v(".abs")]),e._v(" as a\nconvention: we may reserve some keywords in the\nfuture (such as "),t("code",[e._v("abs version")]),e._v(" or "),t("code",[e._v("abs install")]),e._v(")\nso we recommend to attach an extension to the\nscripts you're trying to run.")]),e._v(" "),t("h2",{attrs:{id:"repl"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#repl"}},[e._v("#")]),e._v(" REPL")]),e._v(" "),t("p",[e._v('If you want to get a more "live" feeling of ABS, you can\nalso simply run the interpreter; without any argument. It\nwill launch ABS\' REPL, and you will be able to test code on\nthe fly:')]),e._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v("$ abs\nHello there, welcome to the ABS programming language!\nType 'quit' when you're done, 'help' if you get lost!\n\n⧐ ip = `curl icanhazip.com`\n⧐ ip.ok\ntrue\n\n⧐ ip()\nERROR: not a function: STRING\n\n⧐ ip\n94.204.178.37\n")])])]),t("h2",{attrs:{id:"abs-from-bash"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#abs-from-bash"}},[e._v("#")]),e._v(" ABS from bash")]),e._v(" "),t("p",[e._v("You can also run an executable abs script directly from bash\nusing a bash shebang.")]),e._v(" "),t("p",[e._v("In this example the abs executable is linked to "),t("code",[e._v("/usr/local/bin/abs")]),e._v("\nand the script "),t("code",[e._v("~/bin/remote.abs")]),e._v(" is executable ("),t("code",[e._v("chmod +x")]),e._v("):")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[e._v("$ "),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("cat")]),e._v(" ~/bin/hello.abs\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[e._v("#! /usr/local/bin/abs")]),e._v("\necho"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("(")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"Hello world!"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(")")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("..")]),e._v(".\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[e._v("# the executable abs script above is in the PATH at ~/bin/hello.abs")]),e._v("\n$ hello.abs\nHello world"),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("!")]),e._v("\n")])])]),t("h2",{attrs:{id:"explore-the-docs"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#explore-the-docs"}},[e._v("#")]),e._v(" Explore the docs!")]),e._v(" "),t("p",[e._v("A bit lost right now? Here's what we suggest you do:")]),e._v(" "),t("ul",[t("li",[e._v("explore the "),t("a",{attrs:{href:"/docs"}},[e._v("docs")]),e._v(" to learn more about ABS' features")]),e._v(" "),t("li",[e._v("try running some ABS code in our browser-based "),t("a",{attrs:{href:"/playground"}},[e._v("playground")])]),e._v(" "),t("li",[e._v("check some of the "),t("a",{attrs:{href:"https://github.com/abs-lang/abs/tree/master/examples",target:"_blank",rel:"noopener noreferrer"}},[e._v("example scripts"),t("OutboundLink")],1),e._v(" in our official repo")])])])}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[44],{543:function(e,a,t){"use strict";t.r(a);var s=t(45),n=Object(s.a)({},(function(){var e=this,a=e.$createElement,t=e._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("h1",{attrs:{id:"quickstart"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#quickstart"}},[e._v("#")]),e._v(" Quickstart")]),e._v(" "),t("p",[e._v("In order to run programs written in ABS, you can simply "),t("a",{attrs:{href:"https://github.com/abs-lang/abs/releases",target:"_blank",rel:"noopener noreferrer"}},[e._v("download\nthe latest release from Github"),t("OutboundLink")],1),e._v("\nand dump the executable in your "),t("code",[e._v("PATH")]),e._v(". Windows, OSX and a few Linux flavors are supported.")]),e._v(" "),t("p",[e._v("We also provide a 1-command installer that should work across\nplatforms:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[e._v("bash")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("<")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("(")]),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("curl")]),e._v(" https://www.abs-lang.org/installer.sh"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(")")]),e._v("\n")])])]),t("p",[e._v("and will download the "),t("code",[e._v("abs")]),e._v(" executable in your current\ndirectory -- again, we recommend to move it to your "),t("code",[e._v("$PATH")]),e._v(".")]),e._v(" "),t("p",[e._v("Afterwards, you can run ABS scripts with:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[e._v("$ abs path/to/script.abs\n")])])]),t("p",[e._v("Scripts do not need a specific extension,\nalthough it's recommended to use "),t("code",[e._v(".abs")]),e._v(" as a\nconvention: we may reserve some keywords in the\nfuture (such as "),t("code",[e._v("abs version")]),e._v(" or "),t("code",[e._v("abs install")]),e._v(")\nso we recommend to attach an extension to the\nscripts you're trying to run.")]),e._v(" "),t("h2",{attrs:{id:"repl"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#repl"}},[e._v("#")]),e._v(" REPL")]),e._v(" "),t("p",[e._v('If you want to get a more "live" feeling of ABS, you can\nalso simply run the interpreter; without any argument. It\nwill launch ABS\' REPL, and you will be able to test code on\nthe fly:')]),e._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v("$ abs\nHello there, welcome to the ABS programming language!\nType 'quit' when you're done, 'help' if you get lost!\n\n⧐ ip = `curl icanhazip.com`\n⧐ ip.ok\ntrue\n\n⧐ ip()\nERROR: not a function: STRING\n\n⧐ ip\n94.204.178.37\n")])])]),t("h2",{attrs:{id:"abs-from-bash"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#abs-from-bash"}},[e._v("#")]),e._v(" ABS from bash")]),e._v(" "),t("p",[e._v("You can also run an executable abs script directly from bash\nusing a bash shebang.")]),e._v(" "),t("p",[e._v("In this example the abs executable is linked to "),t("code",[e._v("/usr/local/bin/abs")]),e._v("\nand the script "),t("code",[e._v("~/bin/remote.abs")]),e._v(" is executable ("),t("code",[e._v("chmod +x")]),e._v("):")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[e._v("$ "),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("cat")]),e._v(" ~/bin/hello.abs\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[e._v("#! /usr/local/bin/abs")]),e._v("\necho"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("(")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"Hello world!"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(")")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("..")]),e._v(".\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[e._v("# the executable abs script above is in the PATH at ~/bin/hello.abs")]),e._v("\n$ hello.abs\nHello world"),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("!")]),e._v("\n")])])]),t("h2",{attrs:{id:"explore-the-docs"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#explore-the-docs"}},[e._v("#")]),e._v(" Explore the docs!")]),e._v(" "),t("p",[e._v("A bit lost right now? Here's what we suggest you do:")]),e._v(" "),t("ul",[t("li",[e._v("explore the "),t("a",{attrs:{href:"/docs"}},[e._v("docs")]),e._v(" to learn more about ABS' features")]),e._v(" "),t("li",[e._v("try running some ABS code in our browser-based "),t("a",{attrs:{href:"/playground"}},[e._v("playground")])]),e._v(" "),t("li",[e._v("check some of the "),t("a",{attrs:{href:"https://github.com/abs-lang/abs/tree/master/examples",target:"_blank",rel:"noopener noreferrer"}},[e._v("example scripts"),t("OutboundLink")],1),e._v(" in our official repo")])])])}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/44.bee8c0ac.js b/docs/src/.vuepress/dist/assets/js/45.489bbb74.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/44.bee8c0ac.js rename to docs/src/.vuepress/dist/assets/js/45.489bbb74.js index 99a8f06f..e231b1a9 100644 --- a/docs/src/.vuepress/dist/assets/js/44.bee8c0ac.js +++ b/docs/src/.vuepress/dist/assets/js/45.489bbb74.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[44],{444:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return o})),t.d(n,"language",(function(){return i}));var o={comments:{lineComment:"*"},brackets:[["[","]"],["(",")"]]},i={defaultToken:"invalid",ignoreCase:!0,tokenPostfix:".abap",keywords:["abstract","add","add-corresponding","adjacent","alias","aliases","all","append","appending","ascending","as","assert","assign","assigned","assigning","association","authority-check","back","begin","binary","block","bound","break-point","by","byte","class","call","cast","changing","check","class-data","class-method","class-methods","clear","close","cnt","collect","commit","cond","character","corresponding","communication","component","compute","concatenate","condense","constants","conv","count","controls","convert","create","currency","data","descending","default","define","deferred","delete","describe","detail","display","divide","divide-corresponding","display-mode","duplicates","deleting","editor-call","end","endexec","endfunction","ending","endmodule","end-of-definition","end-of-page","end-of-selection","end-test-injection","end-test-seam","exit-command","endclass","endmethod","endform","endinterface","endprovide","endselect","endtry","endwhile","enum","event","events","exec","exit","export","exporting","extract","exception","exceptions","field-symbols","field-groups","field","first","fetch","fields","format","frame","free","from","function","find","for","found","function-pool","generate","get","handle","hide","hashed","include","import","importing","index","infotypes","initial","initialization","id","is","in","interface","interfaces","init","input","insert","instance","into","key","left-justified","leave","like","line","line-count","line-size","load","local","log-point","length","left","leading","lower","matchcode","method","mesh","message","message-id","methods","modify","module","move","move-corresponding","multiply","multiply-corresponding","match","new","new-line","new-page","new-section","next","no","no-gap","no-gaps","no-sign","no-zero","non-unique","number","occurrence","object","obligatory","of","output","overlay","optional","others","occurrences","occurs","offset","options","pack","parameters","perform","places","position","print-control","private","program","protected","provide","public","put","radiobutton","raising","ranges","receive","receiving","redefinition","reduce","reference","refresh","regex","reject","results","requested","ref","replace","report","reserve","restore","result","return","returning","right-justified","rollback","read","read-only","rp-provide-from-last","run","scan","screen","scroll","search","select","select-options","selection-screen","stamp","source","subkey","separated","set","shift","single","skip","sort","sorted","split","standard","stamp","starting","start-of-selection","sum","subtract-corresponding","statics","step","stop","structure","submatches","submit","subtract","summary","supplied","suppress","section","syntax-check","syntax-trace","system-call","switch","tables","table","task","testing","test-seam","test-injection","then","time","times","title","titlebar","to","top-of-page","trailing","transfer","transformation","translate","transporting","types","type","type-pool","type-pools","unassign","unique","uline","unpack","update","upper","using","value","when","while","window","write","where","with","work","at","case","catch","continue","do","elseif","else","endat","endcase","enddo","endif","endloop","endon","if","loop","on","raise","try","abs","sign","ceil","floor","trunc","frac","acos","asin","atan","cos","sin","tan","cosh","sinh","tanh","exp","log","log10","sqrt","strlen","xstrlen","charlen","lines","numofchar","dbmaxlen","round","rescale","nmax","nmin","cmax","cmin","boolc","boolx","xsdbool","contains","contains_any_of","contains_any_not_of","matches","line_exists","ipow","char_off","count","count_any_of","count_any_not_of","distance","condense","concat_lines_of","escape","find","find_end","find_any_of","find_any_not_of","insert","match","repeat","replace","reverse","segment","shift_left","shift_right","substring","substring_after","substring_from","substring_before","substring_to","to_upper","to_lower","to_mixed","from_mixed","translate","bit-set","line_index","definition","implementation","public","inheriting","final"],typeKeywords:["abap_bool","string","xstring","any","clike","csequence","numeric","xsequence","c","n","i","p","f","d","t","x"],operators:["+","-","/","*","=","<",">","<=",">=","<>","><","=<","=>","EQ","NE","GE","LE","CS","CN","CA","CO","CP","NS","NA","NP"],symbols:/[=><!~?&+\-*\/\^%]+/,tokenizer:{root:[[/[a-z_$][\w$]*/,{cases:{"@typeKeywords":"keyword","@keywords":"keyword","@default":"identifier"}}],{include:"@whitespace"},[/[:,.]/,"delimiter"],[/[{}()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":""}}],[/'/,{token:"string",bracket:"@open",next:"@stringquote"}],[/\|/,{token:"string",bracket:"@open",next:"@stringtemplate"}],[/\d+/,"number"]],stringtemplate:[[/[^\\\|]+/,"string"],[/\\\|/,"string"],[/\|/,{token:"string",bracket:"@close",next:"@pop"}]],stringquote:[[/[^\\']+/,"string"],[/'/,{token:"string",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,""],[/^\*.*$/,"comment"],[/\".*$/,"comment"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[45],{444:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return o})),t.d(n,"language",(function(){return i}));var o={comments:{lineComment:"*"},brackets:[["[","]"],["(",")"]]},i={defaultToken:"invalid",ignoreCase:!0,tokenPostfix:".abap",keywords:["abstract","add","add-corresponding","adjacent","alias","aliases","all","append","appending","ascending","as","assert","assign","assigned","assigning","association","authority-check","back","begin","binary","block","bound","break-point","by","byte","class","call","cast","changing","check","class-data","class-method","class-methods","clear","close","cnt","collect","commit","cond","character","corresponding","communication","component","compute","concatenate","condense","constants","conv","count","controls","convert","create","currency","data","descending","default","define","deferred","delete","describe","detail","display","divide","divide-corresponding","display-mode","duplicates","deleting","editor-call","end","endexec","endfunction","ending","endmodule","end-of-definition","end-of-page","end-of-selection","end-test-injection","end-test-seam","exit-command","endclass","endmethod","endform","endinterface","endprovide","endselect","endtry","endwhile","enum","event","events","exec","exit","export","exporting","extract","exception","exceptions","field-symbols","field-groups","field","first","fetch","fields","format","frame","free","from","function","find","for","found","function-pool","generate","get","handle","hide","hashed","include","import","importing","index","infotypes","initial","initialization","id","is","in","interface","interfaces","init","input","insert","instance","into","key","left-justified","leave","like","line","line-count","line-size","load","local","log-point","length","left","leading","lower","matchcode","method","mesh","message","message-id","methods","modify","module","move","move-corresponding","multiply","multiply-corresponding","match","new","new-line","new-page","new-section","next","no","no-gap","no-gaps","no-sign","no-zero","non-unique","number","occurrence","object","obligatory","of","output","overlay","optional","others","occurrences","occurs","offset","options","pack","parameters","perform","places","position","print-control","private","program","protected","provide","public","put","radiobutton","raising","ranges","receive","receiving","redefinition","reduce","reference","refresh","regex","reject","results","requested","ref","replace","report","reserve","restore","result","return","returning","right-justified","rollback","read","read-only","rp-provide-from-last","run","scan","screen","scroll","search","select","select-options","selection-screen","stamp","source","subkey","separated","set","shift","single","skip","sort","sorted","split","standard","stamp","starting","start-of-selection","sum","subtract-corresponding","statics","step","stop","structure","submatches","submit","subtract","summary","supplied","suppress","section","syntax-check","syntax-trace","system-call","switch","tables","table","task","testing","test-seam","test-injection","then","time","times","title","titlebar","to","top-of-page","trailing","transfer","transformation","translate","transporting","types","type","type-pool","type-pools","unassign","unique","uline","unpack","update","upper","using","value","when","while","window","write","where","with","work","at","case","catch","continue","do","elseif","else","endat","endcase","enddo","endif","endloop","endon","if","loop","on","raise","try","abs","sign","ceil","floor","trunc","frac","acos","asin","atan","cos","sin","tan","cosh","sinh","tanh","exp","log","log10","sqrt","strlen","xstrlen","charlen","lines","numofchar","dbmaxlen","round","rescale","nmax","nmin","cmax","cmin","boolc","boolx","xsdbool","contains","contains_any_of","contains_any_not_of","matches","line_exists","ipow","char_off","count","count_any_of","count_any_not_of","distance","condense","concat_lines_of","escape","find","find_end","find_any_of","find_any_not_of","insert","match","repeat","replace","reverse","segment","shift_left","shift_right","substring","substring_after","substring_from","substring_before","substring_to","to_upper","to_lower","to_mixed","from_mixed","translate","bit-set","line_index","definition","implementation","public","inheriting","final"],typeKeywords:["abap_bool","string","xstring","any","clike","csequence","numeric","xsequence","c","n","i","p","f","d","t","x"],operators:["+","-","/","*","=","<",">","<=",">=","<>","><","=<","=>","EQ","NE","GE","LE","CS","CN","CA","CO","CP","NS","NA","NP"],symbols:/[=><!~?&+\-*\/\^%]+/,tokenizer:{root:[[/[a-z_$][\w$]*/,{cases:{"@typeKeywords":"keyword","@keywords":"keyword","@default":"identifier"}}],{include:"@whitespace"},[/[:,.]/,"delimiter"],[/[{}()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":""}}],[/'/,{token:"string",bracket:"@open",next:"@stringquote"}],[/\|/,{token:"string",bracket:"@open",next:"@stringtemplate"}],[/\d+/,"number"]],stringtemplate:[[/[^\\\|]+/,"string"],[/\\\|/,"string"],[/\|/,{token:"string",bracket:"@close",next:"@pop"}]],stringquote:[[/[^\\']+/,"string"],[/'/,{token:"string",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,""],[/^\*.*$/,"comment"],[/\".*$/,"comment"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/45.5a96c426.js b/docs/src/.vuepress/dist/assets/js/46.8d20f0df.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/45.5a96c426.js rename to docs/src/.vuepress/dist/assets/js/46.8d20f0df.js index 34dcbe68..9c04662d 100644 --- a/docs/src/.vuepress/dist/assets/js/45.5a96c426.js +++ b/docs/src/.vuepress/dist/assets/js/46.8d20f0df.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[45],{445:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return o})),n.d(t,"language",(function(){return i}));var o={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],folding:{markers:{start:new RegExp("^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))"),end:new RegExp("^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))")}}},s=[];["abstract","activate","and","any","array","as","asc","assert","autonomous","begin","bigdecimal","blob","boolean","break","bulk","by","case","cast","catch","char","class","collect","commit","const","continue","convertcurrency","decimal","default","delete","desc","do","double","else","end","enum","exception","exit","export","extends","false","final","finally","float","for","from","future","get","global","goto","group","having","hint","if","implements","import","in","inner","insert","instanceof","int","interface","into","join","last_90_days","last_month","last_n_days","last_week","like","limit","list","long","loop","map","merge","native","new","next_90_days","next_month","next_n_days","next_week","not","null","nulls","number","object","of","on","or","outer","override","package","parallel","pragma","private","protected","public","retrieve","return","returning","rollback","savepoint","search","select","set","short","sort","stat","static","strictfp","super","switch","synchronized","system","testmethod","then","this","this_month","this_week","throw","throws","today","tolabel","tomorrow","transaction","transient","trigger","true","try","type","undelete","update","upsert","using","virtual","void","volatile","webservice","when","where","while","yesterday"].forEach((function(e){s.push(e),s.push(e.toUpperCase()),s.push(function(e){return e.charAt(0).toUpperCase()+e.substr(1)}(e))}));var i={defaultToken:"",tokenPostfix:".apex",keywords:s,operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,tokenizer:{root:[[/[a-z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],[/[A-Z][\w\$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"type.identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,"annotation"],[/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)[fFdD]/,"number.float"],[/(@digits)[lL]?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@apexdoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],apexdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[46],{445:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return o})),n.d(t,"language",(function(){return i}));var o={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],folding:{markers:{start:new RegExp("^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))"),end:new RegExp("^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))")}}},s=[];["abstract","activate","and","any","array","as","asc","assert","autonomous","begin","bigdecimal","blob","boolean","break","bulk","by","case","cast","catch","char","class","collect","commit","const","continue","convertcurrency","decimal","default","delete","desc","do","double","else","end","enum","exception","exit","export","extends","false","final","finally","float","for","from","future","get","global","goto","group","having","hint","if","implements","import","in","inner","insert","instanceof","int","interface","into","join","last_90_days","last_month","last_n_days","last_week","like","limit","list","long","loop","map","merge","native","new","next_90_days","next_month","next_n_days","next_week","not","null","nulls","number","object","of","on","or","outer","override","package","parallel","pragma","private","protected","public","retrieve","return","returning","rollback","savepoint","search","select","set","short","sort","stat","static","strictfp","super","switch","synchronized","system","testmethod","then","this","this_month","this_week","throw","throws","today","tolabel","tomorrow","transaction","transient","trigger","true","try","type","undelete","update","upsert","using","virtual","void","volatile","webservice","when","where","while","yesterday"].forEach((function(e){s.push(e),s.push(e.toUpperCase()),s.push(function(e){return e.charAt(0).toUpperCase()+e.substr(1)}(e))}));var i={defaultToken:"",tokenPostfix:".apex",keywords:s,operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,tokenizer:{root:[[/[a-z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],[/[A-Z][\w\$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"type.identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,"annotation"],[/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)[fFdD]/,"number.float"],[/(@digits)[lL]?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@apexdoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],apexdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/46.3f95d133.js b/docs/src/.vuepress/dist/assets/js/47.5b9c6a01.js similarity index 92% rename from docs/src/.vuepress/dist/assets/js/46.3f95d133.js rename to docs/src/.vuepress/dist/assets/js/47.5b9c6a01.js index 7c287481..5ac6ed4b 100644 --- a/docs/src/.vuepress/dist/assets/js/46.3f95d133.js +++ b/docs/src/.vuepress/dist/assets/js/47.5b9c6a01.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[46],{446:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return o})),n.d(t,"language",(function(){return s}));var o={comments:{lineComment:"#"}},s={defaultToken:"keyword",ignoreCase:!0,tokenPostfix:".azcli",str:/[^#\s]/,tokenizer:{root:[{include:"@comment"},[/\s-+@str*\s*/,{cases:{"@eos":{token:"key.identifier",next:"@popall"},"@default":{token:"key.identifier",next:"@type"}}}],[/^-+@str*\s*/,{cases:{"@eos":{token:"key.identifier",next:"@popall"},"@default":{token:"key.identifier",next:"@type"}}}]],type:[{include:"@comment"},[/-+@str*\s*/,{cases:{"@eos":{token:"key.identifier",next:"@popall"},"@default":"key.identifier"}}],[/@str+\s*/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}]],comment:[[/#.*$/,{cases:{"@eos":{token:"comment",next:"@popall"}}}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[47],{446:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return o})),n.d(t,"language",(function(){return s}));var o={comments:{lineComment:"#"}},s={defaultToken:"keyword",ignoreCase:!0,tokenPostfix:".azcli",str:/[^#\s]/,tokenizer:{root:[{include:"@comment"},[/\s-+@str*\s*/,{cases:{"@eos":{token:"key.identifier",next:"@popall"},"@default":{token:"key.identifier",next:"@type"}}}],[/^-+@str*\s*/,{cases:{"@eos":{token:"key.identifier",next:"@popall"},"@default":{token:"key.identifier",next:"@type"}}}]],type:[{include:"@comment"},[/-+@str*\s*/,{cases:{"@eos":{token:"key.identifier",next:"@popall"},"@default":"key.identifier"}}],[/@str+\s*/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}]],comment:[[/#.*$/,{cases:{"@eos":{token:"comment",next:"@popall"}}}]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/47.0cdb1e5d.js b/docs/src/.vuepress/dist/assets/js/48.55905f59.js similarity index 96% rename from docs/src/.vuepress/dist/assets/js/47.0cdb1e5d.js rename to docs/src/.vuepress/dist/assets/js/48.55905f59.js index ea38aba9..c0ab310c 100644 --- a/docs/src/.vuepress/dist/assets/js/47.0cdb1e5d.js +++ b/docs/src/.vuepress/dist/assets/js/48.55905f59.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[47],{447:function(e,s,o){"use strict";o.r(s),o.d(s,"conf",(function(){return n})),o.d(s,"language",(function(){return t}));var n={comments:{lineComment:"REM"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],folding:{markers:{start:new RegExp("^\\s*(::\\s*|REM\\s+)#region"),end:new RegExp("^\\s*(::\\s*|REM\\s+)#endregion")}}},t={defaultToken:"",ignoreCase:!0,tokenPostfix:".bat",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:/call|defined|echo|errorlevel|exist|for|goto|if|pause|set|shift|start|title|not|pushd|popd/,symbols:/[=><!~?&|+\-*\/\^;\.,]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/^(\s*)(rem(?:\s.*|))$/,["","comment"]],[/(\@?)(@keywords)(?!\w)/,[{token:"keyword"},{token:"keyword.$2"}]],[/[ \t\r\n]+/,""],[/setlocal(?!\w)/,"keyword.tag-setlocal"],[/endlocal(?!\w)/,"keyword.tag-setlocal"],[/[a-zA-Z_]\w*/,""],[/:\w*/,"metatag"],[/%[^%]+%/,"variable"],[/%%[\w]+(?!\w)/,"variable"],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],string:[[/[^\\"'%]+/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/%[\w ]+%/,"variable"],[/%%[\w]+(?!\w)/,"variable"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/$/,"string","@popall"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[48],{447:function(e,s,o){"use strict";o.r(s),o.d(s,"conf",(function(){return n})),o.d(s,"language",(function(){return t}));var n={comments:{lineComment:"REM"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],folding:{markers:{start:new RegExp("^\\s*(::\\s*|REM\\s+)#region"),end:new RegExp("^\\s*(::\\s*|REM\\s+)#endregion")}}},t={defaultToken:"",ignoreCase:!0,tokenPostfix:".bat",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:/call|defined|echo|errorlevel|exist|for|goto|if|pause|set|shift|start|title|not|pushd|popd/,symbols:/[=><!~?&|+\-*\/\^;\.,]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/^(\s*)(rem(?:\s.*|))$/,["","comment"]],[/(\@?)(@keywords)(?!\w)/,[{token:"keyword"},{token:"keyword.$2"}]],[/[ \t\r\n]+/,""],[/setlocal(?!\w)/,"keyword.tag-setlocal"],[/endlocal(?!\w)/,"keyword.tag-setlocal"],[/[a-zA-Z_]\w*/,""],[/:\w*/,"metatag"],[/%[^%]+%/,"variable"],[/%%[\w]+(?!\w)/,"variable"],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],string:[[/[^\\"'%]+/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/%[\w ]+%/,"variable"],[/%%[\w]+(?!\w)/,"variable"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/$/,"string","@popall"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/48.03e739e7.js b/docs/src/.vuepress/dist/assets/js/49.74e156a3.js similarity index 96% rename from docs/src/.vuepress/dist/assets/js/48.03e739e7.js rename to docs/src/.vuepress/dist/assets/js/49.74e156a3.js index 7ca3caae..64c8059c 100644 --- a/docs/src/.vuepress/dist/assets/js/48.03e739e7.js +++ b/docs/src/.vuepress/dist/assets/js/49.74e156a3.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[48],{448:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return o})),t.d(n,"language",(function(){return s}));var o={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".cameligo",ignoreCase:!0,brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["abs","begin","Bytes","Crypto","Current","else","end","failwith","false","fun","if","in","let","let%entry","let%init","List","list","Map","map","match","match%nat","mod","not","operation","Operation","of","Set","set","sender","source","String","then","true","type","with"],typeKeywords:["int","unit","string","tz"],operators:["=",">","<","<=",">=","<>",":",":=","and","mod","or","+","-","*","/","@","&","^","%","->","<-"],symbols:/[=><:@\^&|+\-*\/\^%]+/,tokenizer:{root:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\$[0-9a-fA-F]{1,16}/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'/,"string","@string"],[/'[^\\']'/,"string"],[/'/,"string.invalid"],[/\#\d+/,"string"]],comment:[[/[^\(\*]+/,"comment"],[/\*\)/,"comment","@pop"],[/\(\*/,"comment"]],string:[[/[^\\']+/,"string"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\(\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[49],{448:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return o})),t.d(n,"language",(function(){return s}));var o={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".cameligo",ignoreCase:!0,brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["abs","begin","Bytes","Crypto","Current","else","end","failwith","false","fun","if","in","let","let%entry","let%init","List","list","Map","map","match","match%nat","mod","not","operation","Operation","of","Set","set","sender","source","String","then","true","type","with"],typeKeywords:["int","unit","string","tz"],operators:["=",">","<","<=",">=","<>",":",":=","and","mod","or","+","-","*","/","@","&","^","%","->","<-"],symbols:/[=><:@\^&|+\-*\/\^%]+/,tokenizer:{root:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\$[0-9a-fA-F]{1,16}/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'/,"string","@string"],[/'[^\\']'/,"string"],[/'/,"string.invalid"],[/\#\d+/,"string"]],comment:[[/[^\(\*]+/,"comment"],[/\*\)/,"comment","@pop"],[/\(\*/,"comment"]],string:[[/[^\\']+/,"string"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\(\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/5.502fc703.js b/docs/src/.vuepress/dist/assets/js/5.a310200e.js similarity index 87% rename from docs/src/.vuepress/dist/assets/js/5.502fc703.js rename to docs/src/.vuepress/dist/assets/js/5.a310200e.js index 7da2b501..bf2594a5 100644 --- a/docs/src/.vuepress/dist/assets/js/5.502fc703.js +++ b/docs/src/.vuepress/dist/assets/js/5.a310200e.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[5],{332:function(t,e,n){},439:function(t,e,n){"use strict";n(332)},543:function(t,e,n){"use strict";n.r(e);var i={functional:!0,props:{type:{type:String,default:"tip"},text:String,vertical:{type:String,default:"top"}},render:function(t,e){var n=e.props,i=e.slots;return t("span",{class:["badge",n.type],style:{verticalAlign:n.vertical}},n.text||i().default)}},r=(n(439),n(45)),p=Object(r.a)(i,void 0,void 0,!1,null,"15b7b770",null);e.default=p.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[5],{332:function(t,e,n){},439:function(t,e,n){"use strict";n(332)},544:function(t,e,n){"use strict";n.r(e);var i={functional:!0,props:{type:{type:String,default:"tip"},text:String,vertical:{type:String,default:"top"}},render:function(t,e){var n=e.props,i=e.slots;return t("span",{class:["badge",n.type],style:{verticalAlign:n.vertical}},n.text||i().default)}},r=(n(439),n(45)),p=Object(r.a)(i,void 0,void 0,!1,null,"15b7b770",null);e.default=p.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/49.2d752ee1.js b/docs/src/.vuepress/dist/assets/js/50.f34e624c.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/49.2d752ee1.js rename to docs/src/.vuepress/dist/assets/js/50.f34e624c.js index 7f0a0f77..c3787c9d 100644 --- a/docs/src/.vuepress/dist/assets/js/49.2d752ee1.js +++ b/docs/src/.vuepress/dist/assets/js/50.f34e624c.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[49],{449:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return r})),n.d(t,"language",(function(){return s}));var r={comments:{lineComment:";;"},brackets:[["[","]"],["(",")"],["{","}"]],autoClosingPairs:[{open:"[",close:"]"},{open:'"',close:'"'},{open:"(",close:")"},{open:"{",close:"}"}],surroundingPairs:[{open:"[",close:"]"},{open:'"',close:'"'},{open:"(",close:")"},{open:"{",close:"}"}]},s={defaultToken:"",ignoreCase:!0,tokenPostfix:".clj",brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"}],constants:["true","false","nil"],numbers:/^(?:[+\-]?\d+(?:(?:N|(?:[eE][+\-]?\d+))|(?:\.?\d*(?:M|(?:[eE][+\-]?\d+))?)|\/\d+|[xX][0-9a-fA-F]+|r[0-9a-zA-Z]+)?(?=[\\\[\]\s"#'(),;@^`{}~]|$))/,characters:/^(?:\\(?:backspace|formfeed|newline|return|space|tab|o[0-7]{3}|u[0-9A-Fa-f]{4}|x[0-9A-Fa-f]{4}|.)?(?=[\\\[\]\s"(),;@^`{}~]|$))/,escapes:/^\\(?:["'\\bfnrt]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,qualifiedSymbols:/^(?:(?:[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*(?:\.[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*)*\/)?(?:\/|[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*)*(?=[\\\[\]\s"(),;@^`{}~]|$))/,specialForms:[".","catch","def","do","if","monitor-enter","monitor-exit","new","quote","recur","set!","throw","try","var"],coreSymbols:["*","*'","*1","*2","*3","*agent*","*allow-unresolved-vars*","*assert*","*clojure-version*","*command-line-args*","*compile-files*","*compile-path*","*compiler-options*","*data-readers*","*default-data-reader-fn*","*e","*err*","*file*","*flush-on-newline*","*fn-loader*","*in*","*math-context*","*ns*","*out*","*print-dup*","*print-length*","*print-level*","*print-meta*","*print-namespace-maps*","*print-readably*","*read-eval*","*reader-resolver*","*source-path*","*suppress-read*","*unchecked-math*","*use-context-classloader*","*verbose-defrecords*","*warn-on-reflection*","+","+'","-","-'","->","->>","->ArrayChunk","->Eduction","->Vec","->VecNode","->VecSeq","-cache-protocol-fn","-reset-methods","..","/","<","<=","=","==",">",">=","EMPTY-NODE","Inst","StackTraceElement->vec","Throwable->map","accessor","aclone","add-classpath","add-watch","agent","agent-error","agent-errors","aget","alength","alias","all-ns","alter","alter-meta!","alter-var-root","amap","ancestors","and","any?","apply","areduce","array-map","as->","aset","aset-boolean","aset-byte","aset-char","aset-double","aset-float","aset-int","aset-long","aset-short","assert","assoc","assoc!","assoc-in","associative?","atom","await","await-for","await1","bases","bean","bigdec","bigint","biginteger","binding","bit-and","bit-and-not","bit-clear","bit-flip","bit-not","bit-or","bit-set","bit-shift-left","bit-shift-right","bit-test","bit-xor","boolean","boolean-array","boolean?","booleans","bound-fn","bound-fn*","bound?","bounded-count","butlast","byte","byte-array","bytes","bytes?","case","cast","cat","char","char-array","char-escape-string","char-name-string","char?","chars","chunk","chunk-append","chunk-buffer","chunk-cons","chunk-first","chunk-next","chunk-rest","chunked-seq?","class","class?","clear-agent-errors","clojure-version","coll?","comment","commute","comp","comparator","compare","compare-and-set!","compile","complement","completing","concat","cond","cond->","cond->>","condp","conj","conj!","cons","constantly","construct-proxy","contains?","count","counted?","create-ns","create-struct","cycle","dec","dec'","decimal?","declare","dedupe","default-data-readers","definline","definterface","defmacro","defmethod","defmulti","defn","defn-","defonce","defprotocol","defrecord","defstruct","deftype","delay","delay?","deliver","denominator","deref","derive","descendants","destructure","disj","disj!","dissoc","dissoc!","distinct","distinct?","doall","dorun","doseq","dosync","dotimes","doto","double","double-array","double?","doubles","drop","drop-last","drop-while","eduction","empty","empty?","ensure","ensure-reduced","enumeration-seq","error-handler","error-mode","eval","even?","every-pred","every?","ex-data","ex-info","extend","extend-protocol","extend-type","extenders","extends?","false?","ffirst","file-seq","filter","filterv","find","find-keyword","find-ns","find-protocol-impl","find-protocol-method","find-var","first","flatten","float","float-array","float?","floats","flush","fn","fn?","fnext","fnil","for","force","format","frequencies","future","future-call","future-cancel","future-cancelled?","future-done?","future?","gen-class","gen-interface","gensym","get","get-in","get-method","get-proxy-class","get-thread-bindings","get-validator","group-by","halt-when","hash","hash-combine","hash-map","hash-ordered-coll","hash-set","hash-unordered-coll","ident?","identical?","identity","if-let","if-not","if-some","ifn?","import","in-ns","inc","inc'","indexed?","init-proxy","inst-ms","inst-ms*","inst?","instance?","int","int-array","int?","integer?","interleave","intern","interpose","into","into-array","ints","io!","isa?","iterate","iterator-seq","juxt","keep","keep-indexed","key","keys","keyword","keyword?","last","lazy-cat","lazy-seq","let","letfn","line-seq","list","list*","list?","load","load-file","load-reader","load-string","loaded-libs","locking","long","long-array","longs","loop","macroexpand","macroexpand-1","make-array","make-hierarchy","map","map-entry?","map-indexed","map?","mapcat","mapv","max","max-key","memfn","memoize","merge","merge-with","meta","method-sig","methods","min","min-key","mix-collection-hash","mod","munge","name","namespace","namespace-munge","nat-int?","neg-int?","neg?","newline","next","nfirst","nil?","nnext","not","not-any?","not-empty","not-every?","not=","ns","ns-aliases","ns-imports","ns-interns","ns-map","ns-name","ns-publics","ns-refers","ns-resolve","ns-unalias","ns-unmap","nth","nthnext","nthrest","num","number?","numerator","object-array","odd?","or","parents","partial","partition","partition-all","partition-by","pcalls","peek","persistent!","pmap","pop","pop!","pop-thread-bindings","pos-int?","pos?","pr","pr-str","prefer-method","prefers","primitives-classnames","print","print-ctor","print-dup","print-method","print-simple","print-str","printf","println","println-str","prn","prn-str","promise","proxy","proxy-call-with-super","proxy-mappings","proxy-name","proxy-super","push-thread-bindings","pvalues","qualified-ident?","qualified-keyword?","qualified-symbol?","quot","rand","rand-int","rand-nth","random-sample","range","ratio?","rational?","rationalize","re-find","re-groups","re-matcher","re-matches","re-pattern","re-seq","read","read-line","read-string","reader-conditional","reader-conditional?","realized?","record?","reduce","reduce-kv","reduced","reduced?","reductions","ref","ref-history-count","ref-max-history","ref-min-history","ref-set","refer","refer-clojure","reify","release-pending-sends","rem","remove","remove-all-methods","remove-method","remove-ns","remove-watch","repeat","repeatedly","replace","replicate","require","reset!","reset-meta!","reset-vals!","resolve","rest","restart-agent","resultset-seq","reverse","reversible?","rseq","rsubseq","run!","satisfies?","second","select-keys","send","send-off","send-via","seq","seq?","seqable?","seque","sequence","sequential?","set","set-agent-send-executor!","set-agent-send-off-executor!","set-error-handler!","set-error-mode!","set-validator!","set?","short","short-array","shorts","shuffle","shutdown-agents","simple-ident?","simple-keyword?","simple-symbol?","slurp","some","some->","some->>","some-fn","some?","sort","sort-by","sorted-map","sorted-map-by","sorted-set","sorted-set-by","sorted?","special-symbol?","spit","split-at","split-with","str","string?","struct","struct-map","subs","subseq","subvec","supers","swap!","swap-vals!","symbol","symbol?","sync","tagged-literal","tagged-literal?","take","take-last","take-nth","take-while","test","the-ns","thread-bound?","time","to-array","to-array-2d","trampoline","transduce","transient","tree-seq","true?","type","unchecked-add","unchecked-add-int","unchecked-byte","unchecked-char","unchecked-dec","unchecked-dec-int","unchecked-divide-int","unchecked-double","unchecked-float","unchecked-inc","unchecked-inc-int","unchecked-int","unchecked-long","unchecked-multiply","unchecked-multiply-int","unchecked-negate","unchecked-negate-int","unchecked-remainder-int","unchecked-short","unchecked-subtract","unchecked-subtract-int","underive","unquote","unquote-splicing","unreduced","unsigned-bit-shift-right","update","update-in","update-proxy","uri?","use","uuid?","val","vals","var-get","var-set","var?","vary-meta","vec","vector","vector-of","vector?","volatile!","volatile?","vreset!","vswap!","when","when-first","when-let","when-not","when-some","while","with-bindings","with-bindings*","with-in-str","with-loading-context","with-local-vars","with-meta","with-open","with-out-str","with-precision","with-redefs","with-redefs-fn","xml-seq","zero?","zipmap"],tokenizer:{root:[{include:"@whitespace"},[/@numbers/,"number"],[/@characters/,"string"],{include:"@string"},[/[()\[\]{}]/,"@brackets"],[/\/#"(?:\.|(?:")|[^"\n])*"\/g/,"regexp"],[/[#'@^`~]/,"meta"],[/@qualifiedSymbols/,{cases:{"^:.+$":"constant","@specialForms":"keyword","@coreSymbols":"keyword","@constants":"constant","@default":"identifier"}}]],whitespace:[[/[\s,]+/,"white"],[/;.*$/,"comment"],[/\(comment\b/,"comment","@comment"]],comment:[[/\(/,"comment","@push"],[/\)/,"comment","@pop"],[/[^()]/,"comment"]],string:[[/"/,"string","@multiLineString"]],multiLineString:[[/"/,"string","@popall"],[/@escapes/,"string.escape"],[/./,"string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[50],{449:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return r})),n.d(t,"language",(function(){return s}));var r={comments:{lineComment:";;"},brackets:[["[","]"],["(",")"],["{","}"]],autoClosingPairs:[{open:"[",close:"]"},{open:'"',close:'"'},{open:"(",close:")"},{open:"{",close:"}"}],surroundingPairs:[{open:"[",close:"]"},{open:'"',close:'"'},{open:"(",close:")"},{open:"{",close:"}"}]},s={defaultToken:"",ignoreCase:!0,tokenPostfix:".clj",brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"}],constants:["true","false","nil"],numbers:/^(?:[+\-]?\d+(?:(?:N|(?:[eE][+\-]?\d+))|(?:\.?\d*(?:M|(?:[eE][+\-]?\d+))?)|\/\d+|[xX][0-9a-fA-F]+|r[0-9a-zA-Z]+)?(?=[\\\[\]\s"#'(),;@^`{}~]|$))/,characters:/^(?:\\(?:backspace|formfeed|newline|return|space|tab|o[0-7]{3}|u[0-9A-Fa-f]{4}|x[0-9A-Fa-f]{4}|.)?(?=[\\\[\]\s"(),;@^`{}~]|$))/,escapes:/^\\(?:["'\\bfnrt]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,qualifiedSymbols:/^(?:(?:[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*(?:\.[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*)*\/)?(?:\/|[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*)*(?=[\\\[\]\s"(),;@^`{}~]|$))/,specialForms:[".","catch","def","do","if","monitor-enter","monitor-exit","new","quote","recur","set!","throw","try","var"],coreSymbols:["*","*'","*1","*2","*3","*agent*","*allow-unresolved-vars*","*assert*","*clojure-version*","*command-line-args*","*compile-files*","*compile-path*","*compiler-options*","*data-readers*","*default-data-reader-fn*","*e","*err*","*file*","*flush-on-newline*","*fn-loader*","*in*","*math-context*","*ns*","*out*","*print-dup*","*print-length*","*print-level*","*print-meta*","*print-namespace-maps*","*print-readably*","*read-eval*","*reader-resolver*","*source-path*","*suppress-read*","*unchecked-math*","*use-context-classloader*","*verbose-defrecords*","*warn-on-reflection*","+","+'","-","-'","->","->>","->ArrayChunk","->Eduction","->Vec","->VecNode","->VecSeq","-cache-protocol-fn","-reset-methods","..","/","<","<=","=","==",">",">=","EMPTY-NODE","Inst","StackTraceElement->vec","Throwable->map","accessor","aclone","add-classpath","add-watch","agent","agent-error","agent-errors","aget","alength","alias","all-ns","alter","alter-meta!","alter-var-root","amap","ancestors","and","any?","apply","areduce","array-map","as->","aset","aset-boolean","aset-byte","aset-char","aset-double","aset-float","aset-int","aset-long","aset-short","assert","assoc","assoc!","assoc-in","associative?","atom","await","await-for","await1","bases","bean","bigdec","bigint","biginteger","binding","bit-and","bit-and-not","bit-clear","bit-flip","bit-not","bit-or","bit-set","bit-shift-left","bit-shift-right","bit-test","bit-xor","boolean","boolean-array","boolean?","booleans","bound-fn","bound-fn*","bound?","bounded-count","butlast","byte","byte-array","bytes","bytes?","case","cast","cat","char","char-array","char-escape-string","char-name-string","char?","chars","chunk","chunk-append","chunk-buffer","chunk-cons","chunk-first","chunk-next","chunk-rest","chunked-seq?","class","class?","clear-agent-errors","clojure-version","coll?","comment","commute","comp","comparator","compare","compare-and-set!","compile","complement","completing","concat","cond","cond->","cond->>","condp","conj","conj!","cons","constantly","construct-proxy","contains?","count","counted?","create-ns","create-struct","cycle","dec","dec'","decimal?","declare","dedupe","default-data-readers","definline","definterface","defmacro","defmethod","defmulti","defn","defn-","defonce","defprotocol","defrecord","defstruct","deftype","delay","delay?","deliver","denominator","deref","derive","descendants","destructure","disj","disj!","dissoc","dissoc!","distinct","distinct?","doall","dorun","doseq","dosync","dotimes","doto","double","double-array","double?","doubles","drop","drop-last","drop-while","eduction","empty","empty?","ensure","ensure-reduced","enumeration-seq","error-handler","error-mode","eval","even?","every-pred","every?","ex-data","ex-info","extend","extend-protocol","extend-type","extenders","extends?","false?","ffirst","file-seq","filter","filterv","find","find-keyword","find-ns","find-protocol-impl","find-protocol-method","find-var","first","flatten","float","float-array","float?","floats","flush","fn","fn?","fnext","fnil","for","force","format","frequencies","future","future-call","future-cancel","future-cancelled?","future-done?","future?","gen-class","gen-interface","gensym","get","get-in","get-method","get-proxy-class","get-thread-bindings","get-validator","group-by","halt-when","hash","hash-combine","hash-map","hash-ordered-coll","hash-set","hash-unordered-coll","ident?","identical?","identity","if-let","if-not","if-some","ifn?","import","in-ns","inc","inc'","indexed?","init-proxy","inst-ms","inst-ms*","inst?","instance?","int","int-array","int?","integer?","interleave","intern","interpose","into","into-array","ints","io!","isa?","iterate","iterator-seq","juxt","keep","keep-indexed","key","keys","keyword","keyword?","last","lazy-cat","lazy-seq","let","letfn","line-seq","list","list*","list?","load","load-file","load-reader","load-string","loaded-libs","locking","long","long-array","longs","loop","macroexpand","macroexpand-1","make-array","make-hierarchy","map","map-entry?","map-indexed","map?","mapcat","mapv","max","max-key","memfn","memoize","merge","merge-with","meta","method-sig","methods","min","min-key","mix-collection-hash","mod","munge","name","namespace","namespace-munge","nat-int?","neg-int?","neg?","newline","next","nfirst","nil?","nnext","not","not-any?","not-empty","not-every?","not=","ns","ns-aliases","ns-imports","ns-interns","ns-map","ns-name","ns-publics","ns-refers","ns-resolve","ns-unalias","ns-unmap","nth","nthnext","nthrest","num","number?","numerator","object-array","odd?","or","parents","partial","partition","partition-all","partition-by","pcalls","peek","persistent!","pmap","pop","pop!","pop-thread-bindings","pos-int?","pos?","pr","pr-str","prefer-method","prefers","primitives-classnames","print","print-ctor","print-dup","print-method","print-simple","print-str","printf","println","println-str","prn","prn-str","promise","proxy","proxy-call-with-super","proxy-mappings","proxy-name","proxy-super","push-thread-bindings","pvalues","qualified-ident?","qualified-keyword?","qualified-symbol?","quot","rand","rand-int","rand-nth","random-sample","range","ratio?","rational?","rationalize","re-find","re-groups","re-matcher","re-matches","re-pattern","re-seq","read","read-line","read-string","reader-conditional","reader-conditional?","realized?","record?","reduce","reduce-kv","reduced","reduced?","reductions","ref","ref-history-count","ref-max-history","ref-min-history","ref-set","refer","refer-clojure","reify","release-pending-sends","rem","remove","remove-all-methods","remove-method","remove-ns","remove-watch","repeat","repeatedly","replace","replicate","require","reset!","reset-meta!","reset-vals!","resolve","rest","restart-agent","resultset-seq","reverse","reversible?","rseq","rsubseq","run!","satisfies?","second","select-keys","send","send-off","send-via","seq","seq?","seqable?","seque","sequence","sequential?","set","set-agent-send-executor!","set-agent-send-off-executor!","set-error-handler!","set-error-mode!","set-validator!","set?","short","short-array","shorts","shuffle","shutdown-agents","simple-ident?","simple-keyword?","simple-symbol?","slurp","some","some->","some->>","some-fn","some?","sort","sort-by","sorted-map","sorted-map-by","sorted-set","sorted-set-by","sorted?","special-symbol?","spit","split-at","split-with","str","string?","struct","struct-map","subs","subseq","subvec","supers","swap!","swap-vals!","symbol","symbol?","sync","tagged-literal","tagged-literal?","take","take-last","take-nth","take-while","test","the-ns","thread-bound?","time","to-array","to-array-2d","trampoline","transduce","transient","tree-seq","true?","type","unchecked-add","unchecked-add-int","unchecked-byte","unchecked-char","unchecked-dec","unchecked-dec-int","unchecked-divide-int","unchecked-double","unchecked-float","unchecked-inc","unchecked-inc-int","unchecked-int","unchecked-long","unchecked-multiply","unchecked-multiply-int","unchecked-negate","unchecked-negate-int","unchecked-remainder-int","unchecked-short","unchecked-subtract","unchecked-subtract-int","underive","unquote","unquote-splicing","unreduced","unsigned-bit-shift-right","update","update-in","update-proxy","uri?","use","uuid?","val","vals","var-get","var-set","var?","vary-meta","vec","vector","vector-of","vector?","volatile!","volatile?","vreset!","vswap!","when","when-first","when-let","when-not","when-some","while","with-bindings","with-bindings*","with-in-str","with-loading-context","with-local-vars","with-meta","with-open","with-out-str","with-precision","with-redefs","with-redefs-fn","xml-seq","zero?","zipmap"],tokenizer:{root:[{include:"@whitespace"},[/@numbers/,"number"],[/@characters/,"string"],{include:"@string"},[/[()\[\]{}]/,"@brackets"],[/\/#"(?:\.|(?:")|[^"\n])*"\/g/,"regexp"],[/[#'@^`~]/,"meta"],[/@qualifiedSymbols/,{cases:{"^:.+$":"constant","@specialForms":"keyword","@coreSymbols":"keyword","@constants":"constant","@default":"identifier"}}]],whitespace:[[/[\s,]+/,"white"],[/;.*$/,"comment"],[/\(comment\b/,"comment","@comment"]],comment:[[/\(/,"comment","@push"],[/\)/,"comment","@pop"],[/[^()]/,"comment"]],string:[[/"/,"string","@multiLineString"]],multiLineString:[[/"/,"string","@popall"],[/@escapes/,"string.escape"],[/./,"string"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/50.23d71ab6.js b/docs/src/.vuepress/dist/assets/js/51.5be133f8.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/50.23d71ab6.js rename to docs/src/.vuepress/dist/assets/js/51.5be133f8.js index 3ab65747..c4d9dfe7 100644 --- a/docs/src/.vuepress/dist/assets/js/50.23d71ab6.js +++ b/docs/src/.vuepress/dist/assets/js/51.5be133f8.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[50],{450:function(e,n,r){"use strict";r.r(n),r.d(n,"conf",(function(){return t})),r.d(n,"language",(function(){return s}));var t={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\$\-\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{blockComment:["###","###"],lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},s={defaultToken:"",ignoreCase:!0,tokenPostfix:".coffee",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],regEx:/\/(?!\/\/)(?:[^\/\\]|\\.)*\/[igm]*/,keywords:["and","or","is","isnt","not","on","yes","@","no","off","true","false","null","this","new","delete","typeof","in","instanceof","return","throw","break","continue","debugger","if","else","switch","for","while","do","try","catch","finally","class","extends","super","undefined","then","unless","until","loop","of","by","when"],symbols:/[=><!~?&%|+\-*\/\^\.,\:]+/,escapes:/\\(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/\@[a-zA-Z_]\w*/,"variable.predefined"],[/[a-zA-Z_]\w*/,{cases:{this:"variable.predefined","@keywords":{token:"keyword.$0"},"@default":""}}],[/[ \t\r\n]+/,""],[/###/,"comment","@comment"],[/#.*$/,"comment"],["///",{token:"regexp",next:"@hereregexp"}],[/^(\s*)(@regEx)/,["","regexp"]],[/(\()(\s*)(@regEx)/,["@brackets","","regexp"]],[/(\,)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\=)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\:)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\[)(\s*)(@regEx)/,["@brackets","","regexp"]],[/(\!)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\&)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\|)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\?)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\{)(\s*)(@regEx)/,["@brackets","","regexp"]],[/(\;)(\s*)(@regEx)/,["","","regexp"]],[/}/,{cases:{"$S2==interpolatedstring":{token:"string",next:"@pop"},"@default":"@brackets"}}],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d+[eE]([\-+]?\d+)?/,"number.float"],[/\d+\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/0[0-7]+(?!\d)/,"number.octal"],[/\d+/,"number"],[/[,.]/,"delimiter"],[/"""/,"string",'@herestring."""'],[/'''/,"string","@herestring.'''"],[/"/,{cases:{"@eos":"string","@default":{token:"string",next:'@string."'}}}],[/'/,{cases:{"@eos":"string","@default":{token:"string",next:"@string.'"}}}]],string:[[/[^"'\#\\]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/\./,"string.escape.invalid"],[/#{/,{cases:{'$S2=="':{token:"string",next:"root.interpolatedstring"},"@default":"string"}}],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/#/,"string"]],herestring:[[/("""|''')/,{cases:{"$1==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/[^#\\'"]+/,"string"],[/['"]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/#{/,{token:"string.quote",next:"root.interpolatedstring"}],[/#/,"string"]],comment:[[/[^#]+/,"comment"],[/###/,"comment","@pop"],[/#/,"comment"]],hereregexp:[[/[^\\\/#]+/,"regexp"],[/\\./,"regexp"],[/#.*$/,"comment"],["///[igm]*",{token:"regexp",next:"@pop"}],[/\//,"regexp"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[51],{450:function(e,n,r){"use strict";r.r(n),r.d(n,"conf",(function(){return t})),r.d(n,"language",(function(){return s}));var t={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\$\-\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{blockComment:["###","###"],lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},s={defaultToken:"",ignoreCase:!0,tokenPostfix:".coffee",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],regEx:/\/(?!\/\/)(?:[^\/\\]|\\.)*\/[igm]*/,keywords:["and","or","is","isnt","not","on","yes","@","no","off","true","false","null","this","new","delete","typeof","in","instanceof","return","throw","break","continue","debugger","if","else","switch","for","while","do","try","catch","finally","class","extends","super","undefined","then","unless","until","loop","of","by","when"],symbols:/[=><!~?&%|+\-*\/\^\.,\:]+/,escapes:/\\(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/\@[a-zA-Z_]\w*/,"variable.predefined"],[/[a-zA-Z_]\w*/,{cases:{this:"variable.predefined","@keywords":{token:"keyword.$0"},"@default":""}}],[/[ \t\r\n]+/,""],[/###/,"comment","@comment"],[/#.*$/,"comment"],["///",{token:"regexp",next:"@hereregexp"}],[/^(\s*)(@regEx)/,["","regexp"]],[/(\()(\s*)(@regEx)/,["@brackets","","regexp"]],[/(\,)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\=)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\:)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\[)(\s*)(@regEx)/,["@brackets","","regexp"]],[/(\!)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\&)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\|)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\?)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\{)(\s*)(@regEx)/,["@brackets","","regexp"]],[/(\;)(\s*)(@regEx)/,["","","regexp"]],[/}/,{cases:{"$S2==interpolatedstring":{token:"string",next:"@pop"},"@default":"@brackets"}}],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d+[eE]([\-+]?\d+)?/,"number.float"],[/\d+\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/0[0-7]+(?!\d)/,"number.octal"],[/\d+/,"number"],[/[,.]/,"delimiter"],[/"""/,"string",'@herestring."""'],[/'''/,"string","@herestring.'''"],[/"/,{cases:{"@eos":"string","@default":{token:"string",next:'@string."'}}}],[/'/,{cases:{"@eos":"string","@default":{token:"string",next:"@string.'"}}}]],string:[[/[^"'\#\\]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/\./,"string.escape.invalid"],[/#{/,{cases:{'$S2=="':{token:"string",next:"root.interpolatedstring"},"@default":"string"}}],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/#/,"string"]],herestring:[[/("""|''')/,{cases:{"$1==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/[^#\\'"]+/,"string"],[/['"]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/#{/,{token:"string.quote",next:"root.interpolatedstring"}],[/#/,"string"]],comment:[[/[^#]+/,"comment"],[/###/,"comment","@pop"],[/#/,"comment"]],hereregexp:[[/[^\\\/#]+/,"regexp"],[/\\./,"regexp"],[/#.*$/,"comment"],["///[igm]*",{token:"regexp",next:"@pop"}],[/\//,"regexp"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/51.c3e699e7.js b/docs/src/.vuepress/dist/assets/js/52.371b43e0.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/51.c3e699e7.js rename to docs/src/.vuepress/dist/assets/js/52.371b43e0.js index f38b274b..7ce68507 100644 --- a/docs/src/.vuepress/dist/assets/js/51.c3e699e7.js +++ b/docs/src/.vuepress/dist/assets/js/52.371b43e0.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[51],{452:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return o})),n.d(t,"language",(function(){return s}));var o={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\$\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"'",close:"'",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"},{open:'"',close:'"'}],folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},s={defaultToken:"",tokenPostfix:".cs",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["extern","alias","using","bool","decimal","sbyte","byte","short","ushort","int","uint","long","ulong","char","float","double","object","dynamic","string","assembly","is","as","ref","out","this","base","new","typeof","void","checked","unchecked","default","delegate","var","const","if","else","switch","case","while","do","for","foreach","in","break","continue","goto","return","throw","try","catch","finally","lock","yield","from","let","where","join","on","equals","into","orderby","ascending","descending","select","group","by","namespace","partial","class","field","event","method","param","property","public","protected","internal","private","abstract","sealed","static","struct","readonly","volatile","virtual","override","params","get","set","add","remove","operator","true","false","implicit","explicit","interface","enum","null","async","await","fixed","sizeof","stackalloc","unsafe","nameof","when"],namespaceFollows:["namespace","using"],parenFollows:["if","for","while","switch","foreach","using","catch","when"],operators:["=","??","||","&&","|","^","&","==","!=","<=",">=","<<","+","-","*","/","%","!","~","++","--","+=","-=","*=","/=","%=","&=","|=","^=","<<=",">>=",">>","=>"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/\@?[a-zA-Z_]\w*/,{cases:{"@namespaceFollows":{token:"keyword.$0",next:"@namespace"},"@keywords":{token:"keyword.$0",next:"@qualified"},"@default":{token:"identifier",next:"@qualified"}}}],{include:"@whitespace"},[/}/,{cases:{"$S2==interpolatedstring":{token:"string.quote",next:"@pop"},"$S2==litinterpstring":{token:"string.quote",next:"@pop"},"@default":"@brackets"}}],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/[0-9_]*\.[0-9_]+([eE][\-+]?\d+)?[fFdD]?/,"number.float"],[/0[xX][0-9a-fA-F_]+/,"number.hex"],[/0[bB][01_]+/,"number.hex"],[/[0-9_]+/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,{token:"string.quote",next:"@string"}],[/\$\@"/,{token:"string.quote",next:"@litinterpstring"}],[/\@"/,{token:"string.quote",next:"@litstring"}],[/\$"/,{token:"string.quote",next:"@interpolatedstring"}],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],qualified:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],[/\./,"delimiter"],["","","@pop"]],namespace:[{include:"@whitespace"},[/[A-Z]\w*/,"namespace"],[/[\.=]/,"delimiter"],["","","@pop"]],comment:[[/[^\/*]+/,"comment"],["\\*/","comment","@pop"],[/[\/*]/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",next:"@pop"}]],litstring:[[/[^"]+/,"string"],[/""/,"string.escape"],[/"/,{token:"string.quote",next:"@pop"}]],litinterpstring:[[/[^"{]+/,"string"],[/""/,"string.escape"],[/{{/,"string.escape"],[/}}/,"string.escape"],[/{/,{token:"string.quote",next:"root.litinterpstring"}],[/"/,{token:"string.quote",next:"@pop"}]],interpolatedstring:[[/[^\\"{]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/{{/,"string.escape"],[/}}/,"string.escape"],[/{/,{token:"string.quote",next:"root.interpolatedstring"}],[/"/,{token:"string.quote",next:"@pop"}]],whitespace:[[/^[ \t\v\f]*#((r)|(load))(?=\s)/,"directive.csx"],[/^[ \t\v\f]*#\w.*$/,"namespace.cpp"],[/[ \t\v\f\r\n]+/,""],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[52],{452:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return o})),n.d(t,"language",(function(){return s}));var o={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\$\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"'",close:"'",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"},{open:'"',close:'"'}],folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},s={defaultToken:"",tokenPostfix:".cs",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["extern","alias","using","bool","decimal","sbyte","byte","short","ushort","int","uint","long","ulong","char","float","double","object","dynamic","string","assembly","is","as","ref","out","this","base","new","typeof","void","checked","unchecked","default","delegate","var","const","if","else","switch","case","while","do","for","foreach","in","break","continue","goto","return","throw","try","catch","finally","lock","yield","from","let","where","join","on","equals","into","orderby","ascending","descending","select","group","by","namespace","partial","class","field","event","method","param","property","public","protected","internal","private","abstract","sealed","static","struct","readonly","volatile","virtual","override","params","get","set","add","remove","operator","true","false","implicit","explicit","interface","enum","null","async","await","fixed","sizeof","stackalloc","unsafe","nameof","when"],namespaceFollows:["namespace","using"],parenFollows:["if","for","while","switch","foreach","using","catch","when"],operators:["=","??","||","&&","|","^","&","==","!=","<=",">=","<<","+","-","*","/","%","!","~","++","--","+=","-=","*=","/=","%=","&=","|=","^=","<<=",">>=",">>","=>"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/\@?[a-zA-Z_]\w*/,{cases:{"@namespaceFollows":{token:"keyword.$0",next:"@namespace"},"@keywords":{token:"keyword.$0",next:"@qualified"},"@default":{token:"identifier",next:"@qualified"}}}],{include:"@whitespace"},[/}/,{cases:{"$S2==interpolatedstring":{token:"string.quote",next:"@pop"},"$S2==litinterpstring":{token:"string.quote",next:"@pop"},"@default":"@brackets"}}],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/[0-9_]*\.[0-9_]+([eE][\-+]?\d+)?[fFdD]?/,"number.float"],[/0[xX][0-9a-fA-F_]+/,"number.hex"],[/0[bB][01_]+/,"number.hex"],[/[0-9_]+/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,{token:"string.quote",next:"@string"}],[/\$\@"/,{token:"string.quote",next:"@litinterpstring"}],[/\@"/,{token:"string.quote",next:"@litstring"}],[/\$"/,{token:"string.quote",next:"@interpolatedstring"}],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],qualified:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],[/\./,"delimiter"],["","","@pop"]],namespace:[{include:"@whitespace"},[/[A-Z]\w*/,"namespace"],[/[\.=]/,"delimiter"],["","","@pop"]],comment:[[/[^\/*]+/,"comment"],["\\*/","comment","@pop"],[/[\/*]/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",next:"@pop"}]],litstring:[[/[^"]+/,"string"],[/""/,"string.escape"],[/"/,{token:"string.quote",next:"@pop"}]],litinterpstring:[[/[^"{]+/,"string"],[/""/,"string.escape"],[/{{/,"string.escape"],[/}}/,"string.escape"],[/{/,{token:"string.quote",next:"root.litinterpstring"}],[/"/,{token:"string.quote",next:"@pop"}]],interpolatedstring:[[/[^\\"{]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/{{/,"string.escape"],[/}}/,"string.escape"],[/{/,{token:"string.quote",next:"root.interpolatedstring"}],[/"/,{token:"string.quote",next:"@pop"}]],whitespace:[[/^[ \t\v\f]*#((r)|(load))(?=\s)/,"directive.csx"],[/^[ \t\v\f]*#\w.*$/,"namespace.cpp"],[/[ \t\v\f\r\n]+/,""],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/52.03a3e296.js b/docs/src/.vuepress/dist/assets/js/53.e305cbde.js similarity index 95% rename from docs/src/.vuepress/dist/assets/js/52.03a3e296.js rename to docs/src/.vuepress/dist/assets/js/53.e305cbde.js index da326552..cb92f8a9 100644 --- a/docs/src/.vuepress/dist/assets/js/52.03a3e296.js +++ b/docs/src/.vuepress/dist/assets/js/53.e305cbde.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[52],{453:function(t,r,e){"use strict";e.r(r),e.d(r,"conf",(function(){return s})),e.d(r,"language",(function(){return n}));var s={brackets:[],autoClosingPairs:[],surroundingPairs:[]},n={keywords:[],typeKeywords:[],tokenPostfix:".csp",operators:[],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/child-src/,"string.quote"],[/connect-src/,"string.quote"],[/default-src/,"string.quote"],[/font-src/,"string.quote"],[/frame-src/,"string.quote"],[/img-src/,"string.quote"],[/manifest-src/,"string.quote"],[/media-src/,"string.quote"],[/object-src/,"string.quote"],[/script-src/,"string.quote"],[/style-src/,"string.quote"],[/worker-src/,"string.quote"],[/base-uri/,"string.quote"],[/plugin-types/,"string.quote"],[/sandbox/,"string.quote"],[/disown-opener/,"string.quote"],[/form-action/,"string.quote"],[/frame-ancestors/,"string.quote"],[/report-uri/,"string.quote"],[/report-to/,"string.quote"],[/upgrade-insecure-requests/,"string.quote"],[/block-all-mixed-content/,"string.quote"],[/require-sri-for/,"string.quote"],[/reflected-xss/,"string.quote"],[/referrer/,"string.quote"],[/policy-uri/,"string.quote"],[/'self'/,"string.quote"],[/'unsafe-inline'/,"string.quote"],[/'unsafe-eval'/,"string.quote"],[/'strict-dynamic'/,"string.quote"],[/'unsafe-hashed-attributes'/,"string.quote"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[53],{453:function(t,r,e){"use strict";e.r(r),e.d(r,"conf",(function(){return s})),e.d(r,"language",(function(){return n}));var s={brackets:[],autoClosingPairs:[],surroundingPairs:[]},n={keywords:[],typeKeywords:[],tokenPostfix:".csp",operators:[],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/child-src/,"string.quote"],[/connect-src/,"string.quote"],[/default-src/,"string.quote"],[/font-src/,"string.quote"],[/frame-src/,"string.quote"],[/img-src/,"string.quote"],[/manifest-src/,"string.quote"],[/media-src/,"string.quote"],[/object-src/,"string.quote"],[/script-src/,"string.quote"],[/style-src/,"string.quote"],[/worker-src/,"string.quote"],[/base-uri/,"string.quote"],[/plugin-types/,"string.quote"],[/sandbox/,"string.quote"],[/disown-opener/,"string.quote"],[/form-action/,"string.quote"],[/frame-ancestors/,"string.quote"],[/report-uri/,"string.quote"],[/report-to/,"string.quote"],[/upgrade-insecure-requests/,"string.quote"],[/block-all-mixed-content/,"string.quote"],[/require-sri-for/,"string.quote"],[/reflected-xss/,"string.quote"],[/referrer/,"string.quote"],[/policy-uri/,"string.quote"],[/'self'/,"string.quote"],[/'unsafe-inline'/,"string.quote"],[/'unsafe-eval'/,"string.quote"],[/'strict-dynamic'/,"string.quote"],[/'unsafe-hashed-attributes'/,"string.quote"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/53.645ee022.js b/docs/src/.vuepress/dist/assets/js/54.3d618e11.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/53.645ee022.js rename to docs/src/.vuepress/dist/assets/js/54.3d618e11.js index 8860d80c..a9aa8411 100644 --- a/docs/src/.vuepress/dist/assets/js/53.645ee022.js +++ b/docs/src/.vuepress/dist/assets/js/54.3d618e11.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[53],{454:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return r})),n.d(t,"language",(function(){return i}));var r={wordPattern:/(#?-?\d*\.\d\w*%?)|((::|[@#.!:])?[\w-?]+%?)|::|[@#.!:]/g,comments:{blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/"),end:new RegExp("^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/")}}},i={defaultToken:"",tokenPostfix:".css",ws:"[ \t\n\r\f]*",identifier:"-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",brackets:[{open:"{",close:"}",token:"delimiter.bracket"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],tokenizer:{root:[{include:"@selector"}],selector:[{include:"@comments"},{include:"@import"},{include:"@strings"},["[@](keyframes|-webkit-keyframes|-moz-keyframes|-o-keyframes)",{token:"keyword",next:"@keyframedeclaration"}],["[@](page|content|font-face|-moz-document)",{token:"keyword"}],["[@](charset|namespace)",{token:"keyword",next:"@declarationbody"}],["(url-prefix)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],["(url)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],{include:"@selectorname"},["[\\*]","tag"],["[>\\+,]","delimiter"],["\\[",{token:"delimiter.bracket",next:"@selectorattribute"}],["{",{token:"delimiter.bracket",next:"@selectorbody"}]],selectorbody:[{include:"@comments"},["[*_]?@identifier@ws:(?=(\\s|\\d|[^{;}]*[;}]))","attribute.name","@rulevalue"],["}",{token:"delimiter.bracket",next:"@pop"}]],selectorname:[["(\\.|#(?=[^{])|%|(@identifier)|:)+","tag"]],selectorattribute:[{include:"@term"},["]",{token:"delimiter.bracket",next:"@pop"}]],term:[{include:"@comments"},["(url-prefix)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],["(url)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],{include:"@functioninvocation"},{include:"@numbers"},{include:"@name"},["([<>=\\+\\-\\*\\/\\^\\|\\~,])","delimiter"],[",","delimiter"]],rulevalue:[{include:"@comments"},{include:"@strings"},{include:"@term"},["!important","keyword"],[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],warndebug:[["[@](warn|debug)",{token:"keyword",next:"@declarationbody"}]],import:[["[@](import)",{token:"keyword",next:"@declarationbody"}]],urldeclaration:[{include:"@strings"},["[^)\r\n]+","string"],["\\)",{token:"delimiter.parenthesis",next:"@pop"}]],parenthizedterm:[{include:"@term"},["\\)",{token:"delimiter.parenthesis",next:"@pop"}]],declarationbody:[{include:"@term"},[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[/[^*/]+/,"comment"],[/./,"comment"]],name:[["@identifier","attribute.value"]],numbers:[["-?(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?",{token:"attribute.value.number",next:"@units"}],["#[0-9a-fA-F_]+(?!\\w)","attribute.value.hex"]],units:[["(em|ex|ch|rem|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?","attribute.value.unit","@pop"]],keyframedeclaration:[["@identifier","attribute.value"],["{",{token:"delimiter.bracket",switchTo:"@keyframebody"}]],keyframebody:[{include:"@term"},["{",{token:"delimiter.bracket",next:"@selectorbody"}],["}",{token:"delimiter.bracket",next:"@pop"}]],functioninvocation:[["@identifier\\(",{token:"attribute.value",next:"@functionarguments"}]],functionarguments:[["\\$@identifier@ws:","attribute.name"],["[,]","delimiter"],{include:"@term"},["\\)",{token:"attribute.value",next:"@pop"}]],strings:[['~?"',{token:"string",next:"@stringenddoublequote"}],["~?'",{token:"string",next:"@stringendquote"}]],stringenddoublequote:[["\\\\.","string"],['"',{token:"string",next:"@pop"}],[/[^\\"]+/,"string"],[".","string"]],stringendquote:[["\\\\.","string"],["'",{token:"string",next:"@pop"}],[/[^\\']+/,"string"],[".","string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[54],{454:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return r})),n.d(t,"language",(function(){return i}));var r={wordPattern:/(#?-?\d*\.\d\w*%?)|((::|[@#.!:])?[\w-?]+%?)|::|[@#.!:]/g,comments:{blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/"),end:new RegExp("^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/")}}},i={defaultToken:"",tokenPostfix:".css",ws:"[ \t\n\r\f]*",identifier:"-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",brackets:[{open:"{",close:"}",token:"delimiter.bracket"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],tokenizer:{root:[{include:"@selector"}],selector:[{include:"@comments"},{include:"@import"},{include:"@strings"},["[@](keyframes|-webkit-keyframes|-moz-keyframes|-o-keyframes)",{token:"keyword",next:"@keyframedeclaration"}],["[@](page|content|font-face|-moz-document)",{token:"keyword"}],["[@](charset|namespace)",{token:"keyword",next:"@declarationbody"}],["(url-prefix)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],["(url)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],{include:"@selectorname"},["[\\*]","tag"],["[>\\+,]","delimiter"],["\\[",{token:"delimiter.bracket",next:"@selectorattribute"}],["{",{token:"delimiter.bracket",next:"@selectorbody"}]],selectorbody:[{include:"@comments"},["[*_]?@identifier@ws:(?=(\\s|\\d|[^{;}]*[;}]))","attribute.name","@rulevalue"],["}",{token:"delimiter.bracket",next:"@pop"}]],selectorname:[["(\\.|#(?=[^{])|%|(@identifier)|:)+","tag"]],selectorattribute:[{include:"@term"},["]",{token:"delimiter.bracket",next:"@pop"}]],term:[{include:"@comments"},["(url-prefix)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],["(url)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],{include:"@functioninvocation"},{include:"@numbers"},{include:"@name"},["([<>=\\+\\-\\*\\/\\^\\|\\~,])","delimiter"],[",","delimiter"]],rulevalue:[{include:"@comments"},{include:"@strings"},{include:"@term"},["!important","keyword"],[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],warndebug:[["[@](warn|debug)",{token:"keyword",next:"@declarationbody"}]],import:[["[@](import)",{token:"keyword",next:"@declarationbody"}]],urldeclaration:[{include:"@strings"},["[^)\r\n]+","string"],["\\)",{token:"delimiter.parenthesis",next:"@pop"}]],parenthizedterm:[{include:"@term"},["\\)",{token:"delimiter.parenthesis",next:"@pop"}]],declarationbody:[{include:"@term"},[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[/[^*/]+/,"comment"],[/./,"comment"]],name:[["@identifier","attribute.value"]],numbers:[["-?(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?",{token:"attribute.value.number",next:"@units"}],["#[0-9a-fA-F_]+(?!\\w)","attribute.value.hex"]],units:[["(em|ex|ch|rem|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?","attribute.value.unit","@pop"]],keyframedeclaration:[["@identifier","attribute.value"],["{",{token:"delimiter.bracket",switchTo:"@keyframebody"}]],keyframebody:[{include:"@term"},["{",{token:"delimiter.bracket",next:"@selectorbody"}],["}",{token:"delimiter.bracket",next:"@pop"}]],functioninvocation:[["@identifier\\(",{token:"attribute.value",next:"@functionarguments"}]],functionarguments:[["\\$@identifier@ws:","attribute.name"],["[,]","delimiter"],{include:"@term"},["\\)",{token:"attribute.value",next:"@pop"}]],strings:[['~?"',{token:"string",next:"@stringenddoublequote"}],["~?'",{token:"string",next:"@stringendquote"}]],stringenddoublequote:[["\\\\.","string"],['"',{token:"string",next:"@pop"}],[/[^\\"]+/,"string"],[".","string"]],stringendquote:[["\\\\.","string"],["'",{token:"string",next:"@pop"}],[/[^\\']+/,"string"],[".","string"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/54.dbf6d0eb.js b/docs/src/.vuepress/dist/assets/js/55.2555359d.js similarity index 96% rename from docs/src/.vuepress/dist/assets/js/54.dbf6d0eb.js rename to docs/src/.vuepress/dist/assets/js/55.2555359d.js index d055b1f4..e91f4c0f 100644 --- a/docs/src/.vuepress/dist/assets/js/54.dbf6d0eb.js +++ b/docs/src/.vuepress/dist/assets/js/55.2555359d.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[54],{455:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",(function(){return s})),o.d(n,"language",(function(){return t}));var s={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},t={defaultToken:"",tokenPostfix:".dockerfile",variable:/\${?[\w]+}?/,tokenizer:{root:[{include:"@whitespace"},{include:"@comment"},[/(ONBUILD)(\s+)/,["keyword",""]],[/(ENV)(\s+)([\w]+)/,["keyword","",{token:"variable",next:"@arguments"}]],[/(FROM|MAINTAINER|RUN|EXPOSE|ENV|ADD|ARG|VOLUME|LABEL|USER|WORKDIR|COPY|CMD|STOPSIGNAL|SHELL|HEALTHCHECK|ENTRYPOINT)/,{token:"keyword",next:"@arguments"}]],arguments:[{include:"@whitespace"},{include:"@strings"},[/(@variable)/,{cases:{"@eos":{token:"variable",next:"@popall"},"@default":"variable"}}],[/\\/,{cases:{"@eos":"","@default":""}}],[/./,{cases:{"@eos":{token:"",next:"@popall"},"@default":""}}]],whitespace:[[/\s+/,{cases:{"@eos":{token:"",next:"@popall"},"@default":""}}]],comment:[[/(^#.*$)/,"comment","@popall"]],strings:[[/'$/,"string","@popall"],[/'/,"string","@stringBody"],[/"$/,"string","@popall"],[/"/,"string","@dblStringBody"]],stringBody:[[/[^\\\$']/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/\\./,"string.escape"],[/'$/,"string","@popall"],[/'/,"string","@pop"],[/(@variable)/,"variable"],[/\\$/,"string"],[/$/,"string","@popall"]],dblStringBody:[[/[^\\\$"]/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/\\./,"string.escape"],[/"$/,"string","@popall"],[/"/,"string","@pop"],[/(@variable)/,"variable"],[/\\$/,"string"],[/$/,"string","@popall"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[55],{455:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",(function(){return s})),o.d(n,"language",(function(){return t}));var s={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},t={defaultToken:"",tokenPostfix:".dockerfile",variable:/\${?[\w]+}?/,tokenizer:{root:[{include:"@whitespace"},{include:"@comment"},[/(ONBUILD)(\s+)/,["keyword",""]],[/(ENV)(\s+)([\w]+)/,["keyword","",{token:"variable",next:"@arguments"}]],[/(FROM|MAINTAINER|RUN|EXPOSE|ENV|ADD|ARG|VOLUME|LABEL|USER|WORKDIR|COPY|CMD|STOPSIGNAL|SHELL|HEALTHCHECK|ENTRYPOINT)/,{token:"keyword",next:"@arguments"}]],arguments:[{include:"@whitespace"},{include:"@strings"},[/(@variable)/,{cases:{"@eos":{token:"variable",next:"@popall"},"@default":"variable"}}],[/\\/,{cases:{"@eos":"","@default":""}}],[/./,{cases:{"@eos":{token:"",next:"@popall"},"@default":""}}]],whitespace:[[/\s+/,{cases:{"@eos":{token:"",next:"@popall"},"@default":""}}]],comment:[[/(^#.*$)/,"comment","@popall"]],strings:[[/'$/,"string","@popall"],[/'/,"string","@stringBody"],[/"$/,"string","@popall"],[/"/,"string","@dblStringBody"]],stringBody:[[/[^\\\$']/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/\\./,"string.escape"],[/'$/,"string","@popall"],[/'/,"string","@pop"],[/(@variable)/,"variable"],[/\\$/,"string"],[/$/,"string","@popall"]],dblStringBody:[[/[^\\\$"]/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/\\./,"string.escape"],[/"$/,"string","@popall"],[/"/,"string","@pop"],[/(@variable)/,"variable"],[/\\$/,"string"],[/$/,"string","@popall"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/55.517ded52.js b/docs/src/.vuepress/dist/assets/js/56.4fd62374.js similarity index 97% rename from docs/src/.vuepress/dist/assets/js/55.517ded52.js rename to docs/src/.vuepress/dist/assets/js/56.4fd62374.js index 7df94668..1f406ac3 100644 --- a/docs/src/.vuepress/dist/assets/js/55.517ded52.js +++ b/docs/src/.vuepress/dist/assets/js/56.4fd62374.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[55],{456:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return s})),t.d(n,"language",(function(){return o}));var s={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*//\\s*#region\\b|^\\s*\\(\\*\\s*#region(.*)\\*\\)"),end:new RegExp("^\\s*//\\s*#endregion\\b|^\\s*\\(\\*\\s*#endregion\\s*\\*\\)")}}},o={defaultToken:"",tokenPostfix:".fs",keywords:["abstract","and","atomic","as","assert","asr","base","begin","break","checked","component","const","constraint","constructor","continue","class","default","delegate","do","done","downcast","downto","elif","else","end","exception","eager","event","external","extern","false","finally","for","fun","function","fixed","functor","global","if","in","include","inherit","inline","interface","internal","land","lor","lsl","lsr","lxor","lazy","let","match","member","mod","module","mutable","namespace","method","mixin","new","not","null","of","open","or","object","override","private","parallel","process","protected","pure","public","rec","return","static","sealed","struct","sig","then","to","true","tailcall","trait","try","type","upcast","use","val","void","virtual","volatile","when","while","with","yield"],symbols:/[=><!~?:&|+\-*\^%;\.,\/]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,integersuffix:/[uU]?[yslnLI]?/,floatsuffix:/[fFmM]?/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/\[<.*>\]/,"annotation"],[/^#(if|else|endif)/,"keyword"],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,"delimiter"],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0x[0-9a-fA-F]+LF/,"number.float"],[/0x[0-9a-fA-F]+(@integersuffix)/,"number.hex"],[/0b[0-1]+(@integersuffix)/,"number.bin"],[/\d+(@integersuffix)/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"""/,"string",'@string."""'],[/"/,"string",'@string."'],[/\@"/,{token:"string.quote",next:"@litstring"}],[/'[^\\']'B?/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\(\*(?!\))/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^*(]+/,"comment"],[/\*\)/,"comment","@pop"],[/\*/,"comment"],[/\(\*\)/,"comment"],[/\(/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/("""|"B?)/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]],litstring:[[/[^"]+/,"string"],[/""/,"string.escape"],[/"/,{token:"string.quote",next:"@pop"}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[56],{456:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return s})),t.d(n,"language",(function(){return o}));var s={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*//\\s*#region\\b|^\\s*\\(\\*\\s*#region(.*)\\*\\)"),end:new RegExp("^\\s*//\\s*#endregion\\b|^\\s*\\(\\*\\s*#endregion\\s*\\*\\)")}}},o={defaultToken:"",tokenPostfix:".fs",keywords:["abstract","and","atomic","as","assert","asr","base","begin","break","checked","component","const","constraint","constructor","continue","class","default","delegate","do","done","downcast","downto","elif","else","end","exception","eager","event","external","extern","false","finally","for","fun","function","fixed","functor","global","if","in","include","inherit","inline","interface","internal","land","lor","lsl","lsr","lxor","lazy","let","match","member","mod","module","mutable","namespace","method","mixin","new","not","null","of","open","or","object","override","private","parallel","process","protected","pure","public","rec","return","static","sealed","struct","sig","then","to","true","tailcall","trait","try","type","upcast","use","val","void","virtual","volatile","when","while","with","yield"],symbols:/[=><!~?:&|+\-*\^%;\.,\/]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,integersuffix:/[uU]?[yslnLI]?/,floatsuffix:/[fFmM]?/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/\[<.*>\]/,"annotation"],[/^#(if|else|endif)/,"keyword"],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,"delimiter"],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0x[0-9a-fA-F]+LF/,"number.float"],[/0x[0-9a-fA-F]+(@integersuffix)/,"number.hex"],[/0b[0-1]+(@integersuffix)/,"number.bin"],[/\d+(@integersuffix)/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"""/,"string",'@string."""'],[/"/,"string",'@string."'],[/\@"/,{token:"string.quote",next:"@litstring"}],[/'[^\\']'B?/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\(\*(?!\))/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^*(]+/,"comment"],[/\*\)/,"comment","@pop"],[/\*/,"comment"],[/\(\*\)/,"comment"],[/\(/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/("""|"B?)/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]],litstring:[[/[^"]+/,"string"],[/""/,"string.escape"],[/"/,{token:"string.quote",next:"@pop"}]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/56.260ce17c.js b/docs/src/.vuepress/dist/assets/js/57.6a92da6f.js similarity index 97% rename from docs/src/.vuepress/dist/assets/js/56.260ce17c.js rename to docs/src/.vuepress/dist/assets/js/57.6a92da6f.js index 1c4f9d54..314a245d 100644 --- a/docs/src/.vuepress/dist/assets/js/56.260ce17c.js +++ b/docs/src/.vuepress/dist/assets/js/57.6a92da6f.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[56],{457:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",(function(){return t})),o.d(n,"language",(function(){return s}));var t={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"`",close:"`",notIn:["string"]},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"`",close:"`"},{open:'"',close:'"'},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".go",keywords:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var","bool","true","false","uint8","uint16","uint32","uint64","int8","int16","int32","int64","float32","float64","complex64","complex128","byte","rune","uint","int","uintptr","string","nil"],operators:["+","-","*","/","%","&","|","^","<<",">>","&^","+=","-=","*=","/=","%=","&=","|=","^=","<<=",">>=","&^=","&&","||","<-","++","--","==","<",">","=","!","!=","<=",">=",":=","...","(",")","","]","{","}",",",";",".",":"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/\[\[.*\]\]/,"annotation"],[/^\s*#\w+/,"keyword"],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\d+[eE]([\-+]?\d+)?/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F]/,"number.hex"],[/0[0-7']*[0-7]/,"number.octal"],[/0[bB][0-1']*[0-1]/,"number.binary"],[/\d[\d']*/,"number"],[/\d/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/`/,"string","@rawstring"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],doccomment:[[/[^\/*]+/,"comment.doc"],[/\/\*/,"comment.doc.invalid"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],rawstring:[[/[^\`]/,"string"],[/`/,"string","@pop"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[57],{457:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",(function(){return t})),o.d(n,"language",(function(){return s}));var t={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"`",close:"`",notIn:["string"]},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"`",close:"`"},{open:'"',close:'"'},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".go",keywords:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var","bool","true","false","uint8","uint16","uint32","uint64","int8","int16","int32","int64","float32","float64","complex64","complex128","byte","rune","uint","int","uintptr","string","nil"],operators:["+","-","*","/","%","&","|","^","<<",">>","&^","+=","-=","*=","/=","%=","&=","|=","^=","<<=",">>=","&^=","&&","||","<-","++","--","==","<",">","=","!","!=","<=",">=",":=","...","(",")","","]","{","}",",",";",".",":"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/\[\[.*\]\]/,"annotation"],[/^\s*#\w+/,"keyword"],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\d+[eE]([\-+]?\d+)?/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F]/,"number.hex"],[/0[0-7']*[0-7]/,"number.octal"],[/0[bB][0-1']*[0-1]/,"number.binary"],[/\d[\d']*/,"number"],[/\d/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/`/,"string","@rawstring"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],doccomment:[[/[^\/*]+/,"comment.doc"],[/\/\*/,"comment.doc.invalid"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],rawstring:[[/[^\`]/,"string"],[/`/,"string","@pop"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/57.697d63a8.js b/docs/src/.vuepress/dist/assets/js/58.e9795bf7.js similarity index 97% rename from docs/src/.vuepress/dist/assets/js/57.697d63a8.js rename to docs/src/.vuepress/dist/assets/js/58.e9795bf7.js index d3cb2542..61e15fcf 100644 --- a/docs/src/.vuepress/dist/assets/js/57.697d63a8.js +++ b/docs/src/.vuepress/dist/assets/js/58.e9795bf7.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[57],{458:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return o})),t.d(n,"language",(function(){return s}));var o={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"""',close:'"""',notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"""',close:'"""'},{open:'"',close:'"'}],folding:{offSide:!0}},s={defaultToken:"invalid",tokenPostfix:".gql",keywords:["null","true","false","query","mutation","subscription","extend","schema","directive","scalar","type","interface","union","enum","input","implements","fragment","on"],typeKeywords:["Int","Float","String","Boolean","ID"],directiveLocations:["SCHEMA","SCALAR","OBJECT","FIELD_DEFINITION","ARGUMENT_DEFINITION","INTERFACE","UNION","ENUM","ENUM_VALUE","INPUT_OBJECT","INPUT_FIELD_DEFINITION","QUERY","MUTATION","SUBSCRIPTION","FIELD","FRAGMENT_DEFINITION","FRAGMENT_SPREAD","INLINE_FRAGMENT","VARIABLE_DEFINITION"],operators:["=","!","?",":","&","|"],symbols:/[=!?:&|]+/,escapes:/\\(?:["\\\/bfnrt]|u[0-9A-Fa-f]{4})/,tokenizer:{root:[[/[a-z_][\w$]*/,{cases:{"@keywords":"keyword","@default":"key.identifier"}}],[/[$][\w$]*/,{cases:{"@keywords":"keyword","@default":"argument.identifier"}}],[/[A-Z][\w\$]*/,{cases:{"@typeKeywords":"keyword","@default":"type.identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,{token:"annotation",log:"annotation token: $0"}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/"""/,{token:"string",next:"@mlstring",nextEmbedded:"markdown"}],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,{token:"string.quote",bracket:"@open",next:"@string"}]],mlstring:[[/[^"]+/,"string"],['"""',{token:"string",next:"@pop",nextEmbedded:"@pop"}]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,""],[/#.*$/,"comment"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[58],{458:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return o})),t.d(n,"language",(function(){return s}));var o={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"""',close:'"""',notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"""',close:'"""'},{open:'"',close:'"'}],folding:{offSide:!0}},s={defaultToken:"invalid",tokenPostfix:".gql",keywords:["null","true","false","query","mutation","subscription","extend","schema","directive","scalar","type","interface","union","enum","input","implements","fragment","on"],typeKeywords:["Int","Float","String","Boolean","ID"],directiveLocations:["SCHEMA","SCALAR","OBJECT","FIELD_DEFINITION","ARGUMENT_DEFINITION","INTERFACE","UNION","ENUM","ENUM_VALUE","INPUT_OBJECT","INPUT_FIELD_DEFINITION","QUERY","MUTATION","SUBSCRIPTION","FIELD","FRAGMENT_DEFINITION","FRAGMENT_SPREAD","INLINE_FRAGMENT","VARIABLE_DEFINITION"],operators:["=","!","?",":","&","|"],symbols:/[=!?:&|]+/,escapes:/\\(?:["\\\/bfnrt]|u[0-9A-Fa-f]{4})/,tokenizer:{root:[[/[a-z_][\w$]*/,{cases:{"@keywords":"keyword","@default":"key.identifier"}}],[/[$][\w$]*/,{cases:{"@keywords":"keyword","@default":"argument.identifier"}}],[/[A-Z][\w\$]*/,{cases:{"@typeKeywords":"keyword","@default":"type.identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,{token:"annotation",log:"annotation token: $0"}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/"""/,{token:"string",next:"@mlstring",nextEmbedded:"markdown"}],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,{token:"string.quote",bracket:"@open",next:"@string"}]],mlstring:[[/[^"]+/,"string"],['"""',{token:"string",next:"@pop",nextEmbedded:"@pop"}]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,""],[/#.*$/,"comment"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/58.71546e18.js b/docs/src/.vuepress/dist/assets/js/59.4ee743e7.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/58.71546e18.js rename to docs/src/.vuepress/dist/assets/js/59.4ee743e7.js index 61cf8680..6fb03b3c 100644 --- a/docs/src/.vuepress/dist/assets/js/58.71546e18.js +++ b/docs/src/.vuepress/dist/assets/js/59.4ee743e7.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[58],{459:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return i})),n.d(t,"language",(function(){return m}));var a="undefined"==typeof monaco?self.monaco:monaco,r=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],i={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["{{!--","--}}"]},brackets:[["\x3c!--","--\x3e"],["<",">"],["{{","}}"],["{","}"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:new RegExp("<(?!(?:"+r.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),afterText:/^<\/(\w[\w\d]*)\s*>$/i,action:{indentAction:a.languages.IndentAction.IndentOutdent}},{beforeText:new RegExp("<(?!(?:"+r.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),action:{indentAction:a.languages.IndentAction.Indent}}]},m={defaultToken:"",tokenPostfix:"",tokenizer:{root:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.root"}],[/<!DOCTYPE/,"metatag.html","@doctype"],[/<!--/,"comment.html","@comment"],[/(<)(\w+)(\/>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)([:\w]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)(\w+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/</,"delimiter.html"],[/\{/,"delimiter.html"],[/[^<{]+/]],doctype:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.comment"}],[/[^>]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.comment"}],[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.otherTag"}],[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.script"}],[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptAfterType"}],[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInEmbeddedState.scriptEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],style:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.style"}],[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleAfterType"}],[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInEmbeddedState.styleEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],handlebarsInSimpleState:[[/\{\{\{?/,"delimiter.handlebars"],[/\}\}\}?/,{token:"delimiter.handlebars",switchTo:"@$S2.$S3"}],{include:"handlebarsRoot"}],handlebarsInEmbeddedState:[[/\{\{\{?/,"delimiter.handlebars"],[/\}\}\}?/,{token:"delimiter.handlebars",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}],{include:"handlebarsRoot"}],handlebarsRoot:[[/"[^"]*"/,"string.handlebars"],[/[#/][^\s}]+/,"keyword.helper.handlebars"],[/else\b/,"keyword.helper.handlebars"],[/[\s]+/],[/[^}]/,"variable.parameter.handlebars"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[59],{459:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return i})),n.d(t,"language",(function(){return m}));var a="undefined"==typeof monaco?self.monaco:monaco,r=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],i={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["{{!--","--}}"]},brackets:[["\x3c!--","--\x3e"],["<",">"],["{{","}}"],["{","}"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:new RegExp("<(?!(?:"+r.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),afterText:/^<\/(\w[\w\d]*)\s*>$/i,action:{indentAction:a.languages.IndentAction.IndentOutdent}},{beforeText:new RegExp("<(?!(?:"+r.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),action:{indentAction:a.languages.IndentAction.Indent}}]},m={defaultToken:"",tokenPostfix:"",tokenizer:{root:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.root"}],[/<!DOCTYPE/,"metatag.html","@doctype"],[/<!--/,"comment.html","@comment"],[/(<)(\w+)(\/>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)([:\w]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)(\w+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/</,"delimiter.html"],[/\{/,"delimiter.html"],[/[^<{]+/]],doctype:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.comment"}],[/[^>]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.comment"}],[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.otherTag"}],[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.script"}],[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptAfterType"}],[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInEmbeddedState.scriptEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],style:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.style"}],[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleAfterType"}],[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInEmbeddedState.styleEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],handlebarsInSimpleState:[[/\{\{\{?/,"delimiter.handlebars"],[/\}\}\}?/,{token:"delimiter.handlebars",switchTo:"@$S2.$S3"}],{include:"handlebarsRoot"}],handlebarsInEmbeddedState:[[/\{\{\{?/,"delimiter.handlebars"],[/\}\}\}?/,{token:"delimiter.handlebars",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}],{include:"handlebarsRoot"}],handlebarsRoot:[[/"[^"]*"/,"string.handlebars"],[/[#/][^\s}]+/,"keyword.helper.handlebars"],[/else\b/,"keyword.helper.handlebars"],[/[\s]+/],[/[^}]/,"variable.parameter.handlebars"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/6.1eaa0db0.js b/docs/src/.vuepress/dist/assets/js/6.9b5d321d.js similarity index 67% rename from docs/src/.vuepress/dist/assets/js/6.1eaa0db0.js rename to docs/src/.vuepress/dist/assets/js/6.9b5d321d.js index 58532114..503d4608 100644 --- a/docs/src/.vuepress/dist/assets/js/6.1eaa0db0.js +++ b/docs/src/.vuepress/dist/assets/js/6.9b5d321d.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[6],{334:function(t,e,a){},441:function(t,e,a){"use strict";a(334)},510:function(t,e,a){"use strict";a.r(e);var n={name:"CodeBlock",props:{title:{type:String,required:!0},active:{type:Boolean,default:!1}},mounted:function(){this.$parent&&this.$parent.loadTabs&&this.$parent.loadTabs()}},i=(a(441),a(45)),s=Object(i.a)(n,(function(){var t=this.$createElement;return(this._self._c||t)("div",{staticClass:"theme-code-block",class:{"theme-code-block__active":this.active}},[this._t("default")],2)}),[],!1,null,"759a7d02",null);e.default=s.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[6],{333:function(t,e,a){},440:function(t,e,a){"use strict";a(333)},509:function(t,e,a){"use strict";a.r(e);var n={name:"CodeBlock",props:{title:{type:String,required:!0},active:{type:Boolean,default:!1}},mounted:function(){this.$parent&&this.$parent.loadTabs&&this.$parent.loadTabs()}},i=(a(440),a(45)),s=Object(i.a)(n,(function(){var t=this.$createElement;return(this._self._c||t)("div",{staticClass:"theme-code-block",class:{"theme-code-block__active":this.active}},[this._t("default")],2)}),[],!1,null,"759a7d02",null);e.default=s.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/59.448f9f74.js b/docs/src/.vuepress/dist/assets/js/60.e6d06864.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/59.448f9f74.js rename to docs/src/.vuepress/dist/assets/js/60.e6d06864.js index 6404d97d..48652d40 100644 --- a/docs/src/.vuepress/dist/assets/js/59.448f9f74.js +++ b/docs/src/.vuepress/dist/assets/js/60.e6d06864.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[59],{460:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return r})),n.d(t,"language",(function(){return d}));var i="undefined"==typeof monaco?self.monaco:monaco,o=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],r={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["\x3c!--","--\x3e"]},brackets:[["\x3c!--","--\x3e"],["<",">"],["{","}"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:'"',close:'"'},{open:"'",close:"'"},{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"}],onEnterRules:[{beforeText:new RegExp("<(?!(?:"+o.join("|")+"))([_:\\w][_:\\w-.\\d]*)([^/>]*(?!/)>)[^<]*$","i"),afterText:/^<\/([_:\w][_:\w-.\d]*)\s*>$/i,action:{indentAction:i.languages.IndentAction.IndentOutdent}},{beforeText:new RegExp("<(?!(?:"+o.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),action:{indentAction:i.languages.IndentAction.Indent}}],folding:{markers:{start:new RegExp("^\\s*\x3c!--\\s*#region\\b.*--\x3e"),end:new RegExp("^\\s*\x3c!--\\s*#endregion\\b.*--\x3e")}}},d={defaultToken:"",tokenPostfix:".html",ignoreCase:!0,tokenizer:{root:[[/<!DOCTYPE/,"metatag","@doctype"],[/<!--/,"comment","@comment"],[/(<)((?:[\w\-]+:)?[\w\-]+)(\s*)(\/>)/,["delimiter","tag","","delimiter"]],[/(<)(script)/,["delimiter",{token:"tag",next:"@script"}]],[/(<)(style)/,["delimiter",{token:"tag",next:"@style"}]],[/(<)((?:[\w\-]+:)?[\w\-]+)/,["delimiter",{token:"tag",next:"@otherTag"}]],[/(<\/)((?:[\w\-]+:)?[\w\-]+)/,["delimiter",{token:"tag",next:"@otherTag"}]],[/</,"delimiter"],[/[^<]+/]],doctype:[[/[^>]+/,"metatag.content"],[/>/,"metatag","@pop"]],comment:[[/-->/,"comment","@pop"],[/[^-]+/,"comment.content"],[/./,"comment.content"]],otherTag:[[/\/?>/,"delimiter","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter","tag",{token:"delimiter",next:"@pop"}]]],scriptAfterType:[[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/>/,{token:"delimiter",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]],style:[[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter","tag",{token:"delimiter",next:"@pop"}]]],styleAfterType:[[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/>/,{token:"delimiter",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[60],{460:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return r})),n.d(t,"language",(function(){return d}));var i="undefined"==typeof monaco?self.monaco:monaco,o=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],r={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["\x3c!--","--\x3e"]},brackets:[["\x3c!--","--\x3e"],["<",">"],["{","}"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:'"',close:'"'},{open:"'",close:"'"},{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"}],onEnterRules:[{beforeText:new RegExp("<(?!(?:"+o.join("|")+"))([_:\\w][_:\\w-.\\d]*)([^/>]*(?!/)>)[^<]*$","i"),afterText:/^<\/([_:\w][_:\w-.\d]*)\s*>$/i,action:{indentAction:i.languages.IndentAction.IndentOutdent}},{beforeText:new RegExp("<(?!(?:"+o.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),action:{indentAction:i.languages.IndentAction.Indent}}],folding:{markers:{start:new RegExp("^\\s*\x3c!--\\s*#region\\b.*--\x3e"),end:new RegExp("^\\s*\x3c!--\\s*#endregion\\b.*--\x3e")}}},d={defaultToken:"",tokenPostfix:".html",ignoreCase:!0,tokenizer:{root:[[/<!DOCTYPE/,"metatag","@doctype"],[/<!--/,"comment","@comment"],[/(<)((?:[\w\-]+:)?[\w\-]+)(\s*)(\/>)/,["delimiter","tag","","delimiter"]],[/(<)(script)/,["delimiter",{token:"tag",next:"@script"}]],[/(<)(style)/,["delimiter",{token:"tag",next:"@style"}]],[/(<)((?:[\w\-]+:)?[\w\-]+)/,["delimiter",{token:"tag",next:"@otherTag"}]],[/(<\/)((?:[\w\-]+:)?[\w\-]+)/,["delimiter",{token:"tag",next:"@otherTag"}]],[/</,"delimiter"],[/[^<]+/]],doctype:[[/[^>]+/,"metatag.content"],[/>/,"metatag","@pop"]],comment:[[/-->/,"comment","@pop"],[/[^-]+/,"comment.content"],[/./,"comment.content"]],otherTag:[[/\/?>/,"delimiter","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter","tag",{token:"delimiter",next:"@pop"}]]],scriptAfterType:[[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/>/,{token:"delimiter",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]],style:[[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter","tag",{token:"delimiter",next:"@pop"}]]],styleAfterType:[[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/>/,{token:"delimiter",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/60.cc91f4bf.js b/docs/src/.vuepress/dist/assets/js/61.09466a50.js similarity index 94% rename from docs/src/.vuepress/dist/assets/js/60.cc91f4bf.js rename to docs/src/.vuepress/dist/assets/js/61.09466a50.js index 3b94ee82..95cda99d 100644 --- a/docs/src/.vuepress/dist/assets/js/60.cc91f4bf.js +++ b/docs/src/.vuepress/dist/assets/js/61.09466a50.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[60],{461:function(e,n,s){"use strict";s.r(n),s.d(n,"conf",(function(){return o})),s.d(n,"language",(function(){return t}));var o={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},t={defaultToken:"",tokenPostfix:".ini",escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/^\[[^\]]*\]/,"metatag"],[/(^\w+)(\s*)(\=)/,["key","","delimiter"]],{include:"@whitespace"},[/\d+/,"number"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],whitespace:[[/[ \t\r\n]+/,""],[/^\s*[#;].*$/,"comment"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[61],{461:function(e,n,s){"use strict";s.r(n),s.d(n,"conf",(function(){return o})),s.d(n,"language",(function(){return t}));var o={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},t={defaultToken:"",tokenPostfix:".ini",escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/^\[[^\]]*\]/,"metatag"],[/(^\w+)(\s*)(\=)/,["key","","delimiter"]],{include:"@whitespace"},[/\d+/,"number"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],whitespace:[[/[ \t\r\n]+/,""],[/^\s*[#;].*$/,"comment"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/61.4715a5c4.js b/docs/src/.vuepress/dist/assets/js/62.51975b6b.js similarity index 97% rename from docs/src/.vuepress/dist/assets/js/61.4715a5c4.js rename to docs/src/.vuepress/dist/assets/js/62.51975b6b.js index bc5b3826..4469135b 100644 --- a/docs/src/.vuepress/dist/assets/js/61.4715a5c4.js +++ b/docs/src/.vuepress/dist/assets/js/62.51975b6b.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[61],{462:function(e,t,o){"use strict";o.r(t),o.d(t,"conf",(function(){return n})),o.d(t,"language",(function(){return s}));var n={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],folding:{markers:{start:new RegExp("^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))"),end:new RegExp("^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))")}}},s={defaultToken:"",tokenPostfix:".java",keywords:["abstract","continue","for","new","switch","assert","default","goto","package","synchronized","boolean","do","if","private","this","break","double","implements","protected","throw","byte","else","import","public","throws","case","enum","instanceof","return","transient","catch","extends","int","short","try","char","final","interface","static","void","class","finally","long","strictfp","volatile","const","float","native","super","while","true","false"],operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,tokenizer:{root:[[/[a-zA-Z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,"annotation"],[/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/,"number.float"],[/0[xX](@hexdigits)[Ll]?/,"number.hex"],[/0(@octaldigits)[Ll]?/,"number.octal"],[/0[bB](@binarydigits)[Ll]?/,"number.binary"],[/(@digits)[fFdD]/,"number.float"],[/(@digits)[lL]?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@javadoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],javadoc:[[/[^\/*]+/,"comment.doc"],[/\/\*/,"comment.doc.invalid"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[62],{462:function(e,t,o){"use strict";o.r(t),o.d(t,"conf",(function(){return n})),o.d(t,"language",(function(){return s}));var n={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],folding:{markers:{start:new RegExp("^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))"),end:new RegExp("^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))")}}},s={defaultToken:"",tokenPostfix:".java",keywords:["abstract","continue","for","new","switch","assert","default","goto","package","synchronized","boolean","do","if","private","this","break","double","implements","protected","throw","byte","else","import","public","throws","case","enum","instanceof","return","transient","catch","extends","int","short","try","char","final","interface","static","void","class","finally","long","strictfp","volatile","const","float","native","super","while","true","false"],operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,tokenizer:{root:[[/[a-zA-Z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,"annotation"],[/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/,"number.float"],[/0[xX](@hexdigits)[Ll]?/,"number.hex"],[/0(@octaldigits)[Ll]?/,"number.octal"],[/0[bB](@binarydigits)[Ll]?/,"number.binary"],[/(@digits)[fFdD]/,"number.float"],[/(@digits)[lL]?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@javadoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],javadoc:[[/[^\/*]+/,"comment.doc"],[/\/\*/,"comment.doc.invalid"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/62.27066fd7.js b/docs/src/.vuepress/dist/assets/js/63.0a5e1022.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/62.27066fd7.js rename to docs/src/.vuepress/dist/assets/js/63.0a5e1022.js index d1b0630d..b35b3654 100644 --- a/docs/src/.vuepress/dist/assets/js/62.27066fd7.js +++ b/docs/src/.vuepress/dist/assets/js/63.0a5e1022.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[62],{464:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return i})),t.d(n,"language",(function(){return o}));var i={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],folding:{markers:{start:new RegExp("^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))"),end:new RegExp("^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))")}}},o={defaultToken:"",tokenPostfix:".kt",keywords:["as","as?","break","class","continue","do","else","false","for","fun","if","in","!in","interface","is","!is","null","object","package","return","super","this","throw","true","try","typealias","val","var","when","while","by","catch","constructor","delegate","dynamic","field","file","finally","get","import","init","param","property","receiver","set","setparam","where","actual","abstract","annotation","companion","const","crossinline","data","enum","expect","external","final","infix","inline","inner","internal","lateinit","noinline","open","operator","out","override","private","protected","public","reified","sealed","suspend","tailrec","vararg","field","it"],operators:["+","-","*","/","%","=","+=","-=","*=","/=","%=","++","--","&&","||","!","==","!=","===","!==",">","<","<=",">=","[","]","!!","?.","?:","::","..",":","?","->","@",";","$","_"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,tokenizer:{root:[[/[A-Z][\w\$]*/,"type.identifier"],[/[a-zA-Z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,"annotation"],[/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/,"number.float"],[/0[xX](@hexdigits)[Ll]?/,"number.hex"],[/0(@octaldigits)[Ll]?/,"number.octal"],[/0[bB](@binarydigits)[Ll]?/,"number.binary"],[/(@digits)[fFdD]/,"number.float"],[/(@digits)[lL]?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"""/,"string","@multistring"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@javadoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\/\*/,"comment","@comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],javadoc:[[/[^\/*]+/,"comment.doc"],[/\/\*/,"comment.doc","@push"],[/\/\*/,"comment.doc.invalid"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],multistring:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"""/,"string","@pop"],[/./,"string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[63],{464:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return i})),t.d(n,"language",(function(){return o}));var i={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],folding:{markers:{start:new RegExp("^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))"),end:new RegExp("^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))")}}},o={defaultToken:"",tokenPostfix:".kt",keywords:["as","as?","break","class","continue","do","else","false","for","fun","if","in","!in","interface","is","!is","null","object","package","return","super","this","throw","true","try","typealias","val","var","when","while","by","catch","constructor","delegate","dynamic","field","file","finally","get","import","init","param","property","receiver","set","setparam","where","actual","abstract","annotation","companion","const","crossinline","data","enum","expect","external","final","infix","inline","inner","internal","lateinit","noinline","open","operator","out","override","private","protected","public","reified","sealed","suspend","tailrec","vararg","field","it"],operators:["+","-","*","/","%","=","+=","-=","*=","/=","%=","++","--","&&","||","!","==","!=","===","!==",">","<","<=",">=","[","]","!!","?.","?:","::","..",":","?","->","@",";","$","_"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,tokenizer:{root:[[/[A-Z][\w\$]*/,"type.identifier"],[/[a-zA-Z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,"annotation"],[/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/,"number.float"],[/0[xX](@hexdigits)[Ll]?/,"number.hex"],[/0(@octaldigits)[Ll]?/,"number.octal"],[/0[bB](@binarydigits)[Ll]?/,"number.binary"],[/(@digits)[fFdD]/,"number.float"],[/(@digits)[lL]?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"""/,"string","@multistring"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@javadoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\/\*/,"comment","@comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],javadoc:[[/[^\/*]+/,"comment.doc"],[/\/\*/,"comment.doc","@push"],[/\/\*/,"comment.doc.invalid"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],multistring:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"""/,"string","@pop"],[/./,"string"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/63.d80fb30d.js b/docs/src/.vuepress/dist/assets/js/64.1f6ce620.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/63.d80fb30d.js rename to docs/src/.vuepress/dist/assets/js/64.1f6ce620.js index 2d384c01..842a2b38 100644 --- a/docs/src/.vuepress/dist/assets/js/63.d80fb30d.js +++ b/docs/src/.vuepress/dist/assets/js/64.1f6ce620.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[63],{465:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return i})),n.d(t,"language",(function(){return r}));var i={wordPattern:/(#?-?\d*\.\d\w*%?)|([@#!.:]?[\w-?]+%?)|[@#!.]/g,comments:{blockComment:["/*","*/"],lineComment:"//"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/"),end:new RegExp("^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/")}}},r={defaultToken:"",tokenPostfix:".less",identifier:"-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",identifierPlus:"-?-?([a-zA-Z:.]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-:.]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],tokenizer:{root:[{include:"@nestedJSBegin"},["[ \\t\\r\\n]+",""],{include:"@comments"},{include:"@keyword"},{include:"@strings"},{include:"@numbers"},["[*_]?[a-zA-Z\\-\\s]+(?=:.*(;|(\\\\$)))","attribute.name","@attribute"],["url(\\-prefix)?\\(",{token:"tag",next:"@urldeclaration"}],["[{}()\\[\\]]","@brackets"],["[,:;]","delimiter"],["#@identifierPlus","tag.id"],["&","tag"],["\\.@identifierPlus(?=\\()","tag.class","@attribute"],["\\.@identifierPlus","tag.class"],["@identifierPlus","tag"],{include:"@operators"},["@(@identifier(?=[:,\\)]))","variable","@attribute"],["@(@identifier)","variable"],["@","key","@atRules"]],nestedJSBegin:[["``","delimiter.backtick"],["`",{token:"delimiter.backtick",next:"@nestedJSEnd",nextEmbedded:"text/javascript"}]],nestedJSEnd:[["`",{token:"delimiter.backtick",next:"@pop",nextEmbedded:"@pop"}]],operators:[["[<>=\\+\\-\\*\\/\\^\\|\\~]","operator"]],keyword:[["(@[\\s]*import|![\\s]*important|true|false|when|iscolor|isnumber|isstring|iskeyword|isurl|ispixel|ispercentage|isem|hue|saturation|lightness|alpha|lighten|darken|saturate|desaturate|fadein|fadeout|fade|spin|mix|round|ceil|floor|percentage)\\b","keyword"]],urldeclaration:[{include:"@strings"},["[^)\r\n]+","string"],["\\)",{token:"tag",next:"@pop"}]],attribute:[{include:"@nestedJSBegin"},{include:"@comments"},{include:"@strings"},{include:"@numbers"},{include:"@keyword"},["[a-zA-Z\\-]+(?=\\()","attribute.value","@attribute"],[">","operator","@pop"],["@identifier","attribute.value"],{include:"@operators"},["@(@identifier)","variable"],["[)\\}]","@brackets","@pop"],["[{}()\\[\\]>]","@brackets"],["[;]","delimiter","@pop"],["[,=:]","delimiter"],["\\s",""],[".","attribute.value"]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],numbers:[["(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?",{token:"attribute.value.number",next:"@units"}],["#[0-9a-fA-F_]+(?!\\w)","attribute.value.hex"]],units:[["(em|ex|ch|rem|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?","attribute.value.unit","@pop"]],strings:[['~?"',{token:"string.delimiter",next:"@stringsEndDoubleQuote"}],["~?'",{token:"string.delimiter",next:"@stringsEndQuote"}]],stringsEndDoubleQuote:[['\\\\"',"string"],['"',{token:"string.delimiter",next:"@popall"}],[".","string"]],stringsEndQuote:[["\\\\'","string"],["'",{token:"string.delimiter",next:"@popall"}],[".","string"]],atRules:[{include:"@comments"},{include:"@strings"},["[()]","delimiter"],["[\\{;]","delimiter","@pop"],[".","key"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[64],{465:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return i})),n.d(t,"language",(function(){return r}));var i={wordPattern:/(#?-?\d*\.\d\w*%?)|([@#!.:]?[\w-?]+%?)|[@#!.]/g,comments:{blockComment:["/*","*/"],lineComment:"//"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/"),end:new RegExp("^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/")}}},r={defaultToken:"",tokenPostfix:".less",identifier:"-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",identifierPlus:"-?-?([a-zA-Z:.]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-:.]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],tokenizer:{root:[{include:"@nestedJSBegin"},["[ \\t\\r\\n]+",""],{include:"@comments"},{include:"@keyword"},{include:"@strings"},{include:"@numbers"},["[*_]?[a-zA-Z\\-\\s]+(?=:.*(;|(\\\\$)))","attribute.name","@attribute"],["url(\\-prefix)?\\(",{token:"tag",next:"@urldeclaration"}],["[{}()\\[\\]]","@brackets"],["[,:;]","delimiter"],["#@identifierPlus","tag.id"],["&","tag"],["\\.@identifierPlus(?=\\()","tag.class","@attribute"],["\\.@identifierPlus","tag.class"],["@identifierPlus","tag"],{include:"@operators"},["@(@identifier(?=[:,\\)]))","variable","@attribute"],["@(@identifier)","variable"],["@","key","@atRules"]],nestedJSBegin:[["``","delimiter.backtick"],["`",{token:"delimiter.backtick",next:"@nestedJSEnd",nextEmbedded:"text/javascript"}]],nestedJSEnd:[["`",{token:"delimiter.backtick",next:"@pop",nextEmbedded:"@pop"}]],operators:[["[<>=\\+\\-\\*\\/\\^\\|\\~]","operator"]],keyword:[["(@[\\s]*import|![\\s]*important|true|false|when|iscolor|isnumber|isstring|iskeyword|isurl|ispixel|ispercentage|isem|hue|saturation|lightness|alpha|lighten|darken|saturate|desaturate|fadein|fadeout|fade|spin|mix|round|ceil|floor|percentage)\\b","keyword"]],urldeclaration:[{include:"@strings"},["[^)\r\n]+","string"],["\\)",{token:"tag",next:"@pop"}]],attribute:[{include:"@nestedJSBegin"},{include:"@comments"},{include:"@strings"},{include:"@numbers"},{include:"@keyword"},["[a-zA-Z\\-]+(?=\\()","attribute.value","@attribute"],[">","operator","@pop"],["@identifier","attribute.value"],{include:"@operators"},["@(@identifier)","variable"],["[)\\}]","@brackets","@pop"],["[{}()\\[\\]>]","@brackets"],["[;]","delimiter","@pop"],["[,=:]","delimiter"],["\\s",""],[".","attribute.value"]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],numbers:[["(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?",{token:"attribute.value.number",next:"@units"}],["#[0-9a-fA-F_]+(?!\\w)","attribute.value.hex"]],units:[["(em|ex|ch|rem|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?","attribute.value.unit","@pop"]],strings:[['~?"',{token:"string.delimiter",next:"@stringsEndDoubleQuote"}],["~?'",{token:"string.delimiter",next:"@stringsEndQuote"}]],stringsEndDoubleQuote:[['\\\\"',"string"],['"',{token:"string.delimiter",next:"@popall"}],[".","string"]],stringsEndQuote:[["\\\\'","string"],["'",{token:"string.delimiter",next:"@popall"}],[".","string"]],atRules:[{include:"@comments"},{include:"@strings"},["[()]","delimiter"],["[\\{;]","delimiter","@pop"],[".","key"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/64.f3fdcd50.js b/docs/src/.vuepress/dist/assets/js/65.36e6c3b3.js similarity index 96% rename from docs/src/.vuepress/dist/assets/js/64.f3fdcd50.js rename to docs/src/.vuepress/dist/assets/js/65.36e6c3b3.js index 602755bc..54b6f4a6 100644 --- a/docs/src/.vuepress/dist/assets/js/64.f3fdcd50.js +++ b/docs/src/.vuepress/dist/assets/js/65.36e6c3b3.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[64],{466:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",(function(){return t})),o.d(n,"language",(function(){return s}));var t={comments:{lineComment:"--",blockComment:["--[[","]]"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".lua",keywords:["and","break","do","else","elseif","end","false","for","function","goto","if","in","local","nil","not","or","repeat","return","then","true","until","while"],brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"}],operators:["+","-","*","/","%","^","#","==","~=","<=",">=","<",">","=",";",":",",",".","..","..."],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/(,)(\s*)([a-zA-Z_]\w*)(\s*)(:)(?!:)/,["delimiter","","key","","delimiter"]],[/({)(\s*)([a-zA-Z_]\w*)(\s*)(:)(?!:)/,["@brackets","","key","","delimiter"]],[/[{}()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],whitespace:[[/[ \t\r\n]+/,""],[/--\[([=]*)\[/,"comment","@comment.$1"],[/--.*$/,"comment"]],comment:[[/[^\]]+/,"comment"],[/\]([=]*)\]/,{cases:{"$1==$S2":{token:"comment",next:"@pop"},"@default":"comment"}}],[/./,"comment"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[65],{466:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",(function(){return t})),o.d(n,"language",(function(){return s}));var t={comments:{lineComment:"--",blockComment:["--[[","]]"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".lua",keywords:["and","break","do","else","elseif","end","false","for","function","goto","if","in","local","nil","not","or","repeat","return","then","true","until","while"],brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"}],operators:["+","-","*","/","%","^","#","==","~=","<=",">=","<",">","=",";",":",",",".","..","..."],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/(,)(\s*)([a-zA-Z_]\w*)(\s*)(:)(?!:)/,["delimiter","","key","","delimiter"]],[/({)(\s*)([a-zA-Z_]\w*)(\s*)(:)(?!:)/,["@brackets","","key","","delimiter"]],[/[{}()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],whitespace:[[/[ \t\r\n]+/,""],[/--\[([=]*)\[/,"comment","@comment.$1"],[/--.*$/,"comment"]],comment:[[/[^\]]+/,"comment"],[/\]([=]*)\]/,{cases:{"$1==$S2":{token:"comment",next:"@pop"},"@default":"comment"}}],[/./,"comment"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/65.ae7396ad.js b/docs/src/.vuepress/dist/assets/js/66.a83c3c1e.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/65.ae7396ad.js rename to docs/src/.vuepress/dist/assets/js/66.a83c3c1e.js index 9e7d63fe..b14726dc 100644 --- a/docs/src/.vuepress/dist/assets/js/65.ae7396ad.js +++ b/docs/src/.vuepress/dist/assets/js/66.a83c3c1e.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[65],{467:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return s})),n.d(t,"language",(function(){return o}));var s={comments:{blockComment:["\x3c!--","--\x3e"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">",notIn:["string"]}],surroundingPairs:[{open:"(",close:")"},{open:"[",close:"]"},{open:"`",close:"`"}],folding:{markers:{start:new RegExp("^\\s*\x3c!--\\s*#?region\\b.*--\x3e"),end:new RegExp("^\\s*\x3c!--\\s*#?endregion\\b.*--\x3e")}}},o={defaultToken:"",tokenPostfix:".md",control:/[\\`*_\[\]{}()#+\-\.!]/,noncontrol:/[^\\`*_\[\]{}()#+\-\.!]/,escapes:/\\(?:@control)/,jsescapes:/\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/,empty:["area","base","basefont","br","col","frame","hr","img","input","isindex","link","meta","param"],tokenizer:{root:[[/^\s*\|/,"@rematch","@table_header"],[/^(\s{0,3})(#+)((?:[^\\#]|@escapes)+)((?:#+)?)/,["white","keyword","keyword","keyword"]],[/^\s*(=+|\-+)\s*$/,"keyword"],[/^\s*((\*[ ]?)+)\s*$/,"meta.separator"],[/^\s*>+/,"comment"],[/^\s*([\*\-+:]|\d+\.)\s/,"keyword"],[/^(\t|[ ]{4})[^ ].*$/,"string"],[/^\s*~~~\s*((?:\w|[\/\-#])+)?\s*$/,{token:"string",next:"@codeblock"}],[/^\s*```\s*((?:\w|[\/\-#])+).*$/,{token:"string",next:"@codeblockgh",nextEmbedded:"$1"}],[/^\s*```\s*$/,{token:"string",next:"@codeblock"}],{include:"@linecontent"}],table_header:[{include:"@table_common"},[/[^\|]+/,"keyword.table.header"]],table_body:[{include:"@table_common"},{include:"@linecontent"}],table_common:[[/\s*[\-:]+\s*/,{token:"keyword",switchTo:"table_body"}],[/^\s*\|/,"keyword.table.left"],[/^\s*[^\|]/,"@rematch","@pop"],[/^\s*$/,"@rematch","@pop"],[/\|/,{cases:{"@eos":"keyword.table.right","@default":"keyword.table.middle"}}]],codeblock:[[/^\s*~~~\s*$/,{token:"string",next:"@pop"}],[/^\s*```\s*$/,{token:"string",next:"@pop"}],[/.*$/,"variable.source"]],codeblockgh:[[/```\s*$/,{token:"variable.source",next:"@pop",nextEmbedded:"@pop"}],[/[^`]+/,"variable.source"]],linecontent:[[/&\w+;/,"string.escape"],[/@escapes/,"escape"],[/\b__([^\\_]|@escapes|_(?!_))+__\b/,"strong"],[/\*\*([^\\*]|@escapes|\*(?!\*))+\*\*/,"strong"],[/\b_[^_]+_\b/,"emphasis"],[/\*([^\\*]|@escapes)+\*/,"emphasis"],[/`([^\\`]|@escapes)+`/,"variable"],[/\{+[^}]+\}+/,"string.target"],[/(!?\[)((?:[^\]\\]|@escapes)*)(\]\([^\)]+\))/,["string.link","","string.link"]],[/(!?\[)((?:[^\]\\]|@escapes)*)(\])/,"string.link"],{include:"html"}],html:[[/<(\w+)\/>/,"tag"],[/<(\w+)/,{cases:{"@empty":{token:"tag",next:"@tag.$1"},"@default":{token:"tag",next:"@tag.$1"}}}],[/<\/(\w+)\s*>/,{token:"tag"}],[/<!--/,"comment","@comment"]],comment:[[/[^<\-]+/,"comment.content"],[/-->/,"comment","@pop"],[/<!--/,"comment.content.invalid"],[/[<\-]/,"comment.content"]],tag:[[/[ \t\r\n]+/,"white"],[/(type)(\s*=\s*)(")([^"]+)(")/,["attribute.name.html","delimiter.html","string.html",{token:"string.html",switchTo:"@tag.$S2.$4"},"string.html"]],[/(type)(\s*=\s*)(')([^']+)(')/,["attribute.name.html","delimiter.html","string.html",{token:"string.html",switchTo:"@tag.$S2.$4"},"string.html"]],[/(\w+)(\s*=\s*)("[^"]*"|'[^']*')/,["attribute.name.html","delimiter.html","string.html"]],[/\w+/,"attribute.name.html"],[/\/>/,"tag","@pop"],[/>/,{cases:{"$S2==style":{token:"tag",switchTo:"embeddedStyle",nextEmbedded:"text/css"},"$S2==script":{cases:{$S3:{token:"tag",switchTo:"embeddedScript",nextEmbedded:"$S3"},"@default":{token:"tag",switchTo:"embeddedScript",nextEmbedded:"text/javascript"}}},"@default":{token:"tag",next:"@pop"}}}]],embeddedStyle:[[/[^<]+/,""],[/<\/style\s*>/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/</,""]],embeddedScript:[[/[^<]+/,""],[/<\/script\s*>/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/</,""]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[66],{467:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return s})),n.d(t,"language",(function(){return o}));var s={comments:{blockComment:["\x3c!--","--\x3e"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">",notIn:["string"]}],surroundingPairs:[{open:"(",close:")"},{open:"[",close:"]"},{open:"`",close:"`"}],folding:{markers:{start:new RegExp("^\\s*\x3c!--\\s*#?region\\b.*--\x3e"),end:new RegExp("^\\s*\x3c!--\\s*#?endregion\\b.*--\x3e")}}},o={defaultToken:"",tokenPostfix:".md",control:/[\\`*_\[\]{}()#+\-\.!]/,noncontrol:/[^\\`*_\[\]{}()#+\-\.!]/,escapes:/\\(?:@control)/,jsescapes:/\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/,empty:["area","base","basefont","br","col","frame","hr","img","input","isindex","link","meta","param"],tokenizer:{root:[[/^\s*\|/,"@rematch","@table_header"],[/^(\s{0,3})(#+)((?:[^\\#]|@escapes)+)((?:#+)?)/,["white","keyword","keyword","keyword"]],[/^\s*(=+|\-+)\s*$/,"keyword"],[/^\s*((\*[ ]?)+)\s*$/,"meta.separator"],[/^\s*>+/,"comment"],[/^\s*([\*\-+:]|\d+\.)\s/,"keyword"],[/^(\t|[ ]{4})[^ ].*$/,"string"],[/^\s*~~~\s*((?:\w|[\/\-#])+)?\s*$/,{token:"string",next:"@codeblock"}],[/^\s*```\s*((?:\w|[\/\-#])+).*$/,{token:"string",next:"@codeblockgh",nextEmbedded:"$1"}],[/^\s*```\s*$/,{token:"string",next:"@codeblock"}],{include:"@linecontent"}],table_header:[{include:"@table_common"},[/[^\|]+/,"keyword.table.header"]],table_body:[{include:"@table_common"},{include:"@linecontent"}],table_common:[[/\s*[\-:]+\s*/,{token:"keyword",switchTo:"table_body"}],[/^\s*\|/,"keyword.table.left"],[/^\s*[^\|]/,"@rematch","@pop"],[/^\s*$/,"@rematch","@pop"],[/\|/,{cases:{"@eos":"keyword.table.right","@default":"keyword.table.middle"}}]],codeblock:[[/^\s*~~~\s*$/,{token:"string",next:"@pop"}],[/^\s*```\s*$/,{token:"string",next:"@pop"}],[/.*$/,"variable.source"]],codeblockgh:[[/```\s*$/,{token:"variable.source",next:"@pop",nextEmbedded:"@pop"}],[/[^`]+/,"variable.source"]],linecontent:[[/&\w+;/,"string.escape"],[/@escapes/,"escape"],[/\b__([^\\_]|@escapes|_(?!_))+__\b/,"strong"],[/\*\*([^\\*]|@escapes|\*(?!\*))+\*\*/,"strong"],[/\b_[^_]+_\b/,"emphasis"],[/\*([^\\*]|@escapes)+\*/,"emphasis"],[/`([^\\`]|@escapes)+`/,"variable"],[/\{+[^}]+\}+/,"string.target"],[/(!?\[)((?:[^\]\\]|@escapes)*)(\]\([^\)]+\))/,["string.link","","string.link"]],[/(!?\[)((?:[^\]\\]|@escapes)*)(\])/,"string.link"],{include:"html"}],html:[[/<(\w+)\/>/,"tag"],[/<(\w+)/,{cases:{"@empty":{token:"tag",next:"@tag.$1"},"@default":{token:"tag",next:"@tag.$1"}}}],[/<\/(\w+)\s*>/,{token:"tag"}],[/<!--/,"comment","@comment"]],comment:[[/[^<\-]+/,"comment.content"],[/-->/,"comment","@pop"],[/<!--/,"comment.content.invalid"],[/[<\-]/,"comment.content"]],tag:[[/[ \t\r\n]+/,"white"],[/(type)(\s*=\s*)(")([^"]+)(")/,["attribute.name.html","delimiter.html","string.html",{token:"string.html",switchTo:"@tag.$S2.$4"},"string.html"]],[/(type)(\s*=\s*)(')([^']+)(')/,["attribute.name.html","delimiter.html","string.html",{token:"string.html",switchTo:"@tag.$S2.$4"},"string.html"]],[/(\w+)(\s*=\s*)("[^"]*"|'[^']*')/,["attribute.name.html","delimiter.html","string.html"]],[/\w+/,"attribute.name.html"],[/\/>/,"tag","@pop"],[/>/,{cases:{"$S2==style":{token:"tag",switchTo:"embeddedStyle",nextEmbedded:"text/css"},"$S2==script":{cases:{$S3:{token:"tag",switchTo:"embeddedScript",nextEmbedded:"$S3"},"@default":{token:"tag",switchTo:"embeddedScript",nextEmbedded:"text/javascript"}}},"@default":{token:"tag",next:"@pop"}}}]],embeddedStyle:[[/[^<]+/,""],[/<\/style\s*>/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/</,""]],embeddedScript:[[/[^<]+/,""],[/<\/script\s*>/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/</,""]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/66.47bd296d.js b/docs/src/.vuepress/dist/assets/js/67.b32ba88c.js similarity index 97% rename from docs/src/.vuepress/dist/assets/js/66.47bd296d.js rename to docs/src/.vuepress/dist/assets/js/67.b32ba88c.js index 44c30e26..8daf94fd 100644 --- a/docs/src/.vuepress/dist/assets/js/66.47bd296d.js +++ b/docs/src/.vuepress/dist/assets/js/67.b32ba88c.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[66],{468:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return r})),n.d(t,"language",(function(){return s}));var r={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\$\-\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{blockComment:["###","###"],lineComment:"#"},folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},s={defaultToken:"",ignoreCase:!1,tokenPostfix:".mips",regEx:/\/(?!\/\/)(?:[^\/\\]|\\.)*\/[igm]*/,keywords:[".data",".text","syscall","trap","add","addu","addi","addiu","and","andi","div","divu","mult","multu","nor","or","ori","sll","slv","sra","srav","srl","srlv","sub","subu","xor","xori","lhi","lho","lhi","llo","slt","slti","sltu","sltiu","beq","bgtz","blez","bne","j","jal","jalr","jr","lb","lbu","lh","lhu","lw","li","la","sb","sh","sw","mfhi","mflo","mthi","mtlo","move"],symbols:/[\.,\:]+/,escapes:/\\(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/\$[a-zA-Z_]\w*/,"variable.predefined"],[/[.a-zA-Z_]\w*/,{cases:{this:"variable.predefined","@keywords":{token:"keyword.$0"},"@default":""}}],[/[ \t\r\n]+/,""],[/#.*$/,"comment"],["///",{token:"regexp",next:"@hereregexp"}],[/^(\s*)(@regEx)/,["","regexp"]],[/(\,)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\:)(\s*)(@regEx)/,["delimiter","","regexp"]],[/@symbols/,"delimiter"],[/\d+[eE]([\-+]?\d+)?/,"number.float"],[/\d+\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/0[0-7]+(?!\d)/,"number.octal"],[/\d+/,"number"],[/[,.]/,"delimiter"],[/"""/,"string",'@herestring."""'],[/'''/,"string","@herestring.'''"],[/"/,{cases:{"@eos":"string","@default":{token:"string",next:'@string."'}}}],[/'/,{cases:{"@eos":"string","@default":{token:"string",next:"@string.'"}}}]],string:[[/[^"'\#\\]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/\./,"string.escape.invalid"],[/#{/,{cases:{'$S2=="':{token:"string",next:"root.interpolatedstring"},"@default":"string"}}],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/#/,"string"]],herestring:[[/("""|''')/,{cases:{"$1==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/[^#\\'"]+/,"string"],[/['"]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/#{/,{token:"string.quote",next:"root.interpolatedstring"}],[/#/,"string"]],comment:[[/[^#]+/,"comment"],[/#/,"comment"]],hereregexp:[[/[^\\\/#]+/,"regexp"],[/\\./,"regexp"],[/#.*$/,"comment"],["///[igm]*",{token:"regexp",next:"@pop"}],[/\//,"regexp"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[67],{468:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return r})),n.d(t,"language",(function(){return s}));var r={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\$\-\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{blockComment:["###","###"],lineComment:"#"},folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},s={defaultToken:"",ignoreCase:!1,tokenPostfix:".mips",regEx:/\/(?!\/\/)(?:[^\/\\]|\\.)*\/[igm]*/,keywords:[".data",".text","syscall","trap","add","addu","addi","addiu","and","andi","div","divu","mult","multu","nor","or","ori","sll","slv","sra","srav","srl","srlv","sub","subu","xor","xori","lhi","lho","lhi","llo","slt","slti","sltu","sltiu","beq","bgtz","blez","bne","j","jal","jalr","jr","lb","lbu","lh","lhu","lw","li","la","sb","sh","sw","mfhi","mflo","mthi","mtlo","move"],symbols:/[\.,\:]+/,escapes:/\\(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/\$[a-zA-Z_]\w*/,"variable.predefined"],[/[.a-zA-Z_]\w*/,{cases:{this:"variable.predefined","@keywords":{token:"keyword.$0"},"@default":""}}],[/[ \t\r\n]+/,""],[/#.*$/,"comment"],["///",{token:"regexp",next:"@hereregexp"}],[/^(\s*)(@regEx)/,["","regexp"]],[/(\,)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\:)(\s*)(@regEx)/,["delimiter","","regexp"]],[/@symbols/,"delimiter"],[/\d+[eE]([\-+]?\d+)?/,"number.float"],[/\d+\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/0[0-7]+(?!\d)/,"number.octal"],[/\d+/,"number"],[/[,.]/,"delimiter"],[/"""/,"string",'@herestring."""'],[/'''/,"string","@herestring.'''"],[/"/,{cases:{"@eos":"string","@default":{token:"string",next:'@string."'}}}],[/'/,{cases:{"@eos":"string","@default":{token:"string",next:"@string.'"}}}]],string:[[/[^"'\#\\]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/\./,"string.escape.invalid"],[/#{/,{cases:{'$S2=="':{token:"string",next:"root.interpolatedstring"},"@default":"string"}}],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/#/,"string"]],herestring:[[/("""|''')/,{cases:{"$1==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/[^#\\'"]+/,"string"],[/['"]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/#{/,{token:"string.quote",next:"root.interpolatedstring"}],[/#/,"string"]],comment:[[/[^#]+/,"comment"],[/#/,"comment"]],hereregexp:[[/[^\\\/#]+/,"regexp"],[/\\./,"regexp"],[/#.*$/,"comment"],["///[igm]*",{token:"regexp",next:"@pop"}],[/\//,"regexp"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/67.65377661.js b/docs/src/.vuepress/dist/assets/js/68.a33b0caf.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/67.65377661.js rename to docs/src/.vuepress/dist/assets/js/68.a33b0caf.js index 0879f55a..d157b73b 100644 --- a/docs/src/.vuepress/dist/assets/js/67.65377661.js +++ b/docs/src/.vuepress/dist/assets/js/68.a33b0caf.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[67],{469:function(E,T,A){"use strict";A.r(T),A.d(T,"conf",(function(){return N})),A.d(T,"language",(function(){return R}));var N={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["[","]"],["(",")"],["{","}"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]}]},R={defaultToken:"",tokenPostfix:".msdax",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"{",close:"}",token:"delimiter.brackets"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["VAR","RETURN","NOT","EVALUATE","DATATABLE","ORDER","BY","START","AT","DEFINE","MEASURE","ASC","DESC","IN","BOOLEAN","DOUBLE","INTEGER","DATETIME","CURRENCY","STRING"],functions:["CLOSINGBALANCEMONTH","CLOSINGBALANCEQUARTER","CLOSINGBALANCEYEAR","DATEADD","DATESBETWEEN","DATESINPERIOD","DATESMTD","DATESQTD","DATESYTD","ENDOFMONTH","ENDOFQUARTER","ENDOFYEAR","FIRSTDATE","FIRSTNONBLANK","LASTDATE","LASTNONBLANK","NEXTDAY","NEXTMONTH","NEXTQUARTER","NEXTYEAR","OPENINGBALANCEMONTH","OPENINGBALANCEQUARTER","OPENINGBALANCEYEAR","PARALLELPERIOD","PREVIOUSDAY","PREVIOUSMONTH","PREVIOUSQUARTER","PREVIOUSYEAR","SAMEPERIODLASTYEAR","STARTOFMONTH","STARTOFQUARTER","STARTOFYEAR","TOTALMTD","TOTALQTD","TOTALYTD","ADDCOLUMNS","ADDMISSINGITEMS","ALL","ALLEXCEPT","ALLNOBLANKROW","ALLSELECTED","CALCULATE","CALCULATETABLE","CALENDAR","CALENDARAUTO","CROSSFILTER","CROSSJOIN","CURRENTGROUP","DATATABLE","DETAILROWS","DISTINCT","EARLIER","EARLIEST","EXCEPT","FILTER","FILTERS","GENERATE","GENERATEALL","GROUPBY","IGNORE","INTERSECT","ISONORAFTER","KEEPFILTERS","LOOKUPVALUE","NATURALINNERJOIN","NATURALLEFTOUTERJOIN","RELATED","RELATEDTABLE","ROLLUP","ROLLUPADDISSUBTOTAL","ROLLUPGROUP","ROLLUPISSUBTOTAL","ROW","SAMPLE","SELECTCOLUMNS","SUBSTITUTEWITHINDEX","SUMMARIZE","SUMMARIZECOLUMNS","TOPN","TREATAS","UNION","USERELATIONSHIP","VALUES","SUM","SUMX","PATH","PATHCONTAINS","PATHITEM","PATHITEMREVERSE","PATHLENGTH","AVERAGE","AVERAGEA","AVERAGEX","COUNT","COUNTA","COUNTAX","COUNTBLANK","COUNTROWS","COUNTX","DISTINCTCOUNT","DIVIDE","GEOMEAN","GEOMEANX","MAX","MAXA","MAXX","MEDIAN","MEDIANX","MIN","MINA","MINX","PERCENTILE.EXC","PERCENTILE.INC","PERCENTILEX.EXC","PERCENTILEX.INC","PRODUCT","PRODUCTX","RANK.EQ","RANKX","STDEV.P","STDEV.S","STDEVX.P","STDEVX.S","VAR.P","VAR.S","VARX.P","VARX.S","XIRR","XNPV","DATE","DATEDIFF","DATEVALUE","DAY","EDATE","EOMONTH","HOUR","MINUTE","MONTH","NOW","SECOND","TIME","TIMEVALUE","TODAY","WEEKDAY","WEEKNUM","YEAR","YEARFRAC","CONTAINS","CONTAINSROW","CUSTOMDATA","ERROR","HASONEFILTER","HASONEVALUE","ISBLANK","ISCROSSFILTERED","ISEMPTY","ISERROR","ISEVEN","ISFILTERED","ISLOGICAL","ISNONTEXT","ISNUMBER","ISODD","ISSUBTOTAL","ISTEXT","USERNAME","USERPRINCIPALNAME","AND","FALSE","IF","IFERROR","NOT","OR","SWITCH","TRUE","ABS","ACOS","ACOSH","ACOT","ACOTH","ASIN","ASINH","ATAN","ATANH","BETA.DIST","BETA.INV","CEILING","CHISQ.DIST","CHISQ.DIST.RT","CHISQ.INV","CHISQ.INV.RT","COMBIN","COMBINA","CONFIDENCE.NORM","CONFIDENCE.T","COS","COSH","COT","COTH","CURRENCY","DEGREES","EVEN","EXP","EXPON.DIST","FACT","FLOOR","GCD","INT","ISO.CEILING","LCM","LN","LOG","LOG10","MOD","MROUND","ODD","PERMUT","PI","POISSON.DIST","POWER","QUOTIENT","RADIANS","RAND","RANDBETWEEN","ROUND","ROUNDDOWN","ROUNDUP","SIGN","SIN","SINH","SQRT","SQRTPI","TAN","TANH","TRUNC","BLANK","CONCATENATE","CONCATENATEX","EXACT","FIND","FIXED","FORMAT","LEFT","LEN","LOWER","MID","REPLACE","REPT","RIGHT","SEARCH","SUBSTITUTE","TRIM","UNICHAR","UNICODE","UPPER","VALUE"],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},[/[;,.]/,"delimiter"],[/[({})]/,"@brackets"],[/[a-z_][a-zA-Z0-9_]*/,{cases:{"@keywords":"keyword","@functions":"keyword","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/\/\/+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/N"/,{token:"string",next:"@string"}],[/"/,{token:"string",next:"@string"}]],string:[[/[^"]+/,"string"],[/""/,"string"],[/"/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/\[/,{token:"identifier.quote",next:"@bracketedIdentifier"}],[/'/,{token:"identifier.quote",next:"@quotedIdentifier"}]],bracketedIdentifier:[[/[^\]]+/,"identifier"],[/]]/,"identifier"],[/]/,{token:"identifier.quote",next:"@pop"}]],quotedIdentifier:[[/[^']+/,"identifier"],[/''/,"identifier"],[/'/,{token:"identifier.quote",next:"@pop"}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[68],{469:function(E,T,A){"use strict";A.r(T),A.d(T,"conf",(function(){return N})),A.d(T,"language",(function(){return R}));var N={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["[","]"],["(",")"],["{","}"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]}]},R={defaultToken:"",tokenPostfix:".msdax",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"{",close:"}",token:"delimiter.brackets"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["VAR","RETURN","NOT","EVALUATE","DATATABLE","ORDER","BY","START","AT","DEFINE","MEASURE","ASC","DESC","IN","BOOLEAN","DOUBLE","INTEGER","DATETIME","CURRENCY","STRING"],functions:["CLOSINGBALANCEMONTH","CLOSINGBALANCEQUARTER","CLOSINGBALANCEYEAR","DATEADD","DATESBETWEEN","DATESINPERIOD","DATESMTD","DATESQTD","DATESYTD","ENDOFMONTH","ENDOFQUARTER","ENDOFYEAR","FIRSTDATE","FIRSTNONBLANK","LASTDATE","LASTNONBLANK","NEXTDAY","NEXTMONTH","NEXTQUARTER","NEXTYEAR","OPENINGBALANCEMONTH","OPENINGBALANCEQUARTER","OPENINGBALANCEYEAR","PARALLELPERIOD","PREVIOUSDAY","PREVIOUSMONTH","PREVIOUSQUARTER","PREVIOUSYEAR","SAMEPERIODLASTYEAR","STARTOFMONTH","STARTOFQUARTER","STARTOFYEAR","TOTALMTD","TOTALQTD","TOTALYTD","ADDCOLUMNS","ADDMISSINGITEMS","ALL","ALLEXCEPT","ALLNOBLANKROW","ALLSELECTED","CALCULATE","CALCULATETABLE","CALENDAR","CALENDARAUTO","CROSSFILTER","CROSSJOIN","CURRENTGROUP","DATATABLE","DETAILROWS","DISTINCT","EARLIER","EARLIEST","EXCEPT","FILTER","FILTERS","GENERATE","GENERATEALL","GROUPBY","IGNORE","INTERSECT","ISONORAFTER","KEEPFILTERS","LOOKUPVALUE","NATURALINNERJOIN","NATURALLEFTOUTERJOIN","RELATED","RELATEDTABLE","ROLLUP","ROLLUPADDISSUBTOTAL","ROLLUPGROUP","ROLLUPISSUBTOTAL","ROW","SAMPLE","SELECTCOLUMNS","SUBSTITUTEWITHINDEX","SUMMARIZE","SUMMARIZECOLUMNS","TOPN","TREATAS","UNION","USERELATIONSHIP","VALUES","SUM","SUMX","PATH","PATHCONTAINS","PATHITEM","PATHITEMREVERSE","PATHLENGTH","AVERAGE","AVERAGEA","AVERAGEX","COUNT","COUNTA","COUNTAX","COUNTBLANK","COUNTROWS","COUNTX","DISTINCTCOUNT","DIVIDE","GEOMEAN","GEOMEANX","MAX","MAXA","MAXX","MEDIAN","MEDIANX","MIN","MINA","MINX","PERCENTILE.EXC","PERCENTILE.INC","PERCENTILEX.EXC","PERCENTILEX.INC","PRODUCT","PRODUCTX","RANK.EQ","RANKX","STDEV.P","STDEV.S","STDEVX.P","STDEVX.S","VAR.P","VAR.S","VARX.P","VARX.S","XIRR","XNPV","DATE","DATEDIFF","DATEVALUE","DAY","EDATE","EOMONTH","HOUR","MINUTE","MONTH","NOW","SECOND","TIME","TIMEVALUE","TODAY","WEEKDAY","WEEKNUM","YEAR","YEARFRAC","CONTAINS","CONTAINSROW","CUSTOMDATA","ERROR","HASONEFILTER","HASONEVALUE","ISBLANK","ISCROSSFILTERED","ISEMPTY","ISERROR","ISEVEN","ISFILTERED","ISLOGICAL","ISNONTEXT","ISNUMBER","ISODD","ISSUBTOTAL","ISTEXT","USERNAME","USERPRINCIPALNAME","AND","FALSE","IF","IFERROR","NOT","OR","SWITCH","TRUE","ABS","ACOS","ACOSH","ACOT","ACOTH","ASIN","ASINH","ATAN","ATANH","BETA.DIST","BETA.INV","CEILING","CHISQ.DIST","CHISQ.DIST.RT","CHISQ.INV","CHISQ.INV.RT","COMBIN","COMBINA","CONFIDENCE.NORM","CONFIDENCE.T","COS","COSH","COT","COTH","CURRENCY","DEGREES","EVEN","EXP","EXPON.DIST","FACT","FLOOR","GCD","INT","ISO.CEILING","LCM","LN","LOG","LOG10","MOD","MROUND","ODD","PERMUT","PI","POISSON.DIST","POWER","QUOTIENT","RADIANS","RAND","RANDBETWEEN","ROUND","ROUNDDOWN","ROUNDUP","SIGN","SIN","SINH","SQRT","SQRTPI","TAN","TANH","TRUNC","BLANK","CONCATENATE","CONCATENATEX","EXACT","FIND","FIXED","FORMAT","LEFT","LEN","LOWER","MID","REPLACE","REPT","RIGHT","SEARCH","SUBSTITUTE","TRIM","UNICHAR","UNICODE","UPPER","VALUE"],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},[/[;,.]/,"delimiter"],[/[({})]/,"@brackets"],[/[a-z_][a-zA-Z0-9_]*/,{cases:{"@keywords":"keyword","@functions":"keyword","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/\/\/+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/N"/,{token:"string",next:"@string"}],[/"/,{token:"string",next:"@string"}]],string:[[/[^"]+/,"string"],[/""/,"string"],[/"/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/\[/,{token:"identifier.quote",next:"@bracketedIdentifier"}],[/'/,{token:"identifier.quote",next:"@quotedIdentifier"}]],bracketedIdentifier:[[/[^\]]+/,"identifier"],[/]]/,"identifier"],[/]/,{token:"identifier.quote",next:"@pop"}]],quotedIdentifier:[[/[^']+/,"identifier"],[/''/,"identifier"],[/'/,{token:"identifier.quote",next:"@pop"}]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/68.a52d49a3.js b/docs/src/.vuepress/dist/assets/js/69.ed11a426.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/68.a52d49a3.js rename to docs/src/.vuepress/dist/assets/js/69.ed11a426.js index ab06d8cd..120c8606 100644 --- a/docs/src/.vuepress/dist/assets/js/68.a52d49a3.js +++ b/docs/src/.vuepress/dist/assets/js/69.ed11a426.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[68],{470:function(E,T,S){"use strict";S.r(T),S.d(T,"conf",(function(){return R})),S.d(T,"language",(function(){return A}));var R={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},A={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["ACCESSIBLE","ACCOUNT","ACTION","ADD","AFTER","AGAINST","AGGREGATE","ALGORITHM","ALL","ALTER","ALWAYS","ANALYSE","ANALYZE","AND","ANY","AS","ASC","ASCII","ASENSITIVE","AT","AUTOEXTEND_SIZE","AUTO_INCREMENT","AVG","AVG_ROW_LENGTH","BACKUP","BEFORE","BEGIN","BETWEEN","BIGINT","BINARY","BINLOG","BIT","BLOB","BLOCK","BOOL","BOOLEAN","BOTH","BTREE","BY","BYTE","CACHE","CALL","CASCADE","CASCADED","CASE","CATALOG_NAME","CHAIN","CHANGE","CHANGED","CHANNEL","CHAR","CHARACTER","CHARSET","CHECK","CHECKSUM","CIPHER","CLASS_ORIGIN","CLIENT","CLOSE","COALESCE","CODE","COLLATE","COLLATION","COLUMN","COLUMNS","COLUMN_FORMAT","COLUMN_NAME","COMMENT","COMMIT","COMMITTED","COMPACT","COMPLETION","COMPRESSED","COMPRESSION","CONCURRENT","CONDITION","CONNECTION","CONSISTENT","CONSTRAINT","CONSTRAINT_CATALOG","CONSTRAINT_NAME","CONSTRAINT_SCHEMA","CONTAINS","CONTEXT","CONTINUE","CONVERT","CPU","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","CURSOR_NAME","DATA","DATABASE","DATABASES","DATAFILE","DATE","DATETIME","DAY","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DEALLOCATE","DEC","DECIMAL","DECLARE","DEFAULT","DEFAULT_AUTH","DEFINER","DELAYED","DELAY_KEY_WRITE","DELETE","DESC","DESCRIBE","DES_KEY_FILE","DETERMINISTIC","DIAGNOSTICS","DIRECTORY","DISABLE","DISCARD","DISK","DISTINCT","DISTINCTROW","DIV","DO","DOUBLE","DROP","DUAL","DUMPFILE","DUPLICATE","DYNAMIC","EACH","ELSE","ELSEIF","ENABLE","ENCLOSED","ENCRYPTION","END","ENDS","ENGINE","ENGINES","ENUM","ERROR","ERRORS","ESCAPE","ESCAPED","EVENT","EVENTS","EVERY","EXCHANGE","EXECUTE","EXISTS","EXIT","EXPANSION","EXPIRE","EXPLAIN","EXPORT","EXTENDED","EXTENT_SIZE","FALSE","FAST","FAULTS","FETCH","FIELDS","FILE","FILE_BLOCK_SIZE","FILTER","FIRST","FIXED","FLOAT","FLOAT4","FLOAT8","FLUSH","FOLLOWS","FOR","FORCE","FOREIGN","FORMAT","FOUND","FROM","FULL","FULLTEXT","FUNCTION","GENERAL","GENERATED","GEOMETRY","GEOMETRYCOLLECTION","GET","GET_FORMAT","GLOBAL","GRANT","GRANTS","GROUP","GROUP_REPLICATION","HANDLER","HASH","HAVING","HELP","HIGH_PRIORITY","HOST","HOSTS","HOUR","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IDENTIFIED","IF","IGNORE","IGNORE_SERVER_IDS","IMPORT","INDEX","INDEXES","INFILE","INITIAL_SIZE","INNER","INOUT","INSENSITIVE","INSERT","INSERT_METHOD","INSTALL","INSTANCE","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","INTERVAL","INTO","INVOKER","IO","IO_AFTER_GTIDS","IO_BEFORE_GTIDS","IO_THREAD","IPC","ISOLATION","ISSUER","ITERATE","JOIN","JSON","KEY","KEYS","KEY_BLOCK_SIZE","KILL","LANGUAGE","LAST","LEADING","LEAVE","LEAVES","LEFT","LESS","LEVEL","LIKE","LIMIT","LINEAR","LINES","LINESTRING","LIST","LOAD","LOCAL","LOCALTIME","LOCALTIMESTAMP","LOCK","LOCKS","LOGFILE","LOGS","LONG","LONGBLOB","LONGTEXT","LOOP","LOW_PRIORITY","MASTER","MASTER_AUTO_POSITION","MASTER_BIND","MASTER_CONNECT_RETRY","MASTER_DELAY","MASTER_HEARTBEAT_PERIOD","MASTER_HOST","MASTER_LOG_FILE","MASTER_LOG_POS","MASTER_PASSWORD","MASTER_PORT","MASTER_RETRY_COUNT","MASTER_SERVER_ID","MASTER_SSL","MASTER_SSL_CA","MASTER_SSL_CAPATH","MASTER_SSL_CERT","MASTER_SSL_CIPHER","MASTER_SSL_CRL","MASTER_SSL_CRLPATH","MASTER_SSL_KEY","MASTER_SSL_VERIFY_SERVER_CERT","MASTER_TLS_VERSION","MASTER_USER","MATCH","MAXVALUE","MAX_CONNECTIONS_PER_HOUR","MAX_QUERIES_PER_HOUR","MAX_ROWS","MAX_SIZE","MAX_STATEMENT_TIME","MAX_UPDATES_PER_HOUR","MAX_USER_CONNECTIONS","MEDIUM","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MEMORY","MERGE","MESSAGE_TEXT","MICROSECOND","MIDDLEINT","MIGRATE","MINUTE","MINUTE_MICROSECOND","MINUTE_SECOND","MIN_ROWS","MOD","MODE","MODIFIES","MODIFY","MONTH","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","MUTEX","MYSQL_ERRNO","NAME","NAMES","NATIONAL","NATURAL","NCHAR","NDB","NDBCLUSTER","NEVER","NEW","NEXT","NO","NODEGROUP","NONBLOCKING","NONE","NO_WAIT","NO_WRITE_TO_BINLOG","NUMBER","NUMERIC","NVARCHAR","OFFSET","OLD_PASSWORD","ON","ONE","ONLY","OPEN","OPTIMIZE","OPTIMIZER_COSTS","OPTION","OPTIONALLY","OPTIONS","OR","ORDER","OUT","OUTER","OUTFILE","OWNER","PACK_KEYS","PAGE","PARSER","PARSE_GCOL_EXPR","PARTIAL","PARTITION","PARTITIONING","PARTITIONS","PASSWORD","PHASE","PLUGIN","PLUGINS","PLUGIN_DIR","POINT","POLYGON","PORT","PRECEDES","PRECISION","PREPARE","PRESERVE","PREV","PRIMARY","PRIVILEGES","PROCEDURE","PROCESSLIST","PROFILE","PROFILES","PROXY","PURGE","QUARTER","QUERY","QUICK","RANGE","READ","READS","READ_ONLY","READ_WRITE","REAL","REBUILD","RECOVER","REDOFILE","REDO_BUFFER_SIZE","REDUNDANT","REFERENCES","REGEXP","RELAY","RELAYLOG","RELAY_LOG_FILE","RELAY_LOG_POS","RELAY_THREAD","RELEASE","RELOAD","REMOVE","RENAME","REORGANIZE","REPAIR","REPEAT","REPEATABLE","REPLACE","REPLICATE_DO_DB","REPLICATE_DO_TABLE","REPLICATE_IGNORE_DB","REPLICATE_IGNORE_TABLE","REPLICATE_REWRITE_DB","REPLICATE_WILD_DO_TABLE","REPLICATE_WILD_IGNORE_TABLE","REPLICATION","REQUIRE","RESET","RESIGNAL","RESTORE","RESTRICT","RESUME","RETURN","RETURNED_SQLSTATE","RETURNS","REVERSE","REVOKE","RIGHT","RLIKE","ROLLBACK","ROLLUP","ROTATE","ROUTINE","ROW","ROWS","ROW_COUNT","ROW_FORMAT","RTREE","SAVEPOINT","SCHEDULE","SCHEMA","SCHEMAS","SCHEMA_NAME","SECOND","SECOND_MICROSECOND","SECURITY","SELECT","SENSITIVE","SEPARATOR","SERIAL","SERIALIZABLE","SERVER","SESSION","SET","SHARE","SHOW","SHUTDOWN","SIGNAL","SIGNED","SIMPLE","SLAVE","SLOW","SMALLINT","SNAPSHOT","SOCKET","SOME","SONAME","SOUNDS","SOURCE","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_AFTER_GTIDS","SQL_AFTER_MTS_GAPS","SQL_BEFORE_GTIDS","SQL_BIG_RESULT","SQL_BUFFER_RESULT","SQL_CACHE","SQL_CALC_FOUND_ROWS","SQL_NO_CACHE","SQL_SMALL_RESULT","SQL_THREAD","SQL_TSI_DAY","SQL_TSI_HOUR","SQL_TSI_MINUTE","SQL_TSI_MONTH","SQL_TSI_QUARTER","SQL_TSI_SECOND","SQL_TSI_WEEK","SQL_TSI_YEAR","SSL","STACKED","START","STARTING","STARTS","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STATUS","STOP","STORAGE","STORED","STRAIGHT_JOIN","STRING","SUBCLASS_ORIGIN","SUBJECT","SUBPARTITION","SUBPARTITIONS","SUPER","SUSPEND","SWAPS","SWITCHES","TABLE","TABLES","TABLESPACE","TABLE_CHECKSUM","TABLE_NAME","TEMPORARY","TEMPTABLE","TERMINATED","TEXT","THAN","THEN","TIME","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TINYBLOB","TINYINT","TINYTEXT","TO","TRAILING","TRANSACTION","TRIGGER","TRIGGERS","TRUE","TRUNCATE","TYPE","TYPES","UNCOMMITTED","UNDEFINED","UNDO","UNDOFILE","UNDO_BUFFER_SIZE","UNICODE","UNINSTALL","UNION","UNIQUE","UNKNOWN","UNLOCK","UNSIGNED","UNTIL","UPDATE","UPGRADE","USAGE","USE","USER","USER_RESOURCES","USE_FRM","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALIDATION","VALUE","VALUES","VARBINARY","VARCHAR","VARCHARACTER","VARIABLES","VARYING","VIEW","VIRTUAL","WAIT","WARNINGS","WEEK","WEIGHT_STRING","WHEN","WHERE","WHILE","WITH","WITHOUT","WORK","WRAPPER","WRITE","X509","XA","XID","XML","XOR","YEAR","YEAR_MONTH","ZEROFILL"],operators:["AND","BETWEEN","IN","LIKE","NOT","OR","IS","NULL","INTERSECT","UNION","INNER","JOIN","LEFT","OUTER","RIGHT"],builtinFunctions:["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","Area","AsBinary","AsWKB","ASCII","ASIN","AsText","AsWKT","ASYMMETRIC_DECRYPT","ASYMMETRIC_DERIVE","ASYMMETRIC_ENCRYPT","ASYMMETRIC_SIGN","ASYMMETRIC_VERIFY","ATAN","ATAN2","ATAN","AVG","BENCHMARK","BIN","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","Buffer","CAST","CEIL","CEILING","Centroid","CHAR","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","Contains","CONV","CONVERT","CONVERT_TZ","ConvexHull","COS","COT","COUNT","CRC32","CREATE_ASYMMETRIC_PRIV_KEY","CREATE_ASYMMETRIC_PUB_KEY","CREATE_DH_PARAMETERS","CREATE_DIGEST","Crosses","CURDATE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT","DEGREES","DES_DECRYPT","DES_ENCRYPT","Dimension","Disjoint","Distance","ELT","ENCODE","ENCRYPT","EndPoint","Envelope","Equals","EXP","EXPORT_SET","ExteriorRing","EXTRACT","ExtractValue","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GeomCollFromText","GeometryCollectionFromText","GeomCollFromWKB","GeometryCollectionFromWKB","GeometryCollection","GeometryN","GeometryType","GeomFromText","GeometryFromText","GeomFromWKB","GeometryFromWKB","GET_FORMAT","GET_LOCK","GLength","GREATEST","GROUP_CONCAT","GTID_SUBSET","GTID_SUBTRACT","HEX","HOUR","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INSERT","INSTR","InteriorRingN","Intersects","INTERVAL","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","IsClosed","IsEmpty","ISNULL","IsSimple","JSON_APPEND","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SEARCH","JSON_SET","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","LAST_INSERT_ID","LCASE","LEAST","LEFT","LENGTH","LineFromText","LineStringFromText","LineFromWKB","LineStringFromWKB","LineString","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MAX","MBRContains","MBRCoveredBy","MBRCovers","MBRDisjoint","MBREqual","MBREquals","MBRIntersects","MBROverlaps","MBRTouches","MBRWithin","MD5","MICROSECOND","MID","MIN","MINUTE","MLineFromText","MultiLineStringFromText","MLineFromWKB","MultiLineStringFromWKB","MOD","MONTH","MONTHNAME","MPointFromText","MultiPointFromText","MPointFromWKB","MultiPointFromWKB","MPolyFromText","MultiPolygonFromText","MPolyFromWKB","MultiPolygonFromWKB","MultiLineString","MultiPoint","MultiPolygon","NAME_CONST","NOT IN","NOW","NULLIF","NumGeometries","NumInteriorRings","NumPoints","OCT","OCTET_LENGTH","OLD_PASSWORD","ORD","Overlaps","PASSWORD","PERIOD_ADD","PERIOD_DIFF","PI","Point","PointFromText","PointFromWKB","PointN","PolyFromText","PolygonFromText","PolyFromWKB","PolygonFromWKB","Polygon","POSITION","POW","POWER","PROCEDURE ANALYSE","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","ROUND","ROW_COUNT","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SHA1","SHA","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SPACE","SQRT","SRID","ST_Area","ST_AsBinary","ST_AsWKB","ST_AsGeoJSON","ST_AsText","ST_AsWKT","ST_Buffer","ST_Buffer_Strategy","ST_Centroid","ST_Contains","ST_ConvexHull","ST_Crosses","ST_Difference","ST_Dimension","ST_Disjoint","ST_Distance","ST_Distance_Sphere","ST_EndPoint","ST_Envelope","ST_Equals","ST_ExteriorRing","ST_GeoHash","ST_GeomCollFromText","ST_GeometryCollectionFromText","ST_GeomCollFromTxt","ST_GeomCollFromWKB","ST_GeometryCollectionFromWKB","ST_GeometryN","ST_GeometryType","ST_GeomFromGeoJSON","ST_GeomFromText","ST_GeometryFromText","ST_GeomFromWKB","ST_GeometryFromWKB","ST_InteriorRingN","ST_Intersection","ST_Intersects","ST_IsClosed","ST_IsEmpty","ST_IsSimple","ST_IsValid","ST_LatFromGeoHash","ST_Length","ST_LineFromText","ST_LineStringFromText","ST_LineFromWKB","ST_LineStringFromWKB","ST_LongFromGeoHash","ST_MakeEnvelope","ST_MLineFromText","ST_MultiLineStringFromText","ST_MLineFromWKB","ST_MultiLineStringFromWKB","ST_MPointFromText","ST_MultiPointFromText","ST_MPointFromWKB","ST_MultiPointFromWKB","ST_MPolyFromText","ST_MultiPolygonFromText","ST_MPolyFromWKB","ST_MultiPolygonFromWKB","ST_NumGeometries","ST_NumInteriorRing","ST_NumInteriorRings","ST_NumPoints","ST_Overlaps","ST_PointFromGeoHash","ST_PointFromText","ST_PointFromWKB","ST_PointN","ST_PolyFromText","ST_PolygonFromText","ST_PolyFromWKB","ST_PolygonFromWKB","ST_Simplify","ST_SRID","ST_StartPoint","ST_SymDifference","ST_Touches","ST_Union","ST_Validate","ST_Within","ST_X","ST_Y","StartPoint","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","Touches","TRIM","TRUNCATE","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UpdateXML","UPPER","USER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","VALIDATE_PASSWORD_STRENGTH","VALUES","VAR_POP","VAR_SAMP","VARIANCE","VERSION","WAIT_FOR_EXECUTED_GTID_SET","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","Within","X","Y","YEAR","YEARWEEK"],builtinVariables:[],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/#+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/'/,{token:"string",next:"@string"}],[/"/,{token:"string.double",next:"@stringDouble"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],stringDouble:[[/[^"]+/,"string.double"],[/""/,"string.double"],[/"/,{token:"string.double",next:"@pop"}]],complexIdentifiers:[[/`/,{token:"identifier.quote",next:"@quotedIdentifier"}]],quotedIdentifier:[[/[^`]+/,"identifier"],[/``/,"identifier"],[/`/,{token:"identifier.quote",next:"@pop"}]],scopes:[]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[69],{470:function(E,T,S){"use strict";S.r(T),S.d(T,"conf",(function(){return R})),S.d(T,"language",(function(){return A}));var R={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},A={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["ACCESSIBLE","ACCOUNT","ACTION","ADD","AFTER","AGAINST","AGGREGATE","ALGORITHM","ALL","ALTER","ALWAYS","ANALYSE","ANALYZE","AND","ANY","AS","ASC","ASCII","ASENSITIVE","AT","AUTOEXTEND_SIZE","AUTO_INCREMENT","AVG","AVG_ROW_LENGTH","BACKUP","BEFORE","BEGIN","BETWEEN","BIGINT","BINARY","BINLOG","BIT","BLOB","BLOCK","BOOL","BOOLEAN","BOTH","BTREE","BY","BYTE","CACHE","CALL","CASCADE","CASCADED","CASE","CATALOG_NAME","CHAIN","CHANGE","CHANGED","CHANNEL","CHAR","CHARACTER","CHARSET","CHECK","CHECKSUM","CIPHER","CLASS_ORIGIN","CLIENT","CLOSE","COALESCE","CODE","COLLATE","COLLATION","COLUMN","COLUMNS","COLUMN_FORMAT","COLUMN_NAME","COMMENT","COMMIT","COMMITTED","COMPACT","COMPLETION","COMPRESSED","COMPRESSION","CONCURRENT","CONDITION","CONNECTION","CONSISTENT","CONSTRAINT","CONSTRAINT_CATALOG","CONSTRAINT_NAME","CONSTRAINT_SCHEMA","CONTAINS","CONTEXT","CONTINUE","CONVERT","CPU","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","CURSOR_NAME","DATA","DATABASE","DATABASES","DATAFILE","DATE","DATETIME","DAY","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DEALLOCATE","DEC","DECIMAL","DECLARE","DEFAULT","DEFAULT_AUTH","DEFINER","DELAYED","DELAY_KEY_WRITE","DELETE","DESC","DESCRIBE","DES_KEY_FILE","DETERMINISTIC","DIAGNOSTICS","DIRECTORY","DISABLE","DISCARD","DISK","DISTINCT","DISTINCTROW","DIV","DO","DOUBLE","DROP","DUAL","DUMPFILE","DUPLICATE","DYNAMIC","EACH","ELSE","ELSEIF","ENABLE","ENCLOSED","ENCRYPTION","END","ENDS","ENGINE","ENGINES","ENUM","ERROR","ERRORS","ESCAPE","ESCAPED","EVENT","EVENTS","EVERY","EXCHANGE","EXECUTE","EXISTS","EXIT","EXPANSION","EXPIRE","EXPLAIN","EXPORT","EXTENDED","EXTENT_SIZE","FALSE","FAST","FAULTS","FETCH","FIELDS","FILE","FILE_BLOCK_SIZE","FILTER","FIRST","FIXED","FLOAT","FLOAT4","FLOAT8","FLUSH","FOLLOWS","FOR","FORCE","FOREIGN","FORMAT","FOUND","FROM","FULL","FULLTEXT","FUNCTION","GENERAL","GENERATED","GEOMETRY","GEOMETRYCOLLECTION","GET","GET_FORMAT","GLOBAL","GRANT","GRANTS","GROUP","GROUP_REPLICATION","HANDLER","HASH","HAVING","HELP","HIGH_PRIORITY","HOST","HOSTS","HOUR","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IDENTIFIED","IF","IGNORE","IGNORE_SERVER_IDS","IMPORT","INDEX","INDEXES","INFILE","INITIAL_SIZE","INNER","INOUT","INSENSITIVE","INSERT","INSERT_METHOD","INSTALL","INSTANCE","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","INTERVAL","INTO","INVOKER","IO","IO_AFTER_GTIDS","IO_BEFORE_GTIDS","IO_THREAD","IPC","ISOLATION","ISSUER","ITERATE","JOIN","JSON","KEY","KEYS","KEY_BLOCK_SIZE","KILL","LANGUAGE","LAST","LEADING","LEAVE","LEAVES","LEFT","LESS","LEVEL","LIKE","LIMIT","LINEAR","LINES","LINESTRING","LIST","LOAD","LOCAL","LOCALTIME","LOCALTIMESTAMP","LOCK","LOCKS","LOGFILE","LOGS","LONG","LONGBLOB","LONGTEXT","LOOP","LOW_PRIORITY","MASTER","MASTER_AUTO_POSITION","MASTER_BIND","MASTER_CONNECT_RETRY","MASTER_DELAY","MASTER_HEARTBEAT_PERIOD","MASTER_HOST","MASTER_LOG_FILE","MASTER_LOG_POS","MASTER_PASSWORD","MASTER_PORT","MASTER_RETRY_COUNT","MASTER_SERVER_ID","MASTER_SSL","MASTER_SSL_CA","MASTER_SSL_CAPATH","MASTER_SSL_CERT","MASTER_SSL_CIPHER","MASTER_SSL_CRL","MASTER_SSL_CRLPATH","MASTER_SSL_KEY","MASTER_SSL_VERIFY_SERVER_CERT","MASTER_TLS_VERSION","MASTER_USER","MATCH","MAXVALUE","MAX_CONNECTIONS_PER_HOUR","MAX_QUERIES_PER_HOUR","MAX_ROWS","MAX_SIZE","MAX_STATEMENT_TIME","MAX_UPDATES_PER_HOUR","MAX_USER_CONNECTIONS","MEDIUM","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MEMORY","MERGE","MESSAGE_TEXT","MICROSECOND","MIDDLEINT","MIGRATE","MINUTE","MINUTE_MICROSECOND","MINUTE_SECOND","MIN_ROWS","MOD","MODE","MODIFIES","MODIFY","MONTH","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","MUTEX","MYSQL_ERRNO","NAME","NAMES","NATIONAL","NATURAL","NCHAR","NDB","NDBCLUSTER","NEVER","NEW","NEXT","NO","NODEGROUP","NONBLOCKING","NONE","NO_WAIT","NO_WRITE_TO_BINLOG","NUMBER","NUMERIC","NVARCHAR","OFFSET","OLD_PASSWORD","ON","ONE","ONLY","OPEN","OPTIMIZE","OPTIMIZER_COSTS","OPTION","OPTIONALLY","OPTIONS","OR","ORDER","OUT","OUTER","OUTFILE","OWNER","PACK_KEYS","PAGE","PARSER","PARSE_GCOL_EXPR","PARTIAL","PARTITION","PARTITIONING","PARTITIONS","PASSWORD","PHASE","PLUGIN","PLUGINS","PLUGIN_DIR","POINT","POLYGON","PORT","PRECEDES","PRECISION","PREPARE","PRESERVE","PREV","PRIMARY","PRIVILEGES","PROCEDURE","PROCESSLIST","PROFILE","PROFILES","PROXY","PURGE","QUARTER","QUERY","QUICK","RANGE","READ","READS","READ_ONLY","READ_WRITE","REAL","REBUILD","RECOVER","REDOFILE","REDO_BUFFER_SIZE","REDUNDANT","REFERENCES","REGEXP","RELAY","RELAYLOG","RELAY_LOG_FILE","RELAY_LOG_POS","RELAY_THREAD","RELEASE","RELOAD","REMOVE","RENAME","REORGANIZE","REPAIR","REPEAT","REPEATABLE","REPLACE","REPLICATE_DO_DB","REPLICATE_DO_TABLE","REPLICATE_IGNORE_DB","REPLICATE_IGNORE_TABLE","REPLICATE_REWRITE_DB","REPLICATE_WILD_DO_TABLE","REPLICATE_WILD_IGNORE_TABLE","REPLICATION","REQUIRE","RESET","RESIGNAL","RESTORE","RESTRICT","RESUME","RETURN","RETURNED_SQLSTATE","RETURNS","REVERSE","REVOKE","RIGHT","RLIKE","ROLLBACK","ROLLUP","ROTATE","ROUTINE","ROW","ROWS","ROW_COUNT","ROW_FORMAT","RTREE","SAVEPOINT","SCHEDULE","SCHEMA","SCHEMAS","SCHEMA_NAME","SECOND","SECOND_MICROSECOND","SECURITY","SELECT","SENSITIVE","SEPARATOR","SERIAL","SERIALIZABLE","SERVER","SESSION","SET","SHARE","SHOW","SHUTDOWN","SIGNAL","SIGNED","SIMPLE","SLAVE","SLOW","SMALLINT","SNAPSHOT","SOCKET","SOME","SONAME","SOUNDS","SOURCE","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_AFTER_GTIDS","SQL_AFTER_MTS_GAPS","SQL_BEFORE_GTIDS","SQL_BIG_RESULT","SQL_BUFFER_RESULT","SQL_CACHE","SQL_CALC_FOUND_ROWS","SQL_NO_CACHE","SQL_SMALL_RESULT","SQL_THREAD","SQL_TSI_DAY","SQL_TSI_HOUR","SQL_TSI_MINUTE","SQL_TSI_MONTH","SQL_TSI_QUARTER","SQL_TSI_SECOND","SQL_TSI_WEEK","SQL_TSI_YEAR","SSL","STACKED","START","STARTING","STARTS","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STATUS","STOP","STORAGE","STORED","STRAIGHT_JOIN","STRING","SUBCLASS_ORIGIN","SUBJECT","SUBPARTITION","SUBPARTITIONS","SUPER","SUSPEND","SWAPS","SWITCHES","TABLE","TABLES","TABLESPACE","TABLE_CHECKSUM","TABLE_NAME","TEMPORARY","TEMPTABLE","TERMINATED","TEXT","THAN","THEN","TIME","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TINYBLOB","TINYINT","TINYTEXT","TO","TRAILING","TRANSACTION","TRIGGER","TRIGGERS","TRUE","TRUNCATE","TYPE","TYPES","UNCOMMITTED","UNDEFINED","UNDO","UNDOFILE","UNDO_BUFFER_SIZE","UNICODE","UNINSTALL","UNION","UNIQUE","UNKNOWN","UNLOCK","UNSIGNED","UNTIL","UPDATE","UPGRADE","USAGE","USE","USER","USER_RESOURCES","USE_FRM","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALIDATION","VALUE","VALUES","VARBINARY","VARCHAR","VARCHARACTER","VARIABLES","VARYING","VIEW","VIRTUAL","WAIT","WARNINGS","WEEK","WEIGHT_STRING","WHEN","WHERE","WHILE","WITH","WITHOUT","WORK","WRAPPER","WRITE","X509","XA","XID","XML","XOR","YEAR","YEAR_MONTH","ZEROFILL"],operators:["AND","BETWEEN","IN","LIKE","NOT","OR","IS","NULL","INTERSECT","UNION","INNER","JOIN","LEFT","OUTER","RIGHT"],builtinFunctions:["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","Area","AsBinary","AsWKB","ASCII","ASIN","AsText","AsWKT","ASYMMETRIC_DECRYPT","ASYMMETRIC_DERIVE","ASYMMETRIC_ENCRYPT","ASYMMETRIC_SIGN","ASYMMETRIC_VERIFY","ATAN","ATAN2","ATAN","AVG","BENCHMARK","BIN","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","Buffer","CAST","CEIL","CEILING","Centroid","CHAR","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","Contains","CONV","CONVERT","CONVERT_TZ","ConvexHull","COS","COT","COUNT","CRC32","CREATE_ASYMMETRIC_PRIV_KEY","CREATE_ASYMMETRIC_PUB_KEY","CREATE_DH_PARAMETERS","CREATE_DIGEST","Crosses","CURDATE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT","DEGREES","DES_DECRYPT","DES_ENCRYPT","Dimension","Disjoint","Distance","ELT","ENCODE","ENCRYPT","EndPoint","Envelope","Equals","EXP","EXPORT_SET","ExteriorRing","EXTRACT","ExtractValue","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GeomCollFromText","GeometryCollectionFromText","GeomCollFromWKB","GeometryCollectionFromWKB","GeometryCollection","GeometryN","GeometryType","GeomFromText","GeometryFromText","GeomFromWKB","GeometryFromWKB","GET_FORMAT","GET_LOCK","GLength","GREATEST","GROUP_CONCAT","GTID_SUBSET","GTID_SUBTRACT","HEX","HOUR","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INSERT","INSTR","InteriorRingN","Intersects","INTERVAL","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","IsClosed","IsEmpty","ISNULL","IsSimple","JSON_APPEND","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SEARCH","JSON_SET","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","LAST_INSERT_ID","LCASE","LEAST","LEFT","LENGTH","LineFromText","LineStringFromText","LineFromWKB","LineStringFromWKB","LineString","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MAX","MBRContains","MBRCoveredBy","MBRCovers","MBRDisjoint","MBREqual","MBREquals","MBRIntersects","MBROverlaps","MBRTouches","MBRWithin","MD5","MICROSECOND","MID","MIN","MINUTE","MLineFromText","MultiLineStringFromText","MLineFromWKB","MultiLineStringFromWKB","MOD","MONTH","MONTHNAME","MPointFromText","MultiPointFromText","MPointFromWKB","MultiPointFromWKB","MPolyFromText","MultiPolygonFromText","MPolyFromWKB","MultiPolygonFromWKB","MultiLineString","MultiPoint","MultiPolygon","NAME_CONST","NOT IN","NOW","NULLIF","NumGeometries","NumInteriorRings","NumPoints","OCT","OCTET_LENGTH","OLD_PASSWORD","ORD","Overlaps","PASSWORD","PERIOD_ADD","PERIOD_DIFF","PI","Point","PointFromText","PointFromWKB","PointN","PolyFromText","PolygonFromText","PolyFromWKB","PolygonFromWKB","Polygon","POSITION","POW","POWER","PROCEDURE ANALYSE","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","ROUND","ROW_COUNT","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SHA1","SHA","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SPACE","SQRT","SRID","ST_Area","ST_AsBinary","ST_AsWKB","ST_AsGeoJSON","ST_AsText","ST_AsWKT","ST_Buffer","ST_Buffer_Strategy","ST_Centroid","ST_Contains","ST_ConvexHull","ST_Crosses","ST_Difference","ST_Dimension","ST_Disjoint","ST_Distance","ST_Distance_Sphere","ST_EndPoint","ST_Envelope","ST_Equals","ST_ExteriorRing","ST_GeoHash","ST_GeomCollFromText","ST_GeometryCollectionFromText","ST_GeomCollFromTxt","ST_GeomCollFromWKB","ST_GeometryCollectionFromWKB","ST_GeometryN","ST_GeometryType","ST_GeomFromGeoJSON","ST_GeomFromText","ST_GeometryFromText","ST_GeomFromWKB","ST_GeometryFromWKB","ST_InteriorRingN","ST_Intersection","ST_Intersects","ST_IsClosed","ST_IsEmpty","ST_IsSimple","ST_IsValid","ST_LatFromGeoHash","ST_Length","ST_LineFromText","ST_LineStringFromText","ST_LineFromWKB","ST_LineStringFromWKB","ST_LongFromGeoHash","ST_MakeEnvelope","ST_MLineFromText","ST_MultiLineStringFromText","ST_MLineFromWKB","ST_MultiLineStringFromWKB","ST_MPointFromText","ST_MultiPointFromText","ST_MPointFromWKB","ST_MultiPointFromWKB","ST_MPolyFromText","ST_MultiPolygonFromText","ST_MPolyFromWKB","ST_MultiPolygonFromWKB","ST_NumGeometries","ST_NumInteriorRing","ST_NumInteriorRings","ST_NumPoints","ST_Overlaps","ST_PointFromGeoHash","ST_PointFromText","ST_PointFromWKB","ST_PointN","ST_PolyFromText","ST_PolygonFromText","ST_PolyFromWKB","ST_PolygonFromWKB","ST_Simplify","ST_SRID","ST_StartPoint","ST_SymDifference","ST_Touches","ST_Union","ST_Validate","ST_Within","ST_X","ST_Y","StartPoint","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","Touches","TRIM","TRUNCATE","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UpdateXML","UPPER","USER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","VALIDATE_PASSWORD_STRENGTH","VALUES","VAR_POP","VAR_SAMP","VARIANCE","VERSION","WAIT_FOR_EXECUTED_GTID_SET","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","Within","X","Y","YEAR","YEARWEEK"],builtinVariables:[],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/#+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/'/,{token:"string",next:"@string"}],[/"/,{token:"string.double",next:"@stringDouble"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],stringDouble:[[/[^"]+/,"string.double"],[/""/,"string.double"],[/"/,{token:"string.double",next:"@pop"}]],complexIdentifiers:[[/`/,{token:"identifier.quote",next:"@quotedIdentifier"}]],quotedIdentifier:[[/[^`]+/,"identifier"],[/``/,"identifier"],[/`/,{token:"identifier.quote",next:"@pop"}]],scopes:[]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/7.0f6ae038.js b/docs/src/.vuepress/dist/assets/js/7.71b7ebd7.js similarity index 89% rename from docs/src/.vuepress/dist/assets/js/7.0f6ae038.js rename to docs/src/.vuepress/dist/assets/js/7.71b7ebd7.js index bb762052..89062bb2 100644 --- a/docs/src/.vuepress/dist/assets/js/7.0f6ae038.js +++ b/docs/src/.vuepress/dist/assets/js/7.71b7ebd7.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[7],{333:function(e,t,a){},440:function(e,t,a){"use strict";a(333)},509:function(e,t,a){"use strict";a.r(t);a(66),a(27),a(96),a(97);var o={name:"CodeGroup",data:function(){return{codeTabs:[],activeCodeTabIndex:-1}},watch:{activeCodeTabIndex:function(e){this.activateCodeTab(e)}},mounted:function(){this.loadTabs()},methods:{changeCodeTab:function(e){this.activeCodeTabIndex=e},loadTabs:function(){var e=this;this.codeTabs=(this.$slots.default||[]).filter((function(e){return Boolean(e.componentOptions)})).map((function(t,a){return""===t.componentOptions.propsData.active&&(e.activeCodeTabIndex=a),{title:t.componentOptions.propsData.title,elm:t.elm}})),-1===this.activeCodeTabIndex&&this.codeTabs.length>0&&(this.activeCodeTabIndex=0),this.activateCodeTab(0)},activateCodeTab:function(e){this.codeTabs.forEach((function(e){e.elm&&e.elm.classList.remove("theme-code-block__active")})),this.codeTabs[e].elm&&this.codeTabs[e].elm.classList.add("theme-code-block__active")}}},n=(a(440),a(45)),c=Object(n.a)(o,(function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("ClientOnly",[a("div",{staticClass:"theme-code-group"},[a("div",{staticClass:"theme-code-group__nav"},[a("ul",{staticClass:"theme-code-group__ul"},e._l(e.codeTabs,(function(t,o){return a("li",{key:t.title,staticClass:"theme-code-group__li"},[a("button",{staticClass:"theme-code-group__nav-tab",class:{"theme-code-group__nav-tab-active":o===e.activeCodeTabIndex},on:{click:function(t){return e.changeCodeTab(o)}}},[e._v("\n "+e._s(t.title)+"\n ")])])})),0)]),e._v(" "),e._t("default"),e._v(" "),e.codeTabs.length<1?a("pre",{staticClass:"pre-blank"},[e._v("// Make sure to add code blocks to your code group")]):e._e()],2)])}),[],!1,null,"deefee04",null);t.default=c.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[7],{334:function(e,t,a){},441:function(e,t,a){"use strict";a(334)},510:function(e,t,a){"use strict";a.r(t);a(66),a(27),a(96),a(97);var o={name:"CodeGroup",data:function(){return{codeTabs:[],activeCodeTabIndex:-1}},watch:{activeCodeTabIndex:function(e){this.activateCodeTab(e)}},mounted:function(){this.loadTabs()},methods:{changeCodeTab:function(e){this.activeCodeTabIndex=e},loadTabs:function(){var e=this;this.codeTabs=(this.$slots.default||[]).filter((function(e){return Boolean(e.componentOptions)})).map((function(t,a){return""===t.componentOptions.propsData.active&&(e.activeCodeTabIndex=a),{title:t.componentOptions.propsData.title,elm:t.elm}})),-1===this.activeCodeTabIndex&&this.codeTabs.length>0&&(this.activeCodeTabIndex=0),this.activateCodeTab(0)},activateCodeTab:function(e){this.codeTabs.forEach((function(e){e.elm&&e.elm.classList.remove("theme-code-block__active")})),this.codeTabs[e].elm&&this.codeTabs[e].elm.classList.add("theme-code-block__active")}}},n=(a(441),a(45)),c=Object(n.a)(o,(function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("ClientOnly",[a("div",{staticClass:"theme-code-group"},[a("div",{staticClass:"theme-code-group__nav"},[a("ul",{staticClass:"theme-code-group__ul"},e._l(e.codeTabs,(function(t,o){return a("li",{key:t.title,staticClass:"theme-code-group__li"},[a("button",{staticClass:"theme-code-group__nav-tab",class:{"theme-code-group__nav-tab-active":o===e.activeCodeTabIndex},on:{click:function(t){return e.changeCodeTab(o)}}},[e._v("\n "+e._s(t.title)+"\n ")])])})),0)]),e._v(" "),e._t("default"),e._v(" "),e.codeTabs.length<1?a("pre",{staticClass:"pre-blank"},[e._v("// Make sure to add code blocks to your code group")]):e._e()],2)])}),[],!1,null,"deefee04",null);t.default=c.exports}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/69.ebe70287.js b/docs/src/.vuepress/dist/assets/js/70.e8bb95ac.js similarity index 97% rename from docs/src/.vuepress/dist/assets/js/69.ebe70287.js rename to docs/src/.vuepress/dist/assets/js/70.e8bb95ac.js index e7369ffe..f170b699 100644 --- a/docs/src/.vuepress/dist/assets/js/69.ebe70287.js +++ b/docs/src/.vuepress/dist/assets/js/70.e8bb95ac.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[69],{471:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",(function(){return t})),o.d(n,"language",(function(){return s}));var t={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".objective-c",keywords:["#import","#include","#define","#else","#endif","#if","#ifdef","#ifndef","#ident","#undef","@class","@defs","@dynamic","@encode","@end","@implementation","@interface","@package","@private","@protected","@property","@protocol","@public","@selector","@synthesize","__declspec","assign","auto","BOOL","break","bycopy","byref","case","char","Class","const","copy","continue","default","do","double","else","enum","extern","FALSE","false","float","for","goto","if","in","int","id","inout","IMP","long","nil","nonatomic","NULL","oneway","out","private","public","protected","readwrite","readonly","register","return","SEL","self","short","signed","sizeof","static","struct","super","switch","typedef","TRUE","true","union","unsigned","volatile","void","while"],decpart:/\d(_?\d)*/,decimal:/0|@decpart/,tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},[/[,:;]/,"delimiter"],[/[{}\[\]()<>]/,"@brackets"],[/[a-zA-Z@#]\w*/,{cases:{"@keywords":"keyword","@default":"identifier"}}],[/[<>=\\+\\-\\*\\/\\^\\|\\~,]|and\\b|or\\b|not\\b]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],numbers:[[/0[xX][0-9a-fA-F]*(_?[0-9a-fA-F])*/,"number.hex"],[/@decimal((\.@decpart)?([eE][\-+]?@decpart)?)[fF]*/,{cases:{"(\\d)*":"number",$0:"number.float"}}]],strings:[[/'$/,"string.escape","@popall"],[/'/,"string.escape","@stringBody"],[/"$/,"string.escape","@popall"],[/"/,"string.escape","@dblStringBody"]],stringBody:[[/[^\\']+$/,"string","@popall"],[/[^\\']+/,"string"],[/\\./,"string"],[/'/,"string.escape","@popall"],[/\\$/,"string"]],dblStringBody:[[/[^\\"]+$/,"string","@popall"],[/[^\\"]+/,"string"],[/\\./,"string"],[/"/,"string.escape","@popall"],[/\\$/,"string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[70],{471:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",(function(){return t})),o.d(n,"language",(function(){return s}));var t={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".objective-c",keywords:["#import","#include","#define","#else","#endif","#if","#ifdef","#ifndef","#ident","#undef","@class","@defs","@dynamic","@encode","@end","@implementation","@interface","@package","@private","@protected","@property","@protocol","@public","@selector","@synthesize","__declspec","assign","auto","BOOL","break","bycopy","byref","case","char","Class","const","copy","continue","default","do","double","else","enum","extern","FALSE","false","float","for","goto","if","in","int","id","inout","IMP","long","nil","nonatomic","NULL","oneway","out","private","public","protected","readwrite","readonly","register","return","SEL","self","short","signed","sizeof","static","struct","super","switch","typedef","TRUE","true","union","unsigned","volatile","void","while"],decpart:/\d(_?\d)*/,decimal:/0|@decpart/,tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},[/[,:;]/,"delimiter"],[/[{}\[\]()<>]/,"@brackets"],[/[a-zA-Z@#]\w*/,{cases:{"@keywords":"keyword","@default":"identifier"}}],[/[<>=\\+\\-\\*\\/\\^\\|\\~,]|and\\b|or\\b|not\\b]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],numbers:[[/0[xX][0-9a-fA-F]*(_?[0-9a-fA-F])*/,"number.hex"],[/@decimal((\.@decpart)?([eE][\-+]?@decpart)?)[fF]*/,{cases:{"(\\d)*":"number",$0:"number.float"}}]],strings:[[/'$/,"string.escape","@popall"],[/'/,"string.escape","@stringBody"],[/"$/,"string.escape","@popall"],[/"/,"string.escape","@dblStringBody"]],stringBody:[[/[^\\']+$/,"string","@popall"],[/[^\\']+/,"string"],[/\\./,"string"],[/'/,"string.escape","@popall"],[/\\$/,"string"]],dblStringBody:[[/[^\\"]+$/,"string","@popall"],[/[^\\"]+/,"string"],[/\\./,"string"],[/"/,"string.escape","@popall"],[/\\$/,"string"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/70.f4761b67.js b/docs/src/.vuepress/dist/assets/js/71.7638a77d.js similarity index 97% rename from docs/src/.vuepress/dist/assets/js/70.f4761b67.js rename to docs/src/.vuepress/dist/assets/js/71.7638a77d.js index ea28387e..424ee482 100644 --- a/docs/src/.vuepress/dist/assets/js/70.f4761b67.js +++ b/docs/src/.vuepress/dist/assets/js/71.7638a77d.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[70],{472:function(e,t,o){"use strict";o.r(t),o.d(t,"conf",(function(){return n})),o.d(t,"language",(function(){return r}));var n={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["{","}"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\{\\$REGION(\\s\\'.*\\')?\\}"),end:new RegExp("^\\s*\\{\\$ENDREGION\\}")}}},r={defaultToken:"",tokenPostfix:".pascal",ignoreCase:!0,brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["absolute","abstract","all","and_then","array","as","asm","attribute","begin","bindable","case","class","const","contains","default","div","else","end","except","exports","external","far","file","finalization","finally","forward","generic","goto","if","implements","import","in","index","inherited","initialization","interrupt","is","label","library","mod","module","name","near","not","object","of","on","only","operator","or_else","otherwise","override","package","packed","pow","private","program","protected","public","published","interface","implementation","qualified","read","record","resident","requires","resourcestring","restricted","segment","set","shl","shr","specialize","stored","then","threadvar","to","try","type","unit","uses","var","view","virtual","dynamic","overload","reintroduce","with","write","xor","true","false","procedure","function","constructor","destructor","property","break","continue","exit","abort","while","do","for","raise","repeat","until"],typeKeywords:["boolean","double","byte","integer","shortint","char","longint","float","string"],operators:["=",">","<","<=",">=","<>",":",":=","and","or","+","-","*","/","@","&","^","%"],symbols:/[=><:@\^&|+\-*\/\^%]+/,tokenizer:{root:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\$[0-9a-fA-F]{1,16}/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'/,"string","@string"],[/'[^\\']'/,"string"],[/'/,"string.invalid"],[/\#\d+/,"string"]],comment:[[/[^\*\}]+/,"comment"],[/\}/,"comment","@pop"],[/[\{]/,"comment"]],string:[[/[^\\']+/,"string"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\{/,"comment","@comment"],[/\/\/.*$/,"comment"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[71],{472:function(e,t,o){"use strict";o.r(t),o.d(t,"conf",(function(){return n})),o.d(t,"language",(function(){return r}));var n={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["{","}"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\{\\$REGION(\\s\\'.*\\')?\\}"),end:new RegExp("^\\s*\\{\\$ENDREGION\\}")}}},r={defaultToken:"",tokenPostfix:".pascal",ignoreCase:!0,brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["absolute","abstract","all","and_then","array","as","asm","attribute","begin","bindable","case","class","const","contains","default","div","else","end","except","exports","external","far","file","finalization","finally","forward","generic","goto","if","implements","import","in","index","inherited","initialization","interrupt","is","label","library","mod","module","name","near","not","object","of","on","only","operator","or_else","otherwise","override","package","packed","pow","private","program","protected","public","published","interface","implementation","qualified","read","record","resident","requires","resourcestring","restricted","segment","set","shl","shr","specialize","stored","then","threadvar","to","try","type","unit","uses","var","view","virtual","dynamic","overload","reintroduce","with","write","xor","true","false","procedure","function","constructor","destructor","property","break","continue","exit","abort","while","do","for","raise","repeat","until"],typeKeywords:["boolean","double","byte","integer","shortint","char","longint","float","string"],operators:["=",">","<","<=",">=","<>",":",":=","and","or","+","-","*","/","@","&","^","%"],symbols:/[=><:@\^&|+\-*\/\^%]+/,tokenizer:{root:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\$[0-9a-fA-F]{1,16}/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'/,"string","@string"],[/'[^\\']'/,"string"],[/'/,"string.invalid"],[/\#\d+/,"string"]],comment:[[/[^\*\}]+/,"comment"],[/\}/,"comment","@pop"],[/[\{]/,"comment"]],string:[[/[^\\']+/,"string"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\{/,"comment","@comment"],[/\/\/.*$/,"comment"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/71.b1a5ed72.js b/docs/src/.vuepress/dist/assets/js/72.e93eb3c0.js similarity index 96% rename from docs/src/.vuepress/dist/assets/js/71.b1a5ed72.js rename to docs/src/.vuepress/dist/assets/js/72.e93eb3c0.js index a21bc910..2d23a4d8 100644 --- a/docs/src/.vuepress/dist/assets/js/71.b1a5ed72.js +++ b/docs/src/.vuepress/dist/assets/js/72.e93eb3c0.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[71],{473:function(e,o,n){"use strict";n.r(o),n.d(o,"conf",(function(){return t})),n.d(o,"language",(function(){return s}));var t={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".pascaligo",ignoreCase:!0,brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["begin","block","case","const","else","end","fail","for","from","function","if","is","nil","of","remove","return","skip","then","type","var","while","with","option","None","transaction"],typeKeywords:["bool","int","list","map","nat","record","string","unit","address","map","mtz","xtz"],operators:["=",">","<","<=",">=","<>",":",":=","and","mod","or","+","-","*","/","@","&","^","%"],symbols:/[=><:@\^&|+\-*\/\^%]+/,tokenizer:{root:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\$[0-9a-fA-F]{1,16}/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'/,"string","@string"],[/'[^\\']'/,"string"],[/'/,"string.invalid"],[/\#\d+/,"string"]],comment:[[/[^\(\*]+/,"comment"],[/\*\)/,"comment","@pop"],[/\(\*/,"comment"]],string:[[/[^\\']+/,"string"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\(\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[72],{473:function(e,o,n){"use strict";n.r(o),n.d(o,"conf",(function(){return t})),n.d(o,"language",(function(){return s}));var t={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}]},s={defaultToken:"",tokenPostfix:".pascaligo",ignoreCase:!0,brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["begin","block","case","const","else","end","fail","for","from","function","if","is","nil","of","remove","return","skip","then","type","var","while","with","option","None","transaction"],typeKeywords:["bool","int","list","map","nat","record","string","unit","address","map","mtz","xtz"],operators:["=",">","<","<=",">=","<>",":",":=","and","mod","or","+","-","*","/","@","&","^","%"],symbols:/[=><:@\^&|+\-*\/\^%]+/,tokenizer:{root:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\$[0-9a-fA-F]{1,16}/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'/,"string","@string"],[/'[^\\']'/,"string"],[/'/,"string.invalid"],[/\#\d+/,"string"]],comment:[[/[^\(\*]+/,"comment"],[/\*\)/,"comment","@pop"],[/\(\*/,"comment"]],string:[[/[^\\']+/,"string"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\(\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/72.6374e4b7.js b/docs/src/.vuepress/dist/assets/js/73.6397c164.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/72.6374e4b7.js rename to docs/src/.vuepress/dist/assets/js/73.6397c164.js index 06225607..7385808f 100644 --- a/docs/src/.vuepress/dist/assets/js/72.6374e4b7.js +++ b/docs/src/.vuepress/dist/assets/js/73.6397c164.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[72],{474:function(e,t,s){"use strict";s.r(t),s.d(t,"conf",(function(){return n})),s.d(t,"language",(function(){return r}));var n={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}]},r={defaultToken:"",tokenPostfix:".perl",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["__DATA__","else","lock","__END__","elsif","lt","__FILE__","eq","__LINE__","exp","ne","sub","__PACKAGE__","for","no","and","foreach","or","unless","cmp","ge","package","until","continue","gt","while","CORE","if","xor","do","le","__DIE__","__WARN__"],builtinFunctions:["-A","END","length","setpgrp","-B","endgrent","link","setpriority","-b","endhostent","listen","setprotoent","-C","endnetent","local","setpwent","-c","endprotoent","localtime","setservent","-d","endpwent","log","setsockopt","-e","endservent","lstat","shift","-f","eof","map","shmctl","-g","eval","mkdir","shmget","-k","exec","msgctl","shmread","-l","exists","msgget","shmwrite","-M","exit","msgrcv","shutdown","-O","fcntl","msgsnd","sin","-o","fileno","my","sleep","-p","flock","next","socket","-r","fork","not","socketpair","-R","format","oct","sort","-S","formline","open","splice","-s","getc","opendir","split","-T","getgrent","ord","sprintf","-t","getgrgid","our","sqrt","-u","getgrnam","pack","srand","-w","gethostbyaddr","pipe","stat","-W","gethostbyname","pop","state","-X","gethostent","pos","study","-x","getlogin","print","substr","-z","getnetbyaddr","printf","symlink","abs","getnetbyname","prototype","syscall","accept","getnetent","push","sysopen","alarm","getpeername","quotemeta","sysread","atan2","getpgrp","rand","sysseek","AUTOLOAD","getppid","read","system","BEGIN","getpriority","readdir","syswrite","bind","getprotobyname","readline","tell","binmode","getprotobynumber","readlink","telldir","bless","getprotoent","readpipe","tie","break","getpwent","recv","tied","caller","getpwnam","redo","time","chdir","getpwuid","ref","times","CHECK","getservbyname","rename","truncate","chmod","getservbyport","require","uc","chomp","getservent","reset","ucfirst","chop","getsockname","return","umask","chown","getsockopt","reverse","undef","chr","glob","rewinddir","UNITCHECK","chroot","gmtime","rindex","unlink","close","goto","rmdir","unpack","closedir","grep","say","unshift","connect","hex","scalar","untie","cos","index","seek","use","crypt","INIT","seekdir","utime","dbmclose","int","select","values","dbmopen","ioctl","semctl","vec","defined","join","semget","wait","delete","keys","semop","waitpid","DESTROY","kill","send","wantarray","die","last","setgrent","warn","dump","lc","sethostent","write","each","lcfirst","setnetent"],builtinFileHandlers:["ARGV","STDERR","STDOUT","ARGVOUT","STDIN","ENV"],builtinVariables:["$!","$^RE_TRIE_MAXBUF","$LAST_REGEXP_CODE_RESULT",'$"',"$^S","$LIST_SEPARATOR","$#","$^T","$MATCH","$$","$^TAINT","$MULTILINE_MATCHING","$%","$^UNICODE","$NR","$&","$^UTF8LOCALE","$OFMT","$'","$^V","$OFS","$(","$^W","$ORS","$)","$^WARNING_BITS","$OS_ERROR","$*","$^WIDE_SYSTEM_CALLS","$OSNAME","$+","$^X","$OUTPUT_AUTO_FLUSH","$,","$_","$OUTPUT_FIELD_SEPARATOR","$-","$`","$OUTPUT_RECORD_SEPARATOR","$.","$a","$PERL_VERSION","$/","$ACCUMULATOR","$PERLDB","$0","$ARG","$PID","$:","$ARGV","$POSTMATCH","$;","$b","$PREMATCH","$<","$BASETIME","$PROCESS_ID","$=","$CHILD_ERROR","$PROGRAM_NAME","$>","$COMPILING","$REAL_GROUP_ID","$?","$DEBUGGING","$REAL_USER_ID","$@","$EFFECTIVE_GROUP_ID","$RS","$[","$EFFECTIVE_USER_ID","$SUBSCRIPT_SEPARATOR","$\\","$EGID","$SUBSEP","$]","$ERRNO","$SYSTEM_FD_MAX","$^","$EUID","$UID","$^A","$EVAL_ERROR","$WARNING","$^C","$EXCEPTIONS_BEING_CAUGHT","$|","$^CHILD_ERROR_NATIVE","$EXECUTABLE_NAME","$~","$^D","$EXTENDED_OS_ERROR","%!","$^E","$FORMAT_FORMFEED","%^H","$^ENCODING","$FORMAT_LINE_BREAK_CHARACTERS","%ENV","$^F","$FORMAT_LINES_LEFT","%INC","$^H","$FORMAT_LINES_PER_PAGE","%OVERLOAD","$^I","$FORMAT_NAME","%SIG","$^L","$FORMAT_PAGE_NUMBER","@+","$^M","$FORMAT_TOP_NAME","@-","$^N","$GID","@_","$^O","$INPLACE_EDIT","@ARGV","$^OPEN","$INPUT_LINE_NUMBER","@INC","$^P","$INPUT_RECORD_SEPARATOR","@LAST_MATCH_START","$^R","$LAST_MATCH_END","$^RE_DEBUG_FLAGS","$LAST_PAREN_MATCH"],symbols:/[:+\-\^*$&%@=<>!?|\/~\.]/,quoteLikeOps:["qr","m","s","q","qq","qx","qw","tr","y"],escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[{include:"@whitespace"},[/[a-zA-Z\-_][\w\-_]*/,{cases:{"@keywords":"keyword","@builtinFunctions":"type.identifier","@builtinFileHandlers":"variable.predefined","@quoteLikeOps":{token:"@rematch",next:"quotedConstructs"},"@default":""}}],[/[\$@%][*@#?\+\-\$!\w\\\^><~:;\.]+/,{cases:{"@builtinVariables":"variable.predefined","@default":"variable"}}],{include:"@strings"},{include:"@dblStrings"},{include:"@perldoc"},{include:"@heredoc"},[/[{}\[\]()]/,"@brackets"],[/[\/](?:(?:\[(?:\\]|[^\]])+\])|(?:\\\/|[^\]\/]))*[\/]\w*\s*(?=[).,;]|$)/,"regexp"],[/@symbols/,"operators"],{include:"@numbers"},[/[,;]/,"delimiter"]],whitespace:[[/\s+/,"white"],[/(^#!.*$)/,"metatag"],[/(^#.*$)/,"comment"]],numbers:[[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+/,"number"]],strings:[[/'/,"string","@stringBody"]],stringBody:[[/'/,"string","@popall"],[/\\'/,"string.escape"],[/./,"string"]],dblStrings:[[/"/,"string","@dblStringBody"]],dblStringBody:[[/"/,"string","@popall"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],{include:"@variables"},[/./,"string"]],quotedConstructs:[[/(q|qw|tr|y)\s*\(/,{token:"string.delim",switchTo:"@qstring.(.)"}],[/(q|qw|tr|y)\s*\[/,{token:"string.delim",switchTo:"@qstring.[.]"}],[/(q|qw|tr|y)\s*\{/,{token:"string.delim",switchTo:"@qstring.{.}"}],[/(q|qw|tr|y)\s*</,{token:"string.delim",switchTo:"@qstring.<.>"}],[/(q|qw|tr|y)#/,{token:"string.delim",switchTo:"@qstring.#.#"}],[/(q|qw|tr|y)\s*([^A-Za-z0-9#\s])/,{token:"string.delim",switchTo:"@qstring.$2.$2"}],[/(q|qw|tr|y)\s+(\w)/,{token:"string.delim",switchTo:"@qstring.$2.$2"}],[/(qr|m|s)\s*\(/,{token:"regexp.delim",switchTo:"@qregexp.(.)"}],[/(qr|m|s)\s*\[/,{token:"regexp.delim",switchTo:"@qregexp.[.]"}],[/(qr|m|s)\s*\{/,{token:"regexp.delim",switchTo:"@qregexp.{.}"}],[/(qr|m|s)\s*</,{token:"regexp.delim",switchTo:"@qregexp.<.>"}],[/(qr|m|s)#/,{token:"regexp.delim",switchTo:"@qregexp.#.#"}],[/(qr|m|s)\s*([^A-Za-z0-9_#\s])/,{token:"regexp.delim",switchTo:"@qregexp.$2.$2"}],[/(qr|m|s)\s+(\w)/,{token:"regexp.delim",switchTo:"@qregexp.$2.$2"}],[/(qq|qx)\s*\(/,{token:"string.delim",switchTo:"@qqstring.(.)"}],[/(qq|qx)\s*\[/,{token:"string.delim",switchTo:"@qqstring.[.]"}],[/(qq|qx)\s*\{/,{token:"string.delim",switchTo:"@qqstring.{.}"}],[/(qq|qx)\s*</,{token:"string.delim",switchTo:"@qqstring.<.>"}],[/(qq|qx)#/,{token:"string.delim",switchTo:"@qqstring.#.#"}],[/(qq|qx)\s*([^A-Za-z0-9#\s])/,{token:"string.delim",switchTo:"@qqstring.$2.$2"}],[/(qq|qx)\s+(\w)/,{token:"string.delim",switchTo:"@qqstring.$2.$2"}]],qstring:[[/\\./,"string.escape"],[/./,{cases:{"$#==$S3":{token:"string.delim",next:"@pop"},"$#==$S2":{token:"string.delim",next:"@push"},"@default":"string"}}]],qregexp:[{include:"@variables"},[/\\./,"regexp.escape"],[/./,{cases:{"$#==$S3":{token:"regexp.delim",next:"@regexpModifiers"},"$#==$S2":{token:"regexp.delim",next:"@push"},"@default":"regexp"}}]],regexpModifiers:[[/[msixpodualngcer]+/,{token:"regexp.modifier",next:"@popall"}]],qqstring:[{include:"@variables"},{include:"@qstring"}],heredoc:[[/<<\s*['"`]?([\w\-]+)['"`]?/,{token:"string.heredoc.delimiter",next:"@heredocBody.$1"}]],heredocBody:[[/^([\w\-]+)$/,{cases:{"$1==$S2":[{token:"string.heredoc.delimiter",next:"@popall"}],"@default":"string.heredoc"}}],[/./,"string.heredoc"]],perldoc:[[/^=\w/,"comment.doc","@perldocBody"]],perldocBody:[[/^=cut\b/,"type.identifier","@popall"],[/./,"comment.doc"]],variables:[[/\$\w+/,"variable"],[/@\w+/,"variable"],[/%\w+/,"variable"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[73],{474:function(e,t,s){"use strict";s.r(t),s.d(t,"conf",(function(){return n})),s.d(t,"language",(function(){return r}));var n={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}]},r={defaultToken:"",tokenPostfix:".perl",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["__DATA__","else","lock","__END__","elsif","lt","__FILE__","eq","__LINE__","exp","ne","sub","__PACKAGE__","for","no","and","foreach","or","unless","cmp","ge","package","until","continue","gt","while","CORE","if","xor","do","le","__DIE__","__WARN__"],builtinFunctions:["-A","END","length","setpgrp","-B","endgrent","link","setpriority","-b","endhostent","listen","setprotoent","-C","endnetent","local","setpwent","-c","endprotoent","localtime","setservent","-d","endpwent","log","setsockopt","-e","endservent","lstat","shift","-f","eof","map","shmctl","-g","eval","mkdir","shmget","-k","exec","msgctl","shmread","-l","exists","msgget","shmwrite","-M","exit","msgrcv","shutdown","-O","fcntl","msgsnd","sin","-o","fileno","my","sleep","-p","flock","next","socket","-r","fork","not","socketpair","-R","format","oct","sort","-S","formline","open","splice","-s","getc","opendir","split","-T","getgrent","ord","sprintf","-t","getgrgid","our","sqrt","-u","getgrnam","pack","srand","-w","gethostbyaddr","pipe","stat","-W","gethostbyname","pop","state","-X","gethostent","pos","study","-x","getlogin","print","substr","-z","getnetbyaddr","printf","symlink","abs","getnetbyname","prototype","syscall","accept","getnetent","push","sysopen","alarm","getpeername","quotemeta","sysread","atan2","getpgrp","rand","sysseek","AUTOLOAD","getppid","read","system","BEGIN","getpriority","readdir","syswrite","bind","getprotobyname","readline","tell","binmode","getprotobynumber","readlink","telldir","bless","getprotoent","readpipe","tie","break","getpwent","recv","tied","caller","getpwnam","redo","time","chdir","getpwuid","ref","times","CHECK","getservbyname","rename","truncate","chmod","getservbyport","require","uc","chomp","getservent","reset","ucfirst","chop","getsockname","return","umask","chown","getsockopt","reverse","undef","chr","glob","rewinddir","UNITCHECK","chroot","gmtime","rindex","unlink","close","goto","rmdir","unpack","closedir","grep","say","unshift","connect","hex","scalar","untie","cos","index","seek","use","crypt","INIT","seekdir","utime","dbmclose","int","select","values","dbmopen","ioctl","semctl","vec","defined","join","semget","wait","delete","keys","semop","waitpid","DESTROY","kill","send","wantarray","die","last","setgrent","warn","dump","lc","sethostent","write","each","lcfirst","setnetent"],builtinFileHandlers:["ARGV","STDERR","STDOUT","ARGVOUT","STDIN","ENV"],builtinVariables:["$!","$^RE_TRIE_MAXBUF","$LAST_REGEXP_CODE_RESULT",'$"',"$^S","$LIST_SEPARATOR","$#","$^T","$MATCH","$$","$^TAINT","$MULTILINE_MATCHING","$%","$^UNICODE","$NR","$&","$^UTF8LOCALE","$OFMT","$'","$^V","$OFS","$(","$^W","$ORS","$)","$^WARNING_BITS","$OS_ERROR","$*","$^WIDE_SYSTEM_CALLS","$OSNAME","$+","$^X","$OUTPUT_AUTO_FLUSH","$,","$_","$OUTPUT_FIELD_SEPARATOR","$-","$`","$OUTPUT_RECORD_SEPARATOR","$.","$a","$PERL_VERSION","$/","$ACCUMULATOR","$PERLDB","$0","$ARG","$PID","$:","$ARGV","$POSTMATCH","$;","$b","$PREMATCH","$<","$BASETIME","$PROCESS_ID","$=","$CHILD_ERROR","$PROGRAM_NAME","$>","$COMPILING","$REAL_GROUP_ID","$?","$DEBUGGING","$REAL_USER_ID","$@","$EFFECTIVE_GROUP_ID","$RS","$[","$EFFECTIVE_USER_ID","$SUBSCRIPT_SEPARATOR","$\\","$EGID","$SUBSEP","$]","$ERRNO","$SYSTEM_FD_MAX","$^","$EUID","$UID","$^A","$EVAL_ERROR","$WARNING","$^C","$EXCEPTIONS_BEING_CAUGHT","$|","$^CHILD_ERROR_NATIVE","$EXECUTABLE_NAME","$~","$^D","$EXTENDED_OS_ERROR","%!","$^E","$FORMAT_FORMFEED","%^H","$^ENCODING","$FORMAT_LINE_BREAK_CHARACTERS","%ENV","$^F","$FORMAT_LINES_LEFT","%INC","$^H","$FORMAT_LINES_PER_PAGE","%OVERLOAD","$^I","$FORMAT_NAME","%SIG","$^L","$FORMAT_PAGE_NUMBER","@+","$^M","$FORMAT_TOP_NAME","@-","$^N","$GID","@_","$^O","$INPLACE_EDIT","@ARGV","$^OPEN","$INPUT_LINE_NUMBER","@INC","$^P","$INPUT_RECORD_SEPARATOR","@LAST_MATCH_START","$^R","$LAST_MATCH_END","$^RE_DEBUG_FLAGS","$LAST_PAREN_MATCH"],symbols:/[:+\-\^*$&%@=<>!?|\/~\.]/,quoteLikeOps:["qr","m","s","q","qq","qx","qw","tr","y"],escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[{include:"@whitespace"},[/[a-zA-Z\-_][\w\-_]*/,{cases:{"@keywords":"keyword","@builtinFunctions":"type.identifier","@builtinFileHandlers":"variable.predefined","@quoteLikeOps":{token:"@rematch",next:"quotedConstructs"},"@default":""}}],[/[\$@%][*@#?\+\-\$!\w\\\^><~:;\.]+/,{cases:{"@builtinVariables":"variable.predefined","@default":"variable"}}],{include:"@strings"},{include:"@dblStrings"},{include:"@perldoc"},{include:"@heredoc"},[/[{}\[\]()]/,"@brackets"],[/[\/](?:(?:\[(?:\\]|[^\]])+\])|(?:\\\/|[^\]\/]))*[\/]\w*\s*(?=[).,;]|$)/,"regexp"],[/@symbols/,"operators"],{include:"@numbers"},[/[,;]/,"delimiter"]],whitespace:[[/\s+/,"white"],[/(^#!.*$)/,"metatag"],[/(^#.*$)/,"comment"]],numbers:[[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+/,"number"]],strings:[[/'/,"string","@stringBody"]],stringBody:[[/'/,"string","@popall"],[/\\'/,"string.escape"],[/./,"string"]],dblStrings:[[/"/,"string","@dblStringBody"]],dblStringBody:[[/"/,"string","@popall"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],{include:"@variables"},[/./,"string"]],quotedConstructs:[[/(q|qw|tr|y)\s*\(/,{token:"string.delim",switchTo:"@qstring.(.)"}],[/(q|qw|tr|y)\s*\[/,{token:"string.delim",switchTo:"@qstring.[.]"}],[/(q|qw|tr|y)\s*\{/,{token:"string.delim",switchTo:"@qstring.{.}"}],[/(q|qw|tr|y)\s*</,{token:"string.delim",switchTo:"@qstring.<.>"}],[/(q|qw|tr|y)#/,{token:"string.delim",switchTo:"@qstring.#.#"}],[/(q|qw|tr|y)\s*([^A-Za-z0-9#\s])/,{token:"string.delim",switchTo:"@qstring.$2.$2"}],[/(q|qw|tr|y)\s+(\w)/,{token:"string.delim",switchTo:"@qstring.$2.$2"}],[/(qr|m|s)\s*\(/,{token:"regexp.delim",switchTo:"@qregexp.(.)"}],[/(qr|m|s)\s*\[/,{token:"regexp.delim",switchTo:"@qregexp.[.]"}],[/(qr|m|s)\s*\{/,{token:"regexp.delim",switchTo:"@qregexp.{.}"}],[/(qr|m|s)\s*</,{token:"regexp.delim",switchTo:"@qregexp.<.>"}],[/(qr|m|s)#/,{token:"regexp.delim",switchTo:"@qregexp.#.#"}],[/(qr|m|s)\s*([^A-Za-z0-9_#\s])/,{token:"regexp.delim",switchTo:"@qregexp.$2.$2"}],[/(qr|m|s)\s+(\w)/,{token:"regexp.delim",switchTo:"@qregexp.$2.$2"}],[/(qq|qx)\s*\(/,{token:"string.delim",switchTo:"@qqstring.(.)"}],[/(qq|qx)\s*\[/,{token:"string.delim",switchTo:"@qqstring.[.]"}],[/(qq|qx)\s*\{/,{token:"string.delim",switchTo:"@qqstring.{.}"}],[/(qq|qx)\s*</,{token:"string.delim",switchTo:"@qqstring.<.>"}],[/(qq|qx)#/,{token:"string.delim",switchTo:"@qqstring.#.#"}],[/(qq|qx)\s*([^A-Za-z0-9#\s])/,{token:"string.delim",switchTo:"@qqstring.$2.$2"}],[/(qq|qx)\s+(\w)/,{token:"string.delim",switchTo:"@qqstring.$2.$2"}]],qstring:[[/\\./,"string.escape"],[/./,{cases:{"$#==$S3":{token:"string.delim",next:"@pop"},"$#==$S2":{token:"string.delim",next:"@push"},"@default":"string"}}]],qregexp:[{include:"@variables"},[/\\./,"regexp.escape"],[/./,{cases:{"$#==$S3":{token:"regexp.delim",next:"@regexpModifiers"},"$#==$S2":{token:"regexp.delim",next:"@push"},"@default":"regexp"}}]],regexpModifiers:[[/[msixpodualngcer]+/,{token:"regexp.modifier",next:"@popall"}]],qqstring:[{include:"@variables"},{include:"@qstring"}],heredoc:[[/<<\s*['"`]?([\w\-]+)['"`]?/,{token:"string.heredoc.delimiter",next:"@heredocBody.$1"}]],heredocBody:[[/^([\w\-]+)$/,{cases:{"$1==$S2":[{token:"string.heredoc.delimiter",next:"@popall"}],"@default":"string.heredoc"}}],[/./,"string.heredoc"]],perldoc:[[/^=\w/,"comment.doc","@perldocBody"]],perldocBody:[[/^=cut\b/,"type.identifier","@popall"],[/./,"comment.doc"]],variables:[[/\$\w+/,"variable"],[/@\w+/,"variable"],[/%\w+/,"variable"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/73.ab425ef3.js b/docs/src/.vuepress/dist/assets/js/74.c914b2f2.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/73.ab425ef3.js rename to docs/src/.vuepress/dist/assets/js/74.c914b2f2.js index 1e4fcdc7..79c8094c 100644 --- a/docs/src/.vuepress/dist/assets/js/73.ab425ef3.js +++ b/docs/src/.vuepress/dist/assets/js/74.c914b2f2.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[73],{475:function(_,e,E){"use strict";E.r(e),E.d(e,"conf",(function(){return t})),E.d(e,"language",(function(){return T}));var t={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},T={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["A","ABORT","ABS","ABSENT","ABSOLUTE","ACCESS","ACCORDING","ACTION","ADA","ADD","ADMIN","AFTER","AGGREGATE","ALL","ALLOCATE","ALSO","ALTER","ALWAYS","ANALYSE","ANALYZE","AND","ANY","ARE","ARRAY","ARRAY_AGG","ARRAY_MAX_CARDINALITY","AS","ASC","ASENSITIVE","ASSERTION","ASSIGNMENT","ASYMMETRIC","AT","ATOMIC","ATTRIBUTE","ATTRIBUTES","AUTHORIZATION","AVG","BACKWARD","BASE64","BEFORE","BEGIN","BEGIN_FRAME","BEGIN_PARTITION","BERNOULLI","BETWEEN","BIGINT","BINARY","BIT","BIT_LENGTH","BLOB","BLOCKED","BOM","BOOLEAN","BOTH","BREADTH","BY","C","CACHE","CALL","CALLED","CARDINALITY","CASCADE","CASCADED","CASE","CAST","CATALOG","CATALOG_NAME","CEIL","CEILING","CHAIN","CHAR","CHARACTER","CHARACTERISTICS","CHARACTERS","CHARACTER_LENGTH","CHARACTER_SET_CATALOG","CHARACTER_SET_NAME","CHARACTER_SET_SCHEMA","CHAR_LENGTH","CHECK","CHECKPOINT","CLASS","CLASS_ORIGIN","CLOB","CLOSE","CLUSTER","COALESCE","COBOL","COLLATE","COLLATION","COLLATION_CATALOG","COLLATION_NAME","COLLATION_SCHEMA","COLLECT","COLUMN","COLUMNS","COLUMN_NAME","COMMAND_FUNCTION","COMMAND_FUNCTION_CODE","COMMENT","COMMENTS","COMMIT","COMMITTED","CONCURRENTLY","CONDITION","CONDITION_NUMBER","CONFIGURATION","CONFLICT","CONNECT","CONNECTION","CONNECTION_NAME","CONSTRAINT","CONSTRAINTS","CONSTRAINT_CATALOG","CONSTRAINT_NAME","CONSTRAINT_SCHEMA","CONSTRUCTOR","CONTAINS","CONTENT","CONTINUE","CONTROL","CONVERSION","CONVERT","COPY","CORR","CORRESPONDING","COST","COUNT","COVAR_POP","COVAR_SAMP","CREATE","CROSS","CSV","CUBE","CUME_DIST","CURRENT","CURRENT_CATALOG","CURRENT_DATE","CURRENT_DEFAULT_TRANSFORM_GROUP","CURRENT_PATH","CURRENT_ROLE","CURRENT_ROW","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TRANSFORM_GROUP_FOR_TYPE","CURRENT_USER","CURSOR","CURSOR_NAME","CYCLE","DATA","DATABASE","DATALINK","DATE","DATETIME_INTERVAL_CODE","DATETIME_INTERVAL_PRECISION","DAY","DB","DEALLOCATE","DEC","DECIMAL","DECLARE","DEFAULT","DEFAULTS","DEFERRABLE","DEFERRED","DEFINED","DEFINER","DEGREE","DELETE","DELIMITER","DELIMITERS","DENSE_RANK","DEPENDS","DEPTH","DEREF","DERIVED","DESC","DESCRIBE","DESCRIPTOR","DETERMINISTIC","DIAGNOSTICS","DICTIONARY","DISABLE","DISCARD","DISCONNECT","DISPATCH","DISTINCT","DLNEWCOPY","DLPREVIOUSCOPY","DLURLCOMPLETE","DLURLCOMPLETEONLY","DLURLCOMPLETEWRITE","DLURLPATH","DLURLPATHONLY","DLURLPATHWRITE","DLURLSCHEME","DLURLSERVER","DLVALUE","DO","DOCUMENT","DOMAIN","DOUBLE","DROP","DYNAMIC","DYNAMIC_FUNCTION","DYNAMIC_FUNCTION_CODE","EACH","ELEMENT","ELSE","EMPTY","ENABLE","ENCODING","ENCRYPTED","END","END-EXEC","END_FRAME","END_PARTITION","ENFORCED","ENUM","EQUALS","ESCAPE","EVENT","EVERY","EXCEPT","EXCEPTION","EXCLUDE","EXCLUDING","EXCLUSIVE","EXEC","EXECUTE","EXISTS","EXP","EXPLAIN","EXPRESSION","EXTENSION","EXTERNAL","EXTRACT","FALSE","FAMILY","FETCH","FILE","FILTER","FINAL","FIRST","FIRST_VALUE","FLAG","FLOAT","FLOOR","FOLLOWING","FOR","FORCE","FOREIGN","FORTRAN","FORWARD","FOUND","FRAME_ROW","FREE","FREEZE","FROM","FS","FULL","FUNCTION","FUNCTIONS","FUSION","G","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GRANTED","GREATEST","GROUP","GROUPING","GROUPS","HANDLER","HAVING","HEADER","HEX","HIERARCHY","HOLD","HOUR","ID","IDENTITY","IF","IGNORE","ILIKE","IMMEDIATE","IMMEDIATELY","IMMUTABLE","IMPLEMENTATION","IMPLICIT","IMPORT","IN","INCLUDING","INCREMENT","INDENT","INDEX","INDEXES","INDICATOR","INHERIT","INHERITS","INITIALLY","INLINE","INNER","INOUT","INPUT","INSENSITIVE","INSERT","INSTANCE","INSTANTIABLE","INSTEAD","INT","INTEGER","INTEGRITY","INTERSECT","INTERSECTION","INTERVAL","INTO","INVOKER","IS","ISNULL","ISOLATION","JOIN","K","KEY","KEY_MEMBER","KEY_TYPE","LABEL","LAG","LANGUAGE","LARGE","LAST","LAST_VALUE","LATERAL","LEAD","LEADING","LEAKPROOF","LEAST","LEFT","LENGTH","LEVEL","LIBRARY","LIKE","LIKE_REGEX","LIMIT","LINK","LISTEN","LN","LOAD","LOCAL","LOCALTIME","LOCALTIMESTAMP","LOCATION","LOCATOR","LOCK","LOCKED","LOGGED","LOWER","M","MAP","MAPPING","MATCH","MATCHED","MATERIALIZED","MAX","MAXVALUE","MAX_CARDINALITY","MEMBER","MERGE","MESSAGE_LENGTH","MESSAGE_OCTET_LENGTH","MESSAGE_TEXT","METHOD","MIN","MINUTE","MINVALUE","MOD","MODE","MODIFIES","MODULE","MONTH","MORE","MOVE","MULTISET","MUMPS","NAME","NAMES","NAMESPACE","NATIONAL","NATURAL","NCHAR","NCLOB","NESTING","NEW","NEXT","NFC","NFD","NFKC","NFKD","NIL","NO","NONE","NORMALIZE","NORMALIZED","NOT","NOTHING","NOTIFY","NOTNULL","NOWAIT","NTH_VALUE","NTILE","NULL","NULLABLE","NULLIF","NULLS","NUMBER","NUMERIC","OBJECT","OCCURRENCES_REGEX","OCTETS","OCTET_LENGTH","OF","OFF","OFFSET","OIDS","OLD","ON","ONLY","OPEN","OPERATOR","OPTION","OPTIONS","OR","ORDER","ORDERING","ORDINALITY","OTHERS","OUT","OUTER","OUTPUT","OVER","OVERLAPS","OVERLAY","OVERRIDING","OWNED","OWNER","P","PAD","PARALLEL","PARAMETER","PARAMETER_MODE","PARAMETER_NAME","PARAMETER_ORDINAL_POSITION","PARAMETER_SPECIFIC_CATALOG","PARAMETER_SPECIFIC_NAME","PARAMETER_SPECIFIC_SCHEMA","PARSER","PARTIAL","PARTITION","PASCAL","PASSING","PASSTHROUGH","PASSWORD","PATH","PERCENT","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","PERIOD","PERMISSION","PLACING","PLANS","PLI","POLICY","PORTION","POSITION","POSITION_REGEX","POWER","PRECEDES","PRECEDING","PRECISION","PREPARE","PREPARED","PRESERVE","PRIMARY","PRIOR","PRIVILEGES","PROCEDURAL","PROCEDURE","PROGRAM","PUBLIC","QUOTE","RANGE","RANK","READ","READS","REAL","REASSIGN","RECHECK","RECOVERY","RECURSIVE","REF","REFERENCES","REFERENCING","REFRESH","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","REINDEX","RELATIVE","RELEASE","RENAME","REPEATABLE","REPLACE","REPLICA","REQUIRING","RESET","RESPECT","RESTART","RESTORE","RESTRICT","RESULT","RETURN","RETURNED_CARDINALITY","RETURNED_LENGTH","RETURNED_OCTET_LENGTH","RETURNED_SQLSTATE","RETURNING","RETURNS","REVOKE","RIGHT","ROLE","ROLLBACK","ROLLUP","ROUTINE","ROUTINE_CATALOG","ROUTINE_NAME","ROUTINE_SCHEMA","ROW","ROWS","ROW_COUNT","ROW_NUMBER","RULE","SAVEPOINT","SCALE","SCHEMA","SCHEMA_NAME","SCOPE","SCOPE_CATALOG","SCOPE_NAME","SCOPE_SCHEMA","SCROLL","SEARCH","SECOND","SECTION","SECURITY","SELECT","SELECTIVE","SELF","SENSITIVE","SEQUENCE","SEQUENCES","SERIALIZABLE","SERVER","SERVER_NAME","SESSION","SESSION_USER","SET","SETOF","SETS","SHARE","SHOW","SIMILAR","SIMPLE","SIZE","SKIP","SMALLINT","SNAPSHOT","SOME","SOURCE","SPACE","SPECIFIC","SPECIFICTYPE","SPECIFIC_NAME","SQL","SQLCODE","SQLERROR","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQRT","STABLE","STANDALONE","START","STATE","STATEMENT","STATIC","STATISTICS","STDDEV_POP","STDDEV_SAMP","STDIN","STDOUT","STORAGE","STRICT","STRIP","STRUCTURE","STYLE","SUBCLASS_ORIGIN","SUBMULTISET","SUBSTRING","SUBSTRING_REGEX","SUCCEEDS","SUM","SYMMETRIC","SYSID","SYSTEM","SYSTEM_TIME","SYSTEM_USER","T","TABLE","TABLES","TABLESAMPLE","TABLESPACE","TABLE_NAME","TEMP","TEMPLATE","TEMPORARY","TEXT","THEN","TIES","TIME","TIMESTAMP","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO","TOKEN","TOP_LEVEL_COUNT","TRAILING","TRANSACTION","TRANSACTIONS_COMMITTED","TRANSACTIONS_ROLLED_BACK","TRANSACTION_ACTIVE","TRANSFORM","TRANSFORMS","TRANSLATE","TRANSLATE_REGEX","TRANSLATION","TREAT","TRIGGER","TRIGGER_CATALOG","TRIGGER_NAME","TRIGGER_SCHEMA","TRIM","TRIM_ARRAY","TRUE","TRUNCATE","TRUSTED","TYPE","TYPES","UESCAPE","UNBOUNDED","UNCOMMITTED","UNDER","UNENCRYPTED","UNION","UNIQUE","UNKNOWN","UNLINK","UNLISTEN","UNLOGGED","UNNAMED","UNNEST","UNTIL","UNTYPED","UPDATE","UPPER","URI","USAGE","USER","USER_DEFINED_TYPE_CATALOG","USER_DEFINED_TYPE_CODE","USER_DEFINED_TYPE_NAME","USER_DEFINED_TYPE_SCHEMA","USING","VACUUM","VALID","VALIDATE","VALIDATOR","VALUE","VALUES","VALUE_OF","VARBINARY","VARCHAR","VARIADIC","VARYING","VAR_POP","VAR_SAMP","VERBOSE","VERSION","VERSIONING","VIEW","VIEWS","VOLATILE","WHEN","WHENEVER","WHERE","WHITESPACE","WIDTH_BUCKET","WINDOW","WITH","WITHIN","WITHOUT","WORK","WRAPPER","WRITE","XML","XMLAGG","XMLATTRIBUTES","XMLBINARY","XMLCAST","XMLCOMMENT","XMLCONCAT","XMLDECLARATION","XMLDOCUMENT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLITERATE","XMLNAMESPACES","XMLPARSE","XMLPI","XMLQUERY","XMLROOT","XMLSCHEMA","XMLSERIALIZE","XMLTABLE","XMLTEXT","XMLVALIDATE","YEAR","YES","ZONE"],operators:["AND","BETWEEN","IN","LIKE","NOT","OR","IS","NULL","INTERSECT","UNION","INNER","JOIN","LEFT","OUTER","RIGHT"],builtinFunctions:["abbrev","abs","acos","acosd","age","any","area","array_agg","array_append","array_cat","array_dims","array_fill","array_length","array_lower","array_ndims","array_position","array_positions","array_prepend","array_remove","array_replace","array_to_json","array_to_string","array_to_tsvector","array_upper","ascii","asin","asind","atan","atan2","atan2d","atand","avg","bit","bit_and","bit_length","bit_or","bool_and","bool_or","bound_box","box","brin_summarize_new_values","broadcast","btrim","cardinality","cbrt","ceil","ceiling","center","char_length","character_length","chr","circle","clock_timestamp","coalesce","col_description","concat","concat_ws","convert","convert_from","convert_to","corr","cos","cosd","cot","cotd","count","covar_pop","covar_samp","cume_dist","current_catalog","current_database","current_date","current_query","current_role","current_schema","current_schemas","current_setting","current_time","current_timestamp","current_user","currval","cursor_to_xml","date_part","date_trunc","decode","degrees","dense_rank","diameter","div","encode","enum_first","enum_last","enum_range","every","exp","extract","family","first_value","floor","format","format_type","generate_series","generate_subscripts","get_bit","get_byte","get_current_ts_config","gin_clean_pending_list","greatest","grouping","has_any_column_privilege","has_column_privilege","has_database_privilege","has_foreign_data_wrapper_privilege","has_function_privilege","has_language_privilege","has_schema_privilege","has_sequence_privilege","has_server_privilege","has_table_privilege","has_tablespace_privilege","has_type_privilege","height","host","hostmask","inet_client_addr","inet_client_port","inet_merge","inet_same_family","inet_server_addr","inet_server_port","initcap","isclosed","isempty","isfinite","isopen","json_agg","json_object","json_object_agg","json_populate_record","json_populate_recordset","json_to_record","json_to_recordset","jsonb_agg","jsonb_object_agg","justify_days","justify_hours","justify_interval","lag","last_value","lastval","lead","least","left","length","line","ln","localtime","localtimestamp","log","lower","lower_inc","lower_inf","lpad","lseg","ltrim","make_date","make_interval","make_time","make_timestamp","make_timestamptz","masklen","max","md5","min","mod","mode","netmask","network","nextval","now","npoints","nth_value","ntile","nullif","num_nonnulls","num_nulls","numnode","obj_description","octet_length","overlay","parse_ident","path","pclose","percent_rank","percentile_cont","percentile_disc","pg_advisory_lock","pg_advisory_lock_shared","pg_advisory_unlock","pg_advisory_unlock_all","pg_advisory_unlock_shared","pg_advisory_xact_lock","pg_advisory_xact_lock_shared","pg_backend_pid","pg_backup_start_time","pg_blocking_pids","pg_cancel_backend","pg_client_encoding","pg_collation_is_visible","pg_column_size","pg_conf_load_time","pg_control_checkpoint","pg_control_init","pg_control_recovery","pg_control_system","pg_conversion_is_visible","pg_create_logical_replication_slot","pg_create_physical_replication_slot","pg_create_restore_point","pg_current_xlog_flush_location","pg_current_xlog_insert_location","pg_current_xlog_location","pg_database_size","pg_describe_object","pg_drop_replication_slot","pg_export_snapshot","pg_filenode_relation","pg_function_is_visible","pg_get_constraintdef","pg_get_expr","pg_get_function_arguments","pg_get_function_identity_arguments","pg_get_function_result","pg_get_functiondef","pg_get_indexdef","pg_get_keywords","pg_get_object_address","pg_get_owned_sequence","pg_get_ruledef","pg_get_serial_sequence","pg_get_triggerdef","pg_get_userbyid","pg_get_viewdef","pg_has_role","pg_identify_object","pg_identify_object_as_address","pg_index_column_has_property","pg_index_has_property","pg_indexam_has_property","pg_indexes_size","pg_is_in_backup","pg_is_in_recovery","pg_is_other_temp_schema","pg_is_xlog_replay_paused","pg_last_committed_xact","pg_last_xact_replay_timestamp","pg_last_xlog_receive_location","pg_last_xlog_replay_location","pg_listening_channels","pg_logical_emit_message","pg_logical_slot_get_binary_changes","pg_logical_slot_get_changes","pg_logical_slot_peek_binary_changes","pg_logical_slot_peek_changes","pg_ls_dir","pg_my_temp_schema","pg_notification_queue_usage","pg_opclass_is_visible","pg_operator_is_visible","pg_opfamily_is_visible","pg_options_to_table","pg_postmaster_start_time","pg_read_binary_file","pg_read_file","pg_relation_filenode","pg_relation_filepath","pg_relation_size","pg_reload_conf","pg_replication_origin_create","pg_replication_origin_drop","pg_replication_origin_oid","pg_replication_origin_progress","pg_replication_origin_session_is_setup","pg_replication_origin_session_progress","pg_replication_origin_session_reset","pg_replication_origin_session_setup","pg_replication_origin_xact_reset","pg_replication_origin_xact_setup","pg_rotate_logfile","pg_size_bytes","pg_size_pretty","pg_sleep","pg_sleep_for","pg_sleep_until","pg_start_backup","pg_stat_file","pg_stop_backup","pg_switch_xlog","pg_table_is_visible","pg_table_size","pg_tablespace_databases","pg_tablespace_location","pg_tablespace_size","pg_terminate_backend","pg_total_relation_size","pg_trigger_depth","pg_try_advisory_lock","pg_try_advisory_lock_shared","pg_try_advisory_xact_lock","pg_try_advisory_xact_lock_shared","pg_ts_config_is_visible","pg_ts_dict_is_visible","pg_ts_parser_is_visible","pg_ts_template_is_visible","pg_type_is_visible","pg_typeof","pg_xact_commit_timestamp","pg_xlog_location_diff","pg_xlog_replay_pause","pg_xlog_replay_resume","pg_xlogfile_name","pg_xlogfile_name_offset","phraseto_tsquery","pi","plainto_tsquery","point","polygon","popen","position","power","pqserverversion","query_to_xml","querytree","quote_ident","quote_literal","quote_nullable","radians","radius","random","range_merge","rank","regexp_matches","regexp_replace","regexp_split_to_array","regexp_split_to_table","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","repeat","replace","reverse","right","round","row_number","row_security_active","row_to_json","rpad","rtrim","scale","session_user","set_bit","set_byte","set_config","set_masklen","setseed","setval","setweight","shobj_description","sign","sin","sind","split_part","sprintf","sqrt","statement_timestamp","stddev","stddev_pop","stddev_samp","string_agg","string_to_array","strip","strpos","substr","substring","sum","table_to_xml","table_to_xml_and_xmlschema","tan","tand","text","timeofday","timezone","to_ascii","to_char","to_date","to_hex","to_json","to_number","to_regclass","to_regnamespace","to_regoper","to_regoperator","to_regproc","to_regprocedure","to_regrole","to_regtype","to_timestamp","to_tsquery","to_tsvector","transaction_timestamp","translate","trim","trunc","ts_debug","ts_delete","ts_filter","ts_headline","ts_lexize","ts_parse","ts_rank","ts_rank_cd","ts_rewrite","ts_stat","ts_token_type","tsquery_phrase","tsvector_to_array","tsvector_update_trigger","tsvector_update_trigger_column","txid_current","txid_current_snapshot","txid_snapshot_xip","txid_snapshot_xmax","txid_snapshot_xmin","txid_visible_in_snapshot","unnest","upper","upper_inc","upper_inf","user","var_pop","var_samp","variance","version","width","width_bucket","xml_is_well_formed","xml_is_well_formed_content","xml_is_well_formed_document","xmlagg","xmlcomment","xmlconcat","xmlelement","xmlexists","xmlforest","xmlparse","xmlpi","xmlroot","xmlserialize","xpath","xpath_exists"],builtinVariables:[],pseudoColumns:[],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@pseudoColumns"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@#$]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":"predefined","@default":"identifier"}}]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/'/,{token:"string",next:"@string"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/"/,{token:"identifier.quote",next:"@quotedIdentifier"}]],quotedIdentifier:[[/[^"]+/,"identifier"],[/""/,"identifier"],[/"/,{token:"identifier.quote",next:"@pop"}]],scopes:[]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[74],{475:function(_,e,E){"use strict";E.r(e),E.d(e,"conf",(function(){return t})),E.d(e,"language",(function(){return T}));var t={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},T={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["A","ABORT","ABS","ABSENT","ABSOLUTE","ACCESS","ACCORDING","ACTION","ADA","ADD","ADMIN","AFTER","AGGREGATE","ALL","ALLOCATE","ALSO","ALTER","ALWAYS","ANALYSE","ANALYZE","AND","ANY","ARE","ARRAY","ARRAY_AGG","ARRAY_MAX_CARDINALITY","AS","ASC","ASENSITIVE","ASSERTION","ASSIGNMENT","ASYMMETRIC","AT","ATOMIC","ATTRIBUTE","ATTRIBUTES","AUTHORIZATION","AVG","BACKWARD","BASE64","BEFORE","BEGIN","BEGIN_FRAME","BEGIN_PARTITION","BERNOULLI","BETWEEN","BIGINT","BINARY","BIT","BIT_LENGTH","BLOB","BLOCKED","BOM","BOOLEAN","BOTH","BREADTH","BY","C","CACHE","CALL","CALLED","CARDINALITY","CASCADE","CASCADED","CASE","CAST","CATALOG","CATALOG_NAME","CEIL","CEILING","CHAIN","CHAR","CHARACTER","CHARACTERISTICS","CHARACTERS","CHARACTER_LENGTH","CHARACTER_SET_CATALOG","CHARACTER_SET_NAME","CHARACTER_SET_SCHEMA","CHAR_LENGTH","CHECK","CHECKPOINT","CLASS","CLASS_ORIGIN","CLOB","CLOSE","CLUSTER","COALESCE","COBOL","COLLATE","COLLATION","COLLATION_CATALOG","COLLATION_NAME","COLLATION_SCHEMA","COLLECT","COLUMN","COLUMNS","COLUMN_NAME","COMMAND_FUNCTION","COMMAND_FUNCTION_CODE","COMMENT","COMMENTS","COMMIT","COMMITTED","CONCURRENTLY","CONDITION","CONDITION_NUMBER","CONFIGURATION","CONFLICT","CONNECT","CONNECTION","CONNECTION_NAME","CONSTRAINT","CONSTRAINTS","CONSTRAINT_CATALOG","CONSTRAINT_NAME","CONSTRAINT_SCHEMA","CONSTRUCTOR","CONTAINS","CONTENT","CONTINUE","CONTROL","CONVERSION","CONVERT","COPY","CORR","CORRESPONDING","COST","COUNT","COVAR_POP","COVAR_SAMP","CREATE","CROSS","CSV","CUBE","CUME_DIST","CURRENT","CURRENT_CATALOG","CURRENT_DATE","CURRENT_DEFAULT_TRANSFORM_GROUP","CURRENT_PATH","CURRENT_ROLE","CURRENT_ROW","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TRANSFORM_GROUP_FOR_TYPE","CURRENT_USER","CURSOR","CURSOR_NAME","CYCLE","DATA","DATABASE","DATALINK","DATE","DATETIME_INTERVAL_CODE","DATETIME_INTERVAL_PRECISION","DAY","DB","DEALLOCATE","DEC","DECIMAL","DECLARE","DEFAULT","DEFAULTS","DEFERRABLE","DEFERRED","DEFINED","DEFINER","DEGREE","DELETE","DELIMITER","DELIMITERS","DENSE_RANK","DEPENDS","DEPTH","DEREF","DERIVED","DESC","DESCRIBE","DESCRIPTOR","DETERMINISTIC","DIAGNOSTICS","DICTIONARY","DISABLE","DISCARD","DISCONNECT","DISPATCH","DISTINCT","DLNEWCOPY","DLPREVIOUSCOPY","DLURLCOMPLETE","DLURLCOMPLETEONLY","DLURLCOMPLETEWRITE","DLURLPATH","DLURLPATHONLY","DLURLPATHWRITE","DLURLSCHEME","DLURLSERVER","DLVALUE","DO","DOCUMENT","DOMAIN","DOUBLE","DROP","DYNAMIC","DYNAMIC_FUNCTION","DYNAMIC_FUNCTION_CODE","EACH","ELEMENT","ELSE","EMPTY","ENABLE","ENCODING","ENCRYPTED","END","END-EXEC","END_FRAME","END_PARTITION","ENFORCED","ENUM","EQUALS","ESCAPE","EVENT","EVERY","EXCEPT","EXCEPTION","EXCLUDE","EXCLUDING","EXCLUSIVE","EXEC","EXECUTE","EXISTS","EXP","EXPLAIN","EXPRESSION","EXTENSION","EXTERNAL","EXTRACT","FALSE","FAMILY","FETCH","FILE","FILTER","FINAL","FIRST","FIRST_VALUE","FLAG","FLOAT","FLOOR","FOLLOWING","FOR","FORCE","FOREIGN","FORTRAN","FORWARD","FOUND","FRAME_ROW","FREE","FREEZE","FROM","FS","FULL","FUNCTION","FUNCTIONS","FUSION","G","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GRANTED","GREATEST","GROUP","GROUPING","GROUPS","HANDLER","HAVING","HEADER","HEX","HIERARCHY","HOLD","HOUR","ID","IDENTITY","IF","IGNORE","ILIKE","IMMEDIATE","IMMEDIATELY","IMMUTABLE","IMPLEMENTATION","IMPLICIT","IMPORT","IN","INCLUDING","INCREMENT","INDENT","INDEX","INDEXES","INDICATOR","INHERIT","INHERITS","INITIALLY","INLINE","INNER","INOUT","INPUT","INSENSITIVE","INSERT","INSTANCE","INSTANTIABLE","INSTEAD","INT","INTEGER","INTEGRITY","INTERSECT","INTERSECTION","INTERVAL","INTO","INVOKER","IS","ISNULL","ISOLATION","JOIN","K","KEY","KEY_MEMBER","KEY_TYPE","LABEL","LAG","LANGUAGE","LARGE","LAST","LAST_VALUE","LATERAL","LEAD","LEADING","LEAKPROOF","LEAST","LEFT","LENGTH","LEVEL","LIBRARY","LIKE","LIKE_REGEX","LIMIT","LINK","LISTEN","LN","LOAD","LOCAL","LOCALTIME","LOCALTIMESTAMP","LOCATION","LOCATOR","LOCK","LOCKED","LOGGED","LOWER","M","MAP","MAPPING","MATCH","MATCHED","MATERIALIZED","MAX","MAXVALUE","MAX_CARDINALITY","MEMBER","MERGE","MESSAGE_LENGTH","MESSAGE_OCTET_LENGTH","MESSAGE_TEXT","METHOD","MIN","MINUTE","MINVALUE","MOD","MODE","MODIFIES","MODULE","MONTH","MORE","MOVE","MULTISET","MUMPS","NAME","NAMES","NAMESPACE","NATIONAL","NATURAL","NCHAR","NCLOB","NESTING","NEW","NEXT","NFC","NFD","NFKC","NFKD","NIL","NO","NONE","NORMALIZE","NORMALIZED","NOT","NOTHING","NOTIFY","NOTNULL","NOWAIT","NTH_VALUE","NTILE","NULL","NULLABLE","NULLIF","NULLS","NUMBER","NUMERIC","OBJECT","OCCURRENCES_REGEX","OCTETS","OCTET_LENGTH","OF","OFF","OFFSET","OIDS","OLD","ON","ONLY","OPEN","OPERATOR","OPTION","OPTIONS","OR","ORDER","ORDERING","ORDINALITY","OTHERS","OUT","OUTER","OUTPUT","OVER","OVERLAPS","OVERLAY","OVERRIDING","OWNED","OWNER","P","PAD","PARALLEL","PARAMETER","PARAMETER_MODE","PARAMETER_NAME","PARAMETER_ORDINAL_POSITION","PARAMETER_SPECIFIC_CATALOG","PARAMETER_SPECIFIC_NAME","PARAMETER_SPECIFIC_SCHEMA","PARSER","PARTIAL","PARTITION","PASCAL","PASSING","PASSTHROUGH","PASSWORD","PATH","PERCENT","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","PERIOD","PERMISSION","PLACING","PLANS","PLI","POLICY","PORTION","POSITION","POSITION_REGEX","POWER","PRECEDES","PRECEDING","PRECISION","PREPARE","PREPARED","PRESERVE","PRIMARY","PRIOR","PRIVILEGES","PROCEDURAL","PROCEDURE","PROGRAM","PUBLIC","QUOTE","RANGE","RANK","READ","READS","REAL","REASSIGN","RECHECK","RECOVERY","RECURSIVE","REF","REFERENCES","REFERENCING","REFRESH","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","REINDEX","RELATIVE","RELEASE","RENAME","REPEATABLE","REPLACE","REPLICA","REQUIRING","RESET","RESPECT","RESTART","RESTORE","RESTRICT","RESULT","RETURN","RETURNED_CARDINALITY","RETURNED_LENGTH","RETURNED_OCTET_LENGTH","RETURNED_SQLSTATE","RETURNING","RETURNS","REVOKE","RIGHT","ROLE","ROLLBACK","ROLLUP","ROUTINE","ROUTINE_CATALOG","ROUTINE_NAME","ROUTINE_SCHEMA","ROW","ROWS","ROW_COUNT","ROW_NUMBER","RULE","SAVEPOINT","SCALE","SCHEMA","SCHEMA_NAME","SCOPE","SCOPE_CATALOG","SCOPE_NAME","SCOPE_SCHEMA","SCROLL","SEARCH","SECOND","SECTION","SECURITY","SELECT","SELECTIVE","SELF","SENSITIVE","SEQUENCE","SEQUENCES","SERIALIZABLE","SERVER","SERVER_NAME","SESSION","SESSION_USER","SET","SETOF","SETS","SHARE","SHOW","SIMILAR","SIMPLE","SIZE","SKIP","SMALLINT","SNAPSHOT","SOME","SOURCE","SPACE","SPECIFIC","SPECIFICTYPE","SPECIFIC_NAME","SQL","SQLCODE","SQLERROR","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQRT","STABLE","STANDALONE","START","STATE","STATEMENT","STATIC","STATISTICS","STDDEV_POP","STDDEV_SAMP","STDIN","STDOUT","STORAGE","STRICT","STRIP","STRUCTURE","STYLE","SUBCLASS_ORIGIN","SUBMULTISET","SUBSTRING","SUBSTRING_REGEX","SUCCEEDS","SUM","SYMMETRIC","SYSID","SYSTEM","SYSTEM_TIME","SYSTEM_USER","T","TABLE","TABLES","TABLESAMPLE","TABLESPACE","TABLE_NAME","TEMP","TEMPLATE","TEMPORARY","TEXT","THEN","TIES","TIME","TIMESTAMP","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO","TOKEN","TOP_LEVEL_COUNT","TRAILING","TRANSACTION","TRANSACTIONS_COMMITTED","TRANSACTIONS_ROLLED_BACK","TRANSACTION_ACTIVE","TRANSFORM","TRANSFORMS","TRANSLATE","TRANSLATE_REGEX","TRANSLATION","TREAT","TRIGGER","TRIGGER_CATALOG","TRIGGER_NAME","TRIGGER_SCHEMA","TRIM","TRIM_ARRAY","TRUE","TRUNCATE","TRUSTED","TYPE","TYPES","UESCAPE","UNBOUNDED","UNCOMMITTED","UNDER","UNENCRYPTED","UNION","UNIQUE","UNKNOWN","UNLINK","UNLISTEN","UNLOGGED","UNNAMED","UNNEST","UNTIL","UNTYPED","UPDATE","UPPER","URI","USAGE","USER","USER_DEFINED_TYPE_CATALOG","USER_DEFINED_TYPE_CODE","USER_DEFINED_TYPE_NAME","USER_DEFINED_TYPE_SCHEMA","USING","VACUUM","VALID","VALIDATE","VALIDATOR","VALUE","VALUES","VALUE_OF","VARBINARY","VARCHAR","VARIADIC","VARYING","VAR_POP","VAR_SAMP","VERBOSE","VERSION","VERSIONING","VIEW","VIEWS","VOLATILE","WHEN","WHENEVER","WHERE","WHITESPACE","WIDTH_BUCKET","WINDOW","WITH","WITHIN","WITHOUT","WORK","WRAPPER","WRITE","XML","XMLAGG","XMLATTRIBUTES","XMLBINARY","XMLCAST","XMLCOMMENT","XMLCONCAT","XMLDECLARATION","XMLDOCUMENT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLITERATE","XMLNAMESPACES","XMLPARSE","XMLPI","XMLQUERY","XMLROOT","XMLSCHEMA","XMLSERIALIZE","XMLTABLE","XMLTEXT","XMLVALIDATE","YEAR","YES","ZONE"],operators:["AND","BETWEEN","IN","LIKE","NOT","OR","IS","NULL","INTERSECT","UNION","INNER","JOIN","LEFT","OUTER","RIGHT"],builtinFunctions:["abbrev","abs","acos","acosd","age","any","area","array_agg","array_append","array_cat","array_dims","array_fill","array_length","array_lower","array_ndims","array_position","array_positions","array_prepend","array_remove","array_replace","array_to_json","array_to_string","array_to_tsvector","array_upper","ascii","asin","asind","atan","atan2","atan2d","atand","avg","bit","bit_and","bit_length","bit_or","bool_and","bool_or","bound_box","box","brin_summarize_new_values","broadcast","btrim","cardinality","cbrt","ceil","ceiling","center","char_length","character_length","chr","circle","clock_timestamp","coalesce","col_description","concat","concat_ws","convert","convert_from","convert_to","corr","cos","cosd","cot","cotd","count","covar_pop","covar_samp","cume_dist","current_catalog","current_database","current_date","current_query","current_role","current_schema","current_schemas","current_setting","current_time","current_timestamp","current_user","currval","cursor_to_xml","date_part","date_trunc","decode","degrees","dense_rank","diameter","div","encode","enum_first","enum_last","enum_range","every","exp","extract","family","first_value","floor","format","format_type","generate_series","generate_subscripts","get_bit","get_byte","get_current_ts_config","gin_clean_pending_list","greatest","grouping","has_any_column_privilege","has_column_privilege","has_database_privilege","has_foreign_data_wrapper_privilege","has_function_privilege","has_language_privilege","has_schema_privilege","has_sequence_privilege","has_server_privilege","has_table_privilege","has_tablespace_privilege","has_type_privilege","height","host","hostmask","inet_client_addr","inet_client_port","inet_merge","inet_same_family","inet_server_addr","inet_server_port","initcap","isclosed","isempty","isfinite","isopen","json_agg","json_object","json_object_agg","json_populate_record","json_populate_recordset","json_to_record","json_to_recordset","jsonb_agg","jsonb_object_agg","justify_days","justify_hours","justify_interval","lag","last_value","lastval","lead","least","left","length","line","ln","localtime","localtimestamp","log","lower","lower_inc","lower_inf","lpad","lseg","ltrim","make_date","make_interval","make_time","make_timestamp","make_timestamptz","masklen","max","md5","min","mod","mode","netmask","network","nextval","now","npoints","nth_value","ntile","nullif","num_nonnulls","num_nulls","numnode","obj_description","octet_length","overlay","parse_ident","path","pclose","percent_rank","percentile_cont","percentile_disc","pg_advisory_lock","pg_advisory_lock_shared","pg_advisory_unlock","pg_advisory_unlock_all","pg_advisory_unlock_shared","pg_advisory_xact_lock","pg_advisory_xact_lock_shared","pg_backend_pid","pg_backup_start_time","pg_blocking_pids","pg_cancel_backend","pg_client_encoding","pg_collation_is_visible","pg_column_size","pg_conf_load_time","pg_control_checkpoint","pg_control_init","pg_control_recovery","pg_control_system","pg_conversion_is_visible","pg_create_logical_replication_slot","pg_create_physical_replication_slot","pg_create_restore_point","pg_current_xlog_flush_location","pg_current_xlog_insert_location","pg_current_xlog_location","pg_database_size","pg_describe_object","pg_drop_replication_slot","pg_export_snapshot","pg_filenode_relation","pg_function_is_visible","pg_get_constraintdef","pg_get_expr","pg_get_function_arguments","pg_get_function_identity_arguments","pg_get_function_result","pg_get_functiondef","pg_get_indexdef","pg_get_keywords","pg_get_object_address","pg_get_owned_sequence","pg_get_ruledef","pg_get_serial_sequence","pg_get_triggerdef","pg_get_userbyid","pg_get_viewdef","pg_has_role","pg_identify_object","pg_identify_object_as_address","pg_index_column_has_property","pg_index_has_property","pg_indexam_has_property","pg_indexes_size","pg_is_in_backup","pg_is_in_recovery","pg_is_other_temp_schema","pg_is_xlog_replay_paused","pg_last_committed_xact","pg_last_xact_replay_timestamp","pg_last_xlog_receive_location","pg_last_xlog_replay_location","pg_listening_channels","pg_logical_emit_message","pg_logical_slot_get_binary_changes","pg_logical_slot_get_changes","pg_logical_slot_peek_binary_changes","pg_logical_slot_peek_changes","pg_ls_dir","pg_my_temp_schema","pg_notification_queue_usage","pg_opclass_is_visible","pg_operator_is_visible","pg_opfamily_is_visible","pg_options_to_table","pg_postmaster_start_time","pg_read_binary_file","pg_read_file","pg_relation_filenode","pg_relation_filepath","pg_relation_size","pg_reload_conf","pg_replication_origin_create","pg_replication_origin_drop","pg_replication_origin_oid","pg_replication_origin_progress","pg_replication_origin_session_is_setup","pg_replication_origin_session_progress","pg_replication_origin_session_reset","pg_replication_origin_session_setup","pg_replication_origin_xact_reset","pg_replication_origin_xact_setup","pg_rotate_logfile","pg_size_bytes","pg_size_pretty","pg_sleep","pg_sleep_for","pg_sleep_until","pg_start_backup","pg_stat_file","pg_stop_backup","pg_switch_xlog","pg_table_is_visible","pg_table_size","pg_tablespace_databases","pg_tablespace_location","pg_tablespace_size","pg_terminate_backend","pg_total_relation_size","pg_trigger_depth","pg_try_advisory_lock","pg_try_advisory_lock_shared","pg_try_advisory_xact_lock","pg_try_advisory_xact_lock_shared","pg_ts_config_is_visible","pg_ts_dict_is_visible","pg_ts_parser_is_visible","pg_ts_template_is_visible","pg_type_is_visible","pg_typeof","pg_xact_commit_timestamp","pg_xlog_location_diff","pg_xlog_replay_pause","pg_xlog_replay_resume","pg_xlogfile_name","pg_xlogfile_name_offset","phraseto_tsquery","pi","plainto_tsquery","point","polygon","popen","position","power","pqserverversion","query_to_xml","querytree","quote_ident","quote_literal","quote_nullable","radians","radius","random","range_merge","rank","regexp_matches","regexp_replace","regexp_split_to_array","regexp_split_to_table","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","repeat","replace","reverse","right","round","row_number","row_security_active","row_to_json","rpad","rtrim","scale","session_user","set_bit","set_byte","set_config","set_masklen","setseed","setval","setweight","shobj_description","sign","sin","sind","split_part","sprintf","sqrt","statement_timestamp","stddev","stddev_pop","stddev_samp","string_agg","string_to_array","strip","strpos","substr","substring","sum","table_to_xml","table_to_xml_and_xmlschema","tan","tand","text","timeofday","timezone","to_ascii","to_char","to_date","to_hex","to_json","to_number","to_regclass","to_regnamespace","to_regoper","to_regoperator","to_regproc","to_regprocedure","to_regrole","to_regtype","to_timestamp","to_tsquery","to_tsvector","transaction_timestamp","translate","trim","trunc","ts_debug","ts_delete","ts_filter","ts_headline","ts_lexize","ts_parse","ts_rank","ts_rank_cd","ts_rewrite","ts_stat","ts_token_type","tsquery_phrase","tsvector_to_array","tsvector_update_trigger","tsvector_update_trigger_column","txid_current","txid_current_snapshot","txid_snapshot_xip","txid_snapshot_xmax","txid_snapshot_xmin","txid_visible_in_snapshot","unnest","upper","upper_inc","upper_inf","user","var_pop","var_samp","variance","version","width","width_bucket","xml_is_well_formed","xml_is_well_formed_content","xml_is_well_formed_document","xmlagg","xmlcomment","xmlconcat","xmlelement","xmlexists","xmlforest","xmlparse","xmlpi","xmlroot","xmlserialize","xpath","xpath_exists"],builtinVariables:[],pseudoColumns:[],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@pseudoColumns"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@#$]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":"predefined","@default":"identifier"}}]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/'/,{token:"string",next:"@string"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/"/,{token:"identifier.quote",next:"@quotedIdentifier"}]],quotedIdentifier:[[/[^"]+/,"identifier"],[/""/,"identifier"],[/"/,{token:"identifier.quote",next:"@pop"}]],scopes:[]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/74.9d4a5b8b.js b/docs/src/.vuepress/dist/assets/js/75.16cfc054.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/74.9d4a5b8b.js rename to docs/src/.vuepress/dist/assets/js/75.16cfc054.js index 8afe25b0..07d8e290 100644 --- a/docs/src/.vuepress/dist/assets/js/74.9d4a5b8b.js +++ b/docs/src/.vuepress/dist/assets/js/75.16cfc054.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[74],{476:function(e,t,p){"use strict";p.r(t),p.d(t,"conf",(function(){return n})),p.d(t,"language",(function(){return i}));var n={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string"]},{open:"[",close:"]",notIn:["string"]},{open:"(",close:")",notIn:["string"]},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],folding:{markers:{start:new RegExp("^\\s*(#|//)region\\b"),end:new RegExp("^\\s*(#|//)endregion\\b")}}},i={defaultToken:"",tokenPostfix:"",tokenizer:{root:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.root"}],[/<!DOCTYPE/,"metatag.html","@doctype"],[/<!--/,"comment.html","@comment"],[/(<)(\w+)(\/>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)([:\w]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)(\w+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/</,"delimiter.html"],[/[^<]+/]],doctype:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.comment"}],[/[^>]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.comment"}],[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.otherTag"}],[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.script"}],[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.scriptAfterType"}],[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.scriptAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.scriptWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInEmbeddedState.scriptEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],style:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.style"}],[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.styleAfterType"}],[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.styleAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.styleWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInEmbeddedState.styleEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],phpInSimpleState:[[/<\?((php)|=)?/,"metatag.php"],[/\?>/,{token:"metatag.php",switchTo:"@$S2.$S3"}],{include:"phpRoot"}],phpInEmbeddedState:[[/<\?((php)|=)?/,"metatag.php"],[/\?>/,{token:"metatag.php",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}],{include:"phpRoot"}],phpRoot:[[/[a-zA-Z_]\w*/,{cases:{"@phpKeywords":{token:"keyword.php"},"@phpCompileTimeConstants":{token:"constant.php"},"@default":"identifier.php"}}],[/[$a-zA-Z_]\w*/,{cases:{"@phpPreDefinedVariables":{token:"variable.predefined.php"},"@default":"variable.php"}}],[/[{}]/,"delimiter.bracket.php"],[/[\[\]]/,"delimiter.array.php"],[/[()]/,"delimiter.parenthesis.php"],[/[ \t\r\n]+/],[/(#|\/\/)$/,"comment.php"],[/(#|\/\/)/,"comment.php","@phpLineComment"],[/\/\*/,"comment.php","@phpComment"],[/"/,"string.php","@phpDoubleQuoteString"],[/'/,"string.php","@phpSingleQuoteString"],[/[\+\-\*\%\&\|\^\~\!\=\<\>\/\?\;\:\.\,\@]/,"delimiter.php"],[/\d*\d+[eE]([\-+]?\d+)?/,"number.float.php"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float.php"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F]/,"number.hex.php"],[/0[0-7']*[0-7]/,"number.octal.php"],[/0[bB][0-1']*[0-1]/,"number.binary.php"],[/\d[\d']*/,"number.php"],[/\d/,"number.php"]],phpComment:[[/\*\//,"comment.php","@pop"],[/[^*]+/,"comment.php"],[/./,"comment.php"]],phpLineComment:[[/\?>/,{token:"@rematch",next:"@pop"}],[/.$/,"comment.php","@pop"],[/[^?]+$/,"comment.php","@pop"],[/[^?]+/,"comment.php"],[/./,"comment.php"]],phpDoubleQuoteString:[[/[^\\"]+/,"string.php"],[/@escapes/,"string.escape.php"],[/\\./,"string.escape.invalid.php"],[/"/,"string.php","@pop"]],phpSingleQuoteString:[[/[^\\']+/,"string.php"],[/@escapes/,"string.escape.php"],[/\\./,"string.escape.invalid.php"],[/'/,"string.php","@pop"]]},phpKeywords:["abstract","and","array","as","break","callable","case","catch","cfunction","class","clone","const","continue","declare","default","do","else","elseif","enddeclare","endfor","endforeach","endif","endswitch","endwhile","extends","false","final","for","foreach","function","global","goto","if","implements","interface","instanceof","insteadof","namespace","new","null","object","old_function","or","private","protected","public","resource","static","switch","throw","trait","try","true","use","var","while","xor","die","echo","empty","exit","eval","include","include_once","isset","list","require","require_once","return","print","unset","yield","__construct"],phpCompileTimeConstants:["__CLASS__","__DIR__","__FILE__","__LINE__","__NAMESPACE__","__METHOD__","__FUNCTION__","__TRAIT__"],phpPreDefinedVariables:["$GLOBALS","$_SERVER","$_GET","$_POST","$_FILES","$_REQUEST","$_SESSION","$_ENV","$_COOKIE","$php_errormsg","$HTTP_RAW_POST_DATA","$http_response_header","$argc","$argv"],escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[75],{476:function(e,t,p){"use strict";p.r(t),p.d(t,"conf",(function(){return n})),p.d(t,"language",(function(){return i}));var n={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string"]},{open:"[",close:"]",notIn:["string"]},{open:"(",close:")",notIn:["string"]},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],folding:{markers:{start:new RegExp("^\\s*(#|//)region\\b"),end:new RegExp("^\\s*(#|//)endregion\\b")}}},i={defaultToken:"",tokenPostfix:"",tokenizer:{root:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.root"}],[/<!DOCTYPE/,"metatag.html","@doctype"],[/<!--/,"comment.html","@comment"],[/(<)(\w+)(\/>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)([:\w]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)(\w+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/</,"delimiter.html"],[/[^<]+/]],doctype:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.comment"}],[/[^>]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.comment"}],[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.otherTag"}],[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.script"}],[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.scriptAfterType"}],[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.scriptAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.scriptWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInEmbeddedState.scriptEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],style:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.style"}],[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.styleAfterType"}],[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.styleAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInSimpleState.styleWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/<\?((php)|=)?/,{token:"@rematch",switchTo:"@phpInEmbeddedState.styleEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],phpInSimpleState:[[/<\?((php)|=)?/,"metatag.php"],[/\?>/,{token:"metatag.php",switchTo:"@$S2.$S3"}],{include:"phpRoot"}],phpInEmbeddedState:[[/<\?((php)|=)?/,"metatag.php"],[/\?>/,{token:"metatag.php",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}],{include:"phpRoot"}],phpRoot:[[/[a-zA-Z_]\w*/,{cases:{"@phpKeywords":{token:"keyword.php"},"@phpCompileTimeConstants":{token:"constant.php"},"@default":"identifier.php"}}],[/[$a-zA-Z_]\w*/,{cases:{"@phpPreDefinedVariables":{token:"variable.predefined.php"},"@default":"variable.php"}}],[/[{}]/,"delimiter.bracket.php"],[/[\[\]]/,"delimiter.array.php"],[/[()]/,"delimiter.parenthesis.php"],[/[ \t\r\n]+/],[/(#|\/\/)$/,"comment.php"],[/(#|\/\/)/,"comment.php","@phpLineComment"],[/\/\*/,"comment.php","@phpComment"],[/"/,"string.php","@phpDoubleQuoteString"],[/'/,"string.php","@phpSingleQuoteString"],[/[\+\-\*\%\&\|\^\~\!\=\<\>\/\?\;\:\.\,\@]/,"delimiter.php"],[/\d*\d+[eE]([\-+]?\d+)?/,"number.float.php"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float.php"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F]/,"number.hex.php"],[/0[0-7']*[0-7]/,"number.octal.php"],[/0[bB][0-1']*[0-1]/,"number.binary.php"],[/\d[\d']*/,"number.php"],[/\d/,"number.php"]],phpComment:[[/\*\//,"comment.php","@pop"],[/[^*]+/,"comment.php"],[/./,"comment.php"]],phpLineComment:[[/\?>/,{token:"@rematch",next:"@pop"}],[/.$/,"comment.php","@pop"],[/[^?]+$/,"comment.php","@pop"],[/[^?]+/,"comment.php"],[/./,"comment.php"]],phpDoubleQuoteString:[[/[^\\"]+/,"string.php"],[/@escapes/,"string.escape.php"],[/\\./,"string.escape.invalid.php"],[/"/,"string.php","@pop"]],phpSingleQuoteString:[[/[^\\']+/,"string.php"],[/@escapes/,"string.escape.php"],[/\\./,"string.escape.invalid.php"],[/'/,"string.php","@pop"]]},phpKeywords:["abstract","and","array","as","break","callable","case","catch","cfunction","class","clone","const","continue","declare","default","do","else","elseif","enddeclare","endfor","endforeach","endif","endswitch","endwhile","extends","false","final","for","foreach","function","global","goto","if","implements","interface","instanceof","insteadof","namespace","new","null","object","old_function","or","private","protected","public","resource","static","switch","throw","trait","try","true","use","var","while","xor","die","echo","empty","exit","eval","include","include_once","isset","list","require","require_once","return","print","unset","yield","__construct"],phpCompileTimeConstants:["__CLASS__","__DIR__","__FILE__","__LINE__","__NAMESPACE__","__METHOD__","__FUNCTION__","__TRAIT__"],phpPreDefinedVariables:["$GLOBALS","$_SERVER","$_GET","$_POST","$_FILES","$_REQUEST","$_SESSION","$_ENV","$_COOKIE","$php_errormsg","$HTTP_RAW_POST_DATA","$http_response_header","$argc","$argv"],escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/75.5d3a139b.js b/docs/src/.vuepress/dist/assets/js/76.6a920f4c.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/75.5d3a139b.js rename to docs/src/.vuepress/dist/assets/js/76.6a920f4c.js index 9fa73a99..aecafeb5 100644 --- a/docs/src/.vuepress/dist/assets/js/75.5d3a139b.js +++ b/docs/src/.vuepress/dist/assets/js/76.6a920f4c.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[75],{477:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return i})),n.d(t,"language",(function(){return o}));var i={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]}]},o={tokenPostfix:".pats",defaultToken:"invalid",keywords:["abstype","abst0ype","absprop","absview","absvtype","absviewtype","absvt0ype","absviewt0ype","as","and","assume","begin","classdec","datasort","datatype","dataprop","dataview","datavtype","dataviewtype","do","end","extern","extype","extvar","exception","fn","fnx","fun","prfn","prfun","praxi","castfn","if","then","else","ifcase","in","infix","infixl","infixr","prefix","postfix","implmnt","implement","primplmnt","primplement","import","let","local","macdef","macrodef","nonfix","symelim","symintr","overload","of","op","rec","sif","scase","sortdef","sta","stacst","stadef","static","staload","dynload","try","tkindef","typedef","propdef","viewdef","vtypedef","viewtypedef","prval","var","prvar","when","where","with","withtype","withprop","withview","withvtype","withviewtype"],keywords_dlr:["$delay","$ldelay","$arrpsz","$arrptrsize","$d2ctype","$effmask","$effmask_ntm","$effmask_exn","$effmask_ref","$effmask_wrt","$effmask_all","$extern","$extkind","$extype","$extype_struct","$extval","$extfcall","$extmcall","$literal","$myfilename","$mylocation","$myfunction","$lst","$lst_t","$lst_vt","$list","$list_t","$list_vt","$rec","$rec_t","$rec_vt","$record","$record_t","$record_vt","$tup","$tup_t","$tup_vt","$tuple","$tuple_t","$tuple_vt","$break","$continue","$raise","$showtype","$vcopyenv_v","$vcopyenv_vt","$tempenver","$solver_assert","$solver_verify"],keywords_srp:["#if","#ifdef","#ifndef","#then","#elif","#elifdef","#elifndef","#else","#endif","#error","#prerr","#print","#assert","#undef","#define","#include","#require","#pragma","#codegen2","#codegen3"],irregular_keyword_list:["val+","val-","val","case+","case-","case","addr@","addr","fold@","free@","fix@","fix","lam@","lam","llam@","llam","viewt@ype+","viewt@ype-","viewt@ype","viewtype+","viewtype-","viewtype","view+","view-","view@","view","type+","type-","type","vtype+","vtype-","vtype","vt@ype+","vt@ype-","vt@ype","viewt@ype+","viewt@ype-","viewt@ype","viewtype+","viewtype-","viewtype","prop+","prop-","prop","type+","type-","type","t@ype","t@ype+","t@ype-","abst@ype","abstype","absviewt@ype","absvt@ype","for*","for","while*","while"],keywords_types:["bool","double","byte","int","short","char","void","unit","long","float","string","strptr"],keywords_effects:["0","fun","clo","prf","funclo","cloptr","cloref","ref","ntm","1"],operators:["@","!","|","`",":","$",".","=","#","~","..","...","=>","=<>","=/=>","=>>","=/=>>","<",">","><",".<",">.",".<>.","->","-<>"],brackets:[{open:",(",close:")",token:"delimiter.parenthesis"},{open:"`(",close:")",token:"delimiter.parenthesis"},{open:"%(",close:")",token:"delimiter.parenthesis"},{open:"'(",close:")",token:"delimiter.parenthesis"},{open:"'{",close:"}",token:"delimiter.parenthesis"},{open:"@(",close:")",token:"delimiter.parenthesis"},{open:"@{",close:"}",token:"delimiter.brace"},{open:"@[",close:"]",token:"delimiter.square"},{open:"#[",close:"]",token:"delimiter.square"},{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],symbols:/[=><!~?:&|+\-*\/\^%]+/,IDENTFST:/[a-zA-Z_]/,IDENTRST:/[a-zA-Z0-9_'$]/,symbolic:/[%&+-./:=@~`^|*!$#?<>]/,digit:/[0-9]/,digitseq0:/@digit*/,xdigit:/[0-9A-Za-z]/,xdigitseq0:/@xdigit*/,INTSP:/[lLuU]/,FLOATSP:/[fFlL]/,fexponent:/[eE][+-]?[0-9]+/,fexponent_bin:/[pP][+-]?[0-9]+/,deciexp:/\.[0-9]*@fexponent?/,hexiexp:/\.[0-9a-zA-Z]*@fexponent_bin?/,irregular_keywords:/val[+-]?|case[+-]?|addr\@?|fold\@|free\@|fix\@?|lam\@?|llam\@?|prop[+-]?|type[+-]?|view[+-@]?|viewt@?ype[+-]?|t@?ype[+-]?|v(iew)?t@?ype[+-]?|abst@?ype|absv(iew)?t@?ype|for\*?|while\*?/,ESCHAR:/[ntvbrfa\\\?'"\(\[\{]/,start:"root",tokenizer:{root:[{regex:/[ \t\r\n]+/,action:{token:""}},{regex:/\(\*\)/,action:{token:"invalid"}},{regex:/\(\*/,action:{token:"comment",next:"lexing_COMMENT_block_ml"}},{regex:/\(/,action:"@brackets"},{regex:/\)/,action:"@brackets"},{regex:/\[/,action:"@brackets"},{regex:/\]/,action:"@brackets"},{regex:/\{/,action:"@brackets"},{regex:/\}/,action:"@brackets"},{regex:/,\(/,action:"@brackets"},{regex:/,/,action:{token:"delimiter.comma"}},{regex:/;/,action:{token:"delimiter.semicolon"}},{regex:/@\(/,action:"@brackets"},{regex:/@\[/,action:"@brackets"},{regex:/@\{/,action:"@brackets"},{regex:/:</,action:{token:"keyword",next:"@lexing_EFFECT_commaseq0"}},{regex:/\.@symbolic+/,action:{token:"identifier.sym"}},{regex:/\.@digit*@fexponent@FLOATSP*/,action:{token:"number.float"}},{regex:/\.@digit+/,action:{token:"number.float"}},{regex:/\$@IDENTFST@IDENTRST*/,action:{cases:{"@keywords_dlr":{token:"keyword.dlr"},"@default":{token:"namespace"}}}},{regex:/\#@IDENTFST@IDENTRST*/,action:{cases:{"@keywords_srp":{token:"keyword.srp"},"@default":{token:"identifier"}}}},{regex:/%\(/,action:{token:"delimiter.parenthesis"}},{regex:/^%{(#|\^|\$)?/,action:{token:"keyword",next:"@lexing_EXTCODE",nextEmbedded:"text/javascript"}},{regex:/^%}/,action:{token:"keyword"}},{regex:/'\(/,action:{token:"delimiter.parenthesis"}},{regex:/'\[/,action:{token:"delimiter.bracket"}},{regex:/'\{/,action:{token:"delimiter.brace"}},[/(')(\\@ESCHAR|\\[xX]@xdigit+|\\@digit+)(')/,["string","string.escape","string"]],[/'[^\\']'/,"string"],[/"/,"string.quote","@lexing_DQUOTE"],{regex:/`\(/,action:"@brackets"},{regex:/\\/,action:{token:"punctuation"}},{regex:/@irregular_keywords(?!@IDENTRST)/,action:{token:"keyword"}},{regex:/@IDENTFST@IDENTRST*[<!\[]?/,action:{cases:{"@keywords":{token:"keyword"},"@keywords_types":{token:"type"},"@default":{token:"identifier"}}}},{regex:/\/\/\/\//,action:{token:"comment",next:"@lexing_COMMENT_rest"}},{regex:/\/\/.*$/,action:{token:"comment"}},{regex:/\/\*/,action:{token:"comment",next:"@lexing_COMMENT_block_c"}},{regex:/-<|=</,action:{token:"keyword",next:"@lexing_EFFECT_commaseq0"}},{regex:/@symbolic+/,action:{cases:{"@operators":"keyword","@default":"operator"}}},{regex:/0[xX]@xdigit+(@hexiexp|@fexponent_bin)@FLOATSP*/,action:{token:"number.float"}},{regex:/0[xX]@xdigit+@INTSP*/,action:{token:"number.hex"}},{regex:/0[0-7]+(?![0-9])@INTSP*/,action:{token:"number.octal"}},{regex:/@digit+(@fexponent|@deciexp)@FLOATSP*/,action:{token:"number.float"}},{regex:/@digit@digitseq0@INTSP*/,action:{token:"number.decimal"}},{regex:/@digit+@INTSP*/,action:{token:"number"}}],lexing_COMMENT_block_ml:[[/[^\(\*]+/,"comment"],[/\(\*/,"comment","@push"],[/\(\*/,"comment.invalid"],[/\*\)/,"comment","@pop"],[/\*/,"comment"]],lexing_COMMENT_block_c:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],lexing_COMMENT_rest:[[/$/,"comment","@pop"],[/.*/,"comment"]],lexing_EFFECT_commaseq0:[{regex:/@IDENTFST@IDENTRST+|@digit+/,action:{cases:{"@keywords_effects":{token:"type.effect"},"@default":{token:"identifier"}}}},{regex:/,/,action:{token:"punctuation"}},{regex:/>/,action:{token:"@rematch",next:"@pop"}}],lexing_EXTCODE:[{regex:/^%}/,action:{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}},{regex:/[^%]+/,action:""}],lexing_DQUOTE:[{regex:/"/,action:{token:"string.quote",next:"@pop"}},{regex:/(\{\$)(@IDENTFST@IDENTRST*)(\})/,action:[{token:"string.escape"},{token:"identifier"},{token:"string.escape"}]},{regex:/\\$/,action:{token:"string.escape"}},{regex:/\\(@ESCHAR|[xX]@xdigit+|@digit+)/,action:{token:"string.escape"}},{regex:/[^\\"]+/,action:{token:"string"}}]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[76],{477:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return i})),n.d(t,"language",(function(){return o}));var i={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]}]},o={tokenPostfix:".pats",defaultToken:"invalid",keywords:["abstype","abst0ype","absprop","absview","absvtype","absviewtype","absvt0ype","absviewt0ype","as","and","assume","begin","classdec","datasort","datatype","dataprop","dataview","datavtype","dataviewtype","do","end","extern","extype","extvar","exception","fn","fnx","fun","prfn","prfun","praxi","castfn","if","then","else","ifcase","in","infix","infixl","infixr","prefix","postfix","implmnt","implement","primplmnt","primplement","import","let","local","macdef","macrodef","nonfix","symelim","symintr","overload","of","op","rec","sif","scase","sortdef","sta","stacst","stadef","static","staload","dynload","try","tkindef","typedef","propdef","viewdef","vtypedef","viewtypedef","prval","var","prvar","when","where","with","withtype","withprop","withview","withvtype","withviewtype"],keywords_dlr:["$delay","$ldelay","$arrpsz","$arrptrsize","$d2ctype","$effmask","$effmask_ntm","$effmask_exn","$effmask_ref","$effmask_wrt","$effmask_all","$extern","$extkind","$extype","$extype_struct","$extval","$extfcall","$extmcall","$literal","$myfilename","$mylocation","$myfunction","$lst","$lst_t","$lst_vt","$list","$list_t","$list_vt","$rec","$rec_t","$rec_vt","$record","$record_t","$record_vt","$tup","$tup_t","$tup_vt","$tuple","$tuple_t","$tuple_vt","$break","$continue","$raise","$showtype","$vcopyenv_v","$vcopyenv_vt","$tempenver","$solver_assert","$solver_verify"],keywords_srp:["#if","#ifdef","#ifndef","#then","#elif","#elifdef","#elifndef","#else","#endif","#error","#prerr","#print","#assert","#undef","#define","#include","#require","#pragma","#codegen2","#codegen3"],irregular_keyword_list:["val+","val-","val","case+","case-","case","addr@","addr","fold@","free@","fix@","fix","lam@","lam","llam@","llam","viewt@ype+","viewt@ype-","viewt@ype","viewtype+","viewtype-","viewtype","view+","view-","view@","view","type+","type-","type","vtype+","vtype-","vtype","vt@ype+","vt@ype-","vt@ype","viewt@ype+","viewt@ype-","viewt@ype","viewtype+","viewtype-","viewtype","prop+","prop-","prop","type+","type-","type","t@ype","t@ype+","t@ype-","abst@ype","abstype","absviewt@ype","absvt@ype","for*","for","while*","while"],keywords_types:["bool","double","byte","int","short","char","void","unit","long","float","string","strptr"],keywords_effects:["0","fun","clo","prf","funclo","cloptr","cloref","ref","ntm","1"],operators:["@","!","|","`",":","$",".","=","#","~","..","...","=>","=<>","=/=>","=>>","=/=>>","<",">","><",".<",">.",".<>.","->","-<>"],brackets:[{open:",(",close:")",token:"delimiter.parenthesis"},{open:"`(",close:")",token:"delimiter.parenthesis"},{open:"%(",close:")",token:"delimiter.parenthesis"},{open:"'(",close:")",token:"delimiter.parenthesis"},{open:"'{",close:"}",token:"delimiter.parenthesis"},{open:"@(",close:")",token:"delimiter.parenthesis"},{open:"@{",close:"}",token:"delimiter.brace"},{open:"@[",close:"]",token:"delimiter.square"},{open:"#[",close:"]",token:"delimiter.square"},{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],symbols:/[=><!~?:&|+\-*\/\^%]+/,IDENTFST:/[a-zA-Z_]/,IDENTRST:/[a-zA-Z0-9_'$]/,symbolic:/[%&+-./:=@~`^|*!$#?<>]/,digit:/[0-9]/,digitseq0:/@digit*/,xdigit:/[0-9A-Za-z]/,xdigitseq0:/@xdigit*/,INTSP:/[lLuU]/,FLOATSP:/[fFlL]/,fexponent:/[eE][+-]?[0-9]+/,fexponent_bin:/[pP][+-]?[0-9]+/,deciexp:/\.[0-9]*@fexponent?/,hexiexp:/\.[0-9a-zA-Z]*@fexponent_bin?/,irregular_keywords:/val[+-]?|case[+-]?|addr\@?|fold\@|free\@|fix\@?|lam\@?|llam\@?|prop[+-]?|type[+-]?|view[+-@]?|viewt@?ype[+-]?|t@?ype[+-]?|v(iew)?t@?ype[+-]?|abst@?ype|absv(iew)?t@?ype|for\*?|while\*?/,ESCHAR:/[ntvbrfa\\\?'"\(\[\{]/,start:"root",tokenizer:{root:[{regex:/[ \t\r\n]+/,action:{token:""}},{regex:/\(\*\)/,action:{token:"invalid"}},{regex:/\(\*/,action:{token:"comment",next:"lexing_COMMENT_block_ml"}},{regex:/\(/,action:"@brackets"},{regex:/\)/,action:"@brackets"},{regex:/\[/,action:"@brackets"},{regex:/\]/,action:"@brackets"},{regex:/\{/,action:"@brackets"},{regex:/\}/,action:"@brackets"},{regex:/,\(/,action:"@brackets"},{regex:/,/,action:{token:"delimiter.comma"}},{regex:/;/,action:{token:"delimiter.semicolon"}},{regex:/@\(/,action:"@brackets"},{regex:/@\[/,action:"@brackets"},{regex:/@\{/,action:"@brackets"},{regex:/:</,action:{token:"keyword",next:"@lexing_EFFECT_commaseq0"}},{regex:/\.@symbolic+/,action:{token:"identifier.sym"}},{regex:/\.@digit*@fexponent@FLOATSP*/,action:{token:"number.float"}},{regex:/\.@digit+/,action:{token:"number.float"}},{regex:/\$@IDENTFST@IDENTRST*/,action:{cases:{"@keywords_dlr":{token:"keyword.dlr"},"@default":{token:"namespace"}}}},{regex:/\#@IDENTFST@IDENTRST*/,action:{cases:{"@keywords_srp":{token:"keyword.srp"},"@default":{token:"identifier"}}}},{regex:/%\(/,action:{token:"delimiter.parenthesis"}},{regex:/^%{(#|\^|\$)?/,action:{token:"keyword",next:"@lexing_EXTCODE",nextEmbedded:"text/javascript"}},{regex:/^%}/,action:{token:"keyword"}},{regex:/'\(/,action:{token:"delimiter.parenthesis"}},{regex:/'\[/,action:{token:"delimiter.bracket"}},{regex:/'\{/,action:{token:"delimiter.brace"}},[/(')(\\@ESCHAR|\\[xX]@xdigit+|\\@digit+)(')/,["string","string.escape","string"]],[/'[^\\']'/,"string"],[/"/,"string.quote","@lexing_DQUOTE"],{regex:/`\(/,action:"@brackets"},{regex:/\\/,action:{token:"punctuation"}},{regex:/@irregular_keywords(?!@IDENTRST)/,action:{token:"keyword"}},{regex:/@IDENTFST@IDENTRST*[<!\[]?/,action:{cases:{"@keywords":{token:"keyword"},"@keywords_types":{token:"type"},"@default":{token:"identifier"}}}},{regex:/\/\/\/\//,action:{token:"comment",next:"@lexing_COMMENT_rest"}},{regex:/\/\/.*$/,action:{token:"comment"}},{regex:/\/\*/,action:{token:"comment",next:"@lexing_COMMENT_block_c"}},{regex:/-<|=</,action:{token:"keyword",next:"@lexing_EFFECT_commaseq0"}},{regex:/@symbolic+/,action:{cases:{"@operators":"keyword","@default":"operator"}}},{regex:/0[xX]@xdigit+(@hexiexp|@fexponent_bin)@FLOATSP*/,action:{token:"number.float"}},{regex:/0[xX]@xdigit+@INTSP*/,action:{token:"number.hex"}},{regex:/0[0-7]+(?![0-9])@INTSP*/,action:{token:"number.octal"}},{regex:/@digit+(@fexponent|@deciexp)@FLOATSP*/,action:{token:"number.float"}},{regex:/@digit@digitseq0@INTSP*/,action:{token:"number.decimal"}},{regex:/@digit+@INTSP*/,action:{token:"number"}}],lexing_COMMENT_block_ml:[[/[^\(\*]+/,"comment"],[/\(\*/,"comment","@push"],[/\(\*/,"comment.invalid"],[/\*\)/,"comment","@pop"],[/\*/,"comment"]],lexing_COMMENT_block_c:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],lexing_COMMENT_rest:[[/$/,"comment","@pop"],[/.*/,"comment"]],lexing_EFFECT_commaseq0:[{regex:/@IDENTFST@IDENTRST+|@digit+/,action:{cases:{"@keywords_effects":{token:"type.effect"},"@default":{token:"identifier"}}}},{regex:/,/,action:{token:"punctuation"}},{regex:/>/,action:{token:"@rematch",next:"@pop"}}],lexing_EXTCODE:[{regex:/^%}/,action:{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}},{regex:/[^%]+/,action:""}],lexing_DQUOTE:[{regex:/"/,action:{token:"string.quote",next:"@pop"}},{regex:/(\{\$)(@IDENTFST@IDENTRST*)(\})/,action:[{token:"string.escape"},{token:"identifier"},{token:"string.escape"}]},{regex:/\\$/,action:{token:"string.escape"}},{regex:/\\(@ESCHAR|[xX]@xdigit+|@digit+)/,action:{token:"string.escape"}},{regex:/[^\\"]+/,action:{token:"string"}}]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/76.c3a1d352.js b/docs/src/.vuepress/dist/assets/js/77.27937e13.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/76.c3a1d352.js rename to docs/src/.vuepress/dist/assets/js/77.27937e13.js index 1b2d08b4..a77ab7e7 100644 --- a/docs/src/.vuepress/dist/assets/js/76.c3a1d352.js +++ b/docs/src/.vuepress/dist/assets/js/77.27937e13.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[76],{478:function(e,t,a){"use strict";a.r(t),a.d(t,"conf",(function(){return n})),a.d(t,"language",(function(){return i}));var n={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["[","]"],["(",")"],["{","}"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment","identifier"]},{open:"[",close:"]",notIn:["string","comment","identifier"]},{open:"(",close:")",notIn:["string","comment","identifier"]},{open:"{",close:"}",notIn:["string","comment","identifier"]}]},i={defaultToken:"",tokenPostfix:".pq",ignoreCase:!1,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"{",close:"}",token:"delimiter.brackets"},{open:"(",close:")",token:"delimiter.parenthesis"}],operatorKeywords:["and","not","or"],keywords:["as","each","else","error","false","if","in","is","let","meta","otherwise","section","shared","then","true","try","type"],constructors:["#binary","#date","#datetime","#datetimezone","#duration","#table","#time"],constants:["#infinity","#nan","#sections","#shared"],typeKeywords:["action","any","anynonnull","none","null","logical","number","time","date","datetime","datetimezone","duration","text","binary","list","record","table","function"],builtinFunctions:["Access.Database","Action.Return","Action.Sequence","Action.Try","ActiveDirectory.Domains","AdoDotNet.DataSource","AdoDotNet.Query","AdobeAnalytics.Cubes","AnalysisServices.Database","AnalysisServices.Databases","AzureStorage.BlobContents","AzureStorage.Blobs","AzureStorage.Tables","Binary.Buffer","Binary.Combine","Binary.Compress","Binary.Decompress","Binary.End","Binary.From","Binary.FromList","Binary.FromText","Binary.InferContentType","Binary.Length","Binary.ToList","Binary.ToText","BinaryFormat.7BitEncodedSignedInteger","BinaryFormat.7BitEncodedUnsignedInteger","BinaryFormat.Binary","BinaryFormat.Byte","BinaryFormat.ByteOrder","BinaryFormat.Choice","BinaryFormat.Decimal","BinaryFormat.Double","BinaryFormat.Group","BinaryFormat.Length","BinaryFormat.List","BinaryFormat.Null","BinaryFormat.Record","BinaryFormat.SignedInteger16","BinaryFormat.SignedInteger32","BinaryFormat.SignedInteger64","BinaryFormat.Single","BinaryFormat.Text","BinaryFormat.Transform","BinaryFormat.UnsignedInteger16","BinaryFormat.UnsignedInteger32","BinaryFormat.UnsignedInteger64","Byte.From","Character.FromNumber","Character.ToNumber","Combiner.CombineTextByDelimiter","Combiner.CombineTextByEachDelimiter","Combiner.CombineTextByLengths","Combiner.CombineTextByPositions","Combiner.CombineTextByRanges","Comparer.Equals","Comparer.FromCulture","Comparer.Ordinal","Comparer.OrdinalIgnoreCase","Csv.Document","Cube.AddAndExpandDimensionColumn","Cube.AddMeasureColumn","Cube.ApplyParameter","Cube.AttributeMemberId","Cube.AttributeMemberProperty","Cube.CollapseAndRemoveColumns","Cube.Dimensions","Cube.DisplayFolders","Cube.Measures","Cube.Parameters","Cube.Properties","Cube.PropertyKey","Cube.ReplaceDimensions","Cube.Transform","Currency.From","DB2.Database","Date.AddDays","Date.AddMonths","Date.AddQuarters","Date.AddWeeks","Date.AddYears","Date.Day","Date.DayOfWeek","Date.DayOfWeekName","Date.DayOfYear","Date.DaysInMonth","Date.EndOfDay","Date.EndOfMonth","Date.EndOfQuarter","Date.EndOfWeek","Date.EndOfYear","Date.From","Date.FromText","Date.IsInCurrentDay","Date.IsInCurrentMonth","Date.IsInCurrentQuarter","Date.IsInCurrentWeek","Date.IsInCurrentYear","Date.IsInNextDay","Date.IsInNextMonth","Date.IsInNextNDays","Date.IsInNextNMonths","Date.IsInNextNQuarters","Date.IsInNextNWeeks","Date.IsInNextNYears","Date.IsInNextQuarter","Date.IsInNextWeek","Date.IsInNextYear","Date.IsInPreviousDay","Date.IsInPreviousMonth","Date.IsInPreviousNDays","Date.IsInPreviousNMonths","Date.IsInPreviousNQuarters","Date.IsInPreviousNWeeks","Date.IsInPreviousNYears","Date.IsInPreviousQuarter","Date.IsInPreviousWeek","Date.IsInPreviousYear","Date.IsInYearToDate","Date.IsLeapYear","Date.Month","Date.MonthName","Date.QuarterOfYear","Date.StartOfDay","Date.StartOfMonth","Date.StartOfQuarter","Date.StartOfWeek","Date.StartOfYear","Date.ToRecord","Date.ToText","Date.WeekOfMonth","Date.WeekOfYear","Date.Year","DateTime.AddZone","DateTime.Date","DateTime.FixedLocalNow","DateTime.From","DateTime.FromFileTime","DateTime.FromText","DateTime.IsInCurrentHour","DateTime.IsInCurrentMinute","DateTime.IsInCurrentSecond","DateTime.IsInNextHour","DateTime.IsInNextMinute","DateTime.IsInNextNHours","DateTime.IsInNextNMinutes","DateTime.IsInNextNSeconds","DateTime.IsInNextSecond","DateTime.IsInPreviousHour","DateTime.IsInPreviousMinute","DateTime.IsInPreviousNHours","DateTime.IsInPreviousNMinutes","DateTime.IsInPreviousNSeconds","DateTime.IsInPreviousSecond","DateTime.LocalNow","DateTime.Time","DateTime.ToRecord","DateTime.ToText","DateTimeZone.FixedLocalNow","DateTimeZone.FixedUtcNow","DateTimeZone.From","DateTimeZone.FromFileTime","DateTimeZone.FromText","DateTimeZone.LocalNow","DateTimeZone.RemoveZone","DateTimeZone.SwitchZone","DateTimeZone.ToLocal","DateTimeZone.ToRecord","DateTimeZone.ToText","DateTimeZone.ToUtc","DateTimeZone.UtcNow","DateTimeZone.ZoneHours","DateTimeZone.ZoneMinutes","Decimal.From","Diagnostics.ActivityId","Diagnostics.Trace","DirectQueryCapabilities.From","Double.From","Duration.Days","Duration.From","Duration.FromText","Duration.Hours","Duration.Minutes","Duration.Seconds","Duration.ToRecord","Duration.ToText","Duration.TotalDays","Duration.TotalHours","Duration.TotalMinutes","Duration.TotalSeconds","Embedded.Value","Error.Record","Excel.CurrentWorkbook","Excel.Workbook","Exchange.Contents","Expression.Constant","Expression.Evaluate","Expression.Identifier","Facebook.Graph","File.Contents","Folder.Contents","Folder.Files","Function.From","Function.Invoke","Function.InvokeAfter","Function.IsDataSource","GoogleAnalytics.Accounts","Guid.From","HdInsight.Containers","HdInsight.Contents","HdInsight.Files","Hdfs.Contents","Hdfs.Files","Informix.Database","Int16.From","Int32.From","Int64.From","Int8.From","ItemExpression.From","Json.Document","Json.FromValue","Lines.FromBinary","Lines.FromText","Lines.ToBinary","Lines.ToText","List.Accumulate","List.AllTrue","List.Alternate","List.AnyTrue","List.Average","List.Buffer","List.Combine","List.Contains","List.ContainsAll","List.ContainsAny","List.Count","List.Covariance","List.DateTimeZones","List.DateTimes","List.Dates","List.Difference","List.Distinct","List.Durations","List.FindText","List.First","List.FirstN","List.Generate","List.InsertRange","List.Intersect","List.IsDistinct","List.IsEmpty","List.Last","List.LastN","List.MatchesAll","List.MatchesAny","List.Max","List.MaxN","List.Median","List.Min","List.MinN","List.Mode","List.Modes","List.NonNullCount","List.Numbers","List.PositionOf","List.PositionOfAny","List.Positions","List.Product","List.Random","List.Range","List.RemoveFirstN","List.RemoveItems","List.RemoveLastN","List.RemoveMatchingItems","List.RemoveNulls","List.RemoveRange","List.Repeat","List.ReplaceMatchingItems","List.ReplaceRange","List.ReplaceValue","List.Reverse","List.Select","List.Single","List.SingleOrDefault","List.Skip","List.Sort","List.StandardDeviation","List.Sum","List.Times","List.Transform","List.TransformMany","List.Union","List.Zip","Logical.From","Logical.FromText","Logical.ToText","MQ.Queue","MySQL.Database","Number.Abs","Number.Acos","Number.Asin","Number.Atan","Number.Atan2","Number.BitwiseAnd","Number.BitwiseNot","Number.BitwiseOr","Number.BitwiseShiftLeft","Number.BitwiseShiftRight","Number.BitwiseXor","Number.Combinations","Number.Cos","Number.Cosh","Number.Exp","Number.Factorial","Number.From","Number.FromText","Number.IntegerDivide","Number.IsEven","Number.IsNaN","Number.IsOdd","Number.Ln","Number.Log","Number.Log10","Number.Mod","Number.Permutations","Number.Power","Number.Random","Number.RandomBetween","Number.Round","Number.RoundAwayFromZero","Number.RoundDown","Number.RoundTowardZero","Number.RoundUp","Number.Sign","Number.Sin","Number.Sinh","Number.Sqrt","Number.Tan","Number.Tanh","Number.ToText","OData.Feed","Odbc.DataSource","Odbc.Query","OleDb.DataSource","OleDb.Query","Oracle.Database","Percentage.From","PostgreSQL.Database","RData.FromBinary","Record.AddField","Record.Combine","Record.Field","Record.FieldCount","Record.FieldNames","Record.FieldOrDefault","Record.FieldValues","Record.FromList","Record.FromTable","Record.HasFields","Record.RemoveFields","Record.RenameFields","Record.ReorderFields","Record.SelectFields","Record.ToList","Record.ToTable","Record.TransformFields","Replacer.ReplaceText","Replacer.ReplaceValue","RowExpression.Column","RowExpression.From","Salesforce.Data","Salesforce.Reports","SapBusinessWarehouse.Cubes","SapHana.Database","SharePoint.Contents","SharePoint.Files","SharePoint.Tables","Single.From","Soda.Feed","Splitter.SplitByNothing","Splitter.SplitTextByAnyDelimiter","Splitter.SplitTextByDelimiter","Splitter.SplitTextByEachDelimiter","Splitter.SplitTextByLengths","Splitter.SplitTextByPositions","Splitter.SplitTextByRanges","Splitter.SplitTextByRepeatedLengths","Splitter.SplitTextByWhitespace","Sql.Database","Sql.Databases","SqlExpression.SchemaFrom","SqlExpression.ToExpression","Sybase.Database","Table.AddColumn","Table.AddIndexColumn","Table.AddJoinColumn","Table.AddKey","Table.AggregateTableColumn","Table.AlternateRows","Table.Buffer","Table.Column","Table.ColumnCount","Table.ColumnNames","Table.ColumnsOfType","Table.Combine","Table.CombineColumns","Table.Contains","Table.ContainsAll","Table.ContainsAny","Table.DemoteHeaders","Table.Distinct","Table.DuplicateColumn","Table.ExpandListColumn","Table.ExpandRecordColumn","Table.ExpandTableColumn","Table.FillDown","Table.FillUp","Table.FilterWithDataTable","Table.FindText","Table.First","Table.FirstN","Table.FirstValue","Table.FromColumns","Table.FromList","Table.FromPartitions","Table.FromRecords","Table.FromRows","Table.FromValue","Table.Group","Table.HasColumns","Table.InsertRows","Table.IsDistinct","Table.IsEmpty","Table.Join","Table.Keys","Table.Last","Table.LastN","Table.MatchesAllRows","Table.MatchesAnyRows","Table.Max","Table.MaxN","Table.Min","Table.MinN","Table.NestedJoin","Table.Partition","Table.PartitionValues","Table.Pivot","Table.PositionOf","Table.PositionOfAny","Table.PrefixColumns","Table.Profile","Table.PromoteHeaders","Table.Range","Table.RemoveColumns","Table.RemoveFirstN","Table.RemoveLastN","Table.RemoveMatchingRows","Table.RemoveRows","Table.RemoveRowsWithErrors","Table.RenameColumns","Table.ReorderColumns","Table.Repeat","Table.ReplaceErrorValues","Table.ReplaceKeys","Table.ReplaceMatchingRows","Table.ReplaceRelationshipIdentity","Table.ReplaceRows","Table.ReplaceValue","Table.ReverseRows","Table.RowCount","Table.Schema","Table.SelectColumns","Table.SelectRows","Table.SelectRowsWithErrors","Table.SingleRow","Table.Skip","Table.Sort","Table.SplitColumn","Table.ToColumns","Table.ToList","Table.ToRecords","Table.ToRows","Table.TransformColumnNames","Table.TransformColumnTypes","Table.TransformColumns","Table.TransformRows","Table.Transpose","Table.Unpivot","Table.UnpivotOtherColumns","Table.View","Table.ViewFunction","TableAction.DeleteRows","TableAction.InsertRows","TableAction.UpdateRows","Tables.GetRelationships","Teradata.Database","Text.AfterDelimiter","Text.At","Text.BeforeDelimiter","Text.BetweenDelimiters","Text.Clean","Text.Combine","Text.Contains","Text.End","Text.EndsWith","Text.Format","Text.From","Text.FromBinary","Text.Insert","Text.Length","Text.Lower","Text.Middle","Text.NewGuid","Text.PadEnd","Text.PadStart","Text.PositionOf","Text.PositionOfAny","Text.Proper","Text.Range","Text.Remove","Text.RemoveRange","Text.Repeat","Text.Replace","Text.ReplaceRange","Text.Select","Text.Split","Text.SplitAny","Text.Start","Text.StartsWith","Text.ToBinary","Text.ToList","Text.Trim","Text.TrimEnd","Text.TrimStart","Text.Upper","Time.EndOfHour","Time.From","Time.FromText","Time.Hour","Time.Minute","Time.Second","Time.StartOfHour","Time.ToRecord","Time.ToText","Type.AddTableKey","Type.ClosedRecord","Type.Facets","Type.ForFunction","Type.ForRecord","Type.FunctionParameters","Type.FunctionRequiredParameters","Type.FunctionReturn","Type.Is","Type.IsNullable","Type.IsOpenRecord","Type.ListItem","Type.NonNullable","Type.OpenRecord","Type.RecordFields","Type.ReplaceFacets","Type.ReplaceTableKeys","Type.TableColumn","Type.TableKeys","Type.TableRow","Type.TableSchema","Type.Union","Uri.BuildQueryString","Uri.Combine","Uri.EscapeDataString","Uri.Parts","Value.Add","Value.As","Value.Compare","Value.Divide","Value.Equals","Value.Firewall","Value.FromText","Value.Is","Value.Metadata","Value.Multiply","Value.NativeQuery","Value.NullableEquals","Value.RemoveMetadata","Value.ReplaceMetadata","Value.ReplaceType","Value.Subtract","Value.Type","ValueAction.NativeStatement","ValueAction.Replace","Variable.Value","Web.Contents","Web.Page","WebAction.Request","Xml.Document","Xml.Tables"],builtinConstants:["BinaryEncoding.Base64","BinaryEncoding.Hex","BinaryOccurrence.Optional","BinaryOccurrence.Repeating","BinaryOccurrence.Required","ByteOrder.BigEndian","ByteOrder.LittleEndian","Compression.Deflate","Compression.GZip","CsvStyle.QuoteAfterDelimiter","CsvStyle.QuoteAlways","Culture.Current","Day.Friday","Day.Monday","Day.Saturday","Day.Sunday","Day.Thursday","Day.Tuesday","Day.Wednesday","ExtraValues.Error","ExtraValues.Ignore","ExtraValues.List","GroupKind.Global","GroupKind.Local","JoinAlgorithm.Dynamic","JoinAlgorithm.LeftHash","JoinAlgorithm.LeftIndex","JoinAlgorithm.PairwiseHash","JoinAlgorithm.RightHash","JoinAlgorithm.RightIndex","JoinAlgorithm.SortMerge","JoinKind.FullOuter","JoinKind.Inner","JoinKind.LeftAnti","JoinKind.LeftOuter","JoinKind.RightAnti","JoinKind.RightOuter","JoinSide.Left","JoinSide.Right","MissingField.Error","MissingField.Ignore","MissingField.UseNull","Number.E","Number.Epsilon","Number.NaN","Number.NegativeInfinity","Number.PI","Number.PositiveInfinity","Occurrence.All","Occurrence.First","Occurrence.Last","Occurrence.Optional","Occurrence.Repeating","Occurrence.Required","Order.Ascending","Order.Descending","Precision.Decimal","Precision.Double","QuoteStyle.Csv","QuoteStyle.None","RelativePosition.FromEnd","RelativePosition.FromStart","RoundingMode.AwayFromZero","RoundingMode.Down","RoundingMode.ToEven","RoundingMode.TowardZero","RoundingMode.Up","SapHanaDistribution.All","SapHanaDistribution.Connection","SapHanaDistribution.Off","SapHanaDistribution.Statement","SapHanaRangeOperator.Equals","SapHanaRangeOperator.GreaterThan","SapHanaRangeOperator.GreaterThanOrEquals","SapHanaRangeOperator.LessThan","SapHanaRangeOperator.LessThanOrEquals","SapHanaRangeOperator.NotEquals","TextEncoding.Ascii","TextEncoding.BigEndianUnicode","TextEncoding.Unicode","TextEncoding.Utf16","TextEncoding.Utf8","TextEncoding.Windows","TraceLevel.Critical","TraceLevel.Error","TraceLevel.Information","TraceLevel.Verbose","TraceLevel.Warning","WebMethod.Delete","WebMethod.Get","WebMethod.Head","WebMethod.Patch","WebMethod.Post","WebMethod.Put"],builtinTypes:["Action.Type","Any.Type","Binary.Type","BinaryEncoding.Type","BinaryOccurrence.Type","Byte.Type","ByteOrder.Type","Character.Type","Compression.Type","CsvStyle.Type","Currency.Type","Date.Type","DateTime.Type","DateTimeZone.Type","Day.Type","Decimal.Type","Double.Type","Duration.Type","ExtraValues.Type","Function.Type","GroupKind.Type","Guid.Type","Int16.Type","Int32.Type","Int64.Type","Int8.Type","JoinAlgorithm.Type","JoinKind.Type","JoinSide.Type","List.Type","Logical.Type","MissingField.Type","None.Type","Null.Type","Number.Type","Occurrence.Type","Order.Type","Password.Type","Percentage.Type","Precision.Type","QuoteStyle.Type","Record.Type","RelativePosition.Type","RoundingMode.Type","SapHanaDistribution.Type","SapHanaRangeOperator.Type","Single.Type","Table.Type","Text.Type","TextEncoding.Type","Time.Type","TraceLevel.Type","Type.Type","Uri.Type","WebMethod.Type"],tokenizer:{root:[[/#"[\w \.]+"/,"identifier.quote"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/\d+([eE][\-+]?\d+)?/,"number"],[/(#?[a-z]+)\b/,{cases:{"@typeKeywords":"type","@keywords":"keyword","@constants":"constant","@constructors":"constructor","@operatorKeywords":"operators","@default":"identifier"}}],[/\b([A-Z][a-zA-Z0-9]+\.Type)\b/,{cases:{"@builtinTypes":"type","@default":"identifier"}}],[/\b([A-Z][a-zA-Z0-9]+\.[A-Z][a-zA-Z0-9]+)\b/,{cases:{"@builtinFunctions":"keyword.function","@builtinConstants":"constant","@default":"identifier"}}],[/\b([a-zA-Z_][\w\.]*)\b/,"identifier"],{include:"@whitespace"},{include:"@comments"},{include:"@strings"},[/[{}()\[\]]/,"@brackets"],[/([=\+<>\-\*&@\?\/!])|([<>]=)|(<>)|(=>)|(\.\.\.)|(\.\.)/,"operators"],[/[,;]/,"delimiter"]],whitespace:[[/\s+/,"white"]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],strings:[['"',"string","@string"]],string:[['""',"string.escape"],['"',"string","@pop"],[".","string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[77],{478:function(e,t,a){"use strict";a.r(t),a.d(t,"conf",(function(){return n})),a.d(t,"language",(function(){return i}));var n={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["[","]"],["(",")"],["{","}"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment","identifier"]},{open:"[",close:"]",notIn:["string","comment","identifier"]},{open:"(",close:")",notIn:["string","comment","identifier"]},{open:"{",close:"}",notIn:["string","comment","identifier"]}]},i={defaultToken:"",tokenPostfix:".pq",ignoreCase:!1,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"{",close:"}",token:"delimiter.brackets"},{open:"(",close:")",token:"delimiter.parenthesis"}],operatorKeywords:["and","not","or"],keywords:["as","each","else","error","false","if","in","is","let","meta","otherwise","section","shared","then","true","try","type"],constructors:["#binary","#date","#datetime","#datetimezone","#duration","#table","#time"],constants:["#infinity","#nan","#sections","#shared"],typeKeywords:["action","any","anynonnull","none","null","logical","number","time","date","datetime","datetimezone","duration","text","binary","list","record","table","function"],builtinFunctions:["Access.Database","Action.Return","Action.Sequence","Action.Try","ActiveDirectory.Domains","AdoDotNet.DataSource","AdoDotNet.Query","AdobeAnalytics.Cubes","AnalysisServices.Database","AnalysisServices.Databases","AzureStorage.BlobContents","AzureStorage.Blobs","AzureStorage.Tables","Binary.Buffer","Binary.Combine","Binary.Compress","Binary.Decompress","Binary.End","Binary.From","Binary.FromList","Binary.FromText","Binary.InferContentType","Binary.Length","Binary.ToList","Binary.ToText","BinaryFormat.7BitEncodedSignedInteger","BinaryFormat.7BitEncodedUnsignedInteger","BinaryFormat.Binary","BinaryFormat.Byte","BinaryFormat.ByteOrder","BinaryFormat.Choice","BinaryFormat.Decimal","BinaryFormat.Double","BinaryFormat.Group","BinaryFormat.Length","BinaryFormat.List","BinaryFormat.Null","BinaryFormat.Record","BinaryFormat.SignedInteger16","BinaryFormat.SignedInteger32","BinaryFormat.SignedInteger64","BinaryFormat.Single","BinaryFormat.Text","BinaryFormat.Transform","BinaryFormat.UnsignedInteger16","BinaryFormat.UnsignedInteger32","BinaryFormat.UnsignedInteger64","Byte.From","Character.FromNumber","Character.ToNumber","Combiner.CombineTextByDelimiter","Combiner.CombineTextByEachDelimiter","Combiner.CombineTextByLengths","Combiner.CombineTextByPositions","Combiner.CombineTextByRanges","Comparer.Equals","Comparer.FromCulture","Comparer.Ordinal","Comparer.OrdinalIgnoreCase","Csv.Document","Cube.AddAndExpandDimensionColumn","Cube.AddMeasureColumn","Cube.ApplyParameter","Cube.AttributeMemberId","Cube.AttributeMemberProperty","Cube.CollapseAndRemoveColumns","Cube.Dimensions","Cube.DisplayFolders","Cube.Measures","Cube.Parameters","Cube.Properties","Cube.PropertyKey","Cube.ReplaceDimensions","Cube.Transform","Currency.From","DB2.Database","Date.AddDays","Date.AddMonths","Date.AddQuarters","Date.AddWeeks","Date.AddYears","Date.Day","Date.DayOfWeek","Date.DayOfWeekName","Date.DayOfYear","Date.DaysInMonth","Date.EndOfDay","Date.EndOfMonth","Date.EndOfQuarter","Date.EndOfWeek","Date.EndOfYear","Date.From","Date.FromText","Date.IsInCurrentDay","Date.IsInCurrentMonth","Date.IsInCurrentQuarter","Date.IsInCurrentWeek","Date.IsInCurrentYear","Date.IsInNextDay","Date.IsInNextMonth","Date.IsInNextNDays","Date.IsInNextNMonths","Date.IsInNextNQuarters","Date.IsInNextNWeeks","Date.IsInNextNYears","Date.IsInNextQuarter","Date.IsInNextWeek","Date.IsInNextYear","Date.IsInPreviousDay","Date.IsInPreviousMonth","Date.IsInPreviousNDays","Date.IsInPreviousNMonths","Date.IsInPreviousNQuarters","Date.IsInPreviousNWeeks","Date.IsInPreviousNYears","Date.IsInPreviousQuarter","Date.IsInPreviousWeek","Date.IsInPreviousYear","Date.IsInYearToDate","Date.IsLeapYear","Date.Month","Date.MonthName","Date.QuarterOfYear","Date.StartOfDay","Date.StartOfMonth","Date.StartOfQuarter","Date.StartOfWeek","Date.StartOfYear","Date.ToRecord","Date.ToText","Date.WeekOfMonth","Date.WeekOfYear","Date.Year","DateTime.AddZone","DateTime.Date","DateTime.FixedLocalNow","DateTime.From","DateTime.FromFileTime","DateTime.FromText","DateTime.IsInCurrentHour","DateTime.IsInCurrentMinute","DateTime.IsInCurrentSecond","DateTime.IsInNextHour","DateTime.IsInNextMinute","DateTime.IsInNextNHours","DateTime.IsInNextNMinutes","DateTime.IsInNextNSeconds","DateTime.IsInNextSecond","DateTime.IsInPreviousHour","DateTime.IsInPreviousMinute","DateTime.IsInPreviousNHours","DateTime.IsInPreviousNMinutes","DateTime.IsInPreviousNSeconds","DateTime.IsInPreviousSecond","DateTime.LocalNow","DateTime.Time","DateTime.ToRecord","DateTime.ToText","DateTimeZone.FixedLocalNow","DateTimeZone.FixedUtcNow","DateTimeZone.From","DateTimeZone.FromFileTime","DateTimeZone.FromText","DateTimeZone.LocalNow","DateTimeZone.RemoveZone","DateTimeZone.SwitchZone","DateTimeZone.ToLocal","DateTimeZone.ToRecord","DateTimeZone.ToText","DateTimeZone.ToUtc","DateTimeZone.UtcNow","DateTimeZone.ZoneHours","DateTimeZone.ZoneMinutes","Decimal.From","Diagnostics.ActivityId","Diagnostics.Trace","DirectQueryCapabilities.From","Double.From","Duration.Days","Duration.From","Duration.FromText","Duration.Hours","Duration.Minutes","Duration.Seconds","Duration.ToRecord","Duration.ToText","Duration.TotalDays","Duration.TotalHours","Duration.TotalMinutes","Duration.TotalSeconds","Embedded.Value","Error.Record","Excel.CurrentWorkbook","Excel.Workbook","Exchange.Contents","Expression.Constant","Expression.Evaluate","Expression.Identifier","Facebook.Graph","File.Contents","Folder.Contents","Folder.Files","Function.From","Function.Invoke","Function.InvokeAfter","Function.IsDataSource","GoogleAnalytics.Accounts","Guid.From","HdInsight.Containers","HdInsight.Contents","HdInsight.Files","Hdfs.Contents","Hdfs.Files","Informix.Database","Int16.From","Int32.From","Int64.From","Int8.From","ItemExpression.From","Json.Document","Json.FromValue","Lines.FromBinary","Lines.FromText","Lines.ToBinary","Lines.ToText","List.Accumulate","List.AllTrue","List.Alternate","List.AnyTrue","List.Average","List.Buffer","List.Combine","List.Contains","List.ContainsAll","List.ContainsAny","List.Count","List.Covariance","List.DateTimeZones","List.DateTimes","List.Dates","List.Difference","List.Distinct","List.Durations","List.FindText","List.First","List.FirstN","List.Generate","List.InsertRange","List.Intersect","List.IsDistinct","List.IsEmpty","List.Last","List.LastN","List.MatchesAll","List.MatchesAny","List.Max","List.MaxN","List.Median","List.Min","List.MinN","List.Mode","List.Modes","List.NonNullCount","List.Numbers","List.PositionOf","List.PositionOfAny","List.Positions","List.Product","List.Random","List.Range","List.RemoveFirstN","List.RemoveItems","List.RemoveLastN","List.RemoveMatchingItems","List.RemoveNulls","List.RemoveRange","List.Repeat","List.ReplaceMatchingItems","List.ReplaceRange","List.ReplaceValue","List.Reverse","List.Select","List.Single","List.SingleOrDefault","List.Skip","List.Sort","List.StandardDeviation","List.Sum","List.Times","List.Transform","List.TransformMany","List.Union","List.Zip","Logical.From","Logical.FromText","Logical.ToText","MQ.Queue","MySQL.Database","Number.Abs","Number.Acos","Number.Asin","Number.Atan","Number.Atan2","Number.BitwiseAnd","Number.BitwiseNot","Number.BitwiseOr","Number.BitwiseShiftLeft","Number.BitwiseShiftRight","Number.BitwiseXor","Number.Combinations","Number.Cos","Number.Cosh","Number.Exp","Number.Factorial","Number.From","Number.FromText","Number.IntegerDivide","Number.IsEven","Number.IsNaN","Number.IsOdd","Number.Ln","Number.Log","Number.Log10","Number.Mod","Number.Permutations","Number.Power","Number.Random","Number.RandomBetween","Number.Round","Number.RoundAwayFromZero","Number.RoundDown","Number.RoundTowardZero","Number.RoundUp","Number.Sign","Number.Sin","Number.Sinh","Number.Sqrt","Number.Tan","Number.Tanh","Number.ToText","OData.Feed","Odbc.DataSource","Odbc.Query","OleDb.DataSource","OleDb.Query","Oracle.Database","Percentage.From","PostgreSQL.Database","RData.FromBinary","Record.AddField","Record.Combine","Record.Field","Record.FieldCount","Record.FieldNames","Record.FieldOrDefault","Record.FieldValues","Record.FromList","Record.FromTable","Record.HasFields","Record.RemoveFields","Record.RenameFields","Record.ReorderFields","Record.SelectFields","Record.ToList","Record.ToTable","Record.TransformFields","Replacer.ReplaceText","Replacer.ReplaceValue","RowExpression.Column","RowExpression.From","Salesforce.Data","Salesforce.Reports","SapBusinessWarehouse.Cubes","SapHana.Database","SharePoint.Contents","SharePoint.Files","SharePoint.Tables","Single.From","Soda.Feed","Splitter.SplitByNothing","Splitter.SplitTextByAnyDelimiter","Splitter.SplitTextByDelimiter","Splitter.SplitTextByEachDelimiter","Splitter.SplitTextByLengths","Splitter.SplitTextByPositions","Splitter.SplitTextByRanges","Splitter.SplitTextByRepeatedLengths","Splitter.SplitTextByWhitespace","Sql.Database","Sql.Databases","SqlExpression.SchemaFrom","SqlExpression.ToExpression","Sybase.Database","Table.AddColumn","Table.AddIndexColumn","Table.AddJoinColumn","Table.AddKey","Table.AggregateTableColumn","Table.AlternateRows","Table.Buffer","Table.Column","Table.ColumnCount","Table.ColumnNames","Table.ColumnsOfType","Table.Combine","Table.CombineColumns","Table.Contains","Table.ContainsAll","Table.ContainsAny","Table.DemoteHeaders","Table.Distinct","Table.DuplicateColumn","Table.ExpandListColumn","Table.ExpandRecordColumn","Table.ExpandTableColumn","Table.FillDown","Table.FillUp","Table.FilterWithDataTable","Table.FindText","Table.First","Table.FirstN","Table.FirstValue","Table.FromColumns","Table.FromList","Table.FromPartitions","Table.FromRecords","Table.FromRows","Table.FromValue","Table.Group","Table.HasColumns","Table.InsertRows","Table.IsDistinct","Table.IsEmpty","Table.Join","Table.Keys","Table.Last","Table.LastN","Table.MatchesAllRows","Table.MatchesAnyRows","Table.Max","Table.MaxN","Table.Min","Table.MinN","Table.NestedJoin","Table.Partition","Table.PartitionValues","Table.Pivot","Table.PositionOf","Table.PositionOfAny","Table.PrefixColumns","Table.Profile","Table.PromoteHeaders","Table.Range","Table.RemoveColumns","Table.RemoveFirstN","Table.RemoveLastN","Table.RemoveMatchingRows","Table.RemoveRows","Table.RemoveRowsWithErrors","Table.RenameColumns","Table.ReorderColumns","Table.Repeat","Table.ReplaceErrorValues","Table.ReplaceKeys","Table.ReplaceMatchingRows","Table.ReplaceRelationshipIdentity","Table.ReplaceRows","Table.ReplaceValue","Table.ReverseRows","Table.RowCount","Table.Schema","Table.SelectColumns","Table.SelectRows","Table.SelectRowsWithErrors","Table.SingleRow","Table.Skip","Table.Sort","Table.SplitColumn","Table.ToColumns","Table.ToList","Table.ToRecords","Table.ToRows","Table.TransformColumnNames","Table.TransformColumnTypes","Table.TransformColumns","Table.TransformRows","Table.Transpose","Table.Unpivot","Table.UnpivotOtherColumns","Table.View","Table.ViewFunction","TableAction.DeleteRows","TableAction.InsertRows","TableAction.UpdateRows","Tables.GetRelationships","Teradata.Database","Text.AfterDelimiter","Text.At","Text.BeforeDelimiter","Text.BetweenDelimiters","Text.Clean","Text.Combine","Text.Contains","Text.End","Text.EndsWith","Text.Format","Text.From","Text.FromBinary","Text.Insert","Text.Length","Text.Lower","Text.Middle","Text.NewGuid","Text.PadEnd","Text.PadStart","Text.PositionOf","Text.PositionOfAny","Text.Proper","Text.Range","Text.Remove","Text.RemoveRange","Text.Repeat","Text.Replace","Text.ReplaceRange","Text.Select","Text.Split","Text.SplitAny","Text.Start","Text.StartsWith","Text.ToBinary","Text.ToList","Text.Trim","Text.TrimEnd","Text.TrimStart","Text.Upper","Time.EndOfHour","Time.From","Time.FromText","Time.Hour","Time.Minute","Time.Second","Time.StartOfHour","Time.ToRecord","Time.ToText","Type.AddTableKey","Type.ClosedRecord","Type.Facets","Type.ForFunction","Type.ForRecord","Type.FunctionParameters","Type.FunctionRequiredParameters","Type.FunctionReturn","Type.Is","Type.IsNullable","Type.IsOpenRecord","Type.ListItem","Type.NonNullable","Type.OpenRecord","Type.RecordFields","Type.ReplaceFacets","Type.ReplaceTableKeys","Type.TableColumn","Type.TableKeys","Type.TableRow","Type.TableSchema","Type.Union","Uri.BuildQueryString","Uri.Combine","Uri.EscapeDataString","Uri.Parts","Value.Add","Value.As","Value.Compare","Value.Divide","Value.Equals","Value.Firewall","Value.FromText","Value.Is","Value.Metadata","Value.Multiply","Value.NativeQuery","Value.NullableEquals","Value.RemoveMetadata","Value.ReplaceMetadata","Value.ReplaceType","Value.Subtract","Value.Type","ValueAction.NativeStatement","ValueAction.Replace","Variable.Value","Web.Contents","Web.Page","WebAction.Request","Xml.Document","Xml.Tables"],builtinConstants:["BinaryEncoding.Base64","BinaryEncoding.Hex","BinaryOccurrence.Optional","BinaryOccurrence.Repeating","BinaryOccurrence.Required","ByteOrder.BigEndian","ByteOrder.LittleEndian","Compression.Deflate","Compression.GZip","CsvStyle.QuoteAfterDelimiter","CsvStyle.QuoteAlways","Culture.Current","Day.Friday","Day.Monday","Day.Saturday","Day.Sunday","Day.Thursday","Day.Tuesday","Day.Wednesday","ExtraValues.Error","ExtraValues.Ignore","ExtraValues.List","GroupKind.Global","GroupKind.Local","JoinAlgorithm.Dynamic","JoinAlgorithm.LeftHash","JoinAlgorithm.LeftIndex","JoinAlgorithm.PairwiseHash","JoinAlgorithm.RightHash","JoinAlgorithm.RightIndex","JoinAlgorithm.SortMerge","JoinKind.FullOuter","JoinKind.Inner","JoinKind.LeftAnti","JoinKind.LeftOuter","JoinKind.RightAnti","JoinKind.RightOuter","JoinSide.Left","JoinSide.Right","MissingField.Error","MissingField.Ignore","MissingField.UseNull","Number.E","Number.Epsilon","Number.NaN","Number.NegativeInfinity","Number.PI","Number.PositiveInfinity","Occurrence.All","Occurrence.First","Occurrence.Last","Occurrence.Optional","Occurrence.Repeating","Occurrence.Required","Order.Ascending","Order.Descending","Precision.Decimal","Precision.Double","QuoteStyle.Csv","QuoteStyle.None","RelativePosition.FromEnd","RelativePosition.FromStart","RoundingMode.AwayFromZero","RoundingMode.Down","RoundingMode.ToEven","RoundingMode.TowardZero","RoundingMode.Up","SapHanaDistribution.All","SapHanaDistribution.Connection","SapHanaDistribution.Off","SapHanaDistribution.Statement","SapHanaRangeOperator.Equals","SapHanaRangeOperator.GreaterThan","SapHanaRangeOperator.GreaterThanOrEquals","SapHanaRangeOperator.LessThan","SapHanaRangeOperator.LessThanOrEquals","SapHanaRangeOperator.NotEquals","TextEncoding.Ascii","TextEncoding.BigEndianUnicode","TextEncoding.Unicode","TextEncoding.Utf16","TextEncoding.Utf8","TextEncoding.Windows","TraceLevel.Critical","TraceLevel.Error","TraceLevel.Information","TraceLevel.Verbose","TraceLevel.Warning","WebMethod.Delete","WebMethod.Get","WebMethod.Head","WebMethod.Patch","WebMethod.Post","WebMethod.Put"],builtinTypes:["Action.Type","Any.Type","Binary.Type","BinaryEncoding.Type","BinaryOccurrence.Type","Byte.Type","ByteOrder.Type","Character.Type","Compression.Type","CsvStyle.Type","Currency.Type","Date.Type","DateTime.Type","DateTimeZone.Type","Day.Type","Decimal.Type","Double.Type","Duration.Type","ExtraValues.Type","Function.Type","GroupKind.Type","Guid.Type","Int16.Type","Int32.Type","Int64.Type","Int8.Type","JoinAlgorithm.Type","JoinKind.Type","JoinSide.Type","List.Type","Logical.Type","MissingField.Type","None.Type","Null.Type","Number.Type","Occurrence.Type","Order.Type","Password.Type","Percentage.Type","Precision.Type","QuoteStyle.Type","Record.Type","RelativePosition.Type","RoundingMode.Type","SapHanaDistribution.Type","SapHanaRangeOperator.Type","Single.Type","Table.Type","Text.Type","TextEncoding.Type","Time.Type","TraceLevel.Type","Type.Type","Uri.Type","WebMethod.Type"],tokenizer:{root:[[/#"[\w \.]+"/,"identifier.quote"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/\d+([eE][\-+]?\d+)?/,"number"],[/(#?[a-z]+)\b/,{cases:{"@typeKeywords":"type","@keywords":"keyword","@constants":"constant","@constructors":"constructor","@operatorKeywords":"operators","@default":"identifier"}}],[/\b([A-Z][a-zA-Z0-9]+\.Type)\b/,{cases:{"@builtinTypes":"type","@default":"identifier"}}],[/\b([A-Z][a-zA-Z0-9]+\.[A-Z][a-zA-Z0-9]+)\b/,{cases:{"@builtinFunctions":"keyword.function","@builtinConstants":"constant","@default":"identifier"}}],[/\b([a-zA-Z_][\w\.]*)\b/,"identifier"],{include:"@whitespace"},{include:"@comments"},{include:"@strings"},[/[{}()\[\]]/,"@brackets"],[/([=\+<>\-\*&@\?\/!])|([<>]=)|(<>)|(=>)|(\.\.\.)|(\.\.)/,"operators"],[/[,;]/,"delimiter"]],whitespace:[[/\s+/,"white"]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],strings:[['"',"string","@string"]],string:[['""',"string.escape"],['"',"string","@pop"],[".","string"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/77.1e20cc10.js b/docs/src/.vuepress/dist/assets/js/78.737ec13d.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/77.1e20cc10.js rename to docs/src/.vuepress/dist/assets/js/78.737ec13d.js index 758a081e..dc669898 100644 --- a/docs/src/.vuepress/dist/assets/js/77.1e20cc10.js +++ b/docs/src/.vuepress/dist/assets/js/78.737ec13d.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[77],{479:function(e,n,s){"use strict";s.r(n),s.d(n,"conf",(function(){return t})),s.d(n,"language",(function(){return o}));var t={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"#",blockComment:["<#","#>"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},o={defaultToken:"",ignoreCase:!0,tokenPostfix:".ps1",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.square",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"}],keywords:["begin","break","catch","class","continue","data","define","do","dynamicparam","else","elseif","end","exit","filter","finally","for","foreach","from","function","if","in","param","process","return","switch","throw","trap","try","until","using","var","while","workflow","parallel","sequence","inlinescript","configuration"],helpKeywords:/SYNOPSIS|DESCRIPTION|PARAMETER|EXAMPLE|INPUTS|OUTPUTS|NOTES|LINK|COMPONENT|ROLE|FUNCTIONALITY|FORWARDHELPTARGETNAME|FORWARDHELPCATEGORY|REMOTEHELPRUNSPACE|EXTERNALHELP/,symbols:/[=><!~?&%|+\-*\/\^;\.,]+/,escapes:/`(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/[a-zA-Z_][\w-]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":""}}],[/[ \t\r\n]+/,""],[/^:\w*/,"metatag"],[/\$(\{((global|local|private|script|using):)?[\w]+\}|((global|local|private|script|using):)?[\w]+)/,"variable"],[/<#/,"comment","@comment"],[/#.*$/,"comment"],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+?/,"number"],[/[;,.]/,"delimiter"],[/\@"/,"string",'@herestring."'],[/\@'/,"string","@herestring.'"],[/"/,{cases:{"@eos":"string","@default":{token:"string",next:'@string."'}}}],[/'/,{cases:{"@eos":"string","@default":{token:"string",next:"@string.'"}}}]],string:[[/[^"'\$`]+/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/@escapes/,{cases:{"@eos":{token:"string.escape",next:"@popall"},"@default":"string.escape"}}],[/`./,{cases:{"@eos":{token:"string.escape.invalid",next:"@popall"},"@default":"string.escape.invalid"}}],[/\$[\w]+$/,{cases:{'$S2=="':{token:"variable",next:"@popall"},"@default":{token:"string",next:"@popall"}}}],[/\$[\w]+/,{cases:{'$S2=="':"variable","@default":"string"}}],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}}}]],herestring:[[/^\s*(["'])@/,{cases:{"$1==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/[^\$`]+/,"string"],[/@escapes/,"string.escape"],[/`./,"string.escape.invalid"],[/\$[\w]+/,{cases:{'$S2=="':"variable","@default":"string"}}]],comment:[[/[^#\.]+/,"comment"],[/#>/,"comment","@pop"],[/(\.)(@helpKeywords)(?!\w)/,{token:"comment.keyword.$2"}],[/[\.#]/,"comment"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[78],{479:function(e,n,s){"use strict";s.r(n),s.d(n,"conf",(function(){return t})),s.d(n,"language",(function(){return o}));var t={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"#",blockComment:["<#","#>"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},o={defaultToken:"",ignoreCase:!0,tokenPostfix:".ps1",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.square",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"}],keywords:["begin","break","catch","class","continue","data","define","do","dynamicparam","else","elseif","end","exit","filter","finally","for","foreach","from","function","if","in","param","process","return","switch","throw","trap","try","until","using","var","while","workflow","parallel","sequence","inlinescript","configuration"],helpKeywords:/SYNOPSIS|DESCRIPTION|PARAMETER|EXAMPLE|INPUTS|OUTPUTS|NOTES|LINK|COMPONENT|ROLE|FUNCTIONALITY|FORWARDHELPTARGETNAME|FORWARDHELPCATEGORY|REMOTEHELPRUNSPACE|EXTERNALHELP/,symbols:/[=><!~?&%|+\-*\/\^;\.,]+/,escapes:/`(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/[a-zA-Z_][\w-]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":""}}],[/[ \t\r\n]+/,""],[/^:\w*/,"metatag"],[/\$(\{((global|local|private|script|using):)?[\w]+\}|((global|local|private|script|using):)?[\w]+)/,"variable"],[/<#/,"comment","@comment"],[/#.*$/,"comment"],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+?/,"number"],[/[;,.]/,"delimiter"],[/\@"/,"string",'@herestring."'],[/\@'/,"string","@herestring.'"],[/"/,{cases:{"@eos":"string","@default":{token:"string",next:'@string."'}}}],[/'/,{cases:{"@eos":"string","@default":{token:"string",next:"@string.'"}}}]],string:[[/[^"'\$`]+/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/@escapes/,{cases:{"@eos":{token:"string.escape",next:"@popall"},"@default":"string.escape"}}],[/`./,{cases:{"@eos":{token:"string.escape.invalid",next:"@popall"},"@default":"string.escape.invalid"}}],[/\$[\w]+$/,{cases:{'$S2=="':{token:"variable",next:"@popall"},"@default":{token:"string",next:"@popall"}}}],[/\$[\w]+/,{cases:{'$S2=="':"variable","@default":"string"}}],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}}}]],herestring:[[/^\s*(["'])@/,{cases:{"$1==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/[^\$`]+/,"string"],[/@escapes/,"string.escape"],[/`./,"string.escape.invalid"],[/\$[\w]+/,{cases:{'$S2=="':"variable","@default":"string"}}]],comment:[[/[^#\.]+/,"comment"],[/#>/,"comment","@pop"],[/(\.)(@helpKeywords)(?!\w)/,{token:"comment.keyword.$2"}],[/[\.#]/,"comment"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/78.b3375bbd.js b/docs/src/.vuepress/dist/assets/js/79.388a8446.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/78.b3375bbd.js rename to docs/src/.vuepress/dist/assets/js/79.388a8446.js index 42b19181..f132257c 100644 --- a/docs/src/.vuepress/dist/assets/js/78.b3375bbd.js +++ b/docs/src/.vuepress/dist/assets/js/79.388a8446.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[78],{480:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return o})),n.d(t,"language",(function(){return a}));var o={comments:{lineComment:"//"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]}],folding:{offSide:!0}},a={defaultToken:"",tokenPostfix:".pug",ignoreCase:!0,brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"}],keywords:["append","block","case","default","doctype","each","else","extends","for","if","in","include","mixin","typeof","unless","var","when"],tags:["a","abbr","acronym","address","area","article","aside","audio","b","base","basefont","bdi","bdo","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","command","datalist","dd","del","details","dfn","div","dl","dt","em","embed","fieldset","figcaption","figure","font","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","keygen","kbd","label","li","link","map","mark","menu","meta","meter","nav","noframes","noscript","object","ol","optgroup","option","output","p","param","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strike","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","tracks","tt","u","ul","video","wbr"],symbols:/[\+\-\*\%\&\|\!\=\/\.\,\:]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/^(\s*)([a-zA-Z_-][\w-]*)/,{cases:{"$2@tags":{cases:{"@eos":["","tag"],"@default":["",{token:"tag",next:"@tag.$1"}]}},"$2@keywords":["",{token:"keyword.$2"}],"@default":["",""]}}],[/^(\s*)(#[a-zA-Z_-][\w-]*)/,{cases:{"@eos":["","tag.id"],"@default":["",{token:"tag.id",next:"@tag.$1"}]}}],[/^(\s*)(\.[a-zA-Z_-][\w-]*)/,{cases:{"@eos":["","tag.class"],"@default":["",{token:"tag.class",next:"@tag.$1"}]}}],[/^(\s*)(\|.*)$/,""],{include:"@whitespace"},[/[a-zA-Z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":""}}],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d+\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\d+/,"number"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],tag:[[/(\.)(\s*$)/,[{token:"delimiter",next:"@blockText.$S2."},""]],[/\s+/,{token:"",next:"@simpleText"}],[/#[a-zA-Z_-][\w-]*/,{cases:{"@eos":{token:"tag.id",next:"@pop"},"@default":"tag.id"}}],[/\.[a-zA-Z_-][\w-]*/,{cases:{"@eos":{token:"tag.class",next:"@pop"},"@default":"tag.class"}}],[/\(/,{token:"delimiter.parenthesis",next:"@attributeList"}]],simpleText:[[/[^#]+$/,{token:"",next:"@popall"}],[/[^#]+/,{token:""}],[/(#{)([^}]*)(})/,{cases:{"@eos":["interpolation.delimiter","interpolation",{token:"interpolation.delimiter",next:"@popall"}],"@default":["interpolation.delimiter","interpolation","interpolation.delimiter"]}}],[/#$/,{token:"",next:"@popall"}],[/#/,""]],attributeList:[[/\s+/,""],[/(\w+)(\s*=\s*)("|')/,["attribute.name","delimiter",{token:"attribute.value",next:"@value.$3"}]],[/\w+/,"attribute.name"],[/,/,{cases:{"@eos":{token:"attribute.delimiter",next:"@popall"},"@default":"attribute.delimiter"}}],[/\)$/,{token:"delimiter.parenthesis",next:"@popall"}],[/\)/,{token:"delimiter.parenthesis",next:"@pop"}]],whitespace:[[/^(\s*)(\/\/.*)$/,{token:"comment",next:"@blockText.$1.comment"}],[/[ \t\r\n]+/,""],[/<!--/,{token:"comment",next:"@comment"}]],blockText:[[/^\s+.*$/,{cases:{"($S2\\s+.*$)":{token:"$S3"},"@default":{token:"@rematch",next:"@popall"}}}],[/./,{token:"@rematch",next:"@popall"}]],comment:[[/[^<\-]+/,"comment.content"],[/-->/,{token:"comment",next:"@pop"}],[/<!--/,"comment.content.invalid"],[/[<\-]/,"comment.content"]],string:[[/[^\\"'#]+/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/@escapes/,{cases:{"@eos":{token:"string.escape",next:"@popall"},"@default":"string.escape"}}],[/\\./,{cases:{"@eos":{token:"string.escape.invalid",next:"@popall"},"@default":"string.escape.invalid"}}],[/(#{)([^}]*)(})/,["interpolation.delimiter","interpolation","interpolation.delimiter"]],[/#/,"string"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":{token:"string"}}}]],value:[[/[^\\"']+/,{cases:{"@eos":{token:"attribute.value",next:"@popall"},"@default":"attribute.value"}}],[/\\./,{cases:{"@eos":{token:"attribute.value",next:"@popall"},"@default":"attribute.value"}}],[/["']/,{cases:{"$#==$S2":{token:"attribute.value",next:"@pop"},"@default":{token:"attribute.value"}}}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[79],{480:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return o})),n.d(t,"language",(function(){return a}));var o={comments:{lineComment:"//"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]}],folding:{offSide:!0}},a={defaultToken:"",tokenPostfix:".pug",ignoreCase:!0,brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"}],keywords:["append","block","case","default","doctype","each","else","extends","for","if","in","include","mixin","typeof","unless","var","when"],tags:["a","abbr","acronym","address","area","article","aside","audio","b","base","basefont","bdi","bdo","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","command","datalist","dd","del","details","dfn","div","dl","dt","em","embed","fieldset","figcaption","figure","font","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","keygen","kbd","label","li","link","map","mark","menu","meta","meter","nav","noframes","noscript","object","ol","optgroup","option","output","p","param","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strike","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","tracks","tt","u","ul","video","wbr"],symbols:/[\+\-\*\%\&\|\!\=\/\.\,\:]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/^(\s*)([a-zA-Z_-][\w-]*)/,{cases:{"$2@tags":{cases:{"@eos":["","tag"],"@default":["",{token:"tag",next:"@tag.$1"}]}},"$2@keywords":["",{token:"keyword.$2"}],"@default":["",""]}}],[/^(\s*)(#[a-zA-Z_-][\w-]*)/,{cases:{"@eos":["","tag.id"],"@default":["",{token:"tag.id",next:"@tag.$1"}]}}],[/^(\s*)(\.[a-zA-Z_-][\w-]*)/,{cases:{"@eos":["","tag.class"],"@default":["",{token:"tag.class",next:"@tag.$1"}]}}],[/^(\s*)(\|.*)$/,""],{include:"@whitespace"},[/[a-zA-Z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":""}}],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d+\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\d+/,"number"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],tag:[[/(\.)(\s*$)/,[{token:"delimiter",next:"@blockText.$S2."},""]],[/\s+/,{token:"",next:"@simpleText"}],[/#[a-zA-Z_-][\w-]*/,{cases:{"@eos":{token:"tag.id",next:"@pop"},"@default":"tag.id"}}],[/\.[a-zA-Z_-][\w-]*/,{cases:{"@eos":{token:"tag.class",next:"@pop"},"@default":"tag.class"}}],[/\(/,{token:"delimiter.parenthesis",next:"@attributeList"}]],simpleText:[[/[^#]+$/,{token:"",next:"@popall"}],[/[^#]+/,{token:""}],[/(#{)([^}]*)(})/,{cases:{"@eos":["interpolation.delimiter","interpolation",{token:"interpolation.delimiter",next:"@popall"}],"@default":["interpolation.delimiter","interpolation","interpolation.delimiter"]}}],[/#$/,{token:"",next:"@popall"}],[/#/,""]],attributeList:[[/\s+/,""],[/(\w+)(\s*=\s*)("|')/,["attribute.name","delimiter",{token:"attribute.value",next:"@value.$3"}]],[/\w+/,"attribute.name"],[/,/,{cases:{"@eos":{token:"attribute.delimiter",next:"@popall"},"@default":"attribute.delimiter"}}],[/\)$/,{token:"delimiter.parenthesis",next:"@popall"}],[/\)/,{token:"delimiter.parenthesis",next:"@pop"}]],whitespace:[[/^(\s*)(\/\/.*)$/,{token:"comment",next:"@blockText.$1.comment"}],[/[ \t\r\n]+/,""],[/<!--/,{token:"comment",next:"@comment"}]],blockText:[[/^\s+.*$/,{cases:{"($S2\\s+.*$)":{token:"$S3"},"@default":{token:"@rematch",next:"@popall"}}}],[/./,{token:"@rematch",next:"@popall"}]],comment:[[/[^<\-]+/,"comment.content"],[/-->/,{token:"comment",next:"@pop"}],[/<!--/,"comment.content.invalid"],[/[<\-]/,"comment.content"]],string:[[/[^\\"'#]+/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/@escapes/,{cases:{"@eos":{token:"string.escape",next:"@popall"},"@default":"string.escape"}}],[/\\./,{cases:{"@eos":{token:"string.escape.invalid",next:"@popall"},"@default":"string.escape.invalid"}}],[/(#{)([^}]*)(})/,["interpolation.delimiter","interpolation","interpolation.delimiter"]],[/#/,"string"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":{token:"string"}}}]],value:[[/[^\\"']+/,{cases:{"@eos":{token:"attribute.value",next:"@popall"},"@default":"attribute.value"}}],[/\\./,{cases:{"@eos":{token:"attribute.value",next:"@popall"},"@default":"attribute.value"}}],[/["']/,{cases:{"$#==$S2":{token:"attribute.value",next:"@pop"},"@default":{token:"attribute.value"}}}]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/79.e30ee574.js b/docs/src/.vuepress/dist/assets/js/80.1dec84f2.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/79.e30ee574.js rename to docs/src/.vuepress/dist/assets/js/80.1dec84f2.js index b29852e5..de555ae4 100644 --- a/docs/src/.vuepress/dist/assets/js/79.e30ee574.js +++ b/docs/src/.vuepress/dist/assets/js/80.1dec84f2.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[79],{481:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return r})),t.d(n,"language",(function(){return o}));var s="undefined"==typeof monaco?self.monaco:monaco,r={comments:{lineComment:"#",blockComment:["'''","'''"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:new RegExp("^\\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\\s*$"),action:{indentAction:s.languages.IndentAction.Indent}}],folding:{offSide:!0,markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},o={defaultToken:"",tokenPostfix:".python",keywords:["and","as","assert","break","class","continue","def","del","elif","else","except","exec","finally","for","from","global","if","import","in","is","lambda","None","not","or","pass","print","raise","return","self","try","while","with","yield","int","float","long","complex","hex","abs","all","any","apply","basestring","bin","bool","buffer","bytearray","callable","chr","classmethod","cmp","coerce","compile","complex","delattr","dict","dir","divmod","enumerate","eval","execfile","file","filter","format","frozenset","getattr","globals","hasattr","hash","help","id","input","intern","isinstance","issubclass","iter","len","locals","list","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","reversed","range","raw_input","reduce","reload","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","unichr","unicode","vars","xrange","zip","True","False","__dict__","__methods__","__members__","__class__","__bases__","__name__","__mro__","__subclasses__","__init__","__import__"],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"}],tokenizer:{root:[{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},[/[,:;]/,"delimiter"],[/[{}\[\]()]/,"@brackets"],[/@[a-zA-Z]\w*/,"tag"],[/[a-zA-Z]\w*/,{cases:{"@keywords":"keyword","@default":"identifier"}}]],whitespace:[[/\s+/,"white"],[/(^#.*$)/,"comment"],[/'''/,"string","@endDocString"],[/"""/,"string","@endDblDocString"]],endDocString:[[/[^']+/,"string"],[/\\'/,"string"],[/'''/,"string","@popall"],[/'/,"string"]],endDblDocString:[[/[^"]+/,"string"],[/\\"/,"string"],[/"""/,"string","@popall"],[/"/,"string"]],numbers:[[/-?0x([abcdef]|[ABCDEF]|\d)+[lL]?/,"number.hex"],[/-?(\d*\.)?\d+([eE][+\-]?\d+)?[jJ]?[lL]?/,"number"]],strings:[[/'$/,"string.escape","@popall"],[/'/,"string.escape","@stringBody"],[/"$/,"string.escape","@popall"],[/"/,"string.escape","@dblStringBody"]],stringBody:[[/[^\\']+$/,"string","@popall"],[/[^\\']+/,"string"],[/\\./,"string"],[/'/,"string.escape","@popall"],[/\\$/,"string"]],dblStringBody:[[/[^\\"]+$/,"string","@popall"],[/[^\\"]+/,"string"],[/\\./,"string"],[/"/,"string.escape","@popall"],[/\\$/,"string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[80],{481:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return r})),t.d(n,"language",(function(){return o}));var s="undefined"==typeof monaco?self.monaco:monaco,r={comments:{lineComment:"#",blockComment:["'''","'''"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:new RegExp("^\\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\\s*$"),action:{indentAction:s.languages.IndentAction.Indent}}],folding:{offSide:!0,markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},o={defaultToken:"",tokenPostfix:".python",keywords:["and","as","assert","break","class","continue","def","del","elif","else","except","exec","finally","for","from","global","if","import","in","is","lambda","None","not","or","pass","print","raise","return","self","try","while","with","yield","int","float","long","complex","hex","abs","all","any","apply","basestring","bin","bool","buffer","bytearray","callable","chr","classmethod","cmp","coerce","compile","complex","delattr","dict","dir","divmod","enumerate","eval","execfile","file","filter","format","frozenset","getattr","globals","hasattr","hash","help","id","input","intern","isinstance","issubclass","iter","len","locals","list","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","reversed","range","raw_input","reduce","reload","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","unichr","unicode","vars","xrange","zip","True","False","__dict__","__methods__","__members__","__class__","__bases__","__name__","__mro__","__subclasses__","__init__","__import__"],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"}],tokenizer:{root:[{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},[/[,:;]/,"delimiter"],[/[{}\[\]()]/,"@brackets"],[/@[a-zA-Z]\w*/,"tag"],[/[a-zA-Z]\w*/,{cases:{"@keywords":"keyword","@default":"identifier"}}]],whitespace:[[/\s+/,"white"],[/(^#.*$)/,"comment"],[/'''/,"string","@endDocString"],[/"""/,"string","@endDblDocString"]],endDocString:[[/[^']+/,"string"],[/\\'/,"string"],[/'''/,"string","@popall"],[/'/,"string"]],endDblDocString:[[/[^"]+/,"string"],[/\\"/,"string"],[/"""/,"string","@popall"],[/"/,"string"]],numbers:[[/-?0x([abcdef]|[ABCDEF]|\d)+[lL]?/,"number.hex"],[/-?(\d*\.)?\d+([eE][+\-]?\d+)?[jJ]?[lL]?/,"number"]],strings:[[/'$/,"string.escape","@popall"],[/'/,"string.escape","@stringBody"],[/"$/,"string.escape","@popall"],[/"/,"string.escape","@dblStringBody"]],stringBody:[[/[^\\']+$/,"string","@popall"],[/[^\\']+/,"string"],[/\\./,"string"],[/'/,"string.escape","@popall"],[/\\$/,"string"]],dblStringBody:[[/[^\\"]+$/,"string","@popall"],[/[^\\"]+/,"string"],[/\\./,"string"],[/"/,"string.escape","@popall"],[/\\$/,"string"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/80.c9b2bc6f.js b/docs/src/.vuepress/dist/assets/js/81.b62a70e6.js similarity index 97% rename from docs/src/.vuepress/dist/assets/js/80.c9b2bc6f.js rename to docs/src/.vuepress/dist/assets/js/81.b62a70e6.js index aaf4d854..e27fa754 100644 --- a/docs/src/.vuepress/dist/assets/js/80.c9b2bc6f.js +++ b/docs/src/.vuepress/dist/assets/js/81.b62a70e6.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[80],{482:function(e,o,r){"use strict";r.r(o),r.d(o,"conf",(function(){return t})),r.d(o,"language",(function(){return n}));var t={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}]},n={defaultToken:"",tokenPostfix:".r",roxygen:["@param","@return","@name","@rdname","@examples","@include","@docType","@S3method","@TODO","@aliases","@alias","@assignee","@author","@callGraphDepth","@callGraph","@callGraphPrimitives","@concept","@exportClass","@exportMethod","@exportPattern","@export","@formals","@format","@importClassesFrom","@importFrom","@importMethodsFrom","@import","@keywords","@method","@nord","@note","@references","@seealso","@setClass","@slot","@source","@title","@usage"],constants:["NULL","FALSE","TRUE","NA","Inf","NaN ","NA_integer_","NA_real_","NA_complex_","NA_character_ ","T","F","LETTERS","letters","month.abb","month.name","pi","R.version.string"],keywords:["break","next","return","if","else","for","in","repeat","while","array","category","character","complex","double","function","integer","list","logical","matrix","numeric","vector","data.frame","factor","library","require","attach","detach","source"],special:["\\n","\\r","\\t","\\b","\\a","\\f","\\v","\\'",'\\"',"\\\\"],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"}],tokenizer:{root:[{include:"@numbers"},{include:"@strings"},[/[{}\[\]()]/,"@brackets"],{include:"@operators"},[/#'/,"comment.doc","@roxygen"],[/(^#.*$)/,"comment"],[/\s+/,"white"],[/[,:;]/,"delimiter"],[/@[a-zA-Z]\w*/,"tag"],[/[a-zA-Z]\w*/,{cases:{"@keywords":"keyword","@constants":"constant","@default":"identifier"}}]],roxygen:[[/@\w+/,{cases:{"@roxygen":"tag","@eos":{token:"comment.doc",next:"@pop"},"@default":"comment.doc"}}],[/\s+/,{cases:{"@eos":{token:"comment.doc",next:"@pop"},"@default":"comment.doc"}}],[/.*/,{token:"comment.doc",next:"@pop"}]],numbers:[[/0[xX][0-9a-fA-F]+/,"number.hex"],[/-?(\d*\.)?\d+([eE][+\-]?\d+)?/,"number"]],operators:[[/<{1,2}-/,"operator"],[/->{1,2}/,"operator"],[/%[^%\s]+%/,"operator"],[/\*\*/,"operator"],[/%%/,"operator"],[/&&/,"operator"],[/\|\|/,"operator"],[/<</,"operator"],[/>>/,"operator"],[/[-+=&|!<>^~*/:$]/,"operator"]],strings:[[/'/,"string.escape","@stringBody"],[/"/,"string.escape","@dblStringBody"]],stringBody:[[/\\./,{cases:{"@special":"string","@default":"error-token"}}],[/'/,"string.escape","@popall"],[/./,"string"]],dblStringBody:[[/\\./,{cases:{"@special":"string","@default":"error-token"}}],[/"/,"string.escape","@popall"],[/./,"string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[81],{482:function(e,o,r){"use strict";r.r(o),r.d(o,"conf",(function(){return t})),r.d(o,"language",(function(){return n}));var t={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}]},n={defaultToken:"",tokenPostfix:".r",roxygen:["@param","@return","@name","@rdname","@examples","@include","@docType","@S3method","@TODO","@aliases","@alias","@assignee","@author","@callGraphDepth","@callGraph","@callGraphPrimitives","@concept","@exportClass","@exportMethod","@exportPattern","@export","@formals","@format","@importClassesFrom","@importFrom","@importMethodsFrom","@import","@keywords","@method","@nord","@note","@references","@seealso","@setClass","@slot","@source","@title","@usage"],constants:["NULL","FALSE","TRUE","NA","Inf","NaN ","NA_integer_","NA_real_","NA_complex_","NA_character_ ","T","F","LETTERS","letters","month.abb","month.name","pi","R.version.string"],keywords:["break","next","return","if","else","for","in","repeat","while","array","category","character","complex","double","function","integer","list","logical","matrix","numeric","vector","data.frame","factor","library","require","attach","detach","source"],special:["\\n","\\r","\\t","\\b","\\a","\\f","\\v","\\'",'\\"',"\\\\"],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"}],tokenizer:{root:[{include:"@numbers"},{include:"@strings"},[/[{}\[\]()]/,"@brackets"],{include:"@operators"},[/#'/,"comment.doc","@roxygen"],[/(^#.*$)/,"comment"],[/\s+/,"white"],[/[,:;]/,"delimiter"],[/@[a-zA-Z]\w*/,"tag"],[/[a-zA-Z]\w*/,{cases:{"@keywords":"keyword","@constants":"constant","@default":"identifier"}}]],roxygen:[[/@\w+/,{cases:{"@roxygen":"tag","@eos":{token:"comment.doc",next:"@pop"},"@default":"comment.doc"}}],[/\s+/,{cases:{"@eos":{token:"comment.doc",next:"@pop"},"@default":"comment.doc"}}],[/.*/,{token:"comment.doc",next:"@pop"}]],numbers:[[/0[xX][0-9a-fA-F]+/,"number.hex"],[/-?(\d*\.)?\d+([eE][+\-]?\d+)?/,"number"]],operators:[[/<{1,2}-/,"operator"],[/->{1,2}/,"operator"],[/%[^%\s]+%/,"operator"],[/\*\*/,"operator"],[/%%/,"operator"],[/&&/,"operator"],[/\|\|/,"operator"],[/<</,"operator"],[/>>/,"operator"],[/[-+=&|!<>^~*/:$]/,"operator"]],strings:[[/'/,"string.escape","@stringBody"],[/"/,"string.escape","@dblStringBody"]],stringBody:[[/\\./,{cases:{"@special":"string","@default":"error-token"}}],[/'/,"string.escape","@popall"],[/./,"string"]],dblStringBody:[[/\\./,{cases:{"@special":"string","@default":"error-token"}}],[/"/,"string.escape","@popall"],[/./,"string"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/81.41eac1be.js b/docs/src/.vuepress/dist/assets/js/82.ba6bfbcb.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/81.41eac1be.js rename to docs/src/.vuepress/dist/assets/js/82.ba6bfbcb.js index 1b95598b..65a153ca 100644 --- a/docs/src/.vuepress/dist/assets/js/81.41eac1be.js +++ b/docs/src/.vuepress/dist/assets/js/82.ba6bfbcb.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[81],{483:function(e,t,o){"use strict";o.r(t),o.d(t,"conf",(function(){return i})),o.d(t,"language",(function(){return m}));var r="undefined"==typeof monaco?self.monaco:monaco,n=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],i={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["\x3c!--","--\x3e"]},brackets:[["\x3c!--","--\x3e"],["<",">"],["{","}"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],onEnterRules:[{beforeText:new RegExp("<(?!(?:"+n.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),afterText:/^<\/(\w[\w\d]*)\s*>$/i,action:{indentAction:r.languages.IndentAction.IndentOutdent}},{beforeText:new RegExp("<(?!(?:"+n.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),action:{indentAction:r.languages.IndentAction.Indent}}]},m={defaultToken:"",tokenPostfix:"",tokenizer:{root:[[/@@/],[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.root"}],[/<!DOCTYPE/,"metatag.html","@doctype"],[/<!--/,"comment.html","@comment"],[/(<)(\w+)(\/>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)([:\w]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)(\w+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/</,"delimiter.html"],[/[ \t\r\n]+/],[/[^<@]+/]],doctype:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.comment"}],[/[^>]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.comment"}],[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.otherTag"}],[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.script"}],[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.scriptAfterType"}],[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.scriptAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.scriptWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInEmbeddedState.scriptEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],style:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.style"}],[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.styleAfterType"}],[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.styleAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.styleWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInEmbeddedState.styleEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],razorInSimpleState:[[/@\*/,"comment.cs","@razorBlockCommentTopLevel"],[/@[{(]/,"metatag.cs","@razorRootTopLevel"],[/(@)(\s*[\w]+)/,["metatag.cs",{token:"identifier.cs",switchTo:"@$S2.$S3"}]],[/[})]/,{token:"metatag.cs",switchTo:"@$S2.$S3"}],[/\*@/,{token:"comment.cs",switchTo:"@$S2.$S3"}]],razorInEmbeddedState:[[/@\*/,"comment.cs","@razorBlockCommentTopLevel"],[/@[{(]/,"metatag.cs","@razorRootTopLevel"],[/(@)(\s*[\w]+)/,["metatag.cs",{token:"identifier.cs",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}]],[/[})]/,{token:"metatag.cs",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}],[/\*@/,{token:"comment.cs",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}]],razorBlockCommentTopLevel:[[/\*@/,"@rematch","@pop"],[/[^*]+/,"comment.cs"],[/./,"comment.cs"]],razorBlockComment:[[/\*@/,"comment.cs","@pop"],[/[^*]+/,"comment.cs"],[/./,"comment.cs"]],razorRootTopLevel:[[/\{/,"delimiter.bracket.cs","@razorRoot"],[/\(/,"delimiter.parenthesis.cs","@razorRoot"],[/[})]/,"@rematch","@pop"],{include:"razorCommon"}],razorRoot:[[/\{/,"delimiter.bracket.cs","@razorRoot"],[/\(/,"delimiter.parenthesis.cs","@razorRoot"],[/\}/,"delimiter.bracket.cs","@pop"],[/\)/,"delimiter.parenthesis.cs","@pop"],{include:"razorCommon"}],razorCommon:[[/[a-zA-Z_]\w*/,{cases:{"@razorKeywords":{token:"keyword.cs"},"@default":"identifier.cs"}}],[/[\[\]]/,"delimiter.array.cs"],[/[ \t\r\n]+/],[/\/\/.*$/,"comment.cs"],[/@\*/,"comment.cs","@razorBlockComment"],[/"([^"]*)"/,"string.cs"],[/'([^']*)'/,"string.cs"],[/(<)(\w+)(\/>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(\w+)(>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<\/)(\w+)(>)/,["delimiter.html","tag.html","delimiter.html"]],[/[\+\-\*\%\&\|\^\~\!\=\<\>\/\?\;\:\.\,]/,"delimiter.cs"],[/\d*\d+[eE]([\-+]?\d+)?/,"number.float.cs"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float.cs"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F]/,"number.hex.cs"],[/0[0-7']*[0-7]/,"number.octal.cs"],[/0[bB][0-1']*[0-1]/,"number.binary.cs"],[/\d[\d']*/,"number.cs"],[/\d/,"number.cs"]]},razorKeywords:["abstract","as","async","await","base","bool","break","by","byte","case","catch","char","checked","class","const","continue","decimal","default","delegate","do","double","descending","explicit","event","extern","else","enum","false","finally","fixed","float","for","foreach","from","goto","group","if","implicit","in","int","interface","internal","into","is","lock","long","nameof","new","null","namespace","object","operator","out","override","orderby","params","private","protected","public","readonly","ref","return","switch","struct","sbyte","sealed","short","sizeof","stackalloc","static","string","select","this","throw","true","try","typeof","uint","ulong","unchecked","unsafe","ushort","using","var","virtual","volatile","void","when","while","where","yield","model","inject"],escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[82],{483:function(e,t,o){"use strict";o.r(t),o.d(t,"conf",(function(){return i})),o.d(t,"language",(function(){return m}));var r="undefined"==typeof monaco?self.monaco:monaco,n=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],i={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["\x3c!--","--\x3e"]},brackets:[["\x3c!--","--\x3e"],["<",">"],["{","}"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],onEnterRules:[{beforeText:new RegExp("<(?!(?:"+n.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),afterText:/^<\/(\w[\w\d]*)\s*>$/i,action:{indentAction:r.languages.IndentAction.IndentOutdent}},{beforeText:new RegExp("<(?!(?:"+n.join("|")+"))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$","i"),action:{indentAction:r.languages.IndentAction.Indent}}]},m={defaultToken:"",tokenPostfix:"",tokenizer:{root:[[/@@/],[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.root"}],[/<!DOCTYPE/,"metatag.html","@doctype"],[/<!--/,"comment.html","@comment"],[/(<)(\w+)(\/>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)([:\w]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)(\w+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/</,"delimiter.html"],[/[ \t\r\n]+/],[/[^<@]+/]],doctype:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.comment"}],[/[^>]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.comment"}],[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.otherTag"}],[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.script"}],[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.scriptAfterType"}],[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.scriptAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.scriptWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInEmbeddedState.scriptEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],style:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.style"}],[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.styleAfterType"}],[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.styleAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.styleWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInEmbeddedState.styleEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],razorInSimpleState:[[/@\*/,"comment.cs","@razorBlockCommentTopLevel"],[/@[{(]/,"metatag.cs","@razorRootTopLevel"],[/(@)(\s*[\w]+)/,["metatag.cs",{token:"identifier.cs",switchTo:"@$S2.$S3"}]],[/[})]/,{token:"metatag.cs",switchTo:"@$S2.$S3"}],[/\*@/,{token:"comment.cs",switchTo:"@$S2.$S3"}]],razorInEmbeddedState:[[/@\*/,"comment.cs","@razorBlockCommentTopLevel"],[/@[{(]/,"metatag.cs","@razorRootTopLevel"],[/(@)(\s*[\w]+)/,["metatag.cs",{token:"identifier.cs",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}]],[/[})]/,{token:"metatag.cs",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}],[/\*@/,{token:"comment.cs",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}]],razorBlockCommentTopLevel:[[/\*@/,"@rematch","@pop"],[/[^*]+/,"comment.cs"],[/./,"comment.cs"]],razorBlockComment:[[/\*@/,"comment.cs","@pop"],[/[^*]+/,"comment.cs"],[/./,"comment.cs"]],razorRootTopLevel:[[/\{/,"delimiter.bracket.cs","@razorRoot"],[/\(/,"delimiter.parenthesis.cs","@razorRoot"],[/[})]/,"@rematch","@pop"],{include:"razorCommon"}],razorRoot:[[/\{/,"delimiter.bracket.cs","@razorRoot"],[/\(/,"delimiter.parenthesis.cs","@razorRoot"],[/\}/,"delimiter.bracket.cs","@pop"],[/\)/,"delimiter.parenthesis.cs","@pop"],{include:"razorCommon"}],razorCommon:[[/[a-zA-Z_]\w*/,{cases:{"@razorKeywords":{token:"keyword.cs"},"@default":"identifier.cs"}}],[/[\[\]]/,"delimiter.array.cs"],[/[ \t\r\n]+/],[/\/\/.*$/,"comment.cs"],[/@\*/,"comment.cs","@razorBlockComment"],[/"([^"]*)"/,"string.cs"],[/'([^']*)'/,"string.cs"],[/(<)(\w+)(\/>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(\w+)(>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<\/)(\w+)(>)/,["delimiter.html","tag.html","delimiter.html"]],[/[\+\-\*\%\&\|\^\~\!\=\<\>\/\?\;\:\.\,]/,"delimiter.cs"],[/\d*\d+[eE]([\-+]?\d+)?/,"number.float.cs"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float.cs"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F]/,"number.hex.cs"],[/0[0-7']*[0-7]/,"number.octal.cs"],[/0[bB][0-1']*[0-1]/,"number.binary.cs"],[/\d[\d']*/,"number.cs"],[/\d/,"number.cs"]]},razorKeywords:["abstract","as","async","await","base","bool","break","by","byte","case","catch","char","checked","class","const","continue","decimal","default","delegate","do","double","descending","explicit","event","extern","else","enum","false","finally","fixed","float","for","foreach","from","goto","group","if","implicit","in","int","interface","internal","into","is","lock","long","nameof","new","null","namespace","object","operator","out","override","orderby","params","private","protected","public","readonly","ref","return","switch","struct","sbyte","sealed","short","sizeof","stackalloc","static","string","select","this","throw","true","try","typeof","uint","ulong","unchecked","unsafe","ushort","using","var","virtual","volatile","void","when","while","where","yield","model","inject"],escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/82.2044b434.js b/docs/src/.vuepress/dist/assets/js/83.fdf32268.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/82.2044b434.js rename to docs/src/.vuepress/dist/assets/js/83.fdf32268.js index 84a32a3c..2806a43c 100644 --- a/docs/src/.vuepress/dist/assets/js/82.2044b434.js +++ b/docs/src/.vuepress/dist/assets/js/83.fdf32268.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[82],{484:function(E,S,e){"use strict";e.r(S),e.d(S,"conf",(function(){return T})),e.d(S,"language",(function(){return R}));var T={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},R={defaultToken:"",tokenPostfix:".redis",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["APPEND","AUTH","BGREWRITEAOF","BGSAVE","BITCOUNT","BITFIELD","BITOP","BITPOS","BLPOP","BRPOP","BRPOPLPUSH","CLIENT","KILL","LIST","GETNAME","PAUSE","REPLY","SETNAME","CLUSTER","ADDSLOTS","COUNT-FAILURE-REPORTS","COUNTKEYSINSLOT","DELSLOTS","FAILOVER","FORGET","GETKEYSINSLOT","INFO","KEYSLOT","MEET","NODES","REPLICATE","RESET","SAVECONFIG","SET-CONFIG-EPOCH","SETSLOT","SLAVES","SLOTS","COMMAND","COUNT","GETKEYS","CONFIG","GET","REWRITE","SET","RESETSTAT","DBSIZE","DEBUG","OBJECT","SEGFAULT","DECR","DECRBY","DEL","DISCARD","DUMP","ECHO","EVAL","EVALSHA","EXEC","EXISTS","EXPIRE","EXPIREAT","FLUSHALL","FLUSHDB","GEOADD","GEOHASH","GEOPOS","GEODIST","GEORADIUS","GEORADIUSBYMEMBER","GETBIT","GETRANGE","GETSET","HDEL","HEXISTS","HGET","HGETALL","HINCRBY","HINCRBYFLOAT","HKEYS","HLEN","HMGET","HMSET","HSET","HSETNX","HSTRLEN","HVALS","INCR","INCRBY","INCRBYFLOAT","KEYS","LASTSAVE","LINDEX","LINSERT","LLEN","LPOP","LPUSH","LPUSHX","LRANGE","LREM","LSET","LTRIM","MGET","MIGRATE","MONITOR","MOVE","MSET","MSETNX","MULTI","PERSIST","PEXPIRE","PEXPIREAT","PFADD","PFCOUNT","PFMERGE","PING","PSETEX","PSUBSCRIBE","PUBSUB","PTTL","PUBLISH","PUNSUBSCRIBE","QUIT","RANDOMKEY","READONLY","READWRITE","RENAME","RENAMENX","RESTORE","ROLE","RPOP","RPOPLPUSH","RPUSH","RPUSHX","SADD","SAVE","SCARD","SCRIPT","FLUSH","LOAD","SDIFF","SDIFFSTORE","SELECT","SETBIT","SETEX","SETNX","SETRANGE","SHUTDOWN","SINTER","SINTERSTORE","SISMEMBER","SLAVEOF","SLOWLOG","SMEMBERS","SMOVE","SORT","SPOP","SRANDMEMBER","SREM","STRLEN","SUBSCRIBE","SUNION","SUNIONSTORE","SWAPDB","SYNC","TIME","TOUCH","TTL","TYPE","UNSUBSCRIBE","UNLINK","UNWATCH","WAIT","WATCH","ZADD","ZCARD","ZCOUNT","ZINCRBY","ZINTERSTORE","ZLEXCOUNT","ZRANGE","ZRANGEBYLEX","ZREVRANGEBYLEX","ZRANGEBYSCORE","ZRANK","ZREM","ZREMRANGEBYLEX","ZREMRANGEBYRANK","ZREMRANGEBYSCORE","ZREVRANGE","ZREVRANGEBYSCORE","ZREVRANK","ZSCORE","ZUNIONSTORE","SCAN","SSCAN","HSCAN","ZSCAN"],operators:[],builtinFunctions:[],builtinVariables:[],pseudoColumns:[],tokenizer:{root:[{include:"@whitespace"},{include:"@pseudoColumns"},{include:"@numbers"},{include:"@strings"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@#$]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":"predefined","@default":"identifier"}}]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/'/,{token:"string",next:"@string"}],[/"/,{token:"string.double",next:"@stringDouble"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],stringDouble:[[/[^"]+/,"string.double"],[/""/,"string.double"],[/"/,{token:"string.double",next:"@pop"}]],scopes:[]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[83],{484:function(E,S,e){"use strict";e.r(S),e.d(S,"conf",(function(){return T})),e.d(S,"language",(function(){return R}));var T={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},R={defaultToken:"",tokenPostfix:".redis",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["APPEND","AUTH","BGREWRITEAOF","BGSAVE","BITCOUNT","BITFIELD","BITOP","BITPOS","BLPOP","BRPOP","BRPOPLPUSH","CLIENT","KILL","LIST","GETNAME","PAUSE","REPLY","SETNAME","CLUSTER","ADDSLOTS","COUNT-FAILURE-REPORTS","COUNTKEYSINSLOT","DELSLOTS","FAILOVER","FORGET","GETKEYSINSLOT","INFO","KEYSLOT","MEET","NODES","REPLICATE","RESET","SAVECONFIG","SET-CONFIG-EPOCH","SETSLOT","SLAVES","SLOTS","COMMAND","COUNT","GETKEYS","CONFIG","GET","REWRITE","SET","RESETSTAT","DBSIZE","DEBUG","OBJECT","SEGFAULT","DECR","DECRBY","DEL","DISCARD","DUMP","ECHO","EVAL","EVALSHA","EXEC","EXISTS","EXPIRE","EXPIREAT","FLUSHALL","FLUSHDB","GEOADD","GEOHASH","GEOPOS","GEODIST","GEORADIUS","GEORADIUSBYMEMBER","GETBIT","GETRANGE","GETSET","HDEL","HEXISTS","HGET","HGETALL","HINCRBY","HINCRBYFLOAT","HKEYS","HLEN","HMGET","HMSET","HSET","HSETNX","HSTRLEN","HVALS","INCR","INCRBY","INCRBYFLOAT","KEYS","LASTSAVE","LINDEX","LINSERT","LLEN","LPOP","LPUSH","LPUSHX","LRANGE","LREM","LSET","LTRIM","MGET","MIGRATE","MONITOR","MOVE","MSET","MSETNX","MULTI","PERSIST","PEXPIRE","PEXPIREAT","PFADD","PFCOUNT","PFMERGE","PING","PSETEX","PSUBSCRIBE","PUBSUB","PTTL","PUBLISH","PUNSUBSCRIBE","QUIT","RANDOMKEY","READONLY","READWRITE","RENAME","RENAMENX","RESTORE","ROLE","RPOP","RPOPLPUSH","RPUSH","RPUSHX","SADD","SAVE","SCARD","SCRIPT","FLUSH","LOAD","SDIFF","SDIFFSTORE","SELECT","SETBIT","SETEX","SETNX","SETRANGE","SHUTDOWN","SINTER","SINTERSTORE","SISMEMBER","SLAVEOF","SLOWLOG","SMEMBERS","SMOVE","SORT","SPOP","SRANDMEMBER","SREM","STRLEN","SUBSCRIBE","SUNION","SUNIONSTORE","SWAPDB","SYNC","TIME","TOUCH","TTL","TYPE","UNSUBSCRIBE","UNLINK","UNWATCH","WAIT","WATCH","ZADD","ZCARD","ZCOUNT","ZINCRBY","ZINTERSTORE","ZLEXCOUNT","ZRANGE","ZRANGEBYLEX","ZREVRANGEBYLEX","ZRANGEBYSCORE","ZRANK","ZREM","ZREMRANGEBYLEX","ZREMRANGEBYRANK","ZREMRANGEBYSCORE","ZREVRANGE","ZREVRANGEBYSCORE","ZREVRANK","ZSCORE","ZUNIONSTORE","SCAN","SSCAN","HSCAN","ZSCAN"],operators:[],builtinFunctions:[],builtinVariables:[],pseudoColumns:[],tokenizer:{root:[{include:"@whitespace"},{include:"@pseudoColumns"},{include:"@numbers"},{include:"@strings"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@#$]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":"predefined","@default":"identifier"}}]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/'/,{token:"string",next:"@string"}],[/"/,{token:"string.double",next:"@stringDouble"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],stringDouble:[[/[^"]+/,"string.double"],[/""/,"string.double"],[/"/,{token:"string.double",next:"@pop"}]],scopes:[]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/83.e9eb873f.js b/docs/src/.vuepress/dist/assets/js/84.5aa11083.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/83.e9eb873f.js rename to docs/src/.vuepress/dist/assets/js/84.5aa11083.js index 16f70025..723dad78 100644 --- a/docs/src/.vuepress/dist/assets/js/83.e9eb873f.js +++ b/docs/src/.vuepress/dist/assets/js/84.5aa11083.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[83],{485:function(e,_,t){"use strict";t.r(_),t.d(_,"conf",(function(){return r})),t.d(_,"language",(function(){return i}));var r={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},i={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["AES128","AES256","ALL","ALLOWOVERWRITE","ANALYSE","ANALYZE","AND","ANY","ARRAY","AS","ASC","AUTHORIZATION","BACKUP","BETWEEN","BINARY","BLANKSASNULL","BOTH","BYTEDICT","BZIP2","CASE","CAST","CHECK","COLLATE","COLUMN","CONSTRAINT","CREATE","CREDENTIALS","CROSS","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURRENT_USER_ID","DEFAULT","DEFERRABLE","DEFLATE","DEFRAG","DELTA","DELTA32K","DESC","DISABLE","DISTINCT","DO","ELSE","EMPTYASNULL","ENABLE","ENCODE","ENCRYPT","ENCRYPTION","END","EXCEPT","EXPLICIT","FALSE","FOR","FOREIGN","FREEZE","FROM","FULL","GLOBALDICT256","GLOBALDICT64K","GRANT","GROUP","GZIP","HAVING","IDENTITY","IGNORE","ILIKE","IN","INITIALLY","INNER","INTERSECT","INTO","IS","ISNULL","JOIN","LEADING","LEFT","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","LUN","LUNS","LZO","LZOP","MINUS","MOSTLY13","MOSTLY32","MOSTLY8","NATURAL","NEW","NOT","NOTNULL","NULL","NULLS","OFF","OFFLINE","OFFSET","OID","OLD","ON","ONLY","OPEN","OR","ORDER","OUTER","OVERLAPS","PARALLEL","PARTITION","PERCENT","PERMISSIONS","PLACING","PRIMARY","RAW","READRATIO","RECOVER","REFERENCES","RESPECT","REJECTLOG","RESORT","RESTORE","RIGHT","SELECT","SESSION_USER","SIMILAR","SNAPSHOT","SOME","SYSDATE","SYSTEM","TABLE","TAG","TDES","TEXT255","TEXT32K","THEN","TIMESTAMP","TO","TOP","TRAILING","TRUE","TRUNCATECOLUMNS","UNION","UNIQUE","USER","USING","VERBOSE","WALLET","WHEN","WHERE","WITH","WITHOUT"],operators:["AND","BETWEEN","IN","LIKE","NOT","OR","IS","NULL","INTERSECT","UNION","INNER","JOIN","LEFT","OUTER","RIGHT"],builtinFunctions:["current_schema","current_schemas","has_database_privilege","has_schema_privilege","has_table_privilege","age","current_time","current_timestamp","localtime","isfinite","now","ascii","get_bit","get_byte","set_bit","set_byte","to_ascii","approximate percentile_disc","avg","count","listagg","max","median","min","percentile_cont","stddev_samp","stddev_pop","sum","var_samp","var_pop","bit_and","bit_or","bool_and","bool_or","cume_dist","first_value","lag","last_value","lead","nth_value","ratio_to_report","dense_rank","ntile","percent_rank","rank","row_number","case","coalesce","decode","greatest","least","nvl","nvl2","nullif","add_months","at time zone","convert_timezone","current_date","date_cmp","date_cmp_timestamp","date_cmp_timestamptz","date_part_year","dateadd","datediff","date_part","date_trunc","extract","getdate","interval_cmp","last_day","months_between","next_day","sysdate","timeofday","timestamp_cmp","timestamp_cmp_date","timestamp_cmp_timestamptz","timestamptz_cmp","timestamptz_cmp_date","timestamptz_cmp_timestamp","timezone","to_timestamp","trunc","abs","acos","asin","atan","atan2","cbrt","ceil","ceiling","checksum","cos","cot","degrees","dexp","dlog1","dlog10","exp","floor","ln","log","mod","pi","power","radians","random","round","sin","sign","sqrt","tan","to_hex","bpcharcmp","btrim","bttext_pattern_cmp","char_length","character_length","charindex","chr","concat","crc32","func_sha1","initcap","left and rights","len","length","lower","lpad and rpads","ltrim","md5","octet_length","position","quote_ident","quote_literal","regexp_count","regexp_instr","regexp_replace","regexp_substr","repeat","replace","replicate","reverse","rtrim","split_part","strpos","strtol","substring","textlen","translate","trim","upper","cast","convert","to_char","to_date","to_number","json_array_length","json_extract_array_element_text","json_extract_path_text","current_setting","pg_cancel_backend","pg_terminate_backend","set_config","current_database","current_user","current_user_id","pg_backend_pid","pg_last_copy_count","pg_last_copy_id","pg_last_query_id","pg_last_unload_count","session_user","slice_num","user","version","abbrev","acosd","any","area","array_agg","array_append","array_cat","array_dims","array_fill","array_length","array_lower","array_ndims","array_position","array_positions","array_prepend","array_remove","array_replace","array_to_json","array_to_string","array_to_tsvector","array_upper","asind","atan2d","atand","bit","bit_length","bound_box","box","brin_summarize_new_values","broadcast","cardinality","center","circle","clock_timestamp","col_description","concat_ws","convert_from","convert_to","corr","cosd","cotd","covar_pop","covar_samp","current_catalog","current_query","current_role","currval","cursor_to_xml","diameter","div","encode","enum_first","enum_last","enum_range","every","family","format","format_type","generate_series","generate_subscripts","get_current_ts_config","gin_clean_pending_list","grouping","has_any_column_privilege","has_column_privilege","has_foreign_data_wrapper_privilege","has_function_privilege","has_language_privilege","has_sequence_privilege","has_server_privilege","has_tablespace_privilege","has_type_privilege","height","host","hostmask","inet_client_addr","inet_client_port","inet_merge","inet_same_family","inet_server_addr","inet_server_port","isclosed","isempty","isopen","json_agg","json_object","json_object_agg","json_populate_record","json_populate_recordset","json_to_record","json_to_recordset","jsonb_agg","jsonb_object_agg","justify_days","justify_hours","justify_interval","lastval","left","line","localtimestamp","lower_inc","lower_inf","lpad","lseg","make_date","make_interval","make_time","make_timestamp","make_timestamptz","masklen","mode","netmask","network","nextval","npoints","num_nonnulls","num_nulls","numnode","obj_description","overlay","parse_ident","path","pclose","percentile_disc","pg_advisory_lock","pg_advisory_lock_shared","pg_advisory_unlock","pg_advisory_unlock_all","pg_advisory_unlock_shared","pg_advisory_xact_lock","pg_advisory_xact_lock_shared","pg_backup_start_time","pg_blocking_pids","pg_client_encoding","pg_collation_is_visible","pg_column_size","pg_conf_load_time","pg_control_checkpoint","pg_control_init","pg_control_recovery","pg_control_system","pg_conversion_is_visible","pg_create_logical_replication_slot","pg_create_physical_replication_slot","pg_create_restore_point","pg_current_xlog_flush_location","pg_current_xlog_insert_location","pg_current_xlog_location","pg_database_size","pg_describe_object","pg_drop_replication_slot","pg_export_snapshot","pg_filenode_relation","pg_function_is_visible","pg_get_constraintdef","pg_get_expr","pg_get_function_arguments","pg_get_function_identity_arguments","pg_get_function_result","pg_get_functiondef","pg_get_indexdef","pg_get_keywords","pg_get_object_address","pg_get_owned_sequence","pg_get_ruledef","pg_get_serial_sequence","pg_get_triggerdef","pg_get_userbyid","pg_get_viewdef","pg_has_role","pg_identify_object","pg_identify_object_as_address","pg_index_column_has_property","pg_index_has_property","pg_indexam_has_property","pg_indexes_size","pg_is_in_backup","pg_is_in_recovery","pg_is_other_temp_schema","pg_is_xlog_replay_paused","pg_last_committed_xact","pg_last_xact_replay_timestamp","pg_last_xlog_receive_location","pg_last_xlog_replay_location","pg_listening_channels","pg_logical_emit_message","pg_logical_slot_get_binary_changes","pg_logical_slot_get_changes","pg_logical_slot_peek_binary_changes","pg_logical_slot_peek_changes","pg_ls_dir","pg_my_temp_schema","pg_notification_queue_usage","pg_opclass_is_visible","pg_operator_is_visible","pg_opfamily_is_visible","pg_options_to_table","pg_postmaster_start_time","pg_read_binary_file","pg_read_file","pg_relation_filenode","pg_relation_filepath","pg_relation_size","pg_reload_conf","pg_replication_origin_create","pg_replication_origin_drop","pg_replication_origin_oid","pg_replication_origin_progress","pg_replication_origin_session_is_setup","pg_replication_origin_session_progress","pg_replication_origin_session_reset","pg_replication_origin_session_setup","pg_replication_origin_xact_reset","pg_replication_origin_xact_setup","pg_rotate_logfile","pg_size_bytes","pg_size_pretty","pg_sleep","pg_sleep_for","pg_sleep_until","pg_start_backup","pg_stat_file","pg_stop_backup","pg_switch_xlog","pg_table_is_visible","pg_table_size","pg_tablespace_databases","pg_tablespace_location","pg_tablespace_size","pg_total_relation_size","pg_trigger_depth","pg_try_advisory_lock","pg_try_advisory_lock_shared","pg_try_advisory_xact_lock","pg_try_advisory_xact_lock_shared","pg_ts_config_is_visible","pg_ts_dict_is_visible","pg_ts_parser_is_visible","pg_ts_template_is_visible","pg_type_is_visible","pg_typeof","pg_xact_commit_timestamp","pg_xlog_location_diff","pg_xlog_replay_pause","pg_xlog_replay_resume","pg_xlogfile_name","pg_xlogfile_name_offset","phraseto_tsquery","plainto_tsquery","point","polygon","popen","pqserverversion","query_to_xml","querytree","quote_nullable","radius","range_merge","regexp_matches","regexp_split_to_array","regexp_split_to_table","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","right","row_security_active","row_to_json","rpad","scale","set_masklen","setseed","setval","setweight","shobj_description","sind","sprintf","statement_timestamp","stddev","string_agg","string_to_array","strip","substr","table_to_xml","table_to_xml_and_xmlschema","tand","text","to_json","to_regclass","to_regnamespace","to_regoper","to_regoperator","to_regproc","to_regprocedure","to_regrole","to_regtype","to_tsquery","to_tsvector","transaction_timestamp","ts_debug","ts_delete","ts_filter","ts_headline","ts_lexize","ts_parse","ts_rank","ts_rank_cd","ts_rewrite","ts_stat","ts_token_type","tsquery_phrase","tsvector_to_array","tsvector_update_trigger","tsvector_update_trigger_column","txid_current","txid_current_snapshot","txid_snapshot_xip","txid_snapshot_xmax","txid_snapshot_xmin","txid_visible_in_snapshot","unnest","upper_inc","upper_inf","variance","width","width_bucket","xml_is_well_formed","xml_is_well_formed_content","xml_is_well_formed_document","xmlagg","xmlcomment","xmlconcat","xmlelement","xmlexists","xmlforest","xmlparse","xmlpi","xmlroot","xmlserialize","xpath","xpath_exists"],builtinVariables:[],pseudoColumns:[],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@pseudoColumns"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@#$]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":"predefined","@default":"identifier"}}]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/'/,{token:"string",next:"@string"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/"/,{token:"identifier.quote",next:"@quotedIdentifier"}]],quotedIdentifier:[[/[^"]+/,"identifier"],[/""/,"identifier"],[/"/,{token:"identifier.quote",next:"@pop"}]],scopes:[]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[84],{485:function(e,_,t){"use strict";t.r(_),t.d(_,"conf",(function(){return r})),t.d(_,"language",(function(){return i}));var r={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},i={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["AES128","AES256","ALL","ALLOWOVERWRITE","ANALYSE","ANALYZE","AND","ANY","ARRAY","AS","ASC","AUTHORIZATION","BACKUP","BETWEEN","BINARY","BLANKSASNULL","BOTH","BYTEDICT","BZIP2","CASE","CAST","CHECK","COLLATE","COLUMN","CONSTRAINT","CREATE","CREDENTIALS","CROSS","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURRENT_USER_ID","DEFAULT","DEFERRABLE","DEFLATE","DEFRAG","DELTA","DELTA32K","DESC","DISABLE","DISTINCT","DO","ELSE","EMPTYASNULL","ENABLE","ENCODE","ENCRYPT","ENCRYPTION","END","EXCEPT","EXPLICIT","FALSE","FOR","FOREIGN","FREEZE","FROM","FULL","GLOBALDICT256","GLOBALDICT64K","GRANT","GROUP","GZIP","HAVING","IDENTITY","IGNORE","ILIKE","IN","INITIALLY","INNER","INTERSECT","INTO","IS","ISNULL","JOIN","LEADING","LEFT","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","LUN","LUNS","LZO","LZOP","MINUS","MOSTLY13","MOSTLY32","MOSTLY8","NATURAL","NEW","NOT","NOTNULL","NULL","NULLS","OFF","OFFLINE","OFFSET","OID","OLD","ON","ONLY","OPEN","OR","ORDER","OUTER","OVERLAPS","PARALLEL","PARTITION","PERCENT","PERMISSIONS","PLACING","PRIMARY","RAW","READRATIO","RECOVER","REFERENCES","RESPECT","REJECTLOG","RESORT","RESTORE","RIGHT","SELECT","SESSION_USER","SIMILAR","SNAPSHOT","SOME","SYSDATE","SYSTEM","TABLE","TAG","TDES","TEXT255","TEXT32K","THEN","TIMESTAMP","TO","TOP","TRAILING","TRUE","TRUNCATECOLUMNS","UNION","UNIQUE","USER","USING","VERBOSE","WALLET","WHEN","WHERE","WITH","WITHOUT"],operators:["AND","BETWEEN","IN","LIKE","NOT","OR","IS","NULL","INTERSECT","UNION","INNER","JOIN","LEFT","OUTER","RIGHT"],builtinFunctions:["current_schema","current_schemas","has_database_privilege","has_schema_privilege","has_table_privilege","age","current_time","current_timestamp","localtime","isfinite","now","ascii","get_bit","get_byte","set_bit","set_byte","to_ascii","approximate percentile_disc","avg","count","listagg","max","median","min","percentile_cont","stddev_samp","stddev_pop","sum","var_samp","var_pop","bit_and","bit_or","bool_and","bool_or","cume_dist","first_value","lag","last_value","lead","nth_value","ratio_to_report","dense_rank","ntile","percent_rank","rank","row_number","case","coalesce","decode","greatest","least","nvl","nvl2","nullif","add_months","at time zone","convert_timezone","current_date","date_cmp","date_cmp_timestamp","date_cmp_timestamptz","date_part_year","dateadd","datediff","date_part","date_trunc","extract","getdate","interval_cmp","last_day","months_between","next_day","sysdate","timeofday","timestamp_cmp","timestamp_cmp_date","timestamp_cmp_timestamptz","timestamptz_cmp","timestamptz_cmp_date","timestamptz_cmp_timestamp","timezone","to_timestamp","trunc","abs","acos","asin","atan","atan2","cbrt","ceil","ceiling","checksum","cos","cot","degrees","dexp","dlog1","dlog10","exp","floor","ln","log","mod","pi","power","radians","random","round","sin","sign","sqrt","tan","to_hex","bpcharcmp","btrim","bttext_pattern_cmp","char_length","character_length","charindex","chr","concat","crc32","func_sha1","initcap","left and rights","len","length","lower","lpad and rpads","ltrim","md5","octet_length","position","quote_ident","quote_literal","regexp_count","regexp_instr","regexp_replace","regexp_substr","repeat","replace","replicate","reverse","rtrim","split_part","strpos","strtol","substring","textlen","translate","trim","upper","cast","convert","to_char","to_date","to_number","json_array_length","json_extract_array_element_text","json_extract_path_text","current_setting","pg_cancel_backend","pg_terminate_backend","set_config","current_database","current_user","current_user_id","pg_backend_pid","pg_last_copy_count","pg_last_copy_id","pg_last_query_id","pg_last_unload_count","session_user","slice_num","user","version","abbrev","acosd","any","area","array_agg","array_append","array_cat","array_dims","array_fill","array_length","array_lower","array_ndims","array_position","array_positions","array_prepend","array_remove","array_replace","array_to_json","array_to_string","array_to_tsvector","array_upper","asind","atan2d","atand","bit","bit_length","bound_box","box","brin_summarize_new_values","broadcast","cardinality","center","circle","clock_timestamp","col_description","concat_ws","convert_from","convert_to","corr","cosd","cotd","covar_pop","covar_samp","current_catalog","current_query","current_role","currval","cursor_to_xml","diameter","div","encode","enum_first","enum_last","enum_range","every","family","format","format_type","generate_series","generate_subscripts","get_current_ts_config","gin_clean_pending_list","grouping","has_any_column_privilege","has_column_privilege","has_foreign_data_wrapper_privilege","has_function_privilege","has_language_privilege","has_sequence_privilege","has_server_privilege","has_tablespace_privilege","has_type_privilege","height","host","hostmask","inet_client_addr","inet_client_port","inet_merge","inet_same_family","inet_server_addr","inet_server_port","isclosed","isempty","isopen","json_agg","json_object","json_object_agg","json_populate_record","json_populate_recordset","json_to_record","json_to_recordset","jsonb_agg","jsonb_object_agg","justify_days","justify_hours","justify_interval","lastval","left","line","localtimestamp","lower_inc","lower_inf","lpad","lseg","make_date","make_interval","make_time","make_timestamp","make_timestamptz","masklen","mode","netmask","network","nextval","npoints","num_nonnulls","num_nulls","numnode","obj_description","overlay","parse_ident","path","pclose","percentile_disc","pg_advisory_lock","pg_advisory_lock_shared","pg_advisory_unlock","pg_advisory_unlock_all","pg_advisory_unlock_shared","pg_advisory_xact_lock","pg_advisory_xact_lock_shared","pg_backup_start_time","pg_blocking_pids","pg_client_encoding","pg_collation_is_visible","pg_column_size","pg_conf_load_time","pg_control_checkpoint","pg_control_init","pg_control_recovery","pg_control_system","pg_conversion_is_visible","pg_create_logical_replication_slot","pg_create_physical_replication_slot","pg_create_restore_point","pg_current_xlog_flush_location","pg_current_xlog_insert_location","pg_current_xlog_location","pg_database_size","pg_describe_object","pg_drop_replication_slot","pg_export_snapshot","pg_filenode_relation","pg_function_is_visible","pg_get_constraintdef","pg_get_expr","pg_get_function_arguments","pg_get_function_identity_arguments","pg_get_function_result","pg_get_functiondef","pg_get_indexdef","pg_get_keywords","pg_get_object_address","pg_get_owned_sequence","pg_get_ruledef","pg_get_serial_sequence","pg_get_triggerdef","pg_get_userbyid","pg_get_viewdef","pg_has_role","pg_identify_object","pg_identify_object_as_address","pg_index_column_has_property","pg_index_has_property","pg_indexam_has_property","pg_indexes_size","pg_is_in_backup","pg_is_in_recovery","pg_is_other_temp_schema","pg_is_xlog_replay_paused","pg_last_committed_xact","pg_last_xact_replay_timestamp","pg_last_xlog_receive_location","pg_last_xlog_replay_location","pg_listening_channels","pg_logical_emit_message","pg_logical_slot_get_binary_changes","pg_logical_slot_get_changes","pg_logical_slot_peek_binary_changes","pg_logical_slot_peek_changes","pg_ls_dir","pg_my_temp_schema","pg_notification_queue_usage","pg_opclass_is_visible","pg_operator_is_visible","pg_opfamily_is_visible","pg_options_to_table","pg_postmaster_start_time","pg_read_binary_file","pg_read_file","pg_relation_filenode","pg_relation_filepath","pg_relation_size","pg_reload_conf","pg_replication_origin_create","pg_replication_origin_drop","pg_replication_origin_oid","pg_replication_origin_progress","pg_replication_origin_session_is_setup","pg_replication_origin_session_progress","pg_replication_origin_session_reset","pg_replication_origin_session_setup","pg_replication_origin_xact_reset","pg_replication_origin_xact_setup","pg_rotate_logfile","pg_size_bytes","pg_size_pretty","pg_sleep","pg_sleep_for","pg_sleep_until","pg_start_backup","pg_stat_file","pg_stop_backup","pg_switch_xlog","pg_table_is_visible","pg_table_size","pg_tablespace_databases","pg_tablespace_location","pg_tablespace_size","pg_total_relation_size","pg_trigger_depth","pg_try_advisory_lock","pg_try_advisory_lock_shared","pg_try_advisory_xact_lock","pg_try_advisory_xact_lock_shared","pg_ts_config_is_visible","pg_ts_dict_is_visible","pg_ts_parser_is_visible","pg_ts_template_is_visible","pg_type_is_visible","pg_typeof","pg_xact_commit_timestamp","pg_xlog_location_diff","pg_xlog_replay_pause","pg_xlog_replay_resume","pg_xlogfile_name","pg_xlogfile_name_offset","phraseto_tsquery","plainto_tsquery","point","polygon","popen","pqserverversion","query_to_xml","querytree","quote_nullable","radius","range_merge","regexp_matches","regexp_split_to_array","regexp_split_to_table","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","right","row_security_active","row_to_json","rpad","scale","set_masklen","setseed","setval","setweight","shobj_description","sind","sprintf","statement_timestamp","stddev","string_agg","string_to_array","strip","substr","table_to_xml","table_to_xml_and_xmlschema","tand","text","to_json","to_regclass","to_regnamespace","to_regoper","to_regoperator","to_regproc","to_regprocedure","to_regrole","to_regtype","to_tsquery","to_tsvector","transaction_timestamp","ts_debug","ts_delete","ts_filter","ts_headline","ts_lexize","ts_parse","ts_rank","ts_rank_cd","ts_rewrite","ts_stat","ts_token_type","tsquery_phrase","tsvector_to_array","tsvector_update_trigger","tsvector_update_trigger_column","txid_current","txid_current_snapshot","txid_snapshot_xip","txid_snapshot_xmax","txid_snapshot_xmin","txid_visible_in_snapshot","unnest","upper_inc","upper_inf","variance","width","width_bucket","xml_is_well_formed","xml_is_well_formed_content","xml_is_well_formed_document","xmlagg","xmlcomment","xmlconcat","xmlelement","xmlexists","xmlforest","xmlparse","xmlpi","xmlroot","xmlserialize","xpath","xpath_exists"],builtinVariables:[],pseudoColumns:[],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@pseudoColumns"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@#$]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":"predefined","@default":"identifier"}}]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/'/,{token:"string",next:"@string"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/"/,{token:"identifier.quote",next:"@quotedIdentifier"}]],quotedIdentifier:[[/[^"]+/,"identifier"],[/""/,"identifier"],[/"/,{token:"identifier.quote",next:"@pop"}]],scopes:[]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/84.b501de85.js b/docs/src/.vuepress/dist/assets/js/85.ed836419.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/84.b501de85.js rename to docs/src/.vuepress/dist/assets/js/85.ed836419.js index 169feda0..6bb19154 100644 --- a/docs/src/.vuepress/dist/assets/js/84.b501de85.js +++ b/docs/src/.vuepress/dist/assets/js/85.ed836419.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[84],{486:function(e,n,s){"use strict";s.r(n),s.d(n,"conf",(function(){return i})),s.d(n,"language",(function(){return t}));var i={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">",notIn:["string"]}],surroundingPairs:[{open:"(",close:")"},{open:"[",close:"]"},{open:"`",close:"`"}],folding:{markers:{start:new RegExp("^\\s*\x3c!--\\s*#?region\\b.*--\x3e"),end:new RegExp("^\\s*\x3c!--\\s*#?endregion\\b.*--\x3e")}}},t={defaultToken:"",tokenPostfix:".rst",control:/[\\`*_\[\]{}()#+\-\.!]/,escapes:/\\(?:@control)/,empty:["area","base","basefont","br","col","frame","hr","img","input","isindex","link","meta","param"],alphanumerics:/[A-Za-z0-9]/,alphanumericsplus:/[A-Za-z0-9-_+:.]/,simpleRefNameWithoutBq:/(?:@alphanumerics@alphanumericsplus*@alphanumerics)+|(?:@alphanumerics+)/,simpleRefName:/(?:`@simpleRefNameWithoutBq`|@simpleRefNameWithoutBq)/,phrase:/@simpleRefName(?:\s@simpleRefName)*/,citationName:/[A-Za-z][A-Za-z0-9-_.]*/,blockLiteralStart:/(?:[!"#$%&'()*+,-./:;<=>?@\[\]^_`{|}~]|[\s])/,precedingChars:/(?:[ -:/'"<([{])/,followingChars:/(?:[ -.,:;!?/'")\]}>]|$)/,punctuation:/(=|-|~|`|#|"|\^|\+|\*|:|\.|'|_|\+)/,tokenizer:{root:[[/^(@punctuation{3,}$){1,1}?/,"keyword"],[/^\s*([\*\-+‣•]|[a-zA-Z0-9]+\.|\([a-zA-Z0-9]+\)|[a-zA-Z0-9]+\))\s/,"keyword"],[/([ ]::)\s*$/,"keyword","@blankLineOfLiteralBlocks"],[/(::)\s*$/,"keyword","@blankLineOfLiteralBlocks"],{include:"@tables"},{include:"@explicitMarkupBlocks"},{include:"@inlineMarkup"}],explicitMarkupBlocks:[{include:"@citations"},{include:"@footnotes"},[/^(\.\.\s)(@simpleRefName)(::\s)(.*)$/,[{token:"",next:"subsequentLines"},"keyword","",""]],[/^(\.\.)(\s+)(_)(@simpleRefName)(:)(\s+)(.*)/,[{token:"",next:"hyperlinks"},"","","string.link","","","string.link"]],[/^((?:(?:\.\.)(?:\s+))?)(__)(:)(\s+)(.*)/,[{token:"",next:"subsequentLines"},"","","","string.link"]],[/^(__\s+)(.+)/,["","string.link"]],[/^(\.\.)( \|)([^| ]+[^|]*[^| ]*)(\| )(@simpleRefName)(:: .*)/,[{token:"",next:"subsequentLines"},"","string.link","","keyword",""],"@rawBlocks"],[/(\|)([^| ]+[^|]*[^| ]*)(\|_{0,2})/,["","string.link",""]],[/^(\.\.)([ ].*)$/,[{token:"",next:"@comments"},"comment"]]],inlineMarkup:[{include:"@citationsReference"},{include:"@footnotesReference"},[/(@simpleRefName)(_{1,2})/,["string.link",""]],[/(`)([^<`]+\s+)(<)(.*)(>)(`)(_)/,["","string.link","","string.link","","",""]],[/\*\*([^\\*]|\*(?!\*))+\*\*/,"strong"],[/\*[^*]+\*/,"emphasis"],[/(``)((?:[^`]|\`(?!`))+)(``)/,["","keyword",""]],[/(__\s+)(.+)/,["","keyword"]],[/(:)((?:@simpleRefNameWithoutBq)?)(:`)([^`]+)(`)/,["","keyword","","",""]],[/(`)([^`]+)(`:)((?:@simpleRefNameWithoutBq)?)(:)/,["","","","keyword",""]],[/(`)([^`]+)(`)/,""],[/(_`)(@phrase)(`)/,["","string.link",""]]],citations:[[/^(\.\.\s+\[)((?:@citationName))(\]\s+)(.*)/,[{token:"",next:"@subsequentLines"},"string.link","",""]]],citationsReference:[[/(\[)(@citationName)(\]_)/,["","string.link",""]]],footnotes:[[/^(\.\.\s+\[)((?:[0-9]+))(\]\s+.*)/,[{token:"",next:"@subsequentLines"},"string.link",""]],[/^(\.\.\s+\[)((?:#@simpleRefName?))(\]\s+)(.*)/,[{token:"",next:"@subsequentLines"},"string.link","",""]],[/^(\.\.\s+\[)((?:\*))(\]\s+)(.*)/,[{token:"",next:"@subsequentLines"},"string.link","",""]]],footnotesReference:[[/(\[)([0-9]+)(\])(_)/,["","string.link","",""]],[/(\[)(#@simpleRefName?)(\])(_)/,["","string.link","",""]],[/(\[)(\*)(\])(_)/,["","string.link","",""]]],blankLineOfLiteralBlocks:[[/^$/,"","@subsequentLinesOfLiteralBlocks"],[/^.*$/,"","@pop"]],subsequentLinesOfLiteralBlocks:[[/(@blockLiteralStart+)(.*)/,["keyword",""]],[/^(?!blockLiteralStart)/,"","@popall"]],subsequentLines:[[/^[\s]+.*/,""],[/^(?!\s)/,"","@pop"]],hyperlinks:[[/^[\s]+.*/,"string.link"],[/^(?!\s)/,"","@pop"]],comments:[[/^[\s]+.*/,"comment"],[/^(?!\s)/,"","@pop"]],tables:[[/\+-[+-]+/,"keyword"],[/\+=[+=]+/,"keyword"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[85],{486:function(e,n,s){"use strict";s.r(n),s.d(n,"conf",(function(){return i})),s.d(n,"language",(function(){return t}));var i={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">",notIn:["string"]}],surroundingPairs:[{open:"(",close:")"},{open:"[",close:"]"},{open:"`",close:"`"}],folding:{markers:{start:new RegExp("^\\s*\x3c!--\\s*#?region\\b.*--\x3e"),end:new RegExp("^\\s*\x3c!--\\s*#?endregion\\b.*--\x3e")}}},t={defaultToken:"",tokenPostfix:".rst",control:/[\\`*_\[\]{}()#+\-\.!]/,escapes:/\\(?:@control)/,empty:["area","base","basefont","br","col","frame","hr","img","input","isindex","link","meta","param"],alphanumerics:/[A-Za-z0-9]/,alphanumericsplus:/[A-Za-z0-9-_+:.]/,simpleRefNameWithoutBq:/(?:@alphanumerics@alphanumericsplus*@alphanumerics)+|(?:@alphanumerics+)/,simpleRefName:/(?:`@simpleRefNameWithoutBq`|@simpleRefNameWithoutBq)/,phrase:/@simpleRefName(?:\s@simpleRefName)*/,citationName:/[A-Za-z][A-Za-z0-9-_.]*/,blockLiteralStart:/(?:[!"#$%&'()*+,-./:;<=>?@\[\]^_`{|}~]|[\s])/,precedingChars:/(?:[ -:/'"<([{])/,followingChars:/(?:[ -.,:;!?/'")\]}>]|$)/,punctuation:/(=|-|~|`|#|"|\^|\+|\*|:|\.|'|_|\+)/,tokenizer:{root:[[/^(@punctuation{3,}$){1,1}?/,"keyword"],[/^\s*([\*\-+‣•]|[a-zA-Z0-9]+\.|\([a-zA-Z0-9]+\)|[a-zA-Z0-9]+\))\s/,"keyword"],[/([ ]::)\s*$/,"keyword","@blankLineOfLiteralBlocks"],[/(::)\s*$/,"keyword","@blankLineOfLiteralBlocks"],{include:"@tables"},{include:"@explicitMarkupBlocks"},{include:"@inlineMarkup"}],explicitMarkupBlocks:[{include:"@citations"},{include:"@footnotes"},[/^(\.\.\s)(@simpleRefName)(::\s)(.*)$/,[{token:"",next:"subsequentLines"},"keyword","",""]],[/^(\.\.)(\s+)(_)(@simpleRefName)(:)(\s+)(.*)/,[{token:"",next:"hyperlinks"},"","","string.link","","","string.link"]],[/^((?:(?:\.\.)(?:\s+))?)(__)(:)(\s+)(.*)/,[{token:"",next:"subsequentLines"},"","","","string.link"]],[/^(__\s+)(.+)/,["","string.link"]],[/^(\.\.)( \|)([^| ]+[^|]*[^| ]*)(\| )(@simpleRefName)(:: .*)/,[{token:"",next:"subsequentLines"},"","string.link","","keyword",""],"@rawBlocks"],[/(\|)([^| ]+[^|]*[^| ]*)(\|_{0,2})/,["","string.link",""]],[/^(\.\.)([ ].*)$/,[{token:"",next:"@comments"},"comment"]]],inlineMarkup:[{include:"@citationsReference"},{include:"@footnotesReference"},[/(@simpleRefName)(_{1,2})/,["string.link",""]],[/(`)([^<`]+\s+)(<)(.*)(>)(`)(_)/,["","string.link","","string.link","","",""]],[/\*\*([^\\*]|\*(?!\*))+\*\*/,"strong"],[/\*[^*]+\*/,"emphasis"],[/(``)((?:[^`]|\`(?!`))+)(``)/,["","keyword",""]],[/(__\s+)(.+)/,["","keyword"]],[/(:)((?:@simpleRefNameWithoutBq)?)(:`)([^`]+)(`)/,["","keyword","","",""]],[/(`)([^`]+)(`:)((?:@simpleRefNameWithoutBq)?)(:)/,["","","","keyword",""]],[/(`)([^`]+)(`)/,""],[/(_`)(@phrase)(`)/,["","string.link",""]]],citations:[[/^(\.\.\s+\[)((?:@citationName))(\]\s+)(.*)/,[{token:"",next:"@subsequentLines"},"string.link","",""]]],citationsReference:[[/(\[)(@citationName)(\]_)/,["","string.link",""]]],footnotes:[[/^(\.\.\s+\[)((?:[0-9]+))(\]\s+.*)/,[{token:"",next:"@subsequentLines"},"string.link",""]],[/^(\.\.\s+\[)((?:#@simpleRefName?))(\]\s+)(.*)/,[{token:"",next:"@subsequentLines"},"string.link","",""]],[/^(\.\.\s+\[)((?:\*))(\]\s+)(.*)/,[{token:"",next:"@subsequentLines"},"string.link","",""]]],footnotesReference:[[/(\[)([0-9]+)(\])(_)/,["","string.link","",""]],[/(\[)(#@simpleRefName?)(\])(_)/,["","string.link","",""]],[/(\[)(\*)(\])(_)/,["","string.link","",""]]],blankLineOfLiteralBlocks:[[/^$/,"","@subsequentLinesOfLiteralBlocks"],[/^.*$/,"","@pop"]],subsequentLinesOfLiteralBlocks:[[/(@blockLiteralStart+)(.*)/,["keyword",""]],[/^(?!blockLiteralStart)/,"","@popall"]],subsequentLines:[[/^[\s]+.*/,""],[/^(?!\s)/,"","@pop"]],hyperlinks:[[/^[\s]+.*/,"string.link"],[/^(?!\s)/,"","@pop"]],comments:[[/^[\s]+.*/,"comment"],[/^(?!\s)/,"","@pop"]],tables:[[/\+-[+-]+/,"keyword"],[/\+=[+=]+/,"keyword"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/85.c4e6052b.js b/docs/src/.vuepress/dist/assets/js/86.6e6c9232.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/85.c4e6052b.js rename to docs/src/.vuepress/dist/assets/js/86.6e6c9232.js index 803b0a5d..d2c451a2 100644 --- a/docs/src/.vuepress/dist/assets/js/85.c4e6052b.js +++ b/docs/src/.vuepress/dist/assets/js/86.6e6c9232.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[85],{487:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return r})),t.d(n,"language",(function(){return o}));var r={comments:{lineComment:"#",blockComment:["=begin","=end"]},brackets:[["(",")"],["{","}"],["[","]"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],indentationRules:{increaseIndentPattern:new RegExp("^\\s*((begin|class|(private|protected)\\s+def|def|else|elsif|ensure|for|if|module|rescue|unless|until|when|while|case)|([^#]*\\sdo\\b)|([^#]*=\\s*(case|if|unless)))\\b([^#\\{;]|(\"|'|/).*\\4)*(#.*)?$"),decreaseIndentPattern:new RegExp("^\\s*([}\\]]([,)]?\\s*(#|$)|\\.[a-zA-Z_]\\w*\\b)|(end|rescue|ensure|else|elsif|when)\\b)")}},o={tokenPostfix:".ruby",keywords:["__LINE__","__ENCODING__","__FILE__","BEGIN","END","alias","and","begin","break","case","class","def","defined?","do","else","elsif","end","ensure","for","false","if","in","module","next","nil","not","or","redo","rescue","retry","return","self","super","then","true","undef","unless","until","when","while","yield"],keywordops:["::","..","...","?",":","=>"],builtins:["require","public","private","include","extend","attr_reader","protected","private_class_method","protected_class_method","new"],declarations:["module","class","def","case","do","begin","for","if","while","until","unless"],linedecls:["def","case","do","begin","for","if","while","until","unless"],operators:["^","&","|","<=>","==","===","!~","=~",">",">=","<","<=","<<",">>","+","-","*","/","%","**","~","+@","-@","[]","[]=","`","+=","-=","*=","**=","/=","^=","%=","<<=",">>=","&=","&&=","||=","|="],brackets:[{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"}],symbols:/[=><!~?:&|+\-*\/\^%\.]+/,escape:/(?:[abefnrstv\\"'\n\r]|[0-7]{1,3}|x[0-9A-Fa-f]{1,2}|u[0-9A-Fa-f]{4})/,escapes:/\\(?:C\-(@escape|.)|c(@escape|.)|@escape)/,decpart:/\d(_?\d)*/,decimal:/0|@decpart/,delim:/[^a-zA-Z0-9\s\n\r]/,heredelim:/(?:\w+|'[^']*'|"[^"]*"|`[^`]*`)/,regexpctl:/[(){}\[\]\$\^|\-*+?\.]/,regexpesc:/\\(?:[AzZbBdDfnrstvwWn0\\\/]|@regexpctl|c[A-Z]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4})?/,tokenizer:{root:[[/^(\s*)([a-z_]\w*[!?=]?)/,["white",{cases:{"for|until|while":{token:"keyword.$2",next:"@dodecl.$2"},"@declarations":{token:"keyword.$2",next:"@root.$2"},end:{token:"keyword.$S2",next:"@pop"},"@keywords":"keyword","@builtins":"predefined","@default":"identifier"}}]],[/[a-z_]\w*[!?=]?/,{cases:{"if|unless|while|until":{token:"keyword.$0x",next:"@modifier.$0x"},for:{token:"keyword.$2",next:"@dodecl.$2"},"@linedecls":{token:"keyword.$0",next:"@root.$0"},end:{token:"keyword.$S2",next:"@pop"},"@keywords":"keyword","@builtins":"predefined","@default":"identifier"}}],[/[A-Z][\w]*[!?=]?/,"constructor.identifier"],[/\$[\w]*/,"global.constant"],[/@[\w]*/,"namespace.instance.identifier"],[/@@[\w]*/,"namespace.class.identifier"],[/<<[-~](@heredelim).*/,{token:"string.heredoc.delimiter",next:"@heredoc.$1"}],[/[ \t\r\n]+<<(@heredelim).*/,{token:"string.heredoc.delimiter",next:"@heredoc.$1"}],[/^<<(@heredelim).*/,{token:"string.heredoc.delimiter",next:"@heredoc.$1"}],{include:"@whitespace"},[/"/,{token:"string.d.delim",next:'@dstring.d."'}],[/'/,{token:"string.sq.delim",next:"@sstring.sq"}],[/%([rsqxwW]|Q?)/,{token:"@rematch",next:"pstring"}],[/`/,{token:"string.x.delim",next:"@dstring.x.`"}],[/:(\w|[$@])\w*[!?=]?/,"string.s"],[/:"/,{token:"string.s.delim",next:'@dstring.s."'}],[/:'/,{token:"string.s.delim",next:"@sstring.s"}],[/\/(?=(\\\/|[^\/\n])+\/)/,{token:"regexp.delim",next:"@regexp"}],[/[{}()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@keywordops":"keyword","@operators":"operator","@default":""}}],[/[;,]/,"delimiter"],[/0[xX][0-9a-fA-F](_?[0-9a-fA-F])*/,"number.hex"],[/0[_oO][0-7](_?[0-7])*/,"number.octal"],[/0[bB][01](_?[01])*/,"number.binary"],[/0[dD]@decpart/,"number"],[/@decimal((\.@decpart)?([eE][\-+]?@decpart)?)/,{cases:{$1:"number.float","@default":"number"}}]],dodecl:[[/^/,{token:"",switchTo:"@root.$S2"}],[/[a-z_]\w*[!?=]?/,{cases:{end:{token:"keyword.$S2",next:"@pop"},do:{token:"keyword",switchTo:"@root.$S2"},"@linedecls":{token:"@rematch",switchTo:"@root.$S2"},"@keywords":"keyword","@builtins":"predefined","@default":"identifier"}}],{include:"@root"}],modifier:[[/^/,"","@pop"],[/[a-z_]\w*[!?=]?/,{cases:{end:{token:"keyword.$S2",next:"@pop"},"then|else|elsif|do":{token:"keyword",switchTo:"@root.$S2"},"@linedecls":{token:"@rematch",switchTo:"@root.$S2"},"@keywords":"keyword","@builtins":"predefined","@default":"identifier"}}],{include:"@root"}],sstring:[[/[^\\']+/,"string.$S2"],[/\\\\|\\'|\\$/,"string.$S2.escape"],[/\\./,"string.$S2.invalid"],[/'/,{token:"string.$S2.delim",next:"@pop"}]],dstring:[[/[^\\`"#]+/,"string.$S2"],[/#/,"string.$S2.escape","@interpolated"],[/\\$/,"string.$S2.escape"],[/@escapes/,"string.$S2.escape"],[/\\./,"string.$S2.escape.invalid"],[/[`"]/,{cases:{"$#==$S3":{token:"string.$S2.delim",next:"@pop"},"@default":"string.$S2"}}]],heredoc:[[/^(\s*)(@heredelim)$/,{cases:{"$2==$S2":["string.heredoc",{token:"string.heredoc.delimiter",next:"@pop"}],"@default":["string.heredoc","string.heredoc"]}}],[/.*/,"string.heredoc"]],interpolated:[[/\$\w*/,"global.constant","@pop"],[/@\w*/,"namespace.class.identifier","@pop"],[/@@\w*/,"namespace.instance.identifier","@pop"],[/[{]/,{token:"string.escape.curly",switchTo:"@interpolated_compound"}],["","","@pop"]],interpolated_compound:[[/[}]/,{token:"string.escape.curly",next:"@pop"}],{include:"@root"}],pregexp:[{include:"@whitespace"},[/[^\(\{\[\\]/,{cases:{"$#==$S3":{token:"regexp.delim",next:"@pop"},"$#==$S2":{token:"regexp.delim",next:"@push"},"~[)}\\]]":"@brackets.regexp.escape.control","~@regexpctl":"regexp.escape.control","@default":"regexp"}}],{include:"@regexcontrol"}],regexp:[{include:"@regexcontrol"},[/[^\\\/]/,"regexp"],["/[ixmp]*",{token:"regexp.delim"},"@pop"]],regexcontrol:[[/(\{)(\d+(?:,\d*)?)(\})/,["@brackets.regexp.escape.control","regexp.escape.control","@brackets.regexp.escape.control"]],[/(\[)(\^?)/,["@brackets.regexp.escape.control",{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?[:=!])/,["@brackets.regexp.escape.control","regexp.escape.control"]],[/\(\?#/,{token:"regexp.escape.control",next:"@regexpcomment"}],[/[()]/,"@brackets.regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/\\$/,"regexp.escape"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],[/#/,"regexp.escape","@interpolated"]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/\\$/,"regexp.escape"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,"@brackets.regexp.escape.control","@pop"]],regexpcomment:[[/[^)]+/,"comment"],[/\)/,{token:"regexp.escape.control",next:"@pop"}]],pstring:[[/%([qws])\(/,{token:"string.$1.delim",switchTo:"@qstring.$1.(.)"}],[/%([qws])\[/,{token:"string.$1.delim",switchTo:"@qstring.$1.[.]"}],[/%([qws])\{/,{token:"string.$1.delim",switchTo:"@qstring.$1.{.}"}],[/%([qws])</,{token:"string.$1.delim",switchTo:"@qstring.$1.<.>"}],[/%([qws])(@delim)/,{token:"string.$1.delim",switchTo:"@qstring.$1.$2.$2"}],[/%r\(/,{token:"regexp.delim",switchTo:"@pregexp.(.)"}],[/%r\[/,{token:"regexp.delim",switchTo:"@pregexp.[.]"}],[/%r\{/,{token:"regexp.delim",switchTo:"@pregexp.{.}"}],[/%r</,{token:"regexp.delim",switchTo:"@pregexp.<.>"}],[/%r(@delim)/,{token:"regexp.delim",switchTo:"@pregexp.$1.$1"}],[/%(x|W|Q?)\(/,{token:"string.$1.delim",switchTo:"@qqstring.$1.(.)"}],[/%(x|W|Q?)\[/,{token:"string.$1.delim",switchTo:"@qqstring.$1.[.]"}],[/%(x|W|Q?)\{/,{token:"string.$1.delim",switchTo:"@qqstring.$1.{.}"}],[/%(x|W|Q?)</,{token:"string.$1.delim",switchTo:"@qqstring.$1.<.>"}],[/%(x|W|Q?)(@delim)/,{token:"string.$1.delim",switchTo:"@qqstring.$1.$2.$2"}],[/%([rqwsxW]|Q?)./,{token:"invalid",next:"@pop"}],[/./,{token:"invalid",next:"@pop"}]],qstring:[[/\\$/,"string.$S2.escape"],[/\\./,"string.$S2.escape"],[/./,{cases:{"$#==$S4":{token:"string.$S2.delim",next:"@pop"},"$#==$S3":{token:"string.$S2.delim",next:"@push"},"@default":"string.$S2"}}]],qqstring:[[/#/,"string.$S2.escape","@interpolated"],{include:"@qstring"}],whitespace:[[/[ \t\r\n]+/,""],[/^\s*=begin\b/,"comment","@comment"],[/#.*$/,"comment"]],comment:[[/[^=]+/,"comment"],[/^\s*=begin\b/,"comment.invalid"],[/^\s*=end\b.*/,"comment","@pop"],[/[=]/,"comment"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[86],{487:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return r})),t.d(n,"language",(function(){return o}));var r={comments:{lineComment:"#",blockComment:["=begin","=end"]},brackets:[["(",")"],["{","}"],["[","]"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],indentationRules:{increaseIndentPattern:new RegExp("^\\s*((begin|class|(private|protected)\\s+def|def|else|elsif|ensure|for|if|module|rescue|unless|until|when|while|case)|([^#]*\\sdo\\b)|([^#]*=\\s*(case|if|unless)))\\b([^#\\{;]|(\"|'|/).*\\4)*(#.*)?$"),decreaseIndentPattern:new RegExp("^\\s*([}\\]]([,)]?\\s*(#|$)|\\.[a-zA-Z_]\\w*\\b)|(end|rescue|ensure|else|elsif|when)\\b)")}},o={tokenPostfix:".ruby",keywords:["__LINE__","__ENCODING__","__FILE__","BEGIN","END","alias","and","begin","break","case","class","def","defined?","do","else","elsif","end","ensure","for","false","if","in","module","next","nil","not","or","redo","rescue","retry","return","self","super","then","true","undef","unless","until","when","while","yield"],keywordops:["::","..","...","?",":","=>"],builtins:["require","public","private","include","extend","attr_reader","protected","private_class_method","protected_class_method","new"],declarations:["module","class","def","case","do","begin","for","if","while","until","unless"],linedecls:["def","case","do","begin","for","if","while","until","unless"],operators:["^","&","|","<=>","==","===","!~","=~",">",">=","<","<=","<<",">>","+","-","*","/","%","**","~","+@","-@","[]","[]=","`","+=","-=","*=","**=","/=","^=","%=","<<=",">>=","&=","&&=","||=","|="],brackets:[{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"}],symbols:/[=><!~?:&|+\-*\/\^%\.]+/,escape:/(?:[abefnrstv\\"'\n\r]|[0-7]{1,3}|x[0-9A-Fa-f]{1,2}|u[0-9A-Fa-f]{4})/,escapes:/\\(?:C\-(@escape|.)|c(@escape|.)|@escape)/,decpart:/\d(_?\d)*/,decimal:/0|@decpart/,delim:/[^a-zA-Z0-9\s\n\r]/,heredelim:/(?:\w+|'[^']*'|"[^"]*"|`[^`]*`)/,regexpctl:/[(){}\[\]\$\^|\-*+?\.]/,regexpesc:/\\(?:[AzZbBdDfnrstvwWn0\\\/]|@regexpctl|c[A-Z]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4})?/,tokenizer:{root:[[/^(\s*)([a-z_]\w*[!?=]?)/,["white",{cases:{"for|until|while":{token:"keyword.$2",next:"@dodecl.$2"},"@declarations":{token:"keyword.$2",next:"@root.$2"},end:{token:"keyword.$S2",next:"@pop"},"@keywords":"keyword","@builtins":"predefined","@default":"identifier"}}]],[/[a-z_]\w*[!?=]?/,{cases:{"if|unless|while|until":{token:"keyword.$0x",next:"@modifier.$0x"},for:{token:"keyword.$2",next:"@dodecl.$2"},"@linedecls":{token:"keyword.$0",next:"@root.$0"},end:{token:"keyword.$S2",next:"@pop"},"@keywords":"keyword","@builtins":"predefined","@default":"identifier"}}],[/[A-Z][\w]*[!?=]?/,"constructor.identifier"],[/\$[\w]*/,"global.constant"],[/@[\w]*/,"namespace.instance.identifier"],[/@@[\w]*/,"namespace.class.identifier"],[/<<[-~](@heredelim).*/,{token:"string.heredoc.delimiter",next:"@heredoc.$1"}],[/[ \t\r\n]+<<(@heredelim).*/,{token:"string.heredoc.delimiter",next:"@heredoc.$1"}],[/^<<(@heredelim).*/,{token:"string.heredoc.delimiter",next:"@heredoc.$1"}],{include:"@whitespace"},[/"/,{token:"string.d.delim",next:'@dstring.d."'}],[/'/,{token:"string.sq.delim",next:"@sstring.sq"}],[/%([rsqxwW]|Q?)/,{token:"@rematch",next:"pstring"}],[/`/,{token:"string.x.delim",next:"@dstring.x.`"}],[/:(\w|[$@])\w*[!?=]?/,"string.s"],[/:"/,{token:"string.s.delim",next:'@dstring.s."'}],[/:'/,{token:"string.s.delim",next:"@sstring.s"}],[/\/(?=(\\\/|[^\/\n])+\/)/,{token:"regexp.delim",next:"@regexp"}],[/[{}()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@keywordops":"keyword","@operators":"operator","@default":""}}],[/[;,]/,"delimiter"],[/0[xX][0-9a-fA-F](_?[0-9a-fA-F])*/,"number.hex"],[/0[_oO][0-7](_?[0-7])*/,"number.octal"],[/0[bB][01](_?[01])*/,"number.binary"],[/0[dD]@decpart/,"number"],[/@decimal((\.@decpart)?([eE][\-+]?@decpart)?)/,{cases:{$1:"number.float","@default":"number"}}]],dodecl:[[/^/,{token:"",switchTo:"@root.$S2"}],[/[a-z_]\w*[!?=]?/,{cases:{end:{token:"keyword.$S2",next:"@pop"},do:{token:"keyword",switchTo:"@root.$S2"},"@linedecls":{token:"@rematch",switchTo:"@root.$S2"},"@keywords":"keyword","@builtins":"predefined","@default":"identifier"}}],{include:"@root"}],modifier:[[/^/,"","@pop"],[/[a-z_]\w*[!?=]?/,{cases:{end:{token:"keyword.$S2",next:"@pop"},"then|else|elsif|do":{token:"keyword",switchTo:"@root.$S2"},"@linedecls":{token:"@rematch",switchTo:"@root.$S2"},"@keywords":"keyword","@builtins":"predefined","@default":"identifier"}}],{include:"@root"}],sstring:[[/[^\\']+/,"string.$S2"],[/\\\\|\\'|\\$/,"string.$S2.escape"],[/\\./,"string.$S2.invalid"],[/'/,{token:"string.$S2.delim",next:"@pop"}]],dstring:[[/[^\\`"#]+/,"string.$S2"],[/#/,"string.$S2.escape","@interpolated"],[/\\$/,"string.$S2.escape"],[/@escapes/,"string.$S2.escape"],[/\\./,"string.$S2.escape.invalid"],[/[`"]/,{cases:{"$#==$S3":{token:"string.$S2.delim",next:"@pop"},"@default":"string.$S2"}}]],heredoc:[[/^(\s*)(@heredelim)$/,{cases:{"$2==$S2":["string.heredoc",{token:"string.heredoc.delimiter",next:"@pop"}],"@default":["string.heredoc","string.heredoc"]}}],[/.*/,"string.heredoc"]],interpolated:[[/\$\w*/,"global.constant","@pop"],[/@\w*/,"namespace.class.identifier","@pop"],[/@@\w*/,"namespace.instance.identifier","@pop"],[/[{]/,{token:"string.escape.curly",switchTo:"@interpolated_compound"}],["","","@pop"]],interpolated_compound:[[/[}]/,{token:"string.escape.curly",next:"@pop"}],{include:"@root"}],pregexp:[{include:"@whitespace"},[/[^\(\{\[\\]/,{cases:{"$#==$S3":{token:"regexp.delim",next:"@pop"},"$#==$S2":{token:"regexp.delim",next:"@push"},"~[)}\\]]":"@brackets.regexp.escape.control","~@regexpctl":"regexp.escape.control","@default":"regexp"}}],{include:"@regexcontrol"}],regexp:[{include:"@regexcontrol"},[/[^\\\/]/,"regexp"],["/[ixmp]*",{token:"regexp.delim"},"@pop"]],regexcontrol:[[/(\{)(\d+(?:,\d*)?)(\})/,["@brackets.regexp.escape.control","regexp.escape.control","@brackets.regexp.escape.control"]],[/(\[)(\^?)/,["@brackets.regexp.escape.control",{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?[:=!])/,["@brackets.regexp.escape.control","regexp.escape.control"]],[/\(\?#/,{token:"regexp.escape.control",next:"@regexpcomment"}],[/[()]/,"@brackets.regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/\\$/,"regexp.escape"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],[/#/,"regexp.escape","@interpolated"]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/\\$/,"regexp.escape"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,"@brackets.regexp.escape.control","@pop"]],regexpcomment:[[/[^)]+/,"comment"],[/\)/,{token:"regexp.escape.control",next:"@pop"}]],pstring:[[/%([qws])\(/,{token:"string.$1.delim",switchTo:"@qstring.$1.(.)"}],[/%([qws])\[/,{token:"string.$1.delim",switchTo:"@qstring.$1.[.]"}],[/%([qws])\{/,{token:"string.$1.delim",switchTo:"@qstring.$1.{.}"}],[/%([qws])</,{token:"string.$1.delim",switchTo:"@qstring.$1.<.>"}],[/%([qws])(@delim)/,{token:"string.$1.delim",switchTo:"@qstring.$1.$2.$2"}],[/%r\(/,{token:"regexp.delim",switchTo:"@pregexp.(.)"}],[/%r\[/,{token:"regexp.delim",switchTo:"@pregexp.[.]"}],[/%r\{/,{token:"regexp.delim",switchTo:"@pregexp.{.}"}],[/%r</,{token:"regexp.delim",switchTo:"@pregexp.<.>"}],[/%r(@delim)/,{token:"regexp.delim",switchTo:"@pregexp.$1.$1"}],[/%(x|W|Q?)\(/,{token:"string.$1.delim",switchTo:"@qqstring.$1.(.)"}],[/%(x|W|Q?)\[/,{token:"string.$1.delim",switchTo:"@qqstring.$1.[.]"}],[/%(x|W|Q?)\{/,{token:"string.$1.delim",switchTo:"@qqstring.$1.{.}"}],[/%(x|W|Q?)</,{token:"string.$1.delim",switchTo:"@qqstring.$1.<.>"}],[/%(x|W|Q?)(@delim)/,{token:"string.$1.delim",switchTo:"@qqstring.$1.$2.$2"}],[/%([rqwsxW]|Q?)./,{token:"invalid",next:"@pop"}],[/./,{token:"invalid",next:"@pop"}]],qstring:[[/\\$/,"string.$S2.escape"],[/\\./,"string.$S2.escape"],[/./,{cases:{"$#==$S4":{token:"string.$S2.delim",next:"@pop"},"$#==$S3":{token:"string.$S2.delim",next:"@push"},"@default":"string.$S2"}}]],qqstring:[[/#/,"string.$S2.escape","@interpolated"],{include:"@qstring"}],whitespace:[[/[ \t\r\n]+/,""],[/^\s*=begin\b/,"comment","@comment"],[/#.*$/,"comment"]],comment:[[/[^=]+/,"comment"],[/^\s*=begin\b/,"comment.invalid"],[/^\s*=end\b.*/,"comment","@pop"],[/[=]/,"comment"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/86.738980af.js b/docs/src/.vuepress/dist/assets/js/87.bfe73996.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/86.738980af.js rename to docs/src/.vuepress/dist/assets/js/87.bfe73996.js index 58134766..2e567dc4 100644 --- a/docs/src/.vuepress/dist/assets/js/86.738980af.js +++ b/docs/src/.vuepress/dist/assets/js/87.bfe73996.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[86],{488:function(e,t,o){"use strict";o.r(t),o.d(t,"conf",(function(){return n})),o.d(t,"language",(function(){return s}));var n={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"[",close:"]"},{open:"{",close:"}"},{open:"(",close:")"},{open:"'",close:"'",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*#pragma\\s+region\\b"),end:new RegExp("^\\s*#pragma\\s+endregion\\b")}}},s={tokenPostfix:".rust",defaultToken:"invalid",keywords:["as","box","break","const","continue","crate","else","enum","extern","false","fn","for","if","impl","in","let","loop","match","mod","move","mut","pub","ref","return","self","static","struct","super","trait","true","type","unsafe","use","where","while","catch","default","union","static","abstract","alignof","become","do","final","macro","offsetof","override","priv","proc","pure","sizeof","typeof","unsized","virtual","yield"],typeKeywords:["Self","m32","m64","m128","f80","f16","f128","int","uint","float","char","bool","u8","u16","u32","u64","f32","f64","i8","i16","i32","i64","str","Option","Either","c_float","c_double","c_void","FILE","fpos_t","DIR","dirent","c_char","c_schar","c_uchar","c_short","c_ushort","c_int","c_uint","c_long","c_ulong","size_t","ptrdiff_t","clock_t","time_t","c_longlong","c_ulonglong","intptr_t","uintptr_t","off_t","dev_t","ino_t","pid_t","mode_t","ssize_t"],constants:["true","false","Some","None","Left","Right","Ok","Err"],supportConstants:["EXIT_FAILURE","EXIT_SUCCESS","RAND_MAX","EOF","SEEK_SET","SEEK_CUR","SEEK_END","_IOFBF","_IONBF","_IOLBF","BUFSIZ","FOPEN_MAX","FILENAME_MAX","L_tmpnam","TMP_MAX","O_RDONLY","O_WRONLY","O_RDWR","O_APPEND","O_CREAT","O_EXCL","O_TRUNC","S_IFIFO","S_IFCHR","S_IFBLK","S_IFDIR","S_IFREG","S_IFMT","S_IEXEC","S_IWRITE","S_IREAD","S_IRWXU","S_IXUSR","S_IWUSR","S_IRUSR","F_OK","R_OK","W_OK","X_OK","STDIN_FILENO","STDOUT_FILENO","STDERR_FILENO"],supportMacros:["format!","print!","println!","panic!","format_args!","unreachable!","write!","writeln!"],operators:["!","!=","%","%=","&","&=","&&","*","*=","+","+=","-","-=","->",".","..","...","/","/=",":",";","<<","<<=","<","<=","=","==","=>",">",">=",">>",">>=","@","^","^=","|","|=","||","_","?","#"],escapes:/\\([nrt0\"''\\]|x\h{2}|u\{\h{1,6}\})/,delimiters:/[,]/,symbols:/[\#\!\%\&\*\+\-\.\/\:\;\<\=\>\@\^\|_\?]+/,intSuffixes:/[iu](8|16|32|64|128|size)/,floatSuffixes:/f(32|64)/,tokenizer:{root:[[/[a-zA-Z][a-zA-Z0-9_]*!?|_[a-zA-Z0-9_]+/,{cases:{"@typeKeywords":"keyword.type","@keywords":"keyword","@supportConstants":"keyword","@supportMacros":"keyword","@constants":"keyword","@default":"identifier"}}],[/\$/,"identifier"],[/'[a-zA-Z_][a-zA-Z0-9_]*(?=[^\'])/,"identifier"],[/'\S'/,"string.byteliteral"],[/"/,{token:"string.quote",bracket:"@open",next:"@string"}],{include:"@numbers"},{include:"@whitespace"},[/@delimiters/,{cases:{"@keywords":"keyword","@default":"delimiter"}}],[/[{}()\[\]<>]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":""}}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\/\*/,"comment","@push"],["\\*/","comment","@pop"],[/[\/*]/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",bracket:"@close",next:"@pop"}]],numbers:[[/(0o[0-7_]+)(@intSuffixes)?/,{token:"number"}],[/(0b[0-1_]+)(@intSuffixes)?/,{token:"number"}],[/[\d][\d_]*(\.[\d][\d_]*)?[eE][+-][\d_]+(@floatSuffixes)?/,{token:"number"}],[/\b(\d\.?[\d_]*)(@floatSuffixes)?\b/,{token:"number"}],[/(0x[\da-fA-F]+)_?(@intSuffixes)?/,{token:"number"}],[/[\d][\d_]*(@intSuffixes?)?/,{token:"number"}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[87],{488:function(e,t,o){"use strict";o.r(t),o.d(t,"conf",(function(){return n})),o.d(t,"language",(function(){return s}));var n={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"[",close:"]"},{open:"{",close:"}"},{open:"(",close:")"},{open:"'",close:"'",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*#pragma\\s+region\\b"),end:new RegExp("^\\s*#pragma\\s+endregion\\b")}}},s={tokenPostfix:".rust",defaultToken:"invalid",keywords:["as","box","break","const","continue","crate","else","enum","extern","false","fn","for","if","impl","in","let","loop","match","mod","move","mut","pub","ref","return","self","static","struct","super","trait","true","type","unsafe","use","where","while","catch","default","union","static","abstract","alignof","become","do","final","macro","offsetof","override","priv","proc","pure","sizeof","typeof","unsized","virtual","yield"],typeKeywords:["Self","m32","m64","m128","f80","f16","f128","int","uint","float","char","bool","u8","u16","u32","u64","f32","f64","i8","i16","i32","i64","str","Option","Either","c_float","c_double","c_void","FILE","fpos_t","DIR","dirent","c_char","c_schar","c_uchar","c_short","c_ushort","c_int","c_uint","c_long","c_ulong","size_t","ptrdiff_t","clock_t","time_t","c_longlong","c_ulonglong","intptr_t","uintptr_t","off_t","dev_t","ino_t","pid_t","mode_t","ssize_t"],constants:["true","false","Some","None","Left","Right","Ok","Err"],supportConstants:["EXIT_FAILURE","EXIT_SUCCESS","RAND_MAX","EOF","SEEK_SET","SEEK_CUR","SEEK_END","_IOFBF","_IONBF","_IOLBF","BUFSIZ","FOPEN_MAX","FILENAME_MAX","L_tmpnam","TMP_MAX","O_RDONLY","O_WRONLY","O_RDWR","O_APPEND","O_CREAT","O_EXCL","O_TRUNC","S_IFIFO","S_IFCHR","S_IFBLK","S_IFDIR","S_IFREG","S_IFMT","S_IEXEC","S_IWRITE","S_IREAD","S_IRWXU","S_IXUSR","S_IWUSR","S_IRUSR","F_OK","R_OK","W_OK","X_OK","STDIN_FILENO","STDOUT_FILENO","STDERR_FILENO"],supportMacros:["format!","print!","println!","panic!","format_args!","unreachable!","write!","writeln!"],operators:["!","!=","%","%=","&","&=","&&","*","*=","+","+=","-","-=","->",".","..","...","/","/=",":",";","<<","<<=","<","<=","=","==","=>",">",">=",">>",">>=","@","^","^=","|","|=","||","_","?","#"],escapes:/\\([nrt0\"''\\]|x\h{2}|u\{\h{1,6}\})/,delimiters:/[,]/,symbols:/[\#\!\%\&\*\+\-\.\/\:\;\<\=\>\@\^\|_\?]+/,intSuffixes:/[iu](8|16|32|64|128|size)/,floatSuffixes:/f(32|64)/,tokenizer:{root:[[/[a-zA-Z][a-zA-Z0-9_]*!?|_[a-zA-Z0-9_]+/,{cases:{"@typeKeywords":"keyword.type","@keywords":"keyword","@supportConstants":"keyword","@supportMacros":"keyword","@constants":"keyword","@default":"identifier"}}],[/\$/,"identifier"],[/'[a-zA-Z_][a-zA-Z0-9_]*(?=[^\'])/,"identifier"],[/'\S'/,"string.byteliteral"],[/"/,{token:"string.quote",bracket:"@open",next:"@string"}],{include:"@numbers"},{include:"@whitespace"},[/@delimiters/,{cases:{"@keywords":"keyword","@default":"delimiter"}}],[/[{}()\[\]<>]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":""}}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\/\*/,"comment","@push"],["\\*/","comment","@pop"],[/[\/*]/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",bracket:"@close",next:"@pop"}]],numbers:[[/(0o[0-7_]+)(@intSuffixes)?/,{token:"number"}],[/(0b[0-1_]+)(@intSuffixes)?/,{token:"number"}],[/[\d][\d_]*(\.[\d][\d_]*)?[eE][+-][\d_]+(@floatSuffixes)?/,{token:"number"}],[/\b(\d\.?[\d_]*)(@floatSuffixes)?\b/,{token:"number"}],[/(0x[\da-fA-F]+)_?(@intSuffixes)?/,{token:"number"}],[/[\d][\d_]*(@intSuffixes?)?/,{token:"number"}]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/87.cb11fecb.js b/docs/src/.vuepress/dist/assets/js/88.32bc25e1.js similarity index 96% rename from docs/src/.vuepress/dist/assets/js/87.cb11fecb.js rename to docs/src/.vuepress/dist/assets/js/88.32bc25e1.js index 2ee635a1..ac773e46 100644 --- a/docs/src/.vuepress/dist/assets/js/87.cb11fecb.js +++ b/docs/src/.vuepress/dist/assets/js/88.32bc25e1.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[87],{489:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",(function(){return t})),o.d(n,"language",(function(){return r}));var t={comments:{lineComment:"'"},brackets:[["(",")"],["[","]"],["If","EndIf"],["While","EndWhile"],["For","EndFor"],["Sub","EndSub"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]}]},r={defaultToken:"",tokenPostfix:".sb",ignoreCase:!0,brackets:[{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"keyword.tag-if",open:"If",close:"EndIf"},{token:"keyword.tag-while",open:"While",close:"EndWhile"},{token:"keyword.tag-for",open:"For",close:"EndFor"},{token:"keyword.tag-sub",open:"Sub",close:"EndSub"}],keywords:["Else","ElseIf","EndFor","EndIf","EndSub","EndWhile","For","Goto","If","Step","Sub","Then","To","While"],tagwords:["If","Sub","While","For"],operators:[">","<","<>","<=",">=","And","Or","+","-","*","/","="],identifier:/[a-zA-Z_][\w]*/,symbols:/[=><:+\-*\/%\.,]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[{include:"@whitespace"},[/(@identifier)(?=[.])/,"type"],[/@identifier/,{cases:{"@keywords":{token:"keyword.$0"},"@operators":"operator","@default":"variable.name"}}],[/([.])(@identifier)/,{cases:{$2:["delimiter","type.member"],"@default":""}}],[/\d*\.\d+/,"number.float"],[/\d+/,"number"],[/[()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":"delimiter"}}],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"]],whitespace:[[/[ \t\r\n]+/,""],[/(\').*$/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"C?/,"string","@pop"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[88],{489:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",(function(){return t})),o.d(n,"language",(function(){return r}));var t={comments:{lineComment:"'"},brackets:[["(",")"],["[","]"],["If","EndIf"],["While","EndWhile"],["For","EndFor"],["Sub","EndSub"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]}]},r={defaultToken:"",tokenPostfix:".sb",ignoreCase:!0,brackets:[{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"keyword.tag-if",open:"If",close:"EndIf"},{token:"keyword.tag-while",open:"While",close:"EndWhile"},{token:"keyword.tag-for",open:"For",close:"EndFor"},{token:"keyword.tag-sub",open:"Sub",close:"EndSub"}],keywords:["Else","ElseIf","EndFor","EndIf","EndSub","EndWhile","For","Goto","If","Step","Sub","Then","To","While"],tagwords:["If","Sub","While","For"],operators:[">","<","<>","<=",">=","And","Or","+","-","*","/","="],identifier:/[a-zA-Z_][\w]*/,symbols:/[=><:+\-*\/%\.,]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[{include:"@whitespace"},[/(@identifier)(?=[.])/,"type"],[/@identifier/,{cases:{"@keywords":{token:"keyword.$0"},"@operators":"operator","@default":"variable.name"}}],[/([.])(@identifier)/,{cases:{$2:["delimiter","type.member"],"@default":""}}],[/\d*\.\d+/,"number.float"],[/\d+/,"number"],[/[()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":"delimiter"}}],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"]],whitespace:[[/[ \t\r\n]+/,""],[/(\').*$/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"C?/,"string","@pop"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/88.91b8b30b.js b/docs/src/.vuepress/dist/assets/js/89.9280160b.js similarity index 96% rename from docs/src/.vuepress/dist/assets/js/88.91b8b30b.js rename to docs/src/.vuepress/dist/assets/js/89.9280160b.js index d622444d..6e310684 100644 --- a/docs/src/.vuepress/dist/assets/js/88.91b8b30b.js +++ b/docs/src/.vuepress/dist/assets/js/89.9280160b.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[88],{490:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",(function(){return t})),o.d(n,"language",(function(){return s}));var t={comments:{lineComment:";",blockComment:["#|","|#"]},brackets:[["(",")"],["{","}"],["[","]"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}]},s={defaultToken:"",ignoreCase:!0,tokenPostfix:".scheme",brackets:[{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"}],keywords:["case","do","let","loop","if","else","when","cons","car","cdr","cond","lambda","lambda*","syntax-rules","format","set!","quote","eval","append","list","list?","member?","load"],constants:["#t","#f"],operators:["eq?","eqv?","equal?","and","or","not","null?"],tokenizer:{root:[[/#[xXoObB][0-9a-fA-F]+/,"number.hex"],[/[+-]?\d+(?:(?:\.\d*)?(?:[eE][+-]?\d+)?)?/,"number.float"],[/(?:\b(?:(define|define-syntax|define-macro))\b)(\s+)((?:\w|\-|\!|\?)*)/,["keyword","white","variable"]],{include:"@whitespace"},{include:"@strings"},[/[a-zA-Z_#][a-zA-Z0-9_\-\?\!\*]*/,{cases:{"@keywords":"keyword","@constants":"constant","@operators":"operators","@default":"identifier"}}]],comment:[[/[^\|#]+/,"comment"],[/#\|/,"comment","@push"],[/\|#/,"comment","@pop"],[/[\|#]/,"comment"]],whitespace:[[/[ \t\r\n]+/,"white"],[/#\|/,"comment","@comment"],[/;.*$/,"comment"]],strings:[[/"$/,"string","@popall"],[/"(?=.)/,"string","@multiLineString"]],multiLineString:[[/[^\\"]+$/,"string","@popall"],[/[^\\"]+/,"string"],[/\\./,"string.escape"],[/"/,"string","@popall"],[/\\$/,"string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[89],{490:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",(function(){return t})),o.d(n,"language",(function(){return s}));var t={comments:{lineComment:";",blockComment:["#|","|#"]},brackets:[["(",")"],["{","}"],["[","]"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}]},s={defaultToken:"",ignoreCase:!0,tokenPostfix:".scheme",brackets:[{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"}],keywords:["case","do","let","loop","if","else","when","cons","car","cdr","cond","lambda","lambda*","syntax-rules","format","set!","quote","eval","append","list","list?","member?","load"],constants:["#t","#f"],operators:["eq?","eqv?","equal?","and","or","not","null?"],tokenizer:{root:[[/#[xXoObB][0-9a-fA-F]+/,"number.hex"],[/[+-]?\d+(?:(?:\.\d*)?(?:[eE][+-]?\d+)?)?/,"number.float"],[/(?:\b(?:(define|define-syntax|define-macro))\b)(\s+)((?:\w|\-|\!|\?)*)/,["keyword","white","variable"]],{include:"@whitespace"},{include:"@strings"},[/[a-zA-Z_#][a-zA-Z0-9_\-\?\!\*]*/,{cases:{"@keywords":"keyword","@constants":"constant","@operators":"operators","@default":"identifier"}}]],comment:[[/[^\|#]+/,"comment"],[/#\|/,"comment","@push"],[/\|#/,"comment","@pop"],[/[\|#]/,"comment"]],whitespace:[[/[ \t\r\n]+/,"white"],[/#\|/,"comment","@comment"],[/;.*$/,"comment"]],strings:[[/"$/,"string","@popall"],[/"(?=.)/,"string","@multiLineString"]],multiLineString:[[/[^\\"]+$/,"string","@popall"],[/[^\\"]+/,"string"],[/\\./,"string.escape"],[/"/,"string","@popall"],[/\\$/,"string"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/89.b277329c.js b/docs/src/.vuepress/dist/assets/js/90.d6e97ecf.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/89.b277329c.js rename to docs/src/.vuepress/dist/assets/js/90.d6e97ecf.js index 0d78dfbe..b13eab0e 100644 --- a/docs/src/.vuepress/dist/assets/js/89.b277329c.js +++ b/docs/src/.vuepress/dist/assets/js/90.d6e97ecf.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[89],{491:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return o})),n.d(t,"language",(function(){return i}));var o={wordPattern:/(#?-?\d*\.\d\w*%?)|([@$#!.:]?[\w-?]+%?)|[@#!.]/g,comments:{blockComment:["/*","*/"],lineComment:"//"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/"),end:new RegExp("^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/")}}},i={defaultToken:"",tokenPostfix:".scss",ws:"[ \t\n\r\f]*",identifier:"-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],tokenizer:{root:[{include:"@selector"}],selector:[{include:"@comments"},{include:"@import"},{include:"@variabledeclaration"},{include:"@warndebug"},["[@](include)",{token:"keyword",next:"@includedeclaration"}],["[@](keyframes|-webkit-keyframes|-moz-keyframes|-o-keyframes)",{token:"keyword",next:"@keyframedeclaration"}],["[@](page|content|font-face|-moz-document)",{token:"keyword"}],["[@](charset|namespace)",{token:"keyword",next:"@declarationbody"}],["[@](function)",{token:"keyword",next:"@functiondeclaration"}],["[@](mixin)",{token:"keyword",next:"@mixindeclaration"}],["url(\\-prefix)?\\(",{token:"meta",next:"@urldeclaration"}],{include:"@controlstatement"},{include:"@selectorname"},["[&\\*]","tag"],["[>\\+,]","delimiter"],["\\[",{token:"delimiter.bracket",next:"@selectorattribute"}],["{",{token:"delimiter.curly",next:"@selectorbody"}]],selectorbody:[["[*_]?@identifier@ws:(?=(\\s|\\d|[^{;}]*[;}]))","attribute.name","@rulevalue"],{include:"@selector"},["[@](extend)",{token:"keyword",next:"@extendbody"}],["[@](return)",{token:"keyword",next:"@declarationbody"}],["}",{token:"delimiter.curly",next:"@pop"}]],selectorname:[["#{",{token:"meta",next:"@variableinterpolation"}],["(\\.|#(?=[^{])|%|(@identifier)|:)+","tag"]],selectorattribute:[{include:"@term"},["]",{token:"delimiter.bracket",next:"@pop"}]],term:[{include:"@comments"},["url(\\-prefix)?\\(",{token:"meta",next:"@urldeclaration"}],{include:"@functioninvocation"},{include:"@numbers"},{include:"@strings"},{include:"@variablereference"},["(and\\b|or\\b|not\\b)","operator"],{include:"@name"},["([<>=\\+\\-\\*\\/\\^\\|\\~,])","operator"],[",","delimiter"],["!default","literal"],["\\(",{token:"delimiter.parenthesis",next:"@parenthizedterm"}]],rulevalue:[{include:"@term"},["!important","literal"],[";","delimiter","@pop"],["{",{token:"delimiter.curly",switchTo:"@nestedproperty"}],["(?=})",{token:"",next:"@pop"}]],nestedproperty:[["[*_]?@identifier@ws:","attribute.name","@rulevalue"],{include:"@comments"},["}",{token:"delimiter.curly",next:"@pop"}]],warndebug:[["[@](warn|debug)",{token:"keyword",next:"@declarationbody"}]],import:[["[@](import)",{token:"keyword",next:"@declarationbody"}]],variabledeclaration:[["\\$@identifier@ws:","variable.decl","@declarationbody"]],urldeclaration:[{include:"@strings"},["[^)\r\n]+","string"],["\\)",{token:"meta",next:"@pop"}]],parenthizedterm:[{include:"@term"},["\\)",{token:"delimiter.parenthesis",next:"@pop"}]],declarationbody:[{include:"@term"},[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],extendbody:[{include:"@selectorname"},["!optional","literal"],[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],variablereference:[["\\$@identifier","variable.ref"],["\\.\\.\\.","operator"],["#{",{token:"meta",next:"@variableinterpolation"}]],variableinterpolation:[{include:"@variablereference"},["}",{token:"meta",next:"@pop"}]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],name:[["@identifier","attribute.value"]],numbers:[["(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?",{token:"number",next:"@units"}],["#[0-9a-fA-F_]+(?!\\w)","number.hex"]],units:[["(em|ex|ch|rem|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?","number","@pop"]],functiondeclaration:[["@identifier@ws\\(",{token:"meta",next:"@parameterdeclaration"}],["{",{token:"delimiter.curly",switchTo:"@functionbody"}]],mixindeclaration:[["@identifier@ws\\(",{token:"meta",next:"@parameterdeclaration"}],["@identifier","meta"],["{",{token:"delimiter.curly",switchTo:"@selectorbody"}]],parameterdeclaration:[["\\$@identifier@ws:","variable.decl"],["\\.\\.\\.","operator"],[",","delimiter"],{include:"@term"},["\\)",{token:"meta",next:"@pop"}]],includedeclaration:[{include:"@functioninvocation"},["@identifier","meta"],[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}],["{",{token:"delimiter.curly",switchTo:"@selectorbody"}]],keyframedeclaration:[["@identifier","meta"],["{",{token:"delimiter.curly",switchTo:"@keyframebody"}]],keyframebody:[{include:"@term"},["{",{token:"delimiter.curly",next:"@selectorbody"}],["}",{token:"delimiter.curly",next:"@pop"}]],controlstatement:[["[@](if|else|for|while|each|media)",{token:"keyword.flow",next:"@controlstatementdeclaration"}]],controlstatementdeclaration:[["(in|from|through|if|to)\\b",{token:"keyword.flow"}],{include:"@term"},["{",{token:"delimiter.curly",switchTo:"@selectorbody"}]],functionbody:[["[@](return)",{token:"keyword"}],{include:"@variabledeclaration"},{include:"@term"},{include:"@controlstatement"},[";","delimiter"],["}",{token:"delimiter.curly",next:"@pop"}]],functioninvocation:[["@identifier\\(",{token:"meta",next:"@functionarguments"}]],functionarguments:[["\\$@identifier@ws:","attribute.name"],["[,]","delimiter"],{include:"@term"},["\\)",{token:"meta",next:"@pop"}]],strings:[['~?"',{token:"string.delimiter",next:"@stringenddoublequote"}],["~?'",{token:"string.delimiter",next:"@stringendquote"}]],stringenddoublequote:[["\\\\.","string"],['"',{token:"string.delimiter",next:"@pop"}],[".","string"]],stringendquote:[["\\\\.","string"],["'",{token:"string.delimiter",next:"@pop"}],[".","string"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[90],{491:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return o})),n.d(t,"language",(function(){return i}));var o={wordPattern:/(#?-?\d*\.\d\w*%?)|([@$#!.:]?[\w-?]+%?)|[@#!.]/g,comments:{blockComment:["/*","*/"],lineComment:"//"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/"),end:new RegExp("^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/")}}},i={defaultToken:"",tokenPostfix:".scss",ws:"[ \t\n\r\f]*",identifier:"-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],tokenizer:{root:[{include:"@selector"}],selector:[{include:"@comments"},{include:"@import"},{include:"@variabledeclaration"},{include:"@warndebug"},["[@](include)",{token:"keyword",next:"@includedeclaration"}],["[@](keyframes|-webkit-keyframes|-moz-keyframes|-o-keyframes)",{token:"keyword",next:"@keyframedeclaration"}],["[@](page|content|font-face|-moz-document)",{token:"keyword"}],["[@](charset|namespace)",{token:"keyword",next:"@declarationbody"}],["[@](function)",{token:"keyword",next:"@functiondeclaration"}],["[@](mixin)",{token:"keyword",next:"@mixindeclaration"}],["url(\\-prefix)?\\(",{token:"meta",next:"@urldeclaration"}],{include:"@controlstatement"},{include:"@selectorname"},["[&\\*]","tag"],["[>\\+,]","delimiter"],["\\[",{token:"delimiter.bracket",next:"@selectorattribute"}],["{",{token:"delimiter.curly",next:"@selectorbody"}]],selectorbody:[["[*_]?@identifier@ws:(?=(\\s|\\d|[^{;}]*[;}]))","attribute.name","@rulevalue"],{include:"@selector"},["[@](extend)",{token:"keyword",next:"@extendbody"}],["[@](return)",{token:"keyword",next:"@declarationbody"}],["}",{token:"delimiter.curly",next:"@pop"}]],selectorname:[["#{",{token:"meta",next:"@variableinterpolation"}],["(\\.|#(?=[^{])|%|(@identifier)|:)+","tag"]],selectorattribute:[{include:"@term"},["]",{token:"delimiter.bracket",next:"@pop"}]],term:[{include:"@comments"},["url(\\-prefix)?\\(",{token:"meta",next:"@urldeclaration"}],{include:"@functioninvocation"},{include:"@numbers"},{include:"@strings"},{include:"@variablereference"},["(and\\b|or\\b|not\\b)","operator"],{include:"@name"},["([<>=\\+\\-\\*\\/\\^\\|\\~,])","operator"],[",","delimiter"],["!default","literal"],["\\(",{token:"delimiter.parenthesis",next:"@parenthizedterm"}]],rulevalue:[{include:"@term"},["!important","literal"],[";","delimiter","@pop"],["{",{token:"delimiter.curly",switchTo:"@nestedproperty"}],["(?=})",{token:"",next:"@pop"}]],nestedproperty:[["[*_]?@identifier@ws:","attribute.name","@rulevalue"],{include:"@comments"},["}",{token:"delimiter.curly",next:"@pop"}]],warndebug:[["[@](warn|debug)",{token:"keyword",next:"@declarationbody"}]],import:[["[@](import)",{token:"keyword",next:"@declarationbody"}]],variabledeclaration:[["\\$@identifier@ws:","variable.decl","@declarationbody"]],urldeclaration:[{include:"@strings"},["[^)\r\n]+","string"],["\\)",{token:"meta",next:"@pop"}]],parenthizedterm:[{include:"@term"},["\\)",{token:"delimiter.parenthesis",next:"@pop"}]],declarationbody:[{include:"@term"},[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],extendbody:[{include:"@selectorname"},["!optional","literal"],[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],variablereference:[["\\$@identifier","variable.ref"],["\\.\\.\\.","operator"],["#{",{token:"meta",next:"@variableinterpolation"}]],variableinterpolation:[{include:"@variablereference"},["}",{token:"meta",next:"@pop"}]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],name:[["@identifier","attribute.value"]],numbers:[["(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?",{token:"number",next:"@units"}],["#[0-9a-fA-F_]+(?!\\w)","number.hex"]],units:[["(em|ex|ch|rem|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?","number","@pop"]],functiondeclaration:[["@identifier@ws\\(",{token:"meta",next:"@parameterdeclaration"}],["{",{token:"delimiter.curly",switchTo:"@functionbody"}]],mixindeclaration:[["@identifier@ws\\(",{token:"meta",next:"@parameterdeclaration"}],["@identifier","meta"],["{",{token:"delimiter.curly",switchTo:"@selectorbody"}]],parameterdeclaration:[["\\$@identifier@ws:","variable.decl"],["\\.\\.\\.","operator"],[",","delimiter"],{include:"@term"},["\\)",{token:"meta",next:"@pop"}]],includedeclaration:[{include:"@functioninvocation"},["@identifier","meta"],[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}],["{",{token:"delimiter.curly",switchTo:"@selectorbody"}]],keyframedeclaration:[["@identifier","meta"],["{",{token:"delimiter.curly",switchTo:"@keyframebody"}]],keyframebody:[{include:"@term"},["{",{token:"delimiter.curly",next:"@selectorbody"}],["}",{token:"delimiter.curly",next:"@pop"}]],controlstatement:[["[@](if|else|for|while|each|media)",{token:"keyword.flow",next:"@controlstatementdeclaration"}]],controlstatementdeclaration:[["(in|from|through|if|to)\\b",{token:"keyword.flow"}],{include:"@term"},["{",{token:"delimiter.curly",switchTo:"@selectorbody"}]],functionbody:[["[@](return)",{token:"keyword"}],{include:"@variabledeclaration"},{include:"@term"},{include:"@controlstatement"},[";","delimiter"],["}",{token:"delimiter.curly",next:"@pop"}]],functioninvocation:[["@identifier\\(",{token:"meta",next:"@functionarguments"}]],functionarguments:[["\\$@identifier@ws:","attribute.name"],["[,]","delimiter"],{include:"@term"},["\\)",{token:"meta",next:"@pop"}]],strings:[['~?"',{token:"string.delimiter",next:"@stringenddoublequote"}],["~?'",{token:"string.delimiter",next:"@stringendquote"}]],stringenddoublequote:[["\\\\.","string"],['"',{token:"string.delimiter",next:"@pop"}],[".","string"]],stringendquote:[["\\\\.","string"],["'",{token:"string.delimiter",next:"@pop"}],[".","string"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/90.82770f13.js b/docs/src/.vuepress/dist/assets/js/91.a90d8bb7.js similarity index 97% rename from docs/src/.vuepress/dist/assets/js/90.82770f13.js rename to docs/src/.vuepress/dist/assets/js/91.a90d8bb7.js index 458a87af..6725c59c 100644 --- a/docs/src/.vuepress/dist/assets/js/90.82770f13.js +++ b/docs/src/.vuepress/dist/assets/js/91.a90d8bb7.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[90],{492:function(e,r,o){"use strict";o.r(r),o.d(r,"conf",(function(){return i})),o.d(r,"language",(function(){return t}));var i={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}]},t={defaultToken:"",ignoreCase:!0,tokenPostfix:".shell",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["if","then","do","else","elif","while","until","for","in","esac","fi","fin","fil","done","exit","set","unset","export","function"],builtins:["ab","awk","bash","beep","cat","cc","cd","chown","chmod","chroot","clear","cp","curl","cut","diff","echo","find","gawk","gcc","get","git","grep","hg","kill","killall","ln","ls","make","mkdir","openssl","mv","nc","node","npm","ping","ps","restart","rm","rmdir","sed","service","sh","shopt","shred","source","sort","sleep","ssh","start","stop","su","sudo","svn","tee","telnet","top","touch","vi","vim","wall","wc","wget","who","write","yes","zsh"],symbols:/[=><!~?&|+\-*\/\^;\.,]+/,tokenizer:{root:[{include:"@whitespace"},[/[a-zA-Z]\w*/,{cases:{"@keywords":"keyword","@builtins":"type.identifier","@default":""}}],{include:"@strings"},{include:"@parameters"},{include:"@heredoc"},[/[{}\[\]()]/,"@brackets"],[/-+\w+/,"attribute.name"],[/@symbols/,"delimiter"],{include:"@numbers"},[/[,;]/,"delimiter"]],whitespace:[[/\s+/,"white"],[/(^#!.*$)/,"metatag"],[/(^#.*$)/,"comment"]],numbers:[[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+/,"number"]],strings:[[/'/,"string","@stringBody"],[/"/,"string","@dblStringBody"]],stringBody:[[/'/,"string","@popall"],[/./,"string"]],dblStringBody:[[/"/,"string","@popall"],[/./,"string"]],heredoc:[[/(<<[-<]?)(\s*)(['"`]?)([\w\-]+)(['"`]?)/,["constants","white","string.heredoc.delimiter","string.heredoc","string.heredoc.delimiter"]]],parameters:[[/\$\d+/,"variable.predefined"],[/\$\w+/,"variable"],[/\$[*@#?\-$!0_]/,"variable"],[/\$'/,"variable","@parameterBodyQuote"],[/\$"/,"variable","@parameterBodyDoubleQuote"],[/\$\(/,"variable","@parameterBodyParen"],[/\$\{/,"variable","@parameterBodyCurlyBrace"]],parameterBodyQuote:[[/[^#:%*@\-!_']+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/[']/,"variable","@pop"]],parameterBodyDoubleQuote:[[/[^#:%*@\-!_"]+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/["]/,"variable","@pop"]],parameterBodyParen:[[/[^#:%*@\-!_)]+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/[)]/,"variable","@pop"]],parameterBodyCurlyBrace:[[/[^#:%*@\-!_}]+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/[}]/,"variable","@pop"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[91],{492:function(e,r,o){"use strict";o.r(r),o.d(r,"conf",(function(){return i})),o.d(r,"language",(function(){return t}));var i={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}]},t={defaultToken:"",ignoreCase:!0,tokenPostfix:".shell",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["if","then","do","else","elif","while","until","for","in","esac","fi","fin","fil","done","exit","set","unset","export","function"],builtins:["ab","awk","bash","beep","cat","cc","cd","chown","chmod","chroot","clear","cp","curl","cut","diff","echo","find","gawk","gcc","get","git","grep","hg","kill","killall","ln","ls","make","mkdir","openssl","mv","nc","node","npm","ping","ps","restart","rm","rmdir","sed","service","sh","shopt","shred","source","sort","sleep","ssh","start","stop","su","sudo","svn","tee","telnet","top","touch","vi","vim","wall","wc","wget","who","write","yes","zsh"],symbols:/[=><!~?&|+\-*\/\^;\.,]+/,tokenizer:{root:[{include:"@whitespace"},[/[a-zA-Z]\w*/,{cases:{"@keywords":"keyword","@builtins":"type.identifier","@default":""}}],{include:"@strings"},{include:"@parameters"},{include:"@heredoc"},[/[{}\[\]()]/,"@brackets"],[/-+\w+/,"attribute.name"],[/@symbols/,"delimiter"],{include:"@numbers"},[/[,;]/,"delimiter"]],whitespace:[[/\s+/,"white"],[/(^#!.*$)/,"metatag"],[/(^#.*$)/,"comment"]],numbers:[[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+/,"number"]],strings:[[/'/,"string","@stringBody"],[/"/,"string","@dblStringBody"]],stringBody:[[/'/,"string","@popall"],[/./,"string"]],dblStringBody:[[/"/,"string","@popall"],[/./,"string"]],heredoc:[[/(<<[-<]?)(\s*)(['"`]?)([\w\-]+)(['"`]?)/,["constants","white","string.heredoc.delimiter","string.heredoc","string.heredoc.delimiter"]]],parameters:[[/\$\d+/,"variable.predefined"],[/\$\w+/,"variable"],[/\$[*@#?\-$!0_]/,"variable"],[/\$'/,"variable","@parameterBodyQuote"],[/\$"/,"variable","@parameterBodyDoubleQuote"],[/\$\(/,"variable","@parameterBodyParen"],[/\$\{/,"variable","@parameterBodyCurlyBrace"]],parameterBodyQuote:[[/[^#:%*@\-!_']+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/[']/,"variable","@pop"]],parameterBodyDoubleQuote:[[/[^#:%*@\-!_"]+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/["]/,"variable","@pop"]],parameterBodyParen:[[/[^#:%*@\-!_)]+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/[)]/,"variable","@pop"]],parameterBodyCurlyBrace:[[/[^#:%*@\-!_}]+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/[}]/,"variable","@pop"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/91.d2bf60c2.js b/docs/src/.vuepress/dist/assets/js/92.906efbb2.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/91.d2bf60c2.js rename to docs/src/.vuepress/dist/assets/js/92.906efbb2.js index 26d42b19..52b738a8 100644 --- a/docs/src/.vuepress/dist/assets/js/91.d2bf60c2.js +++ b/docs/src/.vuepress/dist/assets/js/92.906efbb2.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[91],{493:function(x,e,i){"use strict";i.r(e),i.d(e,"conf",(function(){return d})),i.d(e,"language",(function(){return f}));var d={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]}]},f={defaultToken:"",tokenPostfix:".sol",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"},{token:"delimiter.angle",open:"<",close:">"}],keywords:["pragma","solidity","contract","library","using","struct","function","modifier","constructor","address","string","bool","Int","Uint","Byte","Fixed","Ufixed","int","int8","int16","int24","int32","int40","int48","int56","int64","int72","int80","int88","int96","int104","int112","int120","int128","int136","int144","int152","int160","int168","int176","int184","int192","int200","int208","int216","int224","int232","int240","int248","int256","uint","uint8","uint16","uint24","uint32","uint40","uint48","uint56","uint64","uint72","uint80","uint88","uint96","uint104","uint112","uint120","uint128","uint136","uint144","uint152","uint160","uint168","uint176","uint184","uint192","uint200","uint208","uint216","uint224","uint232","uint240","uint248","uint256","byte","bytes","bytes1","bytes2","bytes3","bytes4","bytes5","bytes6","bytes7","bytes8","bytes9","bytes10","bytes11","bytes12","bytes13","bytes14","bytes15","bytes16","bytes17","bytes18","bytes19","bytes20","bytes21","bytes22","bytes23","bytes24","bytes25","bytes26","bytes27","bytes28","bytes29","bytes30","bytes31","bytes32","fixed","fixed0x8","fixed0x16","fixed0x24","fixed0x32","fixed0x40","fixed0x48","fixed0x56","fixed0x64","fixed0x72","fixed0x80","fixed0x88","fixed0x96","fixed0x104","fixed0x112","fixed0x120","fixed0x128","fixed0x136","fixed0x144","fixed0x152","fixed0x160","fixed0x168","fixed0x176","fixed0x184","fixed0x192","fixed0x200","fixed0x208","fixed0x216","fixed0x224","fixed0x232","fixed0x240","fixed0x248","fixed0x256","fixed8x8","fixed8x16","fixed8x24","fixed8x32","fixed8x40","fixed8x48","fixed8x56","fixed8x64","fixed8x72","fixed8x80","fixed8x88","fixed8x96","fixed8x104","fixed8x112","fixed8x120","fixed8x128","fixed8x136","fixed8x144","fixed8x152","fixed8x160","fixed8x168","fixed8x176","fixed8x184","fixed8x192","fixed8x200","fixed8x208","fixed8x216","fixed8x224","fixed8x232","fixed8x240","fixed8x248","fixed16x8","fixed16x16","fixed16x24","fixed16x32","fixed16x40","fixed16x48","fixed16x56","fixed16x64","fixed16x72","fixed16x80","fixed16x88","fixed16x96","fixed16x104","fixed16x112","fixed16x120","fixed16x128","fixed16x136","fixed16x144","fixed16x152","fixed16x160","fixed16x168","fixed16x176","fixed16x184","fixed16x192","fixed16x200","fixed16x208","fixed16x216","fixed16x224","fixed16x232","fixed16x240","fixed24x8","fixed24x16","fixed24x24","fixed24x32","fixed24x40","fixed24x48","fixed24x56","fixed24x64","fixed24x72","fixed24x80","fixed24x88","fixed24x96","fixed24x104","fixed24x112","fixed24x120","fixed24x128","fixed24x136","fixed24x144","fixed24x152","fixed24x160","fixed24x168","fixed24x176","fixed24x184","fixed24x192","fixed24x200","fixed24x208","fixed24x216","fixed24x224","fixed24x232","fixed32x8","fixed32x16","fixed32x24","fixed32x32","fixed32x40","fixed32x48","fixed32x56","fixed32x64","fixed32x72","fixed32x80","fixed32x88","fixed32x96","fixed32x104","fixed32x112","fixed32x120","fixed32x128","fixed32x136","fixed32x144","fixed32x152","fixed32x160","fixed32x168","fixed32x176","fixed32x184","fixed32x192","fixed32x200","fixed32x208","fixed32x216","fixed32x224","fixed40x8","fixed40x16","fixed40x24","fixed40x32","fixed40x40","fixed40x48","fixed40x56","fixed40x64","fixed40x72","fixed40x80","fixed40x88","fixed40x96","fixed40x104","fixed40x112","fixed40x120","fixed40x128","fixed40x136","fixed40x144","fixed40x152","fixed40x160","fixed40x168","fixed40x176","fixed40x184","fixed40x192","fixed40x200","fixed40x208","fixed40x216","fixed48x8","fixed48x16","fixed48x24","fixed48x32","fixed48x40","fixed48x48","fixed48x56","fixed48x64","fixed48x72","fixed48x80","fixed48x88","fixed48x96","fixed48x104","fixed48x112","fixed48x120","fixed48x128","fixed48x136","fixed48x144","fixed48x152","fixed48x160","fixed48x168","fixed48x176","fixed48x184","fixed48x192","fixed48x200","fixed48x208","fixed56x8","fixed56x16","fixed56x24","fixed56x32","fixed56x40","fixed56x48","fixed56x56","fixed56x64","fixed56x72","fixed56x80","fixed56x88","fixed56x96","fixed56x104","fixed56x112","fixed56x120","fixed56x128","fixed56x136","fixed56x144","fixed56x152","fixed56x160","fixed56x168","fixed56x176","fixed56x184","fixed56x192","fixed56x200","fixed64x8","fixed64x16","fixed64x24","fixed64x32","fixed64x40","fixed64x48","fixed64x56","fixed64x64","fixed64x72","fixed64x80","fixed64x88","fixed64x96","fixed64x104","fixed64x112","fixed64x120","fixed64x128","fixed64x136","fixed64x144","fixed64x152","fixed64x160","fixed64x168","fixed64x176","fixed64x184","fixed64x192","fixed72x8","fixed72x16","fixed72x24","fixed72x32","fixed72x40","fixed72x48","fixed72x56","fixed72x64","fixed72x72","fixed72x80","fixed72x88","fixed72x96","fixed72x104","fixed72x112","fixed72x120","fixed72x128","fixed72x136","fixed72x144","fixed72x152","fixed72x160","fixed72x168","fixed72x176","fixed72x184","fixed80x8","fixed80x16","fixed80x24","fixed80x32","fixed80x40","fixed80x48","fixed80x56","fixed80x64","fixed80x72","fixed80x80","fixed80x88","fixed80x96","fixed80x104","fixed80x112","fixed80x120","fixed80x128","fixed80x136","fixed80x144","fixed80x152","fixed80x160","fixed80x168","fixed80x176","fixed88x8","fixed88x16","fixed88x24","fixed88x32","fixed88x40","fixed88x48","fixed88x56","fixed88x64","fixed88x72","fixed88x80","fixed88x88","fixed88x96","fixed88x104","fixed88x112","fixed88x120","fixed88x128","fixed88x136","fixed88x144","fixed88x152","fixed88x160","fixed88x168","fixed96x8","fixed96x16","fixed96x24","fixed96x32","fixed96x40","fixed96x48","fixed96x56","fixed96x64","fixed96x72","fixed96x80","fixed96x88","fixed96x96","fixed96x104","fixed96x112","fixed96x120","fixed96x128","fixed96x136","fixed96x144","fixed96x152","fixed96x160","fixed104x8","fixed104x16","fixed104x24","fixed104x32","fixed104x40","fixed104x48","fixed104x56","fixed104x64","fixed104x72","fixed104x80","fixed104x88","fixed104x96","fixed104x104","fixed104x112","fixed104x120","fixed104x128","fixed104x136","fixed104x144","fixed104x152","fixed112x8","fixed112x16","fixed112x24","fixed112x32","fixed112x40","fixed112x48","fixed112x56","fixed112x64","fixed112x72","fixed112x80","fixed112x88","fixed112x96","fixed112x104","fixed112x112","fixed112x120","fixed112x128","fixed112x136","fixed112x144","fixed120x8","fixed120x16","fixed120x24","fixed120x32","fixed120x40","fixed120x48","fixed120x56","fixed120x64","fixed120x72","fixed120x80","fixed120x88","fixed120x96","fixed120x104","fixed120x112","fixed120x120","fixed120x128","fixed120x136","fixed128x8","fixed128x16","fixed128x24","fixed128x32","fixed128x40","fixed128x48","fixed128x56","fixed128x64","fixed128x72","fixed128x80","fixed128x88","fixed128x96","fixed128x104","fixed128x112","fixed128x120","fixed128x128","fixed136x8","fixed136x16","fixed136x24","fixed136x32","fixed136x40","fixed136x48","fixed136x56","fixed136x64","fixed136x72","fixed136x80","fixed136x88","fixed136x96","fixed136x104","fixed136x112","fixed136x120","fixed144x8","fixed144x16","fixed144x24","fixed144x32","fixed144x40","fixed144x48","fixed144x56","fixed144x64","fixed144x72","fixed144x80","fixed144x88","fixed144x96","fixed144x104","fixed144x112","fixed152x8","fixed152x16","fixed152x24","fixed152x32","fixed152x40","fixed152x48","fixed152x56","fixed152x64","fixed152x72","fixed152x80","fixed152x88","fixed152x96","fixed152x104","fixed160x8","fixed160x16","fixed160x24","fixed160x32","fixed160x40","fixed160x48","fixed160x56","fixed160x64","fixed160x72","fixed160x80","fixed160x88","fixed160x96","fixed168x8","fixed168x16","fixed168x24","fixed168x32","fixed168x40","fixed168x48","fixed168x56","fixed168x64","fixed168x72","fixed168x80","fixed168x88","fixed176x8","fixed176x16","fixed176x24","fixed176x32","fixed176x40","fixed176x48","fixed176x56","fixed176x64","fixed176x72","fixed176x80","fixed184x8","fixed184x16","fixed184x24","fixed184x32","fixed184x40","fixed184x48","fixed184x56","fixed184x64","fixed184x72","fixed192x8","fixed192x16","fixed192x24","fixed192x32","fixed192x40","fixed192x48","fixed192x56","fixed192x64","fixed200x8","fixed200x16","fixed200x24","fixed200x32","fixed200x40","fixed200x48","fixed200x56","fixed208x8","fixed208x16","fixed208x24","fixed208x32","fixed208x40","fixed208x48","fixed216x8","fixed216x16","fixed216x24","fixed216x32","fixed216x40","fixed224x8","fixed224x16","fixed224x24","fixed224x32","fixed232x8","fixed232x16","fixed232x24","fixed240x8","fixed240x16","fixed248x8","ufixed","ufixed0x8","ufixed0x16","ufixed0x24","ufixed0x32","ufixed0x40","ufixed0x48","ufixed0x56","ufixed0x64","ufixed0x72","ufixed0x80","ufixed0x88","ufixed0x96","ufixed0x104","ufixed0x112","ufixed0x120","ufixed0x128","ufixed0x136","ufixed0x144","ufixed0x152","ufixed0x160","ufixed0x168","ufixed0x176","ufixed0x184","ufixed0x192","ufixed0x200","ufixed0x208","ufixed0x216","ufixed0x224","ufixed0x232","ufixed0x240","ufixed0x248","ufixed0x256","ufixed8x8","ufixed8x16","ufixed8x24","ufixed8x32","ufixed8x40","ufixed8x48","ufixed8x56","ufixed8x64","ufixed8x72","ufixed8x80","ufixed8x88","ufixed8x96","ufixed8x104","ufixed8x112","ufixed8x120","ufixed8x128","ufixed8x136","ufixed8x144","ufixed8x152","ufixed8x160","ufixed8x168","ufixed8x176","ufixed8x184","ufixed8x192","ufixed8x200","ufixed8x208","ufixed8x216","ufixed8x224","ufixed8x232","ufixed8x240","ufixed8x248","ufixed16x8","ufixed16x16","ufixed16x24","ufixed16x32","ufixed16x40","ufixed16x48","ufixed16x56","ufixed16x64","ufixed16x72","ufixed16x80","ufixed16x88","ufixed16x96","ufixed16x104","ufixed16x112","ufixed16x120","ufixed16x128","ufixed16x136","ufixed16x144","ufixed16x152","ufixed16x160","ufixed16x168","ufixed16x176","ufixed16x184","ufixed16x192","ufixed16x200","ufixed16x208","ufixed16x216","ufixed16x224","ufixed16x232","ufixed16x240","ufixed24x8","ufixed24x16","ufixed24x24","ufixed24x32","ufixed24x40","ufixed24x48","ufixed24x56","ufixed24x64","ufixed24x72","ufixed24x80","ufixed24x88","ufixed24x96","ufixed24x104","ufixed24x112","ufixed24x120","ufixed24x128","ufixed24x136","ufixed24x144","ufixed24x152","ufixed24x160","ufixed24x168","ufixed24x176","ufixed24x184","ufixed24x192","ufixed24x200","ufixed24x208","ufixed24x216","ufixed24x224","ufixed24x232","ufixed32x8","ufixed32x16","ufixed32x24","ufixed32x32","ufixed32x40","ufixed32x48","ufixed32x56","ufixed32x64","ufixed32x72","ufixed32x80","ufixed32x88","ufixed32x96","ufixed32x104","ufixed32x112","ufixed32x120","ufixed32x128","ufixed32x136","ufixed32x144","ufixed32x152","ufixed32x160","ufixed32x168","ufixed32x176","ufixed32x184","ufixed32x192","ufixed32x200","ufixed32x208","ufixed32x216","ufixed32x224","ufixed40x8","ufixed40x16","ufixed40x24","ufixed40x32","ufixed40x40","ufixed40x48","ufixed40x56","ufixed40x64","ufixed40x72","ufixed40x80","ufixed40x88","ufixed40x96","ufixed40x104","ufixed40x112","ufixed40x120","ufixed40x128","ufixed40x136","ufixed40x144","ufixed40x152","ufixed40x160","ufixed40x168","ufixed40x176","ufixed40x184","ufixed40x192","ufixed40x200","ufixed40x208","ufixed40x216","ufixed48x8","ufixed48x16","ufixed48x24","ufixed48x32","ufixed48x40","ufixed48x48","ufixed48x56","ufixed48x64","ufixed48x72","ufixed48x80","ufixed48x88","ufixed48x96","ufixed48x104","ufixed48x112","ufixed48x120","ufixed48x128","ufixed48x136","ufixed48x144","ufixed48x152","ufixed48x160","ufixed48x168","ufixed48x176","ufixed48x184","ufixed48x192","ufixed48x200","ufixed48x208","ufixed56x8","ufixed56x16","ufixed56x24","ufixed56x32","ufixed56x40","ufixed56x48","ufixed56x56","ufixed56x64","ufixed56x72","ufixed56x80","ufixed56x88","ufixed56x96","ufixed56x104","ufixed56x112","ufixed56x120","ufixed56x128","ufixed56x136","ufixed56x144","ufixed56x152","ufixed56x160","ufixed56x168","ufixed56x176","ufixed56x184","ufixed56x192","ufixed56x200","ufixed64x8","ufixed64x16","ufixed64x24","ufixed64x32","ufixed64x40","ufixed64x48","ufixed64x56","ufixed64x64","ufixed64x72","ufixed64x80","ufixed64x88","ufixed64x96","ufixed64x104","ufixed64x112","ufixed64x120","ufixed64x128","ufixed64x136","ufixed64x144","ufixed64x152","ufixed64x160","ufixed64x168","ufixed64x176","ufixed64x184","ufixed64x192","ufixed72x8","ufixed72x16","ufixed72x24","ufixed72x32","ufixed72x40","ufixed72x48","ufixed72x56","ufixed72x64","ufixed72x72","ufixed72x80","ufixed72x88","ufixed72x96","ufixed72x104","ufixed72x112","ufixed72x120","ufixed72x128","ufixed72x136","ufixed72x144","ufixed72x152","ufixed72x160","ufixed72x168","ufixed72x176","ufixed72x184","ufixed80x8","ufixed80x16","ufixed80x24","ufixed80x32","ufixed80x40","ufixed80x48","ufixed80x56","ufixed80x64","ufixed80x72","ufixed80x80","ufixed80x88","ufixed80x96","ufixed80x104","ufixed80x112","ufixed80x120","ufixed80x128","ufixed80x136","ufixed80x144","ufixed80x152","ufixed80x160","ufixed80x168","ufixed80x176","ufixed88x8","ufixed88x16","ufixed88x24","ufixed88x32","ufixed88x40","ufixed88x48","ufixed88x56","ufixed88x64","ufixed88x72","ufixed88x80","ufixed88x88","ufixed88x96","ufixed88x104","ufixed88x112","ufixed88x120","ufixed88x128","ufixed88x136","ufixed88x144","ufixed88x152","ufixed88x160","ufixed88x168","ufixed96x8","ufixed96x16","ufixed96x24","ufixed96x32","ufixed96x40","ufixed96x48","ufixed96x56","ufixed96x64","ufixed96x72","ufixed96x80","ufixed96x88","ufixed96x96","ufixed96x104","ufixed96x112","ufixed96x120","ufixed96x128","ufixed96x136","ufixed96x144","ufixed96x152","ufixed96x160","ufixed104x8","ufixed104x16","ufixed104x24","ufixed104x32","ufixed104x40","ufixed104x48","ufixed104x56","ufixed104x64","ufixed104x72","ufixed104x80","ufixed104x88","ufixed104x96","ufixed104x104","ufixed104x112","ufixed104x120","ufixed104x128","ufixed104x136","ufixed104x144","ufixed104x152","ufixed112x8","ufixed112x16","ufixed112x24","ufixed112x32","ufixed112x40","ufixed112x48","ufixed112x56","ufixed112x64","ufixed112x72","ufixed112x80","ufixed112x88","ufixed112x96","ufixed112x104","ufixed112x112","ufixed112x120","ufixed112x128","ufixed112x136","ufixed112x144","ufixed120x8","ufixed120x16","ufixed120x24","ufixed120x32","ufixed120x40","ufixed120x48","ufixed120x56","ufixed120x64","ufixed120x72","ufixed120x80","ufixed120x88","ufixed120x96","ufixed120x104","ufixed120x112","ufixed120x120","ufixed120x128","ufixed120x136","ufixed128x8","ufixed128x16","ufixed128x24","ufixed128x32","ufixed128x40","ufixed128x48","ufixed128x56","ufixed128x64","ufixed128x72","ufixed128x80","ufixed128x88","ufixed128x96","ufixed128x104","ufixed128x112","ufixed128x120","ufixed128x128","ufixed136x8","ufixed136x16","ufixed136x24","ufixed136x32","ufixed136x40","ufixed136x48","ufixed136x56","ufixed136x64","ufixed136x72","ufixed136x80","ufixed136x88","ufixed136x96","ufixed136x104","ufixed136x112","ufixed136x120","ufixed144x8","ufixed144x16","ufixed144x24","ufixed144x32","ufixed144x40","ufixed144x48","ufixed144x56","ufixed144x64","ufixed144x72","ufixed144x80","ufixed144x88","ufixed144x96","ufixed144x104","ufixed144x112","ufixed152x8","ufixed152x16","ufixed152x24","ufixed152x32","ufixed152x40","ufixed152x48","ufixed152x56","ufixed152x64","ufixed152x72","ufixed152x80","ufixed152x88","ufixed152x96","ufixed152x104","ufixed160x8","ufixed160x16","ufixed160x24","ufixed160x32","ufixed160x40","ufixed160x48","ufixed160x56","ufixed160x64","ufixed160x72","ufixed160x80","ufixed160x88","ufixed160x96","ufixed168x8","ufixed168x16","ufixed168x24","ufixed168x32","ufixed168x40","ufixed168x48","ufixed168x56","ufixed168x64","ufixed168x72","ufixed168x80","ufixed168x88","ufixed176x8","ufixed176x16","ufixed176x24","ufixed176x32","ufixed176x40","ufixed176x48","ufixed176x56","ufixed176x64","ufixed176x72","ufixed176x80","ufixed184x8","ufixed184x16","ufixed184x24","ufixed184x32","ufixed184x40","ufixed184x48","ufixed184x56","ufixed184x64","ufixed184x72","ufixed192x8","ufixed192x16","ufixed192x24","ufixed192x32","ufixed192x40","ufixed192x48","ufixed192x56","ufixed192x64","ufixed200x8","ufixed200x16","ufixed200x24","ufixed200x32","ufixed200x40","ufixed200x48","ufixed200x56","ufixed208x8","ufixed208x16","ufixed208x24","ufixed208x32","ufixed208x40","ufixed208x48","ufixed216x8","ufixed216x16","ufixed216x24","ufixed216x32","ufixed216x40","ufixed224x8","ufixed224x16","ufixed224x24","ufixed224x32","ufixed232x8","ufixed232x16","ufixed232x24","ufixed240x8","ufixed240x16","ufixed248x8","event","enum","let","mapping","private","public","external","inherited","payable","true","false","var","import","constant","if","else","for","else","for","while","do","break","continue","throw","returns","return","suicide","new","is","this","super"],operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,integersuffix:/(ll|LL|u|U|l|L)?(ll|LL|u|U|l|L)?/,floatsuffix:/[fFlL]?/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/\[\[.*\]\]/,"annotation"],[/^\s*#\w+/,"keyword"],[/int\d*/,"keyword"],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F](@integersuffix)/,"number.hex"],[/0[0-7']*[0-7](@integersuffix)/,"number.octal"],[/0[bB][0-1']*[0-1](@integersuffix)/,"number.binary"],[/\d[\d']*\d(@integersuffix)/,"number"],[/\d(@integersuffix)/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],doccomment:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[92],{493:function(x,e,i){"use strict";i.r(e),i.d(e,"conf",(function(){return d})),i.d(e,"language",(function(){return f}));var d={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]}]},f={defaultToken:"",tokenPostfix:".sol",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"},{token:"delimiter.angle",open:"<",close:">"}],keywords:["pragma","solidity","contract","library","using","struct","function","modifier","constructor","address","string","bool","Int","Uint","Byte","Fixed","Ufixed","int","int8","int16","int24","int32","int40","int48","int56","int64","int72","int80","int88","int96","int104","int112","int120","int128","int136","int144","int152","int160","int168","int176","int184","int192","int200","int208","int216","int224","int232","int240","int248","int256","uint","uint8","uint16","uint24","uint32","uint40","uint48","uint56","uint64","uint72","uint80","uint88","uint96","uint104","uint112","uint120","uint128","uint136","uint144","uint152","uint160","uint168","uint176","uint184","uint192","uint200","uint208","uint216","uint224","uint232","uint240","uint248","uint256","byte","bytes","bytes1","bytes2","bytes3","bytes4","bytes5","bytes6","bytes7","bytes8","bytes9","bytes10","bytes11","bytes12","bytes13","bytes14","bytes15","bytes16","bytes17","bytes18","bytes19","bytes20","bytes21","bytes22","bytes23","bytes24","bytes25","bytes26","bytes27","bytes28","bytes29","bytes30","bytes31","bytes32","fixed","fixed0x8","fixed0x16","fixed0x24","fixed0x32","fixed0x40","fixed0x48","fixed0x56","fixed0x64","fixed0x72","fixed0x80","fixed0x88","fixed0x96","fixed0x104","fixed0x112","fixed0x120","fixed0x128","fixed0x136","fixed0x144","fixed0x152","fixed0x160","fixed0x168","fixed0x176","fixed0x184","fixed0x192","fixed0x200","fixed0x208","fixed0x216","fixed0x224","fixed0x232","fixed0x240","fixed0x248","fixed0x256","fixed8x8","fixed8x16","fixed8x24","fixed8x32","fixed8x40","fixed8x48","fixed8x56","fixed8x64","fixed8x72","fixed8x80","fixed8x88","fixed8x96","fixed8x104","fixed8x112","fixed8x120","fixed8x128","fixed8x136","fixed8x144","fixed8x152","fixed8x160","fixed8x168","fixed8x176","fixed8x184","fixed8x192","fixed8x200","fixed8x208","fixed8x216","fixed8x224","fixed8x232","fixed8x240","fixed8x248","fixed16x8","fixed16x16","fixed16x24","fixed16x32","fixed16x40","fixed16x48","fixed16x56","fixed16x64","fixed16x72","fixed16x80","fixed16x88","fixed16x96","fixed16x104","fixed16x112","fixed16x120","fixed16x128","fixed16x136","fixed16x144","fixed16x152","fixed16x160","fixed16x168","fixed16x176","fixed16x184","fixed16x192","fixed16x200","fixed16x208","fixed16x216","fixed16x224","fixed16x232","fixed16x240","fixed24x8","fixed24x16","fixed24x24","fixed24x32","fixed24x40","fixed24x48","fixed24x56","fixed24x64","fixed24x72","fixed24x80","fixed24x88","fixed24x96","fixed24x104","fixed24x112","fixed24x120","fixed24x128","fixed24x136","fixed24x144","fixed24x152","fixed24x160","fixed24x168","fixed24x176","fixed24x184","fixed24x192","fixed24x200","fixed24x208","fixed24x216","fixed24x224","fixed24x232","fixed32x8","fixed32x16","fixed32x24","fixed32x32","fixed32x40","fixed32x48","fixed32x56","fixed32x64","fixed32x72","fixed32x80","fixed32x88","fixed32x96","fixed32x104","fixed32x112","fixed32x120","fixed32x128","fixed32x136","fixed32x144","fixed32x152","fixed32x160","fixed32x168","fixed32x176","fixed32x184","fixed32x192","fixed32x200","fixed32x208","fixed32x216","fixed32x224","fixed40x8","fixed40x16","fixed40x24","fixed40x32","fixed40x40","fixed40x48","fixed40x56","fixed40x64","fixed40x72","fixed40x80","fixed40x88","fixed40x96","fixed40x104","fixed40x112","fixed40x120","fixed40x128","fixed40x136","fixed40x144","fixed40x152","fixed40x160","fixed40x168","fixed40x176","fixed40x184","fixed40x192","fixed40x200","fixed40x208","fixed40x216","fixed48x8","fixed48x16","fixed48x24","fixed48x32","fixed48x40","fixed48x48","fixed48x56","fixed48x64","fixed48x72","fixed48x80","fixed48x88","fixed48x96","fixed48x104","fixed48x112","fixed48x120","fixed48x128","fixed48x136","fixed48x144","fixed48x152","fixed48x160","fixed48x168","fixed48x176","fixed48x184","fixed48x192","fixed48x200","fixed48x208","fixed56x8","fixed56x16","fixed56x24","fixed56x32","fixed56x40","fixed56x48","fixed56x56","fixed56x64","fixed56x72","fixed56x80","fixed56x88","fixed56x96","fixed56x104","fixed56x112","fixed56x120","fixed56x128","fixed56x136","fixed56x144","fixed56x152","fixed56x160","fixed56x168","fixed56x176","fixed56x184","fixed56x192","fixed56x200","fixed64x8","fixed64x16","fixed64x24","fixed64x32","fixed64x40","fixed64x48","fixed64x56","fixed64x64","fixed64x72","fixed64x80","fixed64x88","fixed64x96","fixed64x104","fixed64x112","fixed64x120","fixed64x128","fixed64x136","fixed64x144","fixed64x152","fixed64x160","fixed64x168","fixed64x176","fixed64x184","fixed64x192","fixed72x8","fixed72x16","fixed72x24","fixed72x32","fixed72x40","fixed72x48","fixed72x56","fixed72x64","fixed72x72","fixed72x80","fixed72x88","fixed72x96","fixed72x104","fixed72x112","fixed72x120","fixed72x128","fixed72x136","fixed72x144","fixed72x152","fixed72x160","fixed72x168","fixed72x176","fixed72x184","fixed80x8","fixed80x16","fixed80x24","fixed80x32","fixed80x40","fixed80x48","fixed80x56","fixed80x64","fixed80x72","fixed80x80","fixed80x88","fixed80x96","fixed80x104","fixed80x112","fixed80x120","fixed80x128","fixed80x136","fixed80x144","fixed80x152","fixed80x160","fixed80x168","fixed80x176","fixed88x8","fixed88x16","fixed88x24","fixed88x32","fixed88x40","fixed88x48","fixed88x56","fixed88x64","fixed88x72","fixed88x80","fixed88x88","fixed88x96","fixed88x104","fixed88x112","fixed88x120","fixed88x128","fixed88x136","fixed88x144","fixed88x152","fixed88x160","fixed88x168","fixed96x8","fixed96x16","fixed96x24","fixed96x32","fixed96x40","fixed96x48","fixed96x56","fixed96x64","fixed96x72","fixed96x80","fixed96x88","fixed96x96","fixed96x104","fixed96x112","fixed96x120","fixed96x128","fixed96x136","fixed96x144","fixed96x152","fixed96x160","fixed104x8","fixed104x16","fixed104x24","fixed104x32","fixed104x40","fixed104x48","fixed104x56","fixed104x64","fixed104x72","fixed104x80","fixed104x88","fixed104x96","fixed104x104","fixed104x112","fixed104x120","fixed104x128","fixed104x136","fixed104x144","fixed104x152","fixed112x8","fixed112x16","fixed112x24","fixed112x32","fixed112x40","fixed112x48","fixed112x56","fixed112x64","fixed112x72","fixed112x80","fixed112x88","fixed112x96","fixed112x104","fixed112x112","fixed112x120","fixed112x128","fixed112x136","fixed112x144","fixed120x8","fixed120x16","fixed120x24","fixed120x32","fixed120x40","fixed120x48","fixed120x56","fixed120x64","fixed120x72","fixed120x80","fixed120x88","fixed120x96","fixed120x104","fixed120x112","fixed120x120","fixed120x128","fixed120x136","fixed128x8","fixed128x16","fixed128x24","fixed128x32","fixed128x40","fixed128x48","fixed128x56","fixed128x64","fixed128x72","fixed128x80","fixed128x88","fixed128x96","fixed128x104","fixed128x112","fixed128x120","fixed128x128","fixed136x8","fixed136x16","fixed136x24","fixed136x32","fixed136x40","fixed136x48","fixed136x56","fixed136x64","fixed136x72","fixed136x80","fixed136x88","fixed136x96","fixed136x104","fixed136x112","fixed136x120","fixed144x8","fixed144x16","fixed144x24","fixed144x32","fixed144x40","fixed144x48","fixed144x56","fixed144x64","fixed144x72","fixed144x80","fixed144x88","fixed144x96","fixed144x104","fixed144x112","fixed152x8","fixed152x16","fixed152x24","fixed152x32","fixed152x40","fixed152x48","fixed152x56","fixed152x64","fixed152x72","fixed152x80","fixed152x88","fixed152x96","fixed152x104","fixed160x8","fixed160x16","fixed160x24","fixed160x32","fixed160x40","fixed160x48","fixed160x56","fixed160x64","fixed160x72","fixed160x80","fixed160x88","fixed160x96","fixed168x8","fixed168x16","fixed168x24","fixed168x32","fixed168x40","fixed168x48","fixed168x56","fixed168x64","fixed168x72","fixed168x80","fixed168x88","fixed176x8","fixed176x16","fixed176x24","fixed176x32","fixed176x40","fixed176x48","fixed176x56","fixed176x64","fixed176x72","fixed176x80","fixed184x8","fixed184x16","fixed184x24","fixed184x32","fixed184x40","fixed184x48","fixed184x56","fixed184x64","fixed184x72","fixed192x8","fixed192x16","fixed192x24","fixed192x32","fixed192x40","fixed192x48","fixed192x56","fixed192x64","fixed200x8","fixed200x16","fixed200x24","fixed200x32","fixed200x40","fixed200x48","fixed200x56","fixed208x8","fixed208x16","fixed208x24","fixed208x32","fixed208x40","fixed208x48","fixed216x8","fixed216x16","fixed216x24","fixed216x32","fixed216x40","fixed224x8","fixed224x16","fixed224x24","fixed224x32","fixed232x8","fixed232x16","fixed232x24","fixed240x8","fixed240x16","fixed248x8","ufixed","ufixed0x8","ufixed0x16","ufixed0x24","ufixed0x32","ufixed0x40","ufixed0x48","ufixed0x56","ufixed0x64","ufixed0x72","ufixed0x80","ufixed0x88","ufixed0x96","ufixed0x104","ufixed0x112","ufixed0x120","ufixed0x128","ufixed0x136","ufixed0x144","ufixed0x152","ufixed0x160","ufixed0x168","ufixed0x176","ufixed0x184","ufixed0x192","ufixed0x200","ufixed0x208","ufixed0x216","ufixed0x224","ufixed0x232","ufixed0x240","ufixed0x248","ufixed0x256","ufixed8x8","ufixed8x16","ufixed8x24","ufixed8x32","ufixed8x40","ufixed8x48","ufixed8x56","ufixed8x64","ufixed8x72","ufixed8x80","ufixed8x88","ufixed8x96","ufixed8x104","ufixed8x112","ufixed8x120","ufixed8x128","ufixed8x136","ufixed8x144","ufixed8x152","ufixed8x160","ufixed8x168","ufixed8x176","ufixed8x184","ufixed8x192","ufixed8x200","ufixed8x208","ufixed8x216","ufixed8x224","ufixed8x232","ufixed8x240","ufixed8x248","ufixed16x8","ufixed16x16","ufixed16x24","ufixed16x32","ufixed16x40","ufixed16x48","ufixed16x56","ufixed16x64","ufixed16x72","ufixed16x80","ufixed16x88","ufixed16x96","ufixed16x104","ufixed16x112","ufixed16x120","ufixed16x128","ufixed16x136","ufixed16x144","ufixed16x152","ufixed16x160","ufixed16x168","ufixed16x176","ufixed16x184","ufixed16x192","ufixed16x200","ufixed16x208","ufixed16x216","ufixed16x224","ufixed16x232","ufixed16x240","ufixed24x8","ufixed24x16","ufixed24x24","ufixed24x32","ufixed24x40","ufixed24x48","ufixed24x56","ufixed24x64","ufixed24x72","ufixed24x80","ufixed24x88","ufixed24x96","ufixed24x104","ufixed24x112","ufixed24x120","ufixed24x128","ufixed24x136","ufixed24x144","ufixed24x152","ufixed24x160","ufixed24x168","ufixed24x176","ufixed24x184","ufixed24x192","ufixed24x200","ufixed24x208","ufixed24x216","ufixed24x224","ufixed24x232","ufixed32x8","ufixed32x16","ufixed32x24","ufixed32x32","ufixed32x40","ufixed32x48","ufixed32x56","ufixed32x64","ufixed32x72","ufixed32x80","ufixed32x88","ufixed32x96","ufixed32x104","ufixed32x112","ufixed32x120","ufixed32x128","ufixed32x136","ufixed32x144","ufixed32x152","ufixed32x160","ufixed32x168","ufixed32x176","ufixed32x184","ufixed32x192","ufixed32x200","ufixed32x208","ufixed32x216","ufixed32x224","ufixed40x8","ufixed40x16","ufixed40x24","ufixed40x32","ufixed40x40","ufixed40x48","ufixed40x56","ufixed40x64","ufixed40x72","ufixed40x80","ufixed40x88","ufixed40x96","ufixed40x104","ufixed40x112","ufixed40x120","ufixed40x128","ufixed40x136","ufixed40x144","ufixed40x152","ufixed40x160","ufixed40x168","ufixed40x176","ufixed40x184","ufixed40x192","ufixed40x200","ufixed40x208","ufixed40x216","ufixed48x8","ufixed48x16","ufixed48x24","ufixed48x32","ufixed48x40","ufixed48x48","ufixed48x56","ufixed48x64","ufixed48x72","ufixed48x80","ufixed48x88","ufixed48x96","ufixed48x104","ufixed48x112","ufixed48x120","ufixed48x128","ufixed48x136","ufixed48x144","ufixed48x152","ufixed48x160","ufixed48x168","ufixed48x176","ufixed48x184","ufixed48x192","ufixed48x200","ufixed48x208","ufixed56x8","ufixed56x16","ufixed56x24","ufixed56x32","ufixed56x40","ufixed56x48","ufixed56x56","ufixed56x64","ufixed56x72","ufixed56x80","ufixed56x88","ufixed56x96","ufixed56x104","ufixed56x112","ufixed56x120","ufixed56x128","ufixed56x136","ufixed56x144","ufixed56x152","ufixed56x160","ufixed56x168","ufixed56x176","ufixed56x184","ufixed56x192","ufixed56x200","ufixed64x8","ufixed64x16","ufixed64x24","ufixed64x32","ufixed64x40","ufixed64x48","ufixed64x56","ufixed64x64","ufixed64x72","ufixed64x80","ufixed64x88","ufixed64x96","ufixed64x104","ufixed64x112","ufixed64x120","ufixed64x128","ufixed64x136","ufixed64x144","ufixed64x152","ufixed64x160","ufixed64x168","ufixed64x176","ufixed64x184","ufixed64x192","ufixed72x8","ufixed72x16","ufixed72x24","ufixed72x32","ufixed72x40","ufixed72x48","ufixed72x56","ufixed72x64","ufixed72x72","ufixed72x80","ufixed72x88","ufixed72x96","ufixed72x104","ufixed72x112","ufixed72x120","ufixed72x128","ufixed72x136","ufixed72x144","ufixed72x152","ufixed72x160","ufixed72x168","ufixed72x176","ufixed72x184","ufixed80x8","ufixed80x16","ufixed80x24","ufixed80x32","ufixed80x40","ufixed80x48","ufixed80x56","ufixed80x64","ufixed80x72","ufixed80x80","ufixed80x88","ufixed80x96","ufixed80x104","ufixed80x112","ufixed80x120","ufixed80x128","ufixed80x136","ufixed80x144","ufixed80x152","ufixed80x160","ufixed80x168","ufixed80x176","ufixed88x8","ufixed88x16","ufixed88x24","ufixed88x32","ufixed88x40","ufixed88x48","ufixed88x56","ufixed88x64","ufixed88x72","ufixed88x80","ufixed88x88","ufixed88x96","ufixed88x104","ufixed88x112","ufixed88x120","ufixed88x128","ufixed88x136","ufixed88x144","ufixed88x152","ufixed88x160","ufixed88x168","ufixed96x8","ufixed96x16","ufixed96x24","ufixed96x32","ufixed96x40","ufixed96x48","ufixed96x56","ufixed96x64","ufixed96x72","ufixed96x80","ufixed96x88","ufixed96x96","ufixed96x104","ufixed96x112","ufixed96x120","ufixed96x128","ufixed96x136","ufixed96x144","ufixed96x152","ufixed96x160","ufixed104x8","ufixed104x16","ufixed104x24","ufixed104x32","ufixed104x40","ufixed104x48","ufixed104x56","ufixed104x64","ufixed104x72","ufixed104x80","ufixed104x88","ufixed104x96","ufixed104x104","ufixed104x112","ufixed104x120","ufixed104x128","ufixed104x136","ufixed104x144","ufixed104x152","ufixed112x8","ufixed112x16","ufixed112x24","ufixed112x32","ufixed112x40","ufixed112x48","ufixed112x56","ufixed112x64","ufixed112x72","ufixed112x80","ufixed112x88","ufixed112x96","ufixed112x104","ufixed112x112","ufixed112x120","ufixed112x128","ufixed112x136","ufixed112x144","ufixed120x8","ufixed120x16","ufixed120x24","ufixed120x32","ufixed120x40","ufixed120x48","ufixed120x56","ufixed120x64","ufixed120x72","ufixed120x80","ufixed120x88","ufixed120x96","ufixed120x104","ufixed120x112","ufixed120x120","ufixed120x128","ufixed120x136","ufixed128x8","ufixed128x16","ufixed128x24","ufixed128x32","ufixed128x40","ufixed128x48","ufixed128x56","ufixed128x64","ufixed128x72","ufixed128x80","ufixed128x88","ufixed128x96","ufixed128x104","ufixed128x112","ufixed128x120","ufixed128x128","ufixed136x8","ufixed136x16","ufixed136x24","ufixed136x32","ufixed136x40","ufixed136x48","ufixed136x56","ufixed136x64","ufixed136x72","ufixed136x80","ufixed136x88","ufixed136x96","ufixed136x104","ufixed136x112","ufixed136x120","ufixed144x8","ufixed144x16","ufixed144x24","ufixed144x32","ufixed144x40","ufixed144x48","ufixed144x56","ufixed144x64","ufixed144x72","ufixed144x80","ufixed144x88","ufixed144x96","ufixed144x104","ufixed144x112","ufixed152x8","ufixed152x16","ufixed152x24","ufixed152x32","ufixed152x40","ufixed152x48","ufixed152x56","ufixed152x64","ufixed152x72","ufixed152x80","ufixed152x88","ufixed152x96","ufixed152x104","ufixed160x8","ufixed160x16","ufixed160x24","ufixed160x32","ufixed160x40","ufixed160x48","ufixed160x56","ufixed160x64","ufixed160x72","ufixed160x80","ufixed160x88","ufixed160x96","ufixed168x8","ufixed168x16","ufixed168x24","ufixed168x32","ufixed168x40","ufixed168x48","ufixed168x56","ufixed168x64","ufixed168x72","ufixed168x80","ufixed168x88","ufixed176x8","ufixed176x16","ufixed176x24","ufixed176x32","ufixed176x40","ufixed176x48","ufixed176x56","ufixed176x64","ufixed176x72","ufixed176x80","ufixed184x8","ufixed184x16","ufixed184x24","ufixed184x32","ufixed184x40","ufixed184x48","ufixed184x56","ufixed184x64","ufixed184x72","ufixed192x8","ufixed192x16","ufixed192x24","ufixed192x32","ufixed192x40","ufixed192x48","ufixed192x56","ufixed192x64","ufixed200x8","ufixed200x16","ufixed200x24","ufixed200x32","ufixed200x40","ufixed200x48","ufixed200x56","ufixed208x8","ufixed208x16","ufixed208x24","ufixed208x32","ufixed208x40","ufixed208x48","ufixed216x8","ufixed216x16","ufixed216x24","ufixed216x32","ufixed216x40","ufixed224x8","ufixed224x16","ufixed224x24","ufixed224x32","ufixed232x8","ufixed232x16","ufixed232x24","ufixed240x8","ufixed240x16","ufixed248x8","event","enum","let","mapping","private","public","external","inherited","payable","true","false","var","import","constant","if","else","for","else","for","while","do","break","continue","throw","returns","return","suicide","new","is","this","super"],operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,integersuffix:/(ll|LL|u|U|l|L)?(ll|LL|u|U|l|L)?/,floatsuffix:/[fFlL]?/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/\[\[.*\]\]/,"annotation"],[/^\s*#\w+/,"keyword"],[/int\d*/,"keyword"],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F](@integersuffix)/,"number.hex"],[/0[0-7']*[0-7](@integersuffix)/,"number.octal"],[/0[bB][0-1']*[0-1](@integersuffix)/,"number.binary"],[/\d[\d']*\d(@integersuffix)/,"number"],[/\d(@integersuffix)/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],doccomment:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/92.9ff04b54.js b/docs/src/.vuepress/dist/assets/js/93.c87070cc.js similarity index 97% rename from docs/src/.vuepress/dist/assets/js/92.9ff04b54.js rename to docs/src/.vuepress/dist/assets/js/93.c87070cc.js index c69ea1b2..129d7fa2 100644 --- a/docs/src/.vuepress/dist/assets/js/92.9ff04b54.js +++ b/docs/src/.vuepress/dist/assets/js/93.c87070cc.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[92],{494:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return o})),n.d(t,"language",(function(){return s}));var o={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]}]},s={defaultToken:"",tokenPostfix:".aes",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"},{token:"delimiter.angle",open:"<",close:">"}],keywords:["contract","library","entrypoint","function","stateful","state","hash","signature","tuple","list","address","string","bool","int","record","datatype","type","option","oracle","oracle_query","Call","Bits","Bytes","Oracle","String","Crypto","Address","Auth","Chain","None","Some","bits","bytes","event","let","map","private","public","true","false","var","if","else","throw"],operators:["=",">","<","!","~","?","::",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,integersuffix:/(ll|LL|u|U|l|L)?(ll|LL|u|U|l|L)?/,floatsuffix:/[fFlL]?/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/\[\[.*\]\]/,"annotation"],[/^\s*#\w+/,"keyword"],[/int\d*/,"keyword"],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F](@integersuffix)/,"number.hex"],[/0[0-7']*[0-7](@integersuffix)/,"number.octal"],[/0[bB][0-1']*[0-1](@integersuffix)/,"number.binary"],[/\d[\d']*\d(@integersuffix)/,"number"],[/\d(@integersuffix)/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],doccomment:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[93],{494:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return o})),n.d(t,"language",(function(){return s}));var o={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]}]},s={defaultToken:"",tokenPostfix:".aes",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"},{token:"delimiter.angle",open:"<",close:">"}],keywords:["contract","library","entrypoint","function","stateful","state","hash","signature","tuple","list","address","string","bool","int","record","datatype","type","option","oracle","oracle_query","Call","Bits","Bytes","Oracle","String","Crypto","Address","Auth","Chain","None","Some","bits","bytes","event","let","map","private","public","true","false","var","if","else","throw"],operators:["=",">","<","!","~","?","::",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,integersuffix:/(ll|LL|u|U|l|L)?(ll|LL|u|U|l|L)?/,floatsuffix:/[fFlL]?/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/\[\[.*\]\]/,"annotation"],[/^\s*#\w+/,"keyword"],[/int\d*/,"keyword"],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F](@integersuffix)/,"number.hex"],[/0[0-7']*[0-7](@integersuffix)/,"number.octal"],[/0[bB][0-1']*[0-1](@integersuffix)/,"number.binary"],[/\d[\d']*\d(@integersuffix)/,"number"],[/\d(@integersuffix)/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],doccomment:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/93.168a3f48.js b/docs/src/.vuepress/dist/assets/js/94.e7eb9f7b.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/93.168a3f48.js rename to docs/src/.vuepress/dist/assets/js/94.e7eb9f7b.js index 1db2ca75..94bb26b2 100644 --- a/docs/src/.vuepress/dist/assets/js/93.168a3f48.js +++ b/docs/src/.vuepress/dist/assets/js/94.e7eb9f7b.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[93],{495:function(E,T,R){"use strict";R.r(T),R.d(T,"conf",(function(){return A})),R.d(T,"language",(function(){return I}));var A={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},I={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["ABORT_AFTER_WAIT","ABSENT","ABSOLUTE","ACCENT_SENSITIVITY","ACTION","ACTIVATION","ACTIVE","ADD","ADDRESS","ADMIN","AES","AES_128","AES_192","AES_256","AFFINITY","AFTER","AGGREGATE","ALGORITHM","ALL_CONSTRAINTS","ALL_ERRORMSGS","ALL_INDEXES","ALL_LEVELS","ALL_SPARSE_COLUMNS","ALLOW_CONNECTIONS","ALLOW_MULTIPLE_EVENT_LOSS","ALLOW_PAGE_LOCKS","ALLOW_ROW_LOCKS","ALLOW_SINGLE_EVENT_LOSS","ALLOW_SNAPSHOT_ISOLATION","ALLOWED","ALTER","ANONYMOUS","ANSI_DEFAULTS","ANSI_NULL_DEFAULT","ANSI_NULL_DFLT_OFF","ANSI_NULL_DFLT_ON","ANSI_NULLS","ANSI_PADDING","ANSI_WARNINGS","APPEND","APPLICATION","APPLICATION_LOG","ARITHABORT","ARITHIGNORE","AS","ASC","ASSEMBLY","ASYMMETRIC","ASYNCHRONOUS_COMMIT","AT","ATOMIC","ATTACH","ATTACH_REBUILD_LOG","AUDIT","AUDIT_GUID","AUTHENTICATION","AUTHORIZATION","AUTO","AUTO_CLEANUP","AUTO_CLOSE","AUTO_CREATE_STATISTICS","AUTO_SHRINK","AUTO_UPDATE_STATISTICS","AUTO_UPDATE_STATISTICS_ASYNC","AUTOMATED_BACKUP_PREFERENCE","AUTOMATIC","AVAILABILITY","AVAILABILITY_MODE","BACKUP","BACKUP_PRIORITY","BASE64","BATCHSIZE","BEGIN","BEGIN_DIALOG","BIGINT","BINARY","BINDING","BIT","BLOCKERS","BLOCKSIZE","BOUNDING_BOX","BREAK","BROKER","BROKER_INSTANCE","BROWSE","BUCKET_COUNT","BUFFER","BUFFERCOUNT","BULK","BULK_LOGGED","BY","CACHE","CALL","CALLED","CALLER","CAP_CPU_PERCENT","CASCADE","CASE","CATALOG","CATCH","CELLS_PER_OBJECT","CERTIFICATE","CHANGE_RETENTION","CHANGE_TRACKING","CHANGES","CHAR","CHARACTER","CHECK","CHECK_CONSTRAINTS","CHECK_EXPIRATION","CHECK_POLICY","CHECKALLOC","CHECKCATALOG","CHECKCONSTRAINTS","CHECKDB","CHECKFILEGROUP","CHECKIDENT","CHECKPOINT","CHECKTABLE","CLASSIFIER_FUNCTION","CLEANTABLE","CLEANUP","CLEAR","CLOSE","CLUSTER","CLUSTERED","CODEPAGE","COLLATE","COLLECTION","COLUMN","COLUMN_SET","COLUMNS","COLUMNSTORE","COLUMNSTORE_ARCHIVE","COMMIT","COMMITTED","COMPATIBILITY_LEVEL","COMPRESSION","COMPUTE","CONCAT","CONCAT_NULL_YIELDS_NULL","CONFIGURATION","CONNECT","CONSTRAINT","CONTAINMENT","CONTENT","CONTEXT","CONTINUE","CONTINUE_AFTER_ERROR","CONTRACT","CONTRACT_NAME","CONTROL","CONVERSATION","COOKIE","COPY_ONLY","COUNTER","CPU","CREATE","CREATE_NEW","CREATION_DISPOSITION","CREDENTIAL","CRYPTOGRAPHIC","CUBE","CURRENT","CURRENT_DATE","CURSOR","CURSOR_CLOSE_ON_COMMIT","CURSOR_DEFAULT","CYCLE","DATA","DATA_COMPRESSION","DATA_PURITY","DATABASE","DATABASE_DEFAULT","DATABASE_MIRRORING","DATABASE_SNAPSHOT","DATAFILETYPE","DATE","DATE_CORRELATION_OPTIMIZATION","DATEFIRST","DATEFORMAT","DATETIME","DATETIME2","DATETIMEOFFSET","DAY","DAYOFYEAR","DAYS","DB_CHAINING","DBCC","DBREINDEX","DDL_DATABASE_LEVEL_EVENTS","DEADLOCK_PRIORITY","DEALLOCATE","DEC","DECIMAL","DECLARE","DECRYPTION","DEFAULT","DEFAULT_DATABASE","DEFAULT_FULLTEXT_LANGUAGE","DEFAULT_LANGUAGE","DEFAULT_SCHEMA","DEFINITION","DELAY","DELAYED_DURABILITY","DELETE","DELETED","DENSITY_VECTOR","DENY","DEPENDENTS","DES","DESC","DESCRIPTION","DESX","DHCP","DIAGNOSTICS","DIALOG","DIFFERENTIAL","DIRECTORY_NAME","DISABLE","DISABLE_BROKER","DISABLED","DISK","DISTINCT","DISTRIBUTED","DOCUMENT","DOUBLE","DROP","DROP_EXISTING","DROPCLEANBUFFERS","DUMP","DURABILITY","DYNAMIC","EDITION","ELEMENTS","ELSE","EMERGENCY","EMPTY","EMPTYFILE","ENABLE","ENABLE_BROKER","ENABLED","ENCRYPTION","END","ENDPOINT","ENDPOINT_URL","ERRLVL","ERROR","ERROR_BROKER_CONVERSATIONS","ERRORFILE","ESCAPE","ESTIMATEONLY","EVENT","EVENT_RETENTION_MODE","EXEC","EXECUTABLE","EXECUTE","EXIT","EXPAND","EXPIREDATE","EXPIRY_DATE","EXPLICIT","EXTENDED_LOGICAL_CHECKS","EXTENSION","EXTERNAL","EXTERNAL_ACCESS","FAIL_OPERATION","FAILOVER","FAILOVER_MODE","FAILURE_CONDITION_LEVEL","FALSE","FAN_IN","FAST","FAST_FORWARD","FETCH","FIELDTERMINATOR","FILE","FILEGROUP","FILEGROWTH","FILELISTONLY","FILENAME","FILEPATH","FILESTREAM","FILESTREAM_ON","FILETABLE_COLLATE_FILENAME","FILETABLE_DIRECTORY","FILETABLE_FULLPATH_UNIQUE_CONSTRAINT_NAME","FILETABLE_NAMESPACE","FILETABLE_PRIMARY_KEY_CONSTRAINT_NAME","FILETABLE_STREAMID_UNIQUE_CONSTRAINT_NAME","FILLFACTOR","FILTERING","FIRE_TRIGGERS","FIRST","FIRSTROW","FLOAT","FMTONLY","FOLLOWING","FOR","FORCE","FORCE_FAILOVER_ALLOW_DATA_LOSS","FORCE_SERVICE_ALLOW_DATA_LOSS","FORCED","FORCEPLAN","FORCESCAN","FORCESEEK","FOREIGN","FORMATFILE","FORMSOF","FORWARD_ONLY","FREE","FREEPROCCACHE","FREESESSIONCACHE","FREESYSTEMCACHE","FROM","FULL","FULLSCAN","FULLTEXT","FUNCTION","GB","GEOGRAPHY_AUTO_GRID","GEOGRAPHY_GRID","GEOMETRY_AUTO_GRID","GEOMETRY_GRID","GET","GLOBAL","GO","GOTO","GOVERNOR","GRANT","GRIDS","GROUP","GROUP_MAX_REQUESTS","HADR","HASH","HASHED","HAVING","HEADERONLY","HEALTH_CHECK_TIMEOUT","HELP","HIERARCHYID","HIGH","HINT","HISTOGRAM","HOLDLOCK","HONOR_BROKER_PRIORITY","HOUR","HOURS","IDENTITY","IDENTITY_INSERT","IDENTITY_VALUE","IDENTITYCOL","IF","IGNORE_CONSTRAINTS","IGNORE_DUP_KEY","IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX","IGNORE_TRIGGERS","IMAGE","IMMEDIATE","IMPERSONATE","IMPLICIT_TRANSACTIONS","IMPORTANCE","INCLUDE","INCREMENT","INCREMENTAL","INDEX","INDEXDEFRAG","INFINITE","INFLECTIONAL","INIT","INITIATOR","INPUT","INPUTBUFFER","INSENSITIVE","INSERT","INSERTED","INSTEAD","INT","INTEGER","INTO","IO","IP","ISABOUT","ISOLATION","JOB","KB","KEEP","KEEP_CDC","KEEP_NULLS","KEEP_REPLICATION","KEEPDEFAULTS","KEEPFIXED","KEEPIDENTITY","KEEPNULLS","KERBEROS","KEY","KEY_SOURCE","KEYS","KEYSET","KILL","KILOBYTES_PER_BATCH","LABELONLY","LANGUAGE","LAST","LASTROW","LEVEL","LEVEL_1","LEVEL_2","LEVEL_3","LEVEL_4","LIFETIME","LIMIT","LINENO","LIST","LISTENER","LISTENER_IP","LISTENER_PORT","LOAD","LOADHISTORY","LOB_COMPACTION","LOCAL","LOCAL_SERVICE_NAME","LOCK_ESCALATION","LOCK_TIMEOUT","LOGIN","LOGSPACE","LOOP","LOW","MANUAL","MARK","MARK_IN_USE_FOR_REMOVAL","MASTER","MAX_CPU_PERCENT","MAX_DISPATCH_LATENCY","MAX_DOP","MAX_DURATION","MAX_EVENT_SIZE","MAX_FILES","MAX_IOPS_PER_VOLUME","MAX_MEMORY","MAX_MEMORY_PERCENT","MAX_QUEUE_READERS","MAX_ROLLOVER_FILES","MAX_SIZE","MAXDOP","MAXERRORS","MAXLENGTH","MAXRECURSION","MAXSIZE","MAXTRANSFERSIZE","MAXVALUE","MB","MEDIADESCRIPTION","MEDIANAME","MEDIAPASSWORD","MEDIUM","MEMBER","MEMORY_OPTIMIZED","MEMORY_OPTIMIZED_DATA","MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT","MEMORY_PARTITION_MODE","MERGE","MESSAGE","MESSAGE_FORWARD_SIZE","MESSAGE_FORWARDING","MICROSECOND","MILLISECOND","MIN_CPU_PERCENT","MIN_IOPS_PER_VOLUME","MIN_MEMORY_PERCENT","MINUTE","MINUTES","MINVALUE","MIRROR","MIRROR_ADDRESS","MODIFY","MONEY","MONTH","MOVE","MULTI_USER","MUST_CHANGE","NAME","NANOSECOND","NATIONAL","NATIVE_COMPILATION","NCHAR","NEGOTIATE","NESTED_TRIGGERS","NEW_ACCOUNT","NEW_BROKER","NEW_PASSWORD","NEWNAME","NEXT","NO","NO_BROWSETABLE","NO_CHECKSUM","NO_COMPRESSION","NO_EVENT_LOSS","NO_INFOMSGS","NO_TRUNCATE","NO_WAIT","NOCHECK","NOCOUNT","NOEXEC","NOEXPAND","NOFORMAT","NOINDEX","NOINIT","NOLOCK","NON","NON_TRANSACTED_ACCESS","NONCLUSTERED","NONE","NORECOMPUTE","NORECOVERY","NORESEED","NORESET","NOREWIND","NORMAL","NOSKIP","NOTIFICATION","NOTRUNCATE","NOUNLOAD","NOWAIT","NTEXT","NTLM","NUMANODE","NUMERIC","NUMERIC_ROUNDABORT","NVARCHAR","OBJECT","OF","OFF","OFFLINE","OFFSET","OFFSETS","OLD_ACCOUNT","OLD_PASSWORD","ON","ON_FAILURE","ONLINE","ONLY","OPEN","OPEN_EXISTING","OPENTRAN","OPTIMISTIC","OPTIMIZE","OPTION","ORDER","OUT","OUTPUT","OUTPUTBUFFER","OVER","OVERRIDE","OWNER","OWNERSHIP","PAD_INDEX","PAGE","PAGE_VERIFY","PAGECOUNT","PAGLOCK","PARAMETERIZATION","PARSEONLY","PARTIAL","PARTITION","PARTITIONS","PARTNER","PASSWORD","PATH","PER_CPU","PER_NODE","PERCENT","PERMISSION_SET","PERSISTED","PHYSICAL_ONLY","PLAN","POISON_MESSAGE_HANDLING","POOL","POPULATION","PORT","PRECEDING","PRECISION","PRIMARY","PRIMARY_ROLE","PRINT","PRIOR","PRIORITY","PRIORITY_LEVEL","PRIVATE","PRIVILEGES","PROC","PROCCACHE","PROCEDURE","PROCEDURE_NAME","PROCESS","PROFILE","PROPERTY","PROPERTY_DESCRIPTION","PROPERTY_INT_ID","PROPERTY_SET_GUID","PROVIDER","PROVIDER_KEY_NAME","PUBLIC","PUT","QUARTER","QUERY","QUERY_GOVERNOR_COST_LIMIT","QUEUE","QUEUE_DELAY","QUOTED_IDENTIFIER","RAISERROR","RANGE","RAW","RC2","RC4","RC4_128","READ","READ_COMMITTED_SNAPSHOT","READ_ONLY","READ_ONLY_ROUTING_LIST","READ_ONLY_ROUTING_URL","READ_WRITE","READ_WRITE_FILEGROUPS","READCOMMITTED","READCOMMITTEDLOCK","READONLY","READPAST","READTEXT","READUNCOMMITTED","READWRITE","REAL","REBUILD","RECEIVE","RECOMPILE","RECONFIGURE","RECOVERY","RECURSIVE","RECURSIVE_TRIGGERS","REFERENCES","REGENERATE","RELATED_CONVERSATION","RELATED_CONVERSATION_GROUP","RELATIVE","REMOTE","REMOTE_PROC_TRANSACTIONS","REMOTE_SERVICE_NAME","REMOVE","REORGANIZE","REPAIR_ALLOW_DATA_LOSS","REPAIR_FAST","REPAIR_REBUILD","REPEATABLE","REPEATABLEREAD","REPLICA","REPLICATION","REQUEST_MAX_CPU_TIME_SEC","REQUEST_MAX_MEMORY_GRANT_PERCENT","REQUEST_MEMORY_GRANT_TIMEOUT_SEC","REQUIRED","RESAMPLE","RESEED","RESERVE_DISK_SPACE","RESET","RESOURCE","RESTART","RESTORE","RESTRICT","RESTRICTED_USER","RESULT","RESUME","RETAINDAYS","RETENTION","RETURN","RETURNS","REVERT","REVOKE","REWIND","REWINDONLY","ROBUST","ROLE","ROLLBACK","ROLLUP","ROOT","ROUTE","ROW","ROWCOUNT","ROWGUIDCOL","ROWLOCK","ROWS","ROWS_PER_BATCH","ROWTERMINATOR","ROWVERSION","RSA_1024","RSA_2048","RSA_512","RULE","SAFE","SAFETY","SAMPLE","SAVE","SCHEDULER","SCHEMA","SCHEMA_AND_DATA","SCHEMA_ONLY","SCHEMABINDING","SCHEME","SCROLL","SCROLL_LOCKS","SEARCH","SECOND","SECONDARY","SECONDARY_ONLY","SECONDARY_ROLE","SECONDS","SECRET","SECURITY_LOG","SECURITYAUDIT","SELECT","SELECTIVE","SELF","SEND","SENT","SEQUENCE","SERIALIZABLE","SERVER","SERVICE","SERVICE_BROKER","SERVICE_NAME","SESSION","SESSION_TIMEOUT","SET","SETS","SETUSER","SHOW_STATISTICS","SHOWCONTIG","SHOWPLAN","SHOWPLAN_ALL","SHOWPLAN_TEXT","SHOWPLAN_XML","SHRINKDATABASE","SHRINKFILE","SHUTDOWN","SID","SIGNATURE","SIMPLE","SINGLE_BLOB","SINGLE_CLOB","SINGLE_NCLOB","SINGLE_USER","SINGLETON","SIZE","SKIP","SMALLDATETIME","SMALLINT","SMALLMONEY","SNAPSHOT","SORT_IN_TEMPDB","SOURCE","SPARSE","SPATIAL","SPATIAL_WINDOW_MAX_CELLS","SPECIFICATION","SPLIT","SQL","SQL_VARIANT","SQLPERF","STANDBY","START","START_DATE","STARTED","STARTUP_STATE","STAT_HEADER","STATE","STATEMENT","STATIC","STATISTICAL_SEMANTICS","STATISTICS","STATISTICS_INCREMENTAL","STATISTICS_NORECOMPUTE","STATS","STATS_STREAM","STATUS","STATUSONLY","STOP","STOP_ON_ERROR","STOPAT","STOPATMARK","STOPBEFOREMARK","STOPLIST","STOPPED","SUBJECT","SUBSCRIPTION","SUPPORTED","SUSPEND","SWITCH","SYMMETRIC","SYNCHRONOUS_COMMIT","SYNONYM","SYSNAME","SYSTEM","TABLE","TABLERESULTS","TABLESAMPLE","TABLOCK","TABLOCKX","TAKE","TAPE","TARGET","TARGET_RECOVERY_TIME","TB","TCP","TEXT","TEXTIMAGE_ON","TEXTSIZE","THEN","THESAURUS","THROW","TIES","TIME","TIMEOUT","TIMER","TIMESTAMP","TINYINT","TO","TOP","TORN_PAGE_DETECTION","TRACEOFF","TRACEON","TRACESTATUS","TRACK_CAUSALITY","TRACK_COLUMNS_UPDATED","TRAN","TRANSACTION","TRANSFER","TRANSFORM_NOISE_WORDS","TRIGGER","TRIPLE_DES","TRIPLE_DES_3KEY","TRUE","TRUNCATE","TRUNCATEONLY","TRUSTWORTHY","TRY","TSQL","TWO_DIGIT_YEAR_CUTOFF","TYPE","TYPE_WARNING","UNBOUNDED","UNCHECKED","UNCOMMITTED","UNDEFINED","UNIQUE","UNIQUEIDENTIFIER","UNKNOWN","UNLIMITED","UNLOAD","UNSAFE","UPDATE","UPDATETEXT","UPDATEUSAGE","UPDLOCK","URL","USE","USED","USER","USEROPTIONS","USING","VALID_XML","VALIDATION","VALUE","VALUES","VARBINARY","VARCHAR","VARYING","VERIFYONLY","VERSION","VIEW","VIEW_METADATA","VIEWS","VISIBILITY","WAIT_AT_LOW_PRIORITY","WAITFOR","WEEK","WEIGHT","WELL_FORMED_XML","WHEN","WHERE","WHILE","WINDOWS","WITH","WITHIN","WITHOUT","WITNESS","WORK","WORKLOAD","WRITETEXT","XACT_ABORT","XLOCK","XMAX","XMIN","XML","XMLDATA","XMLNAMESPACES","XMLSCHEMA","XQUERY","XSINIL","YEAR","YMAX","YMIN"],operators:["ALL","AND","ANY","BETWEEN","EXISTS","IN","LIKE","NOT","OR","SOME","EXCEPT","INTERSECT","UNION","APPLY","CROSS","FULL","INNER","JOIN","LEFT","OUTER","RIGHT","CONTAINS","FREETEXT","IS","NULL","PIVOT","UNPIVOT","MATCHED"],builtinFunctions:["AVG","CHECKSUM_AGG","COUNT","COUNT_BIG","GROUPING","GROUPING_ID","MAX","MIN","SUM","STDEV","STDEVP","VAR","VARP","CUME_DIST","FIRST_VALUE","LAG","LAST_VALUE","LEAD","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","COLLATE","COLLATIONPROPERTY","TERTIARY_WEIGHTS","FEDERATION_FILTERING_VALUE","CAST","CONVERT","PARSE","TRY_CAST","TRY_CONVERT","TRY_PARSE","ASYMKEY_ID","ASYMKEYPROPERTY","CERTPROPERTY","CERT_ID","CRYPT_GEN_RANDOM","DECRYPTBYASYMKEY","DECRYPTBYCERT","DECRYPTBYKEY","DECRYPTBYKEYAUTOASYMKEY","DECRYPTBYKEYAUTOCERT","DECRYPTBYPASSPHRASE","ENCRYPTBYASYMKEY","ENCRYPTBYCERT","ENCRYPTBYKEY","ENCRYPTBYPASSPHRASE","HASHBYTES","IS_OBJECTSIGNED","KEY_GUID","KEY_ID","KEY_NAME","SIGNBYASYMKEY","SIGNBYCERT","SYMKEYPROPERTY","VERIFYSIGNEDBYCERT","VERIFYSIGNEDBYASYMKEY","CURSOR_STATUS","DATALENGTH","IDENT_CURRENT","IDENT_INCR","IDENT_SEED","IDENTITY","SQL_VARIANT_PROPERTY","CURRENT_TIMESTAMP","DATEADD","DATEDIFF","DATEFROMPARTS","DATENAME","DATEPART","DATETIME2FROMPARTS","DATETIMEFROMPARTS","DATETIMEOFFSETFROMPARTS","DAY","EOMONTH","GETDATE","GETUTCDATE","ISDATE","MONTH","SMALLDATETIMEFROMPARTS","SWITCHOFFSET","SYSDATETIME","SYSDATETIMEOFFSET","SYSUTCDATETIME","TIMEFROMPARTS","TODATETIMEOFFSET","YEAR","CHOOSE","COALESCE","IIF","NULLIF","ABS","ACOS","ASIN","ATAN","ATN2","CEILING","COS","COT","DEGREES","EXP","FLOOR","LOG","LOG10","PI","POWER","RADIANS","RAND","ROUND","SIGN","SIN","SQRT","SQUARE","TAN","APP_NAME","APPLOCK_MODE","APPLOCK_TEST","ASSEMBLYPROPERTY","COL_LENGTH","COL_NAME","COLUMNPROPERTY","DATABASE_PRINCIPAL_ID","DATABASEPROPERTYEX","DB_ID","DB_NAME","FILE_ID","FILE_IDEX","FILE_NAME","FILEGROUP_ID","FILEGROUP_NAME","FILEGROUPPROPERTY","FILEPROPERTY","FULLTEXTCATALOGPROPERTY","FULLTEXTSERVICEPROPERTY","INDEX_COL","INDEXKEY_PROPERTY","INDEXPROPERTY","OBJECT_DEFINITION","OBJECT_ID","OBJECT_NAME","OBJECT_SCHEMA_NAME","OBJECTPROPERTY","OBJECTPROPERTYEX","ORIGINAL_DB_NAME","PARSENAME","SCHEMA_ID","SCHEMA_NAME","SCOPE_IDENTITY","SERVERPROPERTY","STATS_DATE","TYPE_ID","TYPE_NAME","TYPEPROPERTY","DENSE_RANK","NTILE","RANK","ROW_NUMBER","PUBLISHINGSERVERNAME","OPENDATASOURCE","OPENQUERY","OPENROWSET","OPENXML","CERTENCODED","CERTPRIVATEKEY","CURRENT_USER","HAS_DBACCESS","HAS_PERMS_BY_NAME","IS_MEMBER","IS_ROLEMEMBER","IS_SRVROLEMEMBER","LOGINPROPERTY","ORIGINAL_LOGIN","PERMISSIONS","PWDENCRYPT","PWDCOMPARE","SESSION_USER","SESSIONPROPERTY","SUSER_ID","SUSER_NAME","SUSER_SID","SUSER_SNAME","SYSTEM_USER","USER","USER_ID","USER_NAME","ASCII","CHAR","CHARINDEX","CONCAT","DIFFERENCE","FORMAT","LEFT","LEN","LOWER","LTRIM","NCHAR","PATINDEX","QUOTENAME","REPLACE","REPLICATE","REVERSE","RIGHT","RTRIM","SOUNDEX","SPACE","STR","STUFF","SUBSTRING","UNICODE","UPPER","BINARY_CHECKSUM","CHECKSUM","CONNECTIONPROPERTY","CONTEXT_INFO","CURRENT_REQUEST_ID","ERROR_LINE","ERROR_NUMBER","ERROR_MESSAGE","ERROR_PROCEDURE","ERROR_SEVERITY","ERROR_STATE","FORMATMESSAGE","GETANSINULL","GET_FILESTREAM_TRANSACTION_CONTEXT","HOST_ID","HOST_NAME","ISNULL","ISNUMERIC","MIN_ACTIVE_ROWVERSION","NEWID","NEWSEQUENTIALID","ROWCOUNT_BIG","XACT_STATE","TEXTPTR","TEXTVALID","COLUMNS_UPDATED","EVENTDATA","TRIGGER_NESTLEVEL","UPDATE","CHANGETABLE","CHANGE_TRACKING_CONTEXT","CHANGE_TRACKING_CURRENT_VERSION","CHANGE_TRACKING_IS_COLUMN_IN_MASK","CHANGE_TRACKING_MIN_VALID_VERSION","CONTAINSTABLE","FREETEXTTABLE","SEMANTICKEYPHRASETABLE","SEMANTICSIMILARITYDETAILSTABLE","SEMANTICSIMILARITYTABLE","FILETABLEROOTPATH","GETFILENAMESPACEPATH","GETPATHLOCATOR","PATHNAME","GET_TRANSMISSION_STATUS"],builtinVariables:["@@DATEFIRST","@@DBTS","@@LANGID","@@LANGUAGE","@@LOCK_TIMEOUT","@@MAX_CONNECTIONS","@@MAX_PRECISION","@@NESTLEVEL","@@OPTIONS","@@REMSERVER","@@SERVERNAME","@@SERVICENAME","@@SPID","@@TEXTSIZE","@@VERSION","@@CURSOR_ROWS","@@FETCH_STATUS","@@DATEFIRST","@@PROCID","@@ERROR","@@IDENTITY","@@ROWCOUNT","@@TRANCOUNT","@@CONNECTIONS","@@CPU_BUSY","@@IDLE","@@IO_BUSY","@@PACKET_ERRORS","@@PACK_RECEIVED","@@PACK_SENT","@@TIMETICKS","@@TOTAL_ERRORS","@@TOTAL_READ","@@TOTAL_WRITE"],pseudoColumns:["$ACTION","$IDENTITY","$ROWGUID","$PARTITION"],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@pseudoColumns"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@#$]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":"predefined","@default":"identifier"}}]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/N'/,{token:"string",next:"@string"}],[/'/,{token:"string",next:"@string"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/\[/,{token:"identifier.quote",next:"@bracketedIdentifier"}],[/"/,{token:"identifier.quote",next:"@quotedIdentifier"}]],bracketedIdentifier:[[/[^\]]+/,"identifier"],[/]]/,"identifier"],[/]/,{token:"identifier.quote",next:"@pop"}]],quotedIdentifier:[[/[^"]+/,"identifier"],[/""/,"identifier"],[/"/,{token:"identifier.quote",next:"@pop"}]],scopes:[[/BEGIN\s+(DISTRIBUTED\s+)?TRAN(SACTION)?\b/i,"keyword"],[/BEGIN\s+TRY\b/i,{token:"keyword.try"}],[/END\s+TRY\b/i,{token:"keyword.try"}],[/BEGIN\s+CATCH\b/i,{token:"keyword.catch"}],[/END\s+CATCH\b/i,{token:"keyword.catch"}],[/(BEGIN|CASE)\b/i,{token:"keyword.block"}],[/END\b/i,{token:"keyword.block"}],[/WHEN\b/i,{token:"keyword.choice"}],[/THEN\b/i,{token:"keyword.choice"}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[94],{495:function(E,T,R){"use strict";R.r(T),R.d(T,"conf",(function(){return A})),R.d(T,"language",(function(){return I}));var A={comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},I={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["ABORT_AFTER_WAIT","ABSENT","ABSOLUTE","ACCENT_SENSITIVITY","ACTION","ACTIVATION","ACTIVE","ADD","ADDRESS","ADMIN","AES","AES_128","AES_192","AES_256","AFFINITY","AFTER","AGGREGATE","ALGORITHM","ALL_CONSTRAINTS","ALL_ERRORMSGS","ALL_INDEXES","ALL_LEVELS","ALL_SPARSE_COLUMNS","ALLOW_CONNECTIONS","ALLOW_MULTIPLE_EVENT_LOSS","ALLOW_PAGE_LOCKS","ALLOW_ROW_LOCKS","ALLOW_SINGLE_EVENT_LOSS","ALLOW_SNAPSHOT_ISOLATION","ALLOWED","ALTER","ANONYMOUS","ANSI_DEFAULTS","ANSI_NULL_DEFAULT","ANSI_NULL_DFLT_OFF","ANSI_NULL_DFLT_ON","ANSI_NULLS","ANSI_PADDING","ANSI_WARNINGS","APPEND","APPLICATION","APPLICATION_LOG","ARITHABORT","ARITHIGNORE","AS","ASC","ASSEMBLY","ASYMMETRIC","ASYNCHRONOUS_COMMIT","AT","ATOMIC","ATTACH","ATTACH_REBUILD_LOG","AUDIT","AUDIT_GUID","AUTHENTICATION","AUTHORIZATION","AUTO","AUTO_CLEANUP","AUTO_CLOSE","AUTO_CREATE_STATISTICS","AUTO_SHRINK","AUTO_UPDATE_STATISTICS","AUTO_UPDATE_STATISTICS_ASYNC","AUTOMATED_BACKUP_PREFERENCE","AUTOMATIC","AVAILABILITY","AVAILABILITY_MODE","BACKUP","BACKUP_PRIORITY","BASE64","BATCHSIZE","BEGIN","BEGIN_DIALOG","BIGINT","BINARY","BINDING","BIT","BLOCKERS","BLOCKSIZE","BOUNDING_BOX","BREAK","BROKER","BROKER_INSTANCE","BROWSE","BUCKET_COUNT","BUFFER","BUFFERCOUNT","BULK","BULK_LOGGED","BY","CACHE","CALL","CALLED","CALLER","CAP_CPU_PERCENT","CASCADE","CASE","CATALOG","CATCH","CELLS_PER_OBJECT","CERTIFICATE","CHANGE_RETENTION","CHANGE_TRACKING","CHANGES","CHAR","CHARACTER","CHECK","CHECK_CONSTRAINTS","CHECK_EXPIRATION","CHECK_POLICY","CHECKALLOC","CHECKCATALOG","CHECKCONSTRAINTS","CHECKDB","CHECKFILEGROUP","CHECKIDENT","CHECKPOINT","CHECKTABLE","CLASSIFIER_FUNCTION","CLEANTABLE","CLEANUP","CLEAR","CLOSE","CLUSTER","CLUSTERED","CODEPAGE","COLLATE","COLLECTION","COLUMN","COLUMN_SET","COLUMNS","COLUMNSTORE","COLUMNSTORE_ARCHIVE","COMMIT","COMMITTED","COMPATIBILITY_LEVEL","COMPRESSION","COMPUTE","CONCAT","CONCAT_NULL_YIELDS_NULL","CONFIGURATION","CONNECT","CONSTRAINT","CONTAINMENT","CONTENT","CONTEXT","CONTINUE","CONTINUE_AFTER_ERROR","CONTRACT","CONTRACT_NAME","CONTROL","CONVERSATION","COOKIE","COPY_ONLY","COUNTER","CPU","CREATE","CREATE_NEW","CREATION_DISPOSITION","CREDENTIAL","CRYPTOGRAPHIC","CUBE","CURRENT","CURRENT_DATE","CURSOR","CURSOR_CLOSE_ON_COMMIT","CURSOR_DEFAULT","CYCLE","DATA","DATA_COMPRESSION","DATA_PURITY","DATABASE","DATABASE_DEFAULT","DATABASE_MIRRORING","DATABASE_SNAPSHOT","DATAFILETYPE","DATE","DATE_CORRELATION_OPTIMIZATION","DATEFIRST","DATEFORMAT","DATETIME","DATETIME2","DATETIMEOFFSET","DAY","DAYOFYEAR","DAYS","DB_CHAINING","DBCC","DBREINDEX","DDL_DATABASE_LEVEL_EVENTS","DEADLOCK_PRIORITY","DEALLOCATE","DEC","DECIMAL","DECLARE","DECRYPTION","DEFAULT","DEFAULT_DATABASE","DEFAULT_FULLTEXT_LANGUAGE","DEFAULT_LANGUAGE","DEFAULT_SCHEMA","DEFINITION","DELAY","DELAYED_DURABILITY","DELETE","DELETED","DENSITY_VECTOR","DENY","DEPENDENTS","DES","DESC","DESCRIPTION","DESX","DHCP","DIAGNOSTICS","DIALOG","DIFFERENTIAL","DIRECTORY_NAME","DISABLE","DISABLE_BROKER","DISABLED","DISK","DISTINCT","DISTRIBUTED","DOCUMENT","DOUBLE","DROP","DROP_EXISTING","DROPCLEANBUFFERS","DUMP","DURABILITY","DYNAMIC","EDITION","ELEMENTS","ELSE","EMERGENCY","EMPTY","EMPTYFILE","ENABLE","ENABLE_BROKER","ENABLED","ENCRYPTION","END","ENDPOINT","ENDPOINT_URL","ERRLVL","ERROR","ERROR_BROKER_CONVERSATIONS","ERRORFILE","ESCAPE","ESTIMATEONLY","EVENT","EVENT_RETENTION_MODE","EXEC","EXECUTABLE","EXECUTE","EXIT","EXPAND","EXPIREDATE","EXPIRY_DATE","EXPLICIT","EXTENDED_LOGICAL_CHECKS","EXTENSION","EXTERNAL","EXTERNAL_ACCESS","FAIL_OPERATION","FAILOVER","FAILOVER_MODE","FAILURE_CONDITION_LEVEL","FALSE","FAN_IN","FAST","FAST_FORWARD","FETCH","FIELDTERMINATOR","FILE","FILEGROUP","FILEGROWTH","FILELISTONLY","FILENAME","FILEPATH","FILESTREAM","FILESTREAM_ON","FILETABLE_COLLATE_FILENAME","FILETABLE_DIRECTORY","FILETABLE_FULLPATH_UNIQUE_CONSTRAINT_NAME","FILETABLE_NAMESPACE","FILETABLE_PRIMARY_KEY_CONSTRAINT_NAME","FILETABLE_STREAMID_UNIQUE_CONSTRAINT_NAME","FILLFACTOR","FILTERING","FIRE_TRIGGERS","FIRST","FIRSTROW","FLOAT","FMTONLY","FOLLOWING","FOR","FORCE","FORCE_FAILOVER_ALLOW_DATA_LOSS","FORCE_SERVICE_ALLOW_DATA_LOSS","FORCED","FORCEPLAN","FORCESCAN","FORCESEEK","FOREIGN","FORMATFILE","FORMSOF","FORWARD_ONLY","FREE","FREEPROCCACHE","FREESESSIONCACHE","FREESYSTEMCACHE","FROM","FULL","FULLSCAN","FULLTEXT","FUNCTION","GB","GEOGRAPHY_AUTO_GRID","GEOGRAPHY_GRID","GEOMETRY_AUTO_GRID","GEOMETRY_GRID","GET","GLOBAL","GO","GOTO","GOVERNOR","GRANT","GRIDS","GROUP","GROUP_MAX_REQUESTS","HADR","HASH","HASHED","HAVING","HEADERONLY","HEALTH_CHECK_TIMEOUT","HELP","HIERARCHYID","HIGH","HINT","HISTOGRAM","HOLDLOCK","HONOR_BROKER_PRIORITY","HOUR","HOURS","IDENTITY","IDENTITY_INSERT","IDENTITY_VALUE","IDENTITYCOL","IF","IGNORE_CONSTRAINTS","IGNORE_DUP_KEY","IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX","IGNORE_TRIGGERS","IMAGE","IMMEDIATE","IMPERSONATE","IMPLICIT_TRANSACTIONS","IMPORTANCE","INCLUDE","INCREMENT","INCREMENTAL","INDEX","INDEXDEFRAG","INFINITE","INFLECTIONAL","INIT","INITIATOR","INPUT","INPUTBUFFER","INSENSITIVE","INSERT","INSERTED","INSTEAD","INT","INTEGER","INTO","IO","IP","ISABOUT","ISOLATION","JOB","KB","KEEP","KEEP_CDC","KEEP_NULLS","KEEP_REPLICATION","KEEPDEFAULTS","KEEPFIXED","KEEPIDENTITY","KEEPNULLS","KERBEROS","KEY","KEY_SOURCE","KEYS","KEYSET","KILL","KILOBYTES_PER_BATCH","LABELONLY","LANGUAGE","LAST","LASTROW","LEVEL","LEVEL_1","LEVEL_2","LEVEL_3","LEVEL_4","LIFETIME","LIMIT","LINENO","LIST","LISTENER","LISTENER_IP","LISTENER_PORT","LOAD","LOADHISTORY","LOB_COMPACTION","LOCAL","LOCAL_SERVICE_NAME","LOCK_ESCALATION","LOCK_TIMEOUT","LOGIN","LOGSPACE","LOOP","LOW","MANUAL","MARK","MARK_IN_USE_FOR_REMOVAL","MASTER","MAX_CPU_PERCENT","MAX_DISPATCH_LATENCY","MAX_DOP","MAX_DURATION","MAX_EVENT_SIZE","MAX_FILES","MAX_IOPS_PER_VOLUME","MAX_MEMORY","MAX_MEMORY_PERCENT","MAX_QUEUE_READERS","MAX_ROLLOVER_FILES","MAX_SIZE","MAXDOP","MAXERRORS","MAXLENGTH","MAXRECURSION","MAXSIZE","MAXTRANSFERSIZE","MAXVALUE","MB","MEDIADESCRIPTION","MEDIANAME","MEDIAPASSWORD","MEDIUM","MEMBER","MEMORY_OPTIMIZED","MEMORY_OPTIMIZED_DATA","MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT","MEMORY_PARTITION_MODE","MERGE","MESSAGE","MESSAGE_FORWARD_SIZE","MESSAGE_FORWARDING","MICROSECOND","MILLISECOND","MIN_CPU_PERCENT","MIN_IOPS_PER_VOLUME","MIN_MEMORY_PERCENT","MINUTE","MINUTES","MINVALUE","MIRROR","MIRROR_ADDRESS","MODIFY","MONEY","MONTH","MOVE","MULTI_USER","MUST_CHANGE","NAME","NANOSECOND","NATIONAL","NATIVE_COMPILATION","NCHAR","NEGOTIATE","NESTED_TRIGGERS","NEW_ACCOUNT","NEW_BROKER","NEW_PASSWORD","NEWNAME","NEXT","NO","NO_BROWSETABLE","NO_CHECKSUM","NO_COMPRESSION","NO_EVENT_LOSS","NO_INFOMSGS","NO_TRUNCATE","NO_WAIT","NOCHECK","NOCOUNT","NOEXEC","NOEXPAND","NOFORMAT","NOINDEX","NOINIT","NOLOCK","NON","NON_TRANSACTED_ACCESS","NONCLUSTERED","NONE","NORECOMPUTE","NORECOVERY","NORESEED","NORESET","NOREWIND","NORMAL","NOSKIP","NOTIFICATION","NOTRUNCATE","NOUNLOAD","NOWAIT","NTEXT","NTLM","NUMANODE","NUMERIC","NUMERIC_ROUNDABORT","NVARCHAR","OBJECT","OF","OFF","OFFLINE","OFFSET","OFFSETS","OLD_ACCOUNT","OLD_PASSWORD","ON","ON_FAILURE","ONLINE","ONLY","OPEN","OPEN_EXISTING","OPENTRAN","OPTIMISTIC","OPTIMIZE","OPTION","ORDER","OUT","OUTPUT","OUTPUTBUFFER","OVER","OVERRIDE","OWNER","OWNERSHIP","PAD_INDEX","PAGE","PAGE_VERIFY","PAGECOUNT","PAGLOCK","PARAMETERIZATION","PARSEONLY","PARTIAL","PARTITION","PARTITIONS","PARTNER","PASSWORD","PATH","PER_CPU","PER_NODE","PERCENT","PERMISSION_SET","PERSISTED","PHYSICAL_ONLY","PLAN","POISON_MESSAGE_HANDLING","POOL","POPULATION","PORT","PRECEDING","PRECISION","PRIMARY","PRIMARY_ROLE","PRINT","PRIOR","PRIORITY","PRIORITY_LEVEL","PRIVATE","PRIVILEGES","PROC","PROCCACHE","PROCEDURE","PROCEDURE_NAME","PROCESS","PROFILE","PROPERTY","PROPERTY_DESCRIPTION","PROPERTY_INT_ID","PROPERTY_SET_GUID","PROVIDER","PROVIDER_KEY_NAME","PUBLIC","PUT","QUARTER","QUERY","QUERY_GOVERNOR_COST_LIMIT","QUEUE","QUEUE_DELAY","QUOTED_IDENTIFIER","RAISERROR","RANGE","RAW","RC2","RC4","RC4_128","READ","READ_COMMITTED_SNAPSHOT","READ_ONLY","READ_ONLY_ROUTING_LIST","READ_ONLY_ROUTING_URL","READ_WRITE","READ_WRITE_FILEGROUPS","READCOMMITTED","READCOMMITTEDLOCK","READONLY","READPAST","READTEXT","READUNCOMMITTED","READWRITE","REAL","REBUILD","RECEIVE","RECOMPILE","RECONFIGURE","RECOVERY","RECURSIVE","RECURSIVE_TRIGGERS","REFERENCES","REGENERATE","RELATED_CONVERSATION","RELATED_CONVERSATION_GROUP","RELATIVE","REMOTE","REMOTE_PROC_TRANSACTIONS","REMOTE_SERVICE_NAME","REMOVE","REORGANIZE","REPAIR_ALLOW_DATA_LOSS","REPAIR_FAST","REPAIR_REBUILD","REPEATABLE","REPEATABLEREAD","REPLICA","REPLICATION","REQUEST_MAX_CPU_TIME_SEC","REQUEST_MAX_MEMORY_GRANT_PERCENT","REQUEST_MEMORY_GRANT_TIMEOUT_SEC","REQUIRED","RESAMPLE","RESEED","RESERVE_DISK_SPACE","RESET","RESOURCE","RESTART","RESTORE","RESTRICT","RESTRICTED_USER","RESULT","RESUME","RETAINDAYS","RETENTION","RETURN","RETURNS","REVERT","REVOKE","REWIND","REWINDONLY","ROBUST","ROLE","ROLLBACK","ROLLUP","ROOT","ROUTE","ROW","ROWCOUNT","ROWGUIDCOL","ROWLOCK","ROWS","ROWS_PER_BATCH","ROWTERMINATOR","ROWVERSION","RSA_1024","RSA_2048","RSA_512","RULE","SAFE","SAFETY","SAMPLE","SAVE","SCHEDULER","SCHEMA","SCHEMA_AND_DATA","SCHEMA_ONLY","SCHEMABINDING","SCHEME","SCROLL","SCROLL_LOCKS","SEARCH","SECOND","SECONDARY","SECONDARY_ONLY","SECONDARY_ROLE","SECONDS","SECRET","SECURITY_LOG","SECURITYAUDIT","SELECT","SELECTIVE","SELF","SEND","SENT","SEQUENCE","SERIALIZABLE","SERVER","SERVICE","SERVICE_BROKER","SERVICE_NAME","SESSION","SESSION_TIMEOUT","SET","SETS","SETUSER","SHOW_STATISTICS","SHOWCONTIG","SHOWPLAN","SHOWPLAN_ALL","SHOWPLAN_TEXT","SHOWPLAN_XML","SHRINKDATABASE","SHRINKFILE","SHUTDOWN","SID","SIGNATURE","SIMPLE","SINGLE_BLOB","SINGLE_CLOB","SINGLE_NCLOB","SINGLE_USER","SINGLETON","SIZE","SKIP","SMALLDATETIME","SMALLINT","SMALLMONEY","SNAPSHOT","SORT_IN_TEMPDB","SOURCE","SPARSE","SPATIAL","SPATIAL_WINDOW_MAX_CELLS","SPECIFICATION","SPLIT","SQL","SQL_VARIANT","SQLPERF","STANDBY","START","START_DATE","STARTED","STARTUP_STATE","STAT_HEADER","STATE","STATEMENT","STATIC","STATISTICAL_SEMANTICS","STATISTICS","STATISTICS_INCREMENTAL","STATISTICS_NORECOMPUTE","STATS","STATS_STREAM","STATUS","STATUSONLY","STOP","STOP_ON_ERROR","STOPAT","STOPATMARK","STOPBEFOREMARK","STOPLIST","STOPPED","SUBJECT","SUBSCRIPTION","SUPPORTED","SUSPEND","SWITCH","SYMMETRIC","SYNCHRONOUS_COMMIT","SYNONYM","SYSNAME","SYSTEM","TABLE","TABLERESULTS","TABLESAMPLE","TABLOCK","TABLOCKX","TAKE","TAPE","TARGET","TARGET_RECOVERY_TIME","TB","TCP","TEXT","TEXTIMAGE_ON","TEXTSIZE","THEN","THESAURUS","THROW","TIES","TIME","TIMEOUT","TIMER","TIMESTAMP","TINYINT","TO","TOP","TORN_PAGE_DETECTION","TRACEOFF","TRACEON","TRACESTATUS","TRACK_CAUSALITY","TRACK_COLUMNS_UPDATED","TRAN","TRANSACTION","TRANSFER","TRANSFORM_NOISE_WORDS","TRIGGER","TRIPLE_DES","TRIPLE_DES_3KEY","TRUE","TRUNCATE","TRUNCATEONLY","TRUSTWORTHY","TRY","TSQL","TWO_DIGIT_YEAR_CUTOFF","TYPE","TYPE_WARNING","UNBOUNDED","UNCHECKED","UNCOMMITTED","UNDEFINED","UNIQUE","UNIQUEIDENTIFIER","UNKNOWN","UNLIMITED","UNLOAD","UNSAFE","UPDATE","UPDATETEXT","UPDATEUSAGE","UPDLOCK","URL","USE","USED","USER","USEROPTIONS","USING","VALID_XML","VALIDATION","VALUE","VALUES","VARBINARY","VARCHAR","VARYING","VERIFYONLY","VERSION","VIEW","VIEW_METADATA","VIEWS","VISIBILITY","WAIT_AT_LOW_PRIORITY","WAITFOR","WEEK","WEIGHT","WELL_FORMED_XML","WHEN","WHERE","WHILE","WINDOWS","WITH","WITHIN","WITHOUT","WITNESS","WORK","WORKLOAD","WRITETEXT","XACT_ABORT","XLOCK","XMAX","XMIN","XML","XMLDATA","XMLNAMESPACES","XMLSCHEMA","XQUERY","XSINIL","YEAR","YMAX","YMIN"],operators:["ALL","AND","ANY","BETWEEN","EXISTS","IN","LIKE","NOT","OR","SOME","EXCEPT","INTERSECT","UNION","APPLY","CROSS","FULL","INNER","JOIN","LEFT","OUTER","RIGHT","CONTAINS","FREETEXT","IS","NULL","PIVOT","UNPIVOT","MATCHED"],builtinFunctions:["AVG","CHECKSUM_AGG","COUNT","COUNT_BIG","GROUPING","GROUPING_ID","MAX","MIN","SUM","STDEV","STDEVP","VAR","VARP","CUME_DIST","FIRST_VALUE","LAG","LAST_VALUE","LEAD","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","COLLATE","COLLATIONPROPERTY","TERTIARY_WEIGHTS","FEDERATION_FILTERING_VALUE","CAST","CONVERT","PARSE","TRY_CAST","TRY_CONVERT","TRY_PARSE","ASYMKEY_ID","ASYMKEYPROPERTY","CERTPROPERTY","CERT_ID","CRYPT_GEN_RANDOM","DECRYPTBYASYMKEY","DECRYPTBYCERT","DECRYPTBYKEY","DECRYPTBYKEYAUTOASYMKEY","DECRYPTBYKEYAUTOCERT","DECRYPTBYPASSPHRASE","ENCRYPTBYASYMKEY","ENCRYPTBYCERT","ENCRYPTBYKEY","ENCRYPTBYPASSPHRASE","HASHBYTES","IS_OBJECTSIGNED","KEY_GUID","KEY_ID","KEY_NAME","SIGNBYASYMKEY","SIGNBYCERT","SYMKEYPROPERTY","VERIFYSIGNEDBYCERT","VERIFYSIGNEDBYASYMKEY","CURSOR_STATUS","DATALENGTH","IDENT_CURRENT","IDENT_INCR","IDENT_SEED","IDENTITY","SQL_VARIANT_PROPERTY","CURRENT_TIMESTAMP","DATEADD","DATEDIFF","DATEFROMPARTS","DATENAME","DATEPART","DATETIME2FROMPARTS","DATETIMEFROMPARTS","DATETIMEOFFSETFROMPARTS","DAY","EOMONTH","GETDATE","GETUTCDATE","ISDATE","MONTH","SMALLDATETIMEFROMPARTS","SWITCHOFFSET","SYSDATETIME","SYSDATETIMEOFFSET","SYSUTCDATETIME","TIMEFROMPARTS","TODATETIMEOFFSET","YEAR","CHOOSE","COALESCE","IIF","NULLIF","ABS","ACOS","ASIN","ATAN","ATN2","CEILING","COS","COT","DEGREES","EXP","FLOOR","LOG","LOG10","PI","POWER","RADIANS","RAND","ROUND","SIGN","SIN","SQRT","SQUARE","TAN","APP_NAME","APPLOCK_MODE","APPLOCK_TEST","ASSEMBLYPROPERTY","COL_LENGTH","COL_NAME","COLUMNPROPERTY","DATABASE_PRINCIPAL_ID","DATABASEPROPERTYEX","DB_ID","DB_NAME","FILE_ID","FILE_IDEX","FILE_NAME","FILEGROUP_ID","FILEGROUP_NAME","FILEGROUPPROPERTY","FILEPROPERTY","FULLTEXTCATALOGPROPERTY","FULLTEXTSERVICEPROPERTY","INDEX_COL","INDEXKEY_PROPERTY","INDEXPROPERTY","OBJECT_DEFINITION","OBJECT_ID","OBJECT_NAME","OBJECT_SCHEMA_NAME","OBJECTPROPERTY","OBJECTPROPERTYEX","ORIGINAL_DB_NAME","PARSENAME","SCHEMA_ID","SCHEMA_NAME","SCOPE_IDENTITY","SERVERPROPERTY","STATS_DATE","TYPE_ID","TYPE_NAME","TYPEPROPERTY","DENSE_RANK","NTILE","RANK","ROW_NUMBER","PUBLISHINGSERVERNAME","OPENDATASOURCE","OPENQUERY","OPENROWSET","OPENXML","CERTENCODED","CERTPRIVATEKEY","CURRENT_USER","HAS_DBACCESS","HAS_PERMS_BY_NAME","IS_MEMBER","IS_ROLEMEMBER","IS_SRVROLEMEMBER","LOGINPROPERTY","ORIGINAL_LOGIN","PERMISSIONS","PWDENCRYPT","PWDCOMPARE","SESSION_USER","SESSIONPROPERTY","SUSER_ID","SUSER_NAME","SUSER_SID","SUSER_SNAME","SYSTEM_USER","USER","USER_ID","USER_NAME","ASCII","CHAR","CHARINDEX","CONCAT","DIFFERENCE","FORMAT","LEFT","LEN","LOWER","LTRIM","NCHAR","PATINDEX","QUOTENAME","REPLACE","REPLICATE","REVERSE","RIGHT","RTRIM","SOUNDEX","SPACE","STR","STUFF","SUBSTRING","UNICODE","UPPER","BINARY_CHECKSUM","CHECKSUM","CONNECTIONPROPERTY","CONTEXT_INFO","CURRENT_REQUEST_ID","ERROR_LINE","ERROR_NUMBER","ERROR_MESSAGE","ERROR_PROCEDURE","ERROR_SEVERITY","ERROR_STATE","FORMATMESSAGE","GETANSINULL","GET_FILESTREAM_TRANSACTION_CONTEXT","HOST_ID","HOST_NAME","ISNULL","ISNUMERIC","MIN_ACTIVE_ROWVERSION","NEWID","NEWSEQUENTIALID","ROWCOUNT_BIG","XACT_STATE","TEXTPTR","TEXTVALID","COLUMNS_UPDATED","EVENTDATA","TRIGGER_NESTLEVEL","UPDATE","CHANGETABLE","CHANGE_TRACKING_CONTEXT","CHANGE_TRACKING_CURRENT_VERSION","CHANGE_TRACKING_IS_COLUMN_IN_MASK","CHANGE_TRACKING_MIN_VALID_VERSION","CONTAINSTABLE","FREETEXTTABLE","SEMANTICKEYPHRASETABLE","SEMANTICSIMILARITYDETAILSTABLE","SEMANTICSIMILARITYTABLE","FILETABLEROOTPATH","GETFILENAMESPACEPATH","GETPATHLOCATOR","PATHNAME","GET_TRANSMISSION_STATUS"],builtinVariables:["@@DATEFIRST","@@DBTS","@@LANGID","@@LANGUAGE","@@LOCK_TIMEOUT","@@MAX_CONNECTIONS","@@MAX_PRECISION","@@NESTLEVEL","@@OPTIONS","@@REMSERVER","@@SERVERNAME","@@SERVICENAME","@@SPID","@@TEXTSIZE","@@VERSION","@@CURSOR_ROWS","@@FETCH_STATUS","@@DATEFIRST","@@PROCID","@@ERROR","@@IDENTITY","@@ROWCOUNT","@@TRANCOUNT","@@CONNECTIONS","@@CPU_BUSY","@@IDLE","@@IO_BUSY","@@PACKET_ERRORS","@@PACK_RECEIVED","@@PACK_SENT","@@TIMETICKS","@@TOTAL_ERRORS","@@TOTAL_READ","@@TOTAL_WRITE"],pseudoColumns:["$ACTION","$IDENTITY","$ROWGUID","$PARTITION"],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@pseudoColumns"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@#$]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":"predefined","@default":"identifier"}}]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/N'/,{token:"string",next:"@string"}],[/'/,{token:"string",next:"@string"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/\[/,{token:"identifier.quote",next:"@bracketedIdentifier"}],[/"/,{token:"identifier.quote",next:"@quotedIdentifier"}]],bracketedIdentifier:[[/[^\]]+/,"identifier"],[/]]/,"identifier"],[/]/,{token:"identifier.quote",next:"@pop"}]],quotedIdentifier:[[/[^"]+/,"identifier"],[/""/,"identifier"],[/"/,{token:"identifier.quote",next:"@pop"}]],scopes:[[/BEGIN\s+(DISTRIBUTED\s+)?TRAN(SACTION)?\b/i,"keyword"],[/BEGIN\s+TRY\b/i,{token:"keyword.try"}],[/END\s+TRY\b/i,{token:"keyword.try"}],[/BEGIN\s+CATCH\b/i,{token:"keyword.catch"}],[/END\s+CATCH\b/i,{token:"keyword.catch"}],[/(BEGIN|CASE)\b/i,{token:"keyword.block"}],[/END\b/i,{token:"keyword.block"}],[/WHEN\b/i,{token:"keyword.choice"}],[/THEN\b/i,{token:"keyword.choice"}]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/94.62090088.js b/docs/src/.vuepress/dist/assets/js/95.c27f97f4.js similarity index 99% rename from docs/src/.vuepress/dist/assets/js/94.62090088.js rename to docs/src/.vuepress/dist/assets/js/95.c27f97f4.js index cd462706..75d9be08 100644 --- a/docs/src/.vuepress/dist/assets/js/94.62090088.js +++ b/docs/src/.vuepress/dist/assets/js/95.c27f97f4.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[94],{496:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",(function(){return t})),o.d(n,"language",(function(){return r}));var t={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"],["var","end_var"],["var_input","end_var"],["var_output","end_var"],["var_in_out","end_var"],["var_temp","end_var"],["var_global","end_var"],["var_access","end_var"],["var_external","end_var"],["type","end_type"],["struct","end_struct"],["program","end_program"],["function","end_function"],["function_block","end_function_block"],["action","end_action"],["step","end_step"],["initial_step","end_step"],["transaction","end_transaction"],["configuration","end_configuration"],["tcp","end_tcp"],["recource","end_recource"],["channel","end_channel"],["library","end_library"],["folder","end_folder"],["binaries","end_binaries"],["includes","end_includes"],["sources","end_sources"]],autoClosingPairs:[{open:"[",close:"]"},{open:"{",close:"}"},{open:"(",close:")"},{open:"/*",close:"*/"},{open:"'",close:"'",notIn:["string_sq"]},{open:'"',close:'"',notIn:["string_dq"]},{open:"var_input",close:"end_var"},{open:"var_output",close:"end_var"},{open:"var_in_out",close:"end_var"},{open:"var_temp",close:"end_var"},{open:"var_global",close:"end_var"},{open:"var_access",close:"end_var"},{open:"var_external",close:"end_var"},{open:"type",close:"end_type"},{open:"struct",close:"end_struct"},{open:"program",close:"end_program"},{open:"function",close:"end_function"},{open:"function_block",close:"end_function_block"},{open:"action",close:"end_action"},{open:"step",close:"end_step"},{open:"initial_step",close:"end_step"},{open:"transaction",close:"end_transaction"},{open:"configuration",close:"end_configuration"},{open:"tcp",close:"end_tcp"},{open:"recource",close:"end_recource"},{open:"channel",close:"end_channel"},{open:"library",close:"end_library"},{open:"folder",close:"end_folder"},{open:"binaries",close:"end_binaries"},{open:"includes",close:"end_includes"},{open:"sources",close:"end_sources"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"var",close:"end_var"},{open:"var_input",close:"end_var"},{open:"var_output",close:"end_var"},{open:"var_in_out",close:"end_var"},{open:"var_temp",close:"end_var"},{open:"var_global",close:"end_var"},{open:"var_access",close:"end_var"},{open:"var_external",close:"end_var"},{open:"type",close:"end_type"},{open:"struct",close:"end_struct"},{open:"program",close:"end_program"},{open:"function",close:"end_function"},{open:"function_block",close:"end_function_block"},{open:"action",close:"end_action"},{open:"step",close:"end_step"},{open:"initial_step",close:"end_step"},{open:"transaction",close:"end_transaction"},{open:"configuration",close:"end_configuration"},{open:"tcp",close:"end_tcp"},{open:"recource",close:"end_recource"},{open:"channel",close:"end_channel"},{open:"library",close:"end_library"},{open:"folder",close:"end_folder"},{open:"binaries",close:"end_binaries"},{open:"includes",close:"end_includes"},{open:"sources",close:"end_sources"}],folding:{markers:{start:new RegExp("^\\s*#pragma\\s+region\\b"),end:new RegExp("^\\s*#pragma\\s+endregion\\b")}}},r={defaultToken:"",tokenPostfix:".st",ignoreCase:!0,brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["if","end_if","elsif","else","case","of","to","__try","__catch","__finally","do","with","by","while","repeat","end_while","end_repeat","end_case","for","end_for","task","retain","non_retain","constant","with","at","exit","return","interval","priority","address","port","on_channel","then","iec","file","uses","version","packagetype","displayname","copyright","summary","vendor","common_source","from","extends"],constant:["false","true","null"],defineKeywords:["var","var_input","var_output","var_in_out","var_temp","var_global","var_access","var_external","end_var","type","end_type","struct","end_struct","program","end_program","function","end_function","function_block","end_function_block","interface","end_interface","method","end_method","property","end_property","namespace","end_namespace","configuration","end_configuration","tcp","end_tcp","resource","end_resource","channel","end_channel","library","end_library","folder","end_folder","binaries","end_binaries","includes","end_includes","sources","end_sources","action","end_action","step","initial_step","end_step","transaction","end_transaction"],typeKeywords:["int","sint","dint","lint","usint","uint","udint","ulint","real","lreal","time","date","time_of_day","date_and_time","string","bool","byte","word","dword","array","pointer","lword"],operators:["=",">","<",":",":=","<=",">=","<>","&","+","-","*","**","MOD","^","or","and","not","xor","abs","acos","asin","atan","cos","exp","expt","ln","log","sin","sqrt","tan","sel","max","min","limit","mux","shl","shr","rol","ror","indexof","sizeof","adr","adrinst","bitadr","is_valid","ref","ref_to"],builtinVariables:[],builtinFunctions:["sr","rs","tp","ton","tof","eq","ge","le","lt","ne","round","trunc","ctd","сtu","ctud","r_trig","f_trig","move","concat","delete","find","insert","left","len","replace","right","rtc"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/(\.\.)/,"delimiter"],[/\b(16#[0-9A-Fa-f\_]*)+\b/,"number.hex"],[/\b(2#[01\_]+)+\b/,"number.binary"],[/\b(8#[0-9\_]*)+\b/,"number.octal"],[/\b\d*\.\d+([eE][\-+]?\d+)?\b/,"number.float"],[/\b(L?REAL)#[0-9\_\.e]+\b/,"number.float"],[/\b(BYTE|(?:D|L)?WORD|U?(?:S|D|L)?INT)#[0-9\_]+\b/,"number"],[/\d+/,"number"],[/\b(T|DT|TOD)#[0-9:-_shmyd]+\b/,"tag"],[/\%(I|Q|M)(X|B|W|D|L)[0-9\.]+/,"tag"],[/\%(I|Q|M)[0-9\.]*/,"tag"],[/\b[A-Za-z]{1,6}#[0-9]+\b/,"tag"],[/\b(TO_|CTU_|CTD_|CTUD_|MUX_|SEL_)[A_Za-z]+\b/,"predefined"],[/\b[A_Za-z]+(_TO_)[A_Za-z]+\b/,"predefined"],[/[;]/,"delimiter"],[/[.]/,{token:"delimiter",next:"@params"}],[/[a-zA-Z_]\w*/,{cases:{"@operators":"operators","@keywords":"keyword","@typeKeywords":"type","@defineKeywords":"variable","@constant":"constant","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,{token:"string.quote",bracket:"@open",next:"@string_dq"}],[/'/,{token:"string.quote",bracket:"@open",next:"@string_sq"}],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],params:[[/\b[A-Za-z0-9_]+\b(?=\()/,{token:"identifier",next:"@pop"}],[/\b[A-Za-z0-9_]+\b/,"variable.name","@pop"]],comment:[[/[^\/*]+/,"comment"],[/\/\*/,"comment","@push"],["\\*/","comment","@pop"],[/[\/*]/,"comment"]],comment2:[[/[^\(*]+/,"comment"],[/\(\*/,"comment","@push"],["\\*\\)","comment","@pop"],[/[\(*]/,"comment"]],whitespace:[[/[ \t\r\n]+/,"white"],[/\/\/.*$/,"comment"],[/\/\*/,"comment","@comment"],[/\(\*/,"comment","@comment2"]],string_dq:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",bracket:"@close",next:"@pop"}]],string_sq:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[95],{496:function(e,n,o){"use strict";o.r(n),o.d(n,"conf",(function(){return t})),o.d(n,"language",(function(){return r}));var t={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"],["var","end_var"],["var_input","end_var"],["var_output","end_var"],["var_in_out","end_var"],["var_temp","end_var"],["var_global","end_var"],["var_access","end_var"],["var_external","end_var"],["type","end_type"],["struct","end_struct"],["program","end_program"],["function","end_function"],["function_block","end_function_block"],["action","end_action"],["step","end_step"],["initial_step","end_step"],["transaction","end_transaction"],["configuration","end_configuration"],["tcp","end_tcp"],["recource","end_recource"],["channel","end_channel"],["library","end_library"],["folder","end_folder"],["binaries","end_binaries"],["includes","end_includes"],["sources","end_sources"]],autoClosingPairs:[{open:"[",close:"]"},{open:"{",close:"}"},{open:"(",close:")"},{open:"/*",close:"*/"},{open:"'",close:"'",notIn:["string_sq"]},{open:'"',close:'"',notIn:["string_dq"]},{open:"var_input",close:"end_var"},{open:"var_output",close:"end_var"},{open:"var_in_out",close:"end_var"},{open:"var_temp",close:"end_var"},{open:"var_global",close:"end_var"},{open:"var_access",close:"end_var"},{open:"var_external",close:"end_var"},{open:"type",close:"end_type"},{open:"struct",close:"end_struct"},{open:"program",close:"end_program"},{open:"function",close:"end_function"},{open:"function_block",close:"end_function_block"},{open:"action",close:"end_action"},{open:"step",close:"end_step"},{open:"initial_step",close:"end_step"},{open:"transaction",close:"end_transaction"},{open:"configuration",close:"end_configuration"},{open:"tcp",close:"end_tcp"},{open:"recource",close:"end_recource"},{open:"channel",close:"end_channel"},{open:"library",close:"end_library"},{open:"folder",close:"end_folder"},{open:"binaries",close:"end_binaries"},{open:"includes",close:"end_includes"},{open:"sources",close:"end_sources"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"var",close:"end_var"},{open:"var_input",close:"end_var"},{open:"var_output",close:"end_var"},{open:"var_in_out",close:"end_var"},{open:"var_temp",close:"end_var"},{open:"var_global",close:"end_var"},{open:"var_access",close:"end_var"},{open:"var_external",close:"end_var"},{open:"type",close:"end_type"},{open:"struct",close:"end_struct"},{open:"program",close:"end_program"},{open:"function",close:"end_function"},{open:"function_block",close:"end_function_block"},{open:"action",close:"end_action"},{open:"step",close:"end_step"},{open:"initial_step",close:"end_step"},{open:"transaction",close:"end_transaction"},{open:"configuration",close:"end_configuration"},{open:"tcp",close:"end_tcp"},{open:"recource",close:"end_recource"},{open:"channel",close:"end_channel"},{open:"library",close:"end_library"},{open:"folder",close:"end_folder"},{open:"binaries",close:"end_binaries"},{open:"includes",close:"end_includes"},{open:"sources",close:"end_sources"}],folding:{markers:{start:new RegExp("^\\s*#pragma\\s+region\\b"),end:new RegExp("^\\s*#pragma\\s+endregion\\b")}}},r={defaultToken:"",tokenPostfix:".st",ignoreCase:!0,brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["if","end_if","elsif","else","case","of","to","__try","__catch","__finally","do","with","by","while","repeat","end_while","end_repeat","end_case","for","end_for","task","retain","non_retain","constant","with","at","exit","return","interval","priority","address","port","on_channel","then","iec","file","uses","version","packagetype","displayname","copyright","summary","vendor","common_source","from","extends"],constant:["false","true","null"],defineKeywords:["var","var_input","var_output","var_in_out","var_temp","var_global","var_access","var_external","end_var","type","end_type","struct","end_struct","program","end_program","function","end_function","function_block","end_function_block","interface","end_interface","method","end_method","property","end_property","namespace","end_namespace","configuration","end_configuration","tcp","end_tcp","resource","end_resource","channel","end_channel","library","end_library","folder","end_folder","binaries","end_binaries","includes","end_includes","sources","end_sources","action","end_action","step","initial_step","end_step","transaction","end_transaction"],typeKeywords:["int","sint","dint","lint","usint","uint","udint","ulint","real","lreal","time","date","time_of_day","date_and_time","string","bool","byte","word","dword","array","pointer","lword"],operators:["=",">","<",":",":=","<=",">=","<>","&","+","-","*","**","MOD","^","or","and","not","xor","abs","acos","asin","atan","cos","exp","expt","ln","log","sin","sqrt","tan","sel","max","min","limit","mux","shl","shr","rol","ror","indexof","sizeof","adr","adrinst","bitadr","is_valid","ref","ref_to"],builtinVariables:[],builtinFunctions:["sr","rs","tp","ton","tof","eq","ge","le","lt","ne","round","trunc","ctd","сtu","ctud","r_trig","f_trig","move","concat","delete","find","insert","left","len","replace","right","rtc"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/(\.\.)/,"delimiter"],[/\b(16#[0-9A-Fa-f\_]*)+\b/,"number.hex"],[/\b(2#[01\_]+)+\b/,"number.binary"],[/\b(8#[0-9\_]*)+\b/,"number.octal"],[/\b\d*\.\d+([eE][\-+]?\d+)?\b/,"number.float"],[/\b(L?REAL)#[0-9\_\.e]+\b/,"number.float"],[/\b(BYTE|(?:D|L)?WORD|U?(?:S|D|L)?INT)#[0-9\_]+\b/,"number"],[/\d+/,"number"],[/\b(T|DT|TOD)#[0-9:-_shmyd]+\b/,"tag"],[/\%(I|Q|M)(X|B|W|D|L)[0-9\.]+/,"tag"],[/\%(I|Q|M)[0-9\.]*/,"tag"],[/\b[A-Za-z]{1,6}#[0-9]+\b/,"tag"],[/\b(TO_|CTU_|CTD_|CTUD_|MUX_|SEL_)[A_Za-z]+\b/,"predefined"],[/\b[A_Za-z]+(_TO_)[A_Za-z]+\b/,"predefined"],[/[;]/,"delimiter"],[/[.]/,{token:"delimiter",next:"@params"}],[/[a-zA-Z_]\w*/,{cases:{"@operators":"operators","@keywords":"keyword","@typeKeywords":"type","@defineKeywords":"variable","@constant":"constant","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,{token:"string.quote",bracket:"@open",next:"@string_dq"}],[/'/,{token:"string.quote",bracket:"@open",next:"@string_sq"}],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],params:[[/\b[A-Za-z0-9_]+\b(?=\()/,{token:"identifier",next:"@pop"}],[/\b[A-Za-z0-9_]+\b/,"variable.name","@pop"]],comment:[[/[^\/*]+/,"comment"],[/\/\*/,"comment","@push"],["\\*/","comment","@pop"],[/[\/*]/,"comment"]],comment2:[[/[^\(*]+/,"comment"],[/\(\*/,"comment","@push"],["\\*\\)","comment","@pop"],[/[\(*]/,"comment"]],whitespace:[[/[ \t\r\n]+/,"white"],[/\/\/.*$/,"comment"],[/\/\*/,"comment","@comment"],[/\(\*/,"comment","@comment2"]],string_dq:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",bracket:"@close",next:"@pop"}]],string_sq:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/95.7669b444.js b/docs/src/.vuepress/dist/assets/js/96.d6fda379.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/95.7669b444.js rename to docs/src/.vuepress/dist/assets/js/96.d6fda379.js index 9bdf90d5..8c2ac520 100644 --- a/docs/src/.vuepress/dist/assets/js/95.7669b444.js +++ b/docs/src/.vuepress/dist/assets/js/96.d6fda379.js @@ -1,4 +1,4 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[95],{497:function(e,t,o){"use strict";o.r(t),o.d(t,"conf",(function(){return n})),o.d(t,"language",(function(){return i})); +(window.webpackJsonp=window.webpackJsonp||[]).push([[96],{497:function(e,t,o){"use strict";o.r(t),o.d(t,"conf",(function(){return n})),o.d(t,"language",(function(){return i})); /*!--------------------------------------------------------------------------------------------- * Copyright (C) David Owens II, owensd.io. All rights reserved. *--------------------------------------------------------------------------------------------*/ diff --git a/docs/src/.vuepress/dist/assets/js/96.10318e4a.js b/docs/src/.vuepress/dist/assets/js/97.0e9f507e.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/96.10318e4a.js rename to docs/src/.vuepress/dist/assets/js/97.0e9f507e.js index 843cfb2d..aaaeef01 100644 --- a/docs/src/.vuepress/dist/assets/js/96.10318e4a.js +++ b/docs/src/.vuepress/dist/assets/js/97.0e9f507e.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[96],{498:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return o})),n.d(t,"language",(function(){return s}));var o={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},s={tokenPostfix:".tcl",specialFunctions:["set","unset","rename","variable","proc","coroutine","foreach","incr","append","lappend","linsert","lreplace"],mainFunctions:["if","then","elseif","else","case","switch","while","for","break","continue","return","package","namespace","catch","exit","eval","expr","uplevel","upvar"],builtinFunctions:["file","info","concat","join","lindex","list","llength","lrange","lsearch","lsort","split","array","parray","binary","format","regexp","regsub","scan","string","subst","dict","cd","clock","exec","glob","pid","pwd","close","eof","fblocked","fconfigure","fcopy","fileevent","flush","gets","open","puts","read","seek","socket","tell","interp","after","auto_execok","auto_load","auto_mkindex","auto_reset","bgerror","error","global","history","load","source","time","trace","unknown","unset","update","vwait","winfo","wm","bind","event","pack","place","grid","font","bell","clipboard","destroy","focus","grab","lower","option","raise","selection","send","tk","tkwait","tk_bisque","tk_focusNext","tk_focusPrev","tk_focusFollowsMouse","tk_popup","tk_setPalette"],symbols:/[=><!~?:&|+\-*\/\^%]+/,brackets:[{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"}],escapes:/\\(?:[abfnrtv\\"'\[\]\{\};\$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,variables:/(?:\$+(?:(?:\:\:?)?[a-zA-Z_]\w*)+)/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@specialFunctions":{token:"keyword.flow",next:"@specialFunc"},"@mainFunctions":"keyword","@builtinFunctions":"variable","@default":"operator.scss"}}],[/\s+\-+(?!\d|\.)\w*|{\*}/,"metatag"],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/@symbols/,"operator"],[/\$+(?:\:\:)?\{/,{token:"identifier",next:"@nestedVariable"}],[/@variables/,"type.identifier"],[/\.(?!\d|\.)[\w\-]*/,"operator.sql"],[/\d+(\.\d+)?/,"number"],[/\d+/,"number"],[/;/,"delimiter"],[/"/,{token:"string.quote",bracket:"@open",next:"@dstring"}],[/'/,{token:"string.quote",bracket:"@open",next:"@sstring"}]],dstring:[[/\[/,{token:"@brackets",next:"@nestedCall"}],[/\$+(?:\:\:)?\{/,{token:"identifier",next:"@nestedVariable"}],[/@variables/,"type.identifier"],[/[^\\$\[\]"]+/,"string"],[/@escapes/,"string.escape"],[/"/,{token:"string.quote",bracket:"@close",next:"@pop"}]],sstring:[[/\[/,{token:"@brackets",next:"@nestedCall"}],[/\$+(?:\:\:)?\{/,{token:"identifier",next:"@nestedVariable"}],[/@variables/,"type.identifier"],[/[^\\$\[\]']+/,"string"],[/@escapes/,"string.escape"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/#.*\\$/,{token:"comment",next:"@newlineComment"}],[/#.*(?!\\)$/,"comment"]],newlineComment:[[/.*\\$/,"comment"],[/.*(?!\\)$/,{token:"comment",next:"@pop"}]],nestedVariable:[[/[^\{\}\$]+/,"type.identifier"],[/\}/,{token:"identifier",next:"@pop"}]],nestedCall:[[/\[/,{token:"@brackets",next:"@nestedCall"}],[/\]/,{token:"@brackets",next:"@pop"}],{include:"root"}],specialFunc:[[/"/,{token:"string",next:"@dstring"}],[/'/,{token:"string",next:"@sstring"}],[/\S+/,{token:"type",next:"@pop"}]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[97],{498:function(e,t,n){"use strict";n.r(t),n.d(t,"conf",(function(){return o})),n.d(t,"language",(function(){return s}));var o={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},s={tokenPostfix:".tcl",specialFunctions:["set","unset","rename","variable","proc","coroutine","foreach","incr","append","lappend","linsert","lreplace"],mainFunctions:["if","then","elseif","else","case","switch","while","for","break","continue","return","package","namespace","catch","exit","eval","expr","uplevel","upvar"],builtinFunctions:["file","info","concat","join","lindex","list","llength","lrange","lsearch","lsort","split","array","parray","binary","format","regexp","regsub","scan","string","subst","dict","cd","clock","exec","glob","pid","pwd","close","eof","fblocked","fconfigure","fcopy","fileevent","flush","gets","open","puts","read","seek","socket","tell","interp","after","auto_execok","auto_load","auto_mkindex","auto_reset","bgerror","error","global","history","load","source","time","trace","unknown","unset","update","vwait","winfo","wm","bind","event","pack","place","grid","font","bell","clipboard","destroy","focus","grab","lower","option","raise","selection","send","tk","tkwait","tk_bisque","tk_focusNext","tk_focusPrev","tk_focusFollowsMouse","tk_popup","tk_setPalette"],symbols:/[=><!~?:&|+\-*\/\^%]+/,brackets:[{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"}],escapes:/\\(?:[abfnrtv\\"'\[\]\{\};\$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,variables:/(?:\$+(?:(?:\:\:?)?[a-zA-Z_]\w*)+)/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@specialFunctions":{token:"keyword.flow",next:"@specialFunc"},"@mainFunctions":"keyword","@builtinFunctions":"variable","@default":"operator.scss"}}],[/\s+\-+(?!\d|\.)\w*|{\*}/,"metatag"],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/@symbols/,"operator"],[/\$+(?:\:\:)?\{/,{token:"identifier",next:"@nestedVariable"}],[/@variables/,"type.identifier"],[/\.(?!\d|\.)[\w\-]*/,"operator.sql"],[/\d+(\.\d+)?/,"number"],[/\d+/,"number"],[/;/,"delimiter"],[/"/,{token:"string.quote",bracket:"@open",next:"@dstring"}],[/'/,{token:"string.quote",bracket:"@open",next:"@sstring"}]],dstring:[[/\[/,{token:"@brackets",next:"@nestedCall"}],[/\$+(?:\:\:)?\{/,{token:"identifier",next:"@nestedVariable"}],[/@variables/,"type.identifier"],[/[^\\$\[\]"]+/,"string"],[/@escapes/,"string.escape"],[/"/,{token:"string.quote",bracket:"@close",next:"@pop"}]],sstring:[[/\[/,{token:"@brackets",next:"@nestedCall"}],[/\$+(?:\:\:)?\{/,{token:"identifier",next:"@nestedVariable"}],[/@variables/,"type.identifier"],[/[^\\$\[\]']+/,"string"],[/@escapes/,"string.escape"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/#.*\\$/,{token:"comment",next:"@newlineComment"}],[/#.*(?!\\)$/,"comment"]],newlineComment:[[/.*\\$/,"comment"],[/.*(?!\\)$/,{token:"comment",next:"@pop"}]],nestedVariable:[[/[^\{\}\$]+/,"type.identifier"],[/\}/,{token:"identifier",next:"@pop"}]],nestedCall:[[/\[/,{token:"@brackets",next:"@nestedCall"}],[/\]/,{token:"@brackets",next:"@pop"}],{include:"root"}],specialFunc:[[/"/,{token:"string",next:"@dstring"}],[/'/,{token:"string",next:"@sstring"}],[/\S+/,{token:"type",next:"@pop"}]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/97.4ac3ee32.js b/docs/src/.vuepress/dist/assets/js/98.812087ee.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/97.4ac3ee32.js rename to docs/src/.vuepress/dist/assets/js/98.812087ee.js index 03d1876e..942cb464 100644 --- a/docs/src/.vuepress/dist/assets/js/97.4ac3ee32.js +++ b/docs/src/.vuepress/dist/assets/js/98.812087ee.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[97],{499:function(t,e,i){"use strict";i.r(e),i.d(e,"conf",(function(){return r})),i.d(e,"language",(function(){return m}));var r={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["{#","#}"]},brackets:[["{#","#}"],["{%","%}"],["{{","}}"],["(",")"],["[","]"],["\x3c!--","--\x3e"],["<",">"]],autoClosingPairs:[{open:"{# ",close:" #}"},{open:"{% ",close:" %}"},{open:"{{ ",close:" }}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}]},m={defaultToken:"",tokenPostfix:"",ignoreCase:!0,keywords:["apply","autoescape","block","deprecated","do","embed","extends","flush","for","from","if","import","include","macro","sandbox","set","use","verbatim","with","endapply","endautoescape","endblock","endembed","endfor","endif","endmacro","endsandbox","endset","endwith","true","false"],tokenizer:{root:[[/\s+/],[/{#/,"comment.twig","@commentState"],[/{%[-~]?/,"delimiter.twig","@blockState"],[/{{[-~]?/,"delimiter.twig","@variableState"],[/<!DOCTYPE/,"metatag.html","@doctype"],[/<!--/,"comment.html","@comment"],[/(<)((?:[\w\-]+:)?[\w\-]+)(\s*)(\/>)/,["delimiter.html","tag.html","","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)((?:[\w\-]+:)?[\w\-]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)((?:[\w\-]+:)?[\w\-]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/</,"delimiter.html"],[/[^<]+/]],commentState:[[/#}/,"comment.twig","@pop"],[/./,"comment.twig"]],blockState:[[/[-~]?%}/,"delimiter.twig","@pop"],[/\s+/],[/(verbatim)(\s*)([-~]?%})/,["keyword.twig","",{token:"delimiter.twig",next:"@rawDataState"}]],{include:"expression"}],rawDataState:[[/({%[-~]?)(\s*)(endverbatim)(\s*)([-~]?%})/,["delimiter.twig","","keyword.twig","",{token:"delimiter.twig",next:"@popall"}]],[/./,"string.twig"]],variableState:[[/[-~]?}}/,"delimiter.twig","@pop"],{include:"expression"}],stringState:[[/"/,"string.twig","@pop"],[/#{\s*/,"string.twig","@interpolationState"],[/[^#"\\]*(?:(?:\\.|#(?!\{))[^#"\\]*)*/,"string.twig"]],interpolationState:[[/}/,"string.twig","@pop"],{include:"expression"}],expression:[[/\s+/],[/\+|-|\/{1,2}|%|\*{1,2}/,"operators.twig"],[/(and|or|not|b-and|b-xor|b-or)(\s+)/,["operators.twig",""]],[/==|!=|<|>|>=|<=/,"operators.twig"],[/(starts with|ends with|matches)(\s+)/,["operators.twig",""]],[/(in)(\s+)/,["operators.twig",""]],[/(is)(\s+)/,["operators.twig",""]],[/\||~|:|\.{1,2}|\?{1,2}/,"operators.twig"],[/[^\W\d][\w]*/,{cases:{"@keywords":"keyword.twig","@default":"variable.twig"}}],[/\d+(\.\d+)?/,"number.twig"],[/\(|\)|\[|\]|{|}|,/,"delimiter.twig"],[/"([^#"\\]*(?:\\.[^#"\\]*)*)"|\'([^\'\\]*(?:\\.[^\'\\]*)*)\'/,"string.twig"],[/"/,"string.twig","@stringState"],[/=>/,"operators.twig"],[/=/,"operators.twig"]],doctype:[[/[^>]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/[ \t\r\n]+/]],script:[[/type/,"attribute.name.html","@scriptAfterType"],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/=/,"delimiter.html","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value.html",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value.html",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]],style:[[/type/,"attribute.name.html","@styleAfterType"],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/>/,{token:"delimiter.html",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/=/,"delimiter.html","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value.html",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value.html",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[98],{499:function(t,e,i){"use strict";i.r(e),i.d(e,"conf",(function(){return r})),i.d(e,"language",(function(){return m}));var r={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["{#","#}"]},brackets:[["{#","#}"],["{%","%}"],["{{","}}"],["(",")"],["[","]"],["\x3c!--","--\x3e"],["<",">"]],autoClosingPairs:[{open:"{# ",close:" #}"},{open:"{% ",close:" %}"},{open:"{{ ",close:" }}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}]},m={defaultToken:"",tokenPostfix:"",ignoreCase:!0,keywords:["apply","autoescape","block","deprecated","do","embed","extends","flush","for","from","if","import","include","macro","sandbox","set","use","verbatim","with","endapply","endautoescape","endblock","endembed","endfor","endif","endmacro","endsandbox","endset","endwith","true","false"],tokenizer:{root:[[/\s+/],[/{#/,"comment.twig","@commentState"],[/{%[-~]?/,"delimiter.twig","@blockState"],[/{{[-~]?/,"delimiter.twig","@variableState"],[/<!DOCTYPE/,"metatag.html","@doctype"],[/<!--/,"comment.html","@comment"],[/(<)((?:[\w\-]+:)?[\w\-]+)(\s*)(\/>)/,["delimiter.html","tag.html","","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)((?:[\w\-]+:)?[\w\-]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)((?:[\w\-]+:)?[\w\-]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/</,"delimiter.html"],[/[^<]+/]],commentState:[[/#}/,"comment.twig","@pop"],[/./,"comment.twig"]],blockState:[[/[-~]?%}/,"delimiter.twig","@pop"],[/\s+/],[/(verbatim)(\s*)([-~]?%})/,["keyword.twig","",{token:"delimiter.twig",next:"@rawDataState"}]],{include:"expression"}],rawDataState:[[/({%[-~]?)(\s*)(endverbatim)(\s*)([-~]?%})/,["delimiter.twig","","keyword.twig","",{token:"delimiter.twig",next:"@popall"}]],[/./,"string.twig"]],variableState:[[/[-~]?}}/,"delimiter.twig","@pop"],{include:"expression"}],stringState:[[/"/,"string.twig","@pop"],[/#{\s*/,"string.twig","@interpolationState"],[/[^#"\\]*(?:(?:\\.|#(?!\{))[^#"\\]*)*/,"string.twig"]],interpolationState:[[/}/,"string.twig","@pop"],{include:"expression"}],expression:[[/\s+/],[/\+|-|\/{1,2}|%|\*{1,2}/,"operators.twig"],[/(and|or|not|b-and|b-xor|b-or)(\s+)/,["operators.twig",""]],[/==|!=|<|>|>=|<=/,"operators.twig"],[/(starts with|ends with|matches)(\s+)/,["operators.twig",""]],[/(in)(\s+)/,["operators.twig",""]],[/(is)(\s+)/,["operators.twig",""]],[/\||~|:|\.{1,2}|\?{1,2}/,"operators.twig"],[/[^\W\d][\w]*/,{cases:{"@keywords":"keyword.twig","@default":"variable.twig"}}],[/\d+(\.\d+)?/,"number.twig"],[/\(|\)|\[|\]|{|}|,/,"delimiter.twig"],[/"([^#"\\]*(?:\\.[^#"\\]*)*)"|\'([^\'\\]*(?:\\.[^\'\\]*)*)\'/,"string.twig"],[/"/,"string.twig","@stringState"],[/=>/,"operators.twig"],[/=/,"operators.twig"]],doctype:[[/[^>]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/[ \t\r\n]+/]],script:[[/type/,"attribute.name.html","@scriptAfterType"],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/=/,"delimiter.html","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value.html",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value.html",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]],style:[[/type/,"attribute.name.html","@styleAfterType"],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/>/,{token:"delimiter.html",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/=/,"delimiter.html","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value.html",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value.html",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value.html"],[/'([^']*)'/,"attribute.value.html"],[/[\w\-]+/,"attribute.name.html"],[/=/,"delimiter.html"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/99.11b04e35.js b/docs/src/.vuepress/dist/assets/js/99.11b04e35.js deleted file mode 100644 index d790f07e..00000000 --- a/docs/src/.vuepress/dist/assets/js/99.11b04e35.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[99],{500:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return o})),t.d(n,"language",(function(){return r}));var o={comments:{lineComment:"'",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"],["addhandler","end addhandler"],["class","end class"],["enum","end enum"],["event","end event"],["function","end function"],["get","end get"],["if","end if"],["interface","end interface"],["module","end module"],["namespace","end namespace"],["operator","end operator"],["property","end property"],["raiseevent","end raiseevent"],["removehandler","end removehandler"],["select","end select"],["set","end set"],["structure","end structure"],["sub","end sub"],["synclock","end synclock"],["try","end try"],["while","end while"],["with","end with"],["using","end using"],["do","loop"],["for","next"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"<",close:">",notIn:["string","comment"]}],folding:{markers:{start:new RegExp("^\\s*#Region\\b"),end:new RegExp("^\\s*#End Region\\b")}}},r={defaultToken:"",tokenPostfix:".vb",ignoreCase:!0,brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.angle",open:"<",close:">"},{token:"keyword.tag-addhandler",open:"addhandler",close:"end addhandler"},{token:"keyword.tag-class",open:"class",close:"end class"},{token:"keyword.tag-enum",open:"enum",close:"end enum"},{token:"keyword.tag-event",open:"event",close:"end event"},{token:"keyword.tag-function",open:"function",close:"end function"},{token:"keyword.tag-get",open:"get",close:"end get"},{token:"keyword.tag-if",open:"if",close:"end if"},{token:"keyword.tag-interface",open:"interface",close:"end interface"},{token:"keyword.tag-module",open:"module",close:"end module"},{token:"keyword.tag-namespace",open:"namespace",close:"end namespace"},{token:"keyword.tag-operator",open:"operator",close:"end operator"},{token:"keyword.tag-property",open:"property",close:"end property"},{token:"keyword.tag-raiseevent",open:"raiseevent",close:"end raiseevent"},{token:"keyword.tag-removehandler",open:"removehandler",close:"end removehandler"},{token:"keyword.tag-select",open:"select",close:"end select"},{token:"keyword.tag-set",open:"set",close:"end set"},{token:"keyword.tag-structure",open:"structure",close:"end structure"},{token:"keyword.tag-sub",open:"sub",close:"end sub"},{token:"keyword.tag-synclock",open:"synclock",close:"end synclock"},{token:"keyword.tag-try",open:"try",close:"end try"},{token:"keyword.tag-while",open:"while",close:"end while"},{token:"keyword.tag-with",open:"with",close:"end with"},{token:"keyword.tag-using",open:"using",close:"end using"},{token:"keyword.tag-do",open:"do",close:"loop"},{token:"keyword.tag-for",open:"for",close:"next"}],keywords:["AddHandler","AddressOf","Alias","And","AndAlso","As","Async","Boolean","ByRef","Byte","ByVal","Call","Case","Catch","CBool","CByte","CChar","CDate","CDbl","CDec","Char","CInt","Class","CLng","CObj","Const","Continue","CSByte","CShort","CSng","CStr","CType","CUInt","CULng","CUShort","Date","Decimal","Declare","Default","Delegate","Dim","DirectCast","Do","Double","Each","Else","ElseIf","End","EndIf","Enum","Erase","Error","Event","Exit","False","Finally","For","Friend","Function","Get","GetType","GetXMLNamespace","Global","GoSub","GoTo","Handles","If","Implements","Imports","In","Inherits","Integer","Interface","Is","IsNot","Let","Lib","Like","Long","Loop","Me","Mod","Module","MustInherit","MustOverride","MyBase","MyClass","NameOf","Namespace","Narrowing","New","Next","Not","Nothing","NotInheritable","NotOverridable","Object","Of","On","Operator","Option","Optional","Or","OrElse","Out","Overloads","Overridable","Overrides","ParamArray","Partial","Private","Property","Protected","Public","RaiseEvent","ReadOnly","ReDim","RemoveHandler","Resume","Return","SByte","Select","Set","Shadows","Shared","Short","Single","Static","Step","Stop","String","Structure","Sub","SyncLock","Then","Throw","To","True","Try","TryCast","TypeOf","UInteger","ULong","UShort","Using","Variant","Wend","When","While","Widening","With","WithEvents","WriteOnly","Xor"],tagwords:["If","Sub","Select","Try","Class","Enum","Function","Get","Interface","Module","Namespace","Operator","Set","Structure","Using","While","With","Do","Loop","For","Next","Property","Continue","AddHandler","RemoveHandler","Event","RaiseEvent","SyncLock"],symbols:/[=><!~?;\.,:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,integersuffix:/U?[DI%L&S@]?/,floatsuffix:/[R#F!]?/,tokenizer:{root:[{include:"@whitespace"},[/next(?!\w)/,{token:"keyword.tag-for"}],[/loop(?!\w)/,{token:"keyword.tag-do"}],[/end\s+(?!for|do)(addhandler|class|enum|event|function|get|if|interface|module|namespace|operator|property|raiseevent|removehandler|select|set|structure|sub|synclock|try|while|with|using)/,{token:"keyword.tag-$1"}],[/[a-zA-Z_]\w*/,{cases:{"@tagwords":{token:"keyword.tag-$0"},"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],[/^\s*#\w+/,"keyword"],[/\d*\d+e([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+(e[\-+]?\d+)?(@floatsuffix)/,"number.float"],[/&H[0-9a-f]+(@integersuffix)/,"number.hex"],[/&0[0-7]+(@integersuffix)/,"number.octal"],[/\d+(@integersuffix)/,"number"],[/#.*#/,"number"],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/"/,"string","@string"]],whitespace:[[/[ \t\r\n]+/,""],[/(\'|REM(?!\w)).*$/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"C?/,"string","@pop"]]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/98.4982871f.js b/docs/src/.vuepress/dist/assets/js/99.cb09c45e.js similarity index 98% rename from docs/src/.vuepress/dist/assets/js/98.4982871f.js rename to docs/src/.vuepress/dist/assets/js/99.cb09c45e.js index 4fc5a9c1..0f5bfee5 100644 --- a/docs/src/.vuepress/dist/assets/js/98.4982871f.js +++ b/docs/src/.vuepress/dist/assets/js/99.cb09c45e.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[98],{335:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return r})),t.d(n,"language",(function(){return i}));var o="undefined"==typeof monaco?self.monaco:monaco,r={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],onEnterRules:[{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,afterText:/^\s*\*\/$/,action:{indentAction:o.languages.IndentAction.IndentOutdent,appendText:" * "}},{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,action:{indentAction:o.languages.IndentAction.None,appendText:" * "}},{beforeText:/^(\t|(\ \ ))*\ \*(\ ([^\*]|\*(?!\/))*)?$/,action:{indentAction:o.languages.IndentAction.None,appendText:"* "}},{beforeText:/^(\t|(\ \ ))*\ \*\/\s*$/,action:{indentAction:o.languages.IndentAction.None,removeText:1}}],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"`",close:"`",notIn:["string","comment"]},{open:"/**",close:" */",notIn:["string"]}],folding:{markers:{start:new RegExp("^\\s*//\\s*#?region\\b"),end:new RegExp("^\\s*//\\s*#?endregion\\b")}}},i={defaultToken:"invalid",tokenPostfix:".ts",keywords:["abstract","as","break","case","catch","class","continue","const","constructor","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","implements","import","in","infer","instanceof","interface","is","keyof","let","module","namespace","never","new","null","package","private","protected","public","readonly","require","global","return","set","static","super","switch","symbol","this","throw","true","try","type","typeof","unique","var","void","while","with","yield","async","await","of"],typeKeywords:["any","boolean","number","object","string","undefined"],operators:["<=",">=","==","!=","===","!==","=>","+","-","**","*","/","%","++","--","<<","</",">>",">>>","&","|","^","!","~","&&","||","??","?",":","=","+=","-=","*=","**=","/=","%=","<<=",">>=",">>>=","&=","|=","^=","@"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,regexpctl:/[(){}\[\]\$\^|\-*+?\.]/,regexpesc:/\\(?:[bBdDfnrstvwWn0\\\/]|@regexpctl|c[A-Z]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4})/,tokenizer:{root:[[/[{}]/,"delimiter.bracket"],{include:"common"}],common:[[/[a-z_$][\w$]*/,{cases:{"@typeKeywords":"keyword","@keywords":"keyword","@default":"identifier"}}],[/[A-Z][\w\$]*/,"type.identifier"],{include:"@whitespace"},[/\/(?=([^\\\/]|\\.)+\/([gimsuy]*)(\s*)(\.|;|,|\)|\]|\}|$))/,{token:"regexp",bracket:"@open",next:"@regexp"}],[/[()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/!(?=([^=]|$))/,"delimiter"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/(@digits)[eE]([\-+]?(@digits))?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?/,"number.float"],[/0[xX](@hexdigits)n?/,"number.hex"],[/0[oO]?(@octaldigits)n?/,"number.octal"],[/0[bB](@binarydigits)n?/,"number.binary"],[/(@digits)n?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string_double"],[/'/,"string","@string_single"],[/`/,"string","@string_backtick"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@jsdoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],jsdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,["regexp.escape.control","regexp.escape.control","regexp.escape.control"]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,["regexp.escape.control",{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?:|\?=|\?!)/,["regexp.escape.control","regexp.escape.control"]],[/[()]/,"regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/[^\\\/]/,"regexp"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],[/(\/)([gimsuy]*)/,[{token:"regexp",bracket:"@close",next:"@pop"},"keyword.other"]]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,{token:"regexp.escape.control",next:"@pop",bracket:"@close"}]],string_double:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],string_single:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,"string","@pop"]],string_backtick:[[/\$\{/,{token:"delimiter.bracket",next:"@bracketCounting"}],[/[^\\`$]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/`/,"string","@pop"]],bracketCounting:[[/\{/,"delimiter.bracket","@bracketCounting"],[/\}/,"delimiter.bracket","@pop"],{include:"common"}]}}}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[99],{335:function(e,n,t){"use strict";t.r(n),t.d(n,"conf",(function(){return r})),t.d(n,"language",(function(){return i}));var o="undefined"==typeof monaco?self.monaco:monaco,r={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],onEnterRules:[{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,afterText:/^\s*\*\/$/,action:{indentAction:o.languages.IndentAction.IndentOutdent,appendText:" * "}},{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,action:{indentAction:o.languages.IndentAction.None,appendText:" * "}},{beforeText:/^(\t|(\ \ ))*\ \*(\ ([^\*]|\*(?!\/))*)?$/,action:{indentAction:o.languages.IndentAction.None,appendText:"* "}},{beforeText:/^(\t|(\ \ ))*\ \*\/\s*$/,action:{indentAction:o.languages.IndentAction.None,removeText:1}}],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"`",close:"`",notIn:["string","comment"]},{open:"/**",close:" */",notIn:["string"]}],folding:{markers:{start:new RegExp("^\\s*//\\s*#?region\\b"),end:new RegExp("^\\s*//\\s*#?endregion\\b")}}},i={defaultToken:"invalid",tokenPostfix:".ts",keywords:["abstract","as","break","case","catch","class","continue","const","constructor","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","implements","import","in","infer","instanceof","interface","is","keyof","let","module","namespace","never","new","null","package","private","protected","public","readonly","require","global","return","set","static","super","switch","symbol","this","throw","true","try","type","typeof","unique","var","void","while","with","yield","async","await","of"],typeKeywords:["any","boolean","number","object","string","undefined"],operators:["<=",">=","==","!=","===","!==","=>","+","-","**","*","/","%","++","--","<<","</",">>",">>>","&","|","^","!","~","&&","||","??","?",":","=","+=","-=","*=","**=","/=","%=","<<=",">>=",">>>=","&=","|=","^=","@"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,regexpctl:/[(){}\[\]\$\^|\-*+?\.]/,regexpesc:/\\(?:[bBdDfnrstvwWn0\\\/]|@regexpctl|c[A-Z]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4})/,tokenizer:{root:[[/[{}]/,"delimiter.bracket"],{include:"common"}],common:[[/[a-z_$][\w$]*/,{cases:{"@typeKeywords":"keyword","@keywords":"keyword","@default":"identifier"}}],[/[A-Z][\w\$]*/,"type.identifier"],{include:"@whitespace"},[/\/(?=([^\\\/]|\\.)+\/([gimsuy]*)(\s*)(\.|;|,|\)|\]|\}|$))/,{token:"regexp",bracket:"@open",next:"@regexp"}],[/[()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/!(?=([^=]|$))/,"delimiter"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/(@digits)[eE]([\-+]?(@digits))?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?/,"number.float"],[/0[xX](@hexdigits)n?/,"number.hex"],[/0[oO]?(@octaldigits)n?/,"number.octal"],[/0[bB](@binarydigits)n?/,"number.binary"],[/(@digits)n?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string_double"],[/'/,"string","@string_single"],[/`/,"string","@string_backtick"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@jsdoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],jsdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,["regexp.escape.control","regexp.escape.control","regexp.escape.control"]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,["regexp.escape.control",{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?:|\?=|\?!)/,["regexp.escape.control","regexp.escape.control"]],[/[()]/,"regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/[^\\\/]/,"regexp"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],[/(\/)([gimsuy]*)/,[{token:"regexp",bracket:"@close",next:"@pop"},"keyword.other"]]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,{token:"regexp.escape.control",next:"@pop",bracket:"@close"}]],string_double:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],string_single:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,"string","@pop"]],string_backtick:[[/\$\{/,{token:"delimiter.bracket",next:"@bracketCounting"}],[/[^\\`$]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/`/,"string","@pop"]],bracketCounting:[[/\{/,"delimiter.bracket","@bracketCounting"],[/\}/,"delimiter.bracket","@pop"],{include:"common"}]}}}}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/assets/js/app.99498f70.js b/docs/src/.vuepress/dist/assets/js/app.707cd6e6.js similarity index 72% rename from docs/src/.vuepress/dist/assets/js/app.99498f70.js rename to docs/src/.vuepress/dist/assets/js/app.707cd6e6.js index 57cbb0bf..f0a87b44 100644 --- a/docs/src/.vuepress/dist/assets/js/app.99498f70.js +++ b/docs/src/.vuepress/dist/assets/js/app.707cd6e6.js @@ -1,8 +1,8 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[0],[]]);!function(t){function e(e){for(var r,a,s=e[0],c=e[1],u=e[2],f=0,p=[];f<s.length;f++)a=s[f],Object.prototype.hasOwnProperty.call(o,a)&&o[a]&&p.push(o[a][0]),o[a]=0;for(r in c)Object.prototype.hasOwnProperty.call(c,r)&&(t[r]=c[r]);for(l&&l(e);p.length;)p.shift()();return i.push.apply(i,u||[]),n()}function n(){for(var t,e=0;e<i.length;e++){for(var n=i[e],r=!0,s=1;s<n.length;s++){var c=n[s];0!==o[c]&&(r=!1)}r&&(i.splice(e--,1),t=a(a.s=n[0]))}return t}var r={},o={2:0},i=[];function a(e){if(r[e])return r[e].exports;var n=r[e]={i:e,l:!1,exports:{}};return t[e].call(n.exports,n,n.exports,a),n.l=!0,n.exports}a.e=function(t){var e=[],n=o[t];if(0!==n)if(n)e.push(n[2]);else{var r=new Promise((function(e,r){n=o[t]=[e,r]}));e.push(n[2]=r);var i,s=document.createElement("script");s.charset="utf-8",s.timeout=120,a.nc&&s.setAttribute("nonce",a.nc),s.src=function(t){return a.p+"assets/js/"+({}[t]||t)+"."+{1:"ae5ab669",3:"6f89387f",4:"afec4fb6",5:"502fc703",6:"1eaa0db0",7:"0f6ae038",8:"67b1febf",9:"06b397f7",10:"00091426",11:"99afb047",12:"659d0d44",13:"36679573",14:"6d48fe2d",15:"9256a41a",16:"5be27a16",17:"029f3679",18:"c77c84c2",19:"ca3322d8",20:"762823c2",21:"b7195a62",22:"78cc6be9",23:"c0ee3693",24:"7f444d27",25:"7ba719d0",26:"73e719f0",27:"67e1572b",28:"84a9a64c",29:"f6a4e822",30:"9bb98cd5",31:"6bcaa134",32:"13dbfef4",33:"227bf7d4",34:"25bd9c03",35:"ad55ea84",36:"70888b6c",37:"47473244",38:"be2fc22a",39:"90a73f07",40:"8adf4179",41:"877b1d87",42:"4a01b487",43:"485b553f",44:"bee8c0ac",45:"5a96c426",46:"3f95d133",47:"0cdb1e5d",48:"03e739e7",49:"2d752ee1",50:"23d71ab6",51:"c3e699e7",52:"03a3e296",53:"645ee022",54:"dbf6d0eb",55:"517ded52",56:"260ce17c",57:"697d63a8",58:"71546e18",59:"448f9f74",60:"cc91f4bf",61:"4715a5c4",62:"27066fd7",63:"d80fb30d",64:"f3fdcd50",65:"ae7396ad",66:"47bd296d",67:"65377661",68:"a52d49a3",69:"ebe70287",70:"f4761b67",71:"b1a5ed72",72:"6374e4b7",73:"ab425ef3",74:"9d4a5b8b",75:"5d3a139b",76:"c3a1d352",77:"1e20cc10",78:"b3375bbd",79:"e30ee574",80:"c9b2bc6f",81:"41eac1be",82:"2044b434",83:"e9eb873f",84:"b501de85",85:"c4e6052b",86:"738980af",87:"cb11fecb",88:"91b8b30b",89:"b277329c",90:"82770f13",91:"d2bf60c2",92:"9ff04b54",93:"168a3f48",94:"62090088",95:"7669b444",96:"10318e4a",97:"4ac3ee32",98:"4982871f",99:"11b04e35",100:"2e8512a4",101:"f57cdfdd",102:"dea937d2",103:"dd653b9b",104:"e7fceeb6",105:"bd27587a"}[t]+".js"}(t);var c=new Error;i=function(e){s.onerror=s.onload=null,clearTimeout(u);var n=o[t];if(0!==n){if(n){var r=e&&("load"===e.type?"missing":e.type),i=e&&e.target&&e.target.src;c.message="Loading chunk "+t+" failed.\n("+r+": "+i+")",c.name="ChunkLoadError",c.type=r,c.request=i,n[1](c)}o[t]=void 0}};var u=setTimeout((function(){i({type:"timeout",target:s})}),12e4);s.onerror=s.onload=i,document.head.appendChild(s)}return Promise.all(e)},a.m=t,a.c=r,a.d=function(t,e,n){a.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},a.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},a.t=function(t,e){if(1&e&&(t=a(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(a.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)a.d(n,r,function(e){return t[e]}.bind(null,r));return n},a.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return a.d(e,"a",e),e},a.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},a.p="/",a.oe=function(t){throw console.error(t),t};var s=window.webpackJsonp=window.webpackJsonp||[],c=s.push.bind(s);s.push=e,s=s.slice();for(var u=0;u<s.length;u++)e(s[u]);var l=c;i.push([185,0]),n()}([function(t,e,n){var r=n(3),o=n(24).f,i=n(11),a=n(18),s=n(72),c=n(116),u=n(101);t.exports=function(t,e){var n,l,f,p,d,h=t.target,v=t.global,m=t.stat;if(n=v?r:m?r[h]||s(h,{}):(r[h]||{}).prototype)for(l in e){if(p=e[l],f=t.noTargetGet?(d=o(n,l))&&d.value:n[l],!u(v?l:h+(m?".":"#")+l,t.forced)&&void 0!==f){if(typeof p==typeof f)continue;c(p,f)}(t.sham||f&&f.sham)&&i(p,"sham",!0),a(n,l,p,t)}}},function(t,e,n){var r=n(3),o=n(70),i=n(7),a=n(50),s=n(74),c=n(111),u=o("wks"),l=r.Symbol,f=c?l:l&&l.withoutSetter||a;t.exports=function(t){return i(u,t)&&(s||"string"==typeof u[t])||(s&&i(l,t)?u[t]=l[t]:u[t]=f("Symbol."+t)),u[t]}},function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||function(){return this}()||Function("return this")()},function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,e,n){var r=n(4);t.exports=function(t){if(!r(t))throw TypeError(String(t)+" is not an object");return t}},function(t,e,n){var r=n(2);t.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},function(t,e,n){var r=n(6),o=n(109),i=n(5),a=n(49),s=Object.defineProperty;e.f=r?s:function(t,e,n){if(i(t),e=a(e,!0),i(n),o)try{return s(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t}},function(t,e,n){var r=n(82),o=n(18),i=n(196);r||o(Object.prototype,"toString",i,{unsafe:!0})},function(t,e,n){"use strict";var r=n(106).charAt,o=n(28),i=n(115),a=o.set,s=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=s(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},function(t,e,n){var r=n(6),o=n(8),i=n(29);t.exports=r?function(t,e,n){return o.f(t,e,i(1,n))}:function(t,e,n){return t[e]=n,t}},function(t,e,n){var r=n(23);t.exports=function(t){return Object(r(t))}},function(t,e,n){var r=n(52),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},function(t,e,n){var r=n(3),o=n(128),i=n(99),a=n(11),s=n(1),c=s("iterator"),u=s("toStringTag"),l=i.values;for(var f in o){var p=r[f],d=p&&p.prototype;if(d){if(d[c]!==l)try{a(d,c,l)}catch(t){d[c]=l}if(d[u]||a(d,u,f),o[f])for(var h in i)if(d[h]!==i[h])try{a(d,h,i[h])}catch(t){d[h]=i[h]}}}},function(t,e){var n=Array.isArray;t.exports=n},function(t,e,n){var r=n(33),o=n(23);t.exports=function(t){return r(o(t))}},function(t,e,n){var r=n(138),o="object"==typeof self&&self&&self.Object===Object&&self,i=r||o||Function("return this")();t.exports=i},function(t,e,n){var r=n(3),o=n(11),i=n(7),a=n(72),s=n(78),c=n(28),u=c.get,l=c.enforce,f=String(String).split("String");(t.exports=function(t,e,n,s){var c,u=!!s&&!!s.unsafe,p=!!s&&!!s.enumerable,d=!!s&&!!s.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),(c=l(n)).source||(c.source=f.join("string"==typeof e?e:""))),t!==r?(u?!d&&t[e]&&(p=!0):delete t[e],p?t[e]=n:o(t,e,n)):p?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||s(this)}))},function(t,e,n){var r=n(110),o=n(3),i=function(t){return"function"==typeof t?t:void 0};t.exports=function(t,e){return arguments.length<2?i(r[t])||i(o[t]):r[t]&&r[t][e]||o[t]&&o[t][e]}},function(t,e){t.exports=!1},function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},function(t,e,n){var r=n(224),o=n(227);t.exports=function(t,e){var n=o(t,e);return r(n)?n:void 0}},function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},function(t,e,n){var r=n(6),o=n(79),i=n(29),a=n(16),s=n(49),c=n(7),u=n(109),l=Object.getOwnPropertyDescriptor;e.f=r?l:function(t,e){if(t=a(t),e=s(e,!0),u)try{return l(t,e)}catch(t){}if(c(t,e))return i(!o.f.call(t,e),t[e])}},function(t,e){t.exports=function(t){return null!=t&&"object"==typeof t}},function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},function(t,e,n){"use strict";var r=n(0),o=n(31).filter;r({target:"Array",proto:!0,forced:!n(56)("filter")},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){var r,o,i,a=n(186),s=n(3),c=n(4),u=n(11),l=n(7),f=n(71),p=n(53),d=n(36),h=s.WeakMap;if(a){var v=f.state||(f.state=new h),m=v.get,y=v.has,g=v.set;r=function(t,e){return e.facade=t,g.call(v,t,e),e},o=function(t){return m.call(v,t)||{}},i=function(t){return y.call(v,t)}}else{var b=p("state");d[b]=!0,r=function(t,e){return e.facade=t,u(t,b,e),e},o=function(t){return l(t,b)?t[b]:{}},i=function(t){return l(t,b)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!c(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e,n){var r,o=n(5),i=n(173),a=n(77),s=n(36),c=n(114),u=n(73),l=n(53),f=l("IE_PROTO"),p=function(){},d=function(t){return"<script>"+t+"<\/script>"},h=function(){try{r=document.domain&&new ActiveXObject("htmlfile")}catch(t){}var t,e;h=r?function(t){t.write(d("")),t.close();var e=t.parentWindow.Object;return t=null,e}(r):((e=u("iframe")).style.display="none",c.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(d("document.F=Object")),t.close(),t.F);for(var n=a.length;n--;)delete h.prototype[a[n]];return h()};s[f]=!0,t.exports=Object.create||function(t,e){var n;return null!==t?(p.prototype=o(t),n=new p,p.prototype=null,n[f]=t):n=h(),void 0===e?n:i(n,e)}},function(t,e,n){var r=n(48),o=n(33),i=n(12),a=n(13),s=n(129),c=[].push,u=function(t){var e=1==t,n=2==t,u=3==t,l=4==t,f=6==t,p=7==t,d=5==t||f;return function(h,v,m,y){for(var g,b,x=i(h),_=o(x),w=r(v,m,3),O=a(_.length),k=0,S=y||s,j=e?S(h,O):n||p?S(h,0):void 0;O>k;k++)if((d||k in _)&&(b=w(g=_[k],k,x),t))if(e)j[k]=b;else if(b)switch(t){case 3:return!0;case 5:return g;case 6:return k;case 2:c.call(j,g)}else switch(t){case 4:return!1;case 7:c.call(j,g)}return f?-1:u||l?l:j}};t.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6),filterOut:u(7)}},function(t,e,n){var r=n(42),o=n(209),i=n(210),a=r?r.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":a&&a in Object(t)?o(t):i(t)}},function(t,e,n){var r=n(2),o=n(26),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},function(t,e,n){var r=n(26),o=n(3);t.exports="process"==r(o.process)},function(t,e,n){var r,o,i=n(3),a=n(75),s=i.process,c=s&&s.versions,u=c&&c.v8;u?o=(r=u.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},function(t,e){t.exports={}},function(t,e){t.exports={}},function(t,e,n){var r=n(26);t.exports=Array.isArray||function(t){return"Array"==r(t)}},function(t,e,n){"use strict";var r=n(2);t.exports=function(t,e){var n=[][t];return!!n&&r((function(){n.call(null,e||function(){throw 1},1)}))}},function(t,e,n){"use strict";var r=n(0),o=n(3),i=n(19),a=n(20),s=n(6),c=n(74),u=n(111),l=n(2),f=n(7),p=n(38),d=n(4),h=n(5),v=n(12),m=n(16),y=n(49),g=n(29),b=n(30),x=n(51),_=n(68),w=n(203),O=n(80),k=n(24),S=n(8),j=n(79),E=n(11),A=n(18),C=n(70),$=n(53),P=n(36),T=n(50),L=n(1),R=n(133),I=n(134),M=n(47),N=n(28),D=n(31).forEach,F=$("hidden"),U=L("toPrimitive"),B=N.set,z=N.getterFor("Symbol"),V=Object.prototype,q=o.Symbol,H=i("JSON","stringify"),W=k.f,G=S.f,K=w.f,X=j.f,Y=C("symbols"),J=C("op-symbols"),Q=C("string-to-symbol-registry"),Z=C("symbol-to-string-registry"),tt=C("wks"),et=o.QObject,nt=!et||!et.prototype||!et.prototype.findChild,rt=s&&l((function(){return 7!=b(G({},"a",{get:function(){return G(this,"a",{value:7}).a}})).a}))?function(t,e,n){var r=W(V,e);r&&delete V[e],G(t,e,n),r&&t!==V&&G(V,e,r)}:G,ot=function(t,e){var n=Y[t]=b(q.prototype);return B(n,{type:"Symbol",tag:t,description:e}),s||(n.description=e),n},it=u?function(t){return"symbol"==typeof t}:function(t){return Object(t)instanceof q},at=function(t,e,n){t===V&&at(J,e,n),h(t);var r=y(e,!0);return h(n),f(Y,r)?(n.enumerable?(f(t,F)&&t[F][r]&&(t[F][r]=!1),n=b(n,{enumerable:g(0,!1)})):(f(t,F)||G(t,F,g(1,{})),t[F][r]=!0),rt(t,r,n)):G(t,r,n)},st=function(t,e){h(t);var n=m(e),r=x(n).concat(ft(n));return D(r,(function(e){s&&!ct.call(n,e)||at(t,e,n[e])})),t},ct=function(t){var e=y(t,!0),n=X.call(this,e);return!(this===V&&f(Y,e)&&!f(J,e))&&(!(n||!f(this,e)||!f(Y,e)||f(this,F)&&this[F][e])||n)},ut=function(t,e){var n=m(t),r=y(e,!0);if(n!==V||!f(Y,r)||f(J,r)){var o=W(n,r);return!o||!f(Y,r)||f(n,F)&&n[F][r]||(o.enumerable=!0),o}},lt=function(t){var e=K(m(t)),n=[];return D(e,(function(t){f(Y,t)||f(P,t)||n.push(t)})),n},ft=function(t){var e=t===V,n=K(e?J:m(t)),r=[];return D(n,(function(t){!f(Y,t)||e&&!f(V,t)||r.push(Y[t])})),r};(c||(A((q=function(){if(this instanceof q)throw TypeError("Symbol is not a constructor");var t=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,e=T(t),n=function(t){this===V&&n.call(J,t),f(this,F)&&f(this[F],e)&&(this[F][e]=!1),rt(this,e,g(1,t))};return s&&nt&&rt(V,e,{configurable:!0,set:n}),ot(e,t)}).prototype,"toString",(function(){return z(this).tag})),A(q,"withoutSetter",(function(t){return ot(T(t),t)})),j.f=ct,S.f=at,k.f=ut,_.f=w.f=lt,O.f=ft,R.f=function(t){return ot(L(t),t)},s&&(G(q.prototype,"description",{configurable:!0,get:function(){return z(this).description}}),a||A(V,"propertyIsEnumerable",ct,{unsafe:!0}))),r({global:!0,wrap:!0,forced:!c,sham:!c},{Symbol:q}),D(x(tt),(function(t){I(t)})),r({target:"Symbol",stat:!0,forced:!c},{for:function(t){var e=String(t);if(f(Q,e))return Q[e];var n=q(e);return Q[e]=n,Z[n]=e,n},keyFor:function(t){if(!it(t))throw TypeError(t+" is not a symbol");if(f(Z,t))return Z[t]},useSetter:function(){nt=!0},useSimple:function(){nt=!1}}),r({target:"Object",stat:!0,forced:!c,sham:!s},{create:function(t,e){return void 0===e?b(t):st(b(t),e)},defineProperty:at,defineProperties:st,getOwnPropertyDescriptor:ut}),r({target:"Object",stat:!0,forced:!c},{getOwnPropertyNames:lt,getOwnPropertySymbols:ft}),r({target:"Object",stat:!0,forced:l((function(){O.f(1)}))},{getOwnPropertySymbols:function(t){return O.f(v(t))}}),H)&&r({target:"JSON",stat:!0,forced:!c||l((function(){var t=q();return"[null]"!=H([t])||"{}"!=H({a:t})||"{}"!=H(Object(t))}))},{stringify:function(t,e,n){for(var r,o=[t],i=1;arguments.length>i;)o.push(arguments[i++]);if(r=e,(d(e)||void 0!==t)&&!it(t))return p(e)||(e=function(t,e){if("function"==typeof r&&(e=r.call(this,t,e)),!it(e))return e}),o[1]=e,H.apply(null,o)}});q.prototype[U]||E(q.prototype,U,q.prototype.valueOf),M(q,"Symbol"),P[F]=!0},function(t,e,n){"use strict";var r=n(0),o=n(6),i=n(3),a=n(7),s=n(4),c=n(8).f,u=n(116),l=i.Symbol;if(o&&"function"==typeof l&&(!("description"in l.prototype)||void 0!==l().description)){var f={},p=function(){var t=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),e=this instanceof p?new l(t):void 0===t?l():l(t);return""===t&&(f[e]=!0),e};u(p,l);var d=p.prototype=l.prototype;d.constructor=p;var h=d.toString,v="Symbol(test)"==String(l("test")),m=/^Symbol\((.*)\)[^)]+$/;c(d,"description",{configurable:!0,get:function(){var t=s(this)?this.valueOf():this,e=h.call(t);if(a(f,t))return"";var n=v?e.slice(7,-1):e.replace(m,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},function(t,e,n){var r=n(17).Symbol;t.exports=r},function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));n(98);var r=n(44);n(40),n(41),n(9),n(57),n(10),n(14),n(135);var o=n(64);function i(t){return function(t){if(Array.isArray(t))return Object(r.a)(t)}(t)||function(t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}(t)||Object(o.a)(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}},function(t,e,n){"use strict";function r(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";function r(t,e,n,r,o,i,a,s){var c,u="function"==typeof t?t.options:t;if(e&&(u.render=e,u.staticRenderFns=n,u._compiled=!0),r&&(u.functional=!0),i&&(u._scopeId="data-v-"+i),a?(c=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},u._ssrRegister=c):o&&(c=s?function(){o.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:o),c)if(u.functional){u._injectStyles=c;var l=u.render;u.render=function(t,e){return c.call(e),l(t,e)}}else{var f=u.beforeCreate;u.beforeCreate=f?[].concat(f,c):[c]}return{exports:t,options:u}}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";var r=n(0),o=n(69);r({target:"RegExp",proto:!0,forced:/./.exec!==o},{exec:o})},function(t,e,n){var r=n(8).f,o=n(7),i=n(1)("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},function(t,e,n){var r=n(21);t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 0:return function(){return t.call(e)};case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},function(t,e,n){var r=n(4);t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++n+r).toString(36)}},function(t,e,n){var r=n(112),o=n(77);t.exports=Object.keys||function(t){return r(t,o)}},function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},function(t,e,n){var r=n(70),o=n(50),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},function(t,e,n){"use strict";var r=n(0),o=n(4),i=n(38),a=n(113),s=n(13),c=n(16),u=n(55),l=n(1),f=n(56)("slice"),p=l("species"),d=[].slice,h=Math.max;r({target:"Array",proto:!0,forced:!f},{slice:function(t,e){var n,r,l,f=c(this),v=s(f.length),m=a(t,v),y=a(void 0===e?v:e,v);if(i(f)&&("function"!=typeof(n=f.constructor)||n!==Array&&!i(n.prototype)?o(n)&&null===(n=n[p])&&(n=void 0):n=void 0,n===Array||void 0===n))return d.call(f,m,y);for(r=new(void 0===n?Array:n)(h(y-m,0)),l=0;m<y;m++,l++)m in f&&u(r,l,f[m]);return r.length=l,r}})},function(t,e,n){"use strict";var r=n(49),o=n(8),i=n(29);t.exports=function(t,e,n){var a=r(e);a in t?o.f(t,a,i(0,n)):t[a]=n}},function(t,e,n){var r=n(2),o=n(1),i=n(35),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},function(t,e,n){n(134)("iterator")},function(t,e,n){var r=n(214),o=n(215),i=n(216),a=n(217),s=n(218);function c(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=a,c.prototype.set=s,t.exports=c},function(t,e,n){var r=n(140);t.exports=function(t,e){for(var n=t.length;n--;)if(r(t[n][0],e))return n;return-1}},function(t,e,n){var r=n(22)(Object,"create");t.exports=r},function(t,e,n){var r=n(236);t.exports=function(t,e){var n=t.__data__;return r(e)?n["string"==typeof e?"string":"hash"]:n.map}},function(t,e,n){var r=n(91);t.exports=function(t){if("string"==typeof t||r(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}},function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));n(9);function r(t,e,n,r,o,i,a){try{var s=t[i](a),c=s.value}catch(t){return void n(t)}s.done?e(c):Promise.resolve(c).then(r,o)}function o(t){return function(){var e=this,n=arguments;return new Promise((function(o,i){var a=t.apply(e,n);function s(t){r(a,o,i,s,c,"next",t)}function c(t){r(a,o,i,s,c,"throw",t)}s(void 0)}))}}},function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));n(54),n(9),n(83),n(135),n(10);var r=n(44);function o(t,e){if(t){if("string"==typeof t)return Object(r.a)(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Object(r.a)(t,e):void 0}}},function(t,e,n){var r,o; +(window.webpackJsonp=window.webpackJsonp||[]).push([[0],[]]);!function(t){function e(e){for(var r,a,s=e[0],c=e[1],u=e[2],f=0,p=[];f<s.length;f++)a=s[f],Object.prototype.hasOwnProperty.call(o,a)&&o[a]&&p.push(o[a][0]),o[a]=0;for(r in c)Object.prototype.hasOwnProperty.call(c,r)&&(t[r]=c[r]);for(l&&l(e);p.length;)p.shift()();return i.push.apply(i,u||[]),n()}function n(){for(var t,e=0;e<i.length;e++){for(var n=i[e],r=!0,s=1;s<n.length;s++){var c=n[s];0!==o[c]&&(r=!1)}r&&(i.splice(e--,1),t=a(a.s=n[0]))}return t}var r={},o={2:0},i=[];function a(e){if(r[e])return r[e].exports;var n=r[e]={i:e,l:!1,exports:{}};return t[e].call(n.exports,n,n.exports,a),n.l=!0,n.exports}a.e=function(t){var e=[],n=o[t];if(0!==n)if(n)e.push(n[2]);else{var r=new Promise((function(e,r){n=o[t]=[e,r]}));e.push(n[2]=r);var i,s=document.createElement("script");s.charset="utf-8",s.timeout=120,a.nc&&s.setAttribute("nonce",a.nc),s.src=function(t){return a.p+"assets/js/"+({}[t]||t)+"."+{1:"ae5ab669",3:"f3eb5b80",4:"afec4fb6",5:"a310200e",6:"9b5d321d",7:"71b7ebd7",8:"67b1febf",9:"06b397f7",10:"cc70ae4f",11:"99afb047",12:"659d0d44",13:"bd56ae9e",14:"6d48fe2d",15:"9256a41a",16:"5be27a16",17:"029f3679",18:"32643cf1",19:"ca3322d8",20:"a6bbf53c",21:"fe78dd19",22:"78cc6be9",23:"c0ee3693",24:"7f444d27",25:"7ba719d0",26:"c43cdf9f",27:"c2abeff0",28:"a2d4d54f",29:"53f637db",30:"01e2071b",31:"5ad90f2b",32:"05eec4c5",33:"da24515a",34:"1c8ddfde",35:"b6d66435",36:"1c5d25fb",37:"e2bc0515",38:"3762cc6b",39:"972809d0",40:"624e2309",41:"1bafbf2f",42:"32bcbdf0",43:"d234e5b4",44:"851d54d6",45:"489bbb74",46:"8d20f0df",47:"5b9c6a01",48:"55905f59",49:"74e156a3",50:"f34e624c",51:"5be133f8",52:"371b43e0",53:"e305cbde",54:"3d618e11",55:"2555359d",56:"4fd62374",57:"6a92da6f",58:"e9795bf7",59:"4ee743e7",60:"e6d06864",61:"09466a50",62:"51975b6b",63:"0a5e1022",64:"1f6ce620",65:"36e6c3b3",66:"a83c3c1e",67:"b32ba88c",68:"a33b0caf",69:"ed11a426",70:"e8bb95ac",71:"7638a77d",72:"e93eb3c0",73:"6397c164",74:"c914b2f2",75:"16cfc054",76:"6a920f4c",77:"27937e13",78:"737ec13d",79:"388a8446",80:"1dec84f2",81:"b62a70e6",82:"ba6bfbcb",83:"fdf32268",84:"5aa11083",85:"ed836419",86:"6e6c9232",87:"bfe73996",88:"32bc25e1",89:"9280160b",90:"d6e97ecf",91:"a90d8bb7",92:"906efbb2",93:"c87070cc",94:"e7eb9f7b",95:"c27f97f4",96:"d6fda379",97:"0e9f507e",98:"812087ee",99:"cb09c45e",100:"b26fa278",101:"1648642d",102:"d423c75b",103:"d4195020",104:"9860de76",105:"e620df2f",106:"95350ada"}[t]+".js"}(t);var c=new Error;i=function(e){s.onerror=s.onload=null,clearTimeout(u);var n=o[t];if(0!==n){if(n){var r=e&&("load"===e.type?"missing":e.type),i=e&&e.target&&e.target.src;c.message="Loading chunk "+t+" failed.\n("+r+": "+i+")",c.name="ChunkLoadError",c.type=r,c.request=i,n[1](c)}o[t]=void 0}};var u=setTimeout((function(){i({type:"timeout",target:s})}),12e4);s.onerror=s.onload=i,document.head.appendChild(s)}return Promise.all(e)},a.m=t,a.c=r,a.d=function(t,e,n){a.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},a.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},a.t=function(t,e){if(1&e&&(t=a(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(a.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)a.d(n,r,function(e){return t[e]}.bind(null,r));return n},a.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return a.d(e,"a",e),e},a.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},a.p="/",a.oe=function(t){throw console.error(t),t};var s=window.webpackJsonp=window.webpackJsonp||[],c=s.push.bind(s);s.push=e,s=s.slice();for(var u=0;u<s.length;u++)e(s[u]);var l=c;i.push([185,0]),n()}([function(t,e,n){var r=n(3),o=n(24).f,i=n(11),a=n(18),s=n(72),c=n(116),u=n(101);t.exports=function(t,e){var n,l,f,p,d,h=t.target,v=t.global,m=t.stat;if(n=v?r:m?r[h]||s(h,{}):(r[h]||{}).prototype)for(l in e){if(p=e[l],f=t.noTargetGet?(d=o(n,l))&&d.value:n[l],!u(v?l:h+(m?".":"#")+l,t.forced)&&void 0!==f){if(typeof p==typeof f)continue;c(p,f)}(t.sham||f&&f.sham)&&i(p,"sham",!0),a(n,l,p,t)}}},function(t,e,n){var r=n(3),o=n(70),i=n(7),a=n(50),s=n(74),c=n(111),u=o("wks"),l=r.Symbol,f=c?l:l&&l.withoutSetter||a;t.exports=function(t){return i(u,t)&&(s||"string"==typeof u[t])||(s&&i(l,t)?u[t]=l[t]:u[t]=f("Symbol."+t)),u[t]}},function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||function(){return this}()||Function("return this")()},function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,e,n){var r=n(4);t.exports=function(t){if(!r(t))throw TypeError(String(t)+" is not an object");return t}},function(t,e,n){var r=n(2);t.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},function(t,e,n){var r=n(6),o=n(109),i=n(5),a=n(49),s=Object.defineProperty;e.f=r?s:function(t,e,n){if(i(t),e=a(e,!0),i(n),o)try{return s(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t}},function(t,e,n){var r=n(82),o=n(18),i=n(196);r||o(Object.prototype,"toString",i,{unsafe:!0})},function(t,e,n){"use strict";var r=n(106).charAt,o=n(28),i=n(115),a=o.set,s=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=s(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},function(t,e,n){var r=n(6),o=n(8),i=n(29);t.exports=r?function(t,e,n){return o.f(t,e,i(1,n))}:function(t,e,n){return t[e]=n,t}},function(t,e,n){var r=n(23);t.exports=function(t){return Object(r(t))}},function(t,e,n){var r=n(52),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},function(t,e,n){var r=n(3),o=n(128),i=n(99),a=n(11),s=n(1),c=s("iterator"),u=s("toStringTag"),l=i.values;for(var f in o){var p=r[f],d=p&&p.prototype;if(d){if(d[c]!==l)try{a(d,c,l)}catch(t){d[c]=l}if(d[u]||a(d,u,f),o[f])for(var h in i)if(d[h]!==i[h])try{a(d,h,i[h])}catch(t){d[h]=i[h]}}}},function(t,e){var n=Array.isArray;t.exports=n},function(t,e,n){var r=n(33),o=n(23);t.exports=function(t){return r(o(t))}},function(t,e,n){var r=n(138),o="object"==typeof self&&self&&self.Object===Object&&self,i=r||o||Function("return this")();t.exports=i},function(t,e,n){var r=n(3),o=n(11),i=n(7),a=n(72),s=n(78),c=n(28),u=c.get,l=c.enforce,f=String(String).split("String");(t.exports=function(t,e,n,s){var c,u=!!s&&!!s.unsafe,p=!!s&&!!s.enumerable,d=!!s&&!!s.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),(c=l(n)).source||(c.source=f.join("string"==typeof e?e:""))),t!==r?(u?!d&&t[e]&&(p=!0):delete t[e],p?t[e]=n:o(t,e,n)):p?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||s(this)}))},function(t,e,n){var r=n(110),o=n(3),i=function(t){return"function"==typeof t?t:void 0};t.exports=function(t,e){return arguments.length<2?i(r[t])||i(o[t]):r[t]&&r[t][e]||o[t]&&o[t][e]}},function(t,e){t.exports=!1},function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},function(t,e,n){var r=n(224),o=n(227);t.exports=function(t,e){var n=o(t,e);return r(n)?n:void 0}},function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},function(t,e,n){var r=n(6),o=n(79),i=n(29),a=n(16),s=n(49),c=n(7),u=n(109),l=Object.getOwnPropertyDescriptor;e.f=r?l:function(t,e){if(t=a(t),e=s(e,!0),u)try{return l(t,e)}catch(t){}if(c(t,e))return i(!o.f.call(t,e),t[e])}},function(t,e){t.exports=function(t){return null!=t&&"object"==typeof t}},function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},function(t,e,n){"use strict";var r=n(0),o=n(31).filter;r({target:"Array",proto:!0,forced:!n(56)("filter")},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){var r,o,i,a=n(186),s=n(3),c=n(4),u=n(11),l=n(7),f=n(71),p=n(53),d=n(36),h=s.WeakMap;if(a){var v=f.state||(f.state=new h),m=v.get,y=v.has,g=v.set;r=function(t,e){return e.facade=t,g.call(v,t,e),e},o=function(t){return m.call(v,t)||{}},i=function(t){return y.call(v,t)}}else{var b=p("state");d[b]=!0,r=function(t,e){return e.facade=t,u(t,b,e),e},o=function(t){return l(t,b)?t[b]:{}},i=function(t){return l(t,b)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!c(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e,n){var r,o=n(5),i=n(173),a=n(77),s=n(36),c=n(114),u=n(73),l=n(53),f=l("IE_PROTO"),p=function(){},d=function(t){return"<script>"+t+"<\/script>"},h=function(){try{r=document.domain&&new ActiveXObject("htmlfile")}catch(t){}var t,e;h=r?function(t){t.write(d("")),t.close();var e=t.parentWindow.Object;return t=null,e}(r):((e=u("iframe")).style.display="none",c.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(d("document.F=Object")),t.close(),t.F);for(var n=a.length;n--;)delete h.prototype[a[n]];return h()};s[f]=!0,t.exports=Object.create||function(t,e){var n;return null!==t?(p.prototype=o(t),n=new p,p.prototype=null,n[f]=t):n=h(),void 0===e?n:i(n,e)}},function(t,e,n){var r=n(48),o=n(33),i=n(12),a=n(13),s=n(129),c=[].push,u=function(t){var e=1==t,n=2==t,u=3==t,l=4==t,f=6==t,p=7==t,d=5==t||f;return function(h,v,m,y){for(var g,b,x=i(h),_=o(x),w=r(v,m,3),O=a(_.length),k=0,S=y||s,j=e?S(h,O):n||p?S(h,0):void 0;O>k;k++)if((d||k in _)&&(b=w(g=_[k],k,x),t))if(e)j[k]=b;else if(b)switch(t){case 3:return!0;case 5:return g;case 6:return k;case 2:c.call(j,g)}else switch(t){case 4:return!1;case 7:c.call(j,g)}return f?-1:u||l?l:j}};t.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6),filterOut:u(7)}},function(t,e,n){var r=n(42),o=n(209),i=n(210),a=r?r.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":a&&a in Object(t)?o(t):i(t)}},function(t,e,n){var r=n(2),o=n(26),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},function(t,e,n){var r=n(26),o=n(3);t.exports="process"==r(o.process)},function(t,e,n){var r,o,i=n(3),a=n(75),s=i.process,c=s&&s.versions,u=c&&c.v8;u?o=(r=u.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},function(t,e){t.exports={}},function(t,e){t.exports={}},function(t,e,n){var r=n(26);t.exports=Array.isArray||function(t){return"Array"==r(t)}},function(t,e,n){"use strict";var r=n(2);t.exports=function(t,e){var n=[][t];return!!n&&r((function(){n.call(null,e||function(){throw 1},1)}))}},function(t,e,n){"use strict";var r=n(0),o=n(3),i=n(19),a=n(20),s=n(6),c=n(74),u=n(111),l=n(2),f=n(7),p=n(38),d=n(4),h=n(5),v=n(12),m=n(16),y=n(49),g=n(29),b=n(30),x=n(51),_=n(68),w=n(203),O=n(80),k=n(24),S=n(8),j=n(79),E=n(11),A=n(18),C=n(70),$=n(53),P=n(36),T=n(50),L=n(1),R=n(133),I=n(134),M=n(47),N=n(28),D=n(31).forEach,F=$("hidden"),U=L("toPrimitive"),B=N.set,z=N.getterFor("Symbol"),V=Object.prototype,q=o.Symbol,H=i("JSON","stringify"),W=k.f,G=S.f,K=w.f,X=j.f,Y=C("symbols"),J=C("op-symbols"),Q=C("string-to-symbol-registry"),Z=C("symbol-to-string-registry"),tt=C("wks"),et=o.QObject,nt=!et||!et.prototype||!et.prototype.findChild,rt=s&&l((function(){return 7!=b(G({},"a",{get:function(){return G(this,"a",{value:7}).a}})).a}))?function(t,e,n){var r=W(V,e);r&&delete V[e],G(t,e,n),r&&t!==V&&G(V,e,r)}:G,ot=function(t,e){var n=Y[t]=b(q.prototype);return B(n,{type:"Symbol",tag:t,description:e}),s||(n.description=e),n},it=u?function(t){return"symbol"==typeof t}:function(t){return Object(t)instanceof q},at=function(t,e,n){t===V&&at(J,e,n),h(t);var r=y(e,!0);return h(n),f(Y,r)?(n.enumerable?(f(t,F)&&t[F][r]&&(t[F][r]=!1),n=b(n,{enumerable:g(0,!1)})):(f(t,F)||G(t,F,g(1,{})),t[F][r]=!0),rt(t,r,n)):G(t,r,n)},st=function(t,e){h(t);var n=m(e),r=x(n).concat(ft(n));return D(r,(function(e){s&&!ct.call(n,e)||at(t,e,n[e])})),t},ct=function(t){var e=y(t,!0),n=X.call(this,e);return!(this===V&&f(Y,e)&&!f(J,e))&&(!(n||!f(this,e)||!f(Y,e)||f(this,F)&&this[F][e])||n)},ut=function(t,e){var n=m(t),r=y(e,!0);if(n!==V||!f(Y,r)||f(J,r)){var o=W(n,r);return!o||!f(Y,r)||f(n,F)&&n[F][r]||(o.enumerable=!0),o}},lt=function(t){var e=K(m(t)),n=[];return D(e,(function(t){f(Y,t)||f(P,t)||n.push(t)})),n},ft=function(t){var e=t===V,n=K(e?J:m(t)),r=[];return D(n,(function(t){!f(Y,t)||e&&!f(V,t)||r.push(Y[t])})),r};(c||(A((q=function(){if(this instanceof q)throw TypeError("Symbol is not a constructor");var t=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,e=T(t),n=function(t){this===V&&n.call(J,t),f(this,F)&&f(this[F],e)&&(this[F][e]=!1),rt(this,e,g(1,t))};return s&&nt&&rt(V,e,{configurable:!0,set:n}),ot(e,t)}).prototype,"toString",(function(){return z(this).tag})),A(q,"withoutSetter",(function(t){return ot(T(t),t)})),j.f=ct,S.f=at,k.f=ut,_.f=w.f=lt,O.f=ft,R.f=function(t){return ot(L(t),t)},s&&(G(q.prototype,"description",{configurable:!0,get:function(){return z(this).description}}),a||A(V,"propertyIsEnumerable",ct,{unsafe:!0}))),r({global:!0,wrap:!0,forced:!c,sham:!c},{Symbol:q}),D(x(tt),(function(t){I(t)})),r({target:"Symbol",stat:!0,forced:!c},{for:function(t){var e=String(t);if(f(Q,e))return Q[e];var n=q(e);return Q[e]=n,Z[n]=e,n},keyFor:function(t){if(!it(t))throw TypeError(t+" is not a symbol");if(f(Z,t))return Z[t]},useSetter:function(){nt=!0},useSimple:function(){nt=!1}}),r({target:"Object",stat:!0,forced:!c,sham:!s},{create:function(t,e){return void 0===e?b(t):st(b(t),e)},defineProperty:at,defineProperties:st,getOwnPropertyDescriptor:ut}),r({target:"Object",stat:!0,forced:!c},{getOwnPropertyNames:lt,getOwnPropertySymbols:ft}),r({target:"Object",stat:!0,forced:l((function(){O.f(1)}))},{getOwnPropertySymbols:function(t){return O.f(v(t))}}),H)&&r({target:"JSON",stat:!0,forced:!c||l((function(){var t=q();return"[null]"!=H([t])||"{}"!=H({a:t})||"{}"!=H(Object(t))}))},{stringify:function(t,e,n){for(var r,o=[t],i=1;arguments.length>i;)o.push(arguments[i++]);if(r=e,(d(e)||void 0!==t)&&!it(t))return p(e)||(e=function(t,e){if("function"==typeof r&&(e=r.call(this,t,e)),!it(e))return e}),o[1]=e,H.apply(null,o)}});q.prototype[U]||E(q.prototype,U,q.prototype.valueOf),M(q,"Symbol"),P[F]=!0},function(t,e,n){"use strict";var r=n(0),o=n(6),i=n(3),a=n(7),s=n(4),c=n(8).f,u=n(116),l=i.Symbol;if(o&&"function"==typeof l&&(!("description"in l.prototype)||void 0!==l().description)){var f={},p=function(){var t=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),e=this instanceof p?new l(t):void 0===t?l():l(t);return""===t&&(f[e]=!0),e};u(p,l);var d=p.prototype=l.prototype;d.constructor=p;var h=d.toString,v="Symbol(test)"==String(l("test")),m=/^Symbol\((.*)\)[^)]+$/;c(d,"description",{configurable:!0,get:function(){var t=s(this)?this.valueOf():this,e=h.call(t);if(a(f,t))return"";var n=v?e.slice(7,-1):e.replace(m,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},function(t,e,n){var r=n(17).Symbol;t.exports=r},function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));n(98);var r=n(44);n(40),n(41),n(9),n(57),n(10),n(14),n(135);var o=n(64);function i(t){return function(t){if(Array.isArray(t))return Object(r.a)(t)}(t)||function(t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}(t)||Object(o.a)(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}},function(t,e,n){"use strict";function r(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";function r(t,e,n,r,o,i,a,s){var c,u="function"==typeof t?t.options:t;if(e&&(u.render=e,u.staticRenderFns=n,u._compiled=!0),r&&(u.functional=!0),i&&(u._scopeId="data-v-"+i),a?(c=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},u._ssrRegister=c):o&&(c=s?function(){o.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:o),c)if(u.functional){u._injectStyles=c;var l=u.render;u.render=function(t,e){return c.call(e),l(t,e)}}else{var f=u.beforeCreate;u.beforeCreate=f?[].concat(f,c):[c]}return{exports:t,options:u}}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";var r=n(0),o=n(69);r({target:"RegExp",proto:!0,forced:/./.exec!==o},{exec:o})},function(t,e,n){var r=n(8).f,o=n(7),i=n(1)("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},function(t,e,n){var r=n(21);t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 0:return function(){return t.call(e)};case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},function(t,e,n){var r=n(4);t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++n+r).toString(36)}},function(t,e,n){var r=n(112),o=n(77);t.exports=Object.keys||function(t){return r(t,o)}},function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},function(t,e,n){var r=n(70),o=n(50),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},function(t,e,n){"use strict";var r=n(0),o=n(4),i=n(38),a=n(113),s=n(13),c=n(16),u=n(55),l=n(1),f=n(56)("slice"),p=l("species"),d=[].slice,h=Math.max;r({target:"Array",proto:!0,forced:!f},{slice:function(t,e){var n,r,l,f=c(this),v=s(f.length),m=a(t,v),y=a(void 0===e?v:e,v);if(i(f)&&("function"!=typeof(n=f.constructor)||n!==Array&&!i(n.prototype)?o(n)&&null===(n=n[p])&&(n=void 0):n=void 0,n===Array||void 0===n))return d.call(f,m,y);for(r=new(void 0===n?Array:n)(h(y-m,0)),l=0;m<y;m++,l++)m in f&&u(r,l,f[m]);return r.length=l,r}})},function(t,e,n){"use strict";var r=n(49),o=n(8),i=n(29);t.exports=function(t,e,n){var a=r(e);a in t?o.f(t,a,i(0,n)):t[a]=n}},function(t,e,n){var r=n(2),o=n(1),i=n(35),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},function(t,e,n){n(134)("iterator")},function(t,e,n){var r=n(214),o=n(215),i=n(216),a=n(217),s=n(218);function c(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=a,c.prototype.set=s,t.exports=c},function(t,e,n){var r=n(140);t.exports=function(t,e){for(var n=t.length;n--;)if(r(t[n][0],e))return n;return-1}},function(t,e,n){var r=n(22)(Object,"create");t.exports=r},function(t,e,n){var r=n(236);t.exports=function(t,e){var n=t.__data__;return r(e)?n["string"==typeof e?"string":"hash"]:n.map}},function(t,e,n){var r=n(91);t.exports=function(t){if("string"==typeof t||r(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}},function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));n(9);function r(t,e,n,r,o,i,a){try{var s=t[i](a),c=s.value}catch(t){return void n(t)}s.done?e(c):Promise.resolve(c).then(r,o)}function o(t){return function(){var e=this,n=arguments;return new Promise((function(o,i){var a=t.apply(e,n);function s(t){r(a,o,i,s,c,"next",t)}function c(t){r(a,o,i,s,c,"throw",t)}s(void 0)}))}}},function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));n(54),n(9),n(83),n(135),n(10);var r=n(44);function o(t,e){if(t){if("string"==typeof t)return Object(r.a)(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Object(r.a)(t,e):void 0}}},function(t,e,n){var r,o; /* NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress * @license MIT */void 0===(o="function"==typeof(r=function(){var t,e,n={version:"0.2.0"},r=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'<div class="bar" role="bar"><div class="peg"></div></div><div class="spinner" role="spinner"><div class="spinner-icon"></div></div>'};function o(t,e,n){return t<e?e:t>n?n:t}function i(t){return 100*(-1+t)}n.configure=function(t){var e,n;for(e in t)void 0!==(n=t[e])&&t.hasOwnProperty(e)&&(r[e]=n);return this},n.status=null,n.set=function(t){var e=n.isStarted();t=o(t,r.minimum,1),n.status=1===t?null:t;var c=n.render(!e),u=c.querySelector(r.barSelector),l=r.speed,f=r.easing;return c.offsetWidth,a((function(e){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),s(u,function(t,e,n){var o;return(o="translate3d"===r.positionUsing?{transform:"translate3d("+i(t)+"%,0,0)"}:"translate"===r.positionUsing?{transform:"translate("+i(t)+"%,0)"}:{"margin-left":i(t)+"%"}).transition="all "+e+"ms "+n,o}(t,l,f)),1===t?(s(c,{transition:"none",opacity:1}),c.offsetWidth,setTimeout((function(){s(c,{transition:"all "+l+"ms linear",opacity:0}),setTimeout((function(){n.remove(),e()}),l)}),l)):setTimeout(e,l)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var t=function(){setTimeout((function(){n.status&&(n.trickle(),t())}),r.trickleSpeed)};return r.trickle&&t(),this},n.done=function(t){return t||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(t){var e=n.status;return e?("number"!=typeof t&&(t=(1-e)*o(Math.random()*e,.1,.95)),e=o(e+t,0,.994),n.set(e)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},t=0,e=0,n.promise=function(r){return r&&"resolved"!==r.state()?(0===e&&n.start(),t++,e++,r.always((function(){0==--e?(t=0,n.done()):n.set((t-e)/t)})),this):this},n.render=function(t){if(n.isRendered())return document.getElementById("nprogress");u(document.documentElement,"nprogress-busy");var e=document.createElement("div");e.id="nprogress",e.innerHTML=r.template;var o,a=e.querySelector(r.barSelector),c=t?"-100":i(n.status||0),l=document.querySelector(r.parent);return s(a,{transition:"all 0 linear",transform:"translate3d("+c+"%,0,0)"}),r.showSpinner||(o=e.querySelector(r.spinnerSelector))&&p(o),l!=document.body&&u(l,"nprogress-custom-parent"),l.appendChild(e),e},n.remove=function(){l(document.documentElement,"nprogress-busy"),l(document.querySelector(r.parent),"nprogress-custom-parent");var t=document.getElementById("nprogress");t&&p(t)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var t=document.body.style,e="WebkitTransform"in t?"Webkit":"MozTransform"in t?"Moz":"msTransform"in t?"ms":"OTransform"in t?"O":"";return e+"Perspective"in t?"translate3d":e+"Transform"in t?"translate":"margin"};var a=function(){var t=[];function e(){var n=t.shift();n&&n(e)}return function(n){t.push(n),1==t.length&&e()}}(),s=function(){var t=["Webkit","O","Moz","ms"],e={};function n(n){return n=n.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(t,e){return e.toUpperCase()})),e[n]||(e[n]=function(e){var n=document.body.style;if(e in n)return e;for(var r,o=t.length,i=e.charAt(0).toUpperCase()+e.slice(1);o--;)if((r=t[o]+i)in n)return r;return e}(n))}function r(t,e,r){e=n(e),t.style[e]=r}return function(t,e){var n,o,i=arguments;if(2==i.length)for(n in e)void 0!==(o=e[n])&&e.hasOwnProperty(n)&&r(t,n,o);else r(t,i[1],i[2])}}();function c(t,e){return("string"==typeof t?t:f(t)).indexOf(" "+e+" ")>=0}function u(t,e){var n=f(t),r=n+e;c(n,e)||(t.className=r.substring(1))}function l(t,e){var n,r=f(t);c(t,e)&&(n=r.replace(" "+e+" "," "),t.className=n.substring(1,n.length-1))}function f(t){return(" "+(t.className||"")+" ").replace(/\s+/gi," ")}function p(t){t&&t.parentNode&&t.parentNode.removeChild(t)}return n})?r.call(e,n,e,t):r)||(t.exports=o)},function(t,e,n){"use strict";var r=n(0),o=n(31).map;r({target:"Array",proto:!0,forced:!n(56)("map")},{map:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){"use strict";var r=n(165),o=n(5),i=n(13),a=n(52),s=n(23),c=n(171),u=n(205),l=n(166),f=Math.max,p=Math.min;r("replace",2,(function(t,e,n,r){var d=r.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,h=r.REPLACE_KEEPS_$0,v=d?"$":"$0";return[function(n,r){var o=s(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,r){if(!d&&h||"string"==typeof r&&-1===r.indexOf(v)){var s=n(e,t,this,r);if(s.done)return s.value}var m=o(t),y=String(this),g="function"==typeof r;g||(r=String(r));var b=m.global;if(b){var x=m.unicode;m.lastIndex=0}for(var _=[];;){var w=l(m,y);if(null===w)break;if(_.push(w),!b)break;""===String(w[0])&&(m.lastIndex=c(y,i(m.lastIndex),x))}for(var O,k="",S=0,j=0;j<_.length;j++){w=_[j];for(var E=String(w[0]),A=f(p(a(w.index),y.length),0),C=[],$=1;$<w.length;$++)C.push(void 0===(O=w[$])?O:String(O));var P=w.groups;if(g){var T=[E].concat(C,A,y);void 0!==P&&T.push(P);var L=String(r.apply(void 0,T))}else L=u(E,y,A,C,P,r);A>=S&&(k+=y.slice(S,A)+L,S=A+E.length)}return k+y.slice(S)}]}))},function(t,e,n){var r=n(112),o=n(77).concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},function(t,e,n){"use strict";var r,o,i=n(170),a=n(179),s=RegExp.prototype.exec,c=String.prototype.replace,u=s,l=(r=/a/,o=/b*/g,s.call(r,"a"),s.call(o,"a"),0!==r.lastIndex||0!==o.lastIndex),f=a.UNSUPPORTED_Y||a.BROKEN_CARET,p=void 0!==/()??/.exec("")[1];(l||p||f)&&(u=function(t){var e,n,r,o,a=this,u=f&&a.sticky,d=i.call(a),h=a.source,v=0,m=t;return u&&(-1===(d=d.replace("y","")).indexOf("g")&&(d+="g"),m=String(t).slice(a.lastIndex),a.lastIndex>0&&(!a.multiline||a.multiline&&"\n"!==t[a.lastIndex-1])&&(h="(?: "+h+")",m=" "+m,v++),n=new RegExp("^(?:"+h+")",d)),p&&(n=new RegExp("^"+h+"$(?!\\s)",d)),l&&(e=a.lastIndex),r=s.call(u?n:a,m),u?r?(r.input=r.input.slice(v),r[0]=r[0].slice(v),r.index=a.lastIndex,a.lastIndex+=r[0].length):a.lastIndex=0:l&&r&&(a.lastIndex=a.global?r.index+r[0].length:e),p&&r&&r.length>1&&c.call(r[0],n,(function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(r[o]=void 0)})),r}),t.exports=u},function(t,e,n){var r=n(20),o=n(71);(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.9.1",mode:r?"pure":"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"})},function(t,e,n){var r=n(3),o=n(72),i=r["__core-js_shared__"]||o("__core-js_shared__",{});t.exports=i},function(t,e,n){var r=n(3),o=n(11);t.exports=function(t,e){try{o(r,t,e)}catch(n){r[t]=e}return e}},function(t,e,n){var r=n(3),o=n(4),i=r.document,a=o(i)&&o(i.createElement);t.exports=function(t){return a?i.createElement(t):{}}},function(t,e,n){var r=n(34),o=n(35),i=n(2);t.exports=!!Object.getOwnPropertySymbols&&!i((function(){return!Symbol.sham&&(r?38===o:o>37&&o<41)}))},function(t,e,n){var r=n(19);t.exports=r("navigator","userAgent")||""},function(t,e,n){var r=n(16),o=n(13),i=n(113),a=function(t){return function(e,n,a){var s,c=r(e),u=o(c.length),l=i(a,u);if(t&&n!=n){for(;u>l;)if((s=c[l++])!=s)return!0}else for(;u>l;l++)if((t||l in c)&&c[l]===n)return t||l||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(t,e,n){var r=n(71),o=Function.toString;"function"!=typeof r.inspectSource&&(r.inspectSource=function(t){return o.call(t)}),t.exports=r.inspectSource},function(t,e,n){"use strict";var r={}.propertyIsEnumerable,o=Object.getOwnPropertyDescriptor,i=o&&!r.call({1:2},1);e.f=i?function(t){var e=o(this,t);return!!e&&e.enumerable}:r},function(t,e){e.f=Object.getOwnPropertySymbols},function(t,e,n){var r=n(7),o=n(12),i=n(53),a=n(119),s=i("IE_PROTO"),c=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,s)?t[s]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?c:null}},function(t,e,n){var r={};r[n(1)("toStringTag")]="z",t.exports="[object z]"===String(r)},function(t,e,n){var r=n(6),o=n(8).f,i=Function.prototype,a=i.toString,s=/^\s*function ([^ (]*)/;r&&!("name"in i)&&o(i,"name",{configurable:!0,get:function(){try{return a.call(this).match(s)[1]}catch(t){return""}}})},function(t,e,n){var r=n(208),o=n(25),i=Object.prototype,a=i.hasOwnProperty,s=i.propertyIsEnumerable,c=r(function(){return arguments}())?r:function(t){return o(t)&&a.call(t,"callee")&&!s.call(t,"callee")};t.exports=c},function(t,e,n){var r=n(22)(n(17),"Map");t.exports=r},function(t,e){t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},function(t,e,n){var r=n(228),o=n(235),i=n(237),a=n(238),s=n(239);function c(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=a,c.prototype.set=s,t.exports=c},function(t,e){t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}},function(t,e){t.exports=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}},function(t,e,n){var r=n(15),o=n(91),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/;t.exports=function(t,e){if(r(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!o(t))||(a.test(t)||!i.test(t)||null!=e&&t in Object(e))}},function(t,e,n){var r=n(32),o=n(25);t.exports=function(t){return"symbol"==typeof t||o(t)&&"[object Symbol]"==r(t)}},function(t,e){t.exports=function(t){return t}},function(t,e,n){"use strict";var r=n(0),o=n(31).some;r({target:"Array",proto:!0,forced:!n(39)("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){var r=n(103),o=n(37),i=n(1)("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},function(t,e,n){var r=n(0),o=n(12),i=n(51);r({target:"Object",stat:!0,forced:n(2)((function(){i(1)}))},{keys:function(t){return i(o(t))}})},function(t,e,n){"use strict";var r=n(0),o=n(131);r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},function(t,e,n){var r=n(3),o=n(128),i=n(131),a=n(11);for(var s in o){var c=r[s],u=c&&c.prototype;if(u&&u.forEach!==i)try{a(u,"forEach",i)}catch(t){u.forEach=i}}},function(t,e,n){n(0)({target:"Array",stat:!0},{isArray:n(38)})},function(t,e,n){"use strict";var r=n(16),o=n(100),i=n(37),a=n(28),s=n(115),c=a.set,u=a.getterFor("Array Iterator");t.exports=s(Array,"Array",(function(t,e){c(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=u(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},function(t,e,n){var r=n(1),o=n(30),i=n(8),a=r("unscopables"),s=Array.prototype;null==s[a]&&i.f(s,a,{configurable:!0,value:o(null)}),t.exports=function(t){s[a][t]=!0}},function(t,e,n){var r=n(2),o=/#|\.prototype\./,i=function(t,e){var n=s[a(t)];return n==u||n!=c&&("function"==typeof e?r(e):!!e)},a=i.normalize=function(t){return String(t).replace(o,".").toLowerCase()},s=i.data={},c=i.NATIVE="N",u=i.POLYFILL="P";t.exports=i},function(t,e,n){var r=n(5),o=n(187);t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{(t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),e=n instanceof Array}catch(t){}return function(n,i){return r(n),o(i),e?t.call(n,i):n.__proto__=i,n}}():void 0)},function(t,e,n){var r=n(82),o=n(26),i=n(1)("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},function(t,e,n){var r=n(5),o=n(21),i=n(1)("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},function(t,e,n){var r=function(t){"use strict";var e=Object.prototype,n=e.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},o=r.iterator||"@@iterator",i=r.asyncIterator||"@@asyncIterator",a=r.toStringTag||"@@toStringTag";function s(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{s({},"")}catch(t){s=function(t,e,n){return t[e]=n}}function c(t,e,n,r){var o=e&&e.prototype instanceof f?e:f,i=Object.create(o.prototype),a=new O(r||[]);return i._invoke=function(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return S()}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=x(a,n);if(s){if(s===l)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var c=u(t,e,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===l)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r="completed",n.method="throw",n.arg=c.arg)}}}(t,n,a),i}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var l={};function f(){}function p(){}function d(){}var h={};h[o]=function(){return this};var v=Object.getPrototypeOf,m=v&&v(v(k([])));m&&m!==e&&n.call(m,o)&&(h=m);var y=d.prototype=f.prototype=Object.create(h);function g(t){["next","throw","return"].forEach((function(e){s(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){var r;this._invoke=function(o,i){function a(){return new e((function(r,a){!function r(o,i,a,s){var c=u(t[o],t,i);if("throw"!==c.type){var l=c.arg,f=l.value;return f&&"object"==typeof f&&n.call(f,"__await")?e.resolve(f.__await).then((function(t){r("next",t,a,s)}),(function(t){r("throw",t,a,s)})):e.resolve(f).then((function(t){l.value=t,a(l)}),(function(t){return r("throw",t,a,s)}))}s(c.arg)}(o,i,r,a)}))}return r=r?r.then(a,a):a()}}function x(t,e){var n=t.iterator[e.method];if(void 0===n){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=void 0,x(t,e),"throw"===e.method))return l;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return l}var r=u(n,t.iterator,e.arg);if("throw"===r.type)return e.method="throw",e.arg=r.arg,e.delegate=null,l;var o=r.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,l):o:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,l)}function _(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function w(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function O(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(_,this),this.reset(!0)}function k(t){if(t){var e=t[o];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,i=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return i.next=i}}return{next:S}}function S(){return{value:void 0,done:!0}}return p.prototype=y.constructor=d,d.constructor=p,p.displayName=s(d,a,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===p||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,d):(t.__proto__=d,s(t,a,"GeneratorFunction")),t.prototype=Object.create(y),t},t.awrap=function(t){return{__await:t}},g(b.prototype),b.prototype[i]=function(){return this},t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(y),s(y,a,"Generator"),y[o]=function(){return this},y.toString=function(){return"[object Generator]"},t.keys=function(t){var e=[];for(var n in t)e.push(n);return e.reverse(),function n(){for(;e.length;){var r=e.pop();if(r in t)return n.value=r,n.done=!1,n}return n.done=!0,n}},t.values=k,O.prototype={constructor:O,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(w),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&&c){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,l):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),l},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),w(n),l}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;w(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:k(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),l}},t}(t.exports);try{regeneratorRuntime=r}catch(t){Function("r","regeneratorRuntime = r")(r)}},function(t,e,n){var r=n(52),o=n(23),i=function(t){return function(e,n){var i,a,s=String(o(e)),c=r(n),u=s.length;return c<0||c>=u?t?"":void 0:(i=s.charCodeAt(c))<55296||i>56319||c+1===u||(a=s.charCodeAt(c+1))<56320||a>57343?t?s.charAt(c):i:t?s.slice(c,c+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},function(t,e,n){var r=n(169);t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},function(t,e,n){var r=n(1)("match");t.exports=function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[r]=!1,"/./"[t](e)}catch(t){}}return!1}},function(t,e,n){var r=n(6),o=n(2),i=n(73);t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},function(t,e,n){var r=n(3);t.exports=r},function(t,e,n){var r=n(74);t.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},function(t,e,n){var r=n(7),o=n(16),i=n(76).indexOf,a=n(36);t.exports=function(t,e){var n,s=o(t),c=0,u=[];for(n in s)!r(a,n)&&r(s,n)&&u.push(n);for(;e.length>c;)r(s,n=e[c++])&&(~i(u,n)||u.push(n));return u}},function(t,e,n){var r=n(52),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},function(t,e,n){var r=n(19);t.exports=r("document","documentElement")},function(t,e,n){"use strict";var r=n(0),o=n(174),i=n(81),a=n(102),s=n(47),c=n(11),u=n(18),l=n(1),f=n(20),p=n(37),d=n(118),h=d.IteratorPrototype,v=d.BUGGY_SAFARI_ITERATORS,m=l("iterator"),y=function(){return this};t.exports=function(t,e,n,l,d,g,b){o(n,e,l);var x,_,w,O=function(t){if(t===d&&A)return A;if(!v&&t in j)return j[t];switch(t){case"keys":case"values":case"entries":return function(){return new n(this,t)}}return function(){return new n(this)}},k=e+" Iterator",S=!1,j=t.prototype,E=j[m]||j["@@iterator"]||d&&j[d],A=!v&&E||O(d),C="Array"==e&&j.entries||E;if(C&&(x=i(C.call(new t)),h!==Object.prototype&&x.next&&(f||i(x)===h||(a?a(x,h):"function"!=typeof x[m]&&c(x,m,y)),s(x,k,!0,!0),f&&(p[k]=y))),"values"==d&&E&&"values"!==E.name&&(S=!0,A=function(){return E.call(this)}),f&&!b||j[m]===A||c(j,m,A),p[e]=A,d)if(_={values:O("values"),keys:g?A:O("keys"),entries:O("entries")},b)for(w in _)(v||S||!(w in j))&&u(j,w,_[w]);else r({target:e,proto:!0,forced:v||S},_);return _}},function(t,e,n){var r=n(7),o=n(117),i=n(24),a=n(8);t.exports=function(t,e){for(var n=o(e),s=a.f,c=i.f,u=0;u<n.length;u++){var l=n[u];r(t,l)||s(t,l,c(e,l))}}},function(t,e,n){var r=n(19),o=n(68),i=n(80),a=n(5);t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},function(t,e,n){"use strict";var r,o,i,a=n(2),s=n(81),c=n(11),u=n(7),l=n(1),f=n(20),p=l("iterator"),d=!1;[].keys&&("next"in(i=[].keys())?(o=s(s(i)))!==Object.prototype&&(r=o):d=!0);var h=null==r||a((function(){var t={};return r[p].call(t)!==t}));h&&(r={}),f&&!h||u(r,p)||c(r,p,(function(){return this})),t.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:d}},function(t,e,n){var r=n(2);t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},function(t,e,n){var r=n(3);t.exports=r.Promise},function(t,e,n){var r=n(1),o=n(37),i=r("iterator"),a=Array.prototype;t.exports=function(t){return void 0!==t&&(o.Array===t||a[i]===t)}},function(t,e,n){var r=n(5);t.exports=function(t){var e=t.return;if(void 0!==e)return r(e.call(t)).value}},function(t,e,n){var r=n(1)("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(t){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(t){}return n}},function(t,e,n){var r,o,i,a=n(3),s=n(2),c=n(48),u=n(114),l=n(73),f=n(125),p=n(34),d=a.location,h=a.setImmediate,v=a.clearImmediate,m=a.process,y=a.MessageChannel,g=a.Dispatch,b=0,x={},_=function(t){if(x.hasOwnProperty(t)){var e=x[t];delete x[t],e()}},w=function(t){return function(){_(t)}},O=function(t){_(t.data)},k=function(t){a.postMessage(t+"",d.protocol+"//"+d.host)};h&&v||(h=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return x[++b]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(b),b},v=function(t){delete x[t]},p?r=function(t){m.nextTick(w(t))}:g&&g.now?r=function(t){g.now(w(t))}:y&&!f?(i=(o=new y).port2,o.port1.onmessage=O,r=c(i.postMessage,i,1)):a.addEventListener&&"function"==typeof postMessage&&!a.importScripts&&d&&"file:"!==d.protocol&&!s(k)?(r=k,a.addEventListener("message",O,!1)):r="onreadystatechange"in l("script")?function(t){u.appendChild(l("script")).onreadystatechange=function(){u.removeChild(this),_(t)}}:function(t){setTimeout(w(t),0)}),t.exports={set:h,clear:v}},function(t,e,n){var r=n(75);t.exports=/(iphone|ipod|ipad).*applewebkit/i.test(r)},function(t,e,n){var r=n(5),o=n(4),i=n(127);t.exports=function(t,e){if(r(t),o(e)&&e.constructor===t)return e;var n=i.f(t);return(0,n.resolve)(e),n.promise}},function(t,e,n){"use strict";var r=n(21),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},function(t,e){t.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},function(t,e,n){var r=n(4),o=n(38),i=n(1)("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},function(t,e,n){var r=n(0),o=n(2),i=n(12),a=n(81),s=n(119);r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!s},{getPrototypeOf:function(t){return a(i(t))}})},function(t,e,n){"use strict";var r=n(31).forEach,o=n(39)("forEach");t.exports=o?[].forEach:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}},function(t,e,n){var r=n(2);t.exports=!r((function(){return Object.isExtensible(Object.preventExtensions({}))}))},function(t,e,n){var r=n(1);e.f=r},function(t,e,n){var r=n(110),o=n(7),i=n(133),a=n(8).f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},function(t,e,n){var r=n(0),o=n(178);r({target:"Array",stat:!0,forced:!n(123)((function(t){Array.from(t)}))},{from:o})},function(t,e,n){n(0)({target:"Object",stat:!0,sham:!n(6)},{create:n(30)})},function(t,e){t.exports=function(t,e){for(var n=-1,r=e.length,o=t.length;++n<r;)t[o+n]=e[n];return t}},function(t,e){var n="object"==typeof global&&global&&global.Object===Object&&global;t.exports=n},function(t,e,n){var r=n(58),o=n(219),i=n(220),a=n(221),s=n(222),c=n(223);function u(t){var e=this.__data__=new r(t);this.size=e.size}u.prototype.clear=o,u.prototype.delete=i,u.prototype.get=a,u.prototype.has=s,u.prototype.set=c,t.exports=u},function(t,e){t.exports=function(t,e){return t===e||t!=t&&e!=e}},function(t,e,n){var r=n(32),o=n(86);t.exports=function(t){if(!o(t))return!1;var e=r(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}},function(t,e){var n=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return n.call(t)}catch(t){}try{return t+""}catch(t){}}return""}},function(t,e,n){var r=n(240),o=n(25);t.exports=function t(e,n,i,a,s){return e===n||(null==e||null==n||!o(e)&&!o(n)?e!=e&&n!=n:r(e,n,i,a,t,s))}},function(t,e,n){var r=n(145),o=n(243),i=n(146);t.exports=function(t,e,n,a,s,c){var u=1&n,l=t.length,f=e.length;if(l!=f&&!(u&&f>l))return!1;var p=c.get(t),d=c.get(e);if(p&&d)return p==e&&d==t;var h=-1,v=!0,m=2&n?new r:void 0;for(c.set(t,e),c.set(e,t);++h<l;){var y=t[h],g=e[h];if(a)var b=u?a(g,y,h,e,t,c):a(y,g,h,t,e,c);if(void 0!==b){if(b)continue;v=!1;break}if(m){if(!o(e,(function(t,e){if(!i(m,e)&&(y===t||s(y,t,n,a,c)))return m.push(e)}))){v=!1;break}}else if(y!==g&&!s(y,g,n,a,c)){v=!1;break}}return c.delete(t),c.delete(e),v}},function(t,e,n){var r=n(87),o=n(241),i=n(242);function a(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new r;++e<n;)this.add(t[e])}a.prototype.add=a.prototype.push=o,a.prototype.has=i,t.exports=a},function(t,e){t.exports=function(t,e){return t.has(e)}},function(t,e,n){var r=n(253),o=n(259),i=n(152);t.exports=function(t){return i(t)?r(t):o(t)}},function(t,e,n){(function(t){var r=n(17),o=n(255),i=e&&!e.nodeType&&e,a=i&&"object"==typeof t&&t&&!t.nodeType&&t,s=a&&a.exports===i?r.Buffer:void 0,c=(s?s.isBuffer:void 0)||o;t.exports=c}).call(this,n(149)(t))},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},function(t,e){var n=/^(?:0|[1-9]\d*)$/;t.exports=function(t,e){var r=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==r||"symbol"!=r&&n.test(t))&&t>-1&&t%1==0&&t<e}},function(t,e,n){var r=n(256),o=n(257),i=n(258),a=i&&i.isTypedArray,s=a?o(a):r;t.exports=s},function(t,e,n){var r=n(141),o=n(89);t.exports=function(t){return null!=t&&o(t.length)&&!r(t)}},function(t,e,n){var r=n(22)(n(17),"Set");t.exports=r},function(t,e,n){var r=n(86);t.exports=function(t){return t==t&&!r(t)}},function(t,e){t.exports=function(t,e){return function(n){return null!=n&&(n[t]===e&&(void 0!==e||t in Object(n)))}}},function(t,e,n){var r=n(157),o=n(62);t.exports=function(t,e){for(var n=0,i=(e=r(e,t)).length;null!=t&&n<i;)t=t[o(e[n++])];return n&&n==i?t:void 0}},function(t,e,n){var r=n(15),o=n(90),i=n(269),a=n(272);t.exports=function(t,e){return r(t)?t:o(t,e)?[t]:i(a(t))}},function(t,e,n){n(0)({target:"Object",stat:!0},{setPrototypeOf:n(102)})},function(t,e,n){var r=n(0),o=n(19),i=n(21),a=n(5),s=n(4),c=n(30),u=n(302),l=n(2),f=o("Reflect","construct"),p=l((function(){function t(){}return!(f((function(){}),[],t)instanceof t)})),d=!l((function(){f((function(){}))})),h=p||d;r({target:"Reflect",stat:!0,forced:h,sham:h},{construct:function(t,e){i(t),a(e);var n=arguments.length<3?t:i(arguments[2]);if(d&&!p)return f(t,e,n);if(t==n){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var r=[null];return r.push.apply(r,e),new(u.apply(t,r))}var o=n.prototype,l=c(s(o)?o:Object.prototype),h=Function.apply.call(t,l,e);return s(h)?h:l}})},function(t,e,n){},function(t,e,n){},function(t,e,n){var r=n(206),o=n(211),i=n(281),a=n(289),s=n(298),c=n(184),u=i((function(t){var e=c(t);return s(e)&&(e=void 0),a(r(t,1,s,!0),o(e,2))}));t.exports=u},function(t,e){var n=/^\s+|\s+$/g,r=/^[-+]0x[0-9a-f]+$/i,o=/^0b[01]+$/i,i=/^0o[0-7]+$/i,a=parseInt,s="object"==typeof global&&global&&global.Object===Object&&global,c="object"==typeof self&&self&&self.Object===Object&&self,u=s||c||Function("return this")(),l=Object.prototype.toString,f=Math.max,p=Math.min,d=function(){return u.Date.now()};function h(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function v(t){if("number"==typeof t)return t;if(function(t){return"symbol"==typeof t||function(t){return!!t&&"object"==typeof t}(t)&&"[object Symbol]"==l.call(t)}(t))return NaN;if(h(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=h(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(n,"");var s=o.test(t);return s||i.test(t)?a(t.slice(2),s?2:8):r.test(t)?NaN:+t}t.exports=function(t,e,n){var r,o,i,a,s,c,u=0,l=!1,m=!1,y=!0;if("function"!=typeof t)throw new TypeError("Expected a function");function g(e){var n=r,i=o;return r=o=void 0,u=e,a=t.apply(i,n)}function b(t){return u=t,s=setTimeout(_,e),l?g(t):a}function x(t){var n=t-c;return void 0===c||n>=e||n<0||m&&t-u>=i}function _(){var t=d();if(x(t))return w(t);s=setTimeout(_,function(t){var n=e-(t-c);return m?p(n,i-(t-u)):n}(t))}function w(t){return s=void 0,y&&r?g(t):(r=o=void 0,a)}function O(){var t=d(),n=x(t);if(r=arguments,o=this,c=t,n){if(void 0===s)return b(c);if(m)return s=setTimeout(_,e),g(c)}return void 0===s&&(s=setTimeout(_,e)),a}return e=v(e)||0,h(n)&&(l=!!n.leading,i=(m="maxWait"in n)?f(v(n.maxWait)||0,e):i,y="trailing"in n?!!n.trailing:y),O.cancel=function(){void 0!==s&&clearTimeout(s),u=0,r=c=o=s=void 0},O.flush=function(){return void 0===s?a:w(d())},O}},function(t,e,n){function r(e){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?(t.exports=r=function(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=r=function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),r(e)}n(40),n(41),n(9),n(57),n(10),n(14),t.exports=r,t.exports.default=t.exports,t.exports.__esModule=!0},function(t,e,n){"use strict";n(46);var r=n(18),o=n(2),i=n(1),a=n(69),s=n(11),c=i("species"),u=!o((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),l="$0"==="a".replace(/./,"$0"),f=i("replace"),p=!!/./[f]&&""===/./[f]("a","$0"),d=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,f){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),m=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[c]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!m||"replace"===t&&(!u||!l||p)||"split"===t&&!d){var y=/./[h],g=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:y.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:l,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:p}),b=g[0],x=g[1];r(String.prototype,t,b),r(RegExp.prototype,h,2==e?function(t,e){return x.call(t,this,e)}:function(t){return x.call(t,this)})}f&&s(RegExp.prototype[h],"sham",!0)}},function(t,e,n){var r=n(26),o=n(69);t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},function(t,e,n){"use strict";var r=n(0),o=n(76).indexOf,i=n(39),a=[].indexOf,s=!!a&&1/[1].indexOf(1,-0)<0,c=i("indexOf");r({target:"Array",proto:!0,forced:s||!c},{indexOf:function(t){return s?a.apply(this,arguments)||0:o(this,t,arguments.length>1?arguments[1]:void 0)}})},function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},function(t,e,n){var r=n(4),o=n(26),i=n(1)("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},function(t,e,n){"use strict";var r=n(5);t.exports=function(){var t=r(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},function(t,e,n){"use strict";var r=n(106).charAt;t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},function(t,e,n){"use strict";var r=n(0),o=n(33),i=n(16),a=n(39),s=[].join,c=o!=Object,u=a("join",",");r({target:"Array",proto:!0,forced:c||!u},{join:function(t){return s.call(i(this),void 0===t?",":t)}})},function(t,e,n){var r=n(6),o=n(8),i=n(5),a=n(51);t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),s=r.length,c=0;s>c;)o.f(t,n=r[c++],e[n]);return t}},function(t,e,n){"use strict";var r=n(118).IteratorPrototype,o=n(30),i=n(29),a=n(47),s=n(37),c=function(){return this};t.exports=function(t,e,n){var u=e+" Iterator";return t.prototype=o(r,{next:i(1,n)}),a(t,u,!1,!0),s[u]=c,t}},function(t,e,n){var r=n(18);t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},function(t,e,n){"use strict";var r=n(19),o=n(8),i=n(1),a=n(6),s=i("species");t.exports=function(t){var e=r(t),n=o.f;a&&e&&!e[s]&&n(e,s,{configurable:!0,get:function(){return this}})}},function(t,e,n){"use strict";var r=n(6),o=n(2),i=n(51),a=n(80),s=n(79),c=n(12),u=n(33),l=Object.assign,f=Object.defineProperty;t.exports=!l||o((function(){if(r&&1!==l({b:1},l(f({},"a",{enumerable:!0,get:function(){f(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=l({},t)[n]||"abcdefghijklmnopqrst"!=i(l({},e)).join("")}))?function(t,e){for(var n=c(t),o=arguments.length,l=1,f=a.f,p=s.f;o>l;)for(var d,h=u(arguments[l++]),v=f?i(h).concat(f(h)):i(h),m=v.length,y=0;m>y;)d=v[y++],r&&!p.call(h,d)||(n[d]=h[d]);return n}:l},function(t,e,n){"use strict";var r=n(48),o=n(12),i=n(204),a=n(121),s=n(13),c=n(55),u=n(94);t.exports=function(t){var e,n,l,f,p,d,h=o(t),v="function"==typeof this?this:Array,m=arguments.length,y=m>1?arguments[1]:void 0,g=void 0!==y,b=u(h),x=0;if(g&&(y=r(y,m>2?arguments[2]:void 0,2)),null==b||v==Array&&a(b))for(n=new v(e=s(h.length));e>x;x++)d=g?y(h[x],x):h[x],c(n,x,d);else for(p=(f=b.call(h)).next,n=new v;!(l=p.call(f)).done;x++)d=g?i(f,y,[l.value,x],!0):l.value,c(n,x,d);return n.length=x,n}},function(t,e,n){"use strict";var r=n(2);function o(t,e){return RegExp(t,e)}e.UNSUPPORTED_Y=r((function(){var t=o("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),e.BROKEN_CARET=r((function(){var t=o("^r","gy");return t.lastIndex=2,null!=t.exec("str")}))},function(t,e,n){"use strict";var r=n(0),o=n(76).includes,i=n(100);r({target:"Array",proto:!0},{includes:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}}),i("includes")},function(t,e,n){"use strict";var r=n(0),o=n(107),i=n(23);r({target:"String",proto:!0,forced:!n(108)("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){"use strict";var r=n(0),o=n(2),i=n(38),a=n(4),s=n(12),c=n(13),u=n(55),l=n(129),f=n(56),p=n(1),d=n(35),h=p("isConcatSpreadable"),v=d>=51||!o((function(){var t=[];return t[h]=!1,t.concat()[0]!==t})),m=f("concat"),y=function(t){if(!a(t))return!1;var e=t[h];return void 0!==e?!!e:i(t)};r({target:"Array",proto:!0,forced:!v||!m},{concat:function(t){var e,n,r,o,i,a=s(this),f=l(a,0),p=0;for(e=-1,r=arguments.length;e<r;e++)if(y(i=-1===e?a:arguments[e])){if(p+(o=c(i.length))>9007199254740991)throw TypeError("Maximum allowed index exceeded");for(n=0;n<o;n++,p++)n in i&&u(f,p,i[n])}else{if(p>=9007199254740991)throw TypeError("Maximum allowed index exceeded");u(f,p++,i)}return f.length=p,f}})},function(t,e,n){var r=n(156);t.exports=function(t,e,n){var o=null==t?void 0:r(t,e);return void 0===o?n:o}},function(t,e){t.exports=function(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}},function(t,e,n){t.exports=n(305)},function(t,e,n){var r=n(3),o=n(78),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},function(t,e,n){var r=n(4);t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},function(t,e,n){"use strict";var r,o,i,a,s=n(0),c=n(20),u=n(3),l=n(19),f=n(120),p=n(18),d=n(175),h=n(47),v=n(176),m=n(4),y=n(21),g=n(168),b=n(78),x=n(189),_=n(123),w=n(104),O=n(124).set,k=n(190),S=n(126),j=n(192),E=n(127),A=n(193),C=n(28),$=n(101),P=n(1),T=n(34),L=n(35),R=P("species"),I="Promise",M=C.get,N=C.set,D=C.getterFor(I),F=f,U=u.TypeError,B=u.document,z=u.process,V=l("fetch"),q=E.f,H=q,W=!!(B&&B.createEvent&&u.dispatchEvent),G="function"==typeof PromiseRejectionEvent,K=$(I,(function(){if(!(b(F)!==String(F))){if(66===L)return!0;if(!T&&!G)return!0}if(c&&!F.prototype.finally)return!0;if(L>=51&&/native code/.test(F))return!1;var t=F.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[R]=e,!(t.then((function(){}))instanceof e)})),X=K||!_((function(t){F.all(t).catch((function(){}))})),Y=function(t){var e;return!(!m(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e){if(!t.notified){t.notified=!0;var n=t.reactions;k((function(){for(var r=t.value,o=1==t.state,i=0;n.length>i;){var a,s,c,u=n[i++],l=o?u.ok:u.fail,f=u.resolve,p=u.reject,d=u.domain;try{l?(o||(2===t.rejection&&et(t),t.rejection=1),!0===l?a=r:(d&&d.enter(),a=l(r),d&&(d.exit(),c=!0)),a===u.promise?p(U("Promise-chain cycle")):(s=Y(a))?s.call(a,f,p):f(a)):p(r)}catch(t){d&&!c&&d.exit(),p(t)}}t.reactions=[],t.notified=!1,e&&!t.rejection&&Z(t)}))}},Q=function(t,e,n){var r,o;W?((r=B.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),u.dispatchEvent(r)):r={promise:e,reason:n},!G&&(o=u["on"+t])?o(r):"unhandledrejection"===t&&j("Unhandled promise rejection",n)},Z=function(t){O.call(u,(function(){var e,n=t.facade,r=t.value;if(tt(t)&&(e=A((function(){T?z.emit("unhandledRejection",r,n):Q("unhandledrejection",n,r)})),t.rejection=T||tt(t)?2:1,e.error))throw e.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t){O.call(u,(function(){var e=t.facade;T?z.emit("rejectionHandled",e):Q("rejectionhandled",e,t.value)}))},nt=function(t,e,n){return function(r){t(e,r,n)}},rt=function(t,e,n){t.done||(t.done=!0,n&&(t=n),t.value=e,t.state=2,J(t,!0))},ot=function(t,e,n){if(!t.done){t.done=!0,n&&(t=n);try{if(t.facade===e)throw U("Promise can't be resolved itself");var r=Y(e);r?k((function(){var n={done:!1};try{r.call(e,nt(ot,n,t),nt(rt,n,t))}catch(e){rt(n,e,t)}})):(t.value=e,t.state=1,J(t,!1))}catch(e){rt({done:!1},e,t)}}};K&&(F=function(t){g(this,F,I),y(t),r.call(this);var e=M(this);try{t(nt(ot,e),nt(rt,e))}catch(t){rt(e,t)}},(r=function(t){N(this,{type:I,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=d(F.prototype,{then:function(t,e){var n=D(this),r=q(w(this,F));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=T?z.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=M(t);this.promise=t,this.resolve=nt(ot,e),this.reject=nt(rt,e)},E.f=q=function(t){return t===F||t===i?new o(t):H(t)},c||"function"!=typeof f||(a=f.prototype.then,p(f.prototype,"then",(function(t,e){var n=this;return new F((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof V&&s({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return S(F,V.apply(u,arguments))}}))),s({global:!0,wrap:!0,forced:K},{Promise:F}),h(F,I,!1,!0),v(I),i=l(I),s({target:I,stat:!0,forced:K},{reject:function(t){var e=q(this);return e.reject.call(void 0,t),e.promise}}),s({target:I,stat:!0,forced:c||K},{resolve:function(t){return S(c&&this===i?F:this,t)}}),s({target:I,stat:!0,forced:X},{all:function(t){var e=this,n=q(e),r=n.resolve,o=n.reject,i=A((function(){var n=y(e.resolve),i=[],a=0,s=1;x(t,(function(t){var c=a++,u=!1;i.push(void 0),s++,n.call(e,t).then((function(t){u||(u=!0,i[c]=t,--s||r(i))}),o)})),--s||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=q(e),r=n.reject,o=A((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},function(t,e,n){var r=n(5),o=n(121),i=n(13),a=n(48),s=n(94),c=n(122),u=function(t,e){this.stopped=t,this.result=e};t.exports=function(t,e,n){var l,f,p,d,h,v,m,y=n&&n.that,g=!(!n||!n.AS_ENTRIES),b=!(!n||!n.IS_ITERATOR),x=!(!n||!n.INTERRUPTED),_=a(e,y,1+g+x),w=function(t){return l&&c(l),new u(!0,t)},O=function(t){return g?(r(t),x?_(t[0],t[1],w):_(t[0],t[1])):x?_(t,w):_(t)};if(b)l=t;else{if("function"!=typeof(f=s(t)))throw TypeError("Target is not iterable");if(o(f)){for(p=0,d=i(t.length);d>p;p++)if((h=O(t[p]))&&h instanceof u)return h;return new u(!1)}l=f.call(t)}for(v=l.next;!(m=v.call(l)).done;){try{h=O(m.value)}catch(t){throw c(l),t}if("object"==typeof h&&h&&h instanceof u)return h}return new u(!1)}},function(t,e,n){var r,o,i,a,s,c,u,l,f=n(3),p=n(24).f,d=n(124).set,h=n(125),v=n(191),m=n(34),y=f.MutationObserver||f.WebKitMutationObserver,g=f.document,b=f.process,x=f.Promise,_=p(f,"queueMicrotask"),w=_&&_.value;w||(r=function(){var t,e;for(m&&(t=b.domain)&&t.exit();o;){e=o.fn,o=o.next;try{e()}catch(t){throw o?a():i=void 0,t}}i=void 0,t&&t.enter()},h||m||v||!y||!g?x&&x.resolve?(u=x.resolve(void 0),l=u.then,a=function(){l.call(u,r)}):a=m?function(){b.nextTick(r)}:function(){d.call(f,r)}:(s=!0,c=g.createTextNode(""),new y(r).observe(c,{characterData:!0}),a=function(){c.data=s=!s})),t.exports=w||function(t){var e={fn:t,next:void 0};i&&(i.next=e),o||(o=e,a()),i=e}},function(t,e,n){var r=n(75);t.exports=/web0s(?!.*chrome)/i.test(r)},function(t,e,n){var r=n(3);t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(t){return{error:!0,value:t}}}},function(t,e,n){var r=n(0),o=n(177);r({target:"Object",stat:!0,forced:Object.assign!==o},{assign:o})},function(t,e,n){"use strict";var r=n(0),o=n(20),i=n(120),a=n(2),s=n(19),c=n(104),u=n(126),l=n(18);r({target:"Promise",proto:!0,real:!0,forced:!!i&&a((function(){i.prototype.finally.call({then:function(){}},(function(){}))}))},{finally:function(t){var e=c(this,s("Promise")),n="function"==typeof t;return this.then(n?function(n){return u(e,t()).then((function(){return n}))}:t,n?function(n){return u(e,t()).then((function(){throw n}))}:t)}}),o||"function"!=typeof i||i.prototype.finally||l(i.prototype,"finally",s("Promise").prototype.finally)},function(t,e,n){"use strict";var r=n(82),o=n(103);t.exports=r?{}.toString:function(){return"[object "+o(this)+"]"}},function(t,e,n){var r=n(0),o=n(6),i=n(117),a=n(16),s=n(24),c=n(55);r({target:"Object",stat:!0,sham:!o},{getOwnPropertyDescriptors:function(t){for(var e,n,r=a(t),o=s.f,u=i(r),l={},f=0;u.length>f;)void 0!==(n=o(r,e=u[f++]))&&c(l,e,n);return l}})},function(t,e,n){"use strict";var r=n(0),o=n(199).left,i=n(39),a=n(35),s=n(34);r({target:"Array",proto:!0,forced:!i("reduce")||!s&&a>79&&a<83},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){var r=n(21),o=n(12),i=n(33),a=n(13),s=function(t){return function(e,n,s,c){r(n);var u=o(e),l=i(u),f=a(u.length),p=t?f-1:0,d=t?-1:1;if(s<2)for(;;){if(p in l){c=l[p],p+=d;break}if(p+=d,t?p<0:f<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:f>p;p+=d)p in l&&(c=n(c,l[p],p,u));return c}};t.exports={left:s(!1),right:s(!0)}},function(t,e,n){"use strict";var r,o=n(0),i=n(24).f,a=n(13),s=n(107),c=n(23),u=n(108),l=n(20),f="".startsWith,p=Math.min,d=u("startsWith");o({target:"String",proto:!0,forced:!!(l||d||(r=i(String.prototype,"startsWith"),!r||r.writable))&&!d},{startsWith:function(t){var e=String(c(this));s(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return f?f.call(e,r,n):e.slice(n,n+r.length)===r}})},function(t,e,n){var r=n(0),o=n(132),i=n(2),a=n(4),s=n(202).onFreeze,c=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){c(1)})),sham:!o},{freeze:function(t){return c&&a(t)?c(s(t)):t}})},function(t,e,n){var r=n(36),o=n(4),i=n(7),a=n(8).f,s=n(50),c=n(132),u=s("meta"),l=0,f=Object.isExtensible||function(){return!0},p=function(t){a(t,u,{value:{objectID:"O"+ ++l,weakData:{}}})},d=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,u)){if(!f(t))return"F";if(!e)return"E";p(t)}return t[u].objectID},getWeakData:function(t,e){if(!i(t,u)){if(!f(t))return!0;if(!e)return!1;p(t)}return t[u].weakData},onFreeze:function(t){return c&&d.REQUIRED&&f(t)&&!i(t,u)&&p(t),t}};r[u]=!0},function(t,e,n){var r=n(16),o=n(68).f,i={}.toString,a="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function(t){return a&&"[object Window]"==i.call(t)?function(t){try{return o(t)}catch(t){return a.slice()}}(t):o(r(t))}},function(t,e,n){var r=n(5),o=n(122);t.exports=function(t,e,n,i){try{return i?e(r(n)[0],n[1]):e(n)}catch(e){throw o(t),e}}},function(t,e,n){var r=n(12),o=Math.floor,i="".replace,a=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,s=/\$([$&'`]|\d{1,2})/g;t.exports=function(t,e,n,c,u,l){var f=n+t.length,p=c.length,d=s;return void 0!==u&&(u=r(u),d=a),i.call(l,d,(function(r,i){var a;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return e.slice(0,n);case"'":return e.slice(f);case"<":a=u[i.slice(1,-1)];break;default:var s=+i;if(0===s)return r;if(s>p){var l=o(s/10);return 0===l?r:l<=p?void 0===c[l-1]?i.charAt(1):c[l-1]+i.charAt(1):r}a=c[s-1]}return void 0===a?"":a}))}},function(t,e,n){var r=n(137),o=n(207);t.exports=function t(e,n,i,a,s){var c=-1,u=e.length;for(i||(i=o),s||(s=[]);++c<u;){var l=e[c];n>0&&i(l)?n>1?t(l,n-1,i,a,s):r(s,l):a||(s[s.length]=l)}return s}},function(t,e,n){var r=n(42),o=n(84),i=n(15),a=r?r.isConcatSpreadable:void 0;t.exports=function(t){return i(t)||o(t)||!!(a&&t&&t[a])}},function(t,e,n){var r=n(32),o=n(25);t.exports=function(t){return o(t)&&"[object Arguments]"==r(t)}},function(t,e,n){var r=n(42),o=Object.prototype,i=o.hasOwnProperty,a=o.toString,s=r?r.toStringTag:void 0;t.exports=function(t){var e=i.call(t,s),n=t[s];try{t[s]=void 0;var r=!0}catch(t){}var o=a.call(t);return r&&(e?t[s]=n:delete t[s]),o}},function(t,e){var n=Object.prototype.toString;t.exports=function(t){return n.call(t)}},function(t,e,n){var r=n(212),o=n(268),i=n(92),a=n(15),s=n(278);t.exports=function(t){return"function"==typeof t?t:null==t?i:"object"==typeof t?a(t)?o(t[0],t[1]):r(t):s(t)}},function(t,e,n){var r=n(213),o=n(267),i=n(155);t.exports=function(t){var e=o(t);return 1==e.length&&e[0][2]?i(e[0][0],e[0][1]):function(n){return n===t||r(n,t,e)}}},function(t,e,n){var r=n(139),o=n(143);t.exports=function(t,e,n,i){var a=n.length,s=a,c=!i;if(null==t)return!s;for(t=Object(t);a--;){var u=n[a];if(c&&u[2]?u[1]!==t[u[0]]:!(u[0]in t))return!1}for(;++a<s;){var l=(u=n[a])[0],f=t[l],p=u[1];if(c&&u[2]){if(void 0===f&&!(l in t))return!1}else{var d=new r;if(i)var h=i(f,p,l,t,e,d);if(!(void 0===h?o(p,f,3,i,d):h))return!1}}return!0}},function(t,e){t.exports=function(){this.__data__=[],this.size=0}},function(t,e,n){var r=n(59),o=Array.prototype.splice;t.exports=function(t){var e=this.__data__,n=r(e,t);return!(n<0)&&(n==e.length-1?e.pop():o.call(e,n,1),--this.size,!0)}},function(t,e,n){var r=n(59);t.exports=function(t){var e=this.__data__,n=r(e,t);return n<0?void 0:e[n][1]}},function(t,e,n){var r=n(59);t.exports=function(t){return r(this.__data__,t)>-1}},function(t,e,n){var r=n(59);t.exports=function(t,e){var n=this.__data__,o=r(n,t);return o<0?(++this.size,n.push([t,e])):n[o][1]=e,this}},function(t,e,n){var r=n(58);t.exports=function(){this.__data__=new r,this.size=0}},function(t,e){t.exports=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n}},function(t,e){t.exports=function(t){return this.__data__.get(t)}},function(t,e){t.exports=function(t){return this.__data__.has(t)}},function(t,e,n){var r=n(58),o=n(85),i=n(87);t.exports=function(t,e){var n=this.__data__;if(n instanceof r){var a=n.__data__;if(!o||a.length<199)return a.push([t,e]),this.size=++n.size,this;n=this.__data__=new i(a)}return n.set(t,e),this.size=n.size,this}},function(t,e,n){var r=n(141),o=n(225),i=n(86),a=n(142),s=/^\[object .+?Constructor\]$/,c=Function.prototype,u=Object.prototype,l=c.toString,f=u.hasOwnProperty,p=RegExp("^"+l.call(f).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=function(t){return!(!i(t)||o(t))&&(r(t)?p:s).test(a(t))}},function(t,e,n){var r,o=n(226),i=(r=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";t.exports=function(t){return!!i&&i in t}},function(t,e,n){var r=n(17)["__core-js_shared__"];t.exports=r},function(t,e){t.exports=function(t,e){return null==t?void 0:t[e]}},function(t,e,n){var r=n(229),o=n(58),i=n(85);t.exports=function(){this.size=0,this.__data__={hash:new r,map:new(i||o),string:new r}}},function(t,e,n){var r=n(230),o=n(231),i=n(232),a=n(233),s=n(234);function c(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=a,c.prototype.set=s,t.exports=c},function(t,e,n){var r=n(60);t.exports=function(){this.__data__=r?r(null):{},this.size=0}},function(t,e){t.exports=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}},function(t,e,n){var r=n(60),o=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;if(r){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return o.call(e,t)?e[t]:void 0}},function(t,e,n){var r=n(60),o=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;return r?void 0!==e[t]:o.call(e,t)}},function(t,e,n){var r=n(60);t.exports=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=r&&void 0===e?"__lodash_hash_undefined__":e,this}},function(t,e,n){var r=n(61);t.exports=function(t){var e=r(this,t).delete(t);return this.size-=e?1:0,e}},function(t,e){t.exports=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}},function(t,e,n){var r=n(61);t.exports=function(t){return r(this,t).get(t)}},function(t,e,n){var r=n(61);t.exports=function(t){return r(this,t).has(t)}},function(t,e,n){var r=n(61);t.exports=function(t,e){var n=r(this,t),o=n.size;return n.set(t,e),this.size+=n.size==o?0:1,this}},function(t,e,n){var r=n(139),o=n(144),i=n(244),a=n(247),s=n(263),c=n(15),u=n(148),l=n(151),f="[object Object]",p=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,d,h,v){var m=c(t),y=c(e),g=m?"[object Array]":s(t),b=y?"[object Array]":s(e),x=(g="[object Arguments]"==g?f:g)==f,_=(b="[object Arguments]"==b?f:b)==f,w=g==b;if(w&&u(t)){if(!u(e))return!1;m=!0,x=!1}if(w&&!x)return v||(v=new r),m||l(t)?o(t,e,n,d,h,v):i(t,e,g,n,d,h,v);if(!(1&n)){var O=x&&p.call(t,"__wrapped__"),k=_&&p.call(e,"__wrapped__");if(O||k){var S=O?t.value():t,j=k?e.value():e;return v||(v=new r),h(S,j,n,d,v)}}return!!w&&(v||(v=new r),a(t,e,n,d,h,v))}},function(t,e){t.exports=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this}},function(t,e){t.exports=function(t){return this.__data__.has(t)}},function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(e(t[n],n,t))return!0;return!1}},function(t,e,n){var r=n(42),o=n(245),i=n(140),a=n(144),s=n(246),c=n(88),u=r?r.prototype:void 0,l=u?u.valueOf:void 0;t.exports=function(t,e,n,r,u,f,p){switch(n){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!f(new o(t),new o(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return i(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var d=s;case"[object Set]":var h=1&r;if(d||(d=c),t.size!=e.size&&!h)return!1;var v=p.get(t);if(v)return v==e;r|=2,p.set(t,e);var m=a(d(t),d(e),r,u,f,p);return p.delete(t),m;case"[object Symbol]":if(l)return l.call(t)==l.call(e)}return!1}},function(t,e,n){var r=n(17).Uint8Array;t.exports=r},function(t,e){t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}},function(t,e,n){var r=n(248),o=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,i,a,s){var c=1&n,u=r(t),l=u.length;if(l!=r(e).length&&!c)return!1;for(var f=l;f--;){var p=u[f];if(!(c?p in e:o.call(e,p)))return!1}var d=s.get(t),h=s.get(e);if(d&&h)return d==e&&h==t;var v=!0;s.set(t,e),s.set(e,t);for(var m=c;++f<l;){var y=t[p=u[f]],g=e[p];if(i)var b=c?i(g,y,p,e,t,s):i(y,g,p,t,e,s);if(!(void 0===b?y===g||a(y,g,n,i,s):b)){v=!1;break}m||(m="constructor"==p)}if(v&&!m){var x=t.constructor,_=e.constructor;x==_||!("constructor"in t)||!("constructor"in e)||"function"==typeof x&&x instanceof x&&"function"==typeof _&&_ instanceof _||(v=!1)}return s.delete(t),s.delete(e),v}},function(t,e,n){var r=n(249),o=n(250),i=n(147);t.exports=function(t){return r(t,i,o)}},function(t,e,n){var r=n(137),o=n(15);t.exports=function(t,e,n){var i=e(t);return o(t)?i:r(i,n(t))}},function(t,e,n){var r=n(251),o=n(252),i=Object.prototype.propertyIsEnumerable,a=Object.getOwnPropertySymbols,s=a?function(t){return null==t?[]:(t=Object(t),r(a(t),(function(e){return i.call(t,e)})))}:o;t.exports=s},function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length,o=0,i=[];++n<r;){var a=t[n];e(a,n,t)&&(i[o++]=a)}return i}},function(t,e){t.exports=function(){return[]}},function(t,e,n){var r=n(254),o=n(84),i=n(15),a=n(148),s=n(150),c=n(151),u=Object.prototype.hasOwnProperty;t.exports=function(t,e){var n=i(t),l=!n&&o(t),f=!n&&!l&&a(t),p=!n&&!l&&!f&&c(t),d=n||l||f||p,h=d?r(t.length,String):[],v=h.length;for(var m in t)!e&&!u.call(t,m)||d&&("length"==m||f&&("offset"==m||"parent"==m)||p&&("buffer"==m||"byteLength"==m||"byteOffset"==m)||s(m,v))||h.push(m);return h}},function(t,e){t.exports=function(t,e){for(var n=-1,r=Array(t);++n<t;)r[n]=e(n);return r}},function(t,e){t.exports=function(){return!1}},function(t,e,n){var r=n(32),o=n(89),i=n(25),a={};a["[object Float32Array]"]=a["[object Float64Array]"]=a["[object Int8Array]"]=a["[object Int16Array]"]=a["[object Int32Array]"]=a["[object Uint8Array]"]=a["[object Uint8ClampedArray]"]=a["[object Uint16Array]"]=a["[object Uint32Array]"]=!0,a["[object Arguments]"]=a["[object Array]"]=a["[object ArrayBuffer]"]=a["[object Boolean]"]=a["[object DataView]"]=a["[object Date]"]=a["[object Error]"]=a["[object Function]"]=a["[object Map]"]=a["[object Number]"]=a["[object Object]"]=a["[object RegExp]"]=a["[object Set]"]=a["[object String]"]=a["[object WeakMap]"]=!1,t.exports=function(t){return i(t)&&o(t.length)&&!!a[r(t)]}},function(t,e){t.exports=function(t){return function(e){return t(e)}}},function(t,e,n){(function(t){var r=n(138),o=e&&!e.nodeType&&e,i=o&&"object"==typeof t&&t&&!t.nodeType&&t,a=i&&i.exports===o&&r.process,s=function(){try{var t=i&&i.require&&i.require("util").types;return t||a&&a.binding&&a.binding("util")}catch(t){}}();t.exports=s}).call(this,n(149)(t))},function(t,e,n){var r=n(260),o=n(261),i=Object.prototype.hasOwnProperty;t.exports=function(t){if(!r(t))return o(t);var e=[];for(var n in Object(t))i.call(t,n)&&"constructor"!=n&&e.push(n);return e}},function(t,e){var n=Object.prototype;t.exports=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||n)}},function(t,e,n){var r=n(262)(Object.keys,Object);t.exports=r},function(t,e){t.exports=function(t,e){return function(n){return t(e(n))}}},function(t,e,n){var r=n(264),o=n(85),i=n(265),a=n(153),s=n(266),c=n(32),u=n(142),l=u(r),f=u(o),p=u(i),d=u(a),h=u(s),v=c;(r&&"[object DataView]"!=v(new r(new ArrayBuffer(1)))||o&&"[object Map]"!=v(new o)||i&&"[object Promise]"!=v(i.resolve())||a&&"[object Set]"!=v(new a)||s&&"[object WeakMap]"!=v(new s))&&(v=function(t){var e=c(t),n="[object Object]"==e?t.constructor:void 0,r=n?u(n):"";if(r)switch(r){case l:return"[object DataView]";case f:return"[object Map]";case p:return"[object Promise]";case d:return"[object Set]";case h:return"[object WeakMap]"}return e}),t.exports=v},function(t,e,n){var r=n(22)(n(17),"DataView");t.exports=r},function(t,e,n){var r=n(22)(n(17),"Promise");t.exports=r},function(t,e,n){var r=n(22)(n(17),"WeakMap");t.exports=r},function(t,e,n){var r=n(154),o=n(147);t.exports=function(t){for(var e=o(t),n=e.length;n--;){var i=e[n],a=t[i];e[n]=[i,a,r(a)]}return e}},function(t,e,n){var r=n(143),o=n(183),i=n(275),a=n(90),s=n(154),c=n(155),u=n(62);t.exports=function(t,e){return a(t)&&s(e)?c(u(t),e):function(n){var a=o(n,t);return void 0===a&&a===e?i(n,t):r(e,a,3)}}},function(t,e,n){var r=n(270),o=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g,a=r((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(o,(function(t,n,r,o){e.push(r?o.replace(i,"$1"):n||t)})),e}));t.exports=a},function(t,e,n){var r=n(271);t.exports=function(t){var e=r(t,(function(t){return 500===n.size&&n.clear(),t})),n=e.cache;return e}},function(t,e,n){var r=n(87);function o(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var n=function(){var r=arguments,o=e?e.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var a=t.apply(this,r);return n.cache=i.set(o,a)||i,a};return n.cache=new(o.Cache||r),n}o.Cache=r,t.exports=o},function(t,e,n){var r=n(273);t.exports=function(t){return null==t?"":r(t)}},function(t,e,n){var r=n(42),o=n(274),i=n(15),a=n(91),s=r?r.prototype:void 0,c=s?s.toString:void 0;t.exports=function t(e){if("string"==typeof e)return e;if(i(e))return o(e,t)+"";if(a(e))return c?c.call(e):"";var n=e+"";return"0"==n&&1/e==-1/0?"-0":n}},function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length,o=Array(r);++n<r;)o[n]=e(t[n],n,t);return o}},function(t,e,n){var r=n(276),o=n(277);t.exports=function(t,e){return null!=t&&o(t,e,r)}},function(t,e){t.exports=function(t,e){return null!=t&&e in Object(t)}},function(t,e,n){var r=n(157),o=n(84),i=n(15),a=n(150),s=n(89),c=n(62);t.exports=function(t,e,n){for(var u=-1,l=(e=r(e,t)).length,f=!1;++u<l;){var p=c(e[u]);if(!(f=null!=t&&n(t,p)))break;t=t[p]}return f||++u!=l?f:!!(l=null==t?0:t.length)&&s(l)&&a(p,l)&&(i(t)||o(t))}},function(t,e,n){var r=n(279),o=n(280),i=n(90),a=n(62);t.exports=function(t){return i(t)?r(a(t)):o(t)}},function(t,e){t.exports=function(t){return function(e){return null==e?void 0:e[t]}}},function(t,e,n){var r=n(156);t.exports=function(t){return function(e){return r(e,t)}}},function(t,e,n){var r=n(92),o=n(282),i=n(284);t.exports=function(t,e){return i(o(t,e,r),t+"")}},function(t,e,n){var r=n(283),o=Math.max;t.exports=function(t,e,n){return e=o(void 0===e?t.length-1:e,0),function(){for(var i=arguments,a=-1,s=o(i.length-e,0),c=Array(s);++a<s;)c[a]=i[e+a];a=-1;for(var u=Array(e+1);++a<e;)u[a]=i[a];return u[e]=n(c),r(t,this,u)}}},function(t,e){t.exports=function(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}},function(t,e,n){var r=n(285),o=n(288)(r);t.exports=o},function(t,e,n){var r=n(286),o=n(287),i=n(92),a=o?function(t,e){return o(t,"toString",{configurable:!0,enumerable:!1,value:r(e),writable:!0})}:i;t.exports=a},function(t,e){t.exports=function(t){return function(){return t}}},function(t,e,n){var r=n(22),o=function(){try{var t=r(Object,"defineProperty");return t({},"",{}),t}catch(t){}}();t.exports=o},function(t,e){var n=Date.now;t.exports=function(t){var e=0,r=0;return function(){var o=n(),i=16-(o-r);if(r=o,i>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}},function(t,e,n){var r=n(145),o=n(290),i=n(295),a=n(146),s=n(296),c=n(88);t.exports=function(t,e,n){var u=-1,l=o,f=t.length,p=!0,d=[],h=d;if(n)p=!1,l=i;else if(f>=200){var v=e?null:s(t);if(v)return c(v);p=!1,l=a,h=new r}else h=e?[]:d;t:for(;++u<f;){var m=t[u],y=e?e(m):m;if(m=n||0!==m?m:0,p&&y==y){for(var g=h.length;g--;)if(h[g]===y)continue t;e&&h.push(y),d.push(m)}else l(h,y,n)||(h!==d&&h.push(y),d.push(m))}return d}},function(t,e,n){var r=n(291);t.exports=function(t,e){return!!(null==t?0:t.length)&&r(t,e,0)>-1}},function(t,e,n){var r=n(292),o=n(293),i=n(294);t.exports=function(t,e,n){return e==e?i(t,e,n):r(t,o,n)}},function(t,e){t.exports=function(t,e,n,r){for(var o=t.length,i=n+(r?1:-1);r?i--:++i<o;)if(e(t[i],i,t))return i;return-1}},function(t,e){t.exports=function(t){return t!=t}},function(t,e){t.exports=function(t,e,n){for(var r=n-1,o=t.length;++r<o;)if(t[r]===e)return r;return-1}},function(t,e){t.exports=function(t,e,n){for(var r=-1,o=null==t?0:t.length;++r<o;)if(n(e,t[r]))return!0;return!1}},function(t,e,n){var r=n(153),o=n(297),i=n(88),a=r&&1/i(new r([,-0]))[1]==1/0?function(t){return new r(t)}:o;t.exports=a},function(t,e){t.exports=function(){}},function(t,e,n){var r=n(152),o=n(25);t.exports=function(t){return o(t)&&r(t)}},function(t,e,n){},function(t,e,n){},function(t,e,n){var r=n(0),o=n(6);r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n(8).f})},function(t,e,n){"use strict";var r=n(21),o=n(4),i=[].slice,a={},s=function(t,e,n){if(!(e in a)){for(var r=[],o=0;o<e;o++)r[o]="a["+o+"]";a[e]=Function("C,a","return new C("+r.join(",")+")")}return a[e](t,n)};t.exports=Function.bind||function(t){var e=r(this),n=i.call(arguments,1),a=function(){var r=n.concat(i.call(arguments));return this instanceof a?s(e,r.length,r):e.apply(t,r)};return o(e.prototype)&&(a.prototype=e.prototype),a}},function(t,e,n){"use strict";n(160)},function(t,e,n){"use strict";n(161)},function(t,e,n){"use strict";n.r(e);n(99),n(188),n(194),n(195);var r=n(63),o=(n(105),n(54),n(9),n(10),n(14),n(66),n(27),Object.freeze({}));function i(t){return null==t}function a(t){return null!=t}function s(t){return!0===t}function c(t){return"string"==typeof t||"number"==typeof t||"symbol"==typeof t||"boolean"==typeof t}function u(t){return null!==t&&"object"==typeof t}var l=Object.prototype.toString;function f(t){return"[object Object]"===l.call(t)}function p(t){return"[object RegExp]"===l.call(t)}function d(t){var e=parseFloat(String(t));return e>=0&&Math.floor(e)===e&&isFinite(t)}function h(t){return a(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function v(t){return null==t?"":Array.isArray(t)||f(t)&&t.toString===l?JSON.stringify(t,null,2):String(t)}function m(t){var e=parseFloat(t);return isNaN(e)?t:e}function y(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o<r.length;o++)n[r[o]]=!0;return e?function(t){return n[t.toLowerCase()]}:function(t){return n[t]}}y("slot,component",!0);var g=y("key,ref,slot,slot-scope,is");function b(t,e){if(t.length){var n=t.indexOf(e);if(n>-1)return t.splice(n,1)}}var x=Object.prototype.hasOwnProperty;function _(t,e){return x.call(t,e)}function w(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var O=/-(\w)/g,k=w((function(t){return t.replace(O,(function(t,e){return e?e.toUpperCase():""}))})),S=w((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),j=/\B([A-Z])/g,E=w((function(t){return t.replace(j,"-$1").toLowerCase()}));var A=Function.prototype.bind?function(t,e){return t.bind(e)}:function(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n};function C(t,e){e=e||0;for(var n=t.length-e,r=new Array(n);n--;)r[n]=t[n+e];return r}function $(t,e){for(var n in e)t[n]=e[n];return t}function P(t){for(var e={},n=0;n<t.length;n++)t[n]&&$(e,t[n]);return e}function T(t,e,n){}var L=function(t,e,n){return!1},R=function(t){return t};function I(t,e){if(t===e)return!0;var n=u(t),r=u(e);if(!n||!r)return!n&&!r&&String(t)===String(e);try{var o=Array.isArray(t),i=Array.isArray(e);if(o&&i)return t.length===e.length&&t.every((function(t,n){return I(t,e[n])}));if(t instanceof Date&&e instanceof Date)return t.getTime()===e.getTime();if(o||i)return!1;var a=Object.keys(t),s=Object.keys(e);return a.length===s.length&&a.every((function(n){return I(t[n],e[n])}))}catch(t){return!1}}function M(t,e){for(var n=0;n<t.length;n++)if(I(t[n],e))return n;return-1}function N(t){var e=!1;return function(){e||(e=!0,t.apply(this,arguments))}}var D=["component","directive","filter"],F=["beforeCreate","created","beforeMount","mounted","beforeUpdate","updated","beforeDestroy","destroyed","activated","deactivated","errorCaptured","serverPrefetch"],U={optionMergeStrategies:Object.create(null),silent:!1,productionTip:!1,devtools:!1,performance:!1,errorHandler:null,warnHandler:null,ignoredElements:[],keyCodes:Object.create(null),isReservedTag:L,isReservedAttr:L,isUnknownElement:L,getTagNamespace:T,parsePlatformTagName:R,mustUseProp:L,async:!0,_lifecycleHooks:F},B=/a-zA-Z\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD/;function z(t,e,n,r){Object.defineProperty(t,e,{value:n,enumerable:!!r,writable:!0,configurable:!0})}var V=new RegExp("[^"+B.source+".$_\\d]");var q,H="__proto__"in{},W="undefined"!=typeof window,G="undefined"!=typeof WXEnvironment&&!!WXEnvironment.platform,K=G&&WXEnvironment.platform.toLowerCase(),X=W&&window.navigator.userAgent.toLowerCase(),Y=X&&/msie|trident/.test(X),J=X&&X.indexOf("msie 9.0")>0,Q=X&&X.indexOf("edge/")>0,Z=(X&&X.indexOf("android"),X&&/iphone|ipad|ipod|ios/.test(X)||"ios"===K),tt=(X&&/chrome\/\d+/.test(X),X&&/phantomjs/.test(X),X&&X.match(/firefox\/(\d+)/)),et={}.watch,nt=!1;if(W)try{var rt={};Object.defineProperty(rt,"passive",{get:function(){nt=!0}}),window.addEventListener("test-passive",null,rt)}catch(t){}var ot=function(){return void 0===q&&(q=!W&&!G&&"undefined"!=typeof global&&(global.process&&"server"===global.process.env.VUE_ENV)),q},it=W&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function at(t){return"function"==typeof t&&/native code/.test(t.toString())}var st,ct="undefined"!=typeof Symbol&&at(Symbol)&&"undefined"!=typeof Reflect&&at(Reflect.ownKeys);st="undefined"!=typeof Set&&at(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var ut=T,lt=0,ft=function(){this.id=lt++,this.subs=[]};ft.prototype.addSub=function(t){this.subs.push(t)},ft.prototype.removeSub=function(t){b(this.subs,t)},ft.prototype.depend=function(){ft.target&&ft.target.addDep(this)},ft.prototype.notify=function(){var t=this.subs.slice();for(var e=0,n=t.length;e<n;e++)t[e].update()},ft.target=null;var pt=[];function dt(t){pt.push(t),ft.target=t}function ht(){pt.pop(),ft.target=pt[pt.length-1]}var vt=function(t,e,n,r,o,i,a,s){this.tag=t,this.data=e,this.children=n,this.text=r,this.elm=o,this.ns=void 0,this.context=i,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=e&&e.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1},mt={child:{configurable:!0}};mt.child.get=function(){return this.componentInstance},Object.defineProperties(vt.prototype,mt);var yt=function(t){void 0===t&&(t="");var e=new vt;return e.text=t,e.isComment=!0,e};function gt(t){return new vt(void 0,void 0,void 0,String(t))}function bt(t){var e=new vt(t.tag,t.data,t.children&&t.children.slice(),t.text,t.elm,t.context,t.componentOptions,t.asyncFactory);return e.ns=t.ns,e.isStatic=t.isStatic,e.key=t.key,e.isComment=t.isComment,e.fnContext=t.fnContext,e.fnOptions=t.fnOptions,e.fnScopeId=t.fnScopeId,e.asyncMeta=t.asyncMeta,e.isCloned=!0,e}var xt=Array.prototype,_t=Object.create(xt);["push","pop","shift","unshift","splice","sort","reverse"].forEach((function(t){var e=xt[t];z(_t,t,(function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];var o,i=e.apply(this,n),a=this.__ob__;switch(t){case"push":case"unshift":o=n;break;case"splice":o=n.slice(2)}return o&&a.observeArray(o),a.dep.notify(),i}))}));var wt=Object.getOwnPropertyNames(_t),Ot=!0;function kt(t){Ot=t}var St=function(t){this.value=t,this.dep=new ft,this.vmCount=0,z(t,"__ob__",this),Array.isArray(t)?(H?function(t,e){t.__proto__=e}(t,_t):function(t,e,n){for(var r=0,o=n.length;r<o;r++){var i=n[r];z(t,i,e[i])}}(t,_t,wt),this.observeArray(t)):this.walk(t)};function jt(t,e){var n;if(u(t)&&!(t instanceof vt))return _(t,"__ob__")&&t.__ob__ instanceof St?n=t.__ob__:Ot&&!ot()&&(Array.isArray(t)||f(t))&&Object.isExtensible(t)&&!t._isVue&&(n=new St(t)),e&&n&&n.vmCount++,n}function Et(t,e,n,r,o){var i=new ft,a=Object.getOwnPropertyDescriptor(t,e);if(!a||!1!==a.configurable){var s=a&&a.get,c=a&&a.set;s&&!c||2!==arguments.length||(n=t[e]);var u=!o&&jt(n);Object.defineProperty(t,e,{enumerable:!0,configurable:!0,get:function(){var e=s?s.call(t):n;return ft.target&&(i.depend(),u&&(u.dep.depend(),Array.isArray(e)&&$t(e))),e},set:function(e){var r=s?s.call(t):n;e===r||e!=e&&r!=r||s&&!c||(c?c.call(t,e):n=e,u=!o&&jt(e),i.notify())}})}}function At(t,e,n){if(Array.isArray(t)&&d(e))return t.length=Math.max(t.length,e),t.splice(e,1,n),n;if(e in t&&!(e in Object.prototype))return t[e]=n,n;var r=t.__ob__;return t._isVue||r&&r.vmCount?n:r?(Et(r.value,e,n),r.dep.notify(),n):(t[e]=n,n)}function Ct(t,e){if(Array.isArray(t)&&d(e))t.splice(e,1);else{var n=t.__ob__;t._isVue||n&&n.vmCount||_(t,e)&&(delete t[e],n&&n.dep.notify())}}function $t(t){for(var e=void 0,n=0,r=t.length;n<r;n++)(e=t[n])&&e.__ob__&&e.__ob__.dep.depend(),Array.isArray(e)&&$t(e)}St.prototype.walk=function(t){for(var e=Object.keys(t),n=0;n<e.length;n++)Et(t,e[n])},St.prototype.observeArray=function(t){for(var e=0,n=t.length;e<n;e++)jt(t[e])};var Pt=U.optionMergeStrategies;function Tt(t,e){if(!e)return t;for(var n,r,o,i=ct?Reflect.ownKeys(e):Object.keys(e),a=0;a<i.length;a++)"__ob__"!==(n=i[a])&&(r=t[n],o=e[n],_(t,n)?r!==o&&f(r)&&f(o)&&Tt(r,o):At(t,n,o));return t}function Lt(t,e,n){return n?function(){var r="function"==typeof e?e.call(n,n):e,o="function"==typeof t?t.call(n,n):t;return r?Tt(r,o):o}:e?t?function(){return Tt("function"==typeof e?e.call(this,this):e,"function"==typeof t?t.call(this,this):t)}:e:t}function Rt(t,e){var n=e?t?t.concat(e):Array.isArray(e)?e:[e]:t;return n?function(t){for(var e=[],n=0;n<t.length;n++)-1===e.indexOf(t[n])&&e.push(t[n]);return e}(n):n}function It(t,e,n,r){var o=Object.create(t||null);return e?$(o,e):o}Pt.data=function(t,e,n){return n?Lt(t,e,n):e&&"function"!=typeof e?t:Lt(t,e)},F.forEach((function(t){Pt[t]=Rt})),D.forEach((function(t){Pt[t+"s"]=It})),Pt.watch=function(t,e,n,r){if(t===et&&(t=void 0),e===et&&(e=void 0),!e)return Object.create(t||null);if(!t)return e;var o={};for(var i in $(o,t),e){var a=o[i],s=e[i];a&&!Array.isArray(a)&&(a=[a]),o[i]=a?a.concat(s):Array.isArray(s)?s:[s]}return o},Pt.props=Pt.methods=Pt.inject=Pt.computed=function(t,e,n,r){if(!t)return e;var o=Object.create(null);return $(o,t),e&&$(o,e),o},Pt.provide=Lt;var Mt=function(t,e){return void 0===e?t:e};function Nt(t,e,n){if("function"==typeof e&&(e=e.options),function(t,e){var n=t.props;if(n){var r,o,i={};if(Array.isArray(n))for(r=n.length;r--;)"string"==typeof(o=n[r])&&(i[k(o)]={type:null});else if(f(n))for(var a in n)o=n[a],i[k(a)]=f(o)?o:{type:o};else 0;t.props=i}}(e),function(t,e){var n=t.inject;if(n){var r=t.inject={};if(Array.isArray(n))for(var o=0;o<n.length;o++)r[n[o]]={from:n[o]};else if(f(n))for(var i in n){var a=n[i];r[i]=f(a)?$({from:i},a):{from:a}}else 0}}(e),function(t){var e=t.directives;if(e)for(var n in e){var r=e[n];"function"==typeof r&&(e[n]={bind:r,update:r})}}(e),!e._base&&(e.extends&&(t=Nt(t,e.extends,n)),e.mixins))for(var r=0,o=e.mixins.length;r<o;r++)t=Nt(t,e.mixins[r],n);var i,a={};for(i in t)s(i);for(i in e)_(t,i)||s(i);function s(r){var o=Pt[r]||Mt;a[r]=o(t[r],e[r],n,r)}return a}function Dt(t,e,n,r){if("string"==typeof n){var o=t[e];if(_(o,n))return o[n];var i=k(n);if(_(o,i))return o[i];var a=S(i);return _(o,a)?o[a]:o[n]||o[i]||o[a]}}function Ft(t,e,n,r){var o=e[t],i=!_(n,t),a=n[t],s=zt(Boolean,o.type);if(s>-1)if(i&&!_(o,"default"))a=!1;else if(""===a||a===E(t)){var c=zt(String,o.type);(c<0||s<c)&&(a=!0)}if(void 0===a){a=function(t,e,n){if(!_(e,"default"))return;var r=e.default;0;if(t&&t.$options.propsData&&void 0===t.$options.propsData[n]&&void 0!==t._props[n])return t._props[n];return"function"==typeof r&&"Function"!==Ut(e.type)?r.call(t):r}(r,o,t);var u=Ot;kt(!0),jt(a),kt(u)}return a}function Ut(t){var e=t&&t.toString().match(/^\s*function (\w+)/);return e?e[1]:""}function Bt(t,e){return Ut(t)===Ut(e)}function zt(t,e){if(!Array.isArray(e))return Bt(e,t)?0:-1;for(var n=0,r=e.length;n<r;n++)if(Bt(e[n],t))return n;return-1}function Vt(t,e,n){dt();try{if(e)for(var r=e;r=r.$parent;){var o=r.$options.errorCaptured;if(o)for(var i=0;i<o.length;i++)try{if(!1===o[i].call(r,t,e,n))return}catch(t){Ht(t,r,"errorCaptured hook")}}Ht(t,e,n)}finally{ht()}}function qt(t,e,n,r,o){var i;try{(i=n?t.apply(e,n):t.call(e))&&!i._isVue&&h(i)&&!i._handled&&(i.catch((function(t){return Vt(t,r,o+" (Promise/async)")})),i._handled=!0)}catch(t){Vt(t,r,o)}return i}function Ht(t,e,n){if(U.errorHandler)try{return U.errorHandler.call(null,t,e,n)}catch(e){e!==t&&Wt(e,null,"config.errorHandler")}Wt(t,e,n)}function Wt(t,e,n){if(!W&&!G||"undefined"==typeof console)throw t;console.error(t)}var Gt,Kt=!1,Xt=[],Yt=!1;function Jt(){Yt=!1;var t=Xt.slice(0);Xt.length=0;for(var e=0;e<t.length;e++)t[e]()}if("undefined"!=typeof Promise&&at(Promise)){var Qt=Promise.resolve();Gt=function(){Qt.then(Jt),Z&&setTimeout(T)},Kt=!0}else if(Y||"undefined"==typeof MutationObserver||!at(MutationObserver)&&"[object MutationObserverConstructor]"!==MutationObserver.toString())Gt="undefined"!=typeof setImmediate&&at(setImmediate)?function(){setImmediate(Jt)}:function(){setTimeout(Jt,0)};else{var Zt=1,te=new MutationObserver(Jt),ee=document.createTextNode(String(Zt));te.observe(ee,{characterData:!0}),Gt=function(){Zt=(Zt+1)%2,ee.data=String(Zt)},Kt=!0}function ne(t,e){var n;if(Xt.push((function(){if(t)try{t.call(e)}catch(t){Vt(t,e,"nextTick")}else n&&n(e)})),Yt||(Yt=!0,Gt()),!t&&"undefined"!=typeof Promise)return new Promise((function(t){n=t}))}var re=new st;function oe(t){!function t(e,n){var r,o,i=Array.isArray(e);if(!i&&!u(e)||Object.isFrozen(e)||e instanceof vt)return;if(e.__ob__){var a=e.__ob__.dep.id;if(n.has(a))return;n.add(a)}if(i)for(r=e.length;r--;)t(e[r],n);else for(o=Object.keys(e),r=o.length;r--;)t(e[o[r]],n)}(t,re),re.clear()}var ie=w((function(t){var e="&"===t.charAt(0),n="~"===(t=e?t.slice(1):t).charAt(0),r="!"===(t=n?t.slice(1):t).charAt(0);return{name:t=r?t.slice(1):t,once:n,capture:r,passive:e}}));function ae(t,e){function n(){var t=arguments,r=n.fns;if(!Array.isArray(r))return qt(r,null,arguments,e,"v-on handler");for(var o=r.slice(),i=0;i<o.length;i++)qt(o[i],null,t,e,"v-on handler")}return n.fns=t,n}function se(t,e,n,r,o,a){var c,u,l,f;for(c in t)u=t[c],l=e[c],f=ie(c),i(u)||(i(l)?(i(u.fns)&&(u=t[c]=ae(u,a)),s(f.once)&&(u=t[c]=o(f.name,u,f.capture)),n(f.name,u,f.capture,f.passive,f.params)):u!==l&&(l.fns=u,t[c]=l));for(c in e)i(t[c])&&r((f=ie(c)).name,e[c],f.capture)}function ce(t,e,n){var r;t instanceof vt&&(t=t.data.hook||(t.data.hook={}));var o=t[e];function c(){n.apply(this,arguments),b(r.fns,c)}i(o)?r=ae([c]):a(o.fns)&&s(o.merged)?(r=o).fns.push(c):r=ae([o,c]),r.merged=!0,t[e]=r}function ue(t,e,n,r,o){if(a(e)){if(_(e,n))return t[n]=e[n],o||delete e[n],!0;if(_(e,r))return t[n]=e[r],o||delete e[r],!0}return!1}function le(t){return c(t)?[gt(t)]:Array.isArray(t)?function t(e,n){var r,o,u,l,f=[];for(r=0;r<e.length;r++)i(o=e[r])||"boolean"==typeof o||(u=f.length-1,l=f[u],Array.isArray(o)?o.length>0&&(fe((o=t(o,(n||"")+"_"+r))[0])&&fe(l)&&(f[u]=gt(l.text+o[0].text),o.shift()),f.push.apply(f,o)):c(o)?fe(l)?f[u]=gt(l.text+o):""!==o&&f.push(gt(o)):fe(o)&&fe(l)?f[u]=gt(l.text+o.text):(s(e._isVList)&&a(o.tag)&&i(o.key)&&a(n)&&(o.key="__vlist"+n+"_"+r+"__"),f.push(o)));return f}(t):void 0}function fe(t){return a(t)&&a(t.text)&&!1===t.isComment}function pe(t,e){if(t){for(var n=Object.create(null),r=ct?Reflect.ownKeys(t):Object.keys(t),o=0;o<r.length;o++){var i=r[o];if("__ob__"!==i){for(var a=t[i].from,s=e;s;){if(s._provided&&_(s._provided,a)){n[i]=s._provided[a];break}s=s.$parent}if(!s)if("default"in t[i]){var c=t[i].default;n[i]="function"==typeof c?c.call(e):c}else 0}}return n}}function de(t,e){if(!t||!t.length)return{};for(var n={},r=0,o=t.length;r<o;r++){var i=t[r],a=i.data;if(a&&a.attrs&&a.attrs.slot&&delete a.attrs.slot,i.context!==e&&i.fnContext!==e||!a||null==a.slot)(n.default||(n.default=[])).push(i);else{var s=a.slot,c=n[s]||(n[s]=[]);"template"===i.tag?c.push.apply(c,i.children||[]):c.push(i)}}for(var u in n)n[u].every(he)&&delete n[u];return n}function he(t){return t.isComment&&!t.asyncFactory||" "===t.text}function ve(t,e,n){var r,i=Object.keys(e).length>0,a=t?!!t.$stable:!i,s=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(a&&n&&n!==o&&s===n.$key&&!i&&!n.$hasNormal)return n;for(var c in r={},t)t[c]&&"$"!==c[0]&&(r[c]=me(e,c,t[c]))}else r={};for(var u in e)u in r||(r[u]=ye(e,u));return t&&Object.isExtensible(t)&&(t._normalized=r),z(r,"$stable",a),z(r,"$key",s),z(r,"$hasNormal",i),r}function me(t,e,n){var r=function(){var t=arguments.length?n.apply(null,arguments):n({});return(t=t&&"object"==typeof t&&!Array.isArray(t)?[t]:le(t))&&(0===t.length||1===t.length&&t[0].isComment)?void 0:t};return n.proxy&&Object.defineProperty(t,e,{get:r,enumerable:!0,configurable:!0}),r}function ye(t,e){return function(){return t[e]}}function ge(t,e){var n,r,o,i,s;if(Array.isArray(t)||"string"==typeof t)for(n=new Array(t.length),r=0,o=t.length;r<o;r++)n[r]=e(t[r],r);else if("number"==typeof t)for(n=new Array(t),r=0;r<t;r++)n[r]=e(r+1,r);else if(u(t))if(ct&&t[Symbol.iterator]){n=[];for(var c=t[Symbol.iterator](),l=c.next();!l.done;)n.push(e(l.value,n.length)),l=c.next()}else for(i=Object.keys(t),n=new Array(i.length),r=0,o=i.length;r<o;r++)s=i[r],n[r]=e(t[s],s,r);return a(n)||(n=[]),n._isVList=!0,n}function be(t,e,n,r){var o,i=this.$scopedSlots[t];i?(n=n||{},r&&(n=$($({},r),n)),o=i(n)||e):o=this.$slots[t]||e;var a=n&&n.slot;return a?this.$createElement("template",{slot:a},o):o}function xe(t){return Dt(this.$options,"filters",t)||R}function _e(t,e){return Array.isArray(t)?-1===t.indexOf(e):t!==e}function we(t,e,n,r,o){var i=U.keyCodes[e]||n;return o&&r&&!U.keyCodes[e]?_e(o,r):i?_e(i,t):r?E(r)!==e:void 0}function Oe(t,e,n,r,o){if(n)if(u(n)){var i;Array.isArray(n)&&(n=P(n));var a=function(a){if("class"===a||"style"===a||g(a))i=t;else{var s=t.attrs&&t.attrs.type;i=r||U.mustUseProp(e,s,a)?t.domProps||(t.domProps={}):t.attrs||(t.attrs={})}var c=k(a),u=E(a);c in i||u in i||(i[a]=n[a],o&&((t.on||(t.on={}))["update:"+a]=function(t){n[a]=t}))};for(var s in n)a(s)}else;return t}function ke(t,e){var n=this._staticTrees||(this._staticTrees=[]),r=n[t];return r&&!e||je(r=n[t]=this.$options.staticRenderFns[t].call(this._renderProxy,null,this),"__static__"+t,!1),r}function Se(t,e,n){return je(t,"__once__"+e+(n?"_"+n:""),!0),t}function je(t,e,n){if(Array.isArray(t))for(var r=0;r<t.length;r++)t[r]&&"string"!=typeof t[r]&&Ee(t[r],e+"_"+r,n);else Ee(t,e,n)}function Ee(t,e,n){t.isStatic=!0,t.key=e,t.isOnce=n}function Ae(t,e){if(e)if(f(e)){var n=t.on=t.on?$({},t.on):{};for(var r in e){var o=n[r],i=e[r];n[r]=o?[].concat(o,i):i}}else;return t}function Ce(t,e,n,r){e=e||{$stable:!n};for(var o=0;o<t.length;o++){var i=t[o];Array.isArray(i)?Ce(i,e,n):i&&(i.proxy&&(i.fn.proxy=!0),e[i.key]=i.fn)}return r&&(e.$key=r),e}function $e(t,e){for(var n=0;n<e.length;n+=2){var r=e[n];"string"==typeof r&&r&&(t[e[n]]=e[n+1])}return t}function Pe(t,e){return"string"==typeof t?e+t:t}function Te(t){t._o=Se,t._n=m,t._s=v,t._l=ge,t._t=be,t._q=I,t._i=M,t._m=ke,t._f=xe,t._k=we,t._b=Oe,t._v=gt,t._e=yt,t._u=Ce,t._g=Ae,t._d=$e,t._p=Pe}function Le(t,e,n,r,i){var a,c=this,u=i.options;_(r,"_uid")?(a=Object.create(r))._original=r:(a=r,r=r._original);var l=s(u._compiled),f=!l;this.data=t,this.props=e,this.children=n,this.parent=r,this.listeners=t.on||o,this.injections=pe(u.inject,r),this.slots=function(){return c.$slots||ve(t.scopedSlots,c.$slots=de(n,r)),c.$slots},Object.defineProperty(this,"scopedSlots",{enumerable:!0,get:function(){return ve(t.scopedSlots,this.slots())}}),l&&(this.$options=u,this.$slots=this.slots(),this.$scopedSlots=ve(t.scopedSlots,this.$slots)),u._scopeId?this._c=function(t,e,n,o){var i=Ue(a,t,e,n,o,f);return i&&!Array.isArray(i)&&(i.fnScopeId=u._scopeId,i.fnContext=r),i}:this._c=function(t,e,n,r){return Ue(a,t,e,n,r,f)}}function Re(t,e,n,r,o){var i=bt(t);return i.fnContext=n,i.fnOptions=r,e.slot&&((i.data||(i.data={})).slot=e.slot),i}function Ie(t,e){for(var n in e)t[k(n)]=e[n]}Te(Le.prototype);var Me={init:function(t,e){if(t.componentInstance&&!t.componentInstance._isDestroyed&&t.data.keepAlive){var n=t;Me.prepatch(n,n)}else{(t.componentInstance=function(t,e){var n={_isComponent:!0,_parentVnode:t,parent:e},r=t.data.inlineTemplate;a(r)&&(n.render=r.render,n.staticRenderFns=r.staticRenderFns);return new t.componentOptions.Ctor(n)}(t,Ye)).$mount(e?t.elm:void 0,e)}},prepatch:function(t,e){var n=e.componentOptions;!function(t,e,n,r,i){0;var a=r.data.scopedSlots,s=t.$scopedSlots,c=!!(a&&!a.$stable||s!==o&&!s.$stable||a&&t.$scopedSlots.$key!==a.$key),u=!!(i||t.$options._renderChildren||c);t.$options._parentVnode=r,t.$vnode=r,t._vnode&&(t._vnode.parent=r);if(t.$options._renderChildren=i,t.$attrs=r.data.attrs||o,t.$listeners=n||o,e&&t.$options.props){kt(!1);for(var l=t._props,f=t.$options._propKeys||[],p=0;p<f.length;p++){var d=f[p],h=t.$options.props;l[d]=Ft(d,h,e,t)}kt(!0),t.$options.propsData=e}n=n||o;var v=t.$options._parentListeners;t.$options._parentListeners=n,Xe(t,n,v),u&&(t.$slots=de(i,r.context),t.$forceUpdate());0}(e.componentInstance=t.componentInstance,n.propsData,n.listeners,e,n.children)},insert:function(t){var e,n=t.context,r=t.componentInstance;r._isMounted||(r._isMounted=!0,tn(r,"mounted")),t.data.keepAlive&&(n._isMounted?((e=r)._inactive=!1,nn.push(e)):Ze(r,!0))},destroy:function(t){var e=t.componentInstance;e._isDestroyed||(t.data.keepAlive?function t(e,n){if(n&&(e._directInactive=!0,Qe(e)))return;if(!e._inactive){e._inactive=!0;for(var r=0;r<e.$children.length;r++)t(e.$children[r]);tn(e,"deactivated")}}(e,!0):e.$destroy())}},Ne=Object.keys(Me);function De(t,e,n,r,c){if(!i(t)){var l=n.$options._base;if(u(t)&&(t=l.extend(t)),"function"==typeof t){var f;if(i(t.cid)&&void 0===(t=function(t,e){if(s(t.error)&&a(t.errorComp))return t.errorComp;if(a(t.resolved))return t.resolved;var n=ze;n&&a(t.owners)&&-1===t.owners.indexOf(n)&&t.owners.push(n);if(s(t.loading)&&a(t.loadingComp))return t.loadingComp;if(n&&!a(t.owners)){var r=t.owners=[n],o=!0,c=null,l=null;n.$on("hook:destroyed",(function(){return b(r,n)}));var f=function(t){for(var e=0,n=r.length;e<n;e++)r[e].$forceUpdate();t&&(r.length=0,null!==c&&(clearTimeout(c),c=null),null!==l&&(clearTimeout(l),l=null))},p=N((function(n){t.resolved=Ve(n,e),o?r.length=0:f(!0)})),d=N((function(e){a(t.errorComp)&&(t.error=!0,f(!0))})),v=t(p,d);return u(v)&&(h(v)?i(t.resolved)&&v.then(p,d):h(v.component)&&(v.component.then(p,d),a(v.error)&&(t.errorComp=Ve(v.error,e)),a(v.loading)&&(t.loadingComp=Ve(v.loading,e),0===v.delay?t.loading=!0:c=setTimeout((function(){c=null,i(t.resolved)&&i(t.error)&&(t.loading=!0,f(!1))}),v.delay||200)),a(v.timeout)&&(l=setTimeout((function(){l=null,i(t.resolved)&&d(null)}),v.timeout)))),o=!1,t.loading?t.loadingComp:t.resolved}}(f=t,l)))return function(t,e,n,r,o){var i=yt();return i.asyncFactory=t,i.asyncMeta={data:e,context:n,children:r,tag:o},i}(f,e,n,r,c);e=e||{},On(t),a(e.model)&&function(t,e){var n=t.model&&t.model.prop||"value",r=t.model&&t.model.event||"input";(e.attrs||(e.attrs={}))[n]=e.model.value;var o=e.on||(e.on={}),i=o[r],s=e.model.callback;a(i)?(Array.isArray(i)?-1===i.indexOf(s):i!==s)&&(o[r]=[s].concat(i)):o[r]=s}(t.options,e);var p=function(t,e,n){var r=e.options.props;if(!i(r)){var o={},s=t.attrs,c=t.props;if(a(s)||a(c))for(var u in r){var l=E(u);ue(o,c,u,l,!0)||ue(o,s,u,l,!1)}return o}}(e,t);if(s(t.options.functional))return function(t,e,n,r,i){var s=t.options,c={},u=s.props;if(a(u))for(var l in u)c[l]=Ft(l,u,e||o);else a(n.attrs)&&Ie(c,n.attrs),a(n.props)&&Ie(c,n.props);var f=new Le(n,c,i,r,t),p=s.render.call(null,f._c,f);if(p instanceof vt)return Re(p,n,f.parent,s,f);if(Array.isArray(p)){for(var d=le(p)||[],h=new Array(d.length),v=0;v<d.length;v++)h[v]=Re(d[v],n,f.parent,s,f);return h}}(t,p,e,n,r);var d=e.on;if(e.on=e.nativeOn,s(t.options.abstract)){var v=e.slot;e={},v&&(e.slot=v)}!function(t){for(var e=t.hook||(t.hook={}),n=0;n<Ne.length;n++){var r=Ne[n],o=e[r],i=Me[r];o===i||o&&o._merged||(e[r]=o?Fe(i,o):i)}}(e);var m=t.options.name||c;return new vt("vue-component-"+t.cid+(m?"-"+m:""),e,void 0,void 0,void 0,n,{Ctor:t,propsData:p,listeners:d,tag:c,children:r},f)}}}function Fe(t,e){var n=function(n,r){t(n,r),e(n,r)};return n._merged=!0,n}function Ue(t,e,n,r,o,l){return(Array.isArray(n)||c(n))&&(o=r,r=n,n=void 0),s(l)&&(o=2),function(t,e,n,r,o){if(a(n)&&a(n.__ob__))return yt();a(n)&&a(n.is)&&(e=n.is);if(!e)return yt();0;Array.isArray(r)&&"function"==typeof r[0]&&((n=n||{}).scopedSlots={default:r[0]},r.length=0);2===o?r=le(r):1===o&&(r=function(t){for(var e=0;e<t.length;e++)if(Array.isArray(t[e]))return Array.prototype.concat.apply([],t);return t}(r));var c,l;if("string"==typeof e){var f;l=t.$vnode&&t.$vnode.ns||U.getTagNamespace(e),c=U.isReservedTag(e)?new vt(U.parsePlatformTagName(e),n,r,void 0,void 0,t):n&&n.pre||!a(f=Dt(t.$options,"components",e))?new vt(e,n,r,void 0,void 0,t):De(f,n,t,r,e)}else c=De(e,n,t,r);return Array.isArray(c)?c:a(c)?(a(l)&&function t(e,n,r){e.ns=n,"foreignObject"===e.tag&&(n=void 0,r=!0);if(a(e.children))for(var o=0,c=e.children.length;o<c;o++){var u=e.children[o];a(u.tag)&&(i(u.ns)||s(r)&&"svg"!==u.tag)&&t(u,n,r)}}(c,l),a(n)&&function(t){u(t.style)&&oe(t.style);u(t.class)&&oe(t.class)}(n),c):yt()}(t,e,n,r,o)}var Be,ze=null;function Ve(t,e){return(t.__esModule||ct&&"Module"===t[Symbol.toStringTag])&&(t=t.default),u(t)?e.extend(t):t}function qe(t){return t.isComment&&t.asyncFactory}function He(t){if(Array.isArray(t))for(var e=0;e<t.length;e++){var n=t[e];if(a(n)&&(a(n.componentOptions)||qe(n)))return n}}function We(t,e){Be.$on(t,e)}function Ge(t,e){Be.$off(t,e)}function Ke(t,e){var n=Be;return function r(){var o=e.apply(null,arguments);null!==o&&n.$off(t,r)}}function Xe(t,e,n){Be=t,se(e,n||{},We,Ge,Ke,t),Be=void 0}var Ye=null;function Je(t){var e=Ye;return Ye=t,function(){Ye=e}}function Qe(t){for(;t&&(t=t.$parent);)if(t._inactive)return!0;return!1}function Ze(t,e){if(e){if(t._directInactive=!1,Qe(t))return}else if(t._directInactive)return;if(t._inactive||null===t._inactive){t._inactive=!1;for(var n=0;n<t.$children.length;n++)Ze(t.$children[n]);tn(t,"activated")}}function tn(t,e){dt();var n=t.$options[e],r=e+" hook";if(n)for(var o=0,i=n.length;o<i;o++)qt(n[o],t,null,t,r);t._hasHookEvent&&t.$emit("hook:"+e),ht()}var en=[],nn=[],rn={},on=!1,an=!1,sn=0;var cn=0,un=Date.now;if(W&&!Y){var ln=window.performance;ln&&"function"==typeof ln.now&&un()>document.createEvent("Event").timeStamp&&(un=function(){return ln.now()})}function fn(){var t,e;for(cn=un(),an=!0,en.sort((function(t,e){return t.id-e.id})),sn=0;sn<en.length;sn++)(t=en[sn]).before&&t.before(),e=t.id,rn[e]=null,t.run();var n=nn.slice(),r=en.slice();sn=en.length=nn.length=0,rn={},on=an=!1,function(t){for(var e=0;e<t.length;e++)t[e]._inactive=!0,Ze(t[e],!0)}(n),function(t){var e=t.length;for(;e--;){var n=t[e],r=n.vm;r._watcher===n&&r._isMounted&&!r._isDestroyed&&tn(r,"updated")}}(r),it&&U.devtools&&it.emit("flush")}var pn=0,dn=function(t,e,n,r,o){this.vm=t,o&&(t._watcher=this),t._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++pn,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new st,this.newDepIds=new st,this.expression="","function"==typeof e?this.getter=e:(this.getter=function(t){if(!V.test(t)){var e=t.split(".");return function(t){for(var n=0;n<e.length;n++){if(!t)return;t=t[e[n]]}return t}}}(e),this.getter||(this.getter=T)),this.value=this.lazy?void 0:this.get()};dn.prototype.get=function(){var t;dt(this);var e=this.vm;try{t=this.getter.call(e,e)}catch(t){if(!this.user)throw t;Vt(t,e,'getter for watcher "'+this.expression+'"')}finally{this.deep&&oe(t),ht(),this.cleanupDeps()}return t},dn.prototype.addDep=function(t){var e=t.id;this.newDepIds.has(e)||(this.newDepIds.add(e),this.newDeps.push(t),this.depIds.has(e)||t.addSub(this))},dn.prototype.cleanupDeps=function(){for(var t=this.deps.length;t--;){var e=this.deps[t];this.newDepIds.has(e.id)||e.removeSub(this)}var n=this.depIds;this.depIds=this.newDepIds,this.newDepIds=n,this.newDepIds.clear(),n=this.deps,this.deps=this.newDeps,this.newDeps=n,this.newDeps.length=0},dn.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():function(t){var e=t.id;if(null==rn[e]){if(rn[e]=!0,an){for(var n=en.length-1;n>sn&&en[n].id>t.id;)n--;en.splice(n+1,0,t)}else en.push(t);on||(on=!0,ne(fn))}}(this)},dn.prototype.run=function(){if(this.active){var t=this.get();if(t!==this.value||u(t)||this.deep){var e=this.value;if(this.value=t,this.user)try{this.cb.call(this.vm,t,e)}catch(t){Vt(t,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,t,e)}}},dn.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},dn.prototype.depend=function(){for(var t=this.deps.length;t--;)this.deps[t].depend()},dn.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||b(this.vm._watchers,this);for(var t=this.deps.length;t--;)this.deps[t].removeSub(this);this.active=!1}};var hn={enumerable:!0,configurable:!0,get:T,set:T};function vn(t,e,n){hn.get=function(){return this[e][n]},hn.set=function(t){this[e][n]=t},Object.defineProperty(t,n,hn)}function mn(t){t._watchers=[];var e=t.$options;e.props&&function(t,e){var n=t.$options.propsData||{},r=t._props={},o=t.$options._propKeys=[];t.$parent&&kt(!1);var i=function(i){o.push(i);var a=Ft(i,e,n,t);Et(r,i,a),i in t||vn(t,"_props",i)};for(var a in e)i(a);kt(!0)}(t,e.props),e.methods&&function(t,e){t.$options.props;for(var n in e)t[n]="function"!=typeof e[n]?T:A(e[n],t)}(t,e.methods),e.data?function(t){var e=t.$options.data;f(e=t._data="function"==typeof e?function(t,e){dt();try{return t.call(e,e)}catch(t){return Vt(t,e,"data()"),{}}finally{ht()}}(e,t):e||{})||(e={});var n=Object.keys(e),r=t.$options.props,o=(t.$options.methods,n.length);for(;o--;){var i=n[o];0,r&&_(r,i)||(a=void 0,36!==(a=(i+"").charCodeAt(0))&&95!==a&&vn(t,"_data",i))}var a;jt(e,!0)}(t):jt(t._data={},!0),e.computed&&function(t,e){var n=t._computedWatchers=Object.create(null),r=ot();for(var o in e){var i=e[o],a="function"==typeof i?i:i.get;0,r||(n[o]=new dn(t,a||T,T,yn)),o in t||gn(t,o,i)}}(t,e.computed),e.watch&&e.watch!==et&&function(t,e){for(var n in e){var r=e[n];if(Array.isArray(r))for(var o=0;o<r.length;o++)_n(t,n,r[o]);else _n(t,n,r)}}(t,e.watch)}var yn={lazy:!0};function gn(t,e,n){var r=!ot();"function"==typeof n?(hn.get=r?bn(e):xn(n),hn.set=T):(hn.get=n.get?r&&!1!==n.cache?bn(e):xn(n.get):T,hn.set=n.set||T),Object.defineProperty(t,e,hn)}function bn(t){return function(){var e=this._computedWatchers&&this._computedWatchers[t];if(e)return e.dirty&&e.evaluate(),ft.target&&e.depend(),e.value}}function xn(t){return function(){return t.call(this,this)}}function _n(t,e,n,r){return f(n)&&(r=n,n=n.handler),"string"==typeof n&&(n=t[n]),t.$watch(e,n,r)}var wn=0;function On(t){var e=t.options;if(t.super){var n=On(t.super);if(n!==t.superOptions){t.superOptions=n;var r=function(t){var e,n=t.options,r=t.sealedOptions;for(var o in n)n[o]!==r[o]&&(e||(e={}),e[o]=n[o]);return e}(t);r&&$(t.extendOptions,r),(e=t.options=Nt(n,t.extendOptions)).name&&(e.components[e.name]=t)}}return e}function kn(t){this._init(t)}function Sn(t){t.cid=0;var e=1;t.extend=function(t){t=t||{};var n=this,r=n.cid,o=t._Ctor||(t._Ctor={});if(o[r])return o[r];var i=t.name||n.options.name;var a=function(t){this._init(t)};return(a.prototype=Object.create(n.prototype)).constructor=a,a.cid=e++,a.options=Nt(n.options,t),a.super=n,a.options.props&&function(t){var e=t.options.props;for(var n in e)vn(t.prototype,"_props",n)}(a),a.options.computed&&function(t){var e=t.options.computed;for(var n in e)gn(t.prototype,n,e[n])}(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,D.forEach((function(t){a[t]=n[t]})),i&&(a.options.components[i]=a),a.superOptions=n.options,a.extendOptions=t,a.sealedOptions=$({},a.options),o[r]=a,a}}function jn(t){return t&&(t.Ctor.options.name||t.tag)}function En(t,e){return Array.isArray(t)?t.indexOf(e)>-1:"string"==typeof t?t.split(",").indexOf(e)>-1:!!p(t)&&t.test(e)}function An(t,e){var n=t.cache,r=t.keys,o=t._vnode;for(var i in n){var a=n[i];if(a){var s=jn(a.componentOptions);s&&!e(s)&&Cn(n,i,r,o)}}}function Cn(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),t[e]=null,b(n,e)}kn.prototype._init=function(t){var e=this;e._uid=wn++,e._isVue=!0,t&&t._isComponent?function(t,e){var n=t.$options=Object.create(t.constructor.options),r=e._parentVnode;n.parent=e.parent,n._parentVnode=r;var o=r.componentOptions;n.propsData=o.propsData,n._parentListeners=o.listeners,n._renderChildren=o.children,n._componentTag=o.tag,e.render&&(n.render=e.render,n.staticRenderFns=e.staticRenderFns)}(e,t):e.$options=Nt(On(e.constructor),t||{},e),e._renderProxy=e,e._self=e,function(t){var e=t.$options,n=e.parent;if(n&&!e.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(t)}t.$parent=n,t.$root=n?n.$root:t,t.$children=[],t.$refs={},t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}(e),function(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&Xe(t,e)}(e),function(t){t._vnode=null,t._staticTrees=null;var e=t.$options,n=t.$vnode=e._parentVnode,r=n&&n.context;t.$slots=de(e._renderChildren,r),t.$scopedSlots=o,t._c=function(e,n,r,o){return Ue(t,e,n,r,o,!1)},t.$createElement=function(e,n,r,o){return Ue(t,e,n,r,o,!0)};var i=n&&n.data;Et(t,"$attrs",i&&i.attrs||o,null,!0),Et(t,"$listeners",e._parentListeners||o,null,!0)}(e),tn(e,"beforeCreate"),function(t){var e=pe(t.$options.inject,t);e&&(kt(!1),Object.keys(e).forEach((function(n){Et(t,n,e[n])})),kt(!0))}(e),mn(e),function(t){var e=t.$options.provide;e&&(t._provided="function"==typeof e?e.call(t):e)}(e),tn(e,"created"),e.$options.el&&e.$mount(e.$options.el)},function(t){var e={get:function(){return this._data}},n={get:function(){return this._props}};Object.defineProperty(t.prototype,"$data",e),Object.defineProperty(t.prototype,"$props",n),t.prototype.$set=At,t.prototype.$delete=Ct,t.prototype.$watch=function(t,e,n){if(f(e))return _n(this,t,e,n);(n=n||{}).user=!0;var r=new dn(this,t,e,n);if(n.immediate)try{e.call(this,r.value)}catch(t){Vt(t,this,'callback for immediate watcher "'+r.expression+'"')}return function(){r.teardown()}}}(kn),function(t){var e=/^hook:/;t.prototype.$on=function(t,n){var r=this;if(Array.isArray(t))for(var o=0,i=t.length;o<i;o++)r.$on(t[o],n);else(r._events[t]||(r._events[t]=[])).push(n),e.test(t)&&(r._hasHookEvent=!0);return r},t.prototype.$once=function(t,e){var n=this;function r(){n.$off(t,r),e.apply(n,arguments)}return r.fn=e,n.$on(t,r),n},t.prototype.$off=function(t,e){var n=this;if(!arguments.length)return n._events=Object.create(null),n;if(Array.isArray(t)){for(var r=0,o=t.length;r<o;r++)n.$off(t[r],e);return n}var i,a=n._events[t];if(!a)return n;if(!e)return n._events[t]=null,n;for(var s=a.length;s--;)if((i=a[s])===e||i.fn===e){a.splice(s,1);break}return n},t.prototype.$emit=function(t){var e=this,n=e._events[t];if(n){n=n.length>1?C(n):n;for(var r=C(arguments,1),o='event handler for "'+t+'"',i=0,a=n.length;i<a;i++)qt(n[i],e,r,e,o)}return e}}(kn),function(t){t.prototype._update=function(t,e){var n=this,r=n.$el,o=n._vnode,i=Je(n);n._vnode=t,n.$el=o?n.__patch__(o,t):n.__patch__(n.$el,t,e,!1),i(),r&&(r.__vue__=null),n.$el&&(n.$el.__vue__=n),n.$vnode&&n.$parent&&n.$vnode===n.$parent._vnode&&(n.$parent.$el=n.$el)},t.prototype.$forceUpdate=function(){this._watcher&&this._watcher.update()},t.prototype.$destroy=function(){var t=this;if(!t._isBeingDestroyed){tn(t,"beforeDestroy"),t._isBeingDestroyed=!0;var e=t.$parent;!e||e._isBeingDestroyed||t.$options.abstract||b(e.$children,t),t._watcher&&t._watcher.teardown();for(var n=t._watchers.length;n--;)t._watchers[n].teardown();t._data.__ob__&&t._data.__ob__.vmCount--,t._isDestroyed=!0,t.__patch__(t._vnode,null),tn(t,"destroyed"),t.$off(),t.$el&&(t.$el.__vue__=null),t.$vnode&&(t.$vnode.parent=null)}}}(kn),function(t){Te(t.prototype),t.prototype.$nextTick=function(t){return ne(t,this)},t.prototype._render=function(){var t,e=this,n=e.$options,r=n.render,o=n._parentVnode;o&&(e.$scopedSlots=ve(o.data.scopedSlots,e.$slots,e.$scopedSlots)),e.$vnode=o;try{ze=e,t=r.call(e._renderProxy,e.$createElement)}catch(n){Vt(n,e,"render"),t=e._vnode}finally{ze=null}return Array.isArray(t)&&1===t.length&&(t=t[0]),t instanceof vt||(t=yt()),t.parent=o,t}}(kn);var $n=[String,RegExp,Array],Pn={KeepAlive:{name:"keep-alive",abstract:!0,props:{include:$n,exclude:$n,max:[String,Number]},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var t in this.cache)Cn(this.cache,t,this.keys)},mounted:function(){var t=this;this.$watch("include",(function(e){An(t,(function(t){return En(e,t)}))})),this.$watch("exclude",(function(e){An(t,(function(t){return!En(e,t)}))}))},render:function(){var t=this.$slots.default,e=He(t),n=e&&e.componentOptions;if(n){var r=jn(n),o=this.include,i=this.exclude;if(o&&(!r||!En(o,r))||i&&r&&En(i,r))return e;var a=this.cache,s=this.keys,c=null==e.key?n.Ctor.cid+(n.tag?"::"+n.tag:""):e.key;a[c]?(e.componentInstance=a[c].componentInstance,b(s,c),s.push(c)):(a[c]=e,s.push(c),this.max&&s.length>parseInt(this.max)&&Cn(a,s[0],s,this._vnode)),e.data.keepAlive=!0}return e||t&&t[0]}}};!function(t){var e={get:function(){return U}};Object.defineProperty(t,"config",e),t.util={warn:ut,extend:$,mergeOptions:Nt,defineReactive:Et},t.set=At,t.delete=Ct,t.nextTick=ne,t.observable=function(t){return jt(t),t},t.options=Object.create(null),D.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,$(t.options.components,Pn),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=C(arguments,1);return n.unshift(this),"function"==typeof t.install?t.install.apply(t,n):"function"==typeof t&&t.apply(null,n),e.push(t),this}}(t),function(t){t.mixin=function(t){return this.options=Nt(this.options,t),this}}(t),Sn(t),function(t){D.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&f(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&"function"==typeof n&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}(t)}(kn),Object.defineProperty(kn.prototype,"$isServer",{get:ot}),Object.defineProperty(kn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(kn,"FunctionalRenderContext",{value:Le}),kn.version="2.6.12";var Tn=y("style,class"),Ln=y("input,textarea,option,select,progress"),Rn=y("contenteditable,draggable,spellcheck"),In=y("events,caret,typing,plaintext-only"),Mn=y("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),Nn="http://www.w3.org/1999/xlink",Dn=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},Fn=function(t){return Dn(t)?t.slice(6,t.length):""},Un=function(t){return null==t||!1===t};function Bn(t){for(var e=t.data,n=t,r=t;a(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(e=zn(r.data,e));for(;a(n=n.parent);)n&&n.data&&(e=zn(e,n.data));return function(t,e){if(a(t)||a(e))return Vn(t,qn(e));return""}(e.staticClass,e.class)}function zn(t,e){return{staticClass:Vn(t.staticClass,e.staticClass),class:a(t.class)?[t.class,e.class]:e.class}}function Vn(t,e){return t?e?t+" "+e:t:e||""}function qn(t){return Array.isArray(t)?function(t){for(var e,n="",r=0,o=t.length;r<o;r++)a(e=qn(t[r]))&&""!==e&&(n&&(n+=" "),n+=e);return n}(t):u(t)?function(t){var e="";for(var n in t)t[n]&&(e&&(e+=" "),e+=n);return e}(t):"string"==typeof t?t:""}var Hn={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},Wn=y("html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot"),Gn=y("svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view",!0),Kn=function(t){return Wn(t)||Gn(t)};var Xn=Object.create(null);var Yn=y("text,number,password,search,email,tel,url");var Jn=Object.freeze({createElement:function(t,e){var n=document.createElement(t);return"select"!==t||e.data&&e.data.attrs&&void 0!==e.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n},createElementNS:function(t,e){return document.createElementNS(Hn[t],e)},createTextNode:function(t){return document.createTextNode(t)},createComment:function(t){return document.createComment(t)},insertBefore:function(t,e,n){t.insertBefore(e,n)},removeChild:function(t,e){t.removeChild(e)},appendChild:function(t,e){t.appendChild(e)},parentNode:function(t){return t.parentNode},nextSibling:function(t){return t.nextSibling},tagName:function(t){return t.tagName},setTextContent:function(t,e){t.textContent=e},setStyleScope:function(t,e){t.setAttribute(e,"")}}),Qn={create:function(t,e){Zn(e)},update:function(t,e){t.data.ref!==e.data.ref&&(Zn(t,!0),Zn(e))},destroy:function(t){Zn(t,!0)}};function Zn(t,e){var n=t.data.ref;if(a(n)){var r=t.context,o=t.componentInstance||t.elm,i=r.$refs;e?Array.isArray(i[n])?b(i[n],o):i[n]===o&&(i[n]=void 0):t.data.refInFor?Array.isArray(i[n])?i[n].indexOf(o)<0&&i[n].push(o):i[n]=[o]:i[n]=o}}var tr=new vt("",{},[]),er=["create","activate","update","remove","destroy"];function nr(t,e){return t.key===e.key&&(t.tag===e.tag&&t.isComment===e.isComment&&a(t.data)===a(e.data)&&function(t,e){if("input"!==t.tag)return!0;var n,r=a(n=t.data)&&a(n=n.attrs)&&n.type,o=a(n=e.data)&&a(n=n.attrs)&&n.type;return r===o||Yn(r)&&Yn(o)}(t,e)||s(t.isAsyncPlaceholder)&&t.asyncFactory===e.asyncFactory&&i(e.asyncFactory.error))}function rr(t,e,n){var r,o,i={};for(r=e;r<=n;++r)a(o=t[r].key)&&(i[o]=r);return i}var or={create:ir,update:ir,destroy:function(t){ir(t,tr)}};function ir(t,e){(t.data.directives||e.data.directives)&&function(t,e){var n,r,o,i=t===tr,a=e===tr,s=sr(t.data.directives,t.context),c=sr(e.data.directives,e.context),u=[],l=[];for(n in c)r=s[n],o=c[n],r?(o.oldValue=r.value,o.oldArg=r.arg,ur(o,"update",e,t),o.def&&o.def.componentUpdated&&l.push(o)):(ur(o,"bind",e,t),o.def&&o.def.inserted&&u.push(o));if(u.length){var f=function(){for(var n=0;n<u.length;n++)ur(u[n],"inserted",e,t)};i?ce(e,"insert",f):f()}l.length&&ce(e,"postpatch",(function(){for(var n=0;n<l.length;n++)ur(l[n],"componentUpdated",e,t)}));if(!i)for(n in s)c[n]||ur(s[n],"unbind",t,t,a)}(t,e)}var ar=Object.create(null);function sr(t,e){var n,r,o=Object.create(null);if(!t)return o;for(n=0;n<t.length;n++)(r=t[n]).modifiers||(r.modifiers=ar),o[cr(r)]=r,r.def=Dt(e.$options,"directives",r.name);return o}function cr(t){return t.rawName||t.name+"."+Object.keys(t.modifiers||{}).join(".")}function ur(t,e,n,r,o){var i=t.def&&t.def[e];if(i)try{i(n.elm,t,n,r,o)}catch(r){Vt(r,n.context,"directive "+t.name+" "+e+" hook")}}var lr=[Qn,or];function fr(t,e){var n=e.componentOptions;if(!(a(n)&&!1===n.Ctor.options.inheritAttrs||i(t.data.attrs)&&i(e.data.attrs))){var r,o,s=e.elm,c=t.data.attrs||{},u=e.data.attrs||{};for(r in a(u.__ob__)&&(u=e.data.attrs=$({},u)),u)o=u[r],c[r]!==o&&pr(s,r,o);for(r in(Y||Q)&&u.value!==c.value&&pr(s,"value",u.value),c)i(u[r])&&(Dn(r)?s.removeAttributeNS(Nn,Fn(r)):Rn(r)||s.removeAttribute(r))}}function pr(t,e,n){t.tagName.indexOf("-")>-1?dr(t,e,n):Mn(e)?Un(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):Rn(e)?t.setAttribute(e,function(t,e){return Un(e)||"false"===e?"false":"contenteditable"===t&&In(e)?e:"true"}(e,n)):Dn(e)?Un(n)?t.removeAttributeNS(Nn,Fn(e)):t.setAttributeNS(Nn,e,n):dr(t,e,n)}function dr(t,e,n){if(Un(n))t.removeAttribute(e);else{if(Y&&!J&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var r=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",r)};t.addEventListener("input",r),t.__ieph=!0}t.setAttribute(e,n)}}var hr={create:fr,update:fr};function vr(t,e){var n=e.elm,r=e.data,o=t.data;if(!(i(r.staticClass)&&i(r.class)&&(i(o)||i(o.staticClass)&&i(o.class)))){var s=Bn(e),c=n._transitionClasses;a(c)&&(s=Vn(s,qn(c))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var mr,yr={create:vr,update:vr};function gr(t,e,n){var r=mr;return function o(){var i=e.apply(null,arguments);null!==i&&_r(t,o,n,r)}}var br=Kt&&!(tt&&Number(tt[1])<=53);function xr(t,e,n,r){if(br){var o=cn,i=e;e=i._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=o||t.timeStamp<=0||t.target.ownerDocument!==document)return i.apply(this,arguments)}}mr.addEventListener(t,e,nt?{capture:n,passive:r}:n)}function _r(t,e,n,r){(r||mr).removeEventListener(t,e._wrapper||e,n)}function wr(t,e){if(!i(t.data.on)||!i(e.data.on)){var n=e.data.on||{},r=t.data.on||{};mr=e.elm,function(t){if(a(t.__r)){var e=Y?"change":"input";t[e]=[].concat(t.__r,t[e]||[]),delete t.__r}a(t.__c)&&(t.change=[].concat(t.__c,t.change||[]),delete t.__c)}(n),se(n,r,xr,_r,gr,e.context),mr=void 0}}var Or,kr={create:wr,update:wr};function Sr(t,e){if(!i(t.data.domProps)||!i(e.data.domProps)){var n,r,o=e.elm,s=t.data.domProps||{},c=e.data.domProps||{};for(n in a(c.__ob__)&&(c=e.data.domProps=$({},c)),s)n in c||(o[n]="");for(n in c){if(r=c[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),r===s[n])continue;1===o.childNodes.length&&o.removeChild(o.childNodes[0])}if("value"===n&&"PROGRESS"!==o.tagName){o._value=r;var u=i(r)?"":String(r);jr(o,u)&&(o.value=u)}else if("innerHTML"===n&&Gn(o.tagName)&&i(o.innerHTML)){(Or=Or||document.createElement("div")).innerHTML="<svg>"+r+"</svg>";for(var l=Or.firstChild;o.firstChild;)o.removeChild(o.firstChild);for(;l.firstChild;)o.appendChild(l.firstChild)}else if(r!==s[n])try{o[n]=r}catch(t){}}}}function jr(t,e){return!t.composing&&("OPTION"===t.tagName||function(t,e){var n=!0;try{n=document.activeElement!==t}catch(t){}return n&&t.value!==e}(t,e)||function(t,e){var n=t.value,r=t._vModifiers;if(a(r)){if(r.number)return m(n)!==m(e);if(r.trim)return n.trim()!==e.trim()}return n!==e}(t,e))}var Er={create:Sr,update:Sr},Ar=w((function(t){var e={},n=/:(.+)/;return t.split(/;(?![^(]*\))/g).forEach((function(t){if(t){var r=t.split(n);r.length>1&&(e[r[0].trim()]=r[1].trim())}})),e}));function Cr(t){var e=$r(t.style);return t.staticStyle?$(t.staticStyle,e):e}function $r(t){return Array.isArray(t)?P(t):"string"==typeof t?Ar(t):t}var Pr,Tr=/^--/,Lr=/\s*!important$/,Rr=function(t,e,n){if(Tr.test(e))t.style.setProperty(e,n);else if(Lr.test(n))t.style.setProperty(E(e),n.replace(Lr,""),"important");else{var r=Mr(e);if(Array.isArray(n))for(var o=0,i=n.length;o<i;o++)t.style[r]=n[o];else t.style[r]=n}},Ir=["Webkit","Moz","ms"],Mr=w((function(t){if(Pr=Pr||document.createElement("div").style,"filter"!==(t=k(t))&&t in Pr)return t;for(var e=t.charAt(0).toUpperCase()+t.slice(1),n=0;n<Ir.length;n++){var r=Ir[n]+e;if(r in Pr)return r}}));function Nr(t,e){var n=e.data,r=t.data;if(!(i(n.staticStyle)&&i(n.style)&&i(r.staticStyle)&&i(r.style))){var o,s,c=e.elm,u=r.staticStyle,l=r.normalizedStyle||r.style||{},f=u||l,p=$r(e.data.style)||{};e.data.normalizedStyle=a(p.__ob__)?$({},p):p;var d=function(t,e){var n,r={};if(e)for(var o=t;o.componentInstance;)(o=o.componentInstance._vnode)&&o.data&&(n=Cr(o.data))&&$(r,n);(n=Cr(t.data))&&$(r,n);for(var i=t;i=i.parent;)i.data&&(n=Cr(i.data))&&$(r,n);return r}(e,!0);for(s in f)i(d[s])&&Rr(c,s,"");for(s in d)(o=d[s])!==f[s]&&Rr(c,s,null==o?"":o)}}var Dr={create:Nr,update:Nr},Fr=/\s+/;function Ur(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(Fr).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" "+(t.getAttribute("class")||"")+" ";n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function Br(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(Fr).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var n=" "+(t.getAttribute("class")||"")+" ",r=" "+e+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?t.setAttribute("class",n):t.removeAttribute("class")}}function zr(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&$(e,Vr(t.name||"v")),$(e,t),e}return"string"==typeof t?Vr(t):void 0}}var Vr=w((function(t){return{enterClass:t+"-enter",enterToClass:t+"-enter-to",enterActiveClass:t+"-enter-active",leaveClass:t+"-leave",leaveToClass:t+"-leave-to",leaveActiveClass:t+"-leave-active"}})),qr=W&&!J,Hr="transition",Wr="transitionend",Gr="animation",Kr="animationend";qr&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(Hr="WebkitTransition",Wr="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Gr="WebkitAnimation",Kr="webkitAnimationEnd"));var Xr=W?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function Yr(t){Xr((function(){Xr(t)}))}function Jr(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),Ur(t,e))}function Qr(t,e){t._transitionClasses&&b(t._transitionClasses,e),Br(t,e)}function Zr(t,e,n){var r=eo(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s="transition"===o?Wr:Kr,c=0,u=function(){t.removeEventListener(s,l),n()},l=function(e){e.target===t&&++c>=a&&u()};setTimeout((function(){c<a&&u()}),i+1),t.addEventListener(s,l)}var to=/\b(transform|all)(,|$)/;function eo(t,e){var n,r=window.getComputedStyle(t),o=(r[Hr+"Delay"]||"").split(", "),i=(r[Hr+"Duration"]||"").split(", "),a=no(o,i),s=(r[Gr+"Delay"]||"").split(", "),c=(r[Gr+"Duration"]||"").split(", "),u=no(s,c),l=0,f=0;return"transition"===e?a>0&&(n="transition",l=a,f=i.length):"animation"===e?u>0&&(n="animation",l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?"transition":"animation":null)?"transition"===n?i.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:"transition"===n&&to.test(r[Hr+"Property"])}}function no(t,e){for(;t.length<e.length;)t=t.concat(t);return Math.max.apply(null,e.map((function(e,n){return ro(e)+ro(t[n])})))}function ro(t){return 1e3*Number(t.slice(0,-1).replace(",","."))}function oo(t,e){var n=t.elm;a(n._leaveCb)&&(n._leaveCb.cancelled=!0,n._leaveCb());var r=zr(t.data.transition);if(!i(r)&&!a(n._enterCb)&&1===n.nodeType){for(var o=r.css,s=r.type,c=r.enterClass,l=r.enterToClass,f=r.enterActiveClass,p=r.appearClass,d=r.appearToClass,h=r.appearActiveClass,v=r.beforeEnter,y=r.enter,g=r.afterEnter,b=r.enterCancelled,x=r.beforeAppear,_=r.appear,w=r.afterAppear,O=r.appearCancelled,k=r.duration,S=Ye,j=Ye.$vnode;j&&j.parent;)S=j.context,j=j.parent;var E=!S._isMounted||!t.isRootInsert;if(!E||_||""===_){var A=E&&p?p:c,C=E&&h?h:f,$=E&&d?d:l,P=E&&x||v,T=E&&"function"==typeof _?_:y,L=E&&w||g,R=E&&O||b,I=m(u(k)?k.enter:k);0;var M=!1!==o&&!J,D=so(T),F=n._enterCb=N((function(){M&&(Qr(n,$),Qr(n,C)),F.cancelled?(M&&Qr(n,A),R&&R(n)):L&&L(n),n._enterCb=null}));t.data.show||ce(t,"insert",(function(){var e=n.parentNode,r=e&&e._pending&&e._pending[t.key];r&&r.tag===t.tag&&r.elm._leaveCb&&r.elm._leaveCb(),T&&T(n,F)})),P&&P(n),M&&(Jr(n,A),Jr(n,C),Yr((function(){Qr(n,A),F.cancelled||(Jr(n,$),D||(ao(I)?setTimeout(F,I):Zr(n,s,F)))}))),t.data.show&&(e&&e(),T&&T(n,F)),M||D||F()}}}function io(t,e){var n=t.elm;a(n._enterCb)&&(n._enterCb.cancelled=!0,n._enterCb());var r=zr(t.data.transition);if(i(r)||1!==n.nodeType)return e();if(!a(n._leaveCb)){var o=r.css,s=r.type,c=r.leaveClass,l=r.leaveToClass,f=r.leaveActiveClass,p=r.beforeLeave,d=r.leave,h=r.afterLeave,v=r.leaveCancelled,y=r.delayLeave,g=r.duration,b=!1!==o&&!J,x=so(d),_=m(u(g)?g.leave:g);0;var w=n._leaveCb=N((function(){n.parentNode&&n.parentNode._pending&&(n.parentNode._pending[t.key]=null),b&&(Qr(n,l),Qr(n,f)),w.cancelled?(b&&Qr(n,c),v&&v(n)):(e(),h&&h(n)),n._leaveCb=null}));y?y(O):O()}function O(){w.cancelled||(!t.data.show&&n.parentNode&&((n.parentNode._pending||(n.parentNode._pending={}))[t.key]=t),p&&p(n),b&&(Jr(n,c),Jr(n,f),Yr((function(){Qr(n,c),w.cancelled||(Jr(n,l),x||(ao(_)?setTimeout(w,_):Zr(n,s,w)))}))),d&&d(n,w),b||x||w())}}function ao(t){return"number"==typeof t&&!isNaN(t)}function so(t){if(i(t))return!1;var e=t.fns;return a(e)?so(Array.isArray(e)?e[0]:e):(t._length||t.length)>1}function co(t,e){!0!==e.data.show&&oo(e)}var uo=function(t){var e,n,r={},o=t.modules,u=t.nodeOps;for(e=0;e<er.length;++e)for(r[er[e]]=[],n=0;n<o.length;++n)a(o[n][er[e]])&&r[er[e]].push(o[n][er[e]]);function l(t){var e=u.parentNode(t);a(e)&&u.removeChild(e,t)}function f(t,e,n,o,i,c,l){if(a(t.elm)&&a(c)&&(t=c[l]=bt(t)),t.isRootInsert=!i,!function(t,e,n,o){var i=t.data;if(a(i)){var c=a(t.componentInstance)&&i.keepAlive;if(a(i=i.hook)&&a(i=i.init)&&i(t,!1),a(t.componentInstance))return p(t,e),d(n,t.elm,o),s(c)&&function(t,e,n,o){var i,s=t;for(;s.componentInstance;)if(s=s.componentInstance._vnode,a(i=s.data)&&a(i=i.transition)){for(i=0;i<r.activate.length;++i)r.activate[i](tr,s);e.push(s);break}d(n,t.elm,o)}(t,e,n,o),!0}}(t,e,n,o)){var f=t.data,v=t.children,y=t.tag;a(y)?(t.elm=t.ns?u.createElementNS(t.ns,y):u.createElement(y,t),g(t),h(t,v,e),a(f)&&m(t,e),d(n,t.elm,o)):s(t.isComment)?(t.elm=u.createComment(t.text),d(n,t.elm,o)):(t.elm=u.createTextNode(t.text),d(n,t.elm,o))}}function p(t,e){a(t.data.pendingInsert)&&(e.push.apply(e,t.data.pendingInsert),t.data.pendingInsert=null),t.elm=t.componentInstance.$el,v(t)?(m(t,e),g(t)):(Zn(t),e.push(t))}function d(t,e,n){a(t)&&(a(n)?u.parentNode(n)===t&&u.insertBefore(t,e,n):u.appendChild(t,e))}function h(t,e,n){if(Array.isArray(e)){0;for(var r=0;r<e.length;++r)f(e[r],n,t.elm,null,!0,e,r)}else c(t.text)&&u.appendChild(t.elm,u.createTextNode(String(t.text)))}function v(t){for(;t.componentInstance;)t=t.componentInstance._vnode;return a(t.tag)}function m(t,n){for(var o=0;o<r.create.length;++o)r.create[o](tr,t);a(e=t.data.hook)&&(a(e.create)&&e.create(tr,t),a(e.insert)&&n.push(t))}function g(t){var e;if(a(e=t.fnScopeId))u.setStyleScope(t.elm,e);else for(var n=t;n;)a(e=n.context)&&a(e=e.$options._scopeId)&&u.setStyleScope(t.elm,e),n=n.parent;a(e=Ye)&&e!==t.context&&e!==t.fnContext&&a(e=e.$options._scopeId)&&u.setStyleScope(t.elm,e)}function b(t,e,n,r,o,i){for(;r<=o;++r)f(n[r],i,t,e,!1,n,r)}function x(t){var e,n,o=t.data;if(a(o))for(a(e=o.hook)&&a(e=e.destroy)&&e(t),e=0;e<r.destroy.length;++e)r.destroy[e](t);if(a(e=t.children))for(n=0;n<t.children.length;++n)x(t.children[n])}function _(t,e,n){for(;e<=n;++e){var r=t[e];a(r)&&(a(r.tag)?(w(r),x(r)):l(r.elm))}}function w(t,e){if(a(e)||a(t.data)){var n,o=r.remove.length+1;for(a(e)?e.listeners+=o:e=function(t,e){function n(){0==--n.listeners&&l(t)}return n.listeners=e,n}(t.elm,o),a(n=t.componentInstance)&&a(n=n._vnode)&&a(n.data)&&w(n,e),n=0;n<r.remove.length;++n)r.remove[n](t,e);a(n=t.data.hook)&&a(n=n.remove)?n(t,e):e()}else l(t.elm)}function O(t,e,n,r){for(var o=n;o<r;o++){var i=e[o];if(a(i)&&nr(t,i))return o}}function k(t,e,n,o,c,l){if(t!==e){a(e.elm)&&a(o)&&(e=o[c]=bt(e));var p=e.elm=t.elm;if(s(t.isAsyncPlaceholder))a(e.asyncFactory.resolved)?E(t.elm,e,n):e.isAsyncPlaceholder=!0;else if(s(e.isStatic)&&s(t.isStatic)&&e.key===t.key&&(s(e.isCloned)||s(e.isOnce)))e.componentInstance=t.componentInstance;else{var d,h=e.data;a(h)&&a(d=h.hook)&&a(d=d.prepatch)&&d(t,e);var m=t.children,y=e.children;if(a(h)&&v(e)){for(d=0;d<r.update.length;++d)r.update[d](t,e);a(d=h.hook)&&a(d=d.update)&&d(t,e)}i(e.text)?a(m)&&a(y)?m!==y&&function(t,e,n,r,o){var s,c,l,p=0,d=0,h=e.length-1,v=e[0],m=e[h],y=n.length-1,g=n[0],x=n[y],w=!o;for(0;p<=h&&d<=y;)i(v)?v=e[++p]:i(m)?m=e[--h]:nr(v,g)?(k(v,g,r,n,d),v=e[++p],g=n[++d]):nr(m,x)?(k(m,x,r,n,y),m=e[--h],x=n[--y]):nr(v,x)?(k(v,x,r,n,y),w&&u.insertBefore(t,v.elm,u.nextSibling(m.elm)),v=e[++p],x=n[--y]):nr(m,g)?(k(m,g,r,n,d),w&&u.insertBefore(t,m.elm,v.elm),m=e[--h],g=n[++d]):(i(s)&&(s=rr(e,p,h)),i(c=a(g.key)?s[g.key]:O(g,e,p,h))?f(g,r,t,v.elm,!1,n,d):nr(l=e[c],g)?(k(l,g,r,n,d),e[c]=void 0,w&&u.insertBefore(t,l.elm,v.elm)):f(g,r,t,v.elm,!1,n,d),g=n[++d]);p>h?b(t,i(n[y+1])?null:n[y+1].elm,n,d,y,r):d>y&&_(e,p,h)}(p,m,y,n,l):a(y)?(a(t.text)&&u.setTextContent(p,""),b(p,null,y,0,y.length-1,n)):a(m)?_(m,0,m.length-1):a(t.text)&&u.setTextContent(p,""):t.text!==e.text&&u.setTextContent(p,e.text),a(h)&&a(d=h.hook)&&a(d=d.postpatch)&&d(t,e)}}}function S(t,e,n){if(s(n)&&a(t.parent))t.parent.data.pendingInsert=e;else for(var r=0;r<e.length;++r)e[r].data.hook.insert(e[r])}var j=y("attrs,class,staticClass,staticStyle,key");function E(t,e,n,r){var o,i=e.tag,c=e.data,u=e.children;if(r=r||c&&c.pre,e.elm=t,s(e.isComment)&&a(e.asyncFactory))return e.isAsyncPlaceholder=!0,!0;if(a(c)&&(a(o=c.hook)&&a(o=o.init)&&o(e,!0),a(o=e.componentInstance)))return p(e,n),!0;if(a(i)){if(a(u))if(t.hasChildNodes())if(a(o=c)&&a(o=o.domProps)&&a(o=o.innerHTML)){if(o!==t.innerHTML)return!1}else{for(var l=!0,f=t.firstChild,d=0;d<u.length;d++){if(!f||!E(f,u[d],n,r)){l=!1;break}f=f.nextSibling}if(!l||f)return!1}else h(e,u,n);if(a(c)){var v=!1;for(var y in c)if(!j(y)){v=!0,m(e,n);break}!v&&c.class&&oe(c.class)}}else t.data!==e.text&&(t.data=e.text);return!0}return function(t,e,n,o){if(!i(e)){var c,l=!1,p=[];if(i(t))l=!0,f(e,p);else{var d=a(t.nodeType);if(!d&&nr(t,e))k(t,e,p,null,null,o);else{if(d){if(1===t.nodeType&&t.hasAttribute("data-server-rendered")&&(t.removeAttribute("data-server-rendered"),n=!0),s(n)&&E(t,e,p))return S(e,p,!0),t;c=t,t=new vt(u.tagName(c).toLowerCase(),{},[],void 0,c)}var h=t.elm,m=u.parentNode(h);if(f(e,p,h._leaveCb?null:m,u.nextSibling(h)),a(e.parent))for(var y=e.parent,g=v(e);y;){for(var b=0;b<r.destroy.length;++b)r.destroy[b](y);if(y.elm=e.elm,g){for(var w=0;w<r.create.length;++w)r.create[w](tr,y);var O=y.data.hook.insert;if(O.merged)for(var j=1;j<O.fns.length;j++)O.fns[j]()}else Zn(y);y=y.parent}a(m)?_([t],0,0):a(t.tag)&&x(t)}}return S(e,p,l),e.elm}a(t)&&x(t)}}({nodeOps:Jn,modules:[hr,yr,kr,Er,Dr,W?{create:co,activate:co,remove:function(t,e){!0!==t.data.show?io(t,e):e()}}:{}].concat(lr)});J&&document.addEventListener("selectionchange",(function(){var t=document.activeElement;t&&t.vmodel&&go(t,"input")}));var lo={inserted:function(t,e,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?ce(n,"postpatch",(function(){lo.componentUpdated(t,e,n)})):fo(t,e,n.context),t._vOptions=[].map.call(t.options,vo)):("textarea"===n.tag||Yn(t.type))&&(t._vModifiers=e.modifiers,e.modifiers.lazy||(t.addEventListener("compositionstart",mo),t.addEventListener("compositionend",yo),t.addEventListener("change",yo),J&&(t.vmodel=!0)))},componentUpdated:function(t,e,n){if("select"===n.tag){fo(t,e,n.context);var r=t._vOptions,o=t._vOptions=[].map.call(t.options,vo);if(o.some((function(t,e){return!I(t,r[e])})))(t.multiple?e.value.some((function(t){return ho(t,o)})):e.value!==e.oldValue&&ho(e.value,o))&&go(t,"change")}}};function fo(t,e,n){po(t,e,n),(Y||Q)&&setTimeout((function(){po(t,e,n)}),0)}function po(t,e,n){var r=e.value,o=t.multiple;if(!o||Array.isArray(r)){for(var i,a,s=0,c=t.options.length;s<c;s++)if(a=t.options[s],o)i=M(r,vo(a))>-1,a.selected!==i&&(a.selected=i);else if(I(vo(a),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function ho(t,e){return e.every((function(e){return!I(e,t)}))}function vo(t){return"_value"in t?t._value:t.value}function mo(t){t.target.composing=!0}function yo(t){t.target.composing&&(t.target.composing=!1,go(t.target,"input"))}function go(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function bo(t){return!t.componentInstance||t.data&&t.data.transition?t:bo(t.componentInstance._vnode)}var xo={model:lo,show:{bind:function(t,e,n){var r=e.value,o=(n=bo(n)).data&&n.data.transition,i=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;r&&o?(n.data.show=!0,oo(n,(function(){t.style.display=i}))):t.style.display=r?i:"none"},update:function(t,e,n){var r=e.value;!r!=!e.oldValue&&((n=bo(n)).data&&n.data.transition?(n.data.show=!0,r?oo(n,(function(){t.style.display=t.__vOriginalDisplay})):io(n,(function(){t.style.display="none"}))):t.style.display=r?t.__vOriginalDisplay:"none")},unbind:function(t,e,n,r,o){o||(t.style.display=t.__vOriginalDisplay)}}},_o={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function wo(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?wo(He(e.children)):t}function Oo(t){var e={},n=t.$options;for(var r in n.propsData)e[r]=t[r];var o=n._parentListeners;for(var i in o)e[k(i)]=o[i];return e}function ko(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}var So=function(t){return t.tag||qe(t)},jo=function(t){return"show"===t.name},Eo={name:"transition",props:_o,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(So)).length){0;var r=this.mode;0;var o=n[0];if(function(t){for(;t=t.parent;)if(t.data.transition)return!0}(this.$vnode))return o;var i=wo(o);if(!i)return o;if(this._leaving)return ko(t,o);var a="__transition-"+this._uid+"-";i.key=null==i.key?i.isComment?a+"comment":a+i.tag:c(i.key)?0===String(i.key).indexOf(a)?i.key:a+i.key:i.key;var s=(i.data||(i.data={})).transition=Oo(this),u=this._vnode,l=wo(u);if(i.data.directives&&i.data.directives.some(jo)&&(i.data.show=!0),l&&l.data&&!function(t,e){return e.key===t.key&&e.tag===t.tag}(i,l)&&!qe(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=$({},s);if("out-in"===r)return this._leaving=!0,ce(f,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),ko(t,o);if("in-out"===r){if(qe(i))return u;var p,d=function(){p()};ce(s,"afterEnter",d),ce(s,"enterCancelled",d),ce(f,"delayLeave",(function(t){p=t}))}}return o}}},Ao=$({tag:String,moveClass:String},_o);function Co(t){t.elm._moveCb&&t.elm._moveCb(),t.elm._enterCb&&t.elm._enterCb()}function $o(t){t.data.newPos=t.elm.getBoundingClientRect()}function Po(t){var e=t.data.pos,n=t.data.newPos,r=e.left-n.left,o=e.top-n.top;if(r||o){t.data.moved=!0;var i=t.elm.style;i.transform=i.WebkitTransform="translate("+r+"px,"+o+"px)",i.transitionDuration="0s"}}delete Ao.mode;var To={Transition:Eo,TransitionGroup:{props:Ao,beforeMount:function(){var t=this,e=this._update;this._update=function(n,r){var o=Je(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,o(),e.call(t,n,r)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=Oo(this),s=0;s<o.length;s++){var c=o[s];if(c.tag)if(null!=c.key&&0!==String(c.key).indexOf("__vlist"))i.push(c),n[c.key]=c,(c.data||(c.data={})).transition=a;else;}if(r){for(var u=[],l=[],f=0;f<r.length;f++){var p=r[f];p.data.transition=a,p.data.pos=p.elm.getBoundingClientRect(),n[p.key]?u.push(p):l.push(p)}this.kept=t(e,null,u),this.removed=l}return t(e,null,i)},updated:function(){var t=this.prevChildren,e=this.moveClass||(this.name||"v")+"-move";t.length&&this.hasMove(t[0].elm,e)&&(t.forEach(Co),t.forEach($o),t.forEach(Po),this._reflow=document.body.offsetHeight,t.forEach((function(t){if(t.data.moved){var n=t.elm,r=n.style;Jr(n,e),r.transform=r.WebkitTransform=r.transitionDuration="",n.addEventListener(Wr,n._moveCb=function t(r){r&&r.target!==n||r&&!/transform$/.test(r.propertyName)||(n.removeEventListener(Wr,t),n._moveCb=null,Qr(n,e))})}})))},methods:{hasMove:function(t,e){if(!qr)return!1;if(this._hasMove)return this._hasMove;var n=t.cloneNode();t._transitionClasses&&t._transitionClasses.forEach((function(t){Br(n,t)})),Ur(n,e),n.style.display="none",this.$el.appendChild(n);var r=eo(n);return this.$el.removeChild(n),this._hasMove=r.hasTransform}}}};kn.config.mustUseProp=function(t,e,n){return"value"===n&&Ln(t)&&"button"!==e||"selected"===n&&"option"===t||"checked"===n&&"input"===t||"muted"===n&&"video"===t},kn.config.isReservedTag=Kn,kn.config.isReservedAttr=Tn,kn.config.getTagNamespace=function(t){return Gn(t)?"svg":"math"===t?"math":void 0},kn.config.isUnknownElement=function(t){if(!W)return!0;if(Kn(t))return!1;if(t=t.toLowerCase(),null!=Xn[t])return Xn[t];var e=document.createElement(t);return t.indexOf("-")>-1?Xn[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:Xn[t]=/HTMLUnknownElement/.test(e.toString())},$(kn.options.directives,xo),$(kn.options.components,To),kn.prototype.__patch__=W?uo:T,kn.prototype.$mount=function(t,e){return function(t,e,n){var r;return t.$el=e,t.$options.render||(t.$options.render=yt),tn(t,"beforeMount"),r=function(){t._update(t._render(),n)},new dn(t,r,T,{before:function(){t._isMounted&&!t._isDestroyed&&tn(t,"beforeUpdate")}},!0),n=!1,null==t.$vnode&&(t._isMounted=!0,tn(t,"mounted")),t}(this,t=t&&W?function(t){if("string"==typeof t){var e=document.querySelector(t);return e||document.createElement("div")}return t}(t):void 0,e)},W&&setTimeout((function(){U.devtools&&it&&it.emit("init",kn)}),0);var Lo=kn; /*! * vue-router v3.5.1 * (c) 2021 Evan You * @license MIT - */function Ro(t,e){for(var n in e)t[n]=e[n];return t}var Io=/[!'()*]/g,Mo=function(t){return"%"+t.charCodeAt(0).toString(16)},No=/%2C/g,Do=function(t){return encodeURIComponent(t).replace(Io,Mo).replace(No,",")};function Fo(t){try{return decodeURIComponent(t)}catch(t){0}return t}var Uo=function(t){return null==t||"object"==typeof t?t:String(t)};function Bo(t){var e={};return(t=t.trim().replace(/^(\?|#|&)/,""))?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),r=Fo(n.shift()),o=n.length>0?Fo(n.join("=")):null;void 0===e[r]?e[r]=o:Array.isArray(e[r])?e[r].push(o):e[r]=[e[r],o]})),e):e}function zo(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return Do(e);if(Array.isArray(n)){var r=[];return n.forEach((function(t){void 0!==t&&(null===t?r.push(Do(e)):r.push(Do(e)+"="+Do(t)))})),r.join("&")}return Do(e)+"="+Do(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var Vo=/\/?$/;function qo(t,e,n,r){var o=r&&r.options.stringifyQuery,i=e.query||{};try{i=Ho(i)}catch(t){}var a={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:i,params:e.params||{},fullPath:Ko(e,o),matched:t?Go(t):[]};return n&&(a.redirectedFrom=Ko(n,o)),Object.freeze(a)}function Ho(t){if(Array.isArray(t))return t.map(Ho);if(t&&"object"==typeof t){var e={};for(var n in t)e[n]=Ho(t[n]);return e}return t}var Wo=qo(null,{path:"/"});function Go(t){for(var e=[];t;)e.unshift(t),t=t.parent;return e}function Ko(t,e){var n=t.path,r=t.query;void 0===r&&(r={});var o=t.hash;return void 0===o&&(o=""),(n||"/")+(e||zo)(r)+o}function Xo(t,e,n){return e===Wo?t===e:!!e&&(t.path&&e.path?t.path.replace(Vo,"")===e.path.replace(Vo,"")&&(n||t.hash===e.hash&&Yo(t.query,e.query)):!(!t.name||!e.name)&&(t.name===e.name&&(n||t.hash===e.hash&&Yo(t.query,e.query)&&Yo(t.params,e.params))))}function Yo(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t).sort(),r=Object.keys(e).sort();return n.length===r.length&&n.every((function(n,o){var i=t[n];if(r[o]!==n)return!1;var a=e[n];return null==i||null==a?i===a:"object"==typeof i&&"object"==typeof a?Yo(i,a):String(i)===String(a)}))}function Jo(t){for(var e=0;e<t.matched.length;e++){var n=t.matched[e];for(var r in n.instances){var o=n.instances[r],i=n.enteredCbs[r];if(o&&i){delete n.enteredCbs[r];for(var a=0;a<i.length;a++)o._isBeingDestroyed||i[a](o)}}}}var Qo={name:"RouterView",functional:!0,props:{name:{type:String,default:"default"}},render:function(t,e){var n=e.props,r=e.children,o=e.parent,i=e.data;i.routerView=!0;for(var a=o.$createElement,s=n.name,c=o.$route,u=o._routerViewCache||(o._routerViewCache={}),l=0,f=!1;o&&o._routerRoot!==o;){var p=o.$vnode?o.$vnode.data:{};p.routerView&&l++,p.keepAlive&&o._directInactive&&o._inactive&&(f=!0),o=o.$parent}if(i.routerViewDepth=l,f){var d=u[s],h=d&&d.component;return h?(d.configProps&&Zo(h,i,d.route,d.configProps),a(h,i,r)):a()}var v=c.matched[l],m=v&&v.components[s];if(!v||!m)return u[s]=null,a();u[s]={component:m},i.registerRouteInstance=function(t,e){var n=v.instances[s];(e&&n!==t||!e&&n===t)&&(v.instances[s]=e)},(i.hook||(i.hook={})).prepatch=function(t,e){v.instances[s]=e.componentInstance},i.hook.init=function(t){t.data.keepAlive&&t.componentInstance&&t.componentInstance!==v.instances[s]&&(v.instances[s]=t.componentInstance),Jo(c)};var y=v.props&&v.props[s];return y&&(Ro(u[s],{route:c,configProps:y}),Zo(m,i,c,y)),a(m,i,r)}};function Zo(t,e,n,r){var o=e.props=function(t,e){switch(typeof e){case"undefined":return;case"object":return e;case"function":return e(t);case"boolean":return e?t.params:void 0;default:0}}(n,r);if(o){o=e.props=Ro({},o);var i=e.attrs=e.attrs||{};for(var a in o)t.props&&a in t.props||(i[a]=o[a],delete o[a])}}function ti(t,e,n){var r=t.charAt(0);if("/"===r)return t;if("?"===r||"#"===r)return e+t;var o=e.split("/");n&&o[o.length-1]||o.pop();for(var i=t.replace(/^\//,"").split("/"),a=0;a<i.length;a++){var s=i[a];".."===s?o.pop():"."!==s&&o.push(s)}return""!==o[0]&&o.unshift(""),o.join("/")}function ei(t){return t.replace(/\/\//g,"/")}var ni=Array.isArray||function(t){return"[object Array]"==Object.prototype.toString.call(t)},ri=yi,oi=ui,ii=function(t,e){return fi(ui(t,e),e)},ai=fi,si=mi,ci=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function ui(t,e){for(var n,r=[],o=0,i=0,a="",s=e&&e.delimiter||"/";null!=(n=ci.exec(t));){var c=n[0],u=n[1],l=n.index;if(a+=t.slice(i,l),i=l+c.length,u)a+=u[1];else{var f=t[i],p=n[2],d=n[3],h=n[4],v=n[5],m=n[6],y=n[7];a&&(r.push(a),a="");var g=null!=p&&null!=f&&f!==p,b="+"===m||"*"===m,x="?"===m||"*"===m,_=n[2]||s,w=h||v;r.push({name:d||o++,prefix:p||"",delimiter:_,optional:x,repeat:b,partial:g,asterisk:!!y,pattern:w?di(w):y?".*":"[^"+pi(_)+"]+?"})}}return i<t.length&&(a+=t.substr(i)),a&&r.push(a),r}function li(t){return encodeURI(t).replace(/[\/?#]/g,(function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()}))}function fi(t,e){for(var n=new Array(t.length),r=0;r<t.length;r++)"object"==typeof t[r]&&(n[r]=new RegExp("^(?:"+t[r].pattern+")$",vi(e)));return function(e,r){for(var o="",i=e||{},a=(r||{}).pretty?li:encodeURIComponent,s=0;s<t.length;s++){var c=t[s];if("string"!=typeof c){var u,l=i[c.name];if(null==l){if(c.optional){c.partial&&(o+=c.prefix);continue}throw new TypeError('Expected "'+c.name+'" to be defined')}if(ni(l)){if(!c.repeat)throw new TypeError('Expected "'+c.name+'" to not repeat, but received `'+JSON.stringify(l)+"`");if(0===l.length){if(c.optional)continue;throw new TypeError('Expected "'+c.name+'" to not be empty')}for(var f=0;f<l.length;f++){if(u=a(l[f]),!n[s].test(u))throw new TypeError('Expected all "'+c.name+'" to match "'+c.pattern+'", but received `'+JSON.stringify(u)+"`");o+=(0===f?c.prefix:c.delimiter)+u}}else{if(u=c.asterisk?encodeURI(l).replace(/[?#]/g,(function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})):a(l),!n[s].test(u))throw new TypeError('Expected "'+c.name+'" to match "'+c.pattern+'", but received "'+u+'"');o+=c.prefix+u}}else o+=c}return o}}function pi(t){return t.replace(/([.+*?=^!:${}()[\]|\/\\])/g,"\\$1")}function di(t){return t.replace(/([=!:$\/()])/g,"\\$1")}function hi(t,e){return t.keys=e,t}function vi(t){return t&&t.sensitive?"":"i"}function mi(t,e,n){ni(e)||(n=e||n,e=[]);for(var r=(n=n||{}).strict,o=!1!==n.end,i="",a=0;a<t.length;a++){var s=t[a];if("string"==typeof s)i+=pi(s);else{var c=pi(s.prefix),u="(?:"+s.pattern+")";e.push(s),s.repeat&&(u+="(?:"+c+u+")*"),i+=u=s.optional?s.partial?c+"("+u+")?":"(?:"+c+"("+u+"))?":c+"("+u+")"}}var l=pi(n.delimiter||"/"),f=i.slice(-l.length)===l;return r||(i=(f?i.slice(0,-l.length):i)+"(?:"+l+"(?=$))?"),i+=o?"$":r&&f?"":"(?="+l+"|$)",hi(new RegExp("^"+i,vi(n)),e)}function yi(t,e,n){return ni(e)||(n=e||n,e=[]),n=n||{},t instanceof RegExp?function(t,e){var n=t.source.match(/\((?!\?)/g);if(n)for(var r=0;r<n.length;r++)e.push({name:r,prefix:null,delimiter:null,optional:!1,repeat:!1,partial:!1,asterisk:!1,pattern:null});return hi(t,e)}(t,e):ni(t)?function(t,e,n){for(var r=[],o=0;o<t.length;o++)r.push(yi(t[o],e,n).source);return hi(new RegExp("(?:"+r.join("|")+")",vi(n)),e)}(t,e,n):function(t,e,n){return mi(ui(t,n),e,n)}(t,e,n)}ri.parse=oi,ri.compile=ii,ri.tokensToFunction=ai,ri.tokensToRegExp=si;var gi=Object.create(null);function bi(t,e,n){e=e||{};try{var r=gi[t]||(gi[t]=ri.compile(t));return"string"==typeof e.pathMatch&&(e[0]=e.pathMatch),r(e,{pretty:!0})}catch(t){return""}finally{delete e[0]}}function xi(t,e,n,r){var o="string"==typeof t?{path:t}:t;if(o._normalized)return o;if(o.name){var i=(o=Ro({},t)).params;return i&&"object"==typeof i&&(o.params=Ro({},i)),o}if(!o.path&&o.params&&e){(o=Ro({},o))._normalized=!0;var a=Ro(Ro({},e.params),o.params);if(e.name)o.name=e.name,o.params=a;else if(e.matched.length){var s=e.matched[e.matched.length-1].path;o.path=bi(s,a,e.path)}else 0;return o}var c=function(t){var e="",n="",r=t.indexOf("#");r>=0&&(e=t.slice(r),t=t.slice(0,r));var o=t.indexOf("?");return o>=0&&(n=t.slice(o+1),t=t.slice(0,o)),{path:t,query:n,hash:e}}(o.path||""),u=e&&e.path||"/",l=c.path?ti(c.path,u,n||o.append):u,f=function(t,e,n){void 0===e&&(e={});var r,o=n||Bo;try{r=o(t||"")}catch(t){r={}}for(var i in e){var a=e[i];r[i]=Array.isArray(a)?a.map(Uo):Uo(a)}return r}(c.query,o.query,r&&r.options.parseQuery),p=o.hash||c.hash;return p&&"#"!==p.charAt(0)&&(p="#"+p),{_normalized:!0,path:l,query:f,hash:p}}var _i,wi=function(){},Oi={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},custom:Boolean,exact:Boolean,exactPath:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,ariaCurrentValue:{type:String,default:"page"},event:{type:[String,Array],default:"click"}},render:function(t){var e=this,n=this.$router,r=this.$route,o=n.resolve(this.to,r,this.append),i=o.location,a=o.route,s=o.href,c={},u=n.options.linkActiveClass,l=n.options.linkExactActiveClass,f=null==u?"router-link-active":u,p=null==l?"router-link-exact-active":l,d=null==this.activeClass?f:this.activeClass,h=null==this.exactActiveClass?p:this.exactActiveClass,v=a.redirectedFrom?qo(null,xi(a.redirectedFrom),null,n):a;c[h]=Xo(r,v,this.exactPath),c[d]=this.exact||this.exactPath?c[h]:function(t,e){return 0===t.path.replace(Vo,"/").indexOf(e.path.replace(Vo,"/"))&&(!e.hash||t.hash===e.hash)&&function(t,e){for(var n in e)if(!(n in t))return!1;return!0}(t.query,e.query)}(r,v);var m=c[h]?this.ariaCurrentValue:null,y=function(t){ki(t)&&(e.replace?n.replace(i,wi):n.push(i,wi))},g={click:ki};Array.isArray(this.event)?this.event.forEach((function(t){g[t]=y})):g[this.event]=y;var b={class:c},x=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:s,route:a,navigate:y,isActive:c[d],isExactActive:c[h]});if(x){if(1===x.length)return x[0];if(x.length>1||!x.length)return 0===x.length?t():t("span",{},x)}if("a"===this.tag)b.on=g,b.attrs={href:s,"aria-current":m};else{var _=function t(e){var n;if(e)for(var r=0;r<e.length;r++){if("a"===(n=e[r]).tag)return n;if(n.children&&(n=t(n.children)))return n}}(this.$slots.default);if(_){_.isStatic=!1;var w=_.data=Ro({},_.data);for(var O in w.on=w.on||{},w.on){var k=w.on[O];O in g&&(w.on[O]=Array.isArray(k)?k:[k])}for(var S in g)S in w.on?w.on[S].push(g[S]):w.on[S]=y;var j=_.data.attrs=Ro({},_.data.attrs);j.href=s,j["aria-current"]=m}else b.on=g}return t(this.tag,b,this.$slots.default)}};function ki(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey||t.defaultPrevented||void 0!==t.button&&0!==t.button)){if(t.currentTarget&&t.currentTarget.getAttribute){var e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}var Si="undefined"!=typeof window;function ji(t,e,n,r,o){var i=e||[],a=n||Object.create(null),s=r||Object.create(null);t.forEach((function(t){!function t(e,n,r,o,i,a){var s=o.path,c=o.name;0;var u=o.pathToRegexpOptions||{},l=function(t,e,n){n||(t=t.replace(/\/$/,""));if("/"===t[0])return t;if(null==e)return t;return ei(e.path+"/"+t)}(s,i,u.strict);"boolean"==typeof o.caseSensitive&&(u.sensitive=o.caseSensitive);var f={path:l,regex:Ei(l,u),components:o.components||{default:o.component},alias:o.alias?"string"==typeof o.alias?[o.alias]:o.alias:[],instances:{},enteredCbs:{},name:c,parent:i,matchAs:a,redirect:o.redirect,beforeEnter:o.beforeEnter,meta:o.meta||{},props:null==o.props?{}:o.components?o.props:{default:o.props}};o.children&&o.children.forEach((function(o){var i=a?ei(a+"/"+o.path):void 0;t(e,n,r,o,f,i)}));n[f.path]||(e.push(f.path),n[f.path]=f);if(void 0!==o.alias)for(var p=Array.isArray(o.alias)?o.alias:[o.alias],d=0;d<p.length;++d){0;var h={path:p[d],children:o.children};t(e,n,r,h,i,f.path||"/")}c&&(r[c]||(r[c]=f))}(i,a,s,t,o)}));for(var c=0,u=i.length;c<u;c++)"*"===i[c]&&(i.push(i.splice(c,1)[0]),u--,c--);return{pathList:i,pathMap:a,nameMap:s}}function Ei(t,e){return ri(t,[],e)}function Ai(t,e){var n=ji(t),r=n.pathList,o=n.pathMap,i=n.nameMap;function a(t,n,a){var s=xi(t,n,!1,e),u=s.name;if(u){var l=i[u];if(!l)return c(null,s);var f=l.regex.keys.filter((function(t){return!t.optional})).map((function(t){return t.name}));if("object"!=typeof s.params&&(s.params={}),n&&"object"==typeof n.params)for(var p in n.params)!(p in s.params)&&f.indexOf(p)>-1&&(s.params[p]=n.params[p]);return s.path=bi(l.path,s.params),c(l,s,a)}if(s.path){s.params={};for(var d=0;d<r.length;d++){var h=r[d],v=o[h];if(Ci(v.regex,s.path,s.params))return c(v,s,a)}}return c(null,s)}function s(t,n){var r=t.redirect,o="function"==typeof r?r(qo(t,n,null,e)):r;if("string"==typeof o&&(o={path:o}),!o||"object"!=typeof o)return c(null,n);var s=o,u=s.name,l=s.path,f=n.query,p=n.hash,d=n.params;if(f=s.hasOwnProperty("query")?s.query:f,p=s.hasOwnProperty("hash")?s.hash:p,d=s.hasOwnProperty("params")?s.params:d,u){i[u];return a({_normalized:!0,name:u,query:f,hash:p,params:d},void 0,n)}if(l){var h=function(t,e){return ti(t,e.parent?e.parent.path:"/",!0)}(l,t);return a({_normalized:!0,path:bi(h,d),query:f,hash:p},void 0,n)}return c(null,n)}function c(t,n,r){return t&&t.redirect?s(t,r||n):t&&t.matchAs?function(t,e,n){var r=a({_normalized:!0,path:bi(n,e.params)});if(r){var o=r.matched,i=o[o.length-1];return e.params=r.params,c(i,e)}return c(null,e)}(0,n,t.matchAs):qo(t,n,r,e)}return{match:a,addRoute:function(t,e){var n="object"!=typeof t?i[t]:void 0;ji([e||t],r,o,i,n),n&&ji(n.alias.map((function(t){return{path:t,children:[e]}})),r,o,i,n)},getRoutes:function(){return r.map((function(t){return o[t]}))},addRoutes:function(t){ji(t,r,o,i)}}}function Ci(t,e,n){var r=e.match(t);if(!r)return!1;if(!n)return!0;for(var o=1,i=r.length;o<i;++o){var a=t.keys[o-1];a&&(n[a.name||"pathMatch"]="string"==typeof r[o]?Fo(r[o]):r[o])}return!0}var $i=Si&&window.performance&&window.performance.now?window.performance:Date;function Pi(){return $i.now().toFixed(3)}var Ti=Pi();function Li(){return Ti}function Ri(t){return Ti=t}var Ii=Object.create(null);function Mi(){"scrollRestoration"in window.history&&(window.history.scrollRestoration="manual");var t=window.location.protocol+"//"+window.location.host,e=window.location.href.replace(t,""),n=Ro({},window.history.state);return n.key=Li(),window.history.replaceState(n,"",e),window.addEventListener("popstate",Fi),function(){window.removeEventListener("popstate",Fi)}}function Ni(t,e,n,r){if(t.app){var o=t.options.scrollBehavior;o&&t.app.$nextTick((function(){var i=function(){var t=Li();if(t)return Ii[t]}(),a=o.call(t,e,n,r?i:null);a&&("function"==typeof a.then?a.then((function(t){qi(t,i)})).catch((function(t){0})):qi(a,i))}))}}function Di(){var t=Li();t&&(Ii[t]={x:window.pageXOffset,y:window.pageYOffset})}function Fi(t){Di(),t.state&&t.state.key&&Ri(t.state.key)}function Ui(t){return zi(t.x)||zi(t.y)}function Bi(t){return{x:zi(t.x)?t.x:window.pageXOffset,y:zi(t.y)?t.y:window.pageYOffset}}function zi(t){return"number"==typeof t}var Vi=/^#\d/;function qi(t,e){var n,r="object"==typeof t;if(r&&"string"==typeof t.selector){var o=Vi.test(t.selector)?document.getElementById(t.selector.slice(1)):document.querySelector(t.selector);if(o){var i=t.offset&&"object"==typeof t.offset?t.offset:{};e=function(t,e){var n=document.documentElement.getBoundingClientRect(),r=t.getBoundingClientRect();return{x:r.left-n.left-e.x,y:r.top-n.top-e.y}}(o,i={x:zi((n=i).x)?n.x:0,y:zi(n.y)?n.y:0})}else Ui(t)&&(e=Bi(t))}else r&&Ui(t)&&(e=Bi(t));e&&("scrollBehavior"in document.documentElement.style?window.scrollTo({left:e.x,top:e.y,behavior:t.behavior}):window.scrollTo(e.x,e.y))}var Hi,Wi=Si&&((-1===(Hi=window.navigator.userAgent).indexOf("Android 2.")&&-1===Hi.indexOf("Android 4.0")||-1===Hi.indexOf("Mobile Safari")||-1!==Hi.indexOf("Chrome")||-1!==Hi.indexOf("Windows Phone"))&&window.history&&"function"==typeof window.history.pushState);function Gi(t,e){Di();var n=window.history;try{if(e){var r=Ro({},n.state);r.key=Li(),n.replaceState(r,"",t)}else n.pushState({key:Ri(Pi())},"",t)}catch(n){window.location[e?"replace":"assign"](t)}}function Ki(t){Gi(t,!0)}function Xi(t,e,n){var r=function(o){o>=t.length?n():t[o]?e(t[o],(function(){r(o+1)})):r(o+1)};r(0)}var Yi={redirected:2,aborted:4,cancelled:8,duplicated:16};function Ji(t,e){return Zi(t,e,Yi.redirected,'Redirected when going from "'+t.fullPath+'" to "'+function(t){if("string"==typeof t)return t;if("path"in t)return t.path;var e={};return ta.forEach((function(n){n in t&&(e[n]=t[n])})),JSON.stringify(e,null,2)}(e)+'" via a navigation guard.')}function Qi(t,e){return Zi(t,e,Yi.cancelled,'Navigation cancelled from "'+t.fullPath+'" to "'+e.fullPath+'" with a new navigation.')}function Zi(t,e,n,r){var o=new Error(r);return o._isRouter=!0,o.from=t,o.to=e,o.type=n,o}var ta=["params","query","hash"];function ea(t){return Object.prototype.toString.call(t).indexOf("Error")>-1}function na(t,e){return ea(t)&&t._isRouter&&(null==e||t.type===e)}function ra(t){return function(e,n,r){var o=!1,i=0,a=null;oa(t,(function(t,e,n,s){if("function"==typeof t&&void 0===t.cid){o=!0,i++;var c,u=sa((function(e){var o;((o=e).__esModule||aa&&"Module"===o[Symbol.toStringTag])&&(e=e.default),t.resolved="function"==typeof e?e:_i.extend(e),n.components[s]=e,--i<=0&&r()})),l=sa((function(t){var e="Failed to resolve async component "+s+": "+t;a||(a=ea(t)?t:new Error(e),r(a))}));try{c=t(u,l)}catch(t){l(t)}if(c)if("function"==typeof c.then)c.then(u,l);else{var f=c.component;f&&"function"==typeof f.then&&f.then(u,l)}}})),o||r()}}function oa(t,e){return ia(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function ia(t){return Array.prototype.concat.apply([],t)}var aa="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function sa(t){var e=!1;return function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var ca=function(t,e){this.router=t,this.base=function(t){if(!t)if(Si){var e=document.querySelector("base");t=(t=e&&e.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else t="/";"/"!==t.charAt(0)&&(t="/"+t);return t.replace(/\/$/,"")}(e),this.current=Wo,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function ua(t,e,n,r){var o=oa(t,(function(t,r,o,i){var a=function(t,e){"function"!=typeof t&&(t=_i.extend(t));return t.options[e]}(t,e);if(a)return Array.isArray(a)?a.map((function(t){return n(t,r,o,i)})):n(a,r,o,i)}));return ia(r?o.reverse():o)}function la(t,e){if(e)return function(){return t.apply(e,arguments)}}ca.prototype.listen=function(t){this.cb=t},ca.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},ca.prototype.onError=function(t){this.errorCbs.push(t)},ca.prototype.transitionTo=function(t,e,n){var r,o=this;try{r=this.router.match(t,this.current)}catch(t){throw this.errorCbs.forEach((function(e){e(t)})),t}var i=this.current;this.confirmTransition(r,(function(){o.updateRoute(r),e&&e(r),o.ensureURL(),o.router.afterHooks.forEach((function(t){t&&t(r,i)})),o.ready||(o.ready=!0,o.readyCbs.forEach((function(t){t(r)})))}),(function(t){n&&n(t),t&&!o.ready&&(na(t,Yi.redirected)&&i===Wo||(o.ready=!0,o.readyErrorCbs.forEach((function(e){e(t)}))))}))},ca.prototype.confirmTransition=function(t,e,n){var r=this,o=this.current;this.pending=t;var i,a,s=function(t){!na(t)&&ea(t)&&(r.errorCbs.length?r.errorCbs.forEach((function(e){e(t)})):console.error(t)),n&&n(t)},c=t.matched.length-1,u=o.matched.length-1;if(Xo(t,o)&&c===u&&t.matched[c]===o.matched[u])return this.ensureURL(),s(((a=Zi(i=o,t,Yi.duplicated,'Avoided redundant navigation to current location: "'+i.fullPath+'".')).name="NavigationDuplicated",a));var l=function(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n<r&&t[n]===e[n];n++);return{updated:e.slice(0,n),activated:e.slice(n),deactivated:t.slice(n)}}(this.current.matched,t.matched),f=l.updated,p=l.deactivated,d=l.activated,h=[].concat(function(t){return ua(t,"beforeRouteLeave",la,!0)}(p),this.router.beforeHooks,function(t){return ua(t,"beforeRouteUpdate",la)}(f),d.map((function(t){return t.beforeEnter})),ra(d)),v=function(e,n){if(r.pending!==t)return s(Qi(o,t));try{e(t,o,(function(e){!1===e?(r.ensureURL(!0),s(function(t,e){return Zi(t,e,Yi.aborted,'Navigation aborted from "'+t.fullPath+'" to "'+e.fullPath+'" via a navigation guard.')}(o,t))):ea(e)?(r.ensureURL(!0),s(e)):"string"==typeof e||"object"==typeof e&&("string"==typeof e.path||"string"==typeof e.name)?(s(Ji(o,t)),"object"==typeof e&&e.replace?r.replace(e):r.push(e)):n(e)}))}catch(t){s(t)}};Xi(h,v,(function(){Xi(function(t){return ua(t,"beforeRouteEnter",(function(t,e,n,r){return function(t,e,n){return function(r,o,i){return t(r,o,(function(t){"function"==typeof t&&(e.enteredCbs[n]||(e.enteredCbs[n]=[]),e.enteredCbs[n].push(t)),i(t)}))}}(t,n,r)}))}(d).concat(r.router.resolveHooks),v,(function(){if(r.pending!==t)return s(Qi(o,t));r.pending=null,e(t),r.router.app&&r.router.app.$nextTick((function(){Jo(t)}))}))}))},ca.prototype.updateRoute=function(t){this.current=t,this.cb&&this.cb(t)},ca.prototype.setupListeners=function(){},ca.prototype.teardown=function(){this.listeners.forEach((function(t){t()})),this.listeners=[],this.current=Wo,this.pending=null};var fa=function(t){function e(e,n){t.call(this,e,n),this._startLocation=pa(this.base)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setupListeners=function(){var t=this;if(!(this.listeners.length>0)){var e=this.router,n=e.options.scrollBehavior,r=Wi&&n;r&&this.listeners.push(Mi());var o=function(){var n=t.current,o=pa(t.base);t.current===Wo&&o===t._startLocation||t.transitionTo(o,(function(t){r&&Ni(e,t,n,!0)}))};window.addEventListener("popstate",o),this.listeners.push((function(){window.removeEventListener("popstate",o)}))}},e.prototype.go=function(t){window.history.go(t)},e.prototype.push=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){Gi(ei(r.base+t.fullPath)),Ni(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){Ki(ei(r.base+t.fullPath)),Ni(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.ensureURL=function(t){if(pa(this.base)!==this.current.fullPath){var e=ei(this.base+this.current.fullPath);t?Gi(e):Ki(e)}},e.prototype.getCurrentLocation=function(){return pa(this.base)},e}(ca);function pa(t){var e=window.location.pathname;return t&&0===e.toLowerCase().indexOf(t.toLowerCase())&&(e=e.slice(t.length)),(e||"/")+window.location.search+window.location.hash}var da=function(t){function e(e,n,r){t.call(this,e,n),r&&function(t){var e=pa(t);if(!/^\/#/.test(e))return window.location.replace(ei(t+"/#"+e)),!0}(this.base)||ha()}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setupListeners=function(){var t=this;if(!(this.listeners.length>0)){var e=this.router.options.scrollBehavior,n=Wi&&e;n&&this.listeners.push(Mi());var r=function(){var e=t.current;ha()&&t.transitionTo(va(),(function(r){n&&Ni(t.router,r,e,!0),Wi||ga(r.fullPath)}))},o=Wi?"popstate":"hashchange";window.addEventListener(o,r),this.listeners.push((function(){window.removeEventListener(o,r)}))}},e.prototype.push=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){ya(t.fullPath),Ni(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){ga(t.fullPath),Ni(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.go=function(t){window.history.go(t)},e.prototype.ensureURL=function(t){var e=this.current.fullPath;va()!==e&&(t?ya(e):ga(e))},e.prototype.getCurrentLocation=function(){return va()},e}(ca);function ha(){var t=va();return"/"===t.charAt(0)||(ga("/"+t),!1)}function va(){var t=window.location.href,e=t.indexOf("#");return e<0?"":t=t.slice(e+1)}function ma(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function ya(t){Wi?Gi(ma(t)):window.location.hash=t}function ga(t){Wi?Ki(ma(t)):window.location.replace(ma(t))}var ba=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){var t=e.current;e.index=n,e.updateRoute(r),e.router.afterHooks.forEach((function(e){e&&e(r,t)}))}),(function(t){na(t,Yi.duplicated)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(ca),xa=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=Ai(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!Wi&&!1!==t.fallback,this.fallback&&(e="hash"),Si||(e="abstract"),this.mode=e,e){case"history":this.history=new fa(this,t.base);break;case"hash":this.history=new da(this,t.base,this.fallback);break;case"abstract":this.history=new ba(this,t.base);break;default:0}},_a={currentRoute:{configurable:!0}};function wa(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}xa.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},_a.currentRoute.get=function(){return this.history&&this.history.current},xa.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null),e.app||e.history.teardown()})),!this.app){this.app=t;var n=this.history;if(n instanceof fa||n instanceof da){var r=function(t){n.setupListeners(),function(t){var r=n.current,o=e.options.scrollBehavior;Wi&&o&&"fullPath"in t&&Ni(e,t,r,!1)}(t)};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},xa.prototype.beforeEach=function(t){return wa(this.beforeHooks,t)},xa.prototype.beforeResolve=function(t){return wa(this.resolveHooks,t)},xa.prototype.afterEach=function(t){return wa(this.afterHooks,t)},xa.prototype.onReady=function(t,e){this.history.onReady(t,e)},xa.prototype.onError=function(t){this.history.onError(t)},xa.prototype.push=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.push(t,e,n)}));this.history.push(t,e,n)},xa.prototype.replace=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.replace(t,e,n)}));this.history.replace(t,e,n)},xa.prototype.go=function(t){this.history.go(t)},xa.prototype.back=function(){this.go(-1)},xa.prototype.forward=function(){this.go(1)},xa.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},xa.prototype.resolve=function(t,e,n){var r=xi(t,e=e||this.history.current,n,this),o=this.match(r,e),i=o.redirectedFrom||o.fullPath;return{location:r,route:o,href:function(t,e,n){var r="hash"===n?"#"+e:e;return t?ei(t+"/"+r):r}(this.history.base,i,this.mode),normalizedTo:r,resolved:o}},xa.prototype.getRoutes=function(){return this.matcher.getRoutes()},xa.prototype.addRoute=function(t,e){this.matcher.addRoute(t,e),this.history.current!==Wo&&this.history.transitionTo(this.history.getCurrentLocation())},xa.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==Wo&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(xa.prototype,_a),xa.install=function t(e){if(!t.installed||_i!==e){t.installed=!0,_i=e;var n=function(t){return void 0!==t},r=function(t,e){var r=t.$options._parentVnode;n(r)&&n(r=r.data)&&n(r=r.registerRouteInstance)&&r(t,e)};e.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,r(this,this)},destroyed:function(){r(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("RouterView",Qo),e.component("RouterLink",Oi);var o=e.config.optionMergeStrategies;o.beforeRouteEnter=o.beforeRouteLeave=o.beforeRouteUpdate=o.created}},xa.version="3.5.1",xa.isNavigationFailure=na,xa.NavigationFailureType=Yi,xa.START_LOCATION=Wo,Si&&window.Vue&&window.Vue.use(xa);var Oa=xa;n(197),n(130),n(198),n(95),n(200),n(96),n(97),n(201);function ka(t){t.locales&&Object.keys(t.locales).forEach((function(e){t.locales[e].path=e})),Object.freeze(t)}n(40),n(41),n(57);var Sa=n(43),ja=(n(136),n(67),n(46),n(180),n(181),{NotFound:function(){return n.e(11).then(n.bind(null,507))},Layout:function(){return Promise.all([n.e(0),n.e(4),n.e(9)]).then(n.bind(null,503))}}),Ea={"v-3e4eb19e":function(){return n.e(12).then(n.bind(null,511))},"v-1575bc4c":function(){return n.e(13).then(n.bind(null,512))},"v-5e970efe":function(){return n.e(14).then(n.bind(null,513))},"v-02297f0c":function(){return n.e(16).then(n.bind(null,514))},"v-324db8fa":function(){return n.e(15).then(n.bind(null,515))},"v-87cd438c":function(){return n.e(17).then(n.bind(null,516))},"v-b7bb3f8c":function(){return n.e(18).then(n.bind(null,517))},"v-701af59a":function(){return n.e(19).then(n.bind(null,518))},"v-7e0c66cc":function(){return n.e(20).then(n.bind(null,519))},"v-5414df9a":function(){return n.e(21).then(n.bind(null,520))},"v-f5d90ecc":function(){return n.e(22).then(n.bind(null,521))},"v-50fd8636":function(){return n.e(23).then(n.bind(null,522))},"v-5cae5c9a":function(){return n.e(24).then(n.bind(null,523))},"v-029550a4":function(){return n.e(25).then(n.bind(null,524))},"v-1eb4837a":function(){return n.e(26).then(n.bind(null,525))},"v-0fec0a48":function(){return n.e(27).then(n.bind(null,526))},"v-257855fa":function(){return n.e(28).then(n.bind(null,527))},"v-182e9994":function(){return n.e(29).then(n.bind(null,528))},"v-e2f544cc":function(){return n.e(30).then(n.bind(null,529))},"v-237b678c":function(){return n.e(31).then(n.bind(null,530))},"v-418595a8":function(){return n.e(32).then(n.bind(null,531))},"v-763fe15a":function(){return n.e(33).then(n.bind(null,532))},"v-4684ade4":function(){return n.e(34).then(n.bind(null,533))},"v-643d93cc":function(){return n.e(35).then(n.bind(null,534))},"v-255ff2da":function(){return n.e(36).then(n.bind(null,535))},"v-171a600c":function(){return n.e(37).then(n.bind(null,536))},"v-27e6a2fa":function(){return n.e(38).then(n.bind(null,537))},"v-69030a13":function(){return n.e(39).then(n.bind(null,538))},"v-3f455fde":function(){return n.e(40).then(n.bind(null,539))},"v-fa8e069c":function(){return n.e(41).then(n.bind(null,540))},"v-610cca9e":function(){return n.e(42).then(n.bind(null,541))},"v-8f6845c8":function(){return n.e(43).then(n.bind(null,542))}};function Aa(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var Ca=/-(\w)/g,$a=Aa((function(t){return t.replace(Ca,(function(t,e){return e?e.toUpperCase():""}))})),Pa=/\B([A-Z])/g,Ta=Aa((function(t){return t.replace(Pa,"-$1").toLowerCase()})),La=Aa((function(t){return t.charAt(0).toUpperCase()+t.slice(1)}));function Ra(t,e){if(e)return t(e)?t(e):e.includes("-")?t(La($a(e))):t(La(e))||t(Ta(e))}var Ia=Object.assign({},ja,Ea),Ma=function(t){return Ia[t]},Na=function(t){return Ea[t]},Da=function(t){return ja[t]},Fa=function(t){return Lo.component(t)};function Ua(t){return Ra(Na,t)}function Ba(t){return Ra(Da,t)}function za(t){return Ra(Ma,t)}function Va(t){return Ra(Fa,t)}function qa(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return Promise.all(e.filter((function(t){return t})).map(function(){var t=Object(r.a)(regeneratorRuntime.mark((function t(e){var n;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(Va(e)||!za(e)){t.next=5;break}return t.next=3,za(e)();case 3:n=t.sent,Lo.component(e,n.default);case 5:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()))}function Ha(t,e){"undefined"!=typeof window&&window.__VUEPRESS__&&(window.__VUEPRESS__[t]=e)}n(98);var Wa=n(64);function Ga(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t)){var n=[],r=!0,o=!1,i=void 0;try{for(var a,s=t[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{r||null==s.return||s.return()}finally{if(o)throw i}}return n}}(t,e)||Object(Wa.a)(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}n(172),n(182);var Ka=n(162),Xa=n.n(Ka),Ya={created:function(){if(this.siteMeta=this.$site.headTags.filter((function(t){return"meta"===Ga(t,1)[0]})).map((function(t){var e=Ga(t,2);e[0];return e[1]})),this.$ssrContext){var t=this.getMergedMetaTags();this.$ssrContext.title=this.$title,this.$ssrContext.lang=this.$lang,this.$ssrContext.pageMeta=(e=t)?e.map((function(t){var e="<meta";return Object.keys(t).forEach((function(n){e+=" ".concat(n,'="').concat(t[n],'"')})),e+">"})).join("\n "):"",this.$ssrContext.canonicalLink=Qa(this.$canonicalUrl)}var e},mounted:function(){this.currentMetaTags=Object(Sa.a)(document.querySelectorAll("meta")),this.updateMeta(),this.updateCanonicalLink()},methods:{updateMeta:function(){document.title=this.$title,document.documentElement.lang=this.$lang;var t=this.getMergedMetaTags();this.currentMetaTags=Za(t,this.currentMetaTags)},getMergedMetaTags:function(){var t=this.$page.frontmatter.meta||[];return Xa()([{name:"description",content:this.$description}],t,this.siteMeta,ts)},updateCanonicalLink:function(){Ja(),this.$canonicalUrl&&document.head.insertAdjacentHTML("beforeend",Qa(this.$canonicalUrl))}},watch:{$page:function(){this.updateMeta(),this.updateCanonicalLink()}},beforeDestroy:function(){Za(null,this.currentMetaTags),Ja()}};function Ja(){var t=document.querySelector("link[rel='canonical']");t&&t.remove()}function Qa(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return t?'<link href="'.concat(t,'" rel="canonical" />'):""}function Za(t,e){if(e&&Object(Sa.a)(e).filter((function(t){return t.parentNode===document.head})).forEach((function(t){return document.head.removeChild(t)})),t)return t.map((function(t){var e=document.createElement("meta");return Object.keys(t).forEach((function(n){e.setAttribute(n,t[n])})),document.head.appendChild(e),e}))}function ts(t){for(var e=0,n=["name","property","itemprop"];e<n.length;e++){var r=n[e];if(t.hasOwnProperty(r))return t[r]+r}return JSON.stringify(t)}n(93);var es=n(163),ns={mounted:function(){window.addEventListener("scroll",this.onScroll)},methods:{onScroll:n.n(es)()((function(){this.setActiveHash()}),300),setActiveHash:function(){for(var t=this,e=[].slice.call(document.querySelectorAll(".sidebar-link")),n=[].slice.call(document.querySelectorAll(".header-anchor")).filter((function(t){return e.some((function(e){return e.hash===t.hash}))})),r=Math.max(window.pageYOffset,document.documentElement.scrollTop,document.body.scrollTop),o=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight),i=window.innerHeight+r,a=0;a<n.length;a++){var s=n[a],c=n[a+1],u=0===a&&0===r||r>=s.parentElement.offsetTop+10&&(!c||r<c.parentElement.offsetTop-10),l=decodeURIComponent(this.$route.hash);if(u&&l!==decodeURIComponent(s.hash)){var f=s;if(i===o)for(var p=a+1;p<n.length;p++)if(l===decodeURIComponent(n[p].hash))return;return this.$vuepress.$set("disableScrollBehavior",!0),void this.$router.replace(decodeURIComponent(f.hash),(function(){t.$nextTick((function(){t.$vuepress.$set("disableScrollBehavior",!1)}))}))}}}},beforeDestroy:function(){window.removeEventListener("scroll",this.onScroll)}},rs=(n(83),n(65)),os=n.n(rs),is=[Ya,ns,{mounted:function(){var t=this;os.a.configure({showSpinner:!1}),this.$router.beforeEach((function(t,e,n){t.path===e.path||Lo.component(t.name)||os.a.start(),n()})),this.$router.afterEach((function(){os.a.done(),t.isSidebarOpen=!1}))}}],as={name:"GlobalLayout",computed:{layout:function(){var t=this.getLayout();return Ha("layout",t),Lo.component(t)}},methods:{getLayout:function(){if(this.$page.path){var t=this.$page.frontmatter.layout;return t&&(this.$vuepress.getLayoutAsyncComponent(t)||this.$vuepress.getVueComponent(t))?t:"Layout"}return"NotFound"}}},ss=n(45),cs=Object(ss.a)(as,(function(){var t=this.$createElement;return(this._self._c||t)(this.layout,{tag:"component"})}),[],!1,null,null,null).exports;!function(t,e,n){var r;switch(e){case"components":t[e]||(t[e]={}),Object.assign(t[e],n);break;case"mixins":t[e]||(t[e]=[]),(r=t[e]).push.apply(r,Object(Sa.a)(n));break;default:throw new Error("Unknown option name.")}}(cs,"mixins",is);var us=[{name:"v-3e4eb19e",path:"/docs/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-3e4eb19e").then(n)}},{path:"/docs/index.html",redirect:"/docs/"},{name:"v-1575bc4c",path:"/misc/3pl/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-1575bc4c").then(n)}},{path:"/misc/3pl/index.html",redirect:"/misc/3pl/"},{path:"/docs/misc/3pl.html",redirect:"/misc/3pl/"},{name:"v-5e970efe",path:"/misc/configuring-the-repl/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-5e970efe").then(n)}},{path:"/misc/configuring-the-repl/index.html",redirect:"/misc/configuring-the-repl/"},{path:"/docs/misc/configuring-the-repl.html",redirect:"/misc/configuring-the-repl/"},{name:"v-02297f0c",path:"/misc/error/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-02297f0c").then(n)}},{path:"/misc/error/index.html",redirect:"/misc/error/"},{path:"/docs/misc/error.html",redirect:"/misc/error/"},{name:"v-324db8fa",path:"/misc/credits/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-324db8fa").then(n)}},{path:"/misc/credits/index.html",redirect:"/misc/credits/"},{path:"/docs/misc/credits.html",redirect:"/misc/credits/"},{name:"v-87cd438c",path:"/misc/runtime/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-87cd438c").then(n)}},{path:"/misc/runtime/index.html",redirect:"/misc/runtime/"},{path:"/docs/misc/runtime.html",redirect:"/misc/runtime/"},{name:"v-b7bb3f8c",path:"/misc/technical-details/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-b7bb3f8c").then(n)}},{path:"/misc/technical-details/index.html",redirect:"/misc/technical-details/"},{path:"/docs/misc/technical-details.html",redirect:"/misc/technical-details/"},{name:"v-701af59a",path:"/misc/upgrade-from-abs-1-to-2/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-701af59a").then(n)}},{path:"/misc/upgrade-from-abs-1-to-2/index.html",redirect:"/misc/upgrade-from-abs-1-to-2/"},{path:"/docs/misc/upgrade-from-abs-1-to-2.html",redirect:"/misc/upgrade-from-abs-1-to-2/"},{name:"v-7e0c66cc",path:"/stdlib/cli/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-7e0c66cc").then(n)}},{path:"/stdlib/cli/index.html",redirect:"/stdlib/cli/"},{path:"/docs/standard-lib/cli.html",redirect:"/stdlib/cli/"},{name:"v-5414df9a",path:"/stdlib/intro/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-5414df9a").then(n)}},{path:"/stdlib/intro/index.html",redirect:"/stdlib/intro/"},{path:"/docs/standard-lib/intro.html",redirect:"/stdlib/intro/"},{name:"v-f5d90ecc",path:"/stdlib/runtime/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-f5d90ecc").then(n)}},{path:"/stdlib/runtime/index.html",redirect:"/stdlib/runtime/"},{path:"/docs/standard-lib/runtime.html",redirect:"/stdlib/runtime/"},{name:"v-50fd8636",path:"/stdlib/util/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-50fd8636").then(n)}},{path:"/stdlib/util/index.html",redirect:"/stdlib/util/"},{path:"/docs/standard-lib/util.html",redirect:"/stdlib/util/"},{name:"v-5cae5c9a",path:"/syntax/assignments/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-5cae5c9a").then(n)}},{path:"/syntax/assignments/index.html",redirect:"/syntax/assignments/"},{path:"/docs/syntax/assignments.html",redirect:"/syntax/assignments/"},{name:"v-029550a4",path:"/syntax/comments/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-029550a4").then(n)}},{path:"/syntax/comments/index.html",redirect:"/syntax/comments/"},{path:"/docs/syntax/comments.html",redirect:"/syntax/comments/"},{name:"v-1eb4837a",path:"/syntax/for/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-1eb4837a").then(n)}},{path:"/syntax/for/index.html",redirect:"/syntax/for/"},{path:"/docs/syntax/for.html",redirect:"/syntax/for/"},{name:"v-0fec0a48",path:"/syntax/if/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-0fec0a48").then(n)}},{path:"/syntax/if/index.html",redirect:"/syntax/if/"},{path:"/docs/syntax/if.html",redirect:"/syntax/if/"},{name:"v-257855fa",path:"/syntax/operators/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-257855fa").then(n)}},{path:"/syntax/operators/index.html",redirect:"/syntax/operators/"},{path:"/docs/syntax/operators.html",redirect:"/syntax/operators/"},{name:"v-182e9994",path:"/syntax/return/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-182e9994").then(n)}},{path:"/syntax/return/index.html",redirect:"/syntax/return/"},{path:"/docs/syntax/return.html",redirect:"/syntax/return/"},{name:"v-e2f544cc",path:"/syntax/system-commands/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-e2f544cc").then(n)}},{path:"/syntax/system-commands/index.html",redirect:"/syntax/system-commands/"},{path:"/docs/syntax/system-commands.html",redirect:"/syntax/system-commands/"},{name:"v-237b678c",path:"/syntax/while/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-237b678c").then(n)}},{path:"/syntax/while/index.html",redirect:"/syntax/while/"},{path:"/docs/syntax/while.html",redirect:"/syntax/while/"},{name:"v-418595a8",path:"/types/array/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-418595a8").then(n)}},{path:"/types/array/index.html",redirect:"/types/array/"},{path:"/docs/types/array.html",redirect:"/types/array/"},{name:"v-763fe15a",path:"/types/builtin-function/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-763fe15a").then(n)}},{path:"/types/builtin-function/index.html",redirect:"/types/builtin-function/"},{path:"/docs/types/builtin-function.html",redirect:"/types/builtin-function/"},{name:"v-4684ade4",path:"/types/decorator/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-4684ade4").then(n)}},{path:"/types/decorator/index.html",redirect:"/types/decorator/"},{path:"/docs/types/decorator.html",redirect:"/types/decorator/"},{name:"v-643d93cc",path:"/types/function/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-643d93cc").then(n)}},{path:"/types/function/index.html",redirect:"/types/function/"},{path:"/docs/types/function.html",redirect:"/types/function/"},{name:"v-255ff2da",path:"/types/hash/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-255ff2da").then(n)}},{path:"/types/hash/index.html",redirect:"/types/hash/"},{path:"/docs/types/hash.html",redirect:"/types/hash/"},{name:"v-171a600c",path:"/types/number/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-171a600c").then(n)}},{path:"/types/number/index.html",redirect:"/types/number/"},{path:"/docs/types/number.html",redirect:"/types/number/"},{name:"v-27e6a2fa",path:"/types/string/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-27e6a2fa").then(n)}},{path:"/types/string/index.html",redirect:"/types/string/"},{path:"/docs/types/string.html",redirect:"/types/string/"},{name:"v-69030a13",path:"/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-69030a13").then(n)}},{path:"/index.html",redirect:"/"},{name:"v-3f455fde",path:"/introduction/why-another-scripting-language/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-3f455fde").then(n)}},{path:"/introduction/why-another-scripting-language/index.html",redirect:"/introduction/why-another-scripting-language/"},{path:"/introduction/",redirect:"/introduction/why-another-scripting-language/"},{name:"v-fa8e069c",path:"/introduction/how-to-run-abs-code/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-fa8e069c").then(n)}},{path:"/introduction/how-to-run-abs-code/index.html",redirect:"/introduction/how-to-run-abs-code/"},{path:"/introduction/how-to-run-abs-code.html",redirect:"/introduction/how-to-run-abs-code/"},{name:"v-610cca9e",path:"/playground/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-610cca9e").then(n)}},{path:"/playground/index.html",redirect:"/playground/"},{name:"v-8f6845c8",path:"/quickstart.html",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-8f6845c8").then(n)}},{path:"*",component:cs}],ls={title:"The ABS programing language",description:"Home of the ABS programming language: the joy of shell scripting.",base:"/",headTags:[["meta",{name:"theme-color",content:"#ec5975"}],["meta",{name:"apple-mobile-web-app-capable",content:"yes"}],["meta",{name:"apple-mobile-web-app-status-bar-style",content:"black"}],["link",{rel:"preconnect",href:"https://fonts.gstatic.com"}],["link",{rel:"stylesheet",href:"https://fonts.googleapis.com/css2?family=Inter:wght@300;500&display=swap"}],["link",{rel:"stylesheet",href:"https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@300;400;500;700;900&display=swap"}]],pages:[{title:"Getting Started",frontmatter:{},regularPath:"/docs/",relativePath:"docs/README.md",key:"v-3e4eb19e",path:"/docs/"},{title:"Installing 3rd party libraries",frontmatter:{permalink:"/misc/3pl"},regularPath:"/docs/misc/3pl.html",relativePath:"docs/misc/3pl.md",key:"v-1575bc4c",path:"/misc/3pl/",headers:[{level:2,title:"Supported hosting platforms",slug:"supported-hosting-platforms"}]},{title:"Configuring the REPL",frontmatter:{permalink:"/misc/configuring-the-repl"},regularPath:"/docs/misc/configuring-the-repl.html",relativePath:"docs/misc/configuring-the-repl.md",key:"v-5e970efe",path:"/misc/configuring-the-repl/",headers:[{level:2,title:"Configuring the ABS REPL Command Line Prompt",slug:"configuring-the-abs-repl-command-line-prompt"}]},{title:"Errors",frontmatter:{permalink:"/misc/error"},regularPath:"/docs/misc/error.html",relativePath:"docs/misc/error.md",key:"v-02297f0c",path:"/misc/error/"},{title:"Credits",frontmatter:{permalink:"/misc/credits"},regularPath:"/docs/misc/credits.html",relativePath:"docs/misc/credits.md",key:"v-324db8fa",path:"/misc/credits/",headers:[{level:2,title:"What next?",slug:"what-next"}]},{title:"Runtime",frontmatter:{permalink:"/misc/runtime"},regularPath:"/docs/misc/runtime.html",relativePath:"docs/misc/runtime.md",key:"v-87cd438c",path:"/misc/runtime/",headers:[{level:2,title:"ABS init file",slug:"abs-init-file"},{level:2,title:"ABS_INTERACTIVE",slug:"abs-interactive"}]},{title:"A few technical details...",frontmatter:{permalink:"/misc/technical-details"},regularPath:"/docs/misc/technical-details.html",relativePath:"docs/misc/technical-details.md",key:"v-b7bb3f8c",path:"/misc/technical-details/",headers:[{level:2,title:"Why is ABS interpreted?",slug:"why-is-abs-interpreted"},{level:2,title:"Why Go?",slug:"why-go"},{level:2,title:"Development & contributing",slug:"development-contributing"},{level:2,title:"Testing",slug:"testing"},{level:3,title:"Interpreter Error Location",slug:"interpreter-error-location"},{level:3,title:"String tests",slug:"string-tests"},{level:3,title:"Array and hash assignment tests",slug:"array-and-hash-assignment-tests"}]},{title:"Upgrading from ABS 1 to 2",frontmatter:{permalink:"/misc/upgrade-from-abs-1-to-2"},regularPath:"/docs/misc/upgrade-from-abs-1-to-2.html",relativePath:"docs/misc/upgrade-from-abs-1-to-2.md",key:"v-701af59a",path:"/misc/upgrade-from-abs-1-to-2/",headers:[{level:2,title:"Deprecated functions",slug:"deprecated-functions"},{level:2,title:"Misc",slug:"misc"},{level:2,title:"What more?",slug:"what-more"}]},{title:"@cli",frontmatter:{permalink:"/stdlib/cli"},regularPath:"/docs/standard-lib/cli.html",relativePath:"docs/standard-lib/cli.md",key:"v-7e0c66cc",path:"/stdlib/cli/",headers:[{level:2,title:"API",slug:"api"},{level:3,title:"@cli.cmd(name, description, default_flags)",slug:"cli-cmd-name-description-default-flags"},{level:3,title:"@cli.run()",slug:"cli-run"},{level:3,title:"@cli.repl()",slug:"cli-repl"},{level:2,title:"Example CLI app",slug:"example-cli-app"},{level:2,title:"Example REPL app",slug:"example-repl-app"}]},{title:"Standard library",frontmatter:{permalink:"/stdlib/intro"},regularPath:"/docs/standard-lib/intro.html",relativePath:"docs/standard-lib/intro.md",key:"v-5414df9a",path:"/stdlib/intro/",headers:[{level:2,title:"Requiring a standard library module",slug:"requiring-a-standard-library-module"},{level:2,title:"Technical details",slug:"technical-details"}]},{title:"@runtime",frontmatter:{permalink:"/stdlib/runtime"},regularPath:"/docs/standard-lib/runtime.html",relativePath:"docs/standard-lib/runtime.md",key:"v-f5d90ecc",path:"/stdlib/runtime/",headers:[{level:2,title:"API",slug:"api"},{level:3,title:"@runtime.version",slug:"runtime-version"},{level:3,title:"@runtime.name",slug:"runtime-name"}]},{title:"@util",frontmatter:{permalink:"/stdlib/util"},regularPath:"/docs/standard-lib/util.html",relativePath:"docs/standard-lib/util.md",key:"v-50fd8636",path:"/stdlib/util/",headers:[{level:2,title:"API",slug:"api"},{level:3,title:"@util.memoize(ttl)",slug:"util-memoize-ttl"}]},{title:"Assignments",frontmatter:{permalink:"/syntax/assignments"},regularPath:"/docs/syntax/assignments.html",relativePath:"docs/syntax/assignments.md",key:"v-5cae5c9a",path:"/syntax/assignments/",headers:[{level:2,title:"Variable names",slug:"variable-names"}]},{title:"Comments",frontmatter:{permalink:"/syntax/comments"},regularPath:"/docs/syntax/comments.html",relativePath:"docs/syntax/comments.md",key:"v-029550a4",path:"/syntax/comments/"},{title:"For loops",frontmatter:{permalink:"/syntax/for"},regularPath:"/docs/syntax/for.html",relativePath:"docs/syntax/for.md",key:"v-1eb4837a",path:"/syntax/for/",headers:[{level:2,title:"Standard form",slug:"standard-form"},{level:2,title:"In form",slug:"in-form"},{level:2,title:"break and continue",slug:"break-and-continue"},{level:2,title:"For ... else ...",slug:"for-else"}]},{title:"If ... else",frontmatter:{permalink:"/syntax/if"},regularPath:"/docs/syntax/if.html",relativePath:"docs/syntax/if.md",key:"v-0fec0a48",path:"/syntax/if/"},{title:"Operators",frontmatter:{permalink:"/syntax/operators"},regularPath:"/docs/syntax/operators.html",relativePath:"docs/syntax/operators.md",key:"v-257855fa",path:"/syntax/operators/",headers:[{level:2,title:"==",slug:""},{level:2,title:"!=",slug:"-2"},{level:2,title:"+",slug:"-3"},{level:2,title:"+=",slug:"-4"},{level:2,title:"-",slug:"-5"},{level:2,title:"-=",slug:"-6"},{level:2,title:"*",slug:"-7"},{level:2,title:"*=",slug:"-8"},{level:2,title:"/",slug:"-9"},{level:2,title:"/=",slug:"-10"},{level:2,title:"in",slug:"in"},{level:2,title:"!in",slug:"in-2"},{level:2,title:"**",slug:"-11"},{level:2,title:"**=",slug:"-12"},{level:2,title:"%",slug:"-13"},{level:2,title:"%=",slug:"-14"},{level:2,title:">",slug:"-15"},{level:2,title:">=",slug:"-16"},{level:2,title:"<",slug:"-17"},{level:2,title:"<=",slug:"-18"},{level:2,title:"",slug:"-19"},{level:2,title:"&&",slug:"-20"},{level:2,title:"||",slug:"-21"},{level:2,title:".",slug:"-22"},{level:2,title:"?.",slug:"-23"},{level:2,title:"..",slug:"-24"},{level:2,title:"!",slug:"-25"},{level:2,title:"!!",slug:"-26"},{level:2,title:"~",slug:"-27"},{level:2,title:"&",slug:"-28"},{level:2,title:"|",slug:"-29"},{level:2,title:"^",slug:"-30"},{level:2,title:">>",slug:"-31"},{level:2,title:"<<",slug:"-32"}]},{title:"Returning values",frontmatter:{permalink:"/syntax/return"},regularPath:"/docs/syntax/return.html",relativePath:"docs/syntax/return.md",key:"v-182e9994",path:"/syntax/return/"},{title:"System (shell) commands",frontmatter:{permalink:"/syntax/system-commands"},regularPath:"/docs/syntax/system-commands.html",relativePath:"docs/syntax/system-commands.md",key:"v-e2f544cc",path:"/syntax/system-commands/",headers:[{level:2,title:"Executing commands in background",slug:"executing-commands-in-background"},{level:2,title:"Interpolation",slug:"interpolation"},{level:2,title:"Using a different shell",slug:"using-a-different-shell"},{level:2,title:"Alternative \\$() syntax",slug:"alternative-syntax"},{level:2,title:"Executing commands without capturing I/O",slug:"executing-commands-without-capturing-i-o"}]},{title:"While",frontmatter:{permalink:"/syntax/while"},regularPath:"/docs/syntax/while.html",relativePath:"docs/syntax/while.md",key:"v-237b678c",path:"/syntax/while/"},{title:"Array",frontmatter:{permalink:"/types/array"},regularPath:"/docs/types/array.html",relativePath:"docs/types/array.md",key:"v-418595a8",path:"/types/array/",headers:[{level:2,title:"Supported functions",slug:"supported-functions"},{level:3,title:"chunk(size)",slug:"chunk-size"},{level:3,title:"diff(array)",slug:"diff-array"},{level:3,title:"diff_symmetric(array)",slug:"diff-symmetric-array"},{level:3,title:"every(f)",slug:"every-f"},{level:3,title:"filter(f)",slug:"filter-f"},{level:3,title:"find(f)",slug:"find-f"},{level:3,title:"flatten()",slug:"flatten"},{level:3,title:"flatten_deep()",slug:"flatten-deep"},{level:3,title:"intersect(array)",slug:"intersect-array"},{level:3,title:"join([separator])",slug:"join-separator"},{level:3,title:"keys()",slug:"keys"},{level:3,title:"len()",slug:"len"},{level:3,title:"map(f)",slug:"map-f"},{level:3,title:"max()",slug:"max"},{level:3,title:"min()",slug:"min"},{level:3,title:"partition(f)",slug:"partition-f"},{level:3,title:"pop()",slug:"pop"},{level:3,title:"push(x)",slug:"push-x"},{level:3,title:"reduce(f, accumulator)",slug:"reduce-f-accumulator"},{level:3,title:"reverse()",slug:"reverse"},{level:3,title:"shift()",slug:"shift"},{level:3,title:"shuffle()",slug:"shuffle"},{level:3,title:"some(f)",slug:"some-f"},{level:3,title:"sort()",slug:"sort"},{level:3,title:"str()",slug:"str"},{level:3,title:"sum()",slug:"sum"},{level:3,title:"tsv([separator[, header]])",slug:"tsv-separator-header"},{level:3,title:"union(array)",slug:"union-array"},{level:3,title:"unique()",slug:"unique"}]},{title:"Builtin function",frontmatter:{permalink:"/types/builtin-function"},regularPath:"/docs/types/builtin-function.html",relativePath:"docs/types/builtin-function.md",key:"v-763fe15a",path:"/types/builtin-function/",headers:[{level:2,title:"Generic builtin functions",slug:"generic-builtin-functions"},{level:3,title:"arg(n)",slug:"arg-n"},{level:3,title:"args()",slug:"args"},{level:3,title:"cd() or cd(path)",slug:"cd-or-cd-path"},{level:3,title:"echo(var)",slug:"echo-var"},{level:3,title:"env(str)",slug:"env-str"},{level:3,title:"eval(str)",slug:"eval-str"},{level:3,title:"exit(code [, message])",slug:"exit-code-message"},{level:3,title:"flag(str)",slug:"flag-str"},{level:3,title:"pwd()",slug:"pwd"},{level:3,title:"rand(max)",slug:"rand-max"},{level:3,title:"require(pathtofile.abs)",slug:"require-path-to-file-abs"},{level:3,title:"sleep(ms)",slug:"sleep-ms"},{level:3,title:"source(pathtofile.abs)",slug:"source-path-to-file-abs"},{level:3,title:"stdin()",slug:"stdin"},{level:3,title:"type(var)",slug:"type-var"},{level:3,title:"unix_ms()",slug:"unix-ms"}]},{title:"Decorator",frontmatter:{permalink:"/types/decorator"},regularPath:"/docs/types/decorator.html",relativePath:"docs/types/decorator.md",key:"v-4684ade4",path:"/types/decorator/",headers:[{level:2,title:"Simple decorators",slug:"simple-decorators"},{level:2,title:"Decorators with arguments",slug:"decorators-with-arguments"}]},{title:"Function",frontmatter:{permalink:"/types/function"},regularPath:"/docs/types/function.html",relativePath:"docs/types/function.md",key:"v-643d93cc",path:"/types/function/",headers:[{level:2,title:"Named functions",slug:"named-functions"},{level:2,title:"Optional parameters",slug:"optional-parameters"},{level:2,title:"Accessing function arguments",slug:"accessing-function-arguments"},{level:2,title:"Supported functions",slug:"supported-functions"},{level:3,title:"call(args)",slug:"call-args"},{level:3,title:"str()",slug:"str"}]},{title:"Hash",frontmatter:{permalink:"/types/hash"},regularPath:"/docs/types/hash.html",relativePath:"docs/types/hash.md",key:"v-255ff2da",path:"/types/hash/",headers:[{level:2,title:"Supported functions",slug:"supported-functions"},{level:3,title:"items()",slug:"items"},{level:3,title:"keys()",slug:"keys"},{level:3,title:"pop(k)",slug:"pop-k"},{level:3,title:"str()",slug:"str"},{level:3,title:"values()",slug:"values"},{level:2,title:"User-defined functions",slug:"user-defined-functions"}]},{title:"Number",frontmatter:{permalink:"/types/number"},regularPath:"/docs/types/number.html",relativePath:"docs/types/number.md",key:"v-171a600c",path:"/types/number/",headers:[{level:2,title:"Supported functions",slug:"supported-functions"},{level:3,title:"between(min, max)",slug:"between-min-max"},{level:3,title:"ceil()",slug:"ceil"},{level:3,title:"clamp(min, max)",slug:"clamp-min-max"},{level:3,title:"floor()",slug:"floor"},{level:3,title:"int()",slug:"int"},{level:3,title:"number()",slug:"number-2"},{level:3,title:"round([precision])",slug:"round-precision"},{level:3,title:"str()",slug:"str"}]},{title:"String",frontmatter:{permalink:"/types/string"},regularPath:"/docs/types/string.html",relativePath:"docs/types/string.md",key:"v-27e6a2fa",path:"/types/string/",headers:[{level:2,title:"Interpolation",slug:"interpolation"},{level:2,title:"Special characters embedded in strings",slug:"special-characters-embedded-in-strings"},{level:2,title:"Unicode support",slug:"unicode-support"},{level:3,title:"Working with special characters in string functions",slug:"working-with-special-characters-in-string-functions"},{level:2,title:"Supported functions",slug:"supported-functions"},{level:3,title:"any(str)",slug:"any-str"},{level:3,title:"camel()",slug:"camel"},{level:3,title:"ceil()",slug:"ceil"},{level:3,title:"floor()",slug:"floor"},{level:3,title:"fmt()",slug:"fmt"},{level:3,title:"index(str)",slug:"index-str"},{level:3,title:"int()",slug:"int"},{level:3,title:"is_number()",slug:"is-number"},{level:3,title:"json()",slug:"json"},{level:3,title:"kebab()",slug:"kebab"},{level:3,title:"last_index(str)",slug:"last-index-str"},{level:3,title:"len()",slug:"len"},{level:3,title:"lines()",slug:"lines"},{level:3,title:"lower()",slug:"lower"},{level:3,title:"number()",slug:"number"},{level:3,title:"prefix(str)",slug:"prefix-str"},{level:3,title:"repeat(i)",slug:"repeat-i"},{level:3,title:"replace(str1, str2 [, n])",slug:"replace-str1-str2-n"},{level:3,title:"reverse()",slug:"reverse"},{level:3,title:"round(precision?)",slug:"round-precision"},{level:3,title:"snake()",slug:"snake"},{level:3,title:"split(separator)",slug:"split-separator"},{level:3,title:"str()",slug:"str"},{level:3,title:"suffix(str)",slug:"suffix-str"},{level:3,title:"title()",slug:"title"},{level:3,title:"trim()",slug:"trim"},{level:3,title:"trim_by(str)",slug:"trim-by-str"},{level:3,title:"upper()",slug:"upper"}]},{title:"Home",frontmatter:{home:!0,heroImage:"/abs-horizontal.png",tagline:"Bring back the joy of shell scripting.",actionText:"Quick Start →",actionLink:"/quickstart/",footer:"©️ 2021 -- No developers were harmed in the making of this language"},regularPath:"/",relativePath:"index.md",key:"v-69030a13",path:"/"},{title:"Why another scripting language?",frontmatter:{permalink:"/introduction/why-another-scripting-language"},regularPath:"/introduction/",relativePath:"introduction/README.md",key:"v-3f455fde",path:"/introduction/why-another-scripting-language/",headers:[{level:2,title:"Next",slug:"next"}]},{title:"How to run ABS code",frontmatter:{permalink:"/introduction/how-to-run-abs-code"},regularPath:"/introduction/how-to-run-abs-code.html",relativePath:"introduction/how-to-run-abs-code.md",key:"v-fa8e069c",path:"/introduction/how-to-run-abs-code/",headers:[{level:2,title:"REPL",slug:"repl"},{level:2,title:"Next",slug:"next"}]},{frontmatter:{},regularPath:"/playground/",relativePath:"playground/README.md",key:"v-610cca9e",path:"/playground/"},{title:"Quickstart",frontmatter:{},regularPath:"/quickstart.html",relativePath:"quickstart.md",key:"v-8f6845c8",path:"/quickstart.html",headers:[{level:2,title:"REPL",slug:"repl"},{level:2,title:"ABS from bash",slug:"abs-from-bash"},{level:2,title:"Explore the docs!",slug:"explore-the-docs"}]}],themeConfig:{repo:"https://github.com/abs-lang/abs",logo:"/abs-horizontal.png",search:!1,editLinks:!1,docsDir:"",editLinkText:"",lastUpdated:!1,sidebarDepth:0,nav:[{text:"Quick start",link:"/quickstart/"},{text:"Docs",link:"/docs/"},{text:"Playground",link:"/playground/"}],sidebar:{"/introduction/":[{title:"Introduction",collapsable:!1,children:["","how-to-run-abs-code"]}],"/docs/":[{title:"Getting Started",path:"/docs/",collapsable:!1},{title:"Syntax",collapsable:!1,children:["syntax/assignments","syntax/return","syntax/if","syntax/for","syntax/while","syntax/system-commands","syntax/operators","syntax/comments"]},{title:"Types and Functions",collapsable:!1,children:["types/string","types/number","types/array","types/hash","types/function","types/builtin-function","types/decorator"]},{title:"Standard Library",collapsable:!1,children:["standard-lib/intro","standard-lib/runtime","standard-lib/cli","standard-lib/util"]},{title:"Miscellaneous",collapsable:!1,children:["misc/3pl","misc/error","misc/configuring-the-repl","misc/runtime","misc/technical-details","misc/upgrade-from-abs-1-to-2","misc/credits"]}]}}};n(299);Lo.component("PlayGround",(function(){return Promise.all([n.e(0),n.e(3),n.e(8)]).then(n.bind(null,508))})),Lo.component("Badge",(function(){return Promise.all([n.e(0),n.e(5)]).then(n.bind(null,543))})),Lo.component("CodeGroup",(function(){return Promise.all([n.e(0),n.e(7)]).then(n.bind(null,509))})),Lo.component("CodeBlock",(function(){return Promise.all([n.e(0),n.e(6)]).then(n.bind(null,510))}));n(300);var fs=[function(t){t.Vue,t.options,t.router,t.siteData},{},function(t){t.Vue.mixin({computed:{$dataBlock:function(){return this.$options.__data__block__}}})},{},{}],ps=[];function ds(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}n(301);function hs(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function vs(t,e,n){return e&&hs(t.prototype,e),n&&hs(t,n),t}n(167);n(158);function ms(t,e){return(ms=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}n(159);function ys(t){return(ys=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}var gs=n(164),bs=n.n(gs);function xs(t,e){return!e||"object"!==bs()(e)&&"function"!=typeof e?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):e}function _s(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,r=ys(t);if(e){var o=ys(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return xs(this,n)}}var ws=function(t){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&ms(t,e)}(n,t);var e=_s(n);function n(){return ds(this,n),e.apply(this,arguments)}return n}(function(){function t(){ds(this,t),this.store=new Lo({data:{state:{}}})}return vs(t,[{key:"$get",value:function(t){return this.store.state[t]}},{key:"$set",value:function(t,e){Lo.set(this.store.state,t,e)}},{key:"$emit",value:function(){var t;(t=this.store).$emit.apply(t,arguments)}},{key:"$on",value:function(){var t;(t=this.store).$on.apply(t,arguments)}}]),t}());Object.assign(ws.prototype,{getPageAsyncComponent:Ua,getLayoutAsyncComponent:Ba,getAsyncComponent:za,getVueComponent:Va});var Os={install:function(t){var e=new ws;t.$vuepress=e,t.prototype.$vuepress=e}};function ks(t){t.beforeEach((function(e,n,r){if(Ss(t,e.path))r();else if(/(\/|\.html)$/.test(e.path))if(/\/$/.test(e.path)){var o=e.path.replace(/\/$/,"")+".html";Ss(t,o)?r(o):r()}else r();else{var i=e.path+"/",a=e.path+".html";Ss(t,a)?r(a):Ss(t,i)?r(i):r()}}))}function Ss(t,e){var n=e.toLowerCase();return t.options.routes.some((function(t){return t.path.toLowerCase()===n}))}var js={props:{pageKey:String,slotKey:{type:String,default:"default"}},render:function(t){var e=this.pageKey||this.$parent.$page.key;return Ha("pageKey",e),Lo.component(e)||Lo.component(e,Ua(e)),Lo.component(e)?t(e):t("")}},Es={functional:!0,props:{slotKey:String,required:!0},render:function(t,e){var n=e.props,r=e.slots;return t("div",{class:["content__".concat(n.slotKey)]},r()[n.slotKey])}},As={computed:{openInNewWindowTitle:function(){return this.$themeLocaleConfig.openNewWindowText||"(opens new window)"}}},Cs=(n(303),n(304),Object(ss.a)(As,(function(){var t=this.$createElement,e=this._self._c||t;return e("span",[e("svg",{staticClass:"icon outbound",attrs:{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",x:"0px",y:"0px",viewBox:"0 0 100 100",width:"15",height:"15"}},[e("path",{attrs:{fill:"currentColor",d:"M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"}}),this._v(" "),e("polygon",{attrs:{fill:"currentColor",points:"45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"}})]),this._v(" "),e("span",{staticClass:"sr-only"},[this._v(this._s(this.openInNewWindowTitle))])])}),[],!1,null,null,null).exports);function $s(){return($s=Object(r.a)(regeneratorRuntime.mark((function t(e){var n,r,o,i;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n="undefined"!=typeof window&&window.__VUEPRESS_ROUTER_BASE__?window.__VUEPRESS_ROUTER_BASE__:ls.routerBase||ls.base,ks(r=new Oa({base:n,mode:"history",fallback:!1,routes:us,scrollBehavior:function(t,e,n){return n||(t.hash?!Lo.$vuepress.$get("disableScrollBehavior")&&{selector:decodeURIComponent(t.hash)}:{x:0,y:0})}})),o={},t.prev=4,t.next=7,Promise.all(fs.filter((function(t){return"function"==typeof t})).map((function(t){return t({Vue:Lo,options:o,router:r,siteData:ls,isServer:e})})));case 7:t.next=12;break;case 9:t.prev=9,t.t0=t.catch(4),console.error(t.t0);case 12:return i=new Lo(Object.assign(o,{router:r,render:function(t){return t("div",{attrs:{id:"app"}},[t("RouterView",{ref:"layout"}),t("div",{class:"global-ui"},ps.map((function(e){return t(e)})))])}})),t.abrupt("return",{app:i,router:r});case 14:case"end":return t.stop()}}),t,null,[[4,9]])})))).apply(this,arguments)}Lo.config.productionTip=!1,Lo.use(Oa),Lo.use(Os),Lo.mixin(function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Lo;ka(e),n.$vuepress.$set("siteData",e);var r=t(n.$vuepress.$get("siteData")),o=new r,i=Object.getOwnPropertyDescriptors(Object.getPrototypeOf(o)),a={};return Object.keys(i).reduce((function(t,e){return e.startsWith("$")&&(t[e]=i[e].get),t}),a),{computed:a}}((function(t){return function(){function e(){ds(this,e)}return vs(e,[{key:"setPage",value:function(t){this.__page=t}},{key:"$site",get:function(){return t}},{key:"$themeConfig",get:function(){return this.$site.themeConfig}},{key:"$frontmatter",get:function(){return this.$page.frontmatter}},{key:"$localeConfig",get:function(){var t,e,n=this.$site.locales,r=void 0===n?{}:n;for(var o in r)"/"===o?e=r[o]:0===this.$page.path.indexOf(o)&&(t=r[o]);return t||e||{}}},{key:"$siteTitle",get:function(){return this.$localeConfig.title||this.$site.title||""}},{key:"$canonicalUrl",get:function(){var t=this.$page.frontmatter.canonicalUrl;return"string"==typeof t&&t}},{key:"$title",get:function(){var t=this.$page,e=this.$page.frontmatter.metaTitle;if("string"==typeof e)return e;var n=this.$siteTitle,r=t.frontmatter.home?null:t.frontmatter.title||t.title;return n?r?r+" | "+n:n:r||"VuePress"}},{key:"$description",get:function(){var t=function(t){if(t){var e=t.filter((function(t){return"description"===t.name}))[0];if(e)return e.content}}(this.$page.frontmatter.meta);return t||(this.$page.frontmatter.description||this.$localeConfig.description||this.$site.description||"")}},{key:"$lang",get:function(){return this.$page.frontmatter.lang||this.$localeConfig.lang||"en-US"}},{key:"$localePath",get:function(){return this.$localeConfig.path||"/"}},{key:"$themeLocaleConfig",get:function(){return(this.$site.themeConfig.locales||{})[this.$localePath]||{}}},{key:"$page",get:function(){return this.__page?this.__page:function(t,e){for(var n=0;n<t.length;n++){var r=t[n];if(r.path.toLowerCase()===e.toLowerCase())return r}return{path:"",frontmatter:{}}}(this.$site.pages,this.$route.path)}}]),e}()}),ls)),Lo.component("Content",js),Lo.component("ContentSlotsDistributor",Es),Lo.component("OutboundLink",Cs),Lo.component("ClientOnly",{functional:!0,render:function(t,e){var n=e.parent,r=e.children;if(n._isMounted)return r;n.$once("hook:mounted",(function(){n.$forceUpdate()}))}}),Lo.component("Layout",Ba("Layout")),Lo.component("NotFound",Ba("NotFound")),Lo.prototype.$withBase=function(t){var e=this.$site.base;return"/"===t.charAt(0)?e+t.slice(1):t},window.__VUEPRESS__={version:"1.8.2",hash:"fcbd05f"},function(t){return $s.apply(this,arguments)}(!1).then((function(t){var e=t.app;t.router.onReady((function(){e.$mount("#app")}))}))}]); \ No newline at end of file + */function Ro(t,e){for(var n in e)t[n]=e[n];return t}var Io=/[!'()*]/g,Mo=function(t){return"%"+t.charCodeAt(0).toString(16)},No=/%2C/g,Do=function(t){return encodeURIComponent(t).replace(Io,Mo).replace(No,",")};function Fo(t){try{return decodeURIComponent(t)}catch(t){0}return t}var Uo=function(t){return null==t||"object"==typeof t?t:String(t)};function Bo(t){var e={};return(t=t.trim().replace(/^(\?|#|&)/,""))?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),r=Fo(n.shift()),o=n.length>0?Fo(n.join("=")):null;void 0===e[r]?e[r]=o:Array.isArray(e[r])?e[r].push(o):e[r]=[e[r],o]})),e):e}function zo(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return Do(e);if(Array.isArray(n)){var r=[];return n.forEach((function(t){void 0!==t&&(null===t?r.push(Do(e)):r.push(Do(e)+"="+Do(t)))})),r.join("&")}return Do(e)+"="+Do(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var Vo=/\/?$/;function qo(t,e,n,r){var o=r&&r.options.stringifyQuery,i=e.query||{};try{i=Ho(i)}catch(t){}var a={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:i,params:e.params||{},fullPath:Ko(e,o),matched:t?Go(t):[]};return n&&(a.redirectedFrom=Ko(n,o)),Object.freeze(a)}function Ho(t){if(Array.isArray(t))return t.map(Ho);if(t&&"object"==typeof t){var e={};for(var n in t)e[n]=Ho(t[n]);return e}return t}var Wo=qo(null,{path:"/"});function Go(t){for(var e=[];t;)e.unshift(t),t=t.parent;return e}function Ko(t,e){var n=t.path,r=t.query;void 0===r&&(r={});var o=t.hash;return void 0===o&&(o=""),(n||"/")+(e||zo)(r)+o}function Xo(t,e,n){return e===Wo?t===e:!!e&&(t.path&&e.path?t.path.replace(Vo,"")===e.path.replace(Vo,"")&&(n||t.hash===e.hash&&Yo(t.query,e.query)):!(!t.name||!e.name)&&(t.name===e.name&&(n||t.hash===e.hash&&Yo(t.query,e.query)&&Yo(t.params,e.params))))}function Yo(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t).sort(),r=Object.keys(e).sort();return n.length===r.length&&n.every((function(n,o){var i=t[n];if(r[o]!==n)return!1;var a=e[n];return null==i||null==a?i===a:"object"==typeof i&&"object"==typeof a?Yo(i,a):String(i)===String(a)}))}function Jo(t){for(var e=0;e<t.matched.length;e++){var n=t.matched[e];for(var r in n.instances){var o=n.instances[r],i=n.enteredCbs[r];if(o&&i){delete n.enteredCbs[r];for(var a=0;a<i.length;a++)o._isBeingDestroyed||i[a](o)}}}}var Qo={name:"RouterView",functional:!0,props:{name:{type:String,default:"default"}},render:function(t,e){var n=e.props,r=e.children,o=e.parent,i=e.data;i.routerView=!0;for(var a=o.$createElement,s=n.name,c=o.$route,u=o._routerViewCache||(o._routerViewCache={}),l=0,f=!1;o&&o._routerRoot!==o;){var p=o.$vnode?o.$vnode.data:{};p.routerView&&l++,p.keepAlive&&o._directInactive&&o._inactive&&(f=!0),o=o.$parent}if(i.routerViewDepth=l,f){var d=u[s],h=d&&d.component;return h?(d.configProps&&Zo(h,i,d.route,d.configProps),a(h,i,r)):a()}var v=c.matched[l],m=v&&v.components[s];if(!v||!m)return u[s]=null,a();u[s]={component:m},i.registerRouteInstance=function(t,e){var n=v.instances[s];(e&&n!==t||!e&&n===t)&&(v.instances[s]=e)},(i.hook||(i.hook={})).prepatch=function(t,e){v.instances[s]=e.componentInstance},i.hook.init=function(t){t.data.keepAlive&&t.componentInstance&&t.componentInstance!==v.instances[s]&&(v.instances[s]=t.componentInstance),Jo(c)};var y=v.props&&v.props[s];return y&&(Ro(u[s],{route:c,configProps:y}),Zo(m,i,c,y)),a(m,i,r)}};function Zo(t,e,n,r){var o=e.props=function(t,e){switch(typeof e){case"undefined":return;case"object":return e;case"function":return e(t);case"boolean":return e?t.params:void 0;default:0}}(n,r);if(o){o=e.props=Ro({},o);var i=e.attrs=e.attrs||{};for(var a in o)t.props&&a in t.props||(i[a]=o[a],delete o[a])}}function ti(t,e,n){var r=t.charAt(0);if("/"===r)return t;if("?"===r||"#"===r)return e+t;var o=e.split("/");n&&o[o.length-1]||o.pop();for(var i=t.replace(/^\//,"").split("/"),a=0;a<i.length;a++){var s=i[a];".."===s?o.pop():"."!==s&&o.push(s)}return""!==o[0]&&o.unshift(""),o.join("/")}function ei(t){return t.replace(/\/\//g,"/")}var ni=Array.isArray||function(t){return"[object Array]"==Object.prototype.toString.call(t)},ri=yi,oi=ui,ii=function(t,e){return fi(ui(t,e),e)},ai=fi,si=mi,ci=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function ui(t,e){for(var n,r=[],o=0,i=0,a="",s=e&&e.delimiter||"/";null!=(n=ci.exec(t));){var c=n[0],u=n[1],l=n.index;if(a+=t.slice(i,l),i=l+c.length,u)a+=u[1];else{var f=t[i],p=n[2],d=n[3],h=n[4],v=n[5],m=n[6],y=n[7];a&&(r.push(a),a="");var g=null!=p&&null!=f&&f!==p,b="+"===m||"*"===m,x="?"===m||"*"===m,_=n[2]||s,w=h||v;r.push({name:d||o++,prefix:p||"",delimiter:_,optional:x,repeat:b,partial:g,asterisk:!!y,pattern:w?di(w):y?".*":"[^"+pi(_)+"]+?"})}}return i<t.length&&(a+=t.substr(i)),a&&r.push(a),r}function li(t){return encodeURI(t).replace(/[\/?#]/g,(function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()}))}function fi(t,e){for(var n=new Array(t.length),r=0;r<t.length;r++)"object"==typeof t[r]&&(n[r]=new RegExp("^(?:"+t[r].pattern+")$",vi(e)));return function(e,r){for(var o="",i=e||{},a=(r||{}).pretty?li:encodeURIComponent,s=0;s<t.length;s++){var c=t[s];if("string"!=typeof c){var u,l=i[c.name];if(null==l){if(c.optional){c.partial&&(o+=c.prefix);continue}throw new TypeError('Expected "'+c.name+'" to be defined')}if(ni(l)){if(!c.repeat)throw new TypeError('Expected "'+c.name+'" to not repeat, but received `'+JSON.stringify(l)+"`");if(0===l.length){if(c.optional)continue;throw new TypeError('Expected "'+c.name+'" to not be empty')}for(var f=0;f<l.length;f++){if(u=a(l[f]),!n[s].test(u))throw new TypeError('Expected all "'+c.name+'" to match "'+c.pattern+'", but received `'+JSON.stringify(u)+"`");o+=(0===f?c.prefix:c.delimiter)+u}}else{if(u=c.asterisk?encodeURI(l).replace(/[?#]/g,(function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})):a(l),!n[s].test(u))throw new TypeError('Expected "'+c.name+'" to match "'+c.pattern+'", but received "'+u+'"');o+=c.prefix+u}}else o+=c}return o}}function pi(t){return t.replace(/([.+*?=^!:${}()[\]|\/\\])/g,"\\$1")}function di(t){return t.replace(/([=!:$\/()])/g,"\\$1")}function hi(t,e){return t.keys=e,t}function vi(t){return t&&t.sensitive?"":"i"}function mi(t,e,n){ni(e)||(n=e||n,e=[]);for(var r=(n=n||{}).strict,o=!1!==n.end,i="",a=0;a<t.length;a++){var s=t[a];if("string"==typeof s)i+=pi(s);else{var c=pi(s.prefix),u="(?:"+s.pattern+")";e.push(s),s.repeat&&(u+="(?:"+c+u+")*"),i+=u=s.optional?s.partial?c+"("+u+")?":"(?:"+c+"("+u+"))?":c+"("+u+")"}}var l=pi(n.delimiter||"/"),f=i.slice(-l.length)===l;return r||(i=(f?i.slice(0,-l.length):i)+"(?:"+l+"(?=$))?"),i+=o?"$":r&&f?"":"(?="+l+"|$)",hi(new RegExp("^"+i,vi(n)),e)}function yi(t,e,n){return ni(e)||(n=e||n,e=[]),n=n||{},t instanceof RegExp?function(t,e){var n=t.source.match(/\((?!\?)/g);if(n)for(var r=0;r<n.length;r++)e.push({name:r,prefix:null,delimiter:null,optional:!1,repeat:!1,partial:!1,asterisk:!1,pattern:null});return hi(t,e)}(t,e):ni(t)?function(t,e,n){for(var r=[],o=0;o<t.length;o++)r.push(yi(t[o],e,n).source);return hi(new RegExp("(?:"+r.join("|")+")",vi(n)),e)}(t,e,n):function(t,e,n){return mi(ui(t,n),e,n)}(t,e,n)}ri.parse=oi,ri.compile=ii,ri.tokensToFunction=ai,ri.tokensToRegExp=si;var gi=Object.create(null);function bi(t,e,n){e=e||{};try{var r=gi[t]||(gi[t]=ri.compile(t));return"string"==typeof e.pathMatch&&(e[0]=e.pathMatch),r(e,{pretty:!0})}catch(t){return""}finally{delete e[0]}}function xi(t,e,n,r){var o="string"==typeof t?{path:t}:t;if(o._normalized)return o;if(o.name){var i=(o=Ro({},t)).params;return i&&"object"==typeof i&&(o.params=Ro({},i)),o}if(!o.path&&o.params&&e){(o=Ro({},o))._normalized=!0;var a=Ro(Ro({},e.params),o.params);if(e.name)o.name=e.name,o.params=a;else if(e.matched.length){var s=e.matched[e.matched.length-1].path;o.path=bi(s,a,e.path)}else 0;return o}var c=function(t){var e="",n="",r=t.indexOf("#");r>=0&&(e=t.slice(r),t=t.slice(0,r));var o=t.indexOf("?");return o>=0&&(n=t.slice(o+1),t=t.slice(0,o)),{path:t,query:n,hash:e}}(o.path||""),u=e&&e.path||"/",l=c.path?ti(c.path,u,n||o.append):u,f=function(t,e,n){void 0===e&&(e={});var r,o=n||Bo;try{r=o(t||"")}catch(t){r={}}for(var i in e){var a=e[i];r[i]=Array.isArray(a)?a.map(Uo):Uo(a)}return r}(c.query,o.query,r&&r.options.parseQuery),p=o.hash||c.hash;return p&&"#"!==p.charAt(0)&&(p="#"+p),{_normalized:!0,path:l,query:f,hash:p}}var _i,wi=function(){},Oi={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},custom:Boolean,exact:Boolean,exactPath:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,ariaCurrentValue:{type:String,default:"page"},event:{type:[String,Array],default:"click"}},render:function(t){var e=this,n=this.$router,r=this.$route,o=n.resolve(this.to,r,this.append),i=o.location,a=o.route,s=o.href,c={},u=n.options.linkActiveClass,l=n.options.linkExactActiveClass,f=null==u?"router-link-active":u,p=null==l?"router-link-exact-active":l,d=null==this.activeClass?f:this.activeClass,h=null==this.exactActiveClass?p:this.exactActiveClass,v=a.redirectedFrom?qo(null,xi(a.redirectedFrom),null,n):a;c[h]=Xo(r,v,this.exactPath),c[d]=this.exact||this.exactPath?c[h]:function(t,e){return 0===t.path.replace(Vo,"/").indexOf(e.path.replace(Vo,"/"))&&(!e.hash||t.hash===e.hash)&&function(t,e){for(var n in e)if(!(n in t))return!1;return!0}(t.query,e.query)}(r,v);var m=c[h]?this.ariaCurrentValue:null,y=function(t){ki(t)&&(e.replace?n.replace(i,wi):n.push(i,wi))},g={click:ki};Array.isArray(this.event)?this.event.forEach((function(t){g[t]=y})):g[this.event]=y;var b={class:c},x=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:s,route:a,navigate:y,isActive:c[d],isExactActive:c[h]});if(x){if(1===x.length)return x[0];if(x.length>1||!x.length)return 0===x.length?t():t("span",{},x)}if("a"===this.tag)b.on=g,b.attrs={href:s,"aria-current":m};else{var _=function t(e){var n;if(e)for(var r=0;r<e.length;r++){if("a"===(n=e[r]).tag)return n;if(n.children&&(n=t(n.children)))return n}}(this.$slots.default);if(_){_.isStatic=!1;var w=_.data=Ro({},_.data);for(var O in w.on=w.on||{},w.on){var k=w.on[O];O in g&&(w.on[O]=Array.isArray(k)?k:[k])}for(var S in g)S in w.on?w.on[S].push(g[S]):w.on[S]=y;var j=_.data.attrs=Ro({},_.data.attrs);j.href=s,j["aria-current"]=m}else b.on=g}return t(this.tag,b,this.$slots.default)}};function ki(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey||t.defaultPrevented||void 0!==t.button&&0!==t.button)){if(t.currentTarget&&t.currentTarget.getAttribute){var e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}var Si="undefined"!=typeof window;function ji(t,e,n,r,o){var i=e||[],a=n||Object.create(null),s=r||Object.create(null);t.forEach((function(t){!function t(e,n,r,o,i,a){var s=o.path,c=o.name;0;var u=o.pathToRegexpOptions||{},l=function(t,e,n){n||(t=t.replace(/\/$/,""));if("/"===t[0])return t;if(null==e)return t;return ei(e.path+"/"+t)}(s,i,u.strict);"boolean"==typeof o.caseSensitive&&(u.sensitive=o.caseSensitive);var f={path:l,regex:Ei(l,u),components:o.components||{default:o.component},alias:o.alias?"string"==typeof o.alias?[o.alias]:o.alias:[],instances:{},enteredCbs:{},name:c,parent:i,matchAs:a,redirect:o.redirect,beforeEnter:o.beforeEnter,meta:o.meta||{},props:null==o.props?{}:o.components?o.props:{default:o.props}};o.children&&o.children.forEach((function(o){var i=a?ei(a+"/"+o.path):void 0;t(e,n,r,o,f,i)}));n[f.path]||(e.push(f.path),n[f.path]=f);if(void 0!==o.alias)for(var p=Array.isArray(o.alias)?o.alias:[o.alias],d=0;d<p.length;++d){0;var h={path:p[d],children:o.children};t(e,n,r,h,i,f.path||"/")}c&&(r[c]||(r[c]=f))}(i,a,s,t,o)}));for(var c=0,u=i.length;c<u;c++)"*"===i[c]&&(i.push(i.splice(c,1)[0]),u--,c--);return{pathList:i,pathMap:a,nameMap:s}}function Ei(t,e){return ri(t,[],e)}function Ai(t,e){var n=ji(t),r=n.pathList,o=n.pathMap,i=n.nameMap;function a(t,n,a){var s=xi(t,n,!1,e),u=s.name;if(u){var l=i[u];if(!l)return c(null,s);var f=l.regex.keys.filter((function(t){return!t.optional})).map((function(t){return t.name}));if("object"!=typeof s.params&&(s.params={}),n&&"object"==typeof n.params)for(var p in n.params)!(p in s.params)&&f.indexOf(p)>-1&&(s.params[p]=n.params[p]);return s.path=bi(l.path,s.params),c(l,s,a)}if(s.path){s.params={};for(var d=0;d<r.length;d++){var h=r[d],v=o[h];if(Ci(v.regex,s.path,s.params))return c(v,s,a)}}return c(null,s)}function s(t,n){var r=t.redirect,o="function"==typeof r?r(qo(t,n,null,e)):r;if("string"==typeof o&&(o={path:o}),!o||"object"!=typeof o)return c(null,n);var s=o,u=s.name,l=s.path,f=n.query,p=n.hash,d=n.params;if(f=s.hasOwnProperty("query")?s.query:f,p=s.hasOwnProperty("hash")?s.hash:p,d=s.hasOwnProperty("params")?s.params:d,u){i[u];return a({_normalized:!0,name:u,query:f,hash:p,params:d},void 0,n)}if(l){var h=function(t,e){return ti(t,e.parent?e.parent.path:"/",!0)}(l,t);return a({_normalized:!0,path:bi(h,d),query:f,hash:p},void 0,n)}return c(null,n)}function c(t,n,r){return t&&t.redirect?s(t,r||n):t&&t.matchAs?function(t,e,n){var r=a({_normalized:!0,path:bi(n,e.params)});if(r){var o=r.matched,i=o[o.length-1];return e.params=r.params,c(i,e)}return c(null,e)}(0,n,t.matchAs):qo(t,n,r,e)}return{match:a,addRoute:function(t,e){var n="object"!=typeof t?i[t]:void 0;ji([e||t],r,o,i,n),n&&ji(n.alias.map((function(t){return{path:t,children:[e]}})),r,o,i,n)},getRoutes:function(){return r.map((function(t){return o[t]}))},addRoutes:function(t){ji(t,r,o,i)}}}function Ci(t,e,n){var r=e.match(t);if(!r)return!1;if(!n)return!0;for(var o=1,i=r.length;o<i;++o){var a=t.keys[o-1];a&&(n[a.name||"pathMatch"]="string"==typeof r[o]?Fo(r[o]):r[o])}return!0}var $i=Si&&window.performance&&window.performance.now?window.performance:Date;function Pi(){return $i.now().toFixed(3)}var Ti=Pi();function Li(){return Ti}function Ri(t){return Ti=t}var Ii=Object.create(null);function Mi(){"scrollRestoration"in window.history&&(window.history.scrollRestoration="manual");var t=window.location.protocol+"//"+window.location.host,e=window.location.href.replace(t,""),n=Ro({},window.history.state);return n.key=Li(),window.history.replaceState(n,"",e),window.addEventListener("popstate",Fi),function(){window.removeEventListener("popstate",Fi)}}function Ni(t,e,n,r){if(t.app){var o=t.options.scrollBehavior;o&&t.app.$nextTick((function(){var i=function(){var t=Li();if(t)return Ii[t]}(),a=o.call(t,e,n,r?i:null);a&&("function"==typeof a.then?a.then((function(t){qi(t,i)})).catch((function(t){0})):qi(a,i))}))}}function Di(){var t=Li();t&&(Ii[t]={x:window.pageXOffset,y:window.pageYOffset})}function Fi(t){Di(),t.state&&t.state.key&&Ri(t.state.key)}function Ui(t){return zi(t.x)||zi(t.y)}function Bi(t){return{x:zi(t.x)?t.x:window.pageXOffset,y:zi(t.y)?t.y:window.pageYOffset}}function zi(t){return"number"==typeof t}var Vi=/^#\d/;function qi(t,e){var n,r="object"==typeof t;if(r&&"string"==typeof t.selector){var o=Vi.test(t.selector)?document.getElementById(t.selector.slice(1)):document.querySelector(t.selector);if(o){var i=t.offset&&"object"==typeof t.offset?t.offset:{};e=function(t,e){var n=document.documentElement.getBoundingClientRect(),r=t.getBoundingClientRect();return{x:r.left-n.left-e.x,y:r.top-n.top-e.y}}(o,i={x:zi((n=i).x)?n.x:0,y:zi(n.y)?n.y:0})}else Ui(t)&&(e=Bi(t))}else r&&Ui(t)&&(e=Bi(t));e&&("scrollBehavior"in document.documentElement.style?window.scrollTo({left:e.x,top:e.y,behavior:t.behavior}):window.scrollTo(e.x,e.y))}var Hi,Wi=Si&&((-1===(Hi=window.navigator.userAgent).indexOf("Android 2.")&&-1===Hi.indexOf("Android 4.0")||-1===Hi.indexOf("Mobile Safari")||-1!==Hi.indexOf("Chrome")||-1!==Hi.indexOf("Windows Phone"))&&window.history&&"function"==typeof window.history.pushState);function Gi(t,e){Di();var n=window.history;try{if(e){var r=Ro({},n.state);r.key=Li(),n.replaceState(r,"",t)}else n.pushState({key:Ri(Pi())},"",t)}catch(n){window.location[e?"replace":"assign"](t)}}function Ki(t){Gi(t,!0)}function Xi(t,e,n){var r=function(o){o>=t.length?n():t[o]?e(t[o],(function(){r(o+1)})):r(o+1)};r(0)}var Yi={redirected:2,aborted:4,cancelled:8,duplicated:16};function Ji(t,e){return Zi(t,e,Yi.redirected,'Redirected when going from "'+t.fullPath+'" to "'+function(t){if("string"==typeof t)return t;if("path"in t)return t.path;var e={};return ta.forEach((function(n){n in t&&(e[n]=t[n])})),JSON.stringify(e,null,2)}(e)+'" via a navigation guard.')}function Qi(t,e){return Zi(t,e,Yi.cancelled,'Navigation cancelled from "'+t.fullPath+'" to "'+e.fullPath+'" with a new navigation.')}function Zi(t,e,n,r){var o=new Error(r);return o._isRouter=!0,o.from=t,o.to=e,o.type=n,o}var ta=["params","query","hash"];function ea(t){return Object.prototype.toString.call(t).indexOf("Error")>-1}function na(t,e){return ea(t)&&t._isRouter&&(null==e||t.type===e)}function ra(t){return function(e,n,r){var o=!1,i=0,a=null;oa(t,(function(t,e,n,s){if("function"==typeof t&&void 0===t.cid){o=!0,i++;var c,u=sa((function(e){var o;((o=e).__esModule||aa&&"Module"===o[Symbol.toStringTag])&&(e=e.default),t.resolved="function"==typeof e?e:_i.extend(e),n.components[s]=e,--i<=0&&r()})),l=sa((function(t){var e="Failed to resolve async component "+s+": "+t;a||(a=ea(t)?t:new Error(e),r(a))}));try{c=t(u,l)}catch(t){l(t)}if(c)if("function"==typeof c.then)c.then(u,l);else{var f=c.component;f&&"function"==typeof f.then&&f.then(u,l)}}})),o||r()}}function oa(t,e){return ia(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function ia(t){return Array.prototype.concat.apply([],t)}var aa="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function sa(t){var e=!1;return function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var ca=function(t,e){this.router=t,this.base=function(t){if(!t)if(Si){var e=document.querySelector("base");t=(t=e&&e.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else t="/";"/"!==t.charAt(0)&&(t="/"+t);return t.replace(/\/$/,"")}(e),this.current=Wo,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function ua(t,e,n,r){var o=oa(t,(function(t,r,o,i){var a=function(t,e){"function"!=typeof t&&(t=_i.extend(t));return t.options[e]}(t,e);if(a)return Array.isArray(a)?a.map((function(t){return n(t,r,o,i)})):n(a,r,o,i)}));return ia(r?o.reverse():o)}function la(t,e){if(e)return function(){return t.apply(e,arguments)}}ca.prototype.listen=function(t){this.cb=t},ca.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},ca.prototype.onError=function(t){this.errorCbs.push(t)},ca.prototype.transitionTo=function(t,e,n){var r,o=this;try{r=this.router.match(t,this.current)}catch(t){throw this.errorCbs.forEach((function(e){e(t)})),t}var i=this.current;this.confirmTransition(r,(function(){o.updateRoute(r),e&&e(r),o.ensureURL(),o.router.afterHooks.forEach((function(t){t&&t(r,i)})),o.ready||(o.ready=!0,o.readyCbs.forEach((function(t){t(r)})))}),(function(t){n&&n(t),t&&!o.ready&&(na(t,Yi.redirected)&&i===Wo||(o.ready=!0,o.readyErrorCbs.forEach((function(e){e(t)}))))}))},ca.prototype.confirmTransition=function(t,e,n){var r=this,o=this.current;this.pending=t;var i,a,s=function(t){!na(t)&&ea(t)&&(r.errorCbs.length?r.errorCbs.forEach((function(e){e(t)})):console.error(t)),n&&n(t)},c=t.matched.length-1,u=o.matched.length-1;if(Xo(t,o)&&c===u&&t.matched[c]===o.matched[u])return this.ensureURL(),s(((a=Zi(i=o,t,Yi.duplicated,'Avoided redundant navigation to current location: "'+i.fullPath+'".')).name="NavigationDuplicated",a));var l=function(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n<r&&t[n]===e[n];n++);return{updated:e.slice(0,n),activated:e.slice(n),deactivated:t.slice(n)}}(this.current.matched,t.matched),f=l.updated,p=l.deactivated,d=l.activated,h=[].concat(function(t){return ua(t,"beforeRouteLeave",la,!0)}(p),this.router.beforeHooks,function(t){return ua(t,"beforeRouteUpdate",la)}(f),d.map((function(t){return t.beforeEnter})),ra(d)),v=function(e,n){if(r.pending!==t)return s(Qi(o,t));try{e(t,o,(function(e){!1===e?(r.ensureURL(!0),s(function(t,e){return Zi(t,e,Yi.aborted,'Navigation aborted from "'+t.fullPath+'" to "'+e.fullPath+'" via a navigation guard.')}(o,t))):ea(e)?(r.ensureURL(!0),s(e)):"string"==typeof e||"object"==typeof e&&("string"==typeof e.path||"string"==typeof e.name)?(s(Ji(o,t)),"object"==typeof e&&e.replace?r.replace(e):r.push(e)):n(e)}))}catch(t){s(t)}};Xi(h,v,(function(){Xi(function(t){return ua(t,"beforeRouteEnter",(function(t,e,n,r){return function(t,e,n){return function(r,o,i){return t(r,o,(function(t){"function"==typeof t&&(e.enteredCbs[n]||(e.enteredCbs[n]=[]),e.enteredCbs[n].push(t)),i(t)}))}}(t,n,r)}))}(d).concat(r.router.resolveHooks),v,(function(){if(r.pending!==t)return s(Qi(o,t));r.pending=null,e(t),r.router.app&&r.router.app.$nextTick((function(){Jo(t)}))}))}))},ca.prototype.updateRoute=function(t){this.current=t,this.cb&&this.cb(t)},ca.prototype.setupListeners=function(){},ca.prototype.teardown=function(){this.listeners.forEach((function(t){t()})),this.listeners=[],this.current=Wo,this.pending=null};var fa=function(t){function e(e,n){t.call(this,e,n),this._startLocation=pa(this.base)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setupListeners=function(){var t=this;if(!(this.listeners.length>0)){var e=this.router,n=e.options.scrollBehavior,r=Wi&&n;r&&this.listeners.push(Mi());var o=function(){var n=t.current,o=pa(t.base);t.current===Wo&&o===t._startLocation||t.transitionTo(o,(function(t){r&&Ni(e,t,n,!0)}))};window.addEventListener("popstate",o),this.listeners.push((function(){window.removeEventListener("popstate",o)}))}},e.prototype.go=function(t){window.history.go(t)},e.prototype.push=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){Gi(ei(r.base+t.fullPath)),Ni(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){Ki(ei(r.base+t.fullPath)),Ni(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.ensureURL=function(t){if(pa(this.base)!==this.current.fullPath){var e=ei(this.base+this.current.fullPath);t?Gi(e):Ki(e)}},e.prototype.getCurrentLocation=function(){return pa(this.base)},e}(ca);function pa(t){var e=window.location.pathname;return t&&0===e.toLowerCase().indexOf(t.toLowerCase())&&(e=e.slice(t.length)),(e||"/")+window.location.search+window.location.hash}var da=function(t){function e(e,n,r){t.call(this,e,n),r&&function(t){var e=pa(t);if(!/^\/#/.test(e))return window.location.replace(ei(t+"/#"+e)),!0}(this.base)||ha()}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setupListeners=function(){var t=this;if(!(this.listeners.length>0)){var e=this.router.options.scrollBehavior,n=Wi&&e;n&&this.listeners.push(Mi());var r=function(){var e=t.current;ha()&&t.transitionTo(va(),(function(r){n&&Ni(t.router,r,e,!0),Wi||ga(r.fullPath)}))},o=Wi?"popstate":"hashchange";window.addEventListener(o,r),this.listeners.push((function(){window.removeEventListener(o,r)}))}},e.prototype.push=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){ya(t.fullPath),Ni(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){ga(t.fullPath),Ni(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.go=function(t){window.history.go(t)},e.prototype.ensureURL=function(t){var e=this.current.fullPath;va()!==e&&(t?ya(e):ga(e))},e.prototype.getCurrentLocation=function(){return va()},e}(ca);function ha(){var t=va();return"/"===t.charAt(0)||(ga("/"+t),!1)}function va(){var t=window.location.href,e=t.indexOf("#");return e<0?"":t=t.slice(e+1)}function ma(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function ya(t){Wi?Gi(ma(t)):window.location.hash=t}function ga(t){Wi?Ki(ma(t)):window.location.replace(ma(t))}var ba=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){var t=e.current;e.index=n,e.updateRoute(r),e.router.afterHooks.forEach((function(e){e&&e(r,t)}))}),(function(t){na(t,Yi.duplicated)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(ca),xa=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=Ai(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!Wi&&!1!==t.fallback,this.fallback&&(e="hash"),Si||(e="abstract"),this.mode=e,e){case"history":this.history=new fa(this,t.base);break;case"hash":this.history=new da(this,t.base,this.fallback);break;case"abstract":this.history=new ba(this,t.base);break;default:0}},_a={currentRoute:{configurable:!0}};function wa(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}xa.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},_a.currentRoute.get=function(){return this.history&&this.history.current},xa.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null),e.app||e.history.teardown()})),!this.app){this.app=t;var n=this.history;if(n instanceof fa||n instanceof da){var r=function(t){n.setupListeners(),function(t){var r=n.current,o=e.options.scrollBehavior;Wi&&o&&"fullPath"in t&&Ni(e,t,r,!1)}(t)};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},xa.prototype.beforeEach=function(t){return wa(this.beforeHooks,t)},xa.prototype.beforeResolve=function(t){return wa(this.resolveHooks,t)},xa.prototype.afterEach=function(t){return wa(this.afterHooks,t)},xa.prototype.onReady=function(t,e){this.history.onReady(t,e)},xa.prototype.onError=function(t){this.history.onError(t)},xa.prototype.push=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.push(t,e,n)}));this.history.push(t,e,n)},xa.prototype.replace=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.replace(t,e,n)}));this.history.replace(t,e,n)},xa.prototype.go=function(t){this.history.go(t)},xa.prototype.back=function(){this.go(-1)},xa.prototype.forward=function(){this.go(1)},xa.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},xa.prototype.resolve=function(t,e,n){var r=xi(t,e=e||this.history.current,n,this),o=this.match(r,e),i=o.redirectedFrom||o.fullPath;return{location:r,route:o,href:function(t,e,n){var r="hash"===n?"#"+e:e;return t?ei(t+"/"+r):r}(this.history.base,i,this.mode),normalizedTo:r,resolved:o}},xa.prototype.getRoutes=function(){return this.matcher.getRoutes()},xa.prototype.addRoute=function(t,e){this.matcher.addRoute(t,e),this.history.current!==Wo&&this.history.transitionTo(this.history.getCurrentLocation())},xa.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==Wo&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(xa.prototype,_a),xa.install=function t(e){if(!t.installed||_i!==e){t.installed=!0,_i=e;var n=function(t){return void 0!==t},r=function(t,e){var r=t.$options._parentVnode;n(r)&&n(r=r.data)&&n(r=r.registerRouteInstance)&&r(t,e)};e.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,r(this,this)},destroyed:function(){r(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("RouterView",Qo),e.component("RouterLink",Oi);var o=e.config.optionMergeStrategies;o.beforeRouteEnter=o.beforeRouteLeave=o.beforeRouteUpdate=o.created}},xa.version="3.5.1",xa.isNavigationFailure=na,xa.NavigationFailureType=Yi,xa.START_LOCATION=Wo,Si&&window.Vue&&window.Vue.use(xa);var Oa=xa;n(197),n(130),n(198),n(95),n(200),n(96),n(97),n(201);function ka(t){t.locales&&Object.keys(t.locales).forEach((function(e){t.locales[e].path=e})),Object.freeze(t)}n(40),n(41),n(57);var Sa=n(43),ja=(n(136),n(67),n(46),n(180),n(181),{NotFound:function(){return n.e(11).then(n.bind(null,507))},Layout:function(){return Promise.all([n.e(0),n.e(4),n.e(9)]).then(n.bind(null,503))}}),Ea={"v-3e4eb19e":function(){return n.e(12).then(n.bind(null,511))},"v-1575bc4c":function(){return n.e(13).then(n.bind(null,512))},"v-5e970efe":function(){return n.e(14).then(n.bind(null,513))},"v-02297f0c":function(){return n.e(16).then(n.bind(null,514))},"v-324db8fa":function(){return n.e(15).then(n.bind(null,515))},"v-87cd438c":function(){return n.e(17).then(n.bind(null,516))},"v-b7bb3f8c":function(){return n.e(18).then(n.bind(null,517))},"v-701af59a":function(){return n.e(19).then(n.bind(null,518))},"v-7e0c66cc":function(){return n.e(20).then(n.bind(null,519))},"v-5414df9a":function(){return n.e(21).then(n.bind(null,520))},"v-f5d90ecc":function(){return n.e(22).then(n.bind(null,521))},"v-50fd8636":function(){return n.e(23).then(n.bind(null,522))},"v-5cae5c9a":function(){return n.e(24).then(n.bind(null,523))},"v-029550a4":function(){return n.e(25).then(n.bind(null,524))},"v-7728e4cc":function(){return n.e(26).then(n.bind(null,525))},"v-1eb4837a":function(){return n.e(27).then(n.bind(null,526))},"v-0fec0a48":function(){return n.e(28).then(n.bind(null,527))},"v-257855fa":function(){return n.e(29).then(n.bind(null,528))},"v-182e9994":function(){return n.e(30).then(n.bind(null,529))},"v-e2f544cc":function(){return n.e(31).then(n.bind(null,530))},"v-237b678c":function(){return n.e(32).then(n.bind(null,531))},"v-418595a8":function(){return n.e(33).then(n.bind(null,532))},"v-763fe15a":function(){return n.e(34).then(n.bind(null,533))},"v-4684ade4":function(){return n.e(35).then(n.bind(null,534))},"v-643d93cc":function(){return n.e(36).then(n.bind(null,535))},"v-255ff2da":function(){return n.e(37).then(n.bind(null,536))},"v-171a600c":function(){return n.e(38).then(n.bind(null,537))},"v-27e6a2fa":function(){return n.e(39).then(n.bind(null,538))},"v-69030a13":function(){return n.e(40).then(n.bind(null,539))},"v-3f455fde":function(){return n.e(41).then(n.bind(null,540))},"v-fa8e069c":function(){return n.e(42).then(n.bind(null,541))},"v-610cca9e":function(){return n.e(43).then(n.bind(null,542))},"v-8f6845c8":function(){return n.e(44).then(n.bind(null,543))}};function Aa(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var Ca=/-(\w)/g,$a=Aa((function(t){return t.replace(Ca,(function(t,e){return e?e.toUpperCase():""}))})),Pa=/\B([A-Z])/g,Ta=Aa((function(t){return t.replace(Pa,"-$1").toLowerCase()})),La=Aa((function(t){return t.charAt(0).toUpperCase()+t.slice(1)}));function Ra(t,e){if(e)return t(e)?t(e):e.includes("-")?t(La($a(e))):t(La(e))||t(Ta(e))}var Ia=Object.assign({},ja,Ea),Ma=function(t){return Ia[t]},Na=function(t){return Ea[t]},Da=function(t){return ja[t]},Fa=function(t){return Lo.component(t)};function Ua(t){return Ra(Na,t)}function Ba(t){return Ra(Da,t)}function za(t){return Ra(Ma,t)}function Va(t){return Ra(Fa,t)}function qa(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return Promise.all(e.filter((function(t){return t})).map(function(){var t=Object(r.a)(regeneratorRuntime.mark((function t(e){var n;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(Va(e)||!za(e)){t.next=5;break}return t.next=3,za(e)();case 3:n=t.sent,Lo.component(e,n.default);case 5:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()))}function Ha(t,e){"undefined"!=typeof window&&window.__VUEPRESS__&&(window.__VUEPRESS__[t]=e)}n(98);var Wa=n(64);function Ga(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t)){var n=[],r=!0,o=!1,i=void 0;try{for(var a,s=t[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{r||null==s.return||s.return()}finally{if(o)throw i}}return n}}(t,e)||Object(Wa.a)(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}n(172),n(182);var Ka=n(162),Xa=n.n(Ka),Ya={created:function(){if(this.siteMeta=this.$site.headTags.filter((function(t){return"meta"===Ga(t,1)[0]})).map((function(t){var e=Ga(t,2);e[0];return e[1]})),this.$ssrContext){var t=this.getMergedMetaTags();this.$ssrContext.title=this.$title,this.$ssrContext.lang=this.$lang,this.$ssrContext.pageMeta=(e=t)?e.map((function(t){var e="<meta";return Object.keys(t).forEach((function(n){e+=" ".concat(n,'="').concat(t[n],'"')})),e+">"})).join("\n "):"",this.$ssrContext.canonicalLink=Qa(this.$canonicalUrl)}var e},mounted:function(){this.currentMetaTags=Object(Sa.a)(document.querySelectorAll("meta")),this.updateMeta(),this.updateCanonicalLink()},methods:{updateMeta:function(){document.title=this.$title,document.documentElement.lang=this.$lang;var t=this.getMergedMetaTags();this.currentMetaTags=Za(t,this.currentMetaTags)},getMergedMetaTags:function(){var t=this.$page.frontmatter.meta||[];return Xa()([{name:"description",content:this.$description}],t,this.siteMeta,ts)},updateCanonicalLink:function(){Ja(),this.$canonicalUrl&&document.head.insertAdjacentHTML("beforeend",Qa(this.$canonicalUrl))}},watch:{$page:function(){this.updateMeta(),this.updateCanonicalLink()}},beforeDestroy:function(){Za(null,this.currentMetaTags),Ja()}};function Ja(){var t=document.querySelector("link[rel='canonical']");t&&t.remove()}function Qa(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return t?'<link href="'.concat(t,'" rel="canonical" />'):""}function Za(t,e){if(e&&Object(Sa.a)(e).filter((function(t){return t.parentNode===document.head})).forEach((function(t){return document.head.removeChild(t)})),t)return t.map((function(t){var e=document.createElement("meta");return Object.keys(t).forEach((function(n){e.setAttribute(n,t[n])})),document.head.appendChild(e),e}))}function ts(t){for(var e=0,n=["name","property","itemprop"];e<n.length;e++){var r=n[e];if(t.hasOwnProperty(r))return t[r]+r}return JSON.stringify(t)}n(93);var es=n(163),ns={mounted:function(){window.addEventListener("scroll",this.onScroll)},methods:{onScroll:n.n(es)()((function(){this.setActiveHash()}),300),setActiveHash:function(){for(var t=this,e=[].slice.call(document.querySelectorAll(".sidebar-link")),n=[].slice.call(document.querySelectorAll(".header-anchor")).filter((function(t){return e.some((function(e){return e.hash===t.hash}))})),r=Math.max(window.pageYOffset,document.documentElement.scrollTop,document.body.scrollTop),o=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight),i=window.innerHeight+r,a=0;a<n.length;a++){var s=n[a],c=n[a+1],u=0===a&&0===r||r>=s.parentElement.offsetTop+10&&(!c||r<c.parentElement.offsetTop-10),l=decodeURIComponent(this.$route.hash);if(u&&l!==decodeURIComponent(s.hash)){var f=s;if(i===o)for(var p=a+1;p<n.length;p++)if(l===decodeURIComponent(n[p].hash))return;return this.$vuepress.$set("disableScrollBehavior",!0),void this.$router.replace(decodeURIComponent(f.hash),(function(){t.$nextTick((function(){t.$vuepress.$set("disableScrollBehavior",!1)}))}))}}}},beforeDestroy:function(){window.removeEventListener("scroll",this.onScroll)}},rs=(n(83),n(65)),os=n.n(rs),is=[Ya,ns,{mounted:function(){var t=this;os.a.configure({showSpinner:!1}),this.$router.beforeEach((function(t,e,n){t.path===e.path||Lo.component(t.name)||os.a.start(),n()})),this.$router.afterEach((function(){os.a.done(),t.isSidebarOpen=!1}))}}],as={name:"GlobalLayout",computed:{layout:function(){var t=this.getLayout();return Ha("layout",t),Lo.component(t)}},methods:{getLayout:function(){if(this.$page.path){var t=this.$page.frontmatter.layout;return t&&(this.$vuepress.getLayoutAsyncComponent(t)||this.$vuepress.getVueComponent(t))?t:"Layout"}return"NotFound"}}},ss=n(45),cs=Object(ss.a)(as,(function(){var t=this.$createElement;return(this._self._c||t)(this.layout,{tag:"component"})}),[],!1,null,null,null).exports;!function(t,e,n){var r;switch(e){case"components":t[e]||(t[e]={}),Object.assign(t[e],n);break;case"mixins":t[e]||(t[e]=[]),(r=t[e]).push.apply(r,Object(Sa.a)(n));break;default:throw new Error("Unknown option name.")}}(cs,"mixins",is);var us=[{name:"v-3e4eb19e",path:"/docs/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-3e4eb19e").then(n)}},{path:"/docs/index.html",redirect:"/docs/"},{name:"v-1575bc4c",path:"/misc/3pl/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-1575bc4c").then(n)}},{path:"/misc/3pl/index.html",redirect:"/misc/3pl/"},{path:"/docs/misc/3pl.html",redirect:"/misc/3pl/"},{name:"v-5e970efe",path:"/misc/configuring-the-repl/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-5e970efe").then(n)}},{path:"/misc/configuring-the-repl/index.html",redirect:"/misc/configuring-the-repl/"},{path:"/docs/misc/configuring-the-repl.html",redirect:"/misc/configuring-the-repl/"},{name:"v-02297f0c",path:"/misc/error/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-02297f0c").then(n)}},{path:"/misc/error/index.html",redirect:"/misc/error/"},{path:"/docs/misc/error.html",redirect:"/misc/error/"},{name:"v-324db8fa",path:"/misc/credits/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-324db8fa").then(n)}},{path:"/misc/credits/index.html",redirect:"/misc/credits/"},{path:"/docs/misc/credits.html",redirect:"/misc/credits/"},{name:"v-87cd438c",path:"/misc/runtime/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-87cd438c").then(n)}},{path:"/misc/runtime/index.html",redirect:"/misc/runtime/"},{path:"/docs/misc/runtime.html",redirect:"/misc/runtime/"},{name:"v-b7bb3f8c",path:"/misc/technical-details/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-b7bb3f8c").then(n)}},{path:"/misc/technical-details/index.html",redirect:"/misc/technical-details/"},{path:"/docs/misc/technical-details.html",redirect:"/misc/technical-details/"},{name:"v-701af59a",path:"/misc/upgrade-from-abs-1-to-2/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-701af59a").then(n)}},{path:"/misc/upgrade-from-abs-1-to-2/index.html",redirect:"/misc/upgrade-from-abs-1-to-2/"},{path:"/docs/misc/upgrade-from-abs-1-to-2.html",redirect:"/misc/upgrade-from-abs-1-to-2/"},{name:"v-7e0c66cc",path:"/stdlib/cli/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-7e0c66cc").then(n)}},{path:"/stdlib/cli/index.html",redirect:"/stdlib/cli/"},{path:"/docs/standard-lib/cli.html",redirect:"/stdlib/cli/"},{name:"v-5414df9a",path:"/stdlib/intro/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-5414df9a").then(n)}},{path:"/stdlib/intro/index.html",redirect:"/stdlib/intro/"},{path:"/docs/standard-lib/intro.html",redirect:"/stdlib/intro/"},{name:"v-f5d90ecc",path:"/stdlib/runtime/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-f5d90ecc").then(n)}},{path:"/stdlib/runtime/index.html",redirect:"/stdlib/runtime/"},{path:"/docs/standard-lib/runtime.html",redirect:"/stdlib/runtime/"},{name:"v-50fd8636",path:"/stdlib/util/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-50fd8636").then(n)}},{path:"/stdlib/util/index.html",redirect:"/stdlib/util/"},{path:"/docs/standard-lib/util.html",redirect:"/stdlib/util/"},{name:"v-5cae5c9a",path:"/syntax/assignments/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-5cae5c9a").then(n)}},{path:"/syntax/assignments/index.html",redirect:"/syntax/assignments/"},{path:"/docs/syntax/assignments.html",redirect:"/syntax/assignments/"},{name:"v-029550a4",path:"/syntax/comments/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-029550a4").then(n)}},{path:"/syntax/comments/index.html",redirect:"/syntax/comments/"},{path:"/docs/syntax/comments.html",redirect:"/syntax/comments/"},{name:"v-7728e4cc",path:"/syntax/defer/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-7728e4cc").then(n)}},{path:"/syntax/defer/index.html",redirect:"/syntax/defer/"},{path:"/docs/syntax/defer.html",redirect:"/syntax/defer/"},{name:"v-1eb4837a",path:"/syntax/for/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-1eb4837a").then(n)}},{path:"/syntax/for/index.html",redirect:"/syntax/for/"},{path:"/docs/syntax/for.html",redirect:"/syntax/for/"},{name:"v-0fec0a48",path:"/syntax/if/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-0fec0a48").then(n)}},{path:"/syntax/if/index.html",redirect:"/syntax/if/"},{path:"/docs/syntax/if.html",redirect:"/syntax/if/"},{name:"v-257855fa",path:"/syntax/operators/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-257855fa").then(n)}},{path:"/syntax/operators/index.html",redirect:"/syntax/operators/"},{path:"/docs/syntax/operators.html",redirect:"/syntax/operators/"},{name:"v-182e9994",path:"/syntax/return/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-182e9994").then(n)}},{path:"/syntax/return/index.html",redirect:"/syntax/return/"},{path:"/docs/syntax/return.html",redirect:"/syntax/return/"},{name:"v-e2f544cc",path:"/syntax/system-commands/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-e2f544cc").then(n)}},{path:"/syntax/system-commands/index.html",redirect:"/syntax/system-commands/"},{path:"/docs/syntax/system-commands.html",redirect:"/syntax/system-commands/"},{name:"v-237b678c",path:"/syntax/while/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-237b678c").then(n)}},{path:"/syntax/while/index.html",redirect:"/syntax/while/"},{path:"/docs/syntax/while.html",redirect:"/syntax/while/"},{name:"v-418595a8",path:"/types/array/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-418595a8").then(n)}},{path:"/types/array/index.html",redirect:"/types/array/"},{path:"/docs/types/array.html",redirect:"/types/array/"},{name:"v-763fe15a",path:"/types/builtin-function/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-763fe15a").then(n)}},{path:"/types/builtin-function/index.html",redirect:"/types/builtin-function/"},{path:"/docs/types/builtin-function.html",redirect:"/types/builtin-function/"},{name:"v-4684ade4",path:"/types/decorator/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-4684ade4").then(n)}},{path:"/types/decorator/index.html",redirect:"/types/decorator/"},{path:"/docs/types/decorator.html",redirect:"/types/decorator/"},{name:"v-643d93cc",path:"/types/function/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-643d93cc").then(n)}},{path:"/types/function/index.html",redirect:"/types/function/"},{path:"/docs/types/function.html",redirect:"/types/function/"},{name:"v-255ff2da",path:"/types/hash/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-255ff2da").then(n)}},{path:"/types/hash/index.html",redirect:"/types/hash/"},{path:"/docs/types/hash.html",redirect:"/types/hash/"},{name:"v-171a600c",path:"/types/number/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-171a600c").then(n)}},{path:"/types/number/index.html",redirect:"/types/number/"},{path:"/docs/types/number.html",redirect:"/types/number/"},{name:"v-27e6a2fa",path:"/types/string/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-27e6a2fa").then(n)}},{path:"/types/string/index.html",redirect:"/types/string/"},{path:"/docs/types/string.html",redirect:"/types/string/"},{name:"v-69030a13",path:"/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-69030a13").then(n)}},{path:"/index.html",redirect:"/"},{name:"v-3f455fde",path:"/introduction/why-another-scripting-language/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-3f455fde").then(n)}},{path:"/introduction/why-another-scripting-language/index.html",redirect:"/introduction/why-another-scripting-language/"},{path:"/introduction/",redirect:"/introduction/why-another-scripting-language/"},{name:"v-fa8e069c",path:"/introduction/how-to-run-abs-code/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-fa8e069c").then(n)}},{path:"/introduction/how-to-run-abs-code/index.html",redirect:"/introduction/how-to-run-abs-code/"},{path:"/introduction/how-to-run-abs-code.html",redirect:"/introduction/how-to-run-abs-code/"},{name:"v-610cca9e",path:"/playground/",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-610cca9e").then(n)}},{path:"/playground/index.html",redirect:"/playground/"},{name:"v-8f6845c8",path:"/quickstart.html",component:cs,beforeEnter:function(t,e,n){qa("Layout","v-8f6845c8").then(n)}},{path:"*",component:cs}],ls={title:"The ABS programing language",description:"Home of the ABS programming language: the joy of shell scripting.",base:"/",headTags:[["meta",{name:"theme-color",content:"#ec5975"}],["meta",{name:"apple-mobile-web-app-capable",content:"yes"}],["meta",{name:"apple-mobile-web-app-status-bar-style",content:"black"}],["link",{rel:"preconnect",href:"https://fonts.gstatic.com"}],["link",{rel:"stylesheet",href:"https://fonts.googleapis.com/css2?family=Inter:wght@300;500&display=swap"}],["link",{rel:"stylesheet",href:"https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@300;400;500;700;900&display=swap"}]],pages:[{title:"Getting Started",frontmatter:{},regularPath:"/docs/",relativePath:"docs/README.md",key:"v-3e4eb19e",path:"/docs/"},{title:"Installing 3rd party libraries",frontmatter:{permalink:"/misc/3pl"},regularPath:"/docs/misc/3pl.html",relativePath:"docs/misc/3pl.md",key:"v-1575bc4c",path:"/misc/3pl/",headers:[{level:2,title:"Supported hosting platforms",slug:"supported-hosting-platforms"}]},{title:"Configuring the REPL",frontmatter:{permalink:"/misc/configuring-the-repl"},regularPath:"/docs/misc/configuring-the-repl.html",relativePath:"docs/misc/configuring-the-repl.md",key:"v-5e970efe",path:"/misc/configuring-the-repl/",headers:[{level:2,title:"Configuring the ABS REPL Command Line Prompt",slug:"configuring-the-abs-repl-command-line-prompt"}]},{title:"Errors",frontmatter:{permalink:"/misc/error"},regularPath:"/docs/misc/error.html",relativePath:"docs/misc/error.md",key:"v-02297f0c",path:"/misc/error/"},{title:"Credits",frontmatter:{permalink:"/misc/credits"},regularPath:"/docs/misc/credits.html",relativePath:"docs/misc/credits.md",key:"v-324db8fa",path:"/misc/credits/",headers:[{level:2,title:"What next?",slug:"what-next"}]},{title:"Runtime",frontmatter:{permalink:"/misc/runtime"},regularPath:"/docs/misc/runtime.html",relativePath:"docs/misc/runtime.md",key:"v-87cd438c",path:"/misc/runtime/",headers:[{level:2,title:"ABS init file",slug:"abs-init-file"},{level:2,title:"ABS_INTERACTIVE",slug:"abs-interactive"}]},{title:"A few technical details...",frontmatter:{permalink:"/misc/technical-details"},regularPath:"/docs/misc/technical-details.html",relativePath:"docs/misc/technical-details.md",key:"v-b7bb3f8c",path:"/misc/technical-details/",headers:[{level:2,title:"Why is ABS interpreted?",slug:"why-is-abs-interpreted"},{level:2,title:"Why Go?",slug:"why-go"},{level:2,title:"Development & contributing",slug:"development-contributing"},{level:2,title:"Testing",slug:"testing"},{level:3,title:"Interpreter Error Location",slug:"interpreter-error-location"},{level:3,title:"String tests",slug:"string-tests"},{level:3,title:"Array and hash assignment tests",slug:"array-and-hash-assignment-tests"}]},{title:"Upgrading from ABS 1 to 2",frontmatter:{permalink:"/misc/upgrade-from-abs-1-to-2"},regularPath:"/docs/misc/upgrade-from-abs-1-to-2.html",relativePath:"docs/misc/upgrade-from-abs-1-to-2.md",key:"v-701af59a",path:"/misc/upgrade-from-abs-1-to-2/",headers:[{level:2,title:"Deprecated functions",slug:"deprecated-functions"},{level:2,title:"Misc",slug:"misc"},{level:2,title:"What more?",slug:"what-more"}]},{title:"@cli",frontmatter:{permalink:"/stdlib/cli"},regularPath:"/docs/standard-lib/cli.html",relativePath:"docs/standard-lib/cli.md",key:"v-7e0c66cc",path:"/stdlib/cli/",headers:[{level:2,title:"API",slug:"api"},{level:3,title:"@cli.cmd(name, description, default_flags)",slug:"cli-cmd-name-description-default-flags"},{level:3,title:"@cli.run()",slug:"cli-run"},{level:3,title:"@cli.repl()",slug:"cli-repl"},{level:2,title:"Example CLI app",slug:"example-cli-app"},{level:2,title:"Example REPL app",slug:"example-repl-app"}]},{title:"Standard library",frontmatter:{permalink:"/stdlib/intro"},regularPath:"/docs/standard-lib/intro.html",relativePath:"docs/standard-lib/intro.md",key:"v-5414df9a",path:"/stdlib/intro/",headers:[{level:2,title:"Requiring a standard library module",slug:"requiring-a-standard-library-module"},{level:2,title:"Technical details",slug:"technical-details"}]},{title:"@runtime",frontmatter:{permalink:"/stdlib/runtime"},regularPath:"/docs/standard-lib/runtime.html",relativePath:"docs/standard-lib/runtime.md",key:"v-f5d90ecc",path:"/stdlib/runtime/",headers:[{level:2,title:"API",slug:"api"},{level:3,title:"@runtime.version",slug:"runtime-version"},{level:3,title:"@runtime.name",slug:"runtime-name"}]},{title:"@util",frontmatter:{permalink:"/stdlib/util"},regularPath:"/docs/standard-lib/util.html",relativePath:"docs/standard-lib/util.md",key:"v-50fd8636",path:"/stdlib/util/",headers:[{level:2,title:"API",slug:"api"},{level:3,title:"@util.memoize(ttl)",slug:"util-memoize-ttl"}]},{title:"Assignments",frontmatter:{permalink:"/syntax/assignments"},regularPath:"/docs/syntax/assignments.html",relativePath:"docs/syntax/assignments.md",key:"v-5cae5c9a",path:"/syntax/assignments/",headers:[{level:2,title:"Variable names",slug:"variable-names"}]},{title:"Comments",frontmatter:{permalink:"/syntax/comments"},regularPath:"/docs/syntax/comments.html",relativePath:"docs/syntax/comments.md",key:"v-029550a4",path:"/syntax/comments/"},{title:"Defer",frontmatter:{permalink:"/syntax/defer"},regularPath:"/docs/syntax/defer.html",relativePath:"docs/syntax/defer.md",key:"v-7728e4cc",path:"/syntax/defer/"},{title:"For loops",frontmatter:{permalink:"/syntax/for"},regularPath:"/docs/syntax/for.html",relativePath:"docs/syntax/for.md",key:"v-1eb4837a",path:"/syntax/for/",headers:[{level:2,title:"Standard form",slug:"standard-form"},{level:2,title:"In form",slug:"in-form"},{level:2,title:"break and continue",slug:"break-and-continue"},{level:2,title:"For ... else ...",slug:"for-else"}]},{title:"If ... else",frontmatter:{permalink:"/syntax/if"},regularPath:"/docs/syntax/if.html",relativePath:"docs/syntax/if.md",key:"v-0fec0a48",path:"/syntax/if/"},{title:"Operators",frontmatter:{permalink:"/syntax/operators"},regularPath:"/docs/syntax/operators.html",relativePath:"docs/syntax/operators.md",key:"v-257855fa",path:"/syntax/operators/",headers:[{level:2,title:"==",slug:""},{level:2,title:"!=",slug:"-2"},{level:2,title:"+",slug:"-3"},{level:2,title:"+=",slug:"-4"},{level:2,title:"-",slug:"-5"},{level:2,title:"-=",slug:"-6"},{level:2,title:"*",slug:"-7"},{level:2,title:"*=",slug:"-8"},{level:2,title:"/",slug:"-9"},{level:2,title:"/=",slug:"-10"},{level:2,title:"in",slug:"in"},{level:2,title:"!in",slug:"in-2"},{level:2,title:"**",slug:"-11"},{level:2,title:"**=",slug:"-12"},{level:2,title:"%",slug:"-13"},{level:2,title:"%=",slug:"-14"},{level:2,title:">",slug:"-15"},{level:2,title:">=",slug:"-16"},{level:2,title:"<",slug:"-17"},{level:2,title:"<=",slug:"-18"},{level:2,title:"",slug:"-19"},{level:2,title:"&&",slug:"-20"},{level:2,title:"||",slug:"-21"},{level:2,title:".",slug:"-22"},{level:2,title:"?.",slug:"-23"},{level:2,title:"..",slug:"-24"},{level:2,title:"!",slug:"-25"},{level:2,title:"!!",slug:"-26"},{level:2,title:"~",slug:"-27"},{level:2,title:"&",slug:"-28"},{level:2,title:"|",slug:"-29"},{level:2,title:"^",slug:"-30"},{level:2,title:">>",slug:"-31"},{level:2,title:"<<",slug:"-32"}]},{title:"Returning values",frontmatter:{permalink:"/syntax/return"},regularPath:"/docs/syntax/return.html",relativePath:"docs/syntax/return.md",key:"v-182e9994",path:"/syntax/return/"},{title:"System (shell) commands",frontmatter:{permalink:"/syntax/system-commands"},regularPath:"/docs/syntax/system-commands.html",relativePath:"docs/syntax/system-commands.md",key:"v-e2f544cc",path:"/syntax/system-commands/",headers:[{level:2,title:"Executing commands in background",slug:"executing-commands-in-background"},{level:2,title:"Interpolation",slug:"interpolation"},{level:2,title:"Using a different shell",slug:"using-a-different-shell"},{level:2,title:"Alternative \\$() syntax",slug:"alternative-syntax"},{level:2,title:"Executing commands without capturing I/O",slug:"executing-commands-without-capturing-i-o"}]},{title:"While",frontmatter:{permalink:"/syntax/while"},regularPath:"/docs/syntax/while.html",relativePath:"docs/syntax/while.md",key:"v-237b678c",path:"/syntax/while/"},{title:"Array",frontmatter:{permalink:"/types/array"},regularPath:"/docs/types/array.html",relativePath:"docs/types/array.md",key:"v-418595a8",path:"/types/array/",headers:[{level:2,title:"Supported functions",slug:"supported-functions"},{level:3,title:"chunk(size)",slug:"chunk-size"},{level:3,title:"diff(array)",slug:"diff-array"},{level:3,title:"diff_symmetric(array)",slug:"diff-symmetric-array"},{level:3,title:"every(f)",slug:"every-f"},{level:3,title:"filter(f)",slug:"filter-f"},{level:3,title:"find(f)",slug:"find-f"},{level:3,title:"flatten()",slug:"flatten"},{level:3,title:"flatten_deep()",slug:"flatten-deep"},{level:3,title:"intersect(array)",slug:"intersect-array"},{level:3,title:"join([separator])",slug:"join-separator"},{level:3,title:"keys()",slug:"keys"},{level:3,title:"len()",slug:"len"},{level:3,title:"map(f)",slug:"map-f"},{level:3,title:"max()",slug:"max"},{level:3,title:"min()",slug:"min"},{level:3,title:"partition(f)",slug:"partition-f"},{level:3,title:"pop()",slug:"pop"},{level:3,title:"push(x)",slug:"push-x"},{level:3,title:"reduce(f, accumulator)",slug:"reduce-f-accumulator"},{level:3,title:"reverse()",slug:"reverse"},{level:3,title:"shift()",slug:"shift"},{level:3,title:"shuffle()",slug:"shuffle"},{level:3,title:"some(f)",slug:"some-f"},{level:3,title:"sort()",slug:"sort"},{level:3,title:"str()",slug:"str"},{level:3,title:"sum()",slug:"sum"},{level:3,title:"tsv([separator[, header]])",slug:"tsv-separator-header"},{level:3,title:"union(array)",slug:"union-array"},{level:3,title:"unique()",slug:"unique"}]},{title:"Builtin function",frontmatter:{permalink:"/types/builtin-function"},regularPath:"/docs/types/builtin-function.html",relativePath:"docs/types/builtin-function.md",key:"v-763fe15a",path:"/types/builtin-function/",headers:[{level:2,title:"Generic builtin functions",slug:"generic-builtin-functions"},{level:3,title:"arg(n)",slug:"arg-n"},{level:3,title:"args()",slug:"args"},{level:3,title:"cd() or cd(path)",slug:"cd-or-cd-path"},{level:3,title:"echo(var)",slug:"echo-var"},{level:3,title:"env(str)",slug:"env-str"},{level:3,title:"eval(str)",slug:"eval-str"},{level:3,title:"exit(code [, message])",slug:"exit-code-message"},{level:3,title:"flag(str)",slug:"flag-str"},{level:3,title:"pwd()",slug:"pwd"},{level:3,title:"rand(max)",slug:"rand-max"},{level:3,title:"require(pathtofile.abs)",slug:"require-path-to-file-abs"},{level:3,title:"sleep(ms)",slug:"sleep-ms"},{level:3,title:"source(pathtofile.abs)",slug:"source-path-to-file-abs"},{level:3,title:"stdin()",slug:"stdin"},{level:3,title:"type(var)",slug:"type-var"},{level:3,title:"unix_ms()",slug:"unix-ms"}]},{title:"Decorator",frontmatter:{permalink:"/types/decorator"},regularPath:"/docs/types/decorator.html",relativePath:"docs/types/decorator.md",key:"v-4684ade4",path:"/types/decorator/",headers:[{level:2,title:"Simple decorators",slug:"simple-decorators"},{level:2,title:"Decorators with arguments",slug:"decorators-with-arguments"}]},{title:"Function",frontmatter:{permalink:"/types/function"},regularPath:"/docs/types/function.html",relativePath:"docs/types/function.md",key:"v-643d93cc",path:"/types/function/",headers:[{level:2,title:"Named functions",slug:"named-functions"},{level:2,title:"Optional parameters",slug:"optional-parameters"},{level:2,title:"Accessing function arguments",slug:"accessing-function-arguments"},{level:2,title:"Supported functions",slug:"supported-functions"},{level:3,title:"call(args)",slug:"call-args"},{level:3,title:"str()",slug:"str"}]},{title:"Hash",frontmatter:{permalink:"/types/hash"},regularPath:"/docs/types/hash.html",relativePath:"docs/types/hash.md",key:"v-255ff2da",path:"/types/hash/",headers:[{level:2,title:"Supported functions",slug:"supported-functions"},{level:3,title:"items()",slug:"items"},{level:3,title:"keys()",slug:"keys"},{level:3,title:"pop(k)",slug:"pop-k"},{level:3,title:"str()",slug:"str"},{level:3,title:"values()",slug:"values"},{level:2,title:"User-defined functions",slug:"user-defined-functions"}]},{title:"Number",frontmatter:{permalink:"/types/number"},regularPath:"/docs/types/number.html",relativePath:"docs/types/number.md",key:"v-171a600c",path:"/types/number/",headers:[{level:2,title:"Supported functions",slug:"supported-functions"},{level:3,title:"between(min, max)",slug:"between-min-max"},{level:3,title:"ceil()",slug:"ceil"},{level:3,title:"clamp(min, max)",slug:"clamp-min-max"},{level:3,title:"floor()",slug:"floor"},{level:3,title:"int()",slug:"int"},{level:3,title:"number()",slug:"number-2"},{level:3,title:"round([precision])",slug:"round-precision"},{level:3,title:"str()",slug:"str"}]},{title:"String",frontmatter:{permalink:"/types/string"},regularPath:"/docs/types/string.html",relativePath:"docs/types/string.md",key:"v-27e6a2fa",path:"/types/string/",headers:[{level:2,title:"Interpolation",slug:"interpolation"},{level:2,title:"Special characters embedded in strings",slug:"special-characters-embedded-in-strings"},{level:2,title:"Unicode support",slug:"unicode-support"},{level:3,title:"Working with special characters in string functions",slug:"working-with-special-characters-in-string-functions"},{level:2,title:"Supported functions",slug:"supported-functions"},{level:3,title:"any(str)",slug:"any-str"},{level:3,title:"camel()",slug:"camel"},{level:3,title:"ceil()",slug:"ceil"},{level:3,title:"floor()",slug:"floor"},{level:3,title:"fmt()",slug:"fmt"},{level:3,title:"index(str)",slug:"index-str"},{level:3,title:"int()",slug:"int"},{level:3,title:"is_number()",slug:"is-number"},{level:3,title:"json()",slug:"json"},{level:3,title:"kebab()",slug:"kebab"},{level:3,title:"last_index(str)",slug:"last-index-str"},{level:3,title:"len()",slug:"len"},{level:3,title:"lines()",slug:"lines"},{level:3,title:"lower()",slug:"lower"},{level:3,title:"number()",slug:"number"},{level:3,title:"prefix(str)",slug:"prefix-str"},{level:3,title:"repeat(i)",slug:"repeat-i"},{level:3,title:"replace(str1, str2 [, n])",slug:"replace-str1-str2-n"},{level:3,title:"reverse()",slug:"reverse"},{level:3,title:"round(precision?)",slug:"round-precision"},{level:3,title:"snake()",slug:"snake"},{level:3,title:"split(separator)",slug:"split-separator"},{level:3,title:"str()",slug:"str"},{level:3,title:"suffix(str)",slug:"suffix-str"},{level:3,title:"title()",slug:"title"},{level:3,title:"trim()",slug:"trim"},{level:3,title:"trim_by(str)",slug:"trim-by-str"},{level:3,title:"upper()",slug:"upper"}]},{title:"Home",frontmatter:{home:!0,heroImage:"/abs-horizontal.png",tagline:"Bring back the joy of shell scripting.",actionText:"Quick Start →",actionLink:"/quickstart/",footer:"©️ 2021 -- No developers were harmed in the making of this language"},regularPath:"/",relativePath:"index.md",key:"v-69030a13",path:"/"},{title:"Why another scripting language?",frontmatter:{permalink:"/introduction/why-another-scripting-language"},regularPath:"/introduction/",relativePath:"introduction/README.md",key:"v-3f455fde",path:"/introduction/why-another-scripting-language/",headers:[{level:2,title:"Next",slug:"next"}]},{title:"How to run ABS code",frontmatter:{permalink:"/introduction/how-to-run-abs-code"},regularPath:"/introduction/how-to-run-abs-code.html",relativePath:"introduction/how-to-run-abs-code.md",key:"v-fa8e069c",path:"/introduction/how-to-run-abs-code/",headers:[{level:2,title:"REPL",slug:"repl"},{level:2,title:"Next",slug:"next"}]},{frontmatter:{},regularPath:"/playground/",relativePath:"playground/README.md",key:"v-610cca9e",path:"/playground/"},{title:"Quickstart",frontmatter:{},regularPath:"/quickstart.html",relativePath:"quickstart.md",key:"v-8f6845c8",path:"/quickstart.html",headers:[{level:2,title:"REPL",slug:"repl"},{level:2,title:"ABS from bash",slug:"abs-from-bash"},{level:2,title:"Explore the docs!",slug:"explore-the-docs"}]}],themeConfig:{repo:"https://github.com/abs-lang/abs",logo:"/abs-horizontal.png",search:!1,editLinks:!1,docsDir:"",editLinkText:"",lastUpdated:!1,sidebarDepth:0,nav:[{text:"Quick start",link:"/quickstart/"},{text:"Docs",link:"/docs/"},{text:"Playground",link:"/playground/"}],sidebar:{"/introduction/":[{title:"Introduction",collapsable:!1,children:["","how-to-run-abs-code"]}],"/docs/":[{title:"Getting Started",path:"/docs/",collapsable:!1},{title:"Syntax",collapsable:!1,children:["syntax/assignments","syntax/return","syntax/if","syntax/for","syntax/while","syntax/system-commands","syntax/operators","syntax/comments","syntax/defer"]},{title:"Types and Functions",collapsable:!1,children:["types/string","types/number","types/array","types/hash","types/function","types/builtin-function","types/decorator"]},{title:"Standard Library",collapsable:!1,children:["standard-lib/intro","standard-lib/runtime","standard-lib/cli","standard-lib/util"]},{title:"Miscellaneous",collapsable:!1,children:["misc/3pl","misc/error","misc/configuring-the-repl","misc/runtime","misc/technical-details","misc/upgrade-from-abs-1-to-2","misc/credits"]}]}}};n(299);Lo.component("PlayGround",(function(){return Promise.all([n.e(0),n.e(3),n.e(8)]).then(n.bind(null,508))})),Lo.component("Badge",(function(){return Promise.all([n.e(0),n.e(5)]).then(n.bind(null,544))})),Lo.component("CodeBlock",(function(){return Promise.all([n.e(0),n.e(6)]).then(n.bind(null,509))})),Lo.component("CodeGroup",(function(){return Promise.all([n.e(0),n.e(7)]).then(n.bind(null,510))}));n(300);var fs=[function(t){t.Vue,t.options,t.router,t.siteData},{},function(t){t.Vue.mixin({computed:{$dataBlock:function(){return this.$options.__data__block__}}})},{},{}],ps=[];function ds(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}n(301);function hs(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function vs(t,e,n){return e&&hs(t.prototype,e),n&&hs(t,n),t}n(167);n(158);function ms(t,e){return(ms=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}n(159);function ys(t){return(ys=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}var gs=n(164),bs=n.n(gs);function xs(t,e){return!e||"object"!==bs()(e)&&"function"!=typeof e?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):e}function _s(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,r=ys(t);if(e){var o=ys(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return xs(this,n)}}var ws=function(t){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&ms(t,e)}(n,t);var e=_s(n);function n(){return ds(this,n),e.apply(this,arguments)}return n}(function(){function t(){ds(this,t),this.store=new Lo({data:{state:{}}})}return vs(t,[{key:"$get",value:function(t){return this.store.state[t]}},{key:"$set",value:function(t,e){Lo.set(this.store.state,t,e)}},{key:"$emit",value:function(){var t;(t=this.store).$emit.apply(t,arguments)}},{key:"$on",value:function(){var t;(t=this.store).$on.apply(t,arguments)}}]),t}());Object.assign(ws.prototype,{getPageAsyncComponent:Ua,getLayoutAsyncComponent:Ba,getAsyncComponent:za,getVueComponent:Va});var Os={install:function(t){var e=new ws;t.$vuepress=e,t.prototype.$vuepress=e}};function ks(t){t.beforeEach((function(e,n,r){if(Ss(t,e.path))r();else if(/(\/|\.html)$/.test(e.path))if(/\/$/.test(e.path)){var o=e.path.replace(/\/$/,"")+".html";Ss(t,o)?r(o):r()}else r();else{var i=e.path+"/",a=e.path+".html";Ss(t,a)?r(a):Ss(t,i)?r(i):r()}}))}function Ss(t,e){var n=e.toLowerCase();return t.options.routes.some((function(t){return t.path.toLowerCase()===n}))}var js={props:{pageKey:String,slotKey:{type:String,default:"default"}},render:function(t){var e=this.pageKey||this.$parent.$page.key;return Ha("pageKey",e),Lo.component(e)||Lo.component(e,Ua(e)),Lo.component(e)?t(e):t("")}},Es={functional:!0,props:{slotKey:String,required:!0},render:function(t,e){var n=e.props,r=e.slots;return t("div",{class:["content__".concat(n.slotKey)]},r()[n.slotKey])}},As={computed:{openInNewWindowTitle:function(){return this.$themeLocaleConfig.openNewWindowText||"(opens new window)"}}},Cs=(n(303),n(304),Object(ss.a)(As,(function(){var t=this.$createElement,e=this._self._c||t;return e("span",[e("svg",{staticClass:"icon outbound",attrs:{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",x:"0px",y:"0px",viewBox:"0 0 100 100",width:"15",height:"15"}},[e("path",{attrs:{fill:"currentColor",d:"M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"}}),this._v(" "),e("polygon",{attrs:{fill:"currentColor",points:"45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"}})]),this._v(" "),e("span",{staticClass:"sr-only"},[this._v(this._s(this.openInNewWindowTitle))])])}),[],!1,null,null,null).exports);function $s(){return($s=Object(r.a)(regeneratorRuntime.mark((function t(e){var n,r,o,i;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n="undefined"!=typeof window&&window.__VUEPRESS_ROUTER_BASE__?window.__VUEPRESS_ROUTER_BASE__:ls.routerBase||ls.base,ks(r=new Oa({base:n,mode:"history",fallback:!1,routes:us,scrollBehavior:function(t,e,n){return n||(t.hash?!Lo.$vuepress.$get("disableScrollBehavior")&&{selector:decodeURIComponent(t.hash)}:{x:0,y:0})}})),o={},t.prev=4,t.next=7,Promise.all(fs.filter((function(t){return"function"==typeof t})).map((function(t){return t({Vue:Lo,options:o,router:r,siteData:ls,isServer:e})})));case 7:t.next=12;break;case 9:t.prev=9,t.t0=t.catch(4),console.error(t.t0);case 12:return i=new Lo(Object.assign(o,{router:r,render:function(t){return t("div",{attrs:{id:"app"}},[t("RouterView",{ref:"layout"}),t("div",{class:"global-ui"},ps.map((function(e){return t(e)})))])}})),t.abrupt("return",{app:i,router:r});case 14:case"end":return t.stop()}}),t,null,[[4,9]])})))).apply(this,arguments)}Lo.config.productionTip=!1,Lo.use(Oa),Lo.use(Os),Lo.mixin(function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Lo;ka(e),n.$vuepress.$set("siteData",e);var r=t(n.$vuepress.$get("siteData")),o=new r,i=Object.getOwnPropertyDescriptors(Object.getPrototypeOf(o)),a={};return Object.keys(i).reduce((function(t,e){return e.startsWith("$")&&(t[e]=i[e].get),t}),a),{computed:a}}((function(t){return function(){function e(){ds(this,e)}return vs(e,[{key:"setPage",value:function(t){this.__page=t}},{key:"$site",get:function(){return t}},{key:"$themeConfig",get:function(){return this.$site.themeConfig}},{key:"$frontmatter",get:function(){return this.$page.frontmatter}},{key:"$localeConfig",get:function(){var t,e,n=this.$site.locales,r=void 0===n?{}:n;for(var o in r)"/"===o?e=r[o]:0===this.$page.path.indexOf(o)&&(t=r[o]);return t||e||{}}},{key:"$siteTitle",get:function(){return this.$localeConfig.title||this.$site.title||""}},{key:"$canonicalUrl",get:function(){var t=this.$page.frontmatter.canonicalUrl;return"string"==typeof t&&t}},{key:"$title",get:function(){var t=this.$page,e=this.$page.frontmatter.metaTitle;if("string"==typeof e)return e;var n=this.$siteTitle,r=t.frontmatter.home?null:t.frontmatter.title||t.title;return n?r?r+" | "+n:n:r||"VuePress"}},{key:"$description",get:function(){var t=function(t){if(t){var e=t.filter((function(t){return"description"===t.name}))[0];if(e)return e.content}}(this.$page.frontmatter.meta);return t||(this.$page.frontmatter.description||this.$localeConfig.description||this.$site.description||"")}},{key:"$lang",get:function(){return this.$page.frontmatter.lang||this.$localeConfig.lang||"en-US"}},{key:"$localePath",get:function(){return this.$localeConfig.path||"/"}},{key:"$themeLocaleConfig",get:function(){return(this.$site.themeConfig.locales||{})[this.$localePath]||{}}},{key:"$page",get:function(){return this.__page?this.__page:function(t,e){for(var n=0;n<t.length;n++){var r=t[n];if(r.path.toLowerCase()===e.toLowerCase())return r}return{path:"",frontmatter:{}}}(this.$site.pages,this.$route.path)}}]),e}()}),ls)),Lo.component("Content",js),Lo.component("ContentSlotsDistributor",Es),Lo.component("OutboundLink",Cs),Lo.component("ClientOnly",{functional:!0,render:function(t,e){var n=e.parent,r=e.children;if(n._isMounted)return r;n.$once("hook:mounted",(function(){n.$forceUpdate()}))}}),Lo.component("Layout",Ba("Layout")),Lo.component("NotFound",Ba("NotFound")),Lo.prototype.$withBase=function(t){var e=this.$site.base;return"/"===t.charAt(0)?e+t.slice(1):t},window.__VUEPRESS__={version:"1.8.2",hash:"68af347"},function(t){return $s.apply(this,arguments)}(!1).then((function(t){var e=t.app;t.router.onReady((function(){e.$mount("#app")}))}))}]); \ No newline at end of file diff --git a/docs/src/.vuepress/dist/docs/index.html b/docs/src/.vuepress/dist/docs/index.html index ec04a6e8..c230d9c8 100644 --- a/docs/src/.vuepress/dist/docs/index.html +++ b/docs/src/.vuepress/dist/docs/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/12.659d0d44.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/12.659d0d44.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -33,7 +33,7 @@ Playground </a></div> <a href="https://github.com/abs-lang/abs" target="_blank" rel="noopener noreferrer" class="repo-link"> GitHub - <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" aria-current="page" class="active sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="getting-started"><a href="#getting-started" class="header-anchor">#</a> Getting Started</h1> <p>ABS is a programming language that works best when you're scripting on + <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" aria-current="page" class="active sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li><li><a href="/syntax/defer/" class="sidebar-link">Defer</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="getting-started"><a href="#getting-started" class="header-anchor">#</a> Getting Started</h1> <p>ABS is a programming language that works best when you're scripting on your terminal. It tries to combine the elegance of languages such as Python, or Ruby, to the convenience of Bash.</p> <div class="language-js extra-class"><pre class="language-js"><code>tz <span class="token operator">=</span> <span class="token template-string"><span class="token template-punctuation string">`</span><span class="token string">cat /etc/timezone</span><span class="token template-punctuation string">`</span></span><span class="token punctuation">;</span> continent<span class="token punctuation">,</span> city <span class="token operator">=</span> tz<span class="token punctuation">.</span><span class="token function">split</span><span class="token punctuation">(</span><span class="token string">"/"</span><span class="token punctuation">)</span> @@ -84,6 +84,6 @@ </a> → </span></p></div> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/12.659d0d44.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/12.659d0d44.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/index.html b/docs/src/.vuepress/dist/index.html index e211b7c6..e97a3576 100644 --- a/docs/src/.vuepress/dist/index.html +++ b/docs/src/.vuepress/dist/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/9.06b397f7.js" as="script"><link rel="preload" href="/assets/js/39.90a73f07.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/9.06b397f7.js" as="script"><link rel="preload" href="/assets/js/40.624e2309.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container no-sidebar"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" aria-current="page" class="home-link router-link-exact-active router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -63,6 +63,6 @@ $</code></pre></div></div> <div class="theme-default-content custom content__default" data-v-60105dea></div> <div class="footer" data-v-60105dea> ©️ 2021 -- No developers were harmed in the making of this language </div></main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/9.06b397f7.js" defer></script><script src="/assets/js/39.90a73f07.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/9.06b397f7.js" defer></script><script src="/assets/js/40.624e2309.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/introduction/how-to-run-abs-code/index.html b/docs/src/.vuepress/dist/introduction/how-to-run-abs-code/index.html index e7f0cf00..7d600250 100644 --- a/docs/src/.vuepress/dist/introduction/how-to-run-abs-code/index.html +++ b/docs/src/.vuepress/dist/introduction/how-to-run-abs-code/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/41.877b1d87.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/42.32bcbdf0.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -75,6 +75,6 @@ <a href="/introduction/why-another-scripting-language/" class="prev"> Why another scripting language? </a></span> <!----></p></div> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/41.877b1d87.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/42.32bcbdf0.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/introduction/why-another-scripting-language/index.html b/docs/src/.vuepress/dist/introduction/why-another-scripting-language/index.html index 93ee8576..2972af34 100644 --- a/docs/src/.vuepress/dist/introduction/why-another-scripting-language/index.html +++ b/docs/src/.vuepress/dist/introduction/why-another-scripting-language/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/40.8adf4179.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/41.1bafbf2f.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -77,7 +77,7 @@ <span class="token comment"># The game was played at the TD Garden in Boston</span> <span class="token comment"># The press said: "Thomas scores 19 of 44 points in 4th quarter"</span> </code></pre></div><p>You will notice 3 things:</p> <ul><li><a href="https://en.wikipedia.org/wiki/Isaiah_Thomas_(basketball)" target="_blank" rel="noopener noreferrer">Isiah Thomas<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a> seems to be a really good player</li> <li>you should be very familiar with the above syntax</li> <li>the language is capable of seamlessly throwing shell commands into the mix</li></ul> <p>This is exactly why ABS was born: a familiar syntax, and the convenience of Bash.</p> <p>A sneak-peek at some of the things ABS can elegantly do:</p> <div class="language-bash extra-class"><pre class="language-bash"><code><span class="token comment"># Unix pipes work</span> -<span class="token function">ip</span> <span class="token operator">=</span> <span class="token variable"><span class="token variable">`</span><span class="token function">curl</span> icanhazip.com <span class="token operator">|</span> <span class="token function">tr</span> -d <span class="token string">'<span class="token entity" title="\n">\n</span>'</span><span class="token variable">`</span></span> +<span class="token function">ip</span> <span class="token operator">=</span> <span class="token variable"><span class="token variable">`</span><span class="token function">curl</span> icanhazip.com <span class="token operator">|</span> <span class="token function">tr</span> -d <span class="token string">'\n'</span><span class="token variable">`</span></span> <span class="token comment"># We now have a string -> "10.10.10.12"</span> echo<span class="token punctuation">(</span>ip<span class="token punctuation">)</span> @@ -101,6 +101,6 @@ </a> → </span></p></div> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/40.8adf4179.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/41.1bafbf2f.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/misc/3pl/index.html b/docs/src/.vuepress/dist/misc/3pl/index.html index 7c9925f1..64817dad 100644 --- a/docs/src/.vuepress/dist/misc/3pl/index.html +++ b/docs/src/.vuepress/dist/misc/3pl/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/13.36679573.js" as="script"><link rel="preload" href="/assets/js/5.502fc703.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/13.bd56ae9e.js" as="script"><link rel="preload" href="/assets/js/5.a310200e.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -33,9 +33,9 @@ Playground </a></div> <a href="https://github.com/abs-lang/abs" target="_blank" rel="noopener noreferrer" class="repo-link"> GitHub - <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" aria-current="page" class="active sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="installing-3rd-party-libraries"><a href="#installing-3rd-party-libraries" class="header-anchor">#</a> Installing 3rd party libraries <span class="badge warning" style="vertical-align:top;" data-v-15b7b770>experimental</span></h1> <p>The ABS interpreter comes with a built-in installer for 3rd party libraries, + <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li><li><a href="/syntax/defer/" class="sidebar-link">Defer</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" aria-current="page" class="active sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="installing-3rd-party-libraries"><a href="#installing-3rd-party-libraries" class="header-anchor">#</a> Installing 3rd party libraries <span class="badge warning" style="vertical-align:top;" data-v-15b7b770>experimental</span></h1> <p>The ABS interpreter comes with a built-in installer for 3rd party libraries, very similar to <code>npm install</code>, <code>pip install</code> or <code>go get</code>.</p> <p>The installer, bundled since the <code>1.8.0</code> release, is currently <strong>experimental</strong> -and a few things might change.</p> <p>In order to install a package, you simply need to run <code>abs get</code>:</p> <div class="language-bash extra-class"><pre class="language-bash"><code>$ abs get github.com/abs-lang/abs-sample-module +and a few things might change.</p> <p>In order to install a package, you simply need to run <code>abs get</code>:</p> <div class="language-bash extra-class"><pre class="language-bash"><code>$ abs get github.com/abs-lang/abs-sample-module 🌘 - Downloading archive Unpacking<span class="token punctuation">..</span>. Creating alias<span class="token punctuation">..</span>. @@ -55,12 +55,12 @@ Creating alias... Install Success. You can use the module with `require("abs-sample-module")` -$ cat packages.abs.json +$ cat packages.abs.json { "abs-sample-module": "./vendor/github.com/abs-lang/abs-sample-module" } </code></pre></div><p>If an alias is already taken, the installer will let you know that you -will need to use the full path when requiring the module:</p> <div class="language- extra-class"><pre class="language-text"><code>$ echo '{"abs-sample-module": "xyz"}' > packages.abs.json +will need to use the full path when requiring the module:</p> <div class="language- extra-class"><pre class="language-text"><code>$ echo '{"abs-sample-module": "xyz"}' > packages.abs.json $ abs get github.com/abs-lang/abs-sample-module 🌘 - Downloading archive @@ -69,7 +69,7 @@ Install Success. You can use the module with `require("./vendor/github.com/abs-lang/abs-sample-module")` </code></pre></div><p>When requiring a module, ABS will try to load the <code>index.abs</code> file unless -another file is specified:</p> <div class="language- extra-class"><pre class="language-text"><code>$ ~/projects/abs/builds/abs +another file is specified:</p> <div class="language- extra-class"><pre class="language-text"><code>$ ~/projects/abs/builds/abs Hello alex, welcome to the ABS programming language! Type 'quit' when you're done, 'help' if you get lost! @@ -90,6 +90,6 @@ </a> → </span></p></div> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/13.36679573.js" defer></script><script src="/assets/js/5.502fc703.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/13.bd56ae9e.js" defer></script><script src="/assets/js/5.a310200e.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/misc/configuring-the-repl/index.html b/docs/src/.vuepress/dist/misc/configuring-the-repl/index.html index 79e9be3e..20298d0a 100644 --- a/docs/src/.vuepress/dist/misc/configuring-the-repl/index.html +++ b/docs/src/.vuepress/dist/misc/configuring-the-repl/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/14.6d48fe2d.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/14.6d48fe2d.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -33,7 +33,7 @@ Playground </a></div> <a href="https://github.com/abs-lang/abs" target="_blank" rel="noopener noreferrer" class="repo-link"> GitHub - <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" aria-current="page" class="active sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="configuring-the-repl"><a href="#configuring-the-repl" class="header-anchor">#</a> Configuring the REPL</h1> <p>Interactive REPL sessions can restore and save the command + <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li><li><a href="/syntax/defer/" class="sidebar-link">Defer</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" aria-current="page" class="active sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="configuring-the-repl"><a href="#configuring-the-repl" class="header-anchor">#</a> Configuring the REPL</h1> <p>Interactive REPL sessions can restore and save the command history to a history file containing a maximum number of command lines.</p> <p>The prompt live history is restored from the history file when the REPL starts and then saved again when the REPL exits. This way you can navigate through the command lines from your previous sessions @@ -97,6 +97,6 @@ </a> → </span></p></div> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/14.6d48fe2d.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/14.6d48fe2d.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/misc/credits/index.html b/docs/src/.vuepress/dist/misc/credits/index.html index 0a213af6..4d43e8cb 100644 --- a/docs/src/.vuepress/dist/misc/credits/index.html +++ b/docs/src/.vuepress/dist/misc/credits/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/15.9256a41a.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/15.9256a41a.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -33,12 +33,12 @@ Playground </a></div> <a href="https://github.com/abs-lang/abs" target="_blank" rel="noopener noreferrer" class="repo-link"> GitHub - <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" aria-current="page" class="active sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="credits"><a href="#credits" class="header-anchor">#</a> Credits</h1> <ul><li><a href="https://www.antlr.org/" target="_blank" rel="noopener noreferrer">Terence Parr, creator of ANTLR<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a>, for his legendary work on parser generators</li> <li><a href="https://interpreterbook.com/" target="_blank" rel="noopener noreferrer">Thorsten Ball<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a>, for demystifying interpreters and providing the initial codebase for the ABS interpreter through <a href="https://interpreterbook.com/" target="_blank" rel="noopener noreferrer">the interpreter book<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li> <li><a href="https://en.wikipedia.org/wiki/Bash_(Unix_shell)" target="_blank" rel="noopener noreferrer">Bash<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a>: no matter at what stage of our relationship with Bash we're on, we believe it's still the #1 language for productivity around the shell. That is until ABS...</li></ul> <h2 id="what-next"><a href="#what-next" class="header-anchor">#</a> What next?</h2> <p>That's about it for ABS' documentation, you made it till the very end: + <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li><li><a href="/syntax/defer/" class="sidebar-link">Defer</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" aria-current="page" class="active sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="credits"><a href="#credits" class="header-anchor">#</a> Credits</h1> <ul><li><a href="https://www.antlr.org/" target="_blank" rel="noopener noreferrer">Terence Parr, creator of ANTLR<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a>, for his legendary work on parser generators</li> <li><a href="https://interpreterbook.com/" target="_blank" rel="noopener noreferrer">Thorsten Ball<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a>, for demystifying interpreters and providing the initial codebase for the ABS interpreter through <a href="https://interpreterbook.com/" target="_blank" rel="noopener noreferrer">the interpreter book<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li> <li><a href="https://en.wikipedia.org/wiki/Bash_(Unix_shell)" target="_blank" rel="noopener noreferrer">Bash<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a>: no matter at what stage of our relationship with Bash we're on, we believe it's still the #1 language for productivity around the shell. That is until ABS...</li></ul> <h2 id="what-next"><a href="#what-next" class="header-anchor">#</a> What next?</h2> <p>That's about it for ABS' documentation, you made it till the very end: get out there and start enjoying shell scripting like it's 2021!</p></div> <footer class="page-edit"><!----> <!----></footer> <div class="page-nav"><p class="inner"><span class="prev"> ← <a href="/misc/upgrade-from-abs-1-to-2/" class="prev"> Upgrading from ABS 1 to 2 </a></span> <!----></p></div> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/15.9256a41a.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/15.9256a41a.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/misc/error/index.html b/docs/src/.vuepress/dist/misc/error/index.html index 2176d09e..3abbef7f 100644 --- a/docs/src/.vuepress/dist/misc/error/index.html +++ b/docs/src/.vuepress/dist/misc/error/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/16.5be27a16.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/16.5be27a16.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -33,7 +33,7 @@ Playground </a></div> <a href="https://github.com/abs-lang/abs" target="_blank" rel="noopener noreferrer" class="repo-link"> GitHub - <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" aria-current="page" class="active sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="errors"><a href="#errors" class="header-anchor">#</a> Errors</h1> <p>When using ABS, you might bump into errors within your code. When the interpreter finds an error, it will give up trying to execute the script and will exit with status code <code>99</code>.</p> <p>Note that there are 2 phases of the interpreter: parser and evaluator.</p> <p>When the parser phase encounters a syntax error it will continue to process the rest of the file and report all of the syntax errors it finds.</p> <p>However, the evaluator phase will quit immediately when it encounters an evaluation error. Thus, you may need to run the ABS interpreter multiple times to find all the run-time errors.</p> <p>When you are running ABS interactively in the Run, Eval, Print Loop (REPL) the location of the error can only be the current line you just entered.</p> <p>However, when you are running ABS over a script file (even a small one) locating errors requires more help from the interpreter. ABS now provides <code>[line:column]</code> positions as well as the error line itself following the error message.</p> <p>For example, a file with syntax errors might look like this when the first syntax error is in line 4 at column 5.</p> <div class="language- extra-class"><pre class="language-text"><code>$ cat examples/error-parse.abs + <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li><li><a href="/syntax/defer/" class="sidebar-link">Defer</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" aria-current="page" class="active sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="errors"><a href="#errors" class="header-anchor">#</a> Errors</h1> <p>When using ABS, you might bump into errors within your code. When the interpreter finds an error, it will give up trying to execute the script and will exit with status code <code>99</code>.</p> <p>Note that there are 2 phases of the interpreter: parser and evaluator.</p> <p>When the parser phase encounters a syntax error it will continue to process the rest of the file and report all of the syntax errors it finds.</p> <p>However, the evaluator phase will quit immediately when it encounters an evaluation error. Thus, you may need to run the ABS interpreter multiple times to find all the run-time errors.</p> <p>When you are running ABS interactively in the Run, Eval, Print Loop (REPL) the location of the error can only be the current line you just entered.</p> <p>However, when you are running ABS over a script file (even a small one) locating errors requires more help from the interpreter. ABS now provides <code>[line:column]</code> positions as well as the error line itself following the error message.</p> <p>For example, a file with syntax errors might look like this when the first syntax error is in line 4 at column 5.</p> <div class="language- extra-class"><pre class="language-text"><code>$ cat examples/error-parse.abs # there are multiple parser errors in this file # this is a malformed identifier @@ -81,6 +81,6 @@ </a> → </span></p></div> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/16.5be27a16.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/16.5be27a16.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/misc/runtime/index.html b/docs/src/.vuepress/dist/misc/runtime/index.html index b1587451..b2ba0e06 100644 --- a/docs/src/.vuepress/dist/misc/runtime/index.html +++ b/docs/src/.vuepress/dist/misc/runtime/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/17.029f3679.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/17.029f3679.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -33,7 +33,7 @@ Playground </a></div> <a href="https://github.com/abs-lang/abs" target="_blank" rel="noopener noreferrer" class="repo-link"> GitHub - <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" aria-current="page" class="active sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="runtime"><a href="#runtime" class="header-anchor">#</a> Runtime</h1> <p>The ABS runtime lets you customize how ABS scripts are interpreted, + <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li><li><a href="/syntax/defer/" class="sidebar-link">Defer</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" aria-current="page" class="active sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="runtime"><a href="#runtime" class="header-anchor">#</a> Runtime</h1> <p>The ABS runtime lets you customize how ABS scripts are interpreted, and exposes some useful global variables.</p> <h2 id="abs-init-file"><a href="#abs-init-file" class="header-anchor">#</a> ABS init file</h2> <p>When the ABS interpreter starts running, it will load an optional ABS script as its init file. The ABS init file path can be configured via the OS environment variable <code>ABS_INIT_FILE</code>. The @@ -60,6 +60,6 @@ </a> → </span></p></div> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/17.029f3679.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/17.029f3679.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/misc/technical-details/index.html b/docs/src/.vuepress/dist/misc/technical-details/index.html index 93200f9c..e20032ed 100644 --- a/docs/src/.vuepress/dist/misc/technical-details/index.html +++ b/docs/src/.vuepress/dist/misc/technical-details/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/18.c77c84c2.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/18.32643cf1.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -33,7 +33,7 @@ Playground </a></div> <a href="https://github.com/abs-lang/abs" target="_blank" rel="noopener noreferrer" class="repo-link"> GitHub - <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" aria-current="page" class="active sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="a-few-technical-details"><a href="#a-few-technical-details" class="header-anchor">#</a> A few technical details...</h1> <p>The ABS interpreter is built with Golang version <code>1.15</code>, and is mostly based on <a href="https://interpreterbook.com/" target="_blank" rel="noopener noreferrer">the interpreter book<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a> written by <a href="https://twitter.com/thorstenball" target="_blank" rel="noopener noreferrer">Thorsten Ball<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a>.</p> <p>ABS is extremely different from Monkey, the "fictional" language the reader builds throughout the book, but the base structure (lexer, parser, evaluator) are still very much based on Thorsten's work.</p> <h2 id="why-is-abs-interpreted"><a href="#why-is-abs-interpreted" class="header-anchor">#</a> Why is ABS interpreted?</h2> <p>ABS' goal is to be a portable, pragmatic, concise, simple language: + <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li><li><a href="/syntax/defer/" class="sidebar-link">Defer</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" aria-current="page" class="active sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="a-few-technical-details"><a href="#a-few-technical-details" class="header-anchor">#</a> A few technical details...</h1> <p>The ABS interpreter is built with Golang version <code>1.18</code>, and is mostly based on <a href="https://interpreterbook.com/" target="_blank" rel="noopener noreferrer">the interpreter book<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a> written by <a href="https://twitter.com/thorstenball" target="_blank" rel="noopener noreferrer">Thorsten Ball<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a>.</p> <p>ABS is extremely different from Monkey, the "fictional" language the reader builds throughout the book, but the base structure (lexer, parser, evaluator) are still very much based on Thorsten's work.</p> <h2 id="why-is-abs-interpreted"><a href="#why-is-abs-interpreted" class="header-anchor">#</a> Why is ABS interpreted?</h2> <p>ABS' goal is to be a portable, pragmatic, concise, simple language: great performance comes second.</p> <p>With this in mind, we made a deliberate choice to avoid compiling ABS code, as it would require additional complexity in the codebase, with very little benefits. Tell us, when @@ -64,7 +64,7 @@ no prefix parse <span class="token keyword">function</span> <span class="token keyword">for</span> <span class="token string">'/'</span> found <span class="token punctuation">[</span><span class="token number">22</span>:7<span class="token punctuation">]</span> <span class="token operator">&&</span><span class="token operator">||</span><span class="token operator">!</span>-/*5<span class="token punctuation">;</span> no prefix parse <span class="token keyword">function</span> <span class="token keyword">for</span> <span class="token string">'<=>'</span> found - <span class="token punctuation">[</span><span class="token number">25</span>:2<span class="token punctuation">]</span> <span class="token operator"><</span><span class="token operator">=</span><span class="token operator">></span> + <span class="token punctuation">[</span><span class="token number">25</span>:2<span class="token punctuation">]</span> <span class="token operator"><=</span><span class="token operator">></span> expected next token to be NUMBER, got , instead <span class="token punctuation">[</span><span class="token number">44</span>:2<span class="token punctuation">]</span> <span class="token punctuation">[</span><span class="token number">1</span>, <span class="token number">2</span><span class="token punctuation">]</span><span class="token punctuation">;</span> no prefix parse <span class="token keyword">function</span> <span class="token keyword">for</span> <span class="token string">','</span> found @@ -83,9 +83,9 @@ <span class="token punctuation">[</span><span class="token number">79</span>:2<span class="token punctuation">]</span> <span class="token operator">&</span>^<span class="token operator">>></span><span class="token operator"><<</span> no prefix parse <span class="token keyword">function</span> <span class="token keyword">for</span> <span class="token string">'<<'</span> found <span class="token punctuation">[</span><span class="token number">79</span>:5<span class="token punctuation">]</span> <span class="token operator">&</span>^<span class="token operator">>></span><span class="token operator"><<</span> - Illegal token <span class="token string">'<span class="token variable">$111</span>'</span> + Illegal token <span class="token string">'$111'</span> <span class="token punctuation">[</span><span class="token number">80</span>:1<span class="token punctuation">]</span> <span class="token variable">$111</span> - no prefix parse <span class="token keyword">function</span> <span class="token keyword">for</span> <span class="token string">'<span class="token variable">$111</span>'</span> found + no prefix parse <span class="token keyword">function</span> <span class="token keyword">for</span> <span class="token string">'$111'</span> found <span class="token punctuation">[</span><span class="token number">80</span>:1<span class="token punctuation">]</span> <span class="token variable">$111</span> Exit code: <span class="token number">99</span> @@ -142,10 +142,10 @@ c <span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">=</span> <span class="token operator">>></span><span class="token operator">></span> Testing <span class="token function">split</span> and <span class="token function">join</span> strings with literal LFs: -s <span class="token operator">=</span> split<span class="token punctuation">(</span><span class="token string">'a<span class="token entity" title="\n">\n</span>b<span class="token entity" title="\n">\n</span>c'</span>, <span class="token string">'<span class="token entity" title="\n">\n</span>'</span><span class="token punctuation">)</span> +s <span class="token operator">=</span> split<span class="token punctuation">(</span><span class="token string">'a\nb\nc'</span>, <span class="token string">'\n'</span><span class="token punctuation">)</span> echo<span class="token punctuation">(</span>s<span class="token punctuation">)</span> <span class="token punctuation">[</span>a, b, c<span class="token punctuation">]</span> -ss <span class="token operator">=</span> join<span class="token punctuation">(</span>s, <span class="token string">'<span class="token entity" title="\n">\n</span>'</span><span class="token punctuation">)</span> +ss <span class="token operator">=</span> join<span class="token punctuation">(</span>s, <span class="token string">'\n'</span><span class="token punctuation">)</span> echo<span class="token punctuation">(</span>ss<span class="token punctuation">)</span> a<span class="token punctuation">\</span>nb<span class="token punctuation">\</span>nc </code></pre></div><h3 id="array-and-hash-assignment-tests"><a href="#array-and-hash-assignment-tests" class="header-anchor">#</a> Array and hash assignment tests</h3> <p>Array and hash assignment tests can be run from <code>abs tests/test-assign-index.abs</code>:</p> <div class="language-bash extra-class"><pre class="language-bash"><code><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">=</span> @@ -211,6 +211,6 @@ </a> → </span></p></div> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/18.c77c84c2.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/18.32643cf1.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/misc/upgrade-from-abs-1-to-2/index.html b/docs/src/.vuepress/dist/misc/upgrade-from-abs-1-to-2/index.html index 07d312c0..bf7dfb94 100644 --- a/docs/src/.vuepress/dist/misc/upgrade-from-abs-1-to-2/index.html +++ b/docs/src/.vuepress/dist/misc/upgrade-from-abs-1-to-2/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/19.ca3322d8.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/19.ca3322d8.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -33,7 +33,7 @@ Playground </a></div> <a href="https://github.com/abs-lang/abs" target="_blank" rel="noopener noreferrer" class="repo-link"> GitHub - <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" aria-current="page" class="active sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="upgrading-from-abs-1-to-2"><a href="#upgrading-from-abs-1-to-2" class="header-anchor">#</a> Upgrading from ABS 1 to 2</h1> <p>It's not always possible to release backwards compatible changes, + <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li><li><a href="/syntax/defer/" class="sidebar-link">Defer</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" aria-current="page" class="active sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="upgrading-from-abs-1-to-2"><a href="#upgrading-from-abs-1-to-2" class="header-anchor">#</a> Upgrading from ABS 1 to 2</h1> <p>It's not always possible to release backwards compatible changes, and ABS is no exception to the rule: luckily, the major upgrade between version 1 and 2 should be extremely painless as there have been no syntax changes, but rather just a handful of function @@ -88,6 +88,6 @@ </a> → </span></p></div> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/19.ca3322d8.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/19.ca3322d8.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/playground/index.html b/docs/src/.vuepress/dist/playground/index.html index 718baaf2..80f8f80a 100644 --- a/docs/src/.vuepress/dist/playground/index.html +++ b/docs/src/.vuepress/dist/playground/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/42.4a01b487.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/43.d234e5b4.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container no-sidebar"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -34,6 +34,6 @@ </a></div> <a href="https://github.com/abs-lang/abs" target="_blank" rel="noopener noreferrer" class="repo-link"> GitHub <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <!----> </aside> <main class="page"> <div class="theme-default-content content__default"></div> <footer class="page-edit"><!----> <!----></footer> <!----> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/42.4a01b487.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/43.d234e5b4.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/quickstart.html b/docs/src/.vuepress/dist/quickstart.html index 21aeb292..f85df319 100644 --- a/docs/src/.vuepress/dist/quickstart.html +++ b/docs/src/.vuepress/dist/quickstart.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/43.485b553f.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/44.851d54d6.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container no-sidebar"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -71,6 +71,6 @@ $ hello.abs Hello world<span class="token operator">!</span> </code></pre></div><h2 id="explore-the-docs"><a href="#explore-the-docs" class="header-anchor">#</a> Explore the docs!</h2> <p>A bit lost right now? Here's what we suggest you do:</p> <ul><li>explore the <a href="/docs">docs</a> to learn more about ABS' features</li> <li>try running some ABS code in our browser-based <a href="/playground">playground</a></li> <li>check some of the <a href="https://github.com/abs-lang/abs/tree/master/examples" target="_blank" rel="noopener noreferrer">example scripts<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a> in our official repo</li></ul></div> <footer class="page-edit"><!----> <!----></footer> <!----> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/43.485b553f.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/44.851d54d6.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/stdlib/cli/index.html b/docs/src/.vuepress/dist/stdlib/cli/index.html index e3421b0e..91306a26 100644 --- a/docs/src/.vuepress/dist/stdlib/cli/index.html +++ b/docs/src/.vuepress/dist/stdlib/cli/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/20.762823c2.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/20.a6bbf53c.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -33,9 +33,9 @@ Playground </a></div> <a href="https://github.com/abs-lang/abs" target="_blank" rel="noopener noreferrer" class="repo-link"> GitHub - <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" aria-current="page" class="active sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="cli"><a href="#cli" class="header-anchor">#</a> @cli</h1> <p>The <code>@cli</code> module provides a simple interface to + <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li><li><a href="/syntax/defer/" class="sidebar-link">Defer</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" aria-current="page" class="active sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="cli"><a href="#cli" class="header-anchor">#</a> @cli</h1> <p>The <code>@cli</code> module provides a simple interface to easily build CLI applications.</p> <h2 id="api"><a href="#api" class="header-anchor">#</a> API</h2> <div class="language-py extra-class"><pre class="language-py"><code>cli <span class="token operator">=</span> require<span class="token punctuation">(</span><span class="token string">'@cli'</span><span class="token punctuation">)</span> -</code></pre></div><h3 id="cli-cmd-name-description-default-flags"><a href="#cli-cmd-name-description-default-flags" class="header-anchor">#</a> @cli.cmd(name, description, default_flags)</h3> <p>A decorator that registers a command to be executed via CLI:</p> <div class="language-py extra-class"><pre class="language-py"><code><span class="token decorator annotation punctuation">@cli<span class="token punctuation">.</span>cmd</span><span class="token punctuation">(</span><span class="token string">"date"</span><span class="token punctuation">,</span> <span class="token string">"prints the current date"</span><span class="token punctuation">,</span> <span class="token punctuation">{</span><span class="token builtin">format</span><span class="token punctuation">:</span> <span class="token string">''</span><span class="token punctuation">}</span><span class="token punctuation">)</span> +</code></pre></div><h3 id="cli-cmd-name-description-default-flags"><a href="#cli-cmd-name-description-default-flags" class="header-anchor">#</a> @cli.cmd(name, description, default_flags)</h3> <p>A decorator that registers a command to be executed via CLI:</p> <div class="language-py extra-class"><pre class="language-py"><code><span class="token decorator annotation punctuation">@cli<span class="token punctuation">.</span>cmd</span><span class="token punctuation">(</span><span class="token string">"date"</span><span class="token punctuation">,</span> <span class="token string">"prints the current date"</span><span class="token punctuation">,</span> <span class="token punctuation">{</span><span class="token string">"format"</span><span class="token punctuation">:</span> <span class="token string">''</span><span class="token punctuation">}</span><span class="token punctuation">)</span> f date<span class="token punctuation">(</span>args<span class="token punctuation">,</span> flags<span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token builtin">format</span> <span class="token operator">=</span> flags<span class="token punctuation">.</span><span class="token builtin">format</span> <span class="token keyword">return</span> `date $<span class="token punctuation">{</span><span class="token builtin">format</span><span class="token punctuation">}</span>` @@ -150,6 +150,6 @@ </a> → </span></p></div> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/20.762823c2.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/20.a6bbf53c.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/stdlib/intro/index.html b/docs/src/.vuepress/dist/stdlib/intro/index.html index 7361c1f2..5fab1bff 100644 --- a/docs/src/.vuepress/dist/stdlib/intro/index.html +++ b/docs/src/.vuepress/dist/stdlib/intro/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/21.b7195a62.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/21.fe78dd19.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -33,7 +33,7 @@ Playground </a></div> <a href="https://github.com/abs-lang/abs" target="_blank" rel="noopener noreferrer" class="repo-link"> GitHub - <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" aria-current="page" class="active sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="standard-library"><a href="#standard-library" class="header-anchor">#</a> Standard library</h1> <p>ABS comes bundled not only with an array of builtin types and functions, + <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li><li><a href="/syntax/defer/" class="sidebar-link">Defer</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" aria-current="page" class="active sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="standard-library"><a href="#standard-library" class="header-anchor">#</a> Standard library</h1> <p>ABS comes bundled not only with an array of builtin types and functions, but also with a few modules to ease your development process: we refer to this modules as the "standard library", "standard modules" or <code>stdlib</code>.</p> <h2 id="requiring-a-standard-library-module"><a href="#requiring-a-standard-library-module" class="header-anchor">#</a> Requiring a standard library module</h2> <p>Standard library modules are required the same way you'd require any other external module, by using the <code>require(...)</code> function; @@ -62,7 +62,7 @@ flags<span class="token punctuation">[</span>k<span class="token punctuation">]</span> <span class="token operator">=</span> <span class="token function">v</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> - + <span class="token comment"># Call the original cmd</span> result <span class="token operator">=</span> fn.call<span class="token punctuation">(</span><span class="token punctuation">[</span>args<span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">[</span><span class="token number">3</span>:<span class="token punctuation">]</span>, flags<span class="token punctuation">]</span><span class="token punctuation">)</span> @@ -121,6 +121,6 @@ </a> → </span></p></div> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/21.b7195a62.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/21.fe78dd19.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/stdlib/runtime/index.html b/docs/src/.vuepress/dist/stdlib/runtime/index.html index 2f315ef6..58d14e96 100644 --- a/docs/src/.vuepress/dist/stdlib/runtime/index.html +++ b/docs/src/.vuepress/dist/stdlib/runtime/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/22.78cc6be9.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/22.78cc6be9.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -33,7 +33,7 @@ Playground </a></div> <a href="https://github.com/abs-lang/abs" target="_blank" rel="noopener noreferrer" class="repo-link"> GitHub - <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" aria-current="page" class="active sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="runtime"><a href="#runtime" class="header-anchor">#</a> @runtime</h1> <p>The <code>@runtime</code> module provides information about the ABS + <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li><li><a href="/syntax/defer/" class="sidebar-link">Defer</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" aria-current="page" class="active sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="runtime"><a href="#runtime" class="header-anchor">#</a> @runtime</h1> <p>The <code>@runtime</code> module provides information about the ABS runtime that is currently executing the script.</p> <h2 id="api"><a href="#api" class="header-anchor">#</a> API</h2> <div class="language-py extra-class"><pre class="language-py"><code>runtime <span class="token operator">=</span> require<span class="token punctuation">(</span><span class="token string">'@runtime'</span><span class="token punctuation">)</span> </code></pre></div><h3 id="runtime-version"><a href="#runtime-version" class="header-anchor">#</a> @runtime.version</h3> <p>Returns the version of the ABS interpreter:</p> <div class="language-py extra-class"><pre class="language-py"><code>runtime<span class="token punctuation">.</span>version <span class="token comment"># "x.y.z" eg. 1.0.0</span> </code></pre></div><h3 id="runtime-name"><a href="#runtime-name" class="header-anchor">#</a> @runtime.name</h3> <p>Returns the name of the runtime:</p> <div class="language-py extra-class"><pre class="language-py"><code>runtime<span class="token punctuation">.</span>name <span class="token comment"># "abs"</span> @@ -46,6 +46,6 @@ </a> → </span></p></div> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/22.78cc6be9.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/22.78cc6be9.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/stdlib/util/index.html b/docs/src/.vuepress/dist/stdlib/util/index.html index 2865f232..be5ab1bf 100644 --- a/docs/src/.vuepress/dist/stdlib/util/index.html +++ b/docs/src/.vuepress/dist/stdlib/util/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/23.c0ee3693.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/23.c0ee3693.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -33,7 +33,7 @@ Playground </a></div> <a href="https://github.com/abs-lang/abs" target="_blank" rel="noopener noreferrer" class="repo-link"> GitHub - <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" aria-current="page" class="active sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="util"><a href="#util" class="header-anchor">#</a> @util</h1> <p>The <code>@util</code> module provides various utilities.</p> <h2 id="api"><a href="#api" class="header-anchor">#</a> API</h2> <div class="language-py extra-class"><pre class="language-py"><code>util <span class="token operator">=</span> require<span class="token punctuation">(</span><span class="token string">'@util'</span><span class="token punctuation">)</span> + <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li><li><a href="/syntax/defer/" class="sidebar-link">Defer</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" aria-current="page" class="active sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="util"><a href="#util" class="header-anchor">#</a> @util</h1> <p>The <code>@util</code> module provides various utilities.</p> <h2 id="api"><a href="#api" class="header-anchor">#</a> API</h2> <div class="language-py extra-class"><pre class="language-py"><code>util <span class="token operator">=</span> require<span class="token punctuation">(</span><span class="token string">'@util'</span><span class="token punctuation">)</span> </code></pre></div><h3 id="util-memoize-ttl"><a href="#util-memoize-ttl" class="header-anchor">#</a> @util.memoize(ttl)</h3> <p>A decorator that allows memoization of a function based on the arguments passed to it:</p> <div class="language-py extra-class"><pre class="language-py"><code><span class="token decorator annotation punctuation">@util<span class="token punctuation">.</span>memoize</span><span class="token punctuation">(</span><span class="token number">60</span><span class="token punctuation">)</span> f expensive_task<span class="token punctuation">(</span>x<span class="token punctuation">,</span> y<span class="token punctuation">,</span> z<span class="token punctuation">)</span> <span class="token punctuation">{</span> @@ -53,6 +53,6 @@ </a> → </span></p></div> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/23.c0ee3693.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/23.c0ee3693.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/syntax/assignments/index.html b/docs/src/.vuepress/dist/syntax/assignments/index.html index 5c641c34..5e40ded0 100644 --- a/docs/src/.vuepress/dist/syntax/assignments/index.html +++ b/docs/src/.vuepress/dist/syntax/assignments/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/24.7f444d27.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/24.7f444d27.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/25.7ba719d0.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -33,7 +33,7 @@ Playground </a></div> <a href="https://github.com/abs-lang/abs" target="_blank" rel="noopener noreferrer" class="repo-link"> GitHub - <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" aria-current="page" class="active sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="assignments"><a href="#assignments" class="header-anchor">#</a> Assignments</h1> <p>Just like about any other language, assignments are pretty straightforward:</p> <div class="language-bash extra-class"><pre class="language-bash"><code>x <span class="token operator">=</span> <span class="token string">"hello world"</span> + <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" aria-current="page" class="active sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" class="sidebar-link">Comments</a></li><li><a href="/syntax/defer/" class="sidebar-link">Defer</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="assignments"><a href="#assignments" class="header-anchor">#</a> Assignments</h1> <p>Just like about any other language, assignments are pretty straightforward:</p> <div class="language-bash extra-class"><pre class="language-bash"><code>x <span class="token operator">=</span> <span class="token string">"hello world"</span> </code></pre></div><p>Array destructuring is supported, meaning you can set multiple variables based on an array:</p> <div class="language-bash extra-class"><pre class="language-bash"><code>x, y, z <span class="token operator">=</span> <span class="token punctuation">[</span><span class="token string">"hello world"</span>, <span class="token number">99</span>, <span class="token punctuation">{</span><span class="token punctuation">}</span><span class="token punctuation">]</span> x <span class="token comment"># "hello world"</span> y <span class="token comment"># 99</span> @@ -116,6 +116,6 @@ </a> → </span></p></div> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/24.7f444d27.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/24.7f444d27.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/syntax/comments/index.html b/docs/src/.vuepress/dist/syntax/comments/index.html index 3f12708d..bfe4dd8a 100644 --- a/docs/src/.vuepress/dist/syntax/comments/index.html +++ b/docs/src/.vuepress/dist/syntax/comments/index.html @@ -13,8 +13,8 @@ <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> - <link rel="preload" href="/assets/css/0.styles.af163b1b.css" as="style"><link rel="preload" href="/assets/js/app.99498f70.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/25.7ba719d0.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.00091426.js"><link rel="prefetch" href="/assets/js/100.2e8512a4.js"><link rel="prefetch" href="/assets/js/101.f57cdfdd.js"><link rel="prefetch" href="/assets/js/102.dea937d2.js"><link rel="prefetch" href="/assets/js/103.dd653b9b.js"><link rel="prefetch" href="/assets/js/104.e7fceeb6.js"><link rel="prefetch" href="/assets/js/105.bd27587a.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.36679573.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.c77c84c2.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.762823c2.js"><link rel="prefetch" href="/assets/js/21.b7195a62.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/26.73e719f0.js"><link rel="prefetch" href="/assets/js/27.67e1572b.js"><link rel="prefetch" href="/assets/js/28.84a9a64c.js"><link rel="prefetch" href="/assets/js/29.f6a4e822.js"><link rel="prefetch" href="/assets/js/3.6f89387f.js"><link rel="prefetch" href="/assets/js/30.9bb98cd5.js"><link rel="prefetch" href="/assets/js/31.6bcaa134.js"><link rel="prefetch" href="/assets/js/32.13dbfef4.js"><link rel="prefetch" href="/assets/js/33.227bf7d4.js"><link rel="prefetch" href="/assets/js/34.25bd9c03.js"><link rel="prefetch" href="/assets/js/35.ad55ea84.js"><link rel="prefetch" href="/assets/js/36.70888b6c.js"><link rel="prefetch" href="/assets/js/37.47473244.js"><link rel="prefetch" href="/assets/js/38.be2fc22a.js"><link rel="prefetch" href="/assets/js/39.90a73f07.js"><link rel="prefetch" href="/assets/js/40.8adf4179.js"><link rel="prefetch" href="/assets/js/41.877b1d87.js"><link rel="prefetch" href="/assets/js/42.4a01b487.js"><link rel="prefetch" href="/assets/js/43.485b553f.js"><link rel="prefetch" href="/assets/js/44.bee8c0ac.js"><link rel="prefetch" href="/assets/js/45.5a96c426.js"><link rel="prefetch" href="/assets/js/46.3f95d133.js"><link rel="prefetch" href="/assets/js/47.0cdb1e5d.js"><link rel="prefetch" href="/assets/js/48.03e739e7.js"><link rel="prefetch" href="/assets/js/49.2d752ee1.js"><link rel="prefetch" href="/assets/js/5.502fc703.js"><link rel="prefetch" href="/assets/js/50.23d71ab6.js"><link rel="prefetch" href="/assets/js/51.c3e699e7.js"><link rel="prefetch" href="/assets/js/52.03a3e296.js"><link rel="prefetch" href="/assets/js/53.645ee022.js"><link rel="prefetch" href="/assets/js/54.dbf6d0eb.js"><link rel="prefetch" href="/assets/js/55.517ded52.js"><link rel="prefetch" href="/assets/js/56.260ce17c.js"><link rel="prefetch" href="/assets/js/57.697d63a8.js"><link rel="prefetch" href="/assets/js/58.71546e18.js"><link rel="prefetch" href="/assets/js/59.448f9f74.js"><link rel="prefetch" href="/assets/js/6.1eaa0db0.js"><link rel="prefetch" href="/assets/js/60.cc91f4bf.js"><link rel="prefetch" href="/assets/js/61.4715a5c4.js"><link rel="prefetch" href="/assets/js/62.27066fd7.js"><link rel="prefetch" href="/assets/js/63.d80fb30d.js"><link rel="prefetch" href="/assets/js/64.f3fdcd50.js"><link rel="prefetch" href="/assets/js/65.ae7396ad.js"><link rel="prefetch" href="/assets/js/66.47bd296d.js"><link rel="prefetch" href="/assets/js/67.65377661.js"><link rel="prefetch" href="/assets/js/68.a52d49a3.js"><link rel="prefetch" href="/assets/js/69.ebe70287.js"><link rel="prefetch" href="/assets/js/7.0f6ae038.js"><link rel="prefetch" href="/assets/js/70.f4761b67.js"><link rel="prefetch" href="/assets/js/71.b1a5ed72.js"><link rel="prefetch" href="/assets/js/72.6374e4b7.js"><link rel="prefetch" href="/assets/js/73.ab425ef3.js"><link rel="prefetch" href="/assets/js/74.9d4a5b8b.js"><link rel="prefetch" href="/assets/js/75.5d3a139b.js"><link rel="prefetch" href="/assets/js/76.c3a1d352.js"><link rel="prefetch" href="/assets/js/77.1e20cc10.js"><link rel="prefetch" href="/assets/js/78.b3375bbd.js"><link rel="prefetch" href="/assets/js/79.e30ee574.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.c9b2bc6f.js"><link rel="prefetch" href="/assets/js/81.41eac1be.js"><link rel="prefetch" href="/assets/js/82.2044b434.js"><link rel="prefetch" href="/assets/js/83.e9eb873f.js"><link rel="prefetch" href="/assets/js/84.b501de85.js"><link rel="prefetch" href="/assets/js/85.c4e6052b.js"><link rel="prefetch" href="/assets/js/86.738980af.js"><link rel="prefetch" href="/assets/js/87.cb11fecb.js"><link rel="prefetch" href="/assets/js/88.91b8b30b.js"><link rel="prefetch" href="/assets/js/89.b277329c.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.82770f13.js"><link rel="prefetch" href="/assets/js/91.d2bf60c2.js"><link rel="prefetch" href="/assets/js/92.9ff04b54.js"><link rel="prefetch" href="/assets/js/93.168a3f48.js"><link rel="prefetch" href="/assets/js/94.62090088.js"><link rel="prefetch" href="/assets/js/95.7669b444.js"><link rel="prefetch" href="/assets/js/96.10318e4a.js"><link rel="prefetch" href="/assets/js/97.4ac3ee32.js"><link rel="prefetch" href="/assets/js/98.4982871f.js"><link rel="prefetch" href="/assets/js/99.11b04e35.js"> - <link rel="stylesheet" href="/assets/css/0.styles.af163b1b.css"> + <link rel="preload" href="/assets/css/0.styles.05bbccd7.css" as="style"><link rel="preload" href="/assets/js/app.707cd6e6.js" as="script"><link rel="preload" href="/assets/js/4.afec4fb6.js" as="script"><link rel="preload" href="/assets/js/25.7ba719d0.js" as="script"><link rel="prefetch" href="/assets/js/1.ae5ab669.js"><link rel="prefetch" href="/assets/js/10.cc70ae4f.js"><link rel="prefetch" href="/assets/js/100.b26fa278.js"><link rel="prefetch" href="/assets/js/101.1648642d.js"><link rel="prefetch" href="/assets/js/102.d423c75b.js"><link rel="prefetch" href="/assets/js/103.d4195020.js"><link rel="prefetch" href="/assets/js/104.9860de76.js"><link rel="prefetch" href="/assets/js/105.e620df2f.js"><link rel="prefetch" href="/assets/js/106.95350ada.js"><link rel="prefetch" href="/assets/js/11.99afb047.js"><link rel="prefetch" href="/assets/js/12.659d0d44.js"><link rel="prefetch" href="/assets/js/13.bd56ae9e.js"><link rel="prefetch" href="/assets/js/14.6d48fe2d.js"><link rel="prefetch" href="/assets/js/15.9256a41a.js"><link rel="prefetch" href="/assets/js/16.5be27a16.js"><link rel="prefetch" href="/assets/js/17.029f3679.js"><link rel="prefetch" href="/assets/js/18.32643cf1.js"><link rel="prefetch" href="/assets/js/19.ca3322d8.js"><link rel="prefetch" href="/assets/js/20.a6bbf53c.js"><link rel="prefetch" href="/assets/js/21.fe78dd19.js"><link rel="prefetch" href="/assets/js/22.78cc6be9.js"><link rel="prefetch" href="/assets/js/23.c0ee3693.js"><link rel="prefetch" href="/assets/js/24.7f444d27.js"><link rel="prefetch" href="/assets/js/26.c43cdf9f.js"><link rel="prefetch" href="/assets/js/27.c2abeff0.js"><link rel="prefetch" href="/assets/js/28.a2d4d54f.js"><link rel="prefetch" href="/assets/js/29.53f637db.js"><link rel="prefetch" href="/assets/js/3.f3eb5b80.js"><link rel="prefetch" href="/assets/js/30.01e2071b.js"><link rel="prefetch" href="/assets/js/31.5ad90f2b.js"><link rel="prefetch" href="/assets/js/32.05eec4c5.js"><link rel="prefetch" href="/assets/js/33.da24515a.js"><link rel="prefetch" href="/assets/js/34.1c8ddfde.js"><link rel="prefetch" href="/assets/js/35.b6d66435.js"><link rel="prefetch" href="/assets/js/36.1c5d25fb.js"><link rel="prefetch" href="/assets/js/37.e2bc0515.js"><link rel="prefetch" href="/assets/js/38.3762cc6b.js"><link rel="prefetch" href="/assets/js/39.972809d0.js"><link rel="prefetch" href="/assets/js/40.624e2309.js"><link rel="prefetch" href="/assets/js/41.1bafbf2f.js"><link rel="prefetch" href="/assets/js/42.32bcbdf0.js"><link rel="prefetch" href="/assets/js/43.d234e5b4.js"><link rel="prefetch" href="/assets/js/44.851d54d6.js"><link rel="prefetch" href="/assets/js/45.489bbb74.js"><link rel="prefetch" href="/assets/js/46.8d20f0df.js"><link rel="prefetch" href="/assets/js/47.5b9c6a01.js"><link rel="prefetch" href="/assets/js/48.55905f59.js"><link rel="prefetch" href="/assets/js/49.74e156a3.js"><link rel="prefetch" href="/assets/js/5.a310200e.js"><link rel="prefetch" href="/assets/js/50.f34e624c.js"><link rel="prefetch" href="/assets/js/51.5be133f8.js"><link rel="prefetch" href="/assets/js/52.371b43e0.js"><link rel="prefetch" href="/assets/js/53.e305cbde.js"><link rel="prefetch" href="/assets/js/54.3d618e11.js"><link rel="prefetch" href="/assets/js/55.2555359d.js"><link rel="prefetch" href="/assets/js/56.4fd62374.js"><link rel="prefetch" href="/assets/js/57.6a92da6f.js"><link rel="prefetch" href="/assets/js/58.e9795bf7.js"><link rel="prefetch" href="/assets/js/59.4ee743e7.js"><link rel="prefetch" href="/assets/js/6.9b5d321d.js"><link rel="prefetch" href="/assets/js/60.e6d06864.js"><link rel="prefetch" href="/assets/js/61.09466a50.js"><link rel="prefetch" href="/assets/js/62.51975b6b.js"><link rel="prefetch" href="/assets/js/63.0a5e1022.js"><link rel="prefetch" href="/assets/js/64.1f6ce620.js"><link rel="prefetch" href="/assets/js/65.36e6c3b3.js"><link rel="prefetch" href="/assets/js/66.a83c3c1e.js"><link rel="prefetch" href="/assets/js/67.b32ba88c.js"><link rel="prefetch" href="/assets/js/68.a33b0caf.js"><link rel="prefetch" href="/assets/js/69.ed11a426.js"><link rel="prefetch" href="/assets/js/7.71b7ebd7.js"><link rel="prefetch" href="/assets/js/70.e8bb95ac.js"><link rel="prefetch" href="/assets/js/71.7638a77d.js"><link rel="prefetch" href="/assets/js/72.e93eb3c0.js"><link rel="prefetch" href="/assets/js/73.6397c164.js"><link rel="prefetch" href="/assets/js/74.c914b2f2.js"><link rel="prefetch" href="/assets/js/75.16cfc054.js"><link rel="prefetch" href="/assets/js/76.6a920f4c.js"><link rel="prefetch" href="/assets/js/77.27937e13.js"><link rel="prefetch" href="/assets/js/78.737ec13d.js"><link rel="prefetch" href="/assets/js/79.388a8446.js"><link rel="prefetch" href="/assets/js/8.67b1febf.js"><link rel="prefetch" href="/assets/js/80.1dec84f2.js"><link rel="prefetch" href="/assets/js/81.b62a70e6.js"><link rel="prefetch" href="/assets/js/82.ba6bfbcb.js"><link rel="prefetch" href="/assets/js/83.fdf32268.js"><link rel="prefetch" href="/assets/js/84.5aa11083.js"><link rel="prefetch" href="/assets/js/85.ed836419.js"><link rel="prefetch" href="/assets/js/86.6e6c9232.js"><link rel="prefetch" href="/assets/js/87.bfe73996.js"><link rel="prefetch" href="/assets/js/88.32bc25e1.js"><link rel="prefetch" href="/assets/js/89.9280160b.js"><link rel="prefetch" href="/assets/js/9.06b397f7.js"><link rel="prefetch" href="/assets/js/90.d6e97ecf.js"><link rel="prefetch" href="/assets/js/91.a90d8bb7.js"><link rel="prefetch" href="/assets/js/92.906efbb2.js"><link rel="prefetch" href="/assets/js/93.c87070cc.js"><link rel="prefetch" href="/assets/js/94.e7eb9f7b.js"><link rel="prefetch" href="/assets/js/95.c27f97f4.js"><link rel="prefetch" href="/assets/js/96.d6fda379.js"><link rel="prefetch" href="/assets/js/97.0e9f507e.js"><link rel="prefetch" href="/assets/js/98.812087ee.js"><link rel="prefetch" href="/assets/js/99.cb09c45e.js"> + <link rel="stylesheet" href="/assets/css/0.styles.05bbccd7.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/abs-horizontal.png" alt="The ABS programing language" class="logo"> <span class="site-name can-hide">The ABS programing language</span></a> <div class="links"><!----> <nav class="nav-links can-hide"><div class="nav-item"><a href="/quickstart/" class="nav-link"> @@ -33,7 +33,7 @@ Playground </a></div> <a href="https://github.com/abs-lang/abs" target="_blank" rel="noopener noreferrer" class="repo-link"> GitHub - <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" aria-current="page" class="active sidebar-link">Comments</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="comments"><a href="#comments" class="header-anchor">#</a> Comments</h1> <p>In accordance with ABS' minimalist style, there is only + <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Syntax</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/syntax/assignments/" class="sidebar-link">Assignments</a></li><li><a href="/syntax/return/" class="sidebar-link">Returning values</a></li><li><a href="/syntax/if/" class="sidebar-link">If ... else</a></li><li><a href="/syntax/for/" class="sidebar-link">For loops</a></li><li><a href="/syntax/while/" class="sidebar-link">While</a></li><li><a href="/syntax/system-commands/" class="sidebar-link">System (shell) commands</a></li><li><a href="/syntax/operators/" class="sidebar-link">Operators</a></li><li><a href="/syntax/comments/" aria-current="page" class="active sidebar-link">Comments</a></li><li><a href="/syntax/defer/" class="sidebar-link">Defer</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Types and Functions</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/types/string/" class="sidebar-link">String</a></li><li><a href="/types/number/" class="sidebar-link">Number</a></li><li><a href="/types/array/" class="sidebar-link">Array</a></li><li><a href="/types/hash/" class="sidebar-link">Hash</a></li><li><a href="/types/function/" class="sidebar-link">Function</a></li><li><a href="/types/builtin-function/" class="sidebar-link">Builtin function</a></li><li><a href="/types/decorator/" class="sidebar-link">Decorator</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Standard Library</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/stdlib/intro/" class="sidebar-link">Standard library</a></li><li><a href="/stdlib/runtime/" class="sidebar-link">@runtime</a></li><li><a href="/stdlib/cli/" class="sidebar-link">@cli</a></li><li><a href="/stdlib/util/" class="sidebar-link">@util</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Miscellaneous</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/misc/3pl/" class="sidebar-link">Installing 3rd party libraries</a></li><li><a href="/misc/error/" class="sidebar-link">Errors</a></li><li><a href="/misc/configuring-the-repl/" class="sidebar-link">Configuring the REPL</a></li><li><a href="/misc/runtime/" class="sidebar-link">Runtime</a></li><li><a href="/misc/technical-details/" class="sidebar-link">A few technical details...</a></li><li><a href="/misc/upgrade-from-abs-1-to-2/" class="sidebar-link">Upgrading from ABS 1 to 2</a></li><li><a href="/misc/credits/" class="sidebar-link">Credits</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="comments"><a href="#comments" class="header-anchor">#</a> Comments</h1> <p>In accordance with ABS' minimalist style, there is only one way to create comments in order to document your code, by using the <code>#</code> character:</p> <div class="language-bash extra-class"><pre class="language-bash"><code><span class="token comment"># This text represents a comment</span> x <span class="token operator">=</span> <span class="token number">1</span> @@ -46,11 +46,11 @@ ← <a href="/syntax/operators/" class="prev"> Operators - </a></span> <span class="next"><a href="/types/string/"> - String + </a></span> <span class="next"><a href="/syntax/defer/"> + Defer </a> → </span></p></div> </main></div><div class="global-ui"></div></div> - <script src="/assets/js/app.99498f70.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/25.7ba719d0.js" defer></script> + <script src="/assets/js/app.707cd6e6.js" defer></script><script src="/assets/js/4.afec4fb6.js" defer></script><script src="/assets/js/25.7ba719d0.js" defer></script> </body> </html> diff --git a/docs/src/.vuepress/dist/syntax/defer/index.html b/docs/src/.vuepress/dist/syntax/defer/index.html new file mode 100644 index 00000000..ced6ad0e --- /dev/null +++ b/docs/src/.vuepress/dist/syntax/defer/index.html @@ -0,0 +1,80 @@ +<!DOCTYPE html> +<html lang="en-US"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width,initial-scale=1"> + <title>Defer | The ABS programing language + + + + + + + + + + + + + +

      # Defer experimental

      Sometimes it is very helpful to guarantee a certain function is executed +regardless of what code path we take: you can use the defer keyword for +this.

      echo(1)
      +defer echo(3)
      +echo(2)
      +# 1
      +# 2
      +# 3
      +

      When you schedule a function to be deferred, it will executed right at +the end of the current scope. A defer inside a function will then +execute at the end of that function itself:

      echo(1)
      +f fn() {
      +    defer echo(3)
      +    echo(2)
      +}
      +fn()
      +echo(4)
      +# 1
      +# 2
      +# 3
      +# 4
      +

      You can defer any callable: a function call, a method or even a system +command. This can be very helpful if you need to run a cleanup function +right before wrapping up with your code:

      defer `rm my-file.txt`
      +"some text" > "my-file.txt"
      +
      +...
      +...
      +"some other text" >> "my-file.txt"
      +

      In this case, you will be guaranteed to execute the command that removes +my-file.txt before the program closes.

      Be aware that code that is deferred does not have access to the return value +of its scope, and will supress errors -- if a defer block messes up you're +not going to see any error. This behavior is experimental, but we would most +likely like to give this kind of control through try...catch...finally (opens new window).

      + + + diff --git a/docs/src/.vuepress/dist/syntax/for/index.html b/docs/src/.vuepress/dist/syntax/for/index.html index 0a56e8e4..dd916c95 100644 --- a/docs/src/.vuepress/dist/syntax/for/index.html +++ b/docs/src/.vuepress/dist/syntax/for/index.html @@ -13,8 +13,8 @@ - - + +

    Tx_Dp7}K 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%0Dlk5M`)BJzCI#!guRRDst>#LD-_n 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Μ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

  • }%9xvf?A%8s$ej z+Q2#ZD%Z=CI&{*x(%e)pFWoJU;DhRLp~M~!KqBwI9ZTN{Ia2?(f}LEm?3(Gu4vo@^ z4aUFqSXB-`SQ79t06x@TV)2#krv3tQCZ}d)I^!W~V|9+97@7Hi4zVzIl-Xfgna2Dm znJK!oKZ6d1PAy!c6FnP`L{_Ydlj`$IQWQr zA0{5Y%&*UqaGm*BefBkenm1sJ)wvUd@r_Z&_i+POLwKbhPJ*6wzZdI64ZcxMCO&P* zQs~Rcj32<`a-Kc5VgQ=okj)IpH7c^}?n04;a#u5aCdX4)q;?K2A!jsVnmLBUdCsICP+?|~Zn?i$=l;Mq`55W6ljhPHQ9a7lFavgY>I*8`MgLXBp z6^{o6_}6*^PXC*<(>qhMCYY35(3@Zq<?L{35LVUa%~@AIHv5}{-I+5``~H09 zl=&LO8($l|#*%T5x8G~*YicwTQeFHSn-i$a$~X*K9q#DRaAyZse0g(TXCK=+Z!`|Z zRdQ{?qB)%87MR@|v1#oB2lyu~ST`{ic6Q0Wl%M41Oc`JL1<>;rED)Xfwq$t6w1UR9 zWZm)SwU+F4E6Q{Mt~jT(Qk3bpt)NVmUd@$hj)Nj0M_REr0VudNo=Q|UA(jJd&(v zuA{8(+boW2pq_6-1FaM1CRM5UZCvLzq!x7wNWYuZX8?j#6qiAoEwrAT_Y11J5d4vHv;`TrGRp>%b zHpF?4QI2l%mpvoM{#Rq&+b58Rx^4hX{356dMfFDA0~U4L(%-$=-xPEJ4IcMV%;I+M zvzN|CjMX*~UbR)DAs;Zw9lHXtC)h2Xw!vA6HvvcJ)Ca7+SiGD>5@V(;UUffYJsp(u zHEMhqieh@(cz=?=ff);S|NbE)N9n^{a*Ris^*&+~xxDWBh$W(j2OqKbwAoV}sSSS- z@Nr)jV1C4!))zx}gs{Kxp~AlGBd=22ixpG88ZGP_7i1r$Z3dA2KV}iAo>!_+N{l zH|li!gni0|VcRFrzDFqNQ--S#xRKHESWqI(`xMsj5z76PjpGE>{|pP{5gPCr47ww5 zvqo0)rQb^u;S{Y*O!5pzxKnhL3H0O7nKuWrFr$_)h4o{^JIL#Y{lXEt-;dR+RPy!! zq|jRJ56ND3`{;fFtC~k&Fn2q<0$SFewdd+XXcgBl*+*vg6gG1opz)qUKK}#v6w<$h zodwELh0BUe|snHNEN_dekb~WFba~`;d_?r zTwt6EvL>U-NgI zUOR$%55Zh3po}5xOAf+rC~I61h~^x-lCP`B>ke{IO^c#^>HJXkAq_agqAT;O9y1gu z!uexXq$92Q5#~dIqUTQjh@Isrnl(%j&|AaUU^CeiaU6`YDX!o^Hb)MJY`zqi*Tz%3 z^Cm02mU8mE25;55TwOM>Sb%mK!D7Tb>vO^`fFe!=dur1Rr|7*AELD77SUozDin{wc zP}_X35M;JLMSqN7BdrMEWWy;Og5HJjy;-cULfIpkcnFp|5)yEV?vI4I%e$5M)r|QG z&eU)eV^$<-1_xu@t2t6`Z@tc5k)@wT2}qEoU!6~x#Ay3y*2k;#Z#A8IAVrL<8%9Gf zGADX>4131Muj5!q@F_|g%SLL@hww3lkAr-jvdQq-1k!~H5pT~o<1eukog2qaP{1Xu z7Qdt^hV<}hY%qLF)AMiR926rGFdZYZL%qWlK7oDVbAlhvWklURK# zES_#S2TP)Af*2_$mAlE4!Cl1t;WKsAWVX(^6v-TFG=(odr|94m1^BZm@FJa~&~&H> z?C0M}7k_@A&OXK0E9sbVaF~Q;h_6jE*f?r-wenf8-GG2?e7Bj@4wp5K&Bp1%PJ9wf z?m3kmql4GLkyovP?Wx%`#SFB{X{1OH7p=l3u>M{b%WyhT*@~vjP&oa~44gk)ETrUc zJ0Ds#gAEgW=3ic|tD~L@_MBOk%NOb5%u+57vC3dT=y)_Xl6Gb)X4!#EaQC9Z-CzQD zOA*VVlcaFBca{QlY8DuGkv3*2+`X;*={^ffFTkc=suPSiuMmW}vtT)Z(Lc`;_0P>> z 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 ZMSpl&cYFZSAnAk_@l`_8cj$zK0011yW_$nu delta 1266580 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Žt_yA)Syndsq74?a>F8z(skZM{Kx7FVka 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 z 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®nWRnC*pwPbb1buEM?YO1ecVtJ`*g)rMIP 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